Files
OpenSquawk/package.json
leubeem 3ea297f050 ci: make typecheck a real blocking gate; bump actions to Node 24 majors
The previous `vue-tsc --noEmit` step was a no-op: the root tsconfig uses
`files: []` with project references, so without `--build` it checks zero files
and always passes. Switch to `vue-tsc --build` (new `yarn typecheck` script)
and make the job blocking.

Fix the one error this surfaced: UsageEventDocument extended mongoose.Document,
whose `model` method collides with the `model: string` field. Use the
recommended pattern — a plain attrs interface passed to the Schema/Model
generics (hydrated docs still expose Document methods). Typecheck is now clean.

Bump actions/checkout@v5 and actions/setup-node@v5 to silence the Node.js 20
runtime deprecation (forced to Node 24 from 2026-06-16).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-15 15:28:27 +02:00

50 lines
1.4 KiB
JSON

{
"name": "opensquawk",
"ssr": false,
"type": "module",
"private": true,
"license": "AGPL-3.0-only",
"scripts": {
"build": "nuxt build",
"dev": "nuxt dev",
"generate": "nuxt generate",
"preview": "nuxt preview",
"start": "node .output/server/index.mjs",
"postinstall": "nuxt prepare",
"typecheck": "vue-tsc --build",
"sharp:rebuild": "SHARP_IGNORE_GLOBAL_LIBVIPS=1 yarn rebuild sharp",
"import:decision": "tsx --tsconfig tsconfig.scripts.json scripts/import-decision-tree.ts",
"test": "tsx --tsconfig tsconfig.tests.json --test \"tests/**/*.test.ts\" \"server/**/*.test.ts\" \"shared/**/*.test.ts\""
},
"dependencies": {
"@nuxt/image": "^2.0.0",
"@nuxtjs/tailwindcss": "^6.14.0",
"@pinia/nuxt": "^0.11.3",
"dotenv": "^17.3.1",
"fluent-ffmpeg": "^2.1.3",
"nodemailer": "^8.0.1",
"nuxt": "^4.3.1",
"nuxt-aos": "^1.2.6",
"nuxt-module-hotjar": "^1.3.4",
"nuxt-mongoose": "^1.0.6",
"openai": "^6.22.0",
"pinia": "^3.0.4",
"three": "^0.183.1",
"vue": "^3.5.28",
"vue-router": "^5.0.2",
"vuetify": "^3.11.8",
"vuetify-nuxt-module": "^0.19.5"
},
"engines": {
"node": "22.x"
},
"packageManager": "yarn@4.9.4",
"devDependencies": {
"@types/fluent-ffmpeg": "^2.1.28",
"@types/three": "^0.183.0",
"tsx": "^4.21.0",
"typescript": "^5.9.3",
"vue-tsc": "^3.2.4"
}
}