@sheet-i18n/react-client 1.6.0-canary.0 → 1.6.0-canary.2
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/index.d.mts +31 -27
- package/dist/index.d.ts +31 -27
- package/package.json +2 -2
package/dist/index.d.mts
CHANGED
|
@@ -1,7 +1,15 @@
|
|
|
1
1
|
import { I18nStore } from '@sheet-i18n/react-core';
|
|
2
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
3
|
import { ObserverManager } from '@sheet-i18n/shared-utils';
|
|
4
|
+
import * as react from 'react';
|
|
3
5
|
import { MessageDescriptor, IntlShape } from 'react-intl';
|
|
4
|
-
|
|
6
|
+
|
|
7
|
+
type IntlProviderProps<TSupportedLocales extends readonly string[], TLocaleSet extends Partial<Record<TSupportedLocales[number], Record<string, any>>>, TTypeSafe extends boolean = false> = {
|
|
8
|
+
i18nStore: I18nStore<TSupportedLocales, TLocaleSet, TTypeSafe>;
|
|
9
|
+
currentLocale?: TSupportedLocales[number];
|
|
10
|
+
children: React.ReactNode;
|
|
11
|
+
};
|
|
12
|
+
declare function IntlProvider<TSupportedLocales extends readonly string[], TLocaleSet extends Partial<Record<TSupportedLocales[number], Record<string, any>>>, TTypeSafe extends boolean = false>({ i18nStore, currentLocale, children, }: IntlProviderProps<TSupportedLocales, TLocaleSet, TTypeSafe>): react_jsx_runtime.JSX.Element;
|
|
5
13
|
|
|
6
14
|
interface IStorageService<V extends string> {
|
|
7
15
|
getItem(key: string): V;
|
|
@@ -28,6 +36,18 @@ declare class LocaleStorageManager<TSupportedLocales extends readonly string[],
|
|
|
28
36
|
setLocale: (locale: TSupportedLocales[number]) => void;
|
|
29
37
|
}
|
|
30
38
|
|
|
39
|
+
declare function useLocaleStorage<TSupportedLocales extends readonly string[], TLocaleSet extends Partial<Record<TSupportedLocales[number], Record<string, any>>>, TTypeSafe extends boolean = false>(localeStorageManager: LocaleStorageManager<TSupportedLocales, TLocaleSet, TTypeSafe>): {
|
|
40
|
+
locale: TSupportedLocales[number] | undefined;
|
|
41
|
+
};
|
|
42
|
+
|
|
43
|
+
interface StorageBasedIntlProviderProps<TSupportedLocales extends readonly string[], TLocaleSet extends Partial<Record<TSupportedLocales[number], Record<string, any>>>, TTypeSafe extends boolean = false> {
|
|
44
|
+
i18nStore: I18nStore<TSupportedLocales, TLocaleSet, TTypeSafe>;
|
|
45
|
+
storageManager: LocaleStorageManager<TSupportedLocales, TLocaleSet, TTypeSafe>;
|
|
46
|
+
fallbackUI?: React.ReactNode;
|
|
47
|
+
children: React.ReactNode;
|
|
48
|
+
}
|
|
49
|
+
declare function StorageBasedIntlProvider<TSupportedLocales extends readonly string[], TLocaleSet extends Partial<Record<TSupportedLocales[number], Record<string, any>>>, TTypeSafe extends boolean = false>({ i18nStore, storageManager, fallbackUI, children, }: StorageBasedIntlProviderProps<TSupportedLocales, TLocaleSet, TTypeSafe>): string | number | bigint | boolean | Iterable<react.ReactNode> | Promise<string | number | bigint | boolean | react.ReactPortal | react.ReactElement<unknown, string | react.JSXElementConstructor<any>> | Iterable<react.ReactNode> | null | undefined> | react_jsx_runtime.JSX.Element | null;
|
|
50
|
+
|
|
31
51
|
type UseIntlParams<D = MessageDescriptor> = Parameters<IntlShape['$t']> extends [D, ...infer R] ? [...R, Omit<D, 'id'>] : never;
|
|
32
52
|
type ExtendedUseIntlParams<D = MessageDescriptor> = UseIntlParams<D> extends [infer A, infer B, ...infer Rest] ? A extends Record<string, infer V> ? [Record<string, V | React.ReactNode>, B, ...Rest] : [A, B, ...Rest] : UseIntlParams<D>;
|
|
33
53
|
type $TParams = Partial<ExtendedUseIntlParams>;
|
|
@@ -51,55 +71,39 @@ type RuleKey = string;
|
|
|
51
71
|
type RuleFn<TSupportedLocales extends SupportedLocales, TLocaleSet extends LocaleSet, TI18nStore extends I18nStore<TSupportedLocales, TLocaleSet, TTypeSafe>, TTypeSafe extends TypeSafe, TSheetTitle extends SafeSheetTitle<TSupportedLocales, TLocaleSet, TTypeSafe>, TMessageId extends SafeMessageId<TSupportedLocales, TLocaleSet, TSheetTitle, TTypeSafe>, TValues = any> = (values: TValues, currentLocaleSet: ReturnType<TI18nStore['getCurrentLocaleSet']>) => TMessageId;
|
|
52
72
|
type Rules<TSupportedLocales extends SupportedLocales = SupportedLocales, TLocaleSet extends LocaleSet = LocaleSet, TTypeSafe extends TypeSafe = TypeSafe, TI18nStore extends I18nStore<TSupportedLocales, TLocaleSet, TTypeSafe> = I18nStore<TSupportedLocales, TLocaleSet, TTypeSafe>, TSheetTitle extends SafeSheetTitle<TSupportedLocales, TLocaleSet, TTypeSafe> = SafeSheetTitle<TSupportedLocales, TLocaleSet, TTypeSafe>, TMessageId extends SafeMessageId<TSupportedLocales, TLocaleSet, TSheetTitle, TTypeSafe> = SafeMessageId<TSupportedLocales, TLocaleSet, TSheetTitle, TTypeSafe>> = Record<RuleKey, RuleFn<TSupportedLocales, TLocaleSet, TI18nStore, TTypeSafe, TSheetTitle, TMessageId>>;
|
|
53
73
|
|
|
54
|
-
type
|
|
74
|
+
type UseTranslationReturn<TSupportedLocales extends readonly string[], TLocaleSet extends Partial<Partial<Record<TSupportedLocales[number], Record<string, any>>>>, TTypeSafe extends boolean, TSheetTitle extends SafeSheetTitle<TSupportedLocales, TLocaleSet, TTypeSafe>, TRules extends Rules> = {
|
|
55
75
|
t: <TMessageId extends SafeMessageId<TSupportedLocales, TLocaleSet, TSheetTitle, TTypeSafe>, TValues extends $TParams[0], TOpts extends $TParams[1], TDescriptor extends $TParams[2]>(id: TMessageId, values?: TValues, opts?: TOpts, _descriptor?: TDescriptor) => TTypeSafe extends true ? TMessageId : any;
|
|
56
76
|
} & {
|
|
57
77
|
t: {
|
|
58
78
|
dynamic: <TMessageId extends SafeMessageId<TSupportedLocales, TLocaleSet, TSheetTitle, TTypeSafe>, TValues extends $TParams[0], TOpts extends $TParams[1], TDescriptor extends $TParams[2]>(id: string, values?: TValues, opts?: TOpts, _descriptor?: TDescriptor) => TTypeSafe extends true ? string : any;
|
|
59
|
-
|
|
79
|
+
rule: <TRuleKey extends keyof TRules, TMessageId extends SafeMessageId<TSupportedLocales, TLocaleSet, TSheetTitle, TTypeSafe>>(ruleKey: TRuleKey, values?: Parameters<TRules[TRuleKey]>[0]) => TTypeSafe extends true ? TMessageId : any;
|
|
60
80
|
};
|
|
61
81
|
};
|
|
62
82
|
|
|
63
|
-
type
|
|
83
|
+
type GetTranslationReturn<TSupportedLocales extends readonly string[], TLocaleSet extends Partial<Record<TSupportedLocales[number], Record<string, any>>>, TTypeSafe extends boolean, TSheetTitle extends SafeSheetTitle<TSupportedLocales, TLocaleSet, TTypeSafe>> = {
|
|
64
84
|
t: <TMessageId extends SafeMessageId<TSupportedLocales, TLocaleSet, TSheetTitle, TTypeSafe>, TValues extends $TParams[0], TOpts extends $TParams[1], TDescriptor extends $TParams[2]>(id: TMessageId, values?: TValues, opts?: TOpts, _descriptor?: TDescriptor) => TTypeSafe extends true ? TMessageId : any;
|
|
65
85
|
} & {
|
|
66
86
|
t: {
|
|
67
87
|
dynamic: <TMessageId extends SafeMessageId<TSupportedLocales, TLocaleSet, TSheetTitle, TTypeSafe>, TValues extends $TParams[0], TOpts extends $TParams[1], TDescriptor extends $TParams[2]>(id: string, values?: TValues, opts?: TOpts, _descriptor?: TDescriptor) => TTypeSafe extends true ? string : any;
|
|
68
|
-
|
|
88
|
+
promise: <TMessageId extends SafeMessageId<TSupportedLocales, TLocaleSet, TSheetTitle, TTypeSafe>, TValues extends $TParams[0], TOpts extends $TParams[1], TDescriptor extends $TParams[2]>(id: TMessageId, values?: TValues, opts?: TOpts, _descriptor?: TDescriptor) => TTypeSafe extends true ? Promise<TMessageId> : any;
|
|
69
89
|
};
|
|
70
90
|
};
|
|
71
91
|
|
|
72
|
-
type IntlProviderProps<TSupportedLocales extends readonly string[], TLocaleSet extends Partial<Record<TSupportedLocales[number], Record<string, any>>>, TTypeSafe extends boolean = false> = {
|
|
73
|
-
i18nStore: I18nStore<TSupportedLocales, TLocaleSet, TTypeSafe>;
|
|
74
|
-
currentLocale?: TSupportedLocales[number];
|
|
75
|
-
children: React.ReactNode;
|
|
76
|
-
};
|
|
77
|
-
|
|
78
|
-
declare function useLocaleStorage<TSupportedLocales extends readonly string[], TLocaleSet extends Partial<Record<TSupportedLocales[number], Record<string, any>>>, TTypeSafe extends boolean = false>(localeStorageManager: LocaleStorageManager<TSupportedLocales, TLocaleSet, TTypeSafe>): {
|
|
79
|
-
locale: TSupportedLocales[number] | undefined;
|
|
80
|
-
};
|
|
81
|
-
|
|
82
|
-
interface StorageBasedIntlProviderProps<TSupportedLocales extends readonly string[], TLocaleSet extends Partial<Record<TSupportedLocales[number], Record<string, any>>>, TTypeSafe extends boolean = false> {
|
|
83
|
-
i18nStore: I18nStore<TSupportedLocales, TLocaleSet, TTypeSafe>;
|
|
84
|
-
storageManager: LocaleStorageManager<TSupportedLocales, TLocaleSet, TTypeSafe>;
|
|
85
|
-
fallbackUI?: React.ReactNode;
|
|
86
|
-
children: React.ReactNode;
|
|
87
|
-
}
|
|
88
|
-
|
|
89
92
|
interface Plugins<TRules extends Rules> {
|
|
90
93
|
rules?: TRules;
|
|
91
94
|
}
|
|
92
|
-
|
|
93
|
-
IntlProvider: ({ currentLocale, children, }: Omit<IntlProviderProps<TSupportedLocales, TLocaleSet>,
|
|
95
|
+
type I18nContext<TSupportedLocales extends SupportedLocales = SupportedLocales, TLocaleSet extends LocaleSet = LocaleSet, TRules extends Rules = Rules, TTypeSafe extends boolean = false> = {
|
|
96
|
+
IntlProvider: ({ currentLocale, children, }: Omit<IntlProviderProps<TSupportedLocales, TLocaleSet>, 'currentLocale' | 'i18nStore'> & {
|
|
94
97
|
currentLocale?: string;
|
|
95
98
|
children?: React.ReactNode;
|
|
96
|
-
}) =>
|
|
97
|
-
StorageBasedIntlProvider: ({ storageManager, children, }: Omit<StorageBasedIntlProviderProps<TSupportedLocales, TLocaleSet, TTypeSafe>,
|
|
99
|
+
}) => ReturnType<typeof IntlProvider>;
|
|
100
|
+
StorageBasedIntlProvider: ({ storageManager, children, }: Omit<StorageBasedIntlProviderProps<TSupportedLocales, TLocaleSet, TTypeSafe>, 'i18nStore'>) => ReturnType<typeof StorageBasedIntlProvider>;
|
|
98
101
|
useTranslation: <TSheetTitle extends SafeSheetTitle<TSupportedLocales, TLocaleSet, TTypeSafe>>(sheetTitle: TSheetTitle) => UseTranslationReturn<TSupportedLocales, TLocaleSet, TTypeSafe, TSheetTitle, TRules>;
|
|
99
102
|
getTranslation: <TSheetTitle extends SafeSheetTitle<TSupportedLocales, TLocaleSet, TTypeSafe>>(sheetTitle: TSheetTitle) => GetTranslationReturn<TSupportedLocales, TLocaleSet, TTypeSafe, TSheetTitle>;
|
|
100
103
|
getLocaleStorageManager: (storageService?: IStorageService<string>) => LocaleStorageManager<TSupportedLocales, TLocaleSet, TTypeSafe>;
|
|
101
104
|
useLocaleStorage: typeof useLocaleStorage;
|
|
102
105
|
};
|
|
106
|
+
declare function createI18nContext<TSupportedLocales extends readonly string[], TLocaleSet extends Partial<Record<TSupportedLocales[number], Record<string, any>>>, TRules extends Rules, TTypeSafe extends boolean = false>(i18nStore: I18nStore<TSupportedLocales, TLocaleSet, TTypeSafe>, plugins?: Plugins<TRules>): I18nContext<TSupportedLocales, TLocaleSet, TRules, TTypeSafe>;
|
|
103
107
|
|
|
104
108
|
declare class RuleService<TSupportedLocales extends SupportedLocales, TLocaleSet extends LocaleSet, TTypeSafe extends TypeSafe, TSheetTitle extends SafeSheetTitle<TSupportedLocales, TLocaleSet, TTypeSafe>, TMessageId extends SafeMessageId<TSupportedLocales, TLocaleSet, TSheetTitle, TTypeSafe>> {
|
|
105
109
|
private readonly i18nStore;
|
|
@@ -108,4 +112,4 @@ declare class RuleService<TSupportedLocales extends SupportedLocales, TLocaleSet
|
|
|
108
112
|
}
|
|
109
113
|
declare const ruleFactory: <TSupportedLocales extends SupportedLocales, TLocaleSet extends LocaleSet, TTypeSafe extends TypeSafe>(i18nStore: I18nStore<TSupportedLocales, TLocaleSet, TTypeSafe>) => RuleService<TSupportedLocales, TLocaleSet, TTypeSafe, SafeSheetTitle<TSupportedLocales, TLocaleSet, TTypeSafe>, SafeMessageId<TSupportedLocales, TLocaleSet, SafeSheetTitle<TSupportedLocales, TLocaleSet, TTypeSafe>, TTypeSafe>>;
|
|
110
114
|
|
|
111
|
-
export { type IStorageService, createI18nContext, ruleFactory };
|
|
115
|
+
export { type I18nContext, type IStorageService, createI18nContext, ruleFactory };
|
package/dist/index.d.ts
CHANGED
|
@@ -1,7 +1,15 @@
|
|
|
1
1
|
import { I18nStore } from '@sheet-i18n/react-core';
|
|
2
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
3
|
import { ObserverManager } from '@sheet-i18n/shared-utils';
|
|
4
|
+
import * as react from 'react';
|
|
3
5
|
import { MessageDescriptor, IntlShape } from 'react-intl';
|
|
4
|
-
|
|
6
|
+
|
|
7
|
+
type IntlProviderProps<TSupportedLocales extends readonly string[], TLocaleSet extends Partial<Record<TSupportedLocales[number], Record<string, any>>>, TTypeSafe extends boolean = false> = {
|
|
8
|
+
i18nStore: I18nStore<TSupportedLocales, TLocaleSet, TTypeSafe>;
|
|
9
|
+
currentLocale?: TSupportedLocales[number];
|
|
10
|
+
children: React.ReactNode;
|
|
11
|
+
};
|
|
12
|
+
declare function IntlProvider<TSupportedLocales extends readonly string[], TLocaleSet extends Partial<Record<TSupportedLocales[number], Record<string, any>>>, TTypeSafe extends boolean = false>({ i18nStore, currentLocale, children, }: IntlProviderProps<TSupportedLocales, TLocaleSet, TTypeSafe>): react_jsx_runtime.JSX.Element;
|
|
5
13
|
|
|
6
14
|
interface IStorageService<V extends string> {
|
|
7
15
|
getItem(key: string): V;
|
|
@@ -28,6 +36,18 @@ declare class LocaleStorageManager<TSupportedLocales extends readonly string[],
|
|
|
28
36
|
setLocale: (locale: TSupportedLocales[number]) => void;
|
|
29
37
|
}
|
|
30
38
|
|
|
39
|
+
declare function useLocaleStorage<TSupportedLocales extends readonly string[], TLocaleSet extends Partial<Record<TSupportedLocales[number], Record<string, any>>>, TTypeSafe extends boolean = false>(localeStorageManager: LocaleStorageManager<TSupportedLocales, TLocaleSet, TTypeSafe>): {
|
|
40
|
+
locale: TSupportedLocales[number] | undefined;
|
|
41
|
+
};
|
|
42
|
+
|
|
43
|
+
interface StorageBasedIntlProviderProps<TSupportedLocales extends readonly string[], TLocaleSet extends Partial<Record<TSupportedLocales[number], Record<string, any>>>, TTypeSafe extends boolean = false> {
|
|
44
|
+
i18nStore: I18nStore<TSupportedLocales, TLocaleSet, TTypeSafe>;
|
|
45
|
+
storageManager: LocaleStorageManager<TSupportedLocales, TLocaleSet, TTypeSafe>;
|
|
46
|
+
fallbackUI?: React.ReactNode;
|
|
47
|
+
children: React.ReactNode;
|
|
48
|
+
}
|
|
49
|
+
declare function StorageBasedIntlProvider<TSupportedLocales extends readonly string[], TLocaleSet extends Partial<Record<TSupportedLocales[number], Record<string, any>>>, TTypeSafe extends boolean = false>({ i18nStore, storageManager, fallbackUI, children, }: StorageBasedIntlProviderProps<TSupportedLocales, TLocaleSet, TTypeSafe>): string | number | bigint | boolean | Iterable<react.ReactNode> | Promise<string | number | bigint | boolean | react.ReactPortal | react.ReactElement<unknown, string | react.JSXElementConstructor<any>> | Iterable<react.ReactNode> | null | undefined> | react_jsx_runtime.JSX.Element | null;
|
|
50
|
+
|
|
31
51
|
type UseIntlParams<D = MessageDescriptor> = Parameters<IntlShape['$t']> extends [D, ...infer R] ? [...R, Omit<D, 'id'>] : never;
|
|
32
52
|
type ExtendedUseIntlParams<D = MessageDescriptor> = UseIntlParams<D> extends [infer A, infer B, ...infer Rest] ? A extends Record<string, infer V> ? [Record<string, V | React.ReactNode>, B, ...Rest] : [A, B, ...Rest] : UseIntlParams<D>;
|
|
33
53
|
type $TParams = Partial<ExtendedUseIntlParams>;
|
|
@@ -51,55 +71,39 @@ type RuleKey = string;
|
|
|
51
71
|
type RuleFn<TSupportedLocales extends SupportedLocales, TLocaleSet extends LocaleSet, TI18nStore extends I18nStore<TSupportedLocales, TLocaleSet, TTypeSafe>, TTypeSafe extends TypeSafe, TSheetTitle extends SafeSheetTitle<TSupportedLocales, TLocaleSet, TTypeSafe>, TMessageId extends SafeMessageId<TSupportedLocales, TLocaleSet, TSheetTitle, TTypeSafe>, TValues = any> = (values: TValues, currentLocaleSet: ReturnType<TI18nStore['getCurrentLocaleSet']>) => TMessageId;
|
|
52
72
|
type Rules<TSupportedLocales extends SupportedLocales = SupportedLocales, TLocaleSet extends LocaleSet = LocaleSet, TTypeSafe extends TypeSafe = TypeSafe, TI18nStore extends I18nStore<TSupportedLocales, TLocaleSet, TTypeSafe> = I18nStore<TSupportedLocales, TLocaleSet, TTypeSafe>, TSheetTitle extends SafeSheetTitle<TSupportedLocales, TLocaleSet, TTypeSafe> = SafeSheetTitle<TSupportedLocales, TLocaleSet, TTypeSafe>, TMessageId extends SafeMessageId<TSupportedLocales, TLocaleSet, TSheetTitle, TTypeSafe> = SafeMessageId<TSupportedLocales, TLocaleSet, TSheetTitle, TTypeSafe>> = Record<RuleKey, RuleFn<TSupportedLocales, TLocaleSet, TI18nStore, TTypeSafe, TSheetTitle, TMessageId>>;
|
|
53
73
|
|
|
54
|
-
type
|
|
74
|
+
type UseTranslationReturn<TSupportedLocales extends readonly string[], TLocaleSet extends Partial<Partial<Record<TSupportedLocales[number], Record<string, any>>>>, TTypeSafe extends boolean, TSheetTitle extends SafeSheetTitle<TSupportedLocales, TLocaleSet, TTypeSafe>, TRules extends Rules> = {
|
|
55
75
|
t: <TMessageId extends SafeMessageId<TSupportedLocales, TLocaleSet, TSheetTitle, TTypeSafe>, TValues extends $TParams[0], TOpts extends $TParams[1], TDescriptor extends $TParams[2]>(id: TMessageId, values?: TValues, opts?: TOpts, _descriptor?: TDescriptor) => TTypeSafe extends true ? TMessageId : any;
|
|
56
76
|
} & {
|
|
57
77
|
t: {
|
|
58
78
|
dynamic: <TMessageId extends SafeMessageId<TSupportedLocales, TLocaleSet, TSheetTitle, TTypeSafe>, TValues extends $TParams[0], TOpts extends $TParams[1], TDescriptor extends $TParams[2]>(id: string, values?: TValues, opts?: TOpts, _descriptor?: TDescriptor) => TTypeSafe extends true ? string : any;
|
|
59
|
-
|
|
79
|
+
rule: <TRuleKey extends keyof TRules, TMessageId extends SafeMessageId<TSupportedLocales, TLocaleSet, TSheetTitle, TTypeSafe>>(ruleKey: TRuleKey, values?: Parameters<TRules[TRuleKey]>[0]) => TTypeSafe extends true ? TMessageId : any;
|
|
60
80
|
};
|
|
61
81
|
};
|
|
62
82
|
|
|
63
|
-
type
|
|
83
|
+
type GetTranslationReturn<TSupportedLocales extends readonly string[], TLocaleSet extends Partial<Record<TSupportedLocales[number], Record<string, any>>>, TTypeSafe extends boolean, TSheetTitle extends SafeSheetTitle<TSupportedLocales, TLocaleSet, TTypeSafe>> = {
|
|
64
84
|
t: <TMessageId extends SafeMessageId<TSupportedLocales, TLocaleSet, TSheetTitle, TTypeSafe>, TValues extends $TParams[0], TOpts extends $TParams[1], TDescriptor extends $TParams[2]>(id: TMessageId, values?: TValues, opts?: TOpts, _descriptor?: TDescriptor) => TTypeSafe extends true ? TMessageId : any;
|
|
65
85
|
} & {
|
|
66
86
|
t: {
|
|
67
87
|
dynamic: <TMessageId extends SafeMessageId<TSupportedLocales, TLocaleSet, TSheetTitle, TTypeSafe>, TValues extends $TParams[0], TOpts extends $TParams[1], TDescriptor extends $TParams[2]>(id: string, values?: TValues, opts?: TOpts, _descriptor?: TDescriptor) => TTypeSafe extends true ? string : any;
|
|
68
|
-
|
|
88
|
+
promise: <TMessageId extends SafeMessageId<TSupportedLocales, TLocaleSet, TSheetTitle, TTypeSafe>, TValues extends $TParams[0], TOpts extends $TParams[1], TDescriptor extends $TParams[2]>(id: TMessageId, values?: TValues, opts?: TOpts, _descriptor?: TDescriptor) => TTypeSafe extends true ? Promise<TMessageId> : any;
|
|
69
89
|
};
|
|
70
90
|
};
|
|
71
91
|
|
|
72
|
-
type IntlProviderProps<TSupportedLocales extends readonly string[], TLocaleSet extends Partial<Record<TSupportedLocales[number], Record<string, any>>>, TTypeSafe extends boolean = false> = {
|
|
73
|
-
i18nStore: I18nStore<TSupportedLocales, TLocaleSet, TTypeSafe>;
|
|
74
|
-
currentLocale?: TSupportedLocales[number];
|
|
75
|
-
children: React.ReactNode;
|
|
76
|
-
};
|
|
77
|
-
|
|
78
|
-
declare function useLocaleStorage<TSupportedLocales extends readonly string[], TLocaleSet extends Partial<Record<TSupportedLocales[number], Record<string, any>>>, TTypeSafe extends boolean = false>(localeStorageManager: LocaleStorageManager<TSupportedLocales, TLocaleSet, TTypeSafe>): {
|
|
79
|
-
locale: TSupportedLocales[number] | undefined;
|
|
80
|
-
};
|
|
81
|
-
|
|
82
|
-
interface StorageBasedIntlProviderProps<TSupportedLocales extends readonly string[], TLocaleSet extends Partial<Record<TSupportedLocales[number], Record<string, any>>>, TTypeSafe extends boolean = false> {
|
|
83
|
-
i18nStore: I18nStore<TSupportedLocales, TLocaleSet, TTypeSafe>;
|
|
84
|
-
storageManager: LocaleStorageManager<TSupportedLocales, TLocaleSet, TTypeSafe>;
|
|
85
|
-
fallbackUI?: React.ReactNode;
|
|
86
|
-
children: React.ReactNode;
|
|
87
|
-
}
|
|
88
|
-
|
|
89
92
|
interface Plugins<TRules extends Rules> {
|
|
90
93
|
rules?: TRules;
|
|
91
94
|
}
|
|
92
|
-
|
|
93
|
-
IntlProvider: ({ currentLocale, children, }: Omit<IntlProviderProps<TSupportedLocales, TLocaleSet>,
|
|
95
|
+
type I18nContext<TSupportedLocales extends SupportedLocales = SupportedLocales, TLocaleSet extends LocaleSet = LocaleSet, TRules extends Rules = Rules, TTypeSafe extends boolean = false> = {
|
|
96
|
+
IntlProvider: ({ currentLocale, children, }: Omit<IntlProviderProps<TSupportedLocales, TLocaleSet>, 'currentLocale' | 'i18nStore'> & {
|
|
94
97
|
currentLocale?: string;
|
|
95
98
|
children?: React.ReactNode;
|
|
96
|
-
}) =>
|
|
97
|
-
StorageBasedIntlProvider: ({ storageManager, children, }: Omit<StorageBasedIntlProviderProps<TSupportedLocales, TLocaleSet, TTypeSafe>,
|
|
99
|
+
}) => ReturnType<typeof IntlProvider>;
|
|
100
|
+
StorageBasedIntlProvider: ({ storageManager, children, }: Omit<StorageBasedIntlProviderProps<TSupportedLocales, TLocaleSet, TTypeSafe>, 'i18nStore'>) => ReturnType<typeof StorageBasedIntlProvider>;
|
|
98
101
|
useTranslation: <TSheetTitle extends SafeSheetTitle<TSupportedLocales, TLocaleSet, TTypeSafe>>(sheetTitle: TSheetTitle) => UseTranslationReturn<TSupportedLocales, TLocaleSet, TTypeSafe, TSheetTitle, TRules>;
|
|
99
102
|
getTranslation: <TSheetTitle extends SafeSheetTitle<TSupportedLocales, TLocaleSet, TTypeSafe>>(sheetTitle: TSheetTitle) => GetTranslationReturn<TSupportedLocales, TLocaleSet, TTypeSafe, TSheetTitle>;
|
|
100
103
|
getLocaleStorageManager: (storageService?: IStorageService<string>) => LocaleStorageManager<TSupportedLocales, TLocaleSet, TTypeSafe>;
|
|
101
104
|
useLocaleStorage: typeof useLocaleStorage;
|
|
102
105
|
};
|
|
106
|
+
declare function createI18nContext<TSupportedLocales extends readonly string[], TLocaleSet extends Partial<Record<TSupportedLocales[number], Record<string, any>>>, TRules extends Rules, TTypeSafe extends boolean = false>(i18nStore: I18nStore<TSupportedLocales, TLocaleSet, TTypeSafe>, plugins?: Plugins<TRules>): I18nContext<TSupportedLocales, TLocaleSet, TRules, TTypeSafe>;
|
|
103
107
|
|
|
104
108
|
declare class RuleService<TSupportedLocales extends SupportedLocales, TLocaleSet extends LocaleSet, TTypeSafe extends TypeSafe, TSheetTitle extends SafeSheetTitle<TSupportedLocales, TLocaleSet, TTypeSafe>, TMessageId extends SafeMessageId<TSupportedLocales, TLocaleSet, TSheetTitle, TTypeSafe>> {
|
|
105
109
|
private readonly i18nStore;
|
|
@@ -108,4 +112,4 @@ declare class RuleService<TSupportedLocales extends SupportedLocales, TLocaleSet
|
|
|
108
112
|
}
|
|
109
113
|
declare const ruleFactory: <TSupportedLocales extends SupportedLocales, TLocaleSet extends LocaleSet, TTypeSafe extends TypeSafe>(i18nStore: I18nStore<TSupportedLocales, TLocaleSet, TTypeSafe>) => RuleService<TSupportedLocales, TLocaleSet, TTypeSafe, SafeSheetTitle<TSupportedLocales, TLocaleSet, TTypeSafe>, SafeMessageId<TSupportedLocales, TLocaleSet, SafeSheetTitle<TSupportedLocales, TLocaleSet, TTypeSafe>, TTypeSafe>>;
|
|
110
114
|
|
|
111
|
-
export { type IStorageService, createI18nContext, ruleFactory };
|
|
115
|
+
export { type I18nContext, type IStorageService, createI18nContext, ruleFactory };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sheet-i18n/react-client",
|
|
3
|
-
"version": "1.6.0-canary.
|
|
3
|
+
"version": "1.6.0-canary.2",
|
|
4
4
|
"description": "a client package for react modules used by sheet-i18n",
|
|
5
5
|
"main": "./dist/index.js",
|
|
6
6
|
"module": "./dist/index.mjs",
|
|
@@ -27,7 +27,7 @@
|
|
|
27
27
|
"dependencies": {
|
|
28
28
|
"@sheet-i18n/shared-utils": "1.8.2",
|
|
29
29
|
"@sheet-i18n/errors": "1.8.1",
|
|
30
|
-
"@sheet-i18n/react-core": "1.6.0-canary.
|
|
30
|
+
"@sheet-i18n/react-core": "1.6.0-canary.2"
|
|
31
31
|
},
|
|
32
32
|
"devDependencies": {
|
|
33
33
|
"@types/react": "^19.0.2",
|