Files
pos-system/package.json
Ho Ngoc Hai af0461f233 fix(frontend): resolve 4 P2 architecture issues (Wave 3)
FRONT-I-01: Extract Auth components to Razor Class Library packages/blazor-ui/
- Created GoodGo.BlazorUi RCL (net10.0, MudBlazor 8.15) at packages/blazor-ui/
- Moved AuthButton, AuthCard, AuthInput, OtpInput, BrandPanel, SocialLogin, LanguageSwitcher
- Referenced RCL from WebClientTpos.Client via ProjectReference
- Added GoodGo.BlazorUi.Components.Auth/Common namespaces to _Imports.razor

FRONT-I-02: Add ARIA/accessibility attributes (WCAG 2.1 AA)
- AuthButton: aria-label, aria-busy, aria-disabled, aria-hidden on decorative icons
- OtpInput: role=group, aria-label per digit, autocomplete=one-time-code
- PosLayout: aria-expanded + aria-controls on sidebar/order toggles, aria-label on all icon buttons

FRONT-I-03: Implement Style Dictionary design token pipeline
- Created packages/design-tokens/ with token JSON (color, spacing, typography, border)
- Style Dictionary config outputs: CSS custom properties → wwwroot/css/tokens.generated.css
- Second output: C# constants → packages/blazor-ui/DesignTokens/DesignTokens.g.cs
- Added tokens:build script to root package.json
- Added tokens.generated.css link to index.html (before app.css for cascade correctness)

FRONT-I-04: Replace eval() in OtpInput with safe JS interop
- Created wwwroot/js/otp-input.js with window.focusOtpInput(index) helper
- Replaced JS.InvokeVoidAsync("eval", ...) with JS.InvokeVoidAsync("focusOtpInput", index)
- Eliminates CSP-violating eval(), improves security and debuggability

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-03-23 09:50:13 +07:00

49 lines
1.5 KiB
JSON

{
"name": "@goodgo/monorepo",
"version": "1.0.0",
"private": true,
"type": "module",
"description": "Enterprise-grade microservices monorepo with Auth Service, Web & Mobile apps",
"author": {
"name": "VelikHo",
"email": "hongochai10@icloud.com",
"url": "https://github.com/hongochai10"
},
"repository": {
"type": "git",
"url": "https://github.com/hongochai10/Microservices-Development"
},
"homepage": "https://github.com/hongochai10/Microservices-Development#readme",
"bugs": {
"url": "https://github.com/hongochai10/Microservices-Development/issues"
},
"workspaces": [
"apps/*",
"services/*",
"packages/*"
],
"scripts": {
"dev": "pnpm --parallel -r dev",
"build": "pnpm -r build",
"tokens:build": "pnpm --filter @goodgo/design-tokens build",
"test": "pnpm -r --filter='!@goodgo/service-template' test",
"lint": "pnpm -r lint",
"format": "prettier --write \"**/*.{ts,tsx,js,jsx,json,md}\"",
"format:check": "prettier --check \"**/*.{ts,tsx,js,jsx,json,md}\"",
"clean": "pnpm -r clean && rm -rf node_modules",
"typecheck": "pnpm --filter './packages/*' build && pnpm -r --filter='!@goodgo/service-template' typecheck"
},
"devDependencies": {
"@types/node": "^25.0.3",
"eslint": "^9.39.2",
"eslint-scope": "^9.0.0",
"prettier": "^3.7.4",
"turbo": "^2.7.3",
"typescript": "^5.9.3"
},
"engines": {
"node": ">=25.0.0",
"pnpm": ">=8.0.0"
},
"packageManager": "pnpm@8.15.0"
}