typed-locales 1.0.46 → 1.0.48
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/dist/adapters/react.d.ts +2 -7
- package/dist/adapters/react.d.ts.map +1 -1
- package/dist/adapters/react.js +5 -8
- package/dist/adapters/zustand.d.ts +6 -5
- package/dist/adapters/zustand.d.ts.map +1 -1
- package/dist/adapters/zustand.js +14 -14
- package/dist/index.d.ts +11 -70
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +0 -6
- package/package.json +1 -1
package/dist/adapters/react.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import { getTranslate,
|
|
2
|
+
import { getTranslate, type ExtraFormatters, type Locales, type TranslationType } from '../index.js';
|
|
3
3
|
export interface TranslationContextType {
|
|
4
4
|
isLoading: boolean;
|
|
5
5
|
locale?: Locales;
|
|
@@ -12,11 +12,6 @@ export declare const initReact: (allTranslations: Record<Locales, () => Promise<
|
|
|
12
12
|
TranslationProvider: ({ children }: {
|
|
13
13
|
children: React.ReactNode;
|
|
14
14
|
}) => import("react/jsx-runtime").JSX.Element;
|
|
15
|
-
useTranslation:
|
|
16
|
-
(): TranslationContextType;
|
|
17
|
-
<NS extends NameSpaces>(namespace: NS): Omit<TranslationContextType, "t"> & {
|
|
18
|
-
t: ReturnType<typeof createNamespaceTranslate<NS>>;
|
|
19
|
-
};
|
|
20
|
-
};
|
|
15
|
+
useTranslation: () => TranslationContextType;
|
|
21
16
|
};
|
|
22
17
|
//# sourceMappingURL=react.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"react.d.ts","sourceRoot":"","sources":["../../src/adapters/react.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAoE,MAAM,OAAO,CAAC;AAEzF,OAAO,EACN,YAAY,EACZ,
|
|
1
|
+
{"version":3,"file":"react.d.ts","sourceRoot":"","sources":["../../src/adapters/react.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAoE,MAAM,OAAO,CAAC;AAEzF,OAAO,EACN,YAAY,EACZ,KAAK,eAAe,EACpB,KAAK,OAAO,EACZ,KAAK,eAAe,EACpB,MAAM,aAAa,CAAC;AAErB,MAAM,WAAW,sBAAsB;IACtC,SAAS,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IACjD,CAAC,EAAE,UAAU,CAAC,OAAO,YAAY,CAAC,CAAC;CACnC;AAGD,eAAO,MAAM,SAAS,GACrB,iBAAiB,MAAM,CAAC,OAAO,EAAE,MAAM,OAAO,CAAC;IAAE,OAAO,EAAE,eAAe,CAAA;CAAE,CAAC,CAAC,EAC7E,iBAAiB,eAAe,EAChC,iBAAiB,OAAO;wCAImB;QAAE,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;KAAE;;CAkFxE,CAAC"}
|
package/dist/adapters/react.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import { createContext, useCallback, useContext,
|
|
3
|
-
import { getTranslate,
|
|
2
|
+
import { createContext, useCallback, useContext, useState } from 'react';
|
|
3
|
+
import { getTranslate, } from '../index.js';
|
|
4
4
|
// Initial translation always should be loaded
|
|
5
5
|
export const initReact = (allTranslations, extraFormatters, fallbackLocale) => {
|
|
6
6
|
const TranslationContext = createContext(undefined);
|
|
@@ -50,15 +50,12 @@ export const initReact = (allTranslations, extraFormatters, fallbackLocale) => {
|
|
|
50
50
|
t: state.translate,
|
|
51
51
|
}, children: children }));
|
|
52
52
|
};
|
|
53
|
-
|
|
53
|
+
// Overloaded useTranslation function
|
|
54
|
+
function useTranslation() {
|
|
54
55
|
const context = useContext(TranslationContext);
|
|
55
56
|
if (!context)
|
|
56
57
|
throw new Error('useTranslation must be used within a TranslationProvider');
|
|
57
|
-
|
|
58
|
-
return {
|
|
59
|
-
...context,
|
|
60
|
-
t,
|
|
61
|
-
};
|
|
58
|
+
return context;
|
|
62
59
|
}
|
|
63
60
|
return {
|
|
64
61
|
TranslationProvider,
|
|
@@ -1,12 +1,13 @@
|
|
|
1
|
-
import { type ExtraFormatters,
|
|
1
|
+
import { type ExtraFormatters, type Locales, type TranslateFunctionType, type TranslationType } from '../index.js';
|
|
2
|
+
type TranslationLoader = () => Promise<{
|
|
3
|
+
default: TranslationType;
|
|
4
|
+
}>;
|
|
2
5
|
interface TranslationState {
|
|
3
6
|
isLoading: boolean;
|
|
4
7
|
locale?: Locales;
|
|
5
8
|
setLocale: (locale: Locales) => Promise<void>;
|
|
6
|
-
t:
|
|
9
|
+
t: TranslateFunctionType;
|
|
7
10
|
}
|
|
8
|
-
export declare const initZustand: (allTranslations: Record<Locales,
|
|
9
|
-
default: TranslationType;
|
|
10
|
-
}>>, extraFormatters: ExtraFormatters, fallbackLocale?: Locales) => import("zustand").UseBoundStore<import("zustand").StoreApi<TranslationState>>;
|
|
11
|
+
export declare const initZustand: (allTranslations: Record<Locales, TranslationLoader | TranslationType>, extraFormatters: ExtraFormatters) => import("zustand").UseBoundStore<import("zustand").StoreApi<TranslationState>>;
|
|
11
12
|
export {};
|
|
12
13
|
//# sourceMappingURL=zustand.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"zustand.d.ts","sourceRoot":"","sources":["../../src/adapters/zustand.ts"],"names":[],"mappings":"AACA,OAAO,EACN,KAAK,eAAe,
|
|
1
|
+
{"version":3,"file":"zustand.d.ts","sourceRoot":"","sources":["../../src/adapters/zustand.ts"],"names":[],"mappings":"AACA,OAAO,EACN,KAAK,eAAe,EAEpB,KAAK,OAAO,EACZ,KAAK,qBAAqB,EAC1B,KAAK,eAAe,EACpB,MAAM,aAAa,CAAC;AAErB,KAAK,iBAAiB,GAAG,MAAM,OAAO,CAAC;IAAE,OAAO,EAAE,eAAe,CAAA;CAAE,CAAC,CAAC;AAErE,UAAU,gBAAgB;IACzB,SAAS,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;IAEjB,SAAS,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9C,CAAC,EAAE,qBAAqB,CAAC;CACzB;AAED,eAAO,MAAM,WAAW,GACvB,iBAAiB,MAAM,CAAC,OAAO,EAAE,iBAAiB,GAAG,eAAe,CAAC,EACrE,iBAAiB,eAAe,kFAmChC,CAAC"}
|
package/dist/adapters/zustand.js
CHANGED
|
@@ -1,33 +1,33 @@
|
|
|
1
1
|
import { create } from 'zustand';
|
|
2
2
|
import { getTranslate, } from '../index.js';
|
|
3
|
-
export const initZustand = (allTranslations, extraFormatters
|
|
4
|
-
const
|
|
3
|
+
export const initZustand = (allTranslations, extraFormatters) => {
|
|
4
|
+
const identityTranslate = ((key) => key);
|
|
5
|
+
return create((set, get) => ({
|
|
5
6
|
isLoading: false,
|
|
6
7
|
locale: undefined,
|
|
7
8
|
setLocale: async (targetLocale) => {
|
|
9
|
+
if (get().locale === targetLocale)
|
|
10
|
+
return;
|
|
8
11
|
try {
|
|
9
|
-
if (get().locale === targetLocale) {
|
|
10
|
-
return;
|
|
11
|
-
}
|
|
12
12
|
set({ isLoading: true });
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
13
|
+
let translationData;
|
|
14
|
+
if (typeof allTranslations[targetLocale] === 'function') {
|
|
15
|
+
translationData = await allTranslations[targetLocale]().then(module => module.default);
|
|
16
|
+
}
|
|
17
|
+
else {
|
|
18
|
+
translationData = allTranslations[targetLocale];
|
|
18
19
|
}
|
|
19
20
|
set({
|
|
20
21
|
isLoading: false,
|
|
21
22
|
locale: targetLocale,
|
|
22
|
-
t: getTranslate(translationData, targetLocale, extraFormatters
|
|
23
|
+
t: getTranslate(translationData, targetLocale, extraFormatters),
|
|
23
24
|
});
|
|
24
25
|
}
|
|
25
26
|
catch (error) {
|
|
26
|
-
console.error(`Failed to load locale ${
|
|
27
|
+
console.error(`Failed to load locale ${targetLocale}:`, error);
|
|
27
28
|
set({ isLoading: false });
|
|
28
29
|
}
|
|
29
30
|
},
|
|
30
|
-
t:
|
|
31
|
+
t: identityTranslate,
|
|
31
32
|
}));
|
|
32
|
-
return useTranslation;
|
|
33
33
|
};
|
package/dist/index.d.ts
CHANGED
|
@@ -24,39 +24,36 @@ export type TranslationType = DeepResolve<GenerateTranslationType<Translations>>
|
|
|
24
24
|
export type Locales = Overrides['locales'];
|
|
25
25
|
/** All possible translation keys */
|
|
26
26
|
export type PossibleTranslationKeys = DotNestedStringKeys<Translations>;
|
|
27
|
-
/** All existing namespaces */
|
|
28
|
-
export type NameSpaces = DotNestedObjectKeys<Translations>;
|
|
29
27
|
export type ExtraFormatters = Overrides['extraFormatters'];
|
|
30
28
|
/** Base formatters + Custom formatters */
|
|
31
29
|
export type FormatterTypes = keyof ExtraFormatters | keyof typeof formatters;
|
|
32
30
|
export type TranslateFunctionType = ReturnType<typeof getTranslate>;
|
|
33
|
-
/** Get all possible translations for a given namespace */
|
|
34
|
-
export type NamespaceKeys<Namespace extends NameSpaces> = FilterByPrefix<PossibleTranslationKeys, Namespace>;
|
|
35
31
|
type TranslatedMark = {
|
|
36
32
|
translated: true;
|
|
37
33
|
};
|
|
38
34
|
/** Ensure a string is translated */
|
|
39
35
|
export type TranslatedString = string & TranslatedMark;
|
|
40
|
-
export type InterpolationProperties<Key extends PossibleTranslationKeys, Value extends string = GetValue<Key>> =
|
|
36
|
+
export type InterpolationProperties<Key extends PossibleTranslationKeys, Value extends string = GetValue<Key>> = IsPlural<Key> extends true ? {
|
|
41
37
|
count: number;
|
|
42
|
-
} & Omit<ExtractParams<Value>, 'count'> : ExtractParams<Value
|
|
38
|
+
} & Omit<ExtractParams<Value>, 'count'> : ExtractParams<Value>;
|
|
43
39
|
type ExtractParams<Value extends string> = Value extends `${infer _}{${infer _}}${infer _}` ? PlaceholderInfoToObject<ExtractPlaceholders<Value>> : {};
|
|
44
40
|
declare const pluralSufixes: readonly ["_none", "_one", "_other"];
|
|
45
41
|
type PluralSuffix = (typeof pluralSufixes)[number];
|
|
46
|
-
type FilterByPrefix<T, Prefix extends string> = T extends `${Prefix}.${infer Rest}` ? Rest : never;
|
|
47
42
|
type RemovePluralSuffix<T extends string> = T extends `${infer Base}_none` ? Base : T extends `${infer Base}_one` ? Base : T extends `${infer Base}_other` ? Base : T;
|
|
48
43
|
type PluralKeys<Base extends string> = `${Base}${PluralSuffix}`;
|
|
49
44
|
type DotNestedStringKeys<T, Prefix extends string = ''> = T extends object ? {
|
|
50
45
|
[K in keyof T]: K extends string ? T[K] extends Record<string, any> ? DotNestedStringKeys<T[K], `${Prefix}${K}.`> : `${Prefix}${RemovePluralSuffix<K>}` : never;
|
|
51
46
|
}[keyof T] : never;
|
|
52
|
-
type
|
|
53
|
-
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
[K in keyof T as
|
|
57
|
-
}
|
|
58
|
-
|
|
47
|
+
type IsPluralKey<K> = K extends `${string}_none` | `${string}_one` | `${string}_other` ? true : false;
|
|
48
|
+
type GetBasePluralKey<K> = K extends `${infer Base}_none` ? Base : K extends `${infer Base}_one` ? Base : K extends `${infer Base}_other` ? Base : K;
|
|
49
|
+
type PluralKeyVariants<Base extends string> = `${Base}_none` | `${Base}_one` | `${Base}_other`;
|
|
50
|
+
type GenerateBaseTranslationType<T, Depth extends number = 0> = Depth extends 6 ? any : {
|
|
51
|
+
[K in keyof T as IsPluralKey<K> extends true ? never : K]: T[K] extends object ? GenerateBaseTranslationType<T[K], [...Array<Depth>, 0]['length']> : string;
|
|
52
|
+
};
|
|
53
|
+
type GeneratePluralTranslationType<T, Depth extends number = 0> = Depth extends 6 ? {} : {
|
|
54
|
+
[K in keyof T as IsPluralKey<K> extends true ? K | PluralKeyVariants<GetBasePluralKey<K & string>> : never]?: T[K] extends object ? GeneratePluralTranslationType<T[K], [...Array<Depth>, 0]['length']> : string;
|
|
59
55
|
};
|
|
56
|
+
export type GenerateTranslationType<T> = GenerateBaseTranslationType<T> & GeneratePluralTranslationType<T>;
|
|
60
57
|
type ExtractPlaceholders<T extends string, Acc = never> = T extends `${infer Start}{${infer P}}${infer Rest}` ? Start extends `${infer _}{${infer _}` ? Acc : ExtractPlaceholders<Rest, Acc | ParsePlaceholder<P>> : Acc;
|
|
61
58
|
type ParsePlaceholder<P extends string> = P extends `${infer Name}:${infer Type}|${infer _}` ? {
|
|
62
59
|
name: Name;
|
|
@@ -88,62 +85,6 @@ export type DeepResolve<T> = T extends (...args: any[]) => any ? T : T extends o
|
|
|
88
85
|
-readonly [K in keyof T]: DeepResolve<T[K]>;
|
|
89
86
|
} : T;
|
|
90
87
|
export declare const getTranslate: (translations: TranslationType, locale: Locales, extraFormatters: ExtraFormatters, baseTranslate?: (...props: any) => string) => <Key extends PossibleTranslationKeys>(key: Key, ...arguments_: InterpolationProperties<Key> extends Record<string, never> ? [] : Key extends PossibleTranslationKeys ? [params: InterpolationProperties<Key>] : []) => GetValue<Key> & TranslatedMark;
|
|
91
|
-
export declare const createNamespaceTranslate: <NameSpace extends NameSpaces>(namespace: NameSpace, translateFn: TranslateFunctionType) => <Key extends NamespaceKeys<NameSpace>>(key: Key, ...args: InterpolationProperties<`${NameSpace}.${Key}` & PossibleTranslationKeys> extends Record<string, never> ? [] : `${NameSpace}.${Key}` & PossibleTranslationKeys extends PossibleTranslationKeys ? [params: InterpolationProperties<`${NameSpace}.${Key}` & PossibleTranslationKeys>] : []) => (Exclude<InternalGetValue<{
|
|
92
|
-
readonly test: "Hello {who:string|capitalize}!";
|
|
93
|
-
readonly nested: {
|
|
94
|
-
readonly deep: {
|
|
95
|
-
readonly hello: "Hello";
|
|
96
|
-
readonly again: "Nested again {value:number|number}";
|
|
97
|
-
};
|
|
98
|
-
};
|
|
99
|
-
readonly test2_one: "Plural one";
|
|
100
|
-
readonly test2_other: "Plural: {count}";
|
|
101
|
-
readonly customFormatter: "Test formatter {data|customFormatter}";
|
|
102
|
-
}, `${NameSpace}.${Key}` & "test">, undefined> | Exclude<InternalGetValue<{
|
|
103
|
-
readonly test: "Hello {who:string|capitalize}!";
|
|
104
|
-
readonly nested: {
|
|
105
|
-
readonly deep: {
|
|
106
|
-
readonly hello: "Hello";
|
|
107
|
-
readonly again: "Nested again {value:number|number}";
|
|
108
|
-
};
|
|
109
|
-
};
|
|
110
|
-
readonly test2_one: "Plural one";
|
|
111
|
-
readonly test2_other: "Plural: {count}";
|
|
112
|
-
readonly customFormatter: "Test formatter {data|customFormatter}";
|
|
113
|
-
}, `${NameSpace}.${Key}` & "customFormatter">, undefined> | Exclude<InternalGetValue<{
|
|
114
|
-
readonly test: "Hello {who:string|capitalize}!";
|
|
115
|
-
readonly nested: {
|
|
116
|
-
readonly deep: {
|
|
117
|
-
readonly hello: "Hello";
|
|
118
|
-
readonly again: "Nested again {value:number|number}";
|
|
119
|
-
};
|
|
120
|
-
};
|
|
121
|
-
readonly test2_one: "Plural one";
|
|
122
|
-
readonly test2_other: "Plural: {count}";
|
|
123
|
-
readonly customFormatter: "Test formatter {data|customFormatter}";
|
|
124
|
-
}, `${NameSpace}.${Key}` & "nested.deep.hello">, undefined> | Exclude<InternalGetValue<{
|
|
125
|
-
readonly test: "Hello {who:string|capitalize}!";
|
|
126
|
-
readonly nested: {
|
|
127
|
-
readonly deep: {
|
|
128
|
-
readonly hello: "Hello";
|
|
129
|
-
readonly again: "Nested again {value:number|number}";
|
|
130
|
-
};
|
|
131
|
-
};
|
|
132
|
-
readonly test2_one: "Plural one";
|
|
133
|
-
readonly test2_other: "Plural: {count}";
|
|
134
|
-
readonly customFormatter: "Test formatter {data|customFormatter}";
|
|
135
|
-
}, `${NameSpace}.${Key}` & "nested.deep.again">, undefined> | Exclude<InternalGetValue<{
|
|
136
|
-
readonly test: "Hello {who:string|capitalize}!";
|
|
137
|
-
readonly nested: {
|
|
138
|
-
readonly deep: {
|
|
139
|
-
readonly hello: "Hello";
|
|
140
|
-
readonly again: "Nested again {value:number|number}";
|
|
141
|
-
};
|
|
142
|
-
};
|
|
143
|
-
readonly test2_one: "Plural one";
|
|
144
|
-
readonly test2_other: "Plural: {count}";
|
|
145
|
-
readonly customFormatter: "Test formatter {data|customFormatter}";
|
|
146
|
-
}, `${NameSpace}.${Key}` & "test2">, undefined>) & TranslatedMark;
|
|
147
88
|
export { initReact } from './adapters/react.js';
|
|
148
89
|
export { initZustand } from './adapters/zustand.js';
|
|
149
90
|
export { type Formatter, default as defaultFormatters } from './formatters.js';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,UAAU,EAAE,EAAE,KAAK,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAG7D,MAAM,MAAM,SAAS,GAAG,IAAI,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS,GAAG,MAAM,CAAC;AAGpE,MAAM,MAAM,OAAO,GAAG;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,GAAG,EAAE,CAAC;IACb,IAAI,EAAE,IAAI,CAAC;IACX,SAAS,EAAE,SAAS,CAAC;IACrB,GAAG,EAAE,GAAG,CAAC;CACT,CAAC;AAEF,MAAM,WAAW,gBAAgB;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IAC5C,OAAO,EAAE,MAAM,CAAC;IAChB,kBAAkB,EAAE,IAAI,CAAC;CACzB;AAED,MAAM,WAAW,SAAU,SAAQ,gBAAgB;CAAG;AACtD,MAAM,MAAM,YAAY,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC;AAE9C,kEAAkE;AAClE,MAAM,MAAM,eAAe,GAAG,WAAW,CACxC,uBAAuB,CAAC,YAAY,CAAC,CACrC,CAAC;AAEF,MAAM,MAAM,OAAO,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC;AAC3C,oCAAoC;AACpC,MAAM,MAAM,uBAAuB,GAAG,mBAAmB,CAAC,YAAY,CAAC,CAAC;AACxE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -82,12 +82,6 @@ export const getTranslate = (translations, locale, extraFormatters, baseTranslat
|
|
|
82
82
|
}
|
|
83
83
|
return translate;
|
|
84
84
|
};
|
|
85
|
-
export const createNamespaceTranslate = (namespace, translateFn) => {
|
|
86
|
-
return (key, ...args) => {
|
|
87
|
-
const fullKey = `${namespace}.${key}`;
|
|
88
|
-
return translateFn(fullKey, ...args);
|
|
89
|
-
};
|
|
90
|
-
};
|
|
91
85
|
export { initReact } from './adapters/react.js';
|
|
92
86
|
export { initZustand } from './adapters/zustand.js';
|
|
93
87
|
export { default as defaultFormatters } from './formatters.js';
|