svelte-component-i18n 0.1.3 → 0.1.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -0
- package/dist/detect.d.ts +1 -1
- package/dist/detect.js +5 -1
- package/package.json +8 -8
package/README.md
CHANGED
package/dist/detect.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export type LanguageStrategy<Languages extends string> = (supportedLanguages: Languages[]) => Languages | undefined;
|
|
2
|
-
export declare function fromNavigator<Languages extends string>(navigator?:
|
|
2
|
+
export declare function fromNavigator<Languages extends string>(navigator?: Navigator): LanguageStrategy<Languages>;
|
|
3
3
|
export declare function fromLocalStorage<Languages extends string>(key: string, localStorage?: Storage): LanguageStrategy<Languages>;
|
|
4
4
|
export type LanguageHook<Languages extends string> = (language: Languages) => unknown;
|
|
5
5
|
export declare function toLocalStorage<Languages extends string>(key: string, localStorage?: Storage): LanguageHook<Languages>;
|
package/dist/detect.js
CHANGED
|
@@ -4,13 +4,17 @@ export function fromNavigator(navigator = globalThis.navigator) {
|
|
|
4
4
|
return;
|
|
5
5
|
}
|
|
6
6
|
for (const navigatorLanguage of navigator.languages) {
|
|
7
|
-
const language = navigatorLanguage;
|
|
7
|
+
const language = stripOptionalBCP47SubTags(navigatorLanguage);
|
|
8
8
|
if (supportedLanguages.includes(language)) {
|
|
9
9
|
return language;
|
|
10
10
|
}
|
|
11
11
|
}
|
|
12
12
|
};
|
|
13
13
|
}
|
|
14
|
+
function stripOptionalBCP47SubTags(bcp47Tag) {
|
|
15
|
+
const [language, _script, _region] = bcp47Tag.split('-');
|
|
16
|
+
return language;
|
|
17
|
+
}
|
|
14
18
|
export function fromLocalStorage(key, localStorage = globalThis.localStorage) {
|
|
15
19
|
return (supportedLanguages) => {
|
|
16
20
|
if (!localStorage) {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "svelte-component-i18n",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.4",
|
|
4
4
|
"license": "BSD-3-Clause",
|
|
5
5
|
"description": "Lightweight internationalization library for Svelte.",
|
|
6
6
|
"author": "Lukas Dietrich <lukas@lukasdietrich.com>",
|
|
@@ -48,22 +48,22 @@
|
|
|
48
48
|
"@eslint/compat": "^2.0.0",
|
|
49
49
|
"@eslint/js": "^9.39.1",
|
|
50
50
|
"@sveltejs/adapter-auto": "^7.0.0",
|
|
51
|
-
"@sveltejs/kit": "^2.
|
|
51
|
+
"@sveltejs/kit": "^2.50.1",
|
|
52
52
|
"@sveltejs/package": "^2.5.7",
|
|
53
|
-
"@sveltejs/vite-plugin-svelte": "^6.2.
|
|
54
|
-
"@types/node": "^25.0.
|
|
53
|
+
"@sveltejs/vite-plugin-svelte": "^6.2.4",
|
|
54
|
+
"@types/node": "^25.0.10",
|
|
55
55
|
"eslint": "^9.39.1",
|
|
56
56
|
"eslint-config-prettier": "^10.1.8",
|
|
57
57
|
"eslint-plugin-svelte": "^3.13.1",
|
|
58
58
|
"globals": "^17.0.0",
|
|
59
|
-
"prettier": "^3.
|
|
59
|
+
"prettier": "^3.8.1",
|
|
60
60
|
"prettier-plugin-svelte": "^3.4.0",
|
|
61
|
-
"publint": "^0.3.
|
|
62
|
-
"svelte": "^5.
|
|
61
|
+
"publint": "^0.3.17",
|
|
62
|
+
"svelte": "^5.48.2",
|
|
63
63
|
"svelte-check": "^4.3.4",
|
|
64
64
|
"typescript": "^5.9.3",
|
|
65
65
|
"typescript-eslint": "^8.48.1",
|
|
66
|
-
"vite": "^7.
|
|
66
|
+
"vite": "^7.3.1",
|
|
67
67
|
"vitest": "^4.0.15"
|
|
68
68
|
}
|
|
69
69
|
}
|