gt-next 1.3.15 → 2.0.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.
Files changed (71) hide show
  1. package/.prettierrc +14 -0
  2. package/dist/config/I18NConfiguration.d.ts +28 -18
  3. package/dist/config/I18NConfiguration.d.ts.map +1 -1
  4. package/dist/config/I18NConfiguration.js +109 -41
  5. package/dist/config/I18NConfiguration.js.map +1 -1
  6. package/dist/config/RemoteTranslationsManager.d.ts +2 -8
  7. package/dist/config/RemoteTranslationsManager.d.ts.map +1 -1
  8. package/dist/config/RemoteTranslationsManager.js +10 -18
  9. package/dist/config/RemoteTranslationsManager.js.map +1 -1
  10. package/dist/config.d.ts +2 -2
  11. package/dist/config.d.ts.map +1 -1
  12. package/dist/config.js +10 -5
  13. package/dist/config.js.map +1 -1
  14. package/dist/index.server.d.ts +2 -2
  15. package/dist/index.server.d.ts.map +1 -1
  16. package/dist/index.server.js +4 -3
  17. package/dist/index.server.js.map +1 -1
  18. package/dist/middleware/createNextMiddleware.d.ts +3 -2
  19. package/dist/middleware/createNextMiddleware.d.ts.map +1 -1
  20. package/dist/middleware/createNextMiddleware.js +41 -55
  21. package/dist/middleware/createNextMiddleware.js.map +1 -1
  22. package/dist/next/getNextLocale.d.ts.map +1 -1
  23. package/dist/next/getNextLocale.js +30 -17
  24. package/dist/next/getNextLocale.js.map +1 -1
  25. package/dist/primitives/defaultInitGTProps.js +4 -4
  26. package/dist/primitives/defaultInitGTProps.js.map +1 -1
  27. package/dist/provider/ClientProvider.d.ts +4 -3
  28. package/dist/provider/ClientProvider.d.ts.map +1 -1
  29. package/dist/provider/ClientProvider.js +39 -27
  30. package/dist/provider/ClientProvider.js.map +1 -1
  31. package/dist/provider/GTProvider.d.ts +3 -3
  32. package/dist/provider/GTProvider.d.ts.map +1 -1
  33. package/dist/provider/GTProvider.js +89 -80
  34. package/dist/provider/GTProvider.js.map +1 -1
  35. package/dist/provider/types.d.ts +18 -0
  36. package/dist/provider/types.d.ts.map +1 -0
  37. package/dist/provider/types.js +3 -0
  38. package/dist/provider/types.js.map +1 -0
  39. package/dist/request/getLocale.d.ts +1 -1
  40. package/dist/request/getLocale.d.ts.map +1 -1
  41. package/dist/request/getLocale.js +2 -4
  42. package/dist/request/getLocale.js.map +1 -1
  43. package/dist/server/createServerTFunction.js +4 -2
  44. package/dist/server/createServerTFunction.js.map +1 -1
  45. package/dist/server/getGT.d.ts +16 -1
  46. package/dist/server/getGT.d.ts.map +1 -1
  47. package/dist/server/getGT.js +99 -6
  48. package/dist/server/getGT.js.map +1 -1
  49. package/dist/server/inline/T.d.ts +4 -4
  50. package/dist/server/inline/T.d.ts.map +1 -1
  51. package/dist/server/inline/T.js +48 -39
  52. package/dist/server/inline/T.js.map +1 -1
  53. package/dist/server/rendering/renderDefaultChildren.d.ts +0 -7
  54. package/dist/server/rendering/renderDefaultChildren.d.ts.map +1 -1
  55. package/dist/server/rendering/renderDefaultChildren.js +88 -72
  56. package/dist/server/rendering/renderDefaultChildren.js.map +1 -1
  57. package/dist/server/rendering/renderTranslatedChildren.d.ts +0 -9
  58. package/dist/server/rendering/renderTranslatedChildren.d.ts.map +1 -1
  59. package/dist/server/rendering/renderTranslatedChildren.js +224 -160
  60. package/dist/server/rendering/renderTranslatedChildren.js.map +1 -1
  61. package/dist/server/strings/tx.d.ts +10 -8
  62. package/dist/server/strings/tx.d.ts.map +1 -1
  63. package/dist/server/strings/tx.js +37 -33
  64. package/dist/server/strings/tx.js.map +1 -1
  65. package/dist/variables/Currency.js +1 -1
  66. package/dist/variables/Currency.js.map +1 -1
  67. package/dist/variables/DateTime.js +1 -1
  68. package/dist/variables/DateTime.js.map +1 -1
  69. package/dist/variables/Num.js +1 -1
  70. package/dist/variables/Num.js.map +1 -1
  71. package/package.json +4 -3
