* chore(deps): update dependencies and fix security vulnerabilities Update TypeScript 4.9 → 5.4. Update Zod 3 → 4. Update nodemailer 6 → 7. Update @typescript-eslint packages to v7. Update xml2js, undici, lodash, axios, swr, winston- Add pnpm.overrides for transitive dependency vulnerabilities * chore: fix import ordering for TypeScript 5.4 compatibility prettier-plugin-organize-imports behaves differently with TypeScript 5.4 vs 4.9, causing CI formatting checks to fail. This reformats imports to match the ordering expected by the plugin with the upgraded TS version.
213 lines
7.1 KiB
JSON
213 lines
7.1 KiB
JSON
{
|
|
"name": "seerr",
|
|
"version": "0.1.0",
|
|
"private": true,
|
|
"packageManager": "pnpm@10.24.0",
|
|
"scripts": {
|
|
"preinstall": "npx only-allow pnpm",
|
|
"dev": "nodemon -e ts --watch server --watch seerr-api.yml -e .json,.ts,.yml -x ts-node -r tsconfig-paths/register --files --project server/tsconfig.json server/index.ts",
|
|
"build:server": "tsc --project server/tsconfig.json && copyfiles -u 2 server/templates/**/*.{html,pug} dist/templates && tsc-alias -p server/tsconfig.json",
|
|
"build:next": "next build",
|
|
"build": "pnpm build:next && pnpm build:server",
|
|
"lint": "eslint \"./server/**/*.{ts,tsx}\" \"./src/**/*.{ts,tsx}\" --cache",
|
|
"lintfix": "eslint \"./server/**/*.{ts,tsx}\" \"./src/**/*.{ts,tsx}\" --fix",
|
|
"start": "NODE_ENV=production node dist/index.js",
|
|
"i18n:extract": "ts-node --project server/tsconfig.json src/i18n/extractMessages.ts",
|
|
"migration:generate": "ts-node -r tsconfig-paths/register --project server/tsconfig.json ./node_modules/typeorm/cli.js migration:generate -d server/datasource.ts",
|
|
"migration:create": "ts-node -r tsconfig-paths/register --project server/tsconfig.json ./node_modules/typeorm/cli.js migration:create -d server/datasource.ts",
|
|
"migration:run": "ts-node -r tsconfig-paths/register --project server/tsconfig.json ./node_modules/typeorm/cli.js migration:run -d server/datasource.ts",
|
|
"format": "prettier --loglevel warn --write --cache .",
|
|
"format:check": "prettier --check --cache .",
|
|
"typecheck": "pnpm typecheck:server && pnpm typecheck:client",
|
|
"typecheck:server": "tsc --project server/tsconfig.json --noEmit",
|
|
"typecheck:client": "tsc --noEmit",
|
|
"prepare": "node bin/prepare.js",
|
|
"cypress:open": "cypress open",
|
|
"cypress:prepare": "ts-node -r tsconfig-paths/register --files --project server/tsconfig.json server/scripts/prepareTestDb.ts",
|
|
"cypress:build": "pnpm build && pnpm cypress:prepare"
|
|
},
|
|
"repository": {
|
|
"type": "git",
|
|
"url": "https://github.com/seerr-team/seerr.git"
|
|
},
|
|
"license": "MIT",
|
|
"dependencies": {
|
|
"@dr.pogodin/csurf": "^1.16.6",
|
|
"@formatjs/intl-displaynames": "6.8.13",
|
|
"@formatjs/intl-locale": "3.1.1",
|
|
"@formatjs/intl-pluralrules": "5.4.6",
|
|
"@formatjs/intl-utils": "3.8.4",
|
|
"@headlessui/react": "1.7.12",
|
|
"@heroicons/react": "2.2.0",
|
|
"@seerr-team/react-tailwindcss-datepicker": "^1.3.4",
|
|
"@supercharge/request-ip": "1.2.0",
|
|
"@svgr/webpack": "6.5.1",
|
|
"@tanem/react-nprogress": "5.0.56",
|
|
"@types/ua-parser-js": "^0.7.36",
|
|
"@types/wink-jaro-distance": "^2.0.2",
|
|
"ace-builds": "1.43.4",
|
|
"axios": "1.13.3",
|
|
"axios-rate-limit": "1.4.0",
|
|
"bcrypt": "6.0.0",
|
|
"bowser": "2.13.1",
|
|
"connect-typeorm": "1.1.4",
|
|
"cookie-parser": "1.4.7",
|
|
"copy-to-clipboard": "3.3.3",
|
|
"country-flag-icons": "1.6.4",
|
|
"cronstrue": "2.23.0",
|
|
"date-fns": "2.29.3",
|
|
"dayjs": "1.11.19",
|
|
"dns-caching": "^0.2.7",
|
|
"email-templates": "12.0.3",
|
|
"express": "4.21.2",
|
|
"express-openapi-validator": "4.13.8",
|
|
"express-rate-limit": "6.7.0",
|
|
"express-session": "1.18.2",
|
|
"formik": "^2.4.9",
|
|
"gravatar-url": "3.1.0",
|
|
"http-proxy-agent": "^7.0.2",
|
|
"https-proxy-agent": "^7.0.6",
|
|
"lodash": "4.17.23",
|
|
"mime": "3",
|
|
"next": "^14.2.35",
|
|
"node-cache": "5.1.2",
|
|
"node-gyp": "9.3.1",
|
|
"node-schedule": "2.1.1",
|
|
"nodemailer": "7.0.12",
|
|
"openpgp": "6.3.0",
|
|
"pg": "8.16.3",
|
|
"pug": "3.0.3",
|
|
"react": "^18.3.1",
|
|
"react-ace": "10.1.0",
|
|
"react-animate-height": "2.1.2",
|
|
"react-aria": "3.44.0",
|
|
"react-dom": "^18.3.1",
|
|
"react-intersection-observer": "9.4.3",
|
|
"react-intl": "^6.6.8",
|
|
"react-markdown": "8.0.5",
|
|
"react-popper-tooltip": "4.4.2",
|
|
"react-select": "5.10.2",
|
|
"react-spring": "9.7.1",
|
|
"react-toast-notifications": "2.5.1",
|
|
"react-transition-group": "^4.4.5",
|
|
"react-truncate-markup": "5.1.2",
|
|
"react-use-clipboard": "1.0.9",
|
|
"reflect-metadata": "0.1.13",
|
|
"secure-random-password": "0.2.3",
|
|
"semver": "7.7.3",
|
|
"sharp": "^0.33.4",
|
|
"sqlite3": "5.1.7",
|
|
"swagger-ui-express": "4.6.2",
|
|
"swr": "2.3.8",
|
|
"tailwind-merge": "^2.6.0",
|
|
"typeorm": "0.3.28",
|
|
"ua-parser-js": "^1.0.35",
|
|
"undici": "^7.18.2",
|
|
"validator": "^13.15.23",
|
|
"web-push": "3.6.7",
|
|
"wink-jaro-distance": "^2.0.0",
|
|
"winston": "3.19.0",
|
|
"winston-daily-rotate-file": "4.7.1",
|
|
"xml2js": "0.5.0",
|
|
"yamljs": "0.3.0",
|
|
"yup": "0.32.11",
|
|
"zod": "4.3.6"
|
|
},
|
|
"devDependencies": {
|
|
"@commitlint/cli": "17.4.4",
|
|
"@commitlint/config-conventional": "17.4.4",
|
|
"@tailwindcss/aspect-ratio": "0.4.2",
|
|
"@tailwindcss/forms": "0.5.10",
|
|
"@tailwindcss/typography": "0.5.16",
|
|
"@types/bcrypt": "6.0.0",
|
|
"@types/cookie-parser": "1.4.10",
|
|
"@types/country-flag-icons": "1.2.2",
|
|
"@types/csurf": "1.11.5",
|
|
"@types/email-templates": "8.0.4",
|
|
"@types/express": "4.17.17",
|
|
"@types/express-session": "1.18.2",
|
|
"@types/lodash": "4.17.21",
|
|
"@types/mime": "3",
|
|
"@types/node": "22.10.5",
|
|
"@types/node-schedule": "2.1.8",
|
|
"@types/nodemailer": "7",
|
|
"@types/react": "^18.3.3",
|
|
"@types/react-dom": "^18.3.0",
|
|
"@types/react-transition-group": "4.4.12",
|
|
"@types/secure-random-password": "0.2.1",
|
|
"@types/semver": "7.7.1",
|
|
"@types/swagger-ui-express": "4.1.8",
|
|
"@types/validator": "^13.15.10",
|
|
"@types/web-push": "3.6.4",
|
|
"@types/xml2js": "0.4.14",
|
|
"@types/yamljs": "0.2.31",
|
|
"@types/yup": "0.29.14",
|
|
"@typescript-eslint/eslint-plugin": "7.18.0",
|
|
"@typescript-eslint/parser": "7.18.0",
|
|
"autoprefixer": "10.4.23",
|
|
"baseline-browser-mapping": "^2.8.32",
|
|
"commitizen": "4.3.1",
|
|
"copyfiles": "2.4.1",
|
|
"cy-mobile-commands": "0.3.0",
|
|
"cypress": "14.5.4",
|
|
"cz-conventional-changelog": "3.3.0",
|
|
"eslint": "8.57.1",
|
|
"eslint-config-next": "^14.2.4",
|
|
"eslint-config-prettier": "8.6.0",
|
|
"eslint-plugin-formatjs": "4.9.0",
|
|
"eslint-plugin-jsx-a11y": "6.10.2",
|
|
"eslint-plugin-no-relative-import-paths": "1.6.1",
|
|
"eslint-plugin-prettier": "4.2.1",
|
|
"eslint-plugin-react": "7.37.5",
|
|
"eslint-plugin-react-hooks": "4.6.0",
|
|
"husky": "8.0.3",
|
|
"lint-staged": "13.1.2",
|
|
"nodemon": "3.1.11",
|
|
"postcss": "8.5.6",
|
|
"prettier": "2.8.4",
|
|
"prettier-plugin-organize-imports": "3.2.2",
|
|
"prettier-plugin-tailwindcss": "0.2.3",
|
|
"tailwindcss": "3.2.7",
|
|
"ts-node": "10.9.2",
|
|
"tsc-alias": "1.8.16",
|
|
"tsconfig-paths": "4.2.0",
|
|
"typescript": "5.4.5"
|
|
},
|
|
"engines": {
|
|
"node": "^22.0.0",
|
|
"pnpm": "^10.0.0"
|
|
},
|
|
"config": {
|
|
"commitizen": {
|
|
"path": "./node_modules/cz-conventional-changelog"
|
|
}
|
|
},
|
|
"lint-staged": {
|
|
"**/*.{ts,tsx,js}": [
|
|
"prettier --write",
|
|
"eslint"
|
|
],
|
|
"**/*.{json,md,css}": [
|
|
"prettier --write"
|
|
]
|
|
},
|
|
"commitlint": {
|
|
"extends": [
|
|
"@commitlint/config-conventional"
|
|
]
|
|
},
|
|
"pnpm": {
|
|
"onlyBuiltDependencies": [
|
|
"@swc/core",
|
|
"bcrypt",
|
|
"cypress",
|
|
"sharp",
|
|
"sqlite3"
|
|
],
|
|
"overrides": {
|
|
"sqlite3>node-gyp": "8.4.1",
|
|
"@types/express-session": "1.18.2"
|
|
}
|
|
}
|
|
}
|