gt-react 3.0.6 → 3.0.8
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/config/I18NConfiguration.d.ts +20 -8
- package/dist/config/I18NConfiguration.d.ts.map +1 -1
- package/dist/config/I18NConfiguration.js +21 -11
- package/dist/config/I18NConfiguration.js.map +1 -1
- package/dist/index.d.ts +5 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +12 -8
- package/dist/index.js.map +1 -1
- package/dist/intl/createIntlFunction.d.ts.map +1 -1
- package/dist/intl/createIntlFunction.js +8 -2
- package/dist/intl/createIntlFunction.js.map +1 -1
- package/dist/server/ServerI18N.d.ts.map +1 -1
- package/dist/server/ServerI18N.js +16 -6
- package/dist/server/ServerI18N.js.map +1 -1
- package/dist/server/resolvers/I18NResolver.d.ts +8 -0
- package/dist/server/resolvers/I18NResolver.d.ts.map +1 -1
- package/dist/server/resolvers/I18NResolver.js +18 -17
- package/dist/server/resolvers/I18NResolver.js.map +1 -1
- package/dist/types/CreateGTProps.d.ts +3 -1
- package/dist/types/CreateGTProps.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -5,29 +5,32 @@ type I18NConfigurationParams = {
|
|
|
5
5
|
cacheURL: string;
|
|
6
6
|
baseURL: string;
|
|
7
7
|
remoteSource: boolean;
|
|
8
|
+
automaticTranslation: boolean;
|
|
8
9
|
getLocale: () => string;
|
|
9
10
|
defaultLocale: string;
|
|
10
11
|
approvedLocales?: string[];
|
|
11
12
|
renderMethod: string;
|
|
13
|
+
renderTimeout: number | null;
|
|
12
14
|
dictionary: Record<string, any>;
|
|
13
15
|
dictionaryName: string;
|
|
14
|
-
translations
|
|
16
|
+
translations?: Record<string, () => Promise<Record<string, any>>>;
|
|
15
17
|
maxConcurrentRequests: number;
|
|
16
18
|
batchInterval: number;
|
|
17
19
|
getMetadata: () => Record<string, any>;
|
|
18
20
|
[key: string]: any;
|
|
19
21
|
};
|
|
20
22
|
export default class I18NConfiguration {
|
|
21
|
-
apiKey: string;
|
|
22
23
|
projectID: string;
|
|
23
24
|
remoteSource: boolean;
|
|
25
|
+
automaticTranslation: boolean;
|
|
24
26
|
getLocale: () => string;
|
|
25
27
|
defaultLocale: string;
|
|
26
28
|
approvedLocales: string[] | undefined;
|
|
27
29
|
renderMethod: string;
|
|
30
|
+
renderTimeout: number | null;
|
|
28
31
|
dictionaryName: string;
|
|
29
32
|
dictionary: Record<string, any>;
|
|
30
|
-
translations
|
|
33
|
+
translations?: Record<string, () => Promise<Record<string, any>>>;
|
|
31
34
|
private _localDictionaryManager;
|
|
32
35
|
private _remoteDictionaryManager;
|
|
33
36
|
gt: GT;
|
|
@@ -38,7 +41,7 @@ export default class I18NConfiguration {
|
|
|
38
41
|
private _queue;
|
|
39
42
|
private _activeRequests;
|
|
40
43
|
private _translationCache;
|
|
41
|
-
constructor({ apiKey, projectID, baseURL, cacheURL, remoteSource, getLocale, defaultLocale, approvedLocales, renderMethod, dictionary, dictionaryName, translations, maxConcurrentRequests, batchInterval, getMetadata, ...metadata }: I18NConfigurationParams);
|
|
44
|
+
constructor({ apiKey, projectID, baseURL, cacheURL, remoteSource, automaticTranslation, getLocale, defaultLocale, approvedLocales, renderMethod, renderTimeout, dictionary, dictionaryName, translations, maxConcurrentRequests, batchInterval, getMetadata, ...metadata }: I18NConfigurationParams);
|
|
42
45
|
/**
|
|
43
46
|
* Gets the application's default locale
|
|
44
47
|
* @returns {string} A BCP-47 language tag
|
|
@@ -59,12 +62,21 @@ export default class I18NConfiguration {
|
|
|
59
62
|
* @returns An entry from the dictionary determined by id
|
|
60
63
|
*/
|
|
61
64
|
getDictionaryEntry(id: string): any;
|
|
62
|
-
hasRemoteSource(): boolean;
|
|
63
65
|
/**
|
|
64
|
-
* Get the
|
|
65
|
-
* @returns
|
|
66
|
+
* Get an entry from the dictionary
|
|
67
|
+
* @returns An entry from the dictionary determined by id
|
|
68
|
+
*/
|
|
69
|
+
automaticTranslationEnabled(): boolean;
|
|
70
|
+
/**
|
|
71
|
+
* Get the rendering instructions
|
|
72
|
+
* @returns An object containing the current method and timeout.
|
|
73
|
+
* As of 7/26/24: method is "replace", "hang", "subtle".
|
|
74
|
+
* Timeout is a number or null, representing no assigned timeout.
|
|
66
75
|
*/
|
|
67
|
-
|
|
76
|
+
getRenderSettings(): {
|
|
77
|
+
method: string;
|
|
78
|
+
timeout: number | null;
|
|
79
|
+
};
|
|
68
80
|
/**
|
|
69
81
|
* Check if translation is required based on the user's locale
|
|
70
82
|
* @param locale - The user's locale
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"I18NConfiguration.d.ts","sourceRoot":"","sources":["../../src/config/I18NConfiguration.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,MAAM,oBAAoB,CAAC;AAMxD,KAAK,uBAAuB,GAAG;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,OAAO,CAAC;IACtB,SAAS,EAAE,MAAM,MAAM,CAAC;IACxB,aAAa,EAAE,MAAM,CAAC;IACtB,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAChC,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"I18NConfiguration.d.ts","sourceRoot":"","sources":["../../src/config/I18NConfiguration.ts"],"names":[],"mappings":"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"}
|
|
@@ -54,27 +54,28 @@ class I18NConfiguration {
|
|
|
54
54
|
constructor(_a) {
|
|
55
55
|
var {
|
|
56
56
|
// Cloud integration
|
|
57
|
-
apiKey, projectID, baseURL, cacheURL, remoteSource,
|
|
57
|
+
apiKey, projectID, baseURL, cacheURL, remoteSource, automaticTranslation,
|
|
58
58
|
// Locale info
|
|
59
59
|
getLocale, defaultLocale, approvedLocales,
|
|
60
60
|
// Render method
|
|
61
|
-
renderMethod,
|
|
61
|
+
renderMethod, renderTimeout,
|
|
62
62
|
// Dictionaries
|
|
63
63
|
dictionary, dictionaryName, translations,
|
|
64
64
|
// Batching config
|
|
65
65
|
maxConcurrentRequests, batchInterval,
|
|
66
66
|
// Other metadata
|
|
67
|
-
getMetadata } = _a, metadata = __rest(_a, ["apiKey", "projectID", "baseURL", "cacheURL", "remoteSource", "getLocale", "defaultLocale", "approvedLocales", "renderMethod", "dictionary", "dictionaryName", "translations", "maxConcurrentRequests", "batchInterval", "getMetadata"]);
|
|
67
|
+
getMetadata } = _a, metadata = __rest(_a, ["apiKey", "projectID", "baseURL", "cacheURL", "remoteSource", "automaticTranslation", "getLocale", "defaultLocale", "approvedLocales", "renderMethod", "renderTimeout", "dictionary", "dictionaryName", "translations", "maxConcurrentRequests", "batchInterval", "getMetadata"]);
|
|
68
68
|
// Cloud integration
|
|
69
|
-
this.apiKey = apiKey;
|
|
70
69
|
this.projectID = projectID;
|
|
71
70
|
this.remoteSource = remoteSource;
|
|
71
|
+
this.automaticTranslation = automaticTranslation;
|
|
72
72
|
// Locales
|
|
73
73
|
this.getLocale = getLocale;
|
|
74
74
|
this.defaultLocale = defaultLocale;
|
|
75
75
|
this.approvedLocales = approvedLocales;
|
|
76
76
|
// Render method
|
|
77
77
|
this.renderMethod = renderMethod;
|
|
78
|
+
this.renderTimeout = renderTimeout;
|
|
78
79
|
// Dictionaries
|
|
79
80
|
this.dictionary = dictionary;
|
|
80
81
|
this.dictionaryName = dictionaryName;
|
|
@@ -132,15 +133,24 @@ class I18NConfiguration {
|
|
|
132
133
|
getDictionaryEntry(id) {
|
|
133
134
|
return (0, getDictionaryEntry_1.default)(id, this.dictionary);
|
|
134
135
|
}
|
|
135
|
-
|
|
136
|
-
|
|
136
|
+
/**
|
|
137
|
+
* Get an entry from the dictionary
|
|
138
|
+
* @returns An entry from the dictionary determined by id
|
|
139
|
+
*/
|
|
140
|
+
automaticTranslationEnabled() {
|
|
141
|
+
return this.automaticTranslation;
|
|
137
142
|
}
|
|
138
143
|
/**
|
|
139
|
-
* Get the
|
|
140
|
-
* @returns
|
|
144
|
+
* Get the rendering instructions
|
|
145
|
+
* @returns An object containing the current method and timeout.
|
|
146
|
+
* As of 7/26/24: method is "replace", "hang", "subtle".
|
|
147
|
+
* Timeout is a number or null, representing no assigned timeout.
|
|
141
148
|
*/
|
|
142
|
-
|
|
143
|
-
return
|
|
149
|
+
getRenderSettings() {
|
|
150
|
+
return {
|
|
151
|
+
method: this.renderMethod,
|
|
152
|
+
timeout: this.renderTimeout
|
|
153
|
+
};
|
|
144
154
|
}
|
|
145
155
|
/**
|
|
146
156
|
* Check if translation is required based on the user's locale
|
|
@@ -148,7 +158,7 @@ class I18NConfiguration {
|
|
|
148
158
|
* @returns True if translation is required, otherwise false
|
|
149
159
|
*/
|
|
150
160
|
translationRequired(locale) {
|
|
151
|
-
if (!
|
|
161
|
+
if (!locale)
|
|
152
162
|
return false;
|
|
153
163
|
if (this.approvedLocales && !this.approvedLocales.some(approvedLocale => (0, generaltranslation_1.isSameLanguage)(locale, approvedLocale)))
|
|
154
164
|
return false;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"I18NConfiguration.js","sourceRoot":"","sources":["../../src/config/I18NConfiguration.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,yEAAwD;AACxD,wFAAgE;AAChE,0FAAkE;AAClE,sFAA8D;
|
|
1
|
+
{"version":3,"file":"I18NConfiguration.js","sourceRoot":"","sources":["../../src/config/I18NConfiguration.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -10,11 +10,13 @@ import Variables from './types/VariableInterface';
|
|
|
10
10
|
* @param {string} [params.projectID] - Project ID for cloud integration. Default is fetched from environment variable `GT_PROJECT_ID`.
|
|
11
11
|
* @param {string} [params.cacheURL] - URL for caching. Default is "https://cache.gtx.dev".
|
|
12
12
|
* @param {string} [params.baseURL] - Base URL for API requests. Default is "https://prod.gtx.dev".
|
|
13
|
-
* @param {Object} [params.remoteSource] - Boolean which determines whether library
|
|
13
|
+
* @param {Object} [params.remoteSource] - Boolean which determines whether library fetches a dictionary from a remote cache.
|
|
14
|
+
* @param {Object} [params.automaticTranslation] - Boolean which determines whether library translates using cloud services.
|
|
14
15
|
* @param {string[]} [params.approvedLocales] - List of approved locales. Default is an empty array.
|
|
15
16
|
* @param {string} [params.defaultLocale] - Default locale for the translation. Default is the first locale in `approvedLocales` or 'en'.
|
|
16
17
|
* @param {Function} [params.getLocale] - Function to get the current locale. Default returns the `defaultLocale`.
|
|
17
18
|
* @param {string} [params.renderMethod] - How translations are rendered for the first time. options are "replace", "hang", "subtle". Default is "replace".
|
|
19
|
+
* @param {string} [params.renderTimeout] - Timeout before rendering a new translation is called off.
|
|
18
20
|
* @param {string} [params.dictionaryName] - Name of the dictionary to use. Default is "default".
|
|
19
21
|
* @param {Object} [params.dictionary] - Dictionary object containing default language content.
|
|
20
22
|
* @param {Object} [params.translations] - An object which contains strings which correspond to locales and functions which define translation dictionaries associated with those locales.
|
|
@@ -23,8 +25,8 @@ import Variables from './types/VariableInterface';
|
|
|
23
25
|
* @param {Object} [...metadata] - Any additional metadata. Used for experimental variables.
|
|
24
26
|
* @returns {GeneralTranslation} An object containing internationalization and translation functions.
|
|
25
27
|
*/
|
|
26
|
-
export declare function createGT({ apiKey, projectID, cacheURL, baseURL, remoteSource, approvedLocales, defaultLocale, getLocale, renderMethod, // "hang", "subtle"
|
|
27
|
-
dictionaryName, dictionary, translations, maxConcurrentRequests, batchInterval, getMetadata, ...metadata }?: CreateI18NConfigProps): GeneralTranslation;
|
|
28
|
+
export declare function createGT({ apiKey, projectID, cacheURL, baseURL, remoteSource, automaticTranslation, approvedLocales, defaultLocale, getLocale, renderMethod, // "hang", "subtle"
|
|
29
|
+
renderTimeout, dictionaryName, dictionary, translations, maxConcurrentRequests, batchInterval, getMetadata, ...metadata }?: CreateI18NConfigProps): GeneralTranslation;
|
|
28
30
|
/**
|
|
29
31
|
* A lightweight configuration function which defines a set of variable components which can be used in a GT dictionary.
|
|
30
32
|
*
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,aAAa,CAAA;AAOpB,OAAO,qBAAqB,MAAM,uBAAuB,CAAC;AAS1D,OAAO,kBAAkB,MAAM,qCAAqC,CAAC;AACrE,OAAO,SAAS,MAAM,2BAA2B,CAAC;AAElD
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,aAAa,CAAA;AAOpB,OAAO,qBAAqB,MAAM,uBAAuB,CAAC;AAS1D,OAAO,kBAAkB,MAAM,qCAAqC,CAAC;AACrE,OAAO,SAAS,MAAM,2BAA2B,CAAC;AAElD;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,QAAQ,CAAC,EAErB,MAAwC,EACxC,SAA8C,EAC9C,QAAkC,EAClC,OAAgC,EAChC,YAAmB,EACnB,oBAA2B,EAE3B,eAAe,EACf,aAA4C,EAC5C,SAA0C,EAE1C,YAAwB,EAAE,mBAAmB;AAC7C,aAAoB,EAEpB,cAA0B,EAC1B,UAAe,EACf,YAAY,EAEZ,qBAAyB,EACzB,aAAoB,EAEpB,WAAiC,EACjC,GAAG,QAAQ,EACd,GAAE,qBAgBF,GAAG,kBAAkB,CAsDrB;AAGD;;;;;;;;GAQG;AACH,wBAAgB,eAAe,CAAC,EAC5B,eAAoB,EACpB,aAA4C,EAC5C,SAA0C,GAC7C,GAAE;IACC,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,MAAM,CAAC;CAI3B,GAAG,SAAS,CAeZ"}
|
package/dist/index.js
CHANGED
|
@@ -38,11 +38,13 @@ const createCurrencyVariableComponent_1 = __importDefault(require("./primitives/
|
|
|
38
38
|
* @param {string} [params.projectID] - Project ID for cloud integration. Default is fetched from environment variable `GT_PROJECT_ID`.
|
|
39
39
|
* @param {string} [params.cacheURL] - URL for caching. Default is "https://cache.gtx.dev".
|
|
40
40
|
* @param {string} [params.baseURL] - Base URL for API requests. Default is "https://prod.gtx.dev".
|
|
41
|
-
* @param {Object} [params.remoteSource] - Boolean which determines whether library
|
|
41
|
+
* @param {Object} [params.remoteSource] - Boolean which determines whether library fetches a dictionary from a remote cache.
|
|
42
|
+
* @param {Object} [params.automaticTranslation] - Boolean which determines whether library translates using cloud services.
|
|
42
43
|
* @param {string[]} [params.approvedLocales] - List of approved locales. Default is an empty array.
|
|
43
44
|
* @param {string} [params.defaultLocale] - Default locale for the translation. Default is the first locale in `approvedLocales` or 'en'.
|
|
44
45
|
* @param {Function} [params.getLocale] - Function to get the current locale. Default returns the `defaultLocale`.
|
|
45
46
|
* @param {string} [params.renderMethod] - How translations are rendered for the first time. options are "replace", "hang", "subtle". Default is "replace".
|
|
47
|
+
* @param {string} [params.renderTimeout] - Timeout before rendering a new translation is called off.
|
|
46
48
|
* @param {string} [params.dictionaryName] - Name of the dictionary to use. Default is "default".
|
|
47
49
|
* @param {Object} [params.dictionary] - Dictionary object containing default language content.
|
|
48
50
|
* @param {Object} [params.translations] - An object which contains strings which correspond to locales and functions which define translation dictionaries associated with those locales.
|
|
@@ -56,33 +58,35 @@ function createGT(_a = {
|
|
|
56
58
|
projectID: (0, getDefaultFromEnv_1.default)('GT_PROJECT_ID'),
|
|
57
59
|
cacheURL: "https://cache.gtx.dev",
|
|
58
60
|
baseURL: "https://prod.gtx.dev",
|
|
59
|
-
|
|
61
|
+
remoteSource: true,
|
|
62
|
+
automaticTranslation: true,
|
|
60
63
|
defaultLocale: 'en',
|
|
61
64
|
getLocale: () => 'en',
|
|
62
65
|
renderMethod: "replace",
|
|
66
|
+
renderTimeout: 8500,
|
|
63
67
|
dictionaryName: "default",
|
|
64
68
|
dictionary: {},
|
|
65
|
-
translations: null,
|
|
66
69
|
maxConcurrentRequests: 2,
|
|
67
70
|
batchInterval: 1000,
|
|
68
71
|
getMetadata: () => { return {}; }
|
|
69
72
|
}) {
|
|
70
73
|
var {
|
|
71
74
|
// Cloud integration
|
|
72
|
-
apiKey = (0, getDefaultFromEnv_1.default)('GT_API_KEY'), projectID = (0, getDefaultFromEnv_1.default)('GT_PROJECT_ID'), cacheURL = "https://cache.gtx.dev", baseURL = "https://prod.gtx.dev", remoteSource = true,
|
|
75
|
+
apiKey = (0, getDefaultFromEnv_1.default)('GT_API_KEY'), projectID = (0, getDefaultFromEnv_1.default)('GT_PROJECT_ID'), cacheURL = "https://cache.gtx.dev", baseURL = "https://prod.gtx.dev", remoteSource = true, automaticTranslation = true,
|
|
73
76
|
// Locale info
|
|
74
77
|
approvedLocales, defaultLocale = (approvedLocales === null || approvedLocales === void 0 ? void 0 : approvedLocales[0]) || 'en', getLocale = () => { return defaultLocale; },
|
|
75
78
|
// Rendering
|
|
76
79
|
renderMethod = "replace", // "hang", "subtle"
|
|
80
|
+
renderTimeout = 8500,
|
|
77
81
|
// Dictionaries
|
|
78
|
-
dictionaryName = "default", dictionary = {}, translations
|
|
82
|
+
dictionaryName = "default", dictionary = {}, translations,
|
|
79
83
|
// Batching config
|
|
80
84
|
maxConcurrentRequests = 2, batchInterval = 1000,
|
|
81
85
|
// Other metadata
|
|
82
|
-
getMetadata = () => { return {}; } } = _a, metadata = __rest(_a, ["apiKey", "projectID", "cacheURL", "baseURL", "remoteSource", "approvedLocales", "defaultLocale", "getLocale", "renderMethod", "dictionaryName", "dictionary", "translations", "maxConcurrentRequests", "batchInterval", "getMetadata"]);
|
|
83
|
-
const I18NConfig = new I18NConfiguration_1.default(Object.assign({ apiKey, projectID, cacheURL, baseURL, remoteSource,
|
|
86
|
+
getMetadata = () => { return {}; } } = _a, metadata = __rest(_a, ["apiKey", "projectID", "cacheURL", "baseURL", "remoteSource", "automaticTranslation", "approvedLocales", "defaultLocale", "getLocale", "renderMethod", "renderTimeout", "dictionaryName", "dictionary", "translations", "maxConcurrentRequests", "batchInterval", "getMetadata"]);
|
|
87
|
+
const I18NConfig = new I18NConfiguration_1.default(Object.assign({ apiKey, projectID, cacheURL, baseURL, remoteSource, automaticTranslation,
|
|
84
88
|
getLocale, defaultLocale, approvedLocales,
|
|
85
|
-
renderMethod,
|
|
89
|
+
renderMethod, renderTimeout,
|
|
86
90
|
dictionary, dictionaryName: (0, getDefaultFromEnv_1.default)('GT_DICTIONARY_NAME') || dictionaryName, // override from .env
|
|
87
91
|
translations,
|
|
88
92
|
maxConcurrentRequests, batchInterval,
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createIntlFunction.d.ts","sourceRoot":"","sources":["../../src/intl/createIntlFunction.ts"],"names":[],"mappings":"AAAA,OAAO,iBAAiB,MAAM,6BAA6B,CAAA;AAE3D,MAAM,CAAC,OAAO,UAAU,kBAAkB,CAAC,EACvC,UAAU,EAAE,GAAG,cAAc,EAChC,EAAE;IAAE,UAAU,EAAE,iBAAiB,CAAC;IAAC,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;CAAE,aAEvC,MAAM,YAAW,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAC9C,OAAO,CAAC,MAAM,CAAC,
|
|
1
|
+
{"version":3,"file":"createIntlFunction.d.ts","sourceRoot":"","sources":["../../src/intl/createIntlFunction.ts"],"names":[],"mappings":"AAAA,OAAO,iBAAiB,MAAM,6BAA6B,CAAA;AAE3D,MAAM,CAAC,OAAO,UAAU,kBAAkB,CAAC,EACvC,UAAU,EAAE,GAAG,cAAc,EAChC,EAAE;IAAE,UAAU,EAAE,iBAAiB,CAAC;IAAC,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;CAAE,aAEvC,MAAM,YAAW,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAC9C,OAAO,CAAC,MAAM,CAAC,CAmBrB"}
|
|
@@ -30,9 +30,15 @@ function createIntlFunction(_a) {
|
|
|
30
30
|
const translation = yield I18NConfig.getTranslation(options.targetLanguage, content, options.id, options.dictionaryName);
|
|
31
31
|
if (translation)
|
|
32
32
|
return translation;
|
|
33
|
-
if (I18NConfig.
|
|
33
|
+
if (I18NConfig.automaticTranslationEnabled()) {
|
|
34
34
|
const translationPromise = I18NConfig.intl({ content, targetLanguage: options.targetLanguage, options });
|
|
35
|
-
|
|
35
|
+
const renderSettings = I18NConfig.getRenderSettings();
|
|
36
|
+
if (renderSettings.method !== "subtle") {
|
|
37
|
+
const timeout = renderSettings.timeout;
|
|
38
|
+
if (typeof timeout === 'number') {
|
|
39
|
+
const timeoutPromise = new Promise((resolve) => setTimeout(() => resolve(content), timeout));
|
|
40
|
+
return yield Promise.race([translationPromise, timeoutPromise]);
|
|
41
|
+
}
|
|
36
42
|
return yield translationPromise;
|
|
37
43
|
}
|
|
38
44
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createIntlFunction.js","sourceRoot":"","sources":["../../src/intl/createIntlFunction.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAEA,
|
|
1
|
+
{"version":3,"file":"createIntlFunction.js","sourceRoot":"","sources":["../../src/intl/createIntlFunction.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAEA,qCAwBC;AAxBD,SAAwB,kBAAkB,CAAC,EAEa;QAFb,EACvC,UAAU,OAC0C,EADrC,cAAc,cADU,cAE1C,CADgC;IAE7B,OAAO,uBAEY,EAAE,4DADjB,OAAe,EAAE,4BAAoC,cAAc,CAAE;QAErE,OAAO,CAAC,cAAc,GAAG,OAAO,CAAC,cAAc,IAAI,UAAU,CAAC,SAAS,EAAE,CAAC;QAC1E,IAAI,CAAC,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,CAAC,UAAU,CAAC,mBAAmB,CAAC,OAAO,CAAC,cAAc,CAAC;YAAE,OAAO,OAAO,CAAC;QACvH,MAAM,WAAW,GAAG,MAAM,UAAU,CAAC,cAAc,CAAC,OAAO,CAAC,cAAc,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC;QACzH,IAAI,WAAW;YAAE,OAAO,WAAW,CAAC;QACpC,IAAI,UAAU,CAAC,2BAA2B,EAAE,EAAE,CAAC;YAC3C,MAAM,kBAAkB,GAAG,UAAU,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,cAAc,EAAE,OAAO,CAAC,cAAc,EAAE,OAAO,EAAE,CAAC,CAAC;YACzG,MAAM,cAAc,GAAG,UAAU,CAAC,iBAAiB,EAAE,CAAA;YACrD,IAAI,cAAc,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;gBACrC,MAAM,OAAO,GAAG,cAAc,CAAC,OAAO,CAAC;gBACvC,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;oBAC9B,MAAM,cAAc,GAAG,IAAI,OAAO,CAAS,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC;oBACrG,OAAO,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,kBAAkB,EAAE,cAAc,CAAC,CAAC,CAAC;gBACpE,CAAC;gBACD,OAAO,MAAM,kBAAkB,CAAC;YACpC,CAAC;QACL,CAAC;QACD,OAAO,OAAO,CAAC;IACnB,CAAC,CAAA,CAAA;AACL,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ServerI18N.d.ts","sourceRoot":"","sources":["../../src/server/ServerI18N.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAOxC,OAAO,iBAAiB,MAAM,gCAAgC,CAAC;AAE/D,KAAK,eAAe,GAAG;IACnB,UAAU,EAAE,iBAAiB,CAAA;IAC7B,QAAQ,EAAE,GAAG,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACtB,CAAA;AAED,wBAA8B,UAAU,CAAC,EACrC,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,KAAK,EACzC,EAAE,eAAe,GAAG,OAAO,CAAC,SAAS,CAAC,
|
|
1
|
+
{"version":3,"file":"ServerI18N.d.ts","sourceRoot":"","sources":["../../src/server/ServerI18N.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAOxC,OAAO,iBAAiB,MAAM,gCAAgC,CAAC;AAE/D,KAAK,eAAe,GAAG;IACnB,UAAU,EAAE,iBAAiB,CAAA;IAC7B,QAAQ,EAAE,GAAG,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACtB,CAAA;AAED,wBAA8B,UAAU,CAAC,EACrC,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,KAAK,EACzC,EAAE,eAAe,GAAG,OAAO,CAAC,SAAS,CAAC,CAwGtC"}
|
|
@@ -59,25 +59,35 @@ function ServerI18N(_a) {
|
|
|
59
59
|
return ((0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: I18NChildren }));
|
|
60
60
|
}
|
|
61
61
|
// Check if a new translation for this site can be created
|
|
62
|
-
|
|
62
|
+
const renderSettings = I18NConfig.getRenderSettings();
|
|
63
|
+
if (!I18NConfig.automaticTranslationEnabled()) {
|
|
63
64
|
return ((0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: children }));
|
|
64
65
|
}
|
|
65
66
|
// Create a new translation for this site and render it
|
|
66
67
|
const I18NChildrenPromise = I18NConfig.translateChildren({ children: childrenAsObjects, targetLanguage: locale, metadata: Object.assign({}, props) });
|
|
67
|
-
const renderMethod = (props === null || props === void 0 ? void 0 : props.renderMethod) ||
|
|
68
|
+
const renderMethod = (props === null || props === void 0 ? void 0 : props.renderMethod) || renderSettings.method;
|
|
69
|
+
const timeout = renderSettings === null || renderSettings === void 0 ? void 0 : renderSettings.timeout;
|
|
68
70
|
if (renderMethod === "replace") {
|
|
69
71
|
// Return the site in the default language
|
|
70
72
|
// Replace with translated site when ready
|
|
71
73
|
const InnerResolver = () => __awaiter(this, void 0, void 0, function* () {
|
|
72
|
-
const
|
|
73
|
-
|
|
74
|
+
const renderPromise = I18NChildrenPromise.then(target => (0, renderChildren_js_1.default)({ source: taggedChildren, target, renderAttributes, locale, defaultLocale }));
|
|
75
|
+
if (typeof timeout === 'number') {
|
|
76
|
+
const timeoutPromise = new Promise((resolve) => setTimeout(() => resolve(children), timeout));
|
|
77
|
+
return yield Promise.race([renderPromise, timeoutPromise]);
|
|
78
|
+
}
|
|
79
|
+
return yield renderPromise;
|
|
74
80
|
});
|
|
75
81
|
return ((0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: (0, jsx_runtime_1.jsx)(I18NResolver_js_1.default, { fallback: children, children: (0, jsx_runtime_1.jsx)(InnerResolver, {}) }) }));
|
|
76
82
|
}
|
|
77
83
|
if (renderMethod === "hang") {
|
|
78
84
|
// Wait until the site is translated to return
|
|
79
|
-
const
|
|
80
|
-
|
|
85
|
+
const renderPromise = I18NChildrenPromise.then(target => (0, renderChildren_js_1.default)({ source: taggedChildren, target, renderAttributes, locale, defaultLocale }));
|
|
86
|
+
if (typeof timeout === 'number') {
|
|
87
|
+
const timeoutPromise = new Promise((resolve) => setTimeout(() => resolve(children), timeout));
|
|
88
|
+
return ((0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: yield Promise.race([renderPromise, timeoutPromise]) }));
|
|
89
|
+
}
|
|
90
|
+
return ((0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: yield renderPromise }));
|
|
81
91
|
}
|
|
82
92
|
return (
|
|
83
93
|
// return the children, with no special rendering
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ServerI18N.js","sourceRoot":"","sources":["../../src/server/ServerI18N.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAiBA,
|
|
1
|
+
{"version":3,"file":"ServerI18N.js","sourceRoot":"","sources":["../../src/server/ServerI18N.tsx"],"names":[],"mappings":"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"}
|
|
@@ -3,6 +3,14 @@ interface I18NResolverProps {
|
|
|
3
3
|
children: ReactNode | Promise<ReactNode>;
|
|
4
4
|
fallback: ReactNode;
|
|
5
5
|
}
|
|
6
|
+
/**
|
|
7
|
+
* I18NResolver component handles the rendering of children which may be a promise.
|
|
8
|
+
* If the promise resolves, the children are rendered inside a Suspense component.
|
|
9
|
+
* If the promise fails, the fallback is rendered permanently.
|
|
10
|
+
*
|
|
11
|
+
* @param {I18NResolverProps} props - The properties for the component.
|
|
12
|
+
* @returns {JSX.Element} - The rendered component.
|
|
13
|
+
*/
|
|
6
14
|
export default function I18NResolver({ children, fallback }: I18NResolverProps): JSX.Element;
|
|
7
15
|
export {};
|
|
8
16
|
//# sourceMappingURL=I18NResolver.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"I18NResolver.d.ts","sourceRoot":"","sources":["../../../src/server/resolvers/I18NResolver.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"I18NResolver.d.ts","sourceRoot":"","sources":["../../../src/server/resolvers/I18NResolver.tsx"],"names":[],"mappings":"AAEA,OAAc,EAAE,SAAS,EAAuB,MAAM,OAAO,CAAC;AAG9D,UAAU,iBAAiB;IACvB,QAAQ,EAAE,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;IACzC,QAAQ,EAAE,SAAS,CAAC;CACvB;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,OAAO,UAAU,YAAY,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,iBAAiB,GAAG,GAAG,CAAC,OAAO,CA6C3F"}
|
|
@@ -14,40 +14,41 @@ exports.default = I18NResolver;
|
|
|
14
14
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
15
15
|
const react_1 = require("react");
|
|
16
16
|
const react_2 = require("react");
|
|
17
|
+
/**
|
|
18
|
+
* I18NResolver component handles the rendering of children which may be a promise.
|
|
19
|
+
* If the promise resolves, the children are rendered inside a Suspense component.
|
|
20
|
+
* If the promise fails, the fallback is rendered permanently.
|
|
21
|
+
*
|
|
22
|
+
* @param {I18NResolverProps} props - The properties for the component.
|
|
23
|
+
* @returns {JSX.Element} - The rendered component.
|
|
24
|
+
*/
|
|
17
25
|
function I18NResolver({ children, fallback }) {
|
|
18
26
|
const [resolvedChildren, setResolvedChildren] = (0, react_1.useState)(fallback);
|
|
19
27
|
const [hasError, setHasError] = (0, react_1.useState)(false);
|
|
20
28
|
(0, react_1.useEffect)(() => {
|
|
21
29
|
let isMounted = true;
|
|
22
|
-
let abortController = new AbortController();
|
|
23
30
|
const resolveChildren = () => __awaiter(this, void 0, void 0, function* () {
|
|
24
31
|
try {
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
new Promise((_, reject) => {
|
|
29
|
-
abortController.signal.addEventListener('abort', () => reject(new Error('Connection closed')));
|
|
30
|
-
})
|
|
31
|
-
]);
|
|
32
|
-
if (isMounted) {
|
|
33
|
-
setResolvedChildren(resolved);
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
else {
|
|
37
|
-
setResolvedChildren(children);
|
|
32
|
+
const resolved = yield Promise.resolve(children);
|
|
33
|
+
if (isMounted) {
|
|
34
|
+
setResolvedChildren(resolved);
|
|
38
35
|
}
|
|
39
36
|
}
|
|
40
37
|
catch (error) {
|
|
41
|
-
console.error(
|
|
38
|
+
console.error(error);
|
|
42
39
|
if (isMounted) {
|
|
43
40
|
setHasError(true);
|
|
44
41
|
}
|
|
45
42
|
}
|
|
46
43
|
});
|
|
47
|
-
|
|
44
|
+
if (children instanceof Promise) {
|
|
45
|
+
resolveChildren();
|
|
46
|
+
}
|
|
47
|
+
else {
|
|
48
|
+
setResolvedChildren(children);
|
|
49
|
+
}
|
|
48
50
|
return () => {
|
|
49
51
|
isMounted = false;
|
|
50
|
-
abortController.abort();
|
|
51
52
|
};
|
|
52
53
|
}, [children]);
|
|
53
54
|
if (hasError) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"I18NResolver.js","sourceRoot":"","sources":["../../../src/server/resolvers/I18NResolver.tsx"],"names":[],"mappings":";AAAA,YAAY,CAAA;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"I18NResolver.js","sourceRoot":"","sources":["../../../src/server/resolvers/I18NResolver.tsx"],"names":[],"mappings":";AAAA,YAAY,CAAA;;;;;;;;;;;AAkBZ,+BA6CC;;AA7DD,iCAA8D;AAC9D,iCAAiC;AAOjC;;;;;;;GAOG;AACH,SAAwB,YAAY,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAqB;IAE1E,MAAM,CAAC,gBAAgB,EAAE,mBAAmB,CAAC,GAAG,IAAA,gBAAQ,EAAY,QAAQ,CAAC,CAAC;IAE9E,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,IAAA,gBAAQ,EAAC,KAAK,CAAC,CAAC;IAEhD,IAAA,iBAAS,EAAC,GAAG,EAAE;QAEX,IAAI,SAAS,GAAG,IAAI,CAAC;QAErB,MAAM,eAAe,GAAG,GAAS,EAAE;YAC/B,IAAI,CAAC;gBACD,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;gBACjD,IAAI,SAAS,EAAE,CAAC;oBACZ,mBAAmB,CAAC,QAAQ,CAAC,CAAC;gBAClC,CAAC;YACL,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACb,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;gBACpB,IAAI,SAAS,EAAE,CAAC;oBACZ,WAAW,CAAC,IAAI,CAAC,CAAC;gBACtB,CAAC;YACL,CAAC;QACL,CAAC,CAAA,CAAC;QAEF,IAAI,QAAQ,YAAY,OAAO,EAAE,CAAC;YAC9B,eAAe,EAAE,CAAC;QACtB,CAAC;aAAM,CAAC;YACJ,mBAAmB,CAAC,QAAQ,CAAC,CAAC;QAClC,CAAC;QAED,OAAO,GAAG,EAAE;YACR,SAAS,GAAG,KAAK,CAAC;QACtB,CAAC,CAAC;IAEN,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;IAEf,IAAI,QAAQ,EAAE,CAAC;QACX,OAAO,2DAAG,QAAQ,GAAI,CAAC;IAC3B,CAAC;IAED,OAAO,CACH,uBAAC,gBAAQ,IAAC,QAAQ,EAAE,QAAQ,YACvB,gBAAgB,GACV,CACd,CAAC;AACN,CAAC"}
|
|
@@ -4,13 +4,15 @@ type CreateGTProps = {
|
|
|
4
4
|
baseURL?: string;
|
|
5
5
|
cacheURL?: string;
|
|
6
6
|
remoteSource?: boolean;
|
|
7
|
+
automaticTranslation?: boolean;
|
|
7
8
|
approvedLocales?: string[];
|
|
8
9
|
defaultLocale?: string;
|
|
9
10
|
getLocale?: () => string;
|
|
10
11
|
renderMethod?: string;
|
|
12
|
+
renderTimeout?: number | null;
|
|
11
13
|
dictionaryName?: string;
|
|
12
14
|
dictionary?: Record<string, any>;
|
|
13
|
-
translations?: Record<string, () => Promise<Record<string, any
|
|
15
|
+
translations?: Record<string, () => Promise<Record<string, any>>>;
|
|
14
16
|
maxConcurrentRequests?: number;
|
|
15
17
|
batchInterval?: number;
|
|
16
18
|
getMetadata?: () => Record<string, any>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CreateGTProps.d.ts","sourceRoot":"","sources":["../../src/types/CreateGTProps.ts"],"names":[],"mappings":"AAAA,KAAK,aAAa,GAAG;IAEjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"CreateGTProps.d.ts","sourceRoot":"","sources":["../../src/types/CreateGTProps.ts"],"names":[],"mappings":"AAAA,KAAK,aAAa,GAAG;IAEjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAE/B,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,MAAM,CAAC;IAEzB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAE9B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAChC,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;IAElE,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,WAAW,CAAC,EAAE,MAAM,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IACvC,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACtB,CAAA;AAED,eAAe,aAAa,CAAC"}
|