@@ -52,16 +52,15 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
52
52
  Object.defineProperty(exports, "__esModule", { value: true });
53
53
  exports.default = T;
54
54
  var jsx_runtime_1 = require("react/jsx-runtime");
55
- var internal_1 = require("gt-react/internal");
56
55
  var getI18NConfig_1 = __importDefault(require("../../utils/getI18NConfig"));
57
56
  var getLocale_1 = __importDefault(require("../../request/getLocale"));
58
57
  var getMetadata_1 = __importDefault(require("../../request/getMetadata"));
59
58
  var react_1 = require("react");
60
- var renderTranslatedChildren_1 = __importDefault(require("../rendering/renderTranslatedChildren"));
61
- var renderDefaultChildren_1 = __importDefault(require("../rendering/renderDefaultChildren"));
62
59
  var Resolver_1 = __importDefault(require("./Resolver"));
60
+ var internal_1 = require("gt-react/internal");
61
+ var renderVariable_1 = __importDefault(require("../rendering/renderVariable"));
63
62
  /**
64
- * Translation component that renders its children translated into the user's language.
63
+ * Translation component that renders its children translated into the user's given locale.
65
64
  *
66
65
  * @example
67
66
  * ```jsx
@@ -75,7 +74,7 @@ var Resolver_1 = __importDefault(require("./Resolver"));
75
74
  * ```jsx
76
75
  * // Translating a plural
77
76
  * <T id="item_count">
78
- * <Plural n={3} singular={<>You have <Num value={n}/> item.}>
77
+ * <Plural n={3} singular={<>You have <Num value={n}/> item.</>}>
79
78
  * You have <Num value={n}/> items.
80
79
  * </Plural>
81
80
  * </T>
@@ -105,11 +104,11 @@ var Resolver_1 = __importDefault(require("./Resolver"));
105
104
  */
