gt-react 3.1.87 → 3.1.88
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/client/ClientProvider.d.ts.map +1 -1
- package/dist/client/ClientProvider.js +15 -4
- package/dist/client/ClientProvider.js.map +1 -1
- package/dist/client/client-only/GTClientProvider.d.ts.map +1 -1
- package/dist/client/client-only/GTClientProvider.js +10 -3
- package/dist/client/client-only/GTClientProvider.js.map +1 -1
- package/dist/client/hooks/useGT.d.ts +2 -1
- package/dist/client/hooks/useGT.d.ts.map +1 -1
- package/dist/client/hooks/useGT.js +2 -2
- package/dist/client/hooks/useGT.js.map +1 -1
- package/dist/dictionary/cloneDictionary.d.ts.map +1 -1
- package/dist/dictionary/cloneDictionary.js +4 -1
- package/dist/dictionary/cloneDictionary.js.map +1 -1
- package/dist/dictionary/createTFunction.d.ts +1 -2
- package/dist/dictionary/createTFunction.d.ts.map +1 -1
- package/dist/dictionary/createTFunction.js +11 -3
- package/dist/dictionary/createTFunction.js.map +1 -1
- package/dist/primitives/rendering/getEntryMetadata.d.ts.map +1 -1
- package/dist/primitives/rendering/getEntryMetadata.js +8 -3
- package/dist/primitives/rendering/getEntryMetadata.js.map +1 -1
- package/dist/server/provider/GTProvider.d.ts.map +1 -1
- package/dist/server/provider/GTProvider.js +14 -14
- package/dist/server/provider/GTProvider.js.map +1 -1
- package/package.json +1 -1
- package/scratchpad.js +3 -1
- package/dist/dictionary/checkTFunctionOptions.d.ts +0 -2
- package/dist/dictionary/checkTFunctionOptions.d.ts.map +0 -1
- package/dist/dictionary/checkTFunctionOptions.js +0 -18
- package/dist/dictionary/checkTFunctionOptions.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ClientProvider.d.ts","sourceRoot":"","sources":["../../src/client/ClientProvider.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ClientProvider.d.ts","sourceRoot":"","sources":["../../src/client/ClientProvider.tsx"],"names":[],"mappings":"AAQA,KAAK,aAAa,GAAG;IACjB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;CACrB,CAAA;AACD,eAAO,MAAM,SAAS,oDAAsD,CAAC;AAE7E,KAAK,mBAAmB,GAAG;IACvB,QAAQ,EAAE,GAAG,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAChC,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACtB,CAAA;AACD,MAAM,CAAC,OAAO,UAAU,cAAc,CAAC,EACnC,QAAQ,EACR,MAAM,EAAE,aAAa,EACrB,UAAU,EAAE,YAAY,EACxB,mBAAmB,EACtB,EAAE,mBAAmB,2CA6BrB;AAED;;;GAGG;AACH,wBAAgB,YAAY,IAAI,aAAa,CAM5C"}
|
|
@@ -22,21 +22,32 @@ var jsx_runtime_1 = require("react/jsx-runtime");
|
|
|
22
22
|
var react_1 = require("react");
|
|
23
23
|
var handleRender_1 = __importDefault(require("./helpers/handleRender"));
|
|
24
24
|
var renderDefaultLanguage_1 = __importDefault(require("./helpers/renderDefaultLanguage"));
|
|
25
|
+
var addGTIdentifier_1 = __importDefault(require("../primitives/translation/addGTIdentifier"));
|
|
25
26
|
exports.GTContext = (0, react_1.createContext)(undefined);
|
|
26
27
|
function ClientProvider(_a) {
|
|
27
28
|
var children = _a.children, locale = _a.locale, defaultLocale = _a.defaultLocale, dictionary = _a.dictionary, translations = _a.translations, translationRequired = _a.translationRequired;
|
|
28
|
-
var translate = (0, react_1.useCallback)(function (id, options) {
|
|
29
|
+
var translate = (0, react_1.useCallback)(function (id, options, f) {
|
|
30
|
+
if (options === void 0) { options = {}; }
|
|
31
|
+
var entry = dictionary[id];
|
|
32
|
+
if (typeof entry === 'object' && entry.function) {
|
|
33
|
+
if (typeof f === 'function') {
|
|
34
|
+
entry = (0, addGTIdentifier_1.default)(f(options));
|
|
35
|
+
}
|
|
36
|
+
else {
|
|
37
|
+
entry = entry.defaultChildren;
|
|
38
|
+
}
|
|
39
|
+
}
|
|
29
40
|
if (translationRequired) {
|
|
30
41
|
return (0, handleRender_1.default)({
|
|
31
|
-
source:
|
|
42
|
+
source: entry,
|
|
32
43
|
target: translations[id],
|
|
33
44
|
locale: locale,
|
|
34
45
|
defaultLocale: defaultLocale,
|
|
35
|
-
variables: options
|
|
46
|
+
variables: options,
|
|
36
47
|
id: id
|
|
37
48
|
});
|
|
38
49
|
}
|
|
39
|
-
return (0, renderDefaultLanguage_1.default)(__assign({ source:
|
|
50
|
+
return (0, renderDefaultLanguage_1.default)(__assign({ source: entry, variables: options || {}, id: id }, options));
|
|
40
51
|
}, [dictionary, translations]);
|
|
41
52
|
return ((0, jsx_runtime_1.jsx)(exports.GTContext.Provider, { value: {
|
|
42
53
|
translate: translate,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ClientProvider.js","sourceRoot":"","sources":["../../src/client/ClientProvider.tsx"],"names":[],"mappings":";AAAA,YAAY,CAAA;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"ClientProvider.js","sourceRoot":"","sources":["../../src/client/ClientProvider.tsx"],"names":[],"mappings":";AAAA,YAAY,CAAA;;;;;;;;;;;;;;;;;AAoBZ,iCAkCC;AAMD,oCAMC;;AAhED,+BAAmF;AAEnF,wEAAkD;AAClD,0FAAoE;AACpE,8FAAwE;AAK3D,QAAA,SAAS,GAAG,IAAA,qBAAa,EAA4B,SAAS,CAAC,CAAC;AAS7E,SAAwB,cAAc,CAAC,EAKjB;QAJlB,QAAQ,cAAA,EACR,MAAM,YAAA,EAAE,aAAa,mBAAA,EACrB,UAAU,gBAAA,EAAE,YAAY,kBAAA,EACxB,mBAAmB,yBAAA;IAGnB,IAAM,SAAS,GAAG,IAAA,mBAAW,EAAC,UAAC,EAAU,EAAE,OAAsB,EAAE,CAAY;QAApC,wBAAA,EAAA,YAAsB;QAC7D,IAAI,KAAK,GAAG,UAAU,CAAC,EAAE,CAAC,CAAC;QAC3B,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;YAC9C,IAAI,OAAO,CAAC,KAAK,UAAU,EAAE,CAAC;gBAC1B,KAAK,GAAG,IAAA,yBAAe,EAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;YACxC,CAAC;iBAAM,CAAC;gBACJ,KAAK,GAAG,KAAK,CAAC,eAAe,CAAC;YAClC,CAAC;QACL,CAAC;QACD,IAAI,mBAAmB,EAAE,CAAC;YACtB,OAAO,IAAA,sBAAY,EAAC;gBAChB,MAAM,EAAE,KAAK;gBACb,MAAM,EAAE,YAAY,CAAC,EAAE,CAAC;gBACxB,MAAM,QAAA;gBAAE,aAAa,eAAA;gBACrB,SAAS,EAAE,OAAO;gBAAE,EAAE,IAAA;aACzB,CAAC,CAAA;QACN,CAAC;QACD,OAAO,IAAA,+BAAqB,aAAG,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,OAAO,IAAI,EAAE,EAAE,EAAE,IAAA,IAAK,OAAO,EAAG,CAAA;IAC7F,CAAC,EAAE,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC,CAAC;IAE/B,OAAO,CACH,uBAAC,iBAAS,CAAC,QAAQ,IAAC,KAAK,EAAE;YACvB,SAAS,WAAA;YAAE,MAAM,QAAA;YAAE,aAAa,eAAA;SACnC,YACI,QAAQ,GACQ,CACxB,CAAC;AACN,CAAC;AAED;;;GAGG;AACH,SAAgB,YAAY;IACxB,IAAM,OAAO,GAAG,IAAA,kBAAU,EAAC,iBAAS,CAAC,CAAC;IACtC,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QACxB,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;IACrE,CAAC;IACD,OAAO,OAAO,CAAC;AACnB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GTClientProvider.d.ts","sourceRoot":"","sources":["../../../src/client/client-only/GTClientProvider.tsx"],"names":[],"mappings":"AAkBA;;;;;;;;;;;;;;;;;;EAkBE;AACF,MAAM,CAAC,OAAO,UAAU,gBAAgB,CAAC,EACrC,QAAQ,EACR,SAAS,EACT,UAAsC,EACtC,cAA8C,EAC9C,eAAe,EAAE,aAAoE,EACrF,MAAW,EACX,YAA0C,EAC1C,QAAkC,EAClC,YAAY,EACf,EAAE;IACC,QAAQ,CAAC,EAAE,GAAG,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACjC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;CAErE,GAAG,GAAG,CAAC,OAAO,
|
|
1
|
+
{"version":3,"file":"GTClientProvider.d.ts","sourceRoot":"","sources":["../../../src/client/client-only/GTClientProvider.tsx"],"names":[],"mappings":"AAkBA;;;;;;;;;;;;;;;;;;EAkBE;AACF,MAAM,CAAC,OAAO,UAAU,gBAAgB,CAAC,EACrC,QAAQ,EACR,SAAS,EACT,UAAsC,EACtC,cAA8C,EAC9C,eAAe,EAAE,aAAoE,EACrF,MAAW,EACX,YAA0C,EAC1C,QAAkC,EAClC,YAAY,EACf,EAAE;IACC,QAAQ,CAAC,EAAE,GAAG,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACjC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;CAErE,GAAG,GAAG,CAAC,OAAO,CAiHd"}
|
|
@@ -170,12 +170,19 @@ function GTClientProvider(_a) {
|
|
|
170
170
|
}
|
|
171
171
|
}
|
|
172
172
|
}, [cacheURL, remoteSource, locale]);
|
|
173
|
-
var translate = (0, react_1.useCallback)(function (id, options) {
|
|
173
|
+
var translate = (0, react_1.useCallback)(function (id, options, f) {
|
|
174
|
+
if (options === void 0) { options = {}; }
|
|
174
175
|
if (translationRequired && localDictionary && localDictionary[id]) {
|
|
175
|
-
return (0, renderDefaultLanguage_1.default)(__assign({ source: localDictionary[id], variables: options
|
|
176
|
+
return (0, renderDefaultLanguage_1.default)(__assign({ source: localDictionary[id], variables: options, id: id }, options));
|
|
176
177
|
}
|
|
177
178
|
var _a = (0, getEntryMetadata_1.default)(dictionary[id]), entry = _a.entry, metadata = _a.metadata;
|
|
178
|
-
var
|
|
179
|
+
var _b = (0, getEntryTranslationType_1.default)(dictionary[id]), translationType = _b.type, isFunction = _b.isFunction;
|
|
180
|
+
if (typeof f === 'function') {
|
|
181
|
+
entry = f(options);
|
|
182
|
+
}
|
|
183
|
+
else if (isFunction) {
|
|
184
|
+
entry = entry(options);
|
|
185
|
+
}
|
|
179
186
|
if (translationType === "t") {
|
|
180
187
|
entry = (0, jsx_runtime_1.jsx)(react_1.default.Fragment, { children: entry }, id);
|
|
181
188
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GTClientProvider.js","sourceRoot":"","sources":["../../../src/client/client-only/GTClientProvider.tsx"],"names":[],"mappings":";AAAA,uEAAuE;AAEvE,YAAY,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAmCZ,
|
|
1
|
+
{"version":3,"file":"GTClientProvider.js","sourceRoot":"","sources":["../../../src/client/client-only/GTClientProvider.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { ReactNode } from "react";
|
|
1
2
|
/**
|
|
2
3
|
* Custom hook to provide a translation function using a given context.
|
|
3
4
|
*
|
|
@@ -6,5 +7,5 @@
|
|
|
6
7
|
* @param {string} [id] - Optional prefix to prepend to the translation keys.
|
|
7
8
|
* @returns {Function} A translation function that accepts a key string and returns the translated value.
|
|
8
9
|
*/
|
|
9
|
-
export default function useGT(id?: string): Function;
|
|
10
|
+
export default function useGT(id?: string): (id: string, options?: Record<string, any>, f?: Function) => ReactNode;
|
|
10
11
|
//# sourceMappingURL=useGT.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useGT.d.ts","sourceRoot":"","sources":["../../../src/client/hooks/useGT.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"useGT.d.ts","sourceRoot":"","sources":["../../../src/client/hooks/useGT.tsx"],"names":[],"mappings":"AAEA,OAAc,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAGzC;;;;;;;GAOG;AACH,MAAM,CAAC,OAAO,UAAU,KAAK,CAAC,EAAE,GAAE,MAAW,GACzC,CACI,EAAE,EAAE,MAAM,EACV,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC7B,CAAC,CAAC,EAAE,QAAQ,KACX,SAAS,CA0BjB"}
|
|
@@ -28,11 +28,11 @@ function useGT(id) {
|
|
|
28
28
|
throw new Error("t('".concat(id, "'): No context provided. useGT() can only be used inside a GTProvider."));
|
|
29
29
|
}
|
|
30
30
|
// Return a translation function if available, otherwise return a no-op function
|
|
31
|
-
return function (id, options) {
|
|
31
|
+
return function (id, options, f) {
|
|
32
32
|
if (id === void 0) { id = ''; }
|
|
33
33
|
if (options === void 0) { options = {}; }
|
|
34
34
|
var prefixedID = getID(id);
|
|
35
|
-
var translation = translate(prefixedID, options);
|
|
35
|
+
var translation = translate(prefixedID, options, f);
|
|
36
36
|
if (!translation)
|
|
37
37
|
console.warn("t('".concat(id, "') finding no translation for dictionary item ").concat(prefixedID, " !"));
|
|
38
38
|
return translation;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useGT.js","sourceRoot":"","sources":["../../../src/client/hooks/useGT.tsx"],"names":[],"mappings":";AAAA,YAAY,CAAA;;AAaZ,
|
|
1
|
+
{"version":3,"file":"useGT.js","sourceRoot":"","sources":["../../../src/client/hooks/useGT.tsx"],"names":[],"mappings":";AAAA,YAAY,CAAA;;AAaZ,wBA+BC;AAzCD,oDAAiD;AAEjD;;;;;;;GAOG;AACH,SAAwB,KAAK,CAAC,EAAe;IAAf,mBAAA,EAAA,OAAe;IAOzC,4DAA4D;IAC5D,IAAM,KAAK,GAAG,UAAC,MAAc;QACzB,IAAI,EAAE,IAAI,MAAM;YAAE,OAAO,UAAG,EAAE,cAAI,MAAM,CAAE,CAAC;QAC3C,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;IAC5B,CAAC,CAAA;IAED,8BAA8B;IAC9B,IAAI,SAAS,CAAC;IACd,IAAI,CAAC;QACD,CAAG,SAAS,GAAK,IAAA,6BAAY,GAAE,UAAnB,CAAoB,CAAC;IACrC,CAAC;IAAC,WAAM,CAAC;QACL,MAAM,IAAI,KAAK,CAAC,aAAM,EAAE,2EAAwE,CAAC,CAAC;IACtG,CAAC;IAED,gFAAgF;IAChF,OAAO,UAAC,EAAe,EAAE,OAGnB,EAAE,CAAY;QAHZ,mBAAA,EAAA,OAAe;QAAE,wBAAA,EAAA,YAGnB;QACF,IAAM,UAAU,GAAG,KAAK,CAAC,EAAE,CAAC,CAAC;QAC7B,IAAM,WAAW,GAAG,SAAS,CAAC,UAAU,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC;QACtD,IAAI,CAAC,WAAW;YAAE,OAAO,CAAC,IAAI,CAAC,aAAM,EAAE,2DAAiD,UAAU,OAAI,CAAC,CAAA;QACvG,OAAO,WAAW,CAAC;IACvB,CAAC,CAAA;AACL,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cloneDictionary.d.ts","sourceRoot":"","sources":["../../src/dictionary/cloneDictionary.ts"],"names":[],"mappings":"AAoBA,MAAM,CAAC,OAAO,UAAU,eAAe,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,
|
|
1
|
+
{"version":3,"file":"cloneDictionary.d.ts","sourceRoot":"","sources":["../../src/dictionary/cloneDictionary.ts"],"names":[],"mappings":"AAoBA,MAAM,CAAC,OAAO,UAAU,eAAe,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,uBAgBtE"}
|
|
@@ -26,7 +26,10 @@ function cloneDictionary(dictionary) {
|
|
|
26
26
|
for (var _i = 0, _a = Object.keys(dictionary); _i < _a.length; _i++) {
|
|
27
27
|
var id = _a[_i];
|
|
28
28
|
var _b = (0, getEntryMetadata_1.default)(dictionary[id]), entry = _b.entry, metadata = _b.metadata;
|
|
29
|
-
var clonedEntry =
|
|
29
|
+
var clonedEntry = entry;
|
|
30
|
+
if (typeof entry !== 'function') {
|
|
31
|
+
clonedEntry = react_1.default.isValidElement(entry) ? react_1.default.cloneElement(entry) : structuredClone(entry);
|
|
32
|
+
}
|
|
30
33
|
if (metadata) {
|
|
31
34
|
var clonedMetadata = cloneMetadata(metadata);
|
|
32
35
|
clonedDictionary[id] = [clonedEntry, clonedMetadata];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cloneDictionary.js","sourceRoot":"","sources":["../../src/dictionary/cloneDictionary.ts"],"names":[],"mappings":";;;;;AAoBA,
|
|
1
|
+
{"version":3,"file":"cloneDictionary.js","sourceRoot":"","sources":["../../src/dictionary/cloneDictionary.ts"],"names":[],"mappings":";;;;;AAoBA,kCAgBC;AApCD,gDAA0B;AAC1B,8FAAwE;AAExE,SAAS,aAAa,CAAC,QAA6B;IAChD,IAAI,eAAK,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE,CAAC;QACjC,OAAO,eAAK,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;IACxC,CAAC;IACD,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;QACpD,OAAO,QAAQ,CAAC;IACpB,CAAC;IACD,IAAM,SAAS,GAAwB,EAAE,CAAC;IAC1C,KAAK,IAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;QACzB,IAAI,QAAQ,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC;YAC/B,SAAS,CAAC,GAAG,CAAC,GAAG,aAAa,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;QAClD,CAAC;IACL,CAAC;IACD,OAAO,SAAS,CAAC;AACrB,CAAC;AAGD,SAAwB,eAAe,CAAC,UAA+B;IACnE,IAAM,gBAAgB,GAAwB,EAAE,CAAC;IACjD,KAAiB,UAAuB,EAAvB,KAAA,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,EAAvB,cAAuB,EAAvB,IAAuB,EAAE,CAAC;QAAtC,IAAM,EAAE,SAAA;QACH,IAAA,KAAsB,IAAA,0BAAgB,EAAC,UAAU,CAAC,EAAE,CAAC,CAAC,EAApD,KAAK,WAAA,EAAE,QAAQ,cAAqC,CAAC;QAC7D,IAAI,WAAW,GAAG,KAAK,CAAC;QACxB,IAAI,OAAO,KAAK,KAAK,UAAU,EAAE,CAAC;YAC9B,WAAW,GAAG,eAAK,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,eAAK,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;QACnG,CAAC;QACD,IAAI,QAAQ,EAAE,CAAC;YACX,IAAI,cAAc,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAC;YAC7C,gBAAgB,CAAC,EAAE,CAAC,GAAG,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;YACrD,SAAS;QACb,CAAC;QACD,gBAAgB,CAAC,EAAE,CAAC,GAAG,WAAW,CAAC;IACvC,CAAC;IACD,OAAO,gBAAgB,CAAC;AAC5B,CAAC"}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import I18NConfiguration from "../config/I18NConfiguration";
|
|
2
2
|
export type tOptions = {
|
|
3
|
-
n?: number;
|
|
4
3
|
[key: string]: any;
|
|
5
4
|
};
|
|
6
|
-
export default function createTFunction(I18NConfig: I18NConfiguration, T: any, translate: any, dictionary?: Record<string, any>): (id: string, options?: tOptions) => JSX.Element | Promise<string>;
|
|
5
|
+
export default function createTFunction(I18NConfig: I18NConfiguration, T: any, translate: any, dictionary?: Record<string, any>): (id: string, options?: tOptions, f?: Function) => JSX.Element | Promise<string>;
|
|
7
6
|
//# sourceMappingURL=createTFunction.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createTFunction.d.ts","sourceRoot":"","sources":["../../src/dictionary/createTFunction.tsx"],"names":[],"mappings":"AAAA,OAAO,iBAAiB,MAAM,6BAA6B,CAAC;
|
|
1
|
+
{"version":3,"file":"createTFunction.d.ts","sourceRoot":"","sources":["../../src/dictionary/createTFunction.tsx"],"names":[],"mappings":"AAAA,OAAO,iBAAiB,MAAM,6BAA6B,CAAC;AAO5D,MAAM,MAAM,QAAQ,GAAG;IACnB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;CACrB,CAAA;AAED,MAAM,CAAC,OAAO,UAAU,eAAe,CAAC,UAAU,EAAE,iBAAiB,EAAE,CAAC,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,EAAE,UAAU,sBAA6B,QAI5G,MAAM,YAAW,QAAQ,MAAW,QAAQ,KAAG,GAAG,CAAC,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAgErG"}
|
|
@@ -32,21 +32,29 @@ var InnerPlural_1 = __importDefault(require("../server/plural/InnerPlural"));
|
|
|
32
32
|
var getEntryMetadata_1 = __importDefault(require("../primitives/rendering/getEntryMetadata"));
|
|
33
33
|
var getEntryTranslationType_1 = __importDefault(require("../primitives/rendering/getEntryTranslationType"));
|
|
34
34
|
var getDictionaryEntry_1 = __importDefault(require("./getDictionaryEntry"));
|
|
35
|
-
var checkTFunctionOptions_1 = __importDefault(require("./checkTFunctionOptions"));
|
|
36
35
|
function createTFunction(I18NConfig, T, translate, dictionary) {
|
|
37
36
|
var _a;
|
|
38
37
|
if (dictionary === void 0) { dictionary = I18NConfig.getDictionary(); }
|
|
39
38
|
var shouldStore = (_a = I18NConfig.shouldStore()) !== null && _a !== void 0 ? _a : true;
|
|
40
|
-
return function t(id, options) {
|
|
39
|
+
return function t(id, options, f) {
|
|
41
40
|
if (options === void 0) { options = {}; }
|
|
42
|
-
(0, checkTFunctionOptions_1.default)(options);
|
|
43
41
|
var raw = (0, getDictionaryEntry_1.default)(id, dictionary);
|
|
44
42
|
var _a = (0, getEntryMetadata_1.default)(raw), entry = _a.entry, metadata = _a.metadata;
|
|
43
|
+
if (Object.keys(entry).length === 0 && entry.constructor === Object) {
|
|
44
|
+
throw new Error("Dictionary contains an empty object. This usually happens when you try to use a client-side function as an entry in a server-side dictionary. Check your dictionary entry with id \"".concat(id, "\"."));
|
|
45
|
+
}
|
|
45
46
|
// Checks to see if options are valid
|
|
46
47
|
var _b = (0, getEntryTranslationType_1.default)(raw), translationType = _b.type, isFunction = _b.isFunction;
|
|
47
48
|
// Turn into an async function if the target is a string
|
|
48
49
|
if (translationType === "string")
|
|
49
50
|
return translate(entry, __assign({ id: id, store: shouldStore }, metadata));
|
|
51
|
+
// execute function with options
|
|
52
|
+
if (typeof f === 'function') {
|
|
53
|
+
entry = f(options);
|
|
54
|
+
}
|
|
55
|
+
else if (isFunction) {
|
|
56
|
+
entry = entry(options);
|
|
57
|
+
}
|
|
50
58
|
// If a plural or value is required
|
|
51
59
|
if (Object.keys(options).length) {
|
|
52
60
|
var locales = [I18NConfig.getLocale(), I18NConfig.getDefaultLocale()];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createTFunction.js","sourceRoot":"","sources":["../../src/dictionary/createTFunction.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"createTFunction.js","sourceRoot":"","sources":["../../src/dictionary/createTFunction.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getEntryMetadata.d.ts","sourceRoot":"","sources":["../../../src/primitives/rendering/getEntryMetadata.ts"],"names":[],"mappings":"AAqBA,MAAM,CAAC,OAAO,UAAU,gBAAgB,CAAC,KAAK,EAAE,GAAG,GAAG;IAClD,KAAK,EAAE,GAAG,CAAC;IACX,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;CACjC,
|
|
1
|
+
{"version":3,"file":"getEntryMetadata.d.ts","sourceRoot":"","sources":["../../../src/primitives/rendering/getEntryMetadata.ts"],"names":[],"mappings":"AAqBA,MAAM,CAAC,OAAO,UAAU,gBAAgB,CAAC,KAAK,EAAE,GAAG,GAAG;IAClD,KAAK,EAAE,GAAG,CAAC;IACX,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;CACjC,CAgBA"}
|
|
@@ -25,9 +25,14 @@ function getEntryMetadata(entry) {
|
|
|
25
25
|
var content;
|
|
26
26
|
var metadata;
|
|
27
27
|
if (entry) {
|
|
28
|
-
if (Array.isArray(entry)
|
|
29
|
-
|
|
30
|
-
|
|
28
|
+
if (Array.isArray(entry)) {
|
|
29
|
+
if (entry.length === 1) {
|
|
30
|
+
content = entry[0];
|
|
31
|
+
}
|
|
32
|
+
else if (entry.length === 2 && !(0, react_1.isValidElement)(entry[1]) && typeof entry[1] === 'object' && !isVariableObject(entry[1])) {
|
|
33
|
+
content = entry[0];
|
|
34
|
+
metadata = entry[1];
|
|
35
|
+
}
|
|
31
36
|
}
|
|
32
37
|
}
|
|
33
38
|
if (!content)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getEntryMetadata.js","sourceRoot":"","sources":["../../../src/primitives/rendering/getEntryMetadata.ts"],"names":[],"mappings":";;AAqBA,
|
|
1
|
+
{"version":3,"file":"getEntryMetadata.js","sourceRoot":"","sources":["../../../src/primitives/rendering/getEntryMetadata.ts"],"names":[],"mappings":";;AAqBA,mCAmBC;AAxCD,+BAAuC;AAEvC,gEAAgE;AAChE,iDAAiD;AACjD,gLAAgL;AAChL,0FAA0F;AAC1F,IAAM,gBAAgB,GAAG,UAAC,GAAQ;IAC9B,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;QAC1B,IAAI,OAAO,GAAG,CAAC,GAAG,KAAK,QAAQ,EAAE,CAAC;YAC9B,IAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC9B,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACpB,OAAO,IAAI,CAAC;YAChB,CAAC;iBAAM,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,OAAO,GAAG,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;gBAC/D,OAAO,IAAI,CAAC;YAChB,CAAC;QACL,CAAC;IACL,CAAC;IACD,OAAO,KAAK,CAAC;AACjB,CAAC,CAAA;AAED,8DAA8D;AAC9D,SAAwB,gBAAgB,CAAC,KAAU;IAI/C,IAAI,OAAO,CAAC;IACZ,IAAI,QAAQ,CAAC;IACb,IAAI,KAAK,EAAE,CAAC;QACR,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YACvB,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACrB,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;YACvB,CAAC;iBAAM,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,IAAA,sBAAc,EAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,OAAO,KAAK,CAAC,CAAC,CAAC,KAAK,QAAQ,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBACxH,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;gBACnB,QAAQ,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;YACxB,CAAC;QACL,CAAC;IAEL,CAAC;IACD,IAAI,CAAC,OAAO;QAAE,OAAO,GAAG,KAAK,CAAC;IAC9B,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,UAAA,EAAE,CAAC;AACxC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GTProvider.d.ts","sourceRoot":"","sources":["../../../src/server/provider/GTProvider.tsx"],"names":[],"mappings":"AACA,OAAO,aAAa,CAAA;AAKpB,OAAO,iBAAiB,MAAM,gCAAgC,CAAC;AAkB/D,wBAA8B,UAAU,CAAC,EACrC,UAAU,EACV,MAAM,EAAE,aAAa,EACrB,QAAQ,EACR,WAAW,EACX,EAAK,EACL,GAAG,KAAK,EACX,EAAE;IACC,UAAU,EAAE,iBAAiB,CAAC;IAC9B,QAAQ,EAAE,GAAG,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,OAAO,CAAC;IACrB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACtB,GAAG,OAAO,CAAC,GAAG,CAAC,
|
|
1
|
+
{"version":3,"file":"GTProvider.d.ts","sourceRoot":"","sources":["../../../src/server/provider/GTProvider.tsx"],"names":[],"mappings":"AACA,OAAO,aAAa,CAAA;AAKpB,OAAO,iBAAiB,MAAM,gCAAgC,CAAC;AAkB/D,wBAA8B,UAAU,CAAC,EACrC,UAAU,EACV,MAAM,EAAE,aAAa,EACrB,QAAQ,EACR,WAAW,EACX,EAAK,EACL,GAAG,KAAK,EACX,EAAE;IACC,UAAU,EAAE,iBAAiB,CAAC;IAC9B,QAAQ,EAAE,GAAG,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,OAAO,CAAC;IACrB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACtB,GAAG,OAAO,CAAC,GAAG,CAAC,CAwIf"}
|
|
@@ -84,11 +84,11 @@ dictionary = {
|
|
|
84
84
|
*/
|
|
85
85
|
function GTProvider(_a) {
|
|
86
86
|
return __awaiter(this, void 0, void 0, function () {
|
|
87
|
-
var dictionary, providerID, entry, translations, renderSettings, clonedDictionary, _i, _b, id_1, _c, entry, metadata, translationType,
|
|
87
|
+
var dictionary, providerID, entry, translations, renderSettings, clonedDictionary, _i, _b, id_1, _c, entry, metadata, _d, translationType, isFunction, _e, ranges, zero, one, two, few, many, other, singular, dual, plural, tOptions, innerProps, taggedEntry, translationRequired, _f, local_1, remote_1;
|
|
88
88
|
var _this = this;
|
|
89
|
-
var I18NConfig = _a.I18NConfig, locale = _a.locale, defaultLocale = _a.defaultLocale, children = _a.children, shouldStore = _a.shouldStore,
|
|
90
|
-
return __generator(this, function (
|
|
91
|
-
switch (
|
|
89
|
+
var I18NConfig = _a.I18NConfig, locale = _a.locale, defaultLocale = _a.defaultLocale, children = _a.children, shouldStore = _a.shouldStore, _g = _a.id, id = _g === void 0 ? '' : _g, props = __rest(_a, ["I18NConfig", "locale", "defaultLocale", "children", "shouldStore", "id"]);
|
|
90
|
+
return __generator(this, function (_h) {
|
|
91
|
+
switch (_h.label) {
|
|
92
92
|
case 0:
|
|
93
93
|
dictionary = {};
|
|
94
94
|
providerID = id;
|
|
@@ -108,12 +108,15 @@ function GTProvider(_a) {
|
|
|
108
108
|
id_1 = _b[_i];
|
|
109
109
|
_c = (0, getEntryMetadata_1.default)(clonedDictionary[id_1]), entry = _c.entry, metadata = _c.metadata;
|
|
110
110
|
metadata = (props || metadata) ? __assign(__assign({}, props), (metadata || {})) : undefined;
|
|
111
|
-
|
|
111
|
+
_d = (0, getEntryTranslationType_1.default)(clonedDictionary[id_1]), translationType = _d.type, isFunction = _d.isFunction;
|
|
112
|
+
if (isFunction) {
|
|
113
|
+
entry = entry({});
|
|
114
|
+
}
|
|
112
115
|
if (translationType === "t") {
|
|
113
116
|
entry = (0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: entry });
|
|
114
117
|
}
|
|
115
118
|
else if (translationType === "plural") {
|
|
116
|
-
|
|
119
|
+
_e = metadata || {}, ranges = _e.ranges, zero = _e.zero, one = _e.one, two = _e.two, few = _e.few, many = _e.many, other = _e.other, singular = _e.singular, dual = _e.dual, plural = _e.plural, tOptions = __rest(_e, ["ranges", "zero", "one", "two", "few", "many", "other", "singular", "dual", "plural"]);
|
|
117
120
|
metadata = tOptions;
|
|
118
121
|
innerProps = {
|
|
119
122
|
ranges: ranges,
|
|
@@ -130,20 +133,17 @@ function GTProvider(_a) {
|
|
|
130
133
|
entry = ((0, jsx_runtime_1.jsx)(InnerPlural_1.default, __assign({ locales: [locale, defaultLocale], n: 1 }, innerProps, { children: entry })));
|
|
131
134
|
}
|
|
132
135
|
taggedEntry = (0, addGTIdentifier_1.default)(entry);
|
|
136
|
+
clonedDictionary[id_1] = [taggedEntry, metadata];
|
|
133
137
|
// change the dictionary here
|
|
134
138
|
// elsewhere we are changing the cloned dictionary
|
|
135
139
|
// we are just adding the gt identifier, nothing more
|
|
136
|
-
|
|
137
|
-
dictionary[id_1] = taggedEntry;
|
|
138
|
-
}
|
|
139
|
-
;
|
|
140
|
-
clonedDictionary[id_1] = [taggedEntry, metadata];
|
|
140
|
+
dictionary[id_1] = isFunction ? { function: true, defaultChildren: taggedEntry } : taggedEntry;
|
|
141
141
|
}
|
|
142
142
|
translationRequired = I18NConfig.translationRequired(locale);
|
|
143
143
|
if (!translationRequired) return [3 /*break*/, 3];
|
|
144
144
|
return [4 /*yield*/, I18NConfig.getTranslations(locale, props.dictionaryName)];
|
|
145
145
|
case 1:
|
|
146
|
-
|
|
146
|
+
_f = _h.sent(), local_1 = _f.local, remote_1 = _f.remote;
|
|
147
147
|
return [4 /*yield*/, Promise.all(Object.keys(clonedDictionary).map(function (id) { return __awaiter(_this, void 0, void 0, function () {
|
|
148
148
|
var _a, entry, metadata, translationType, entryAsObjects, key, _b, translation, translationPromise, _c, _d, targetPromise, renderMethod, _e, _f, loadingFallbackTarget, errorFallbackTarget;
|
|
149
149
|
return __generator(this, function (_g) {
|
|
@@ -214,8 +214,8 @@ function GTProvider(_a) {
|
|
|
214
214
|
});
|
|
215
215
|
}); }))];
|
|
216
216
|
case 2:
|
|
217
|
-
|
|
218
|
-
|
|
217
|
+
_h.sent();
|
|
218
|
+
_h.label = 3;
|
|
219
219
|
case 3: return [2 /*return*/, ((0, jsx_runtime_1.jsx)(ClientProvider_1.default, { locale: locale, defaultLocale: defaultLocale, dictionary: dictionary, translations: translations, translationRequired: translationRequired, children: children }))];
|
|
220
220
|
}
|
|
221
221
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GTProvider.js","sourceRoot":"","sources":["../../../src/server/provider/GTProvider.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAwBA,
|
|
1
|
+
{"version":3,"file":"GTProvider.js","sourceRoot":"","sources":["../../../src/server/provider/GTProvider.tsx"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/scratchpad.js
CHANGED
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
/*
|
|
2
2
|
|
|
3
|
+
FUTURE PROMPT
|
|
4
|
+
|
|
3
5
|
I want to add TypeScript IDE autocomplete to my internationalization library. How it works is a user defines a dictionary.
|
|
4
6
|
Keys in the dictionary are strings while items are one of:
|
|
5
7
|
- Nested dictionaries (to any degree of nesting)
|
|
6
8
|
- Strings, like "Hello, world"
|
|
7
9
|
- Arbitrary JSX, like <p>Hello, world</p>
|
|
8
|
-
-
|
|
10
|
+
- Arrays of length 2 where the first item is a string/JSX and the second item is a Record<string, any> containing metadata
|
|
9
11
|
|
|
10
12
|
For example:
|
|
11
13
|
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"checkTFunctionOptions.d.ts","sourceRoot":"","sources":["../../src/dictionary/checkTFunctionOptions.ts"],"names":[],"mappings":"AACA,MAAM,CAAC,OAAO,UAAU,qBAAqB,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,WAY1E"}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.default = checkTFunctionOptions;
|
|
4
|
-
// should check initial t function options (without added metadata from dictionary)
|
|
5
|
-
function checkTFunctionOptions(options) {
|
|
6
|
-
if (!options || !Object.keys(options).length)
|
|
7
|
-
return true;
|
|
8
|
-
if (["singular", "plural", "dual", "one", "two", "zero", "few", "many", "other"].some(function (key) {
|
|
9
|
-
if (options.hasOwnProperty(key)) {
|
|
10
|
-
console.warn("gt-react: It's bad practice to include \"".concat(key, "\" in your t() function, because the dictionary won't register it as a plural if there are no alternate forms. Try including \"").concat(key, "\" in your dictionary metadata instead. See https://docs.generaltranslation.com/essentials#plurals."));
|
|
11
|
-
return true;
|
|
12
|
-
}
|
|
13
|
-
return false;
|
|
14
|
-
}))
|
|
15
|
-
return false;
|
|
16
|
-
return true;
|
|
17
|
-
}
|
|
18
|
-
//# sourceMappingURL=checkTFunctionOptions.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"checkTFunctionOptions.js","sourceRoot":"","sources":["../../src/dictionary/checkTFunctionOptions.ts"],"names":[],"mappings":";;AACA,wCAYC;AAbD,mFAAmF;AACnF,SAAwB,qBAAqB,CAAC,OAA6B;IACvE,IAAI,CAAC,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IAC1D,IACI,CAAC,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,UAAA,GAAG;QACjF,IAAI,OAAO,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC;YAC9B,OAAO,CAAC,IAAI,CAAC,mDAA2C,GAAG,4IAAgI,GAAG,wGAAoG,CAAC,CAAA;YACnS,OAAO,IAAI,CAAC;QAChB,CAAC;QACD,OAAO,KAAK,CAAC;IACjB,CAAC,CAAC;QACJ,OAAO,KAAK,CAAC;IACf,OAAO,IAAI,CAAC;AAChB,CAAC"}
|