@tolgee/core 5.7.0-prerelease.fa761114.0 → 5.7.3
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/tolgee.cjs.js +3 -3
- package/dist/tolgee.cjs.js.map +1 -1
- package/dist/tolgee.cjs.min.js +1 -1
- package/dist/tolgee.cjs.min.js.map +1 -1
- package/dist/tolgee.esm.js +3 -3
- package/dist/tolgee.esm.js.map +1 -1
- package/dist/tolgee.esm.min.js +1 -1
- package/dist/tolgee.esm.min.js.map +1 -1
- package/dist/tolgee.esm.min.mjs +1 -1
- package/dist/tolgee.esm.min.mjs.map +1 -1
- package/dist/tolgee.esm.mjs +3 -3
- package/dist/tolgee.esm.mjs.map +1 -1
- package/dist/tolgee.umd.js +3 -3
- package/dist/tolgee.umd.js.map +1 -1
- package/dist/tolgee.umd.min.js +1 -1
- package/dist/tolgee.umd.min.js.map +1 -1
- package/lib/Controller/Controller.d.ts +4 -56
- package/lib/Controller/Events/Events.d.ts +1 -1
- package/lib/Controller/Plugins/Plugins.d.ts +1 -1
- package/lib/TolgeeCore.d.ts +7 -7
- package/lib/types/general.d.ts +7 -7
- package/package.json +2 -2
- package/src/Controller/Events/Events.ts +2 -2
- package/src/TolgeeCore.ts +13 -3
- package/src/__test/events.test.ts +2 -2
- package/src/types/general.ts +16 -7
|
@@ -14,7 +14,7 @@ export declare const Controller: ({ options }: StateServiceProps) => Readonly<{
|
|
|
14
14
|
loadRecord: (descriptor: CacheDescriptor) => Promise<import("../types").TranslationsFlat>;
|
|
15
15
|
isLoading: (ns?: NsFallback) => boolean;
|
|
16
16
|
isLoaded: (ns?: NsFallback) => boolean;
|
|
17
|
-
t: TFnType<import("../types").DefaultParamType, string>;
|
|
17
|
+
t: TFnType<import("../types").DefaultParamType, string, import("../types").TranslationKey>;
|
|
18
18
|
isDev: () => boolean;
|
|
19
19
|
run: () => Promise<void | undefined>;
|
|
20
20
|
stop: () => void;
|
|
@@ -31,61 +31,9 @@ export declare const Controller: ({ options }: StateServiceProps) => Readonly<{
|
|
|
31
31
|
language: string;
|
|
32
32
|
namespace: string;
|
|
33
33
|
}[];
|
|
34
|
-
addPlugin: (tolgeeInstance:
|
|
35
|
-
on: import("../types").TolgeeOn<keyof import("../types").EventType>;
|
|
36
|
-
onNsUpdate: (handler: import("../types").Listener<undefined>) => import("../types").SubscriptionSelective;
|
|
37
|
-
setEmmiterActive: (active: boolean) => void;
|
|
38
|
-
getLanguage: () => string | undefined;
|
|
39
|
-
getPendingLanguage: () => string | undefined;
|
|
40
|
-
changeLanguage: (language: string) => Promise<void>;
|
|
41
|
-
changeTranslation: (descriptor: CacheDescriptor, key: string, value: string) => {
|
|
42
|
-
revert: () => void;
|
|
43
|
-
};
|
|
44
|
-
addActiveNs: (ns: NsFallback, forget?: boolean) => Promise<void>;
|
|
45
|
-
removeActiveNs: (ns: NsFallback) => void;
|
|
46
|
-
loadRecords: (descriptors: CacheDescriptor[]) => Promise<import("../types").TranslationsFlat[]>;
|
|
47
|
-
loadRecord: (descriptor: CacheDescriptor) => Promise<import("../types").TranslationsFlat>;
|
|
48
|
-
addStaticData: (data: import("./State/initState").TolgeeStaticData | undefined) => void;
|
|
49
|
-
getRecord: (descriptor: CacheDescriptor) => import("../types").TranslationsFlat | undefined;
|
|
50
|
-
getAllRecords: () => {
|
|
51
|
-
data: import("../types").TranslationsFlat;
|
|
52
|
-
language: string;
|
|
53
|
-
namespace: string;
|
|
54
|
-
}[];
|
|
55
|
-
isLoaded: (ns?: NsFallback) => boolean;
|
|
56
|
-
isInitialLoading: () => boolean;
|
|
57
|
-
isLoading: (ns?: NsFallback) => boolean;
|
|
58
|
-
isFetching: (ns?: NsFallback) => boolean;
|
|
59
|
-
isRunning: () => boolean;
|
|
60
|
-
run: () => Promise<void | undefined>;
|
|
61
|
-
stop: () => void;
|
|
62
|
-
t: TFnType<import("../types").DefaultParamType, string>;
|
|
63
|
-
highlight: import("../types").HighlightInterface;
|
|
64
|
-
getInitialOptions: () => {
|
|
65
|
-
apiUrl?: string | undefined;
|
|
66
|
-
apiKey?: string | undefined;
|
|
67
|
-
projectId?: string | number | undefined;
|
|
68
|
-
language?: string | undefined;
|
|
69
|
-
defaultLanguage?: string | undefined;
|
|
70
|
-
availableLanguages?: string[] | undefined;
|
|
71
|
-
fallbackLanguage?: import("../types").FallbackLanguageOption;
|
|
72
|
-
ns?: string[] | undefined;
|
|
73
|
-
fallbackNs?: import("../types").FallbackGeneral;
|
|
74
|
-
defaultNs: string;
|
|
75
|
-
staticData?: import("./State/initState").TolgeeStaticData | undefined;
|
|
76
|
-
observerType: "invisible" | "text";
|
|
77
|
-
observerOptions: import("./State/observerOptions").ObserverOptionsInternal;
|
|
78
|
-
onFormatError: import("../types").OnFormatError;
|
|
79
|
-
};
|
|
80
|
-
isDev: () => boolean;
|
|
81
|
-
wrap: (params: import("../types").WrapperWrapProps) => string | undefined;
|
|
82
|
-
unwrap: (text: string) => import("../types").Unwrapped;
|
|
83
|
-
overrideCredentials(credentials: import("../types").DevCredentials): void;
|
|
84
|
-
addPlugin(plugin: import("../types").TolgeePlugin | undefined): void;
|
|
85
|
-
updateOptions(options?: TolgeeOptions | undefined): void;
|
|
86
|
-
}>, plugin: import("../types").TolgeePlugin) => void;
|
|
34
|
+
addPlugin: (tolgeeInstance: import("../TolgeeCore").TolgeeInstance, plugin: import("../types").TolgeePlugin) => void;
|
|
87
35
|
formatTranslation: ({ formatEnabled, ...props }: {
|
|
88
|
-
key:
|
|
36
|
+
key: import("../types").TranslationKey;
|
|
89
37
|
defaultValue?: string | undefined;
|
|
90
38
|
params?: import("../types").TranslateParams<import("../types").DefaultParamType> | undefined;
|
|
91
39
|
} & import("../types").TranslateOptions & {
|
|
@@ -145,7 +93,7 @@ export declare const Controller: ({ options }: StateServiceProps) => Readonly<{
|
|
|
145
93
|
onRunningChange: import("./Events/EventEmitter").EventEmitterInstance<boolean>;
|
|
146
94
|
onCacheChange: import("./Events/EventEmitter").EventEmitterInstance<import("../types").CacheDescriptorWithKey>;
|
|
147
95
|
onUpdate: import("./Events/EventEmitterSelective").EventEmitterSelectiveInstance;
|
|
148
|
-
|
|
96
|
+
setEmitterActive: (active: boolean) => void;
|
|
149
97
|
on: import("../types").TolgeeOn<keyof import("../types").EventType>;
|
|
150
98
|
}>;
|
|
151
99
|
export declare type ControllerInstance = ReturnType<typeof Controller>;
|
|
@@ -8,7 +8,7 @@ export declare const Events: (getFallbackNs: () => string[], getDefaultNs: () =>
|
|
|
8
8
|
onRunningChange: import("./EventEmitter").EventEmitterInstance<boolean>;
|
|
9
9
|
onCacheChange: import("./EventEmitter").EventEmitterInstance<CacheDescriptorWithKey>;
|
|
10
10
|
onUpdate: import("./EventEmitterSelective").EventEmitterSelectiveInstance;
|
|
11
|
-
|
|
11
|
+
setEmitterActive: (active: boolean) => void;
|
|
12
12
|
on: TolgeeOn<keyof import("../../types").EventType>;
|
|
13
13
|
}>;
|
|
14
14
|
export declare type EventsInstance = ReturnType<typeof Events>;
|
|
@@ -2,7 +2,7 @@ import { BackendDevMiddleware, BackendGetRecord, TranslatePropsInternal, Highlig
|
|
|
2
2
|
export declare const Plugins: (getLanguage: () => string | undefined, getInitialOptions: () => TolgeeOptionsInternal, getAvailableLanguages: () => string[] | undefined, getTranslationNs: (props: KeyAndNamespacesInternal) => string[], getTranslation: (props: KeyAndNamespacesInternal) => string | undefined, changeTranslation: ChangeTranslationInterface) => Readonly<{
|
|
3
3
|
addPlugin: (tolgeeInstance: TolgeeInstance, plugin: TolgeePlugin) => void;
|
|
4
4
|
formatTranslation: ({ formatEnabled, ...props }: {
|
|
5
|
-
key:
|
|
5
|
+
key: import("../../types").TranslationKey;
|
|
6
6
|
defaultValue?: string | undefined;
|
|
7
7
|
params?: import("../../types").TranslateParams<import("../../types").DefaultParamType> | undefined;
|
|
8
8
|
} & import("../../types").TranslateOptions & {
|
package/lib/TolgeeCore.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { TolgeeOptions, TolgeePlugin, DevCredentials } from './types';
|
|
1
|
+
import { TolgeeOptions, TolgeePlugin, DevCredentials, TFnType, DefaultParamType, TranslationKey } from './types';
|
|
2
2
|
declare const createTolgee: (options: TolgeeOptions) => Readonly<{
|
|
3
3
|
/**
|
|
4
4
|
* Listen to tolgee events.
|
|
@@ -21,7 +21,7 @@ declare const createTolgee: (options: TolgeeOptions) => Readonly<{
|
|
|
21
21
|
/**
|
|
22
22
|
* Turn off/on events emitting. Is on by default.
|
|
23
23
|
*/
|
|
24
|
-
|
|
24
|
+
setEmitterActive: (active: boolean) => void;
|
|
25
25
|
/**
|
|
26
26
|
* @return current language if set.
|
|
27
27
|
*/
|
|
@@ -119,7 +119,7 @@ declare const createTolgee: (options: TolgeeOptions) => Readonly<{
|
|
|
119
119
|
* Returns translated and formatted key.
|
|
120
120
|
* If Observer is present and tolgee is running, wraps result to be identifiable in the DOM.
|
|
121
121
|
*/
|
|
122
|
-
t:
|
|
122
|
+
t: TFnType<DefaultParamType, string, TranslationKey>;
|
|
123
123
|
/**
|
|
124
124
|
* Highlight keys that match selection.
|
|
125
125
|
*/
|
|
@@ -132,9 +132,7 @@ declare const createTolgee: (options: TolgeeOptions) => Readonly<{
|
|
|
132
132
|
apiKey?: string | undefined;
|
|
133
133
|
projectId?: string | number | undefined;
|
|
134
134
|
language?: string | undefined;
|
|
135
|
-
defaultLanguage?: string | undefined;
|
|
136
|
-
* Turn off/on events emitting. Is on by default.
|
|
137
|
-
*/
|
|
135
|
+
defaultLanguage?: string | undefined;
|
|
138
136
|
availableLanguages?: string[] | undefined;
|
|
139
137
|
fallbackLanguage?: import("./types").FallbackLanguageOption;
|
|
140
138
|
ns?: string[] | undefined;
|
|
@@ -178,7 +176,9 @@ declare const createTolgee: (options: TolgeeOptions) => Readonly<{
|
|
|
178
176
|
*/
|
|
179
177
|
updateOptions(options?: TolgeeOptions): void;
|
|
180
178
|
}>;
|
|
181
|
-
export declare type TolgeeInstance = ReturnType<typeof createTolgee
|
|
179
|
+
export declare type TolgeeInstance = Omit<ReturnType<typeof createTolgee>, 't'> & {
|
|
180
|
+
t: TFnType<DefaultParamType, string, TranslationKey>;
|
|
181
|
+
};
|
|
182
182
|
export declare type TolgeeChainer = {
|
|
183
183
|
/**
|
|
184
184
|
* Add plugin, plugins are applied when `init` method is called.
|
package/lib/types/general.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
export declare type FallbackGeneral = undefined | false | string | string[];
|
|
2
2
|
export declare type NsType = string;
|
|
3
|
-
export declare type
|
|
3
|
+
export declare type TranslationKey = string & Record<never, never>;
|
|
4
4
|
export declare type NsFallback = undefined | NsType | NsType[];
|
|
5
5
|
export declare type FallbackLanguageObject = Record<string, FallbackGeneral>;
|
|
6
6
|
export declare type FallbackLanguageOption = FallbackGeneral | FallbackLanguageObject;
|
|
@@ -13,8 +13,8 @@ export declare type TranslateOptions = {
|
|
|
13
13
|
noWrap?: boolean;
|
|
14
14
|
orEmpty?: boolean;
|
|
15
15
|
};
|
|
16
|
-
export declare type TranslateProps<T = DefaultParamType> = {
|
|
17
|
-
key:
|
|
16
|
+
export declare type TranslateProps<T = DefaultParamType, K extends string = TranslationKey> = {
|
|
17
|
+
key: K;
|
|
18
18
|
defaultValue?: string;
|
|
19
19
|
params?: TranslateParams<T>;
|
|
20
20
|
} & TranslateOptions;
|
|
@@ -25,10 +25,10 @@ declare type PropType<TObj> = TObj[keyof TObj];
|
|
|
25
25
|
export declare type CombinedOptions<T> = TranslateOptions & {
|
|
26
26
|
[key: string]: T | PropType<TranslateOptions>;
|
|
27
27
|
};
|
|
28
|
-
export declare type TFnType<T = DefaultParamType, R = string> = {
|
|
29
|
-
(key:
|
|
30
|
-
(key:
|
|
31
|
-
(props: TranslateProps<T>): R;
|
|
28
|
+
export declare type TFnType<T = DefaultParamType, R = string, K extends string = TranslationKey> = {
|
|
29
|
+
(key: K, defaultValue?: string, options?: CombinedOptions<T>): R;
|
|
30
|
+
(key: K, options?: CombinedOptions<T>): R;
|
|
31
|
+
(props: TranslateProps<T, K>): R;
|
|
32
32
|
};
|
|
33
33
|
export declare type KeyAndNamespacesInternal = Pick<TranslatePropsInternal, 'key' | 'ns'>;
|
|
34
34
|
export {};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tolgee/core",
|
|
3
|
-
"version": "5.7.
|
|
3
|
+
"version": "5.7.3",
|
|
4
4
|
"description": "Library providing ability to translate messages directly in context of developed application.",
|
|
5
5
|
"main": "./dist/tolgee.cjs.js",
|
|
6
6
|
"module": "./dist/tolgee.esm.js",
|
|
@@ -67,5 +67,5 @@
|
|
|
67
67
|
"access": "public"
|
|
68
68
|
},
|
|
69
69
|
"sideEffects": false,
|
|
70
|
-
"gitHead": "
|
|
70
|
+
"gitHead": "fde08c663fc22333a09c1a6f8e976d16c500e79e"
|
|
71
71
|
}
|
|
@@ -48,7 +48,7 @@ export const Events = (
|
|
|
48
48
|
}
|
|
49
49
|
};
|
|
50
50
|
|
|
51
|
-
function
|
|
51
|
+
function setEmitterActive(active: boolean) {
|
|
52
52
|
emitterActive = active;
|
|
53
53
|
}
|
|
54
54
|
|
|
@@ -61,7 +61,7 @@ export const Events = (
|
|
|
61
61
|
onRunningChange,
|
|
62
62
|
onCacheChange,
|
|
63
63
|
onUpdate,
|
|
64
|
-
|
|
64
|
+
setEmitterActive,
|
|
65
65
|
on,
|
|
66
66
|
});
|
|
67
67
|
};
|
package/src/TolgeeCore.ts
CHANGED
|
@@ -1,6 +1,13 @@
|
|
|
1
1
|
import { Controller } from './Controller/Controller';
|
|
2
2
|
import { combineOptions } from './Controller/State/initState';
|
|
3
|
-
import {
|
|
3
|
+
import {
|
|
4
|
+
TolgeeOptions,
|
|
5
|
+
TolgeePlugin,
|
|
6
|
+
DevCredentials,
|
|
7
|
+
TFnType,
|
|
8
|
+
DefaultParamType,
|
|
9
|
+
TranslationKey,
|
|
10
|
+
} from './types';
|
|
4
11
|
|
|
5
12
|
const createTolgee = (options: TolgeeOptions) => {
|
|
6
13
|
const controller = Controller({
|
|
@@ -39,7 +46,7 @@ const createTolgee = (options: TolgeeOptions) => {
|
|
|
39
46
|
/**
|
|
40
47
|
* Turn off/on events emitting. Is on by default.
|
|
41
48
|
*/
|
|
42
|
-
|
|
49
|
+
setEmitterActive: controller.setEmitterActive,
|
|
43
50
|
|
|
44
51
|
/**
|
|
45
52
|
* @return current language if set.
|
|
@@ -214,7 +221,10 @@ const createTolgee = (options: TolgeeOptions) => {
|
|
|
214
221
|
return tolgee;
|
|
215
222
|
};
|
|
216
223
|
|
|
217
|
-
export type TolgeeInstance = ReturnType<typeof createTolgee
|
|
224
|
+
export type TolgeeInstance = Omit<ReturnType<typeof createTolgee>, 't'> & {
|
|
225
|
+
// enabling generics (when inferred they are lost)
|
|
226
|
+
t: TFnType<DefaultParamType, string, TranslationKey>;
|
|
227
|
+
};
|
|
218
228
|
|
|
219
229
|
export type TolgeeChainer = {
|
|
220
230
|
/**
|
|
@@ -47,11 +47,11 @@ describe('events', () => {
|
|
|
47
47
|
await tolgee.changeLanguage('es');
|
|
48
48
|
expect(eventHandler).toBeCalledTimes(2);
|
|
49
49
|
|
|
50
|
-
tolgee.
|
|
50
|
+
tolgee.setEmitterActive(false);
|
|
51
51
|
await tolgee.changeLanguage('en');
|
|
52
52
|
expect(eventHandler).toBeCalledTimes(2);
|
|
53
53
|
|
|
54
|
-
tolgee.
|
|
54
|
+
tolgee.setEmitterActive(true);
|
|
55
55
|
await tolgee.changeLanguage('es');
|
|
56
56
|
expect(eventHandler).toBeCalledTimes(4);
|
|
57
57
|
});
|
package/src/types/general.ts
CHANGED
|
@@ -2,7 +2,9 @@ export type FallbackGeneral = undefined | false | string | string[];
|
|
|
2
2
|
|
|
3
3
|
export type NsType = string;
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
// This prevents typescript to optimize this to 'string'
|
|
6
|
+
// this type needs to be overritable everywhere
|
|
7
|
+
export type TranslationKey = string & Record<never, never>;
|
|
6
8
|
|
|
7
9
|
export type NsFallback = undefined | NsType | NsType[];
|
|
8
10
|
|
|
@@ -22,8 +24,11 @@ export type TranslateOptions = {
|
|
|
22
24
|
orEmpty?: boolean;
|
|
23
25
|
};
|
|
24
26
|
|
|
25
|
-
export type TranslateProps<
|
|
26
|
-
|
|
27
|
+
export type TranslateProps<
|
|
28
|
+
T = DefaultParamType,
|
|
29
|
+
K extends string = TranslationKey
|
|
30
|
+
> = {
|
|
31
|
+
key: K;
|
|
27
32
|
defaultValue?: string;
|
|
28
33
|
params?: TranslateParams<T>;
|
|
29
34
|
} & TranslateOptions;
|
|
@@ -38,10 +43,14 @@ export type CombinedOptions<T> = TranslateOptions & {
|
|
|
38
43
|
[key: string]: T | PropType<TranslateOptions>;
|
|
39
44
|
};
|
|
40
45
|
|
|
41
|
-
export type TFnType<
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
46
|
+
export type TFnType<
|
|
47
|
+
T = DefaultParamType,
|
|
48
|
+
R = string,
|
|
49
|
+
K extends string = TranslationKey
|
|
50
|
+
> = {
|
|
51
|
+
(key: K, defaultValue?: string, options?: CombinedOptions<T>): R;
|
|
52
|
+
(key: K, options?: CombinedOptions<T>): R;
|
|
53
|
+
(props: TranslateProps<T, K>): R;
|
|
45
54
|
};
|
|
46
55
|
|
|
47
56
|
export type KeyAndNamespacesInternal = Pick<
|