106
105
  function T(_a) {
107
106
  return __awaiter(this, arguments, void 0, function (_b) {
108
- var I18NConfig, locale, defaultLocale, translationRequired, translationsPromise, taggedChildren, childrenAsObjects, key, translations, translation, target, translationPromise, _c, _d, _e, promise, loadingFallback, errorFallback, error_1;
109
- var _f;
107
+ var I18NConfig, locale, defaultLocale, translationRequired, translationsPromise, taggedChildren, _c, childrenAsObjects, key, translations, translation, target, translationPromise, _d, _e, _f, promise, loadingFallback, errorFallback, error_1;
108
+ var _g;
110
109
  var children = _b.children, id = _b.id, context = _b.context, renderSettings = _b.renderSettings, variables = _b.variables, variablesOptions = _b.variablesOptions;
111
- return __generator(this, function (_g) {
112
- switch (_g.label) {
110
+ return __generator(this, function (_h) {
111
+ switch (_h.label) {
113
112
  case 0:
114
113
  if (!children) {
115
114
  return [2 /*return*/];
@@ -117,87 +116,97 @@ function T(_a) {
117
116
  I18NConfig = (0, getI18NConfig_1.default)();
118
117
  return [4 /*yield*/, (0, getLocale_1.default)()];
119
118
  case 1:
120
- locale = _g.sent();
119
+ locale = _h.sent();
121
120
  defaultLocale = I18NConfig.getDefaultLocale();
122
121
  translationRequired = I18NConfig.requiresTranslation(locale);
123
122
  if (translationRequired) {
124
123
  translationsPromise = I18NConfig.getTranslations(locale);
125
124
  }
126
- taggedChildren = (0, internal_1.addGTIdentifier)(children);
127
- childrenAsObjects = (0, internal_1.writeChildrenAsObjects)(taggedChildren);
125
+ taggedChildren = I18NConfig.addGTIdentifier(children, id);
126
+ // If no translation is required, render the default children
127
+ // The dictionary wraps text in this <T> component
128
+ // Thus, we need to also handle variables
128
129
  if (!translationRequired) {
129
- return [2 /*return*/, (0, renderDefaultChildren_1.default)({
130
+ return [2 /*return*/, (0, internal_1.renderDefaultChildren)({
130
131
  children: taggedChildren,
131
132
  variables: variables,
132
133
  variablesOptions: variablesOptions,
133
- defaultLocale: defaultLocale
134
+ defaultLocale: defaultLocale,
135
+ renderVariable: renderVariable_1.default
134
136
  })];
135
137
  }
136
- key = (0, internal_1.hashReactChildrenObjects)(context ? [childrenAsObjects, context] : childrenAsObjects);
138
+ _c = I18NConfig.serializeAndHash(taggedChildren, context, undefined // id is not provided here, to catch erroneous situations where the same id is being used for different <T> components
139
+ ), childrenAsObjects = _c[0], key = _c[1];
137
140
  return [4 /*yield*/, translationsPromise];
138
141
  case 2:
139
- translations = _g.sent();
140
- translation = translations === null || translations === void 0 ? void 0 : translations[id || key];
142
+ translations = _h.sent();
143
+ translation = id ? translations === null || translations === void 0 ? void 0 : translations[id] : undefined;
144
+ // checks if an appropriate translation exists
141
145
  if ((translation === null || translation === void 0 ? void 0 : translation.k) === key) {
142
146
  target = translation.t;
143
- return [2 /*return*/, (0, renderTranslatedChildren_1.default)({
147
+ return [2 /*return*/, (0, internal_1.renderTranslatedChildren)({
144
148
  source: taggedChildren,
145
149
  target: target,
146
150
  variables: variables,
147
151
  variablesOptions: variablesOptions,
148
- locales: [locale, defaultLocale]
152
+ locales: [locale, defaultLocale],
153
+ renderVariable: renderVariable_1.default
149
154
  })];
150
155
  }
151
156
  renderSettings || (renderSettings = I18NConfig.getRenderSettings());
152
- _d = (_c = I18NConfig).translateChildren;
153
- _f = {
157
+ _e = (_d = I18NConfig).translateChildren;
158
+ _g = {
154
159
  children: childrenAsObjects,
155
- targetLanguage: locale
160
+ targetLocale: locale
156
161
  };
157
- _e = [__assign(__assign({}, (id && { id: id })), { hash: key })];
162
+ _f = [__assign(__assign({}, (id && { id: id })), { hash: key })];
158
163
  return [4 /*yield*/, (0, getMetadata_1.default)()];
159
164
  case 3:
160
- translationPromise = _d.apply(_c, [(_f.metadata = __assign.apply(void 0, [__assign.apply(void 0, _e.concat([(_g.sent())])), (renderSettings.timeout && { timeout: renderSettings.timeout })]),
161
- _f)]);
165
+ translationPromise = _e.apply(_d, [(_g.metadata = __assign.apply(void 0, [__assign.apply(void 0, _f.concat([(_h.sent())])), (renderSettings.timeout && { timeout: renderSettings.timeout })]),
166
+ _g)]);
162
167
  promise = translationPromise.then(function (translation) {
163
168
  var target = translation;
164
- return (0, renderTranslatedChildren_1.default)({
169
+ return (0, internal_1.renderTranslatedChildren)({
165
170
  source: taggedChildren,
166
171
  target: target,
167
172
  variables: variables,
168
173
  variablesOptions: variablesOptions,
169
- locales: [locale, defaultLocale]
174
+ locales: [locale, defaultLocale],
175
+ renderVariable: renderVariable_1.default
170
176
  });
171
177
  });
172
- errorFallback = (0, renderDefaultChildren_1.default)({
178
+ errorFallback = (0, internal_1.renderDefaultChildren)({
173
179
  children: taggedChildren,
174
180
  variables: variables,
175
181
  variablesOptions: variablesOptions,
176
- defaultLocale: defaultLocale
182
+ defaultLocale: defaultLocale,
183
+ renderVariable: renderVariable_1.default
177
184
  });
178
- if (renderSettings.method === "replace") {
185
+ if (renderSettings.method === 'replace') {
179
186
  loadingFallback = errorFallback;
180
187
  }
181
- else if (renderSettings.method === "skeleton") {
182
- loadingFallback = (0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, {});
188
+ else if (renderSettings.method === 'skeleton') {
189
+ loadingFallback = (0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, {}); // blank
183
190
  }
184
- if (!(renderSettings.method === "hang")) return [3 /*break*/, 7];
185
- _g.label = 4;
191
+ if (!(renderSettings.method === 'hang')) return [3 /*break*/, 7];
192
+ _h.label = 4;
186
193
  case 4:
187
- _g.trys.push([4, 6, , 7]);
194
+ _h.trys.push([4, 6, , 7]);
188
195
  return [4 /*yield*/, promise];
189
- case 5: return [2 /*return*/, _g.sent()];
196
+ case 5: return [2 /*return*/, _h.sent()];
190
197
  case 6:
191
- error_1 = _g.sent();
198
+ error_1 = _h.sent();
192
199
  console.error(error_1);
193
200
  return [2 /*return*/, errorFallback];
194
201
  case 7:
195
- if (!["skeleton", "replace"].includes(renderSettings.method) && !id) {
196
- // If none of those, i.e. "subtle"
202
+ if (!['skeleton', 'replace'].includes(renderSettings.method) && !id) {
203
+ // If none of those, i.e. "subtle"
197
204
  // return the children, with no special rendering
198
205
  // a translation may be available from a cached translation dictionary next time the component is loaded
199
206
  return [2 /*return*/, errorFallback];
200
207
  }
208
+ // For skeleton & replace, return a suspense component so that
209
+ // something is shown while waiting for the translation
201
210
  return [2 /*return*/, ((0, jsx_runtime_1.jsx)(react_1.Suspense, { fallback: loadingFallback, children: (0, jsx_runtime_1.jsx)(Resolver_1.default, { children: promise, fallback: errorFallback }) }))];
202
211
  }
203
212
  });
@@ -1 +1 @@
1
- {"version":3,"file":"T.js","sourceRoot":"","sources":["../../../src/server/inline/T.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"T.js","sourceRoot":"","sources":["../../../src/server/inline/T.tsx"],"names":[],"mappings":"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"}
@@ -1,8 +1 @@
1
- import React, { ReactElement } from "react";
2
- export default function renderDefaultChildren({ children, variables, variablesOptions, defaultLocale }: {
3
- children: ReactElement;
4
- variables?: Record<string, any>;
5
- variablesOptions?: Record<string, any>;
6
- defaultLocale: string;
7
- }): React.ReactNode;
8
1
  //# sourceMappingURL=renderDefaultChildren.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"renderDefaultChildren.d.ts","sourceRoot":"","sources":["../../../src/server/rendering/renderDefaultChildren.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,YAAY,EAAa,MAAM,OAAO,CAAA;AAKtD,MAAM,CAAC,OAAO,UAAU,qBAAqB,CAAC,EAC1C,QAAQ,EACR,SAAc,EACd,gBAAqB,EACrB,aAA+C,EAClD,EAAE;IACC,QAAQ,EAAE,YAAY,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAC/B,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACvC,aAAa,EAAE,MAAM,CAAA;CACxB,mBAsDA"}
1
+ {"version":3,"file":"renderDefaultChildren.d.ts","sourceRoot":"","sources":["../../../src/server/rendering/renderDefaultChildren.tsx"],"names":[],"mappings":""}
@@ -1,75 +1,91 @@
1
1
  "use strict";
2
- var __assign = (this && this.__assign) || function () {
3
- __assign = Object.assign || function(t) {
4
- for (var s, i = 1, n = arguments.length; i < n; i++) {
5
- s = arguments[i];
6
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
- t[p] = s[p];
8
- }
9
- return t;
10
- };
11
- return __assign.apply(this, arguments);
12
- };
13
- var __rest = (this && this.__rest) || function (s, e) {
14
- var t = {};
15
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
16
- t[p] = s[p];
17
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
18
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
19
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
20
- t[p[i]] = s[p[i]];
21
- }
22
- return t;
23
- };
24
- var __importDefault = (this && this.__importDefault) || function (mod) {
25
- return (mod && mod.__esModule) ? mod : { "default": mod };
26
- };
27
- Object.defineProperty(exports, "__esModule", { value: true });
28
- exports.default = renderDefaultChildren;
29
- var react_1 = __importDefault(require("react"));
30
- var renderVariable_1 = __importDefault(require("./renderVariable"));
31
- var internal_1 = require("gt-react/internal");
32
- var internal_2 = require("gt-react/internal");
33
- function renderDefaultChildren(_a) {
34
- var children = _a.children, _b = _a.variables, variables = _b === void 0 ? {} : _b, _c = _a.variablesOptions, variablesOptions = _c === void 0 ? {} : _c, _d = _a.defaultLocale, defaultLocale = _d === void 0 ? internal_2.primitives.libraryDefaultLocale : _d;
35
- var handleSingleChild = function (child) {
36
- if (react_1.default.isValidElement(child)) {
37
- var _a = child.props, generaltranslation = _a["data-_gt"], props = __rest(_a, ['data-_gt']);
38
- if ((generaltranslation === null || generaltranslation === void 0 ? void 0 : generaltranslation.transformation) === "variable") {
39
- var _b = (0, internal_1.getVariableProps)(child.props), variableName = _b.variableName, variableType = _b.variableType, variableValue = _b.variableValue, variableOptions = _b.variableOptions; // needs both regular props and data-_gt
40
- variableValue = (typeof variables[variableName] !== 'undefined') ?
41
- variables[variableName] : variableValue;
42
- return (0, renderVariable_1.default)({
43
- variableName: variableName,
44
- variableType: variableType,
45
- variableValue: variableValue,
46
- variableOptions: __assign(__assign({}, variablesOptions[variableName]), variableOptions)
47
- });
48
- }
49
- if ((generaltranslation === null || generaltranslation === void 0 ? void 0 : generaltranslation.transformation) === "plural") {
50
- var n = typeof variables.n === 'number' ? variables.n :
51
- typeof props.n === 'number' ? props.n :
52
- props['data-_gt-n'];
53
- var branches = generaltranslation.branches || {};
54
- return handleChildren((0, internal_1.getPluralBranch)(n, [defaultLocale], branches) || child.props.children);
55
- }
56
- if ((generaltranslation === null || generaltranslation === void 0 ? void 0 : generaltranslation.transformation) === "branch") {
57
- var children_1 = props.children, name_1 = props.name, branch = props.branch, _gt = props["data-_gt"], branches = __rest(props, ["children", "name", "branch", 'data-_gt']);
58
- name_1 = name_1 || props['data-_gt-name'] || "branch";
59
- branch = variables[name_1] || branch || child.props['data-_gt-branch-name'];
60
- branches = generaltranslation.branches || {};
61
- return handleChildren(branches[branch] !== undefined ? branches[branch] : children_1);
62
- }
63
- if (child.props.children) {
64
- return react_1.default.cloneElement(child, __assign(__assign({}, props), { 'data-_gt': undefined, children: handleChildren(child.props.children) }));
65
- }
66
- return react_1.default.cloneElement(child, __assign(__assign({}, props), { 'data-_gt': undefined }));
67
- }
68
- return child;
69
- };
70
- var handleChildren = function (children) {
71
- return Array.isArray(children) ? react_1.default.Children.map(children, handleSingleChild) : handleSingleChild(children);
72
- };
73
- return handleChildren(children);
2
+ /*import React, { ReactElement, ReactNode } from 'react';
3
+ import renderVariable from './renderVariable';
4
+ import { getFallbackVariableName, getPluralBranch, getVariableProps } from 'gt-react/internal';
5
+ import { libraryDefaultLocale } from 'generaltranslation/internal';
6
+
7
+ // Renders the children in the default locale, as they are supplied
8
+ // with variables substituted (for use by the dictionary)
9
+ export default function renderDefaultChildren({
10
+ children,
11
+ variables = {},
12
+ variablesOptions = {},
13
+ defaultLocale = libraryDefaultLocale,
14
+ }: {
15
+ children: ReactElement;
16
+ variables?: Record<string, any>;
17
+ variablesOptions?: Record<string, any>;
18
+ defaultLocale: string;
19
+ }) {
20
+ const handleSingleChild = (child: ReactNode) => {
21
+ if (React.isValidElement(child)) {
22
+ const { 'data-_gt': generaltranslation, ...props } = child.props;
23
+ if (generaltranslation?.transformation === 'variable') {
24
+ let {
25
+ variableName,
26
+ variableType,
27
+ variableValue,
28
+ variableOptions
29
+ } = getVariableProps(child.props);
30
+ variableValue = (() => {
31
+ if (typeof variables[variableName] !== 'undefined') {
32
+ return variables[variableName]
33
+ }
34
+ const fallbackVariableName = getFallbackVariableName(variableType);
35
+ if (typeof variables[fallbackVariableName] !== 'undefined') {
36
+ return variables[fallbackVariableName];
37
+ }
38
+ return undefined;
39
+ })();
40
+ variableOptions = {
41
+ ...variablesOptions[variableName],
42
+ ...variableOptions
43
+ } as Intl.NumberFormatOptions | Intl.DateTimeFormatOptions;
44
+ return renderVariable({
45
+ variableName, variableType, variableValue, variableOptions
46
+ })
47
+ }
48
+ if (generaltranslation?.transformation === 'plural') {
49
+ const n =
50
+ typeof variables.n === 'number'
51
+ ? variables.n
52
+ : typeof props.n === 'number'
53
+ ? props.n
54
+ : props['data-_gt-n'];
55
+ const branches = generaltranslation.branches || {};
56
+ return handleChildren(
57
+ getPluralBranch(n, [defaultLocale], branches) || child.props.children
58
+ );
59
+ }
60
+ if (generaltranslation?.transformation === 'branch') {
61
+ let { children, name, branch, 'data-_gt': _gt, ...branches } = props;
62
+ name = name || props['data-_gt-name'] || 'branch';
63
+ branch =
64
+ variables[name] || branch || child.props['data-_gt-branch-name'];
65
+ branches = generaltranslation.branches || {};
66
+ return handleChildren(
67
+ branches[branch] !== undefined ? branches[branch] : children
68
+ );
69
+ }
70
+ if (child.props.children) {
71
+ return React.cloneElement(child, {
72
+ ...props,
73
+ 'data-_gt': undefined,
74
+ children: handleChildren(child.props.children),
75
+ });
76
+ }
77
+ return React.cloneElement(child, { ...props, 'data-_gt': undefined });
78
+ }
79
+ return child;
80
+ };
81
+
82
+ const handleChildren = (children: ReactNode): ReactNode => {
83
+ return Array.isArray(children)
84
+ ? React.Children.map(children, handleSingleChild)
85
+ : handleSingleChild(children);
86
+ };
87
+
88
+ return handleChildren(children);
74
89
  }
90
+ */
75
91
  //# sourceMappingURL=renderDefaultChildren.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"renderDefaultChildren.js","sourceRoot":"","sources":["../../../src/server/rendering/renderDefaultChildren.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"renderDefaultChildren.js","sourceRoot":"","sources":["../../../src/server/rendering/renderDefaultChildren.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAwFE"}
@@ -1,10 +1 @@
1
- import { ReactNode } from "react";
2
- import { TranslatedChildren } from "gt-react/dist/primitives/types";
3
- export default function renderTranslatedChildren({ source, target, variables, variablesOptions, locales }: {
4
- source: ReactNode;
5
- target: TranslatedChildren;
6
- variables?: Record<string, any>;
7
- variablesOptions?: Record<string, any>;
8
- locales: string[];
9
- }): ReactNode;
10
1
  //# sourceMappingURL=renderTranslatedChildren.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"renderTranslatedChildren.d.ts","sourceRoot":"","sources":["../../../src/server/rendering/renderTranslatedChildren.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAgB,SAAS,EAAE,MAAM,OAAO,CAAC;AACvD,OAAO,EAAE,kBAAkB,EAAqC,MAAM,gCAAgC,CAAC;AAqEvG,MAAM,CAAC,OAAO,UAAU,wBAAwB,CAAC,EAC7C,MAAM,EAAE,MAAM,EACd,SAAc,EAAE,gBAAqB,EACrC,OAA2C,EAC9C,EAAE;IACC,MAAM,EAAE,SAAS,CAAC;IAClB,MAAM,EAAE,kBAAkB,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAChC,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACvC,OAAO,EAAE,MAAM,EAAE,CAAA;CACpB,GAAG,SAAS,CA2GZ"}
1
+ {"version":3,"file":"renderTranslatedChildren.d.ts","sourceRoot":"","sources":["../../../src/server/rendering/renderTranslatedChildren.tsx"],"names":[],"mappings":""}