Files
InvoiceShelf/package.json
Darko Gjorgjijoski e48212b18a build: migrate frontend tooling to pnpm (v3) (#678)
* build: migrate frontend tooling to pnpm (v3)

Rebuilds the stale #673 on current 3.x so it doesn't revert #657's test
split, the Node-24 action bumps, or composer-install@4.0.0.

- package.json: packageManager pnpm@11.6.0; drop dead 'resolutions'
- pnpm-workspace.yaml: nodeLinker hoisted, allowBuilds vue-demi,
  overrides brace-expansion (replaces resolutions)
- pnpm-lock.yaml generated via 'pnpm import' from yarn.lock (keeps the
  resolved versions, incl. vite 8.0.3 / rolldown rc.12); yarn.lock removed
- docker.yaml + release.yaml: pnpm/action-setup@v6 + cache pnpm + pnpm
  install/build (action versions and the #657 split left intact; check.yaml
  needs no change — its test job is PHP-only after #657)
- 3 Dockerfiles: node:24 + corepack + pnpm install --frozen-lockfile && pnpm build
- Makefile, composer 'dev' script, CLAUDE.md, .gitignore -> pnpm

* fix(deps): pin vite to 8.0.5 (security)

Now that 3.x is the default branch, Dependabot flags vite <8.0.5. Pin to
8.0.5 (the patched version), which keeps rolldown 1.0.0-rc.12 — still
below 8.0.15 where the broken rolldown 1.0.3 (the init_runtime_dom_esm_bundler
chunk regression) starts, so the build stays clean. Mirrors v2's #674.
2026-06-12 14:04:16 +02:00

66 lines
1.8 KiB
JSON

{
"private": true,
"packageManager": "pnpm@11.6.0",
"engines": {
"node": ">=24"
},
"type": "module",
"scripts": {
"dev": "vite",
"watch": "vite build --watch",
"build": "vite build",
"serve": "vite preview",
"test": "eslint ./resources/scripts",
"lint": "eslint ./resources/scripts --max-warnings 0",
"lint:fix": "eslint ./resources/scripts --fix",
"typecheck": "vue-tsc --noEmit",
"prepare": "git config core.hooksPath .githooks || true"
},
"devDependencies": {
"@tailwindcss/typography": "^0.5.16",
"@typescript-eslint/parser": "^8.0.0",
"@tailwindcss/vite": "^4.0.0",
"@types/lodash": "^4.17.24",
"@vitejs/plugin-vue": "^6.0.0",
"@vue/compiler-sfc": "^3.5.13",
"eslint": "^10.0.0",
"eslint-config-prettier": "^10.0.0",
"eslint-plugin-vue": "^10.0.0",
"prettier": "^3.4.2",
"tailwind-scrollbar": "^4.0.0",
"tailwindcss": "^4.0.0",
"typescript": "^6.0.2",
"vue-eslint-parser": "^10.0.0",
"vue-tsc": "^3.2.6"
},
"dependencies": {
"@headlessui/vue": "^1.7.23",
"@heroicons/vue": "^2.2.0",
"@popperjs/core": "^2.11.8",
"@tiptap/core": "^3.0.0",
"@tiptap/extension-text-align": "^3.0.0",
"@tiptap/pm": "^3.0.0",
"@tiptap/starter-kit": "^3.0.0",
"@tiptap/vue-3": "^3.0.0",
"@vuelidate/core": "^2.0.3",
"@vuelidate/validators": "^2.0.4",
"@vueuse/core": "^14.0.0",
"axios": "1.17.0",
"chart.js": "^4.5.1",
"date-fns": "^4.1.0",
"dompurify": "^3.3.3",
"laravel-vite-plugin": "^3.0.0",
"lodash": "^4.17.21",
"marked": "^18.0.0",
"pinia": "^3.0.0",
"v-money3": "^3.24.1",
"v-tooltip": "^4.0.0-beta.17",
"vite": "8.0.5",
"vue": "^3.5",
"vue-flatpickr-component": "^12.0.0",
"vue-i18n": "^11.0.1",
"vue-router": "^5.0.0",
"vuedraggable": "^4.1.0"
}
}