{ "name": "movie-web", "version": "4.6.5", "private": true, "homepage": "https://github.com/movie-web/movie-web", "scripts": { "dev": "vite", "build": "vite build", "build:pwa": "cross-env VITE_PWA_ENABLED=true vite build", "test": "vitest run", "preview": "vite preview", "lint": "eslint --ext .tsx,.ts src", "lint:fix": "eslint --fix --ext .tsx,.ts src", "lint:report": "eslint --ext .tsx,.ts --output-file eslint_report.json --format json src", "preinstall": "npx -y only-allow pnpm" }, "browserslist": { "production": [ "defaults", "chrome > 90" ], "development": [ "last 1 chrome version", "last 1 firefox version", "last 1 safari version" ] }, "dependencies": { "@formkit/auto-animate": "^0.8.1", "@headlessui/react": "^1.7.18", "@ladjs/country-language": "^1.0.3", "@movie-web/providers": "^2.2.8", "@noble/hashes": "^1.4.0", "@plasmohq/messaging": "^0.6.2", "@react-spring/web": "^9.7.3", "@scure/bip39": "^1.3.0", "@sozialhelden/ietf-language-tags": "^5.4.2", "@types/node-forge": "^1.3.11", "classnames": "^2.5.1", "core-js": "^3.36.1", "detect-browser": "^5.3.0", "dompurify": "^3.0.11", "flag-icons": "^7.2.1", "focus-trap-react": "^10.2.3", "fscreen": "^1.2.0", "fuse.js": "^7.0.0", "hls.js": "^1.5.7", "i18next": "^23.10.1", "immer": "^10.0.4", "jwt-decode": "^4.0.0", "lodash.isequal": "^4.5.0", "lodash.merge": "^4.6.2", "million": "^2.6.4", "nanoid": "^5.0.6", "node-forge": "^1.3.1", "ofetch": "^1.3.4", "react": "^18.2.0", "react-dom": "^18.2.0", "react-ga4": "^2.1.0", "react-google-recaptcha-v3": "^1.10.1", "react-helmet-async": "^2.0.4", "react-i18next": "^14.1.0", "react-lazy-load-image-component": "^1.6.0", "react-lazy-with-preload": "^2.2.1", "react-router-dom": "^6.22.3", "react-sticky-el": "^2.1.0", "react-turnstile": "^1.1.3", "react-use": "^17.5.0", "semver": "^7.6.0", "slugify": "^1.6.6", "subsrt-ts": "^2.1.2", "zustand": "^4.5.2" }, "devDependencies": { "@babel/core": "^7.24.3", "@babel/preset-env": "^7.24.3", "@babel/preset-typescript": "^7.24.1", "@rollup/wasm-node": "^4.13.2", "@types/chromecast-caf-sender": "^1.0.9", "@types/crypto-js": "^4.2.2", "@types/dompurify": "^3.0.5", "@types/fscreen": "^1.0.4", "@types/lodash.isequal": "^4.5.8", "@types/lodash.merge": "^4.6.9", "@types/lodash.throttle": "^4.1.9", "@types/node": "^20.12.3", "@types/pako": "^2.0.3", "@types/react": "^18.2.74", "@types/react-dom": "^18.2.23", "@types/react-helmet": "^6.1.11", "@types/react-lazy-load-image-component": "^1.6.3", "@types/react-router": "^5.1.20", "@types/react-router-dom": "^5.3.3", "@types/react-stickynode": "^4.0.3", "@types/react-transition-group": "^4.4.10", "@types/semver": "^7.5.8", "@typescript-eslint/eslint-plugin": "^6.21.0", "@typescript-eslint/parser": "^6.21.0", "@vitejs/plugin-react": "^4.2.1", "autoprefixer": "^10.4.19", "cross-env": "^7.0.3", "eslint": "^8.57.0", "eslint-config-airbnb": "19.0.4", "eslint-config-prettier": "^9.1.0", "eslint-import-resolver-typescript": "^3.6.1", "eslint-plugin-import": "^2.29.1", "eslint-plugin-jsx-a11y": "^6.8.0", "eslint-plugin-prettier": "^5.1.3", "eslint-plugin-react": "7.33.2", "eslint-plugin-react-hooks": "4.6.0", "glob": "^10.3.12", "handlebars": "^4.7.8", "jsdom": "^23.2.0", "postcss": "^8.4.38", "postcss-rtl": "^2.0.0", "postcss-rtlcss": "^4.0.9", "prettier": "^3.2.5", "prettier-plugin-tailwindcss": "^0.5.13", "rollup-plugin-visualizer": "^5.12.0", "tailwind-scrollbar": "^3.1.0", "tailwindcss": "^3.4.3", "tailwindcss-themer": "^4.0.0", "type-fest": "^4.14.0", "typescript": "^5.4.3", "vite": "^5.2.7", "vite-plugin-checker": "^0.6.4", "vite-plugin-package-version": "^1.1.0", "vite-plugin-pwa": "^0.17.5", "vite-plugin-static-copy": "^1.0.2", "vitest": "^1.4.0", "workbox-window": "^7.0.0" }, "pnpm": { "overrides": { "get-func-name@<2.0.1": ">=2.0.1", "postcss@<8.4.31": ">=8.4.31", "@babel/traverse@<7.23.2": ">=7.23.2", "crypto-js@<4.2.0": ">=4.2.0", "rollup": "npm:@rollup/wasm-node" } } }