Files
summercms/admin/package.json
Jakub Zych 5f9353841b feat(10-01): serve the embedded admin SPA at backend.uri with cookie login
- backend.uri prefix (default /backend) mounts the admin API at {prefix}/api/v1
  and the embedded SPA shell at {prefix} with an api/ JSON 404 fallback
- cookie transport: an X-Requested-With login sets the HttpOnly summer_admin
  cookie and returns no token; the backend guard reads the cookie after Bearer
- CSRF wrapper refuses cookie-only POST/PUT/DELETE without X-Requested-With
- boardwalk package embeds boardwalk/dist, rewrites index.html once per prefix
  and sets cache and security headers
- framework admin OpenAPI pipeline (swag, swagger2openapi, openapi-typescript)
  with prefix-relative paths and typed envelopes for the tracer routes
- admin/ Vite SPA: login, plugin rail, section panel and read-only list
  through the openapi-fetch client typed by the generated schema
2026-09-27 15:21:48 +02:00

37 lines
885 B
JSON

{
"name": "summercms-admin",
"private": true,
"type": "module",
"engines": {
"node": ">=22.6"
},
"scripts": {
"dev": "vite",
"build": "vue-tsc --noEmit && vite build",
"typecheck": "vue-tsc --noEmit",
"test": "vitest run",
"gen:api": "openapi-typescript openapi/admin.json -o src/api/schema.d.ts"
},
"dependencies": {
"@fontsource/dm-mono": "5.3.0",
"@fontsource/dm-sans": "5.3.0",
"@lucide/vue": "1.17.0",
"openapi-fetch": "0.17.0",
"reka-ui": "2.9.10",
"vue": "3.5.35",
"vue-router": "5.1.0"
},
"devDependencies": {
"@tailwindcss/vite": "4.3.0",
"@vitejs/plugin-vue": "6.0.8",
"@vue/test-utils": "2.4.11",
"happy-dom": "20.11.6",
"openapi-typescript": "7.13.0",
"tailwindcss": "4.3.0",
"typescript": "5.9.3",
"vite": "7.3.5",
"vitest": "3.2.7",
"vue-tsc": "3.3.11"
}
}