{ "name": "jellyfin-web", "version": "0.0.0", "description": "Web interface for Jellyfin", "repository": "https://github.com/jellyfin/jellyfin-web", "license": "GPL-2.0-or-later", "devDependencies": { "@babel/core": "^7.12.9", "@babel/eslint-parser": "^7.12.1", "@babel/eslint-plugin": "^7.12.1", "@babel/plugin-proposal-class-properties": "^7.10.1", "@babel/plugin-proposal-private-methods": "^7.12.1", "@babel/preset-env": "^7.12.7", "autoprefixer": "^9.8.6", "babel-loader": "^8.2.2", "clean-webpack-plugin": "^3.0.0", "confusing-browser-globals": "^1.0.10", "copy-webpack-plugin": "^6.3.2", "css-loader": "^5.0.1", "cssnano": "^4.1.10", "eslint": "^7.14.0", "eslint-plugin-compat": "^3.5.1", "eslint-plugin-eslint-comments": "^3.2.0", "eslint-plugin-import": "^2.22.1", "eslint-plugin-promise": "^4.2.1", "expose-loader": "^1.0.3", "file-loader": "^6.2.0", "html-loader": "^1.1.0", "html-webpack-plugin": "^4.5.0", "postcss-loader": "^3.0.0", "postcss-preset-env": "^6.7.0", "sass": "^1.29.0", "sass-loader": "^10.1.0", "source-map-loader": "^1.1.1", "style-loader": "^2.0.0", "stylelint": "^13.8.0", "stylelint-config-rational-order": "^0.1.2", "stylelint-no-browser-hacks": "^1.2.1", "stylelint-order": "^4.1.0", "stylelint-scss": "^3.18.0", "webpack": "^5.9.0", "webpack-cli": "^4.0.0", "webpack-dev-server": "^3.11.0", "webpack-merge": "^4.2.2", "workbox-webpack-plugin": "^5.1.4", "worker-plugin": "^5.0.0" }, "dependencies": { "blurhash": "^1.1.3", "classlist.js": "https://github.com/eligrey/classList.js/archive/1.2.20180112.tar.gz", "core-js": "^3.8.0", "date-fns": "^2.16.1", "epubjs": "^0.3.85", "fast-text-encoding": "^1.0.3", "flv.js": "^1.5.0", "headroom.js": "^0.12.0", "hls.js": "^0.14.16", "intersection-observer": "^0.11.0", "jellyfin-apiclient": "^1.4.2", "jellyfin-noto": "https://github.com/jellyfin/jellyfin-noto", "jquery": "^3.5.1", "jstree": "^3.3.10", "libarchive.js": "^1.3.0", "libass-wasm": "https://github.com/jellyfin/JavascriptSubtitlesOctopus#4.0.0-jf-smarttv", "material-design-icons-iconfont": "^6.1.0", "native-promise-only": "^0.8.0-a", "page": "^1.11.6", "pdfjs-dist": "2.5.207", "resize-observer-polyfill": "^1.5.1", "screenfull": "^5.0.2", "sortablejs": "^1.12.0", "swiper": "^6.3.5", "webcomponents.js": "^0.7.24", "whatwg-fetch": "^3.5.0", "workbox-core": "^5.1.4", "workbox-precaching": "^5.1.4" }, "babel": { "presets": [ [ "@babel/preset-env", { "useBuiltIns": "usage", "corejs": 3 } ] ], "plugins": [ "@babel/plugin-proposal-class-properties", "@babel/plugin-proposal-private-methods" ] }, "browserslist": [ "last 2 Firefox versions", "last 2 Chrome versions", "last 2 ChromeAndroid versions", "last 2 Safari versions", "iOS > 10", "last 2 Edge versions", "Chrome 27", "Chrome 38", "Chrome 47", "Chrome 53", "Chrome 56", "Chrome 63", "Edge 18", "Firefox ESR" ], "scripts": { "start": "yarn serve", "serve": "webpack serve --config webpack.dev.js", "prepare": "./scripts/prepare.sh", "build:development": "webpack --config webpack.dev.js", "build:production": "webpack --config webpack.prod.js", "lint": "eslint \".\"", "stylelint": "yarn stylelint:css && yarn stylelint:scss", "stylelint:css": "stylelint \"src/**/*.css\"", "stylelint:scss": "stylelint --config=\".stylelintrc.scss.json\" \"src/**/*.scss\"" } }