feat(cli): add terminal-UI i18n runtime and upgrade Ink to 7 (U6)
Add a synchronous Node-side i18next instance built from the generated @fusion/i18n CLI catalog map (no async backend, first frame localized), with locale precedence --lang flag -> GlobalSettings.language -> env (LC_ALL/LANG/..) -> en. Wrap the Ink DashboardApp render in <I18nextProvider> and thread a --lang flag through runDashboard. Upgrade ink 6.8 -> 7.0 (native CJK double-width measurement) and raise the react/@types/react peer floor to ^19.2.0. A spike test confirms react-i18next works under Ink's custom reconciler: localized first frame + re-render on changeLanguage (including CJK), retiring the KTD1 unknown. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -60,13 +60,13 @@
|
||||
"dockerode": "^4.0.12",
|
||||
"express": "^5.1.0",
|
||||
"i18next": "^26.3.1",
|
||||
"ink": "^6.8.0",
|
||||
"ink": "^7.0.5",
|
||||
"ink-spinner": "^5.0.0",
|
||||
"ink-text-input": "^6.0.0",
|
||||
"ioredis": "^5.6.0",
|
||||
"multer": "^2.1.1",
|
||||
"node-pty": "npm:@homebridge/node-pty-prebuilt-multiarch@^0.13.1",
|
||||
"react": "^19.0.0",
|
||||
"react": "^19.2.0",
|
||||
"react-i18next": "^17.0.8"
|
||||
},
|
||||
"peerDependencies": {
|
||||
@@ -93,7 +93,7 @@
|
||||
"@fusion/pi-claude-cli": "workspace:*",
|
||||
"@fusion/pi-llama-cpp": "workspace:*",
|
||||
"@types/node": "^22.0.0",
|
||||
"@types/react": "^19.0.0",
|
||||
"@types/react": "^19.2.0",
|
||||
"@vitest/coverage-v8": "^3.1.0",
|
||||
"cross-env": "^7.0.0",
|
||||
"esbuild": "^0.25.12",
|
||||
|
||||
Reference in New Issue
Block a user