A first visit resolved to Chinese regardless of the browser: LocaleService read `dsh.locale` and fell straight back to `zh` when nothing was stored, ignoring the languages the browser already states it reads. The initial locale now resolves through three ordered sources — the persisted preference, then `navigator` (first entry of the ordered language list whose primary subtag names a shipped locale, so `zh-Hans-CN` -> zh and `en-GB` -> en), then `FALLBACK_LOCALE`. An explicit choice still wins and nothing writes the detected locale back to storage, so "has the user chosen?" stays a question only the stored value answers. Specs asserting the shipped Chinese copy now state the browser they assume: the web e2e scenarios open their page with `locale: ZH_BROWSER_LOCALE`, and package specs pin it through the new `pinBrowserLanguages` test helper. `settings-chrome.e2e.ts` gains an English-browser scenario as the assembled-app proof.
73 lines
2.2 KiB
JSON
73 lines
2.2 KiB
JSON
{
|
|
"name": "@deepseek-ai/dsh-client-ui-models",
|
|
"description": "Models settings and official-DeepSeek first-run routing over one live provider/settings/credential join",
|
|
"version": "0.0.1",
|
|
"private": true,
|
|
"type": "module",
|
|
"main": "lib/index.js",
|
|
"types": "lib/types/index.d.ts",
|
|
"exports": {
|
|
".": {
|
|
"types": "./lib/types/index.d.ts",
|
|
"default": "./lib/index.js"
|
|
},
|
|
"./invariant": {
|
|
"types": "./lib/types/invariant.d.ts",
|
|
"default": "./lib/invariant.js"
|
|
},
|
|
"./client": {
|
|
"types": "./lib/types/client/index.d.ts",
|
|
"default": "./lib/client.js"
|
|
},
|
|
"./src/*": "./src/*",
|
|
"./package.json": "./package.json"
|
|
},
|
|
"dshClient": {
|
|
"inject": [
|
|
"@deepseek-ai/dsh-client-runtime",
|
|
"@deepseek-ai/dsh-client-ui-settings",
|
|
"@deepseek-ai/dsh-client-locale"
|
|
],
|
|
"platform": "web"
|
|
},
|
|
"scripts": {
|
|
"bundle": "tsdown",
|
|
"watch": "tsdown --watch"
|
|
},
|
|
"license": "BSD-3-Clause",
|
|
"peerDependencies": {
|
|
"@deepseek-ai/dsh-client-connection": "^0.0.1",
|
|
"@deepseek-ai/dsh-client-runtime": "^0.0.1",
|
|
"@deepseek-ai/dsh-client-schema-form": "^0.0.1",
|
|
"@deepseek-ai/dsh-client-ui-primitives": "^0.0.1",
|
|
"@deepseek-ai/dsh-client-ui-slots": "^0.0.1",
|
|
"@deepseek-ai/dsh-client-web-react": "^0.0.1",
|
|
"@deepseek-ai/dsh-invariants": "^0.0.1",
|
|
"cordis": "^4.0.0-rc.7",
|
|
"react": "^18.2.0"
|
|
},
|
|
"devDependencies": {
|
|
"@deepseek-ai/dsh-client-connection": "workspace:^",
|
|
"@deepseek-ai/dsh-client-locale": "workspace:^",
|
|
"@deepseek-ai/dsh-client-runtime": "workspace:^",
|
|
"@deepseek-ai/dsh-client-schema-form": "workspace:^",
|
|
"@deepseek-ai/dsh-client-test-runtime": "workspace:^",
|
|
"@deepseek-ai/dsh-client-ui-primitives": "workspace:^",
|
|
"@deepseek-ai/dsh-client-ui-settings": "workspace:^",
|
|
"@deepseek-ai/dsh-client-ui-slots": "workspace:^",
|
|
"@deepseek-ai/dsh-client-web-react": "workspace:^",
|
|
"@deepseek-ai/dsh-invariants": "workspace:^",
|
|
"@types/react": "~18.3.1",
|
|
"cordis": "^4.0.0-rc.7",
|
|
"react": "^18.2.0"
|
|
},
|
|
"files": [
|
|
"lib/index.js",
|
|
"lib/invariant.js",
|
|
"lib/client.js",
|
|
"lib/types/**/*.d.ts",
|
|
"lib/types/**/*.d.ts.map",
|
|
"src"
|
|
]
|
|
}
|