Files
DDI/web/package.json
beug.k@beugsiud.deandClaude Opus 5.5 63d6dac0f5
ci / Go (lint, test, vuln) (push) Successful in 3m27s
ci / Protobuf (push) Successful in 6s
ci / Web (lint, test, audit, build) (push) Successful in 54s
ci / Shell and licence headers (push) Successful in 6s
ci / Development environment (compose) (push) Canceled after 0s
ci / Release build (dry run) (push) Canceled after 33s
feat(web): management UI for M1
- login with TOTP step and SSO button, forced password change, account
  page with password change and TOTP setup (QR code)
- layout with permission-based navigation, license banner, theme/language
- networks: list with utilization, create/edit with pool editor, detail
  page with address map
- addresses: server-side filtered/sorted, virtualized table, inline type
  switch with DNS/DHCP preview, bulk actions, saved filters, CSV import
  (dry run first) and export
- license, users, audit log and OIDC settings pages
- typed API client from the OpenAPI spec; errors translated by code
- German default, English second language

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-12 21:34:45 +02:00

62 lines
1.7 KiB
JSON

{
"name": "ddi-suite-web",
"private": true,
"version": "0.0.0",
"license": "SEE LICENSE IN ../LICENSES/LicenseRef-DDI-Proprietary.txt",
"type": "module",
"engines": {
"node": ">=24"
},
"scripts": {
"dev": "vite",
"build": "tsc -b && vite build",
"postbuild": "node -e \"require('node:fs').writeFileSync('dist/.gitkeep', '')\"",
"preview": "vite preview",
"typecheck": "tsc -b",
"lint": "eslint --max-warnings 0 .",
"format": "prettier --write .",
"format:check": "prettier --check .",
"test": "vitest run",
"gen:api": "openapi-typescript ../server/api/openapi.yaml -o src/api/schema.d.ts"
},
"dependencies": {
"@tanstack/react-query": "5.104.2",
"@tanstack/react-table": "8.21.3",
"@tanstack/react-virtual": "3.14.17",
"i18next": "26.4.4",
"openapi-fetch": "0.17.0",
"qrcode": "1.5.4",
"react": "19.3.0",
"react-dom": "19.3.0",
"react-i18next": "17.0.16",
"react-router": "7.18.4"
},
"devDependencies": {
"@eslint/js": "10.0.1",
"@testing-library/jest-dom": "7.0.1",
"@testing-library/react": "16.3.3",
"@testing-library/user-event": "14.6.7",
"@types/node": "24.19.2",
"@types/qrcode": "1.5.6",
"@types/react": "19.3.0",
"@types/react-dom": "19.3.0",
"@vitejs/plugin-react": "6.1.2",
"eslint": "10.12.0",
"eslint-plugin-react-hooks": "7.1.1",
"eslint-plugin-react-refresh": "0.5.7",
"globals": "17.13.0",
"jsdom": "30.1.2",
"openapi-typescript": "7.13.0",
"prettier": "3.9.10",
"typescript": "6.0.3",
"typescript-eslint": "8.71.1",
"vite": "8.3.4",
"vitest": "5.0.4"
},
"overrides": {
"openapi-typescript": {
"typescript": "$typescript"
}
}
}