@magic-translate/react 1.2.5 → 1.4.0
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/CHANGELOG.md +15 -0
- package/dist/api/data-loader.d.ts +9 -4
- package/dist/api/data-loader.d.ts.map +1 -1
- package/dist/api/data-loader.js +32 -16
- package/dist/api/data-loader.js.map +1 -1
- package/dist/components/Translate.js +3 -3
- package/dist/components/Translate.js.map +1 -1
- package/dist/components/Translate.test.js +154 -29
- package/dist/components/Translate.test.js.map +1 -1
- package/dist/context/MagicTranslateContext.d.ts +7 -2
- package/dist/context/MagicTranslateContext.d.ts.map +1 -1
- package/dist/context/MagicTranslateContext.js +17 -6
- package/dist/context/MagicTranslateContext.js.map +1 -1
- package/dist/domain/language.d.ts +78 -0
- package/dist/domain/language.d.ts.map +1 -0
- package/dist/domain/language.js +79 -0
- package/dist/domain/language.js.map +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.es.js +1 -1
- package/dist/index.es.js.map +1 -1
- package/dist/index.js +2 -6
- package/dist/index.js.map +1 -1
- package/dist/index.min.js +1 -1
- package/dist/index.min.js.map +1 -1
- package/dist/utils/uts-locale-to-language.d.ts +3 -0
- package/dist/utils/uts-locale-to-language.d.ts.map +1 -0
- package/dist/utils/uts-locale-to-language.js +21 -0
- package/dist/utils/uts-locale-to-language.js.map +1 -0
- package/dist/utils/uts-locale-to-language.test.d.ts +2 -0
- package/dist/utils/uts-locale-to-language.test.d.ts.map +1 -0
- package/dist/utils/uts-locale-to-language.test.js +37 -0
- package/dist/utils/uts-locale-to-language.test.js.map +1 -0
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,20 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [1.4.0](https://github.com/omnibrain/magic-translate-react/compare/v1.3.0...v1.4.0) (2023-01-05)
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
### Features
|
|
7
|
+
|
|
8
|
+
* add util function to map from UTS locale to language ([8f67a16](https://github.com/omnibrain/magic-translate-react/commit/8f67a16ac6c06dd22f70c80cf627dfdb8a60f192))
|
|
9
|
+
|
|
10
|
+
## [1.3.0](https://github.com/omnibrain/magic-translate-react/compare/v1.2.5...v1.3.0) (2023-01-04)
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
### Features
|
|
14
|
+
|
|
15
|
+
* change api to pass a loader factory ([945b6bb](https://github.com/omnibrain/magic-translate-react/commit/945b6bb248ba914e580338d39945b0290cc99005))
|
|
16
|
+
* introduce api key ([e1cc81b](https://github.com/omnibrain/magic-translate-react/commit/e1cc81be5b286e206d43f279b9649202fc6144fa))
|
|
17
|
+
|
|
3
18
|
## [1.2.5](https://github.com/omnibrain/magic-translate-react/compare/v1.2.4...v1.2.5) (2022-12-21)
|
|
4
19
|
|
|
5
20
|
|
|
@@ -1,9 +1,14 @@
|
|
|
1
|
-
|
|
2
|
-
EN = "en"
|
|
3
|
-
}
|
|
1
|
+
import { Language } from '../domain/language';
|
|
4
2
|
export interface DataLoaderLoadParams {
|
|
5
3
|
content: string;
|
|
4
|
+
}
|
|
5
|
+
export interface DataLoaderOptions {
|
|
6
|
+
debug?: boolean;
|
|
7
|
+
apiUrl?: string;
|
|
6
8
|
lang: Language;
|
|
9
|
+
sourceLang: Language;
|
|
10
|
+
apiKey: string;
|
|
7
11
|
}
|
|
8
|
-
export declare
|
|
12
|
+
export declare const defaultDataLoaderOptions: Omit<DataLoaderOptions, 'apiKey'>;
|
|
13
|
+
export declare const defaultLoaderFactory: (options: DataLoaderOptions) => (content: readonly DataLoaderLoadParams[]) => Promise<any>;
|
|
9
14
|
//# sourceMappingURL=data-loader.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data-loader.d.ts","sourceRoot":"","sources":["../../src/api/data-loader.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"data-loader.d.ts","sourceRoot":"","sources":["../../src/api/data-loader.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAI9C,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,iBAAiB;IAChC,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,QAAQ,CAAC;IACf,UAAU,EAAE,QAAQ,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,eAAO,MAAM,wBAAwB,EAAE,IAAI,CAAC,iBAAiB,EAAE,QAAQ,CAKtE,CAAC;AAEF,eAAO,MAAM,oBAAoB,YACrB,iBAAiB,eACX,SAAS,oBAAoB,EAAE,iBAwB9C,CAAC"}
|
package/dist/api/data-loader.js
CHANGED
|
@@ -34,23 +34,39 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
|
34
34
|
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
35
35
|
}
|
|
36
36
|
};
|
|
37
|
+
import { libraryName } from './../constants';
|
|
38
|
+
import { Language } from '../domain/language';
|
|
37
39
|
var sleep = function (ms) { return new Promise(function (resolve) { return setTimeout(resolve, ms); }); };
|
|
38
|
-
export var
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
return [2 /*return*/, content.map(function (item) { return "Translated-> ".concat(item.content); })];
|
|
40
|
+
export var defaultDataLoaderOptions = {
|
|
41
|
+
debug: false,
|
|
42
|
+
apiUrl: 'https://qgp5nvh3j1.execute-api.eu-central-1.amazonaws.com/1',
|
|
43
|
+
lang: Language.DE,
|
|
44
|
+
sourceLang: Language.EN,
|
|
45
|
+
};
|
|
46
|
+
export var defaultLoaderFactory = function (options) {
|
|
47
|
+
return function (content) { return __awaiter(void 0, void 0, void 0, function () {
|
|
48
|
+
var body;
|
|
49
|
+
var _a;
|
|
50
|
+
return __generator(this, function (_b) {
|
|
51
|
+
if (options.debug) {
|
|
52
|
+
console.debug("[".concat(libraryName, "]: batch function called with: "), content);
|
|
52
53
|
}
|
|
54
|
+
body = JSON.stringify({
|
|
55
|
+
sourceLang: options.sourceLang,
|
|
56
|
+
lang: options.lang,
|
|
57
|
+
items: content.map(function (item) { return item.content; }),
|
|
58
|
+
apiKey: options.apiKey,
|
|
59
|
+
});
|
|
60
|
+
return [2 /*return*/, fetch("".concat((_a = options.apiUrl) !== null && _a !== void 0 ? _a : defaultDataLoaderOptions.apiUrl, "/v1/translate"), {
|
|
61
|
+
method: 'POST',
|
|
62
|
+
body: body,
|
|
63
|
+
headers: {
|
|
64
|
+
'Content-Type': 'application/json',
|
|
65
|
+
},
|
|
66
|
+
})
|
|
67
|
+
.then(function (res) { return res.json(); })
|
|
68
|
+
.then(function (data) { return data.results; })];
|
|
53
69
|
});
|
|
54
|
-
});
|
|
55
|
-
}
|
|
70
|
+
}); };
|
|
71
|
+
};
|
|
56
72
|
//# sourceMappingURL=data-loader.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data-loader.js","sourceRoot":"","sources":["../../src/api/data-loader.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAM,KAAK,GAAG,UAAC,EAAU,IAAK,OAAA,IAAI,OAAO,CAAC,UAAC,OAAO,IAAK,OAAA,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,EAAvB,CAAuB,CAAC,EAAjD,CAAiD,CAAC;
|
|
1
|
+
{"version":3,"file":"data-loader.js","sourceRoot":"","sources":["../../src/api/data-loader.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAE9C,IAAM,KAAK,GAAG,UAAC,EAAU,IAAK,OAAA,IAAI,OAAO,CAAC,UAAC,OAAO,IAAK,OAAA,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,EAAvB,CAAuB,CAAC,EAAjD,CAAiD,CAAC;AAchF,MAAM,CAAC,IAAM,wBAAwB,GAAsC;IACzE,KAAK,EAAE,KAAK;IACZ,MAAM,EAAE,6DAA6D;IACrE,IAAI,EAAE,QAAQ,CAAC,EAAE;IACjB,UAAU,EAAE,QAAQ,CAAC,EAAE;CACxB,CAAC;AAEF,MAAM,CAAC,IAAM,oBAAoB,GAC/B,UAAC,OAA0B;IAC3B,OAAA,UAAO,OAAwC;;;;YAC7C,IAAI,OAAO,CAAC,KAAK,EAAE;gBACjB,OAAO,CAAC,KAAK,CAAC,WAAI,WAAW,oCAAiC,EAAE,OAAO,CAAC,CAAC;aAC1E;YAEK,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC;gBAC1B,UAAU,EAAE,OAAO,CAAC,UAAU;gBAC9B,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,UAAC,IAAI,IAAK,OAAA,IAAI,CAAC,OAAO,EAAZ,CAAY,CAAC;gBAC1C,MAAM,EAAE,OAAO,CAAC,MAAM;aACvB,CAAC,CAAC;YAEH,sBAAO,KAAK,CACV,UAAG,MAAA,OAAO,CAAC,MAAM,mCAAI,wBAAwB,CAAC,MAAM,kBAAe,EACnE;oBACE,MAAM,EAAE,MAAM;oBACd,IAAI,MAAA;oBACJ,OAAO,EAAE;wBACP,cAAc,EAAE,kBAAkB;qBACnC;iBACF,CACF;qBACE,IAAI,CAAC,UAAC,GAAG,IAAK,OAAA,GAAG,CAAC,IAAI,EAAE,EAAV,CAAU,CAAC;qBACzB,IAAI,CAAC,UAAC,IAAI,IAAK,OAAA,IAAI,CAAC,OAAO,EAAZ,CAAY,CAAC,EAAC;;SACjC;AAxBD,CAwBC,CAAC"}
|
|
@@ -14,10 +14,10 @@ var assertChildIsNotAReactComponent = function (child) {
|
|
|
14
14
|
};
|
|
15
15
|
export var Translate = function (_a) {
|
|
16
16
|
var children = _a.children;
|
|
17
|
-
var _b = useMagicTranslate(), dataLoader = _b.dataLoader, language = _b.language;
|
|
17
|
+
var _b = useMagicTranslate(), dataLoader = _b.dataLoader, language = _b.language, sourceLanguage = _b.sourceLanguage;
|
|
18
18
|
var _c = useState(null), translation = _c[0], setTranslation = _c[1];
|
|
19
19
|
var translate = useCallback(function (toTranslate) {
|
|
20
|
-
dataLoader.load({ content: toTranslate
|
|
20
|
+
dataLoader.load({ content: toTranslate }).then(function (t) {
|
|
21
21
|
setTranslation(t);
|
|
22
22
|
});
|
|
23
23
|
}, [dataLoader]);
|
|
@@ -60,7 +60,7 @@ export var Translate = function (_a) {
|
|
|
60
60
|
});
|
|
61
61
|
translate(renderToString(React.createElement(React.Fragment, null, children)));
|
|
62
62
|
}
|
|
63
|
-
}, [children]);
|
|
63
|
+
}, [children, language]);
|
|
64
64
|
return React.createElement(React.Fragment, null, translation ? parse(translation) : children);
|
|
65
65
|
};
|
|
66
66
|
export var T = Translate;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Translate.js","sourceRoot":"","sources":["../../src/components/Translate.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,mBAAmB,CAAC;AACtC,OAAO,KAAK,EAAE,EAEZ,WAAW,EACX,SAAS,EACT,QAAQ,GACT,MAAM,OAAO,CAAC;AACf,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AAKjE,IAAM,+BAA+B,GAAG,UACtC,KAGqB;IAErB,IAAI,MAAM,IAAI,KAAK,IAAI,OAAO,KAAK,CAAC,IAAI,KAAK,UAAU,EAAE;QACvD,IAAI,QAAQ,GACV,kEAAkE,CAAC;QACrE,IAAI,aAAa,IAAI,KAAK,CAAC,IAAI,EAAE;YAC/B,QAAQ,IAAI,yDACT,KAAK,CAAC,IAAgC,CAAC,WAAW,MAClD,CAAC;SACL;QACD,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,CAAC;KAC3B;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,IAAM,SAAS,GAElB,UAAC,EAAY;QAAV,QAAQ,cAAA;IACP,IAAA,
|
|
1
|
+
{"version":3,"file":"Translate.js","sourceRoot":"","sources":["../../src/components/Translate.tsx"],"names":[],"mappings":"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"}
|
|
@@ -34,25 +34,26 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
|
34
34
|
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
35
35
|
}
|
|
36
36
|
};
|
|
37
|
-
import { render, waitFor } from '@testing-library/react';
|
|
37
|
+
import { act, render, waitFor } from '@testing-library/react';
|
|
38
38
|
import { MagicTranslateProvider } from '../context/MagicTranslateContext';
|
|
39
39
|
import React, { useState } from 'react';
|
|
40
40
|
import { T } from './Translate';
|
|
41
|
-
import { Language } from '../
|
|
41
|
+
import { Language } from '../domain/language';
|
|
42
42
|
var tick = function () { return new Promise(function (resolve) { return setTimeout(resolve); }); };
|
|
43
43
|
var ExampleComponent = function () { return React.createElement(React.Fragment, null, "Some component"); };
|
|
44
44
|
ExampleComponent.displayName = 'ExampleComponent';
|
|
45
45
|
describe('Translate', function () {
|
|
46
|
-
var lang = Language.
|
|
46
|
+
var lang = Language.DE;
|
|
47
|
+
var sourceLang = Language.EN;
|
|
47
48
|
var mockFn = jest.fn();
|
|
48
|
-
var loader = function (content) {
|
|
49
|
+
var loader = function () { return function (content) {
|
|
49
50
|
// for some reason when using the mock directly the mock is not called. This is a workaround
|
|
50
51
|
mockFn(content);
|
|
51
52
|
return Promise.resolve(content.map(function (item) { return "Translated: ".concat(item.content); }));
|
|
52
|
-
};
|
|
53
|
+
}; };
|
|
53
54
|
var Wrapper = function (_a) {
|
|
54
55
|
var children = _a.children;
|
|
55
|
-
return (React.createElement(MagicTranslateProvider, {
|
|
56
|
+
return (React.createElement(MagicTranslateProvider, { loaderFactory: loader, language: lang, sourceLanguage: sourceLang, apiKey: "test-api-key" }, children));
|
|
56
57
|
};
|
|
57
58
|
afterEach(function () {
|
|
58
59
|
mockFn.mockReset();
|
|
@@ -65,11 +66,20 @@ describe('Translate', function () {
|
|
|
65
66
|
render(React.createElement(Wrapper, null,
|
|
66
67
|
React.createElement("button", null,
|
|
67
68
|
React.createElement(T, null, "test"))));
|
|
68
|
-
return [4 /*yield*/,
|
|
69
|
+
return [4 /*yield*/, act(function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
70
|
+
return __generator(this, function (_a) {
|
|
71
|
+
switch (_a.label) {
|
|
72
|
+
case 0: return [4 /*yield*/, tick()];
|
|
73
|
+
case 1:
|
|
74
|
+
_a.sent();
|
|
75
|
+
return [2 /*return*/];
|
|
76
|
+
}
|
|
77
|
+
});
|
|
78
|
+
}); })];
|
|
69
79
|
case 1:
|
|
70
80
|
_a.sent();
|
|
71
81
|
// then
|
|
72
|
-
expect(mockFn).toHaveBeenCalledWith([{ content: 'test'
|
|
82
|
+
expect(mockFn).toHaveBeenCalledWith([{ content: 'test' }]);
|
|
73
83
|
return [2 /*return*/];
|
|
74
84
|
}
|
|
75
85
|
});
|
|
@@ -83,13 +93,22 @@ describe('Translate', function () {
|
|
|
83
93
|
React.createElement("button", null,
|
|
84
94
|
React.createElement(T, null, "test1"),
|
|
85
95
|
React.createElement(T, null, "test2"))));
|
|
86
|
-
return [4 /*yield*/,
|
|
96
|
+
return [4 /*yield*/, act(function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
97
|
+
return __generator(this, function (_a) {
|
|
98
|
+
switch (_a.label) {
|
|
99
|
+
case 0: return [4 /*yield*/, tick()];
|
|
100
|
+
case 1:
|
|
101
|
+
_a.sent();
|
|
102
|
+
return [2 /*return*/];
|
|
103
|
+
}
|
|
104
|
+
});
|
|
105
|
+
}); })];
|
|
87
106
|
case 1:
|
|
88
107
|
_a.sent();
|
|
89
108
|
// then
|
|
90
109
|
expect(mockFn).toHaveBeenCalledWith([
|
|
91
|
-
{ content: 'test1'
|
|
92
|
-
{ content: 'test2'
|
|
110
|
+
{ content: 'test1' },
|
|
111
|
+
{ content: 'test2' },
|
|
93
112
|
]);
|
|
94
113
|
return [2 /*return*/];
|
|
95
114
|
}
|
|
@@ -103,13 +122,20 @@ describe('Translate', function () {
|
|
|
103
122
|
render(React.createElement(Wrapper, null,
|
|
104
123
|
React.createElement(T, null,
|
|
105
124
|
React.createElement("button", null, "test"))));
|
|
106
|
-
return [4 /*yield*/,
|
|
125
|
+
return [4 /*yield*/, act(function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
126
|
+
return __generator(this, function (_a) {
|
|
127
|
+
switch (_a.label) {
|
|
128
|
+
case 0: return [4 /*yield*/, tick()];
|
|
129
|
+
case 1:
|
|
130
|
+
_a.sent();
|
|
131
|
+
return [2 /*return*/];
|
|
132
|
+
}
|
|
133
|
+
});
|
|
134
|
+
}); })];
|
|
107
135
|
case 1:
|
|
108
136
|
_a.sent();
|
|
109
137
|
// then
|
|
110
|
-
expect(mockFn).toHaveBeenCalledWith([
|
|
111
|
-
{ content: '<button>test</button>', lang: lang },
|
|
112
|
-
]);
|
|
138
|
+
expect(mockFn).toHaveBeenCalledWith([{ content: '<button>test</button>' }]);
|
|
113
139
|
return [2 /*return*/];
|
|
114
140
|
}
|
|
115
141
|
});
|
|
@@ -123,12 +149,21 @@ describe('Translate', function () {
|
|
|
123
149
|
React.createElement(T, null,
|
|
124
150
|
React.createElement("span", null, "span1"),
|
|
125
151
|
React.createElement("span", null, "span2"))));
|
|
126
|
-
return [4 /*yield*/,
|
|
152
|
+
return [4 /*yield*/, act(function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
153
|
+
return __generator(this, function (_a) {
|
|
154
|
+
switch (_a.label) {
|
|
155
|
+
case 0: return [4 /*yield*/, tick()];
|
|
156
|
+
case 1:
|
|
157
|
+
_a.sent();
|
|
158
|
+
return [2 /*return*/];
|
|
159
|
+
}
|
|
160
|
+
});
|
|
161
|
+
}); })];
|
|
127
162
|
case 1:
|
|
128
163
|
_a.sent();
|
|
129
164
|
// then
|
|
130
165
|
expect(mockFn).toHaveBeenCalledWith([
|
|
131
|
-
{ content: '<span>span1</span><span>span2</span>'
|
|
166
|
+
{ content: '<span>span1</span><span>span2</span>' },
|
|
132
167
|
]);
|
|
133
168
|
return [2 /*return*/];
|
|
134
169
|
}
|
|
@@ -141,7 +176,16 @@ describe('Translate', function () {
|
|
|
141
176
|
// given
|
|
142
177
|
render(React.createElement(Wrapper, null,
|
|
143
178
|
React.createElement(T, null, 1)));
|
|
144
|
-
return [4 /*yield*/,
|
|
179
|
+
return [4 /*yield*/, act(function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
180
|
+
return __generator(this, function (_a) {
|
|
181
|
+
switch (_a.label) {
|
|
182
|
+
case 0: return [4 /*yield*/, tick()];
|
|
183
|
+
case 1:
|
|
184
|
+
_a.sent();
|
|
185
|
+
return [2 /*return*/];
|
|
186
|
+
}
|
|
187
|
+
});
|
|
188
|
+
}); })];
|
|
145
189
|
case 1:
|
|
146
190
|
_a.sent();
|
|
147
191
|
// then
|
|
@@ -157,7 +201,16 @@ describe('Translate', function () {
|
|
|
157
201
|
// given
|
|
158
202
|
render(React.createElement(Wrapper, null,
|
|
159
203
|
React.createElement(T, null, true)));
|
|
160
|
-
return [4 /*yield*/,
|
|
204
|
+
return [4 /*yield*/, act(function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
205
|
+
return __generator(this, function (_a) {
|
|
206
|
+
switch (_a.label) {
|
|
207
|
+
case 0: return [4 /*yield*/, tick()];
|
|
208
|
+
case 1:
|
|
209
|
+
_a.sent();
|
|
210
|
+
return [2 /*return*/];
|
|
211
|
+
}
|
|
212
|
+
});
|
|
213
|
+
}); })];
|
|
161
214
|
case 1:
|
|
162
215
|
_a.sent();
|
|
163
216
|
// then
|
|
@@ -173,7 +226,16 @@ describe('Translate', function () {
|
|
|
173
226
|
// given
|
|
174
227
|
render(React.createElement(Wrapper, null,
|
|
175
228
|
React.createElement(T, null)));
|
|
176
|
-
return [4 /*yield*/,
|
|
229
|
+
return [4 /*yield*/, act(function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
230
|
+
return __generator(this, function (_a) {
|
|
231
|
+
switch (_a.label) {
|
|
232
|
+
case 0: return [4 /*yield*/, tick()];
|
|
233
|
+
case 1:
|
|
234
|
+
_a.sent();
|
|
235
|
+
return [2 /*return*/];
|
|
236
|
+
}
|
|
237
|
+
});
|
|
238
|
+
}); })];
|
|
177
239
|
case 1:
|
|
178
240
|
_a.sent();
|
|
179
241
|
// then
|
|
@@ -195,7 +257,16 @@ describe('Translate', function () {
|
|
|
195
257
|
catch (err) {
|
|
196
258
|
expect(err.message).toContain('ExampleComponent');
|
|
197
259
|
}
|
|
198
|
-
return [4 /*yield*/,
|
|
260
|
+
return [4 /*yield*/, act(function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
261
|
+
return __generator(this, function (_a) {
|
|
262
|
+
switch (_a.label) {
|
|
263
|
+
case 0: return [4 /*yield*/, tick()];
|
|
264
|
+
case 1:
|
|
265
|
+
_a.sent();
|
|
266
|
+
return [2 /*return*/];
|
|
267
|
+
}
|
|
268
|
+
});
|
|
269
|
+
}); })];
|
|
199
270
|
case 1:
|
|
200
271
|
_a.sent();
|
|
201
272
|
// then
|
|
@@ -218,7 +289,16 @@ describe('Translate', function () {
|
|
|
218
289
|
catch (err) {
|
|
219
290
|
expect(err.message).toContain('ExampleComponent');
|
|
220
291
|
}
|
|
221
|
-
return [4 /*yield*/,
|
|
292
|
+
return [4 /*yield*/, act(function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
293
|
+
return __generator(this, function (_a) {
|
|
294
|
+
switch (_a.label) {
|
|
295
|
+
case 0: return [4 /*yield*/, tick()];
|
|
296
|
+
case 1:
|
|
297
|
+
_a.sent();
|
|
298
|
+
return [2 /*return*/];
|
|
299
|
+
}
|
|
300
|
+
});
|
|
301
|
+
}); })];
|
|
222
302
|
case 1:
|
|
223
303
|
_a.sent();
|
|
224
304
|
// then
|
|
@@ -235,7 +315,16 @@ describe('Translate', function () {
|
|
|
235
315
|
getByRole = render(React.createElement(Wrapper, null,
|
|
236
316
|
React.createElement("button", null,
|
|
237
317
|
React.createElement(T, null, "test")))).getByRole;
|
|
238
|
-
return [4 /*yield*/,
|
|
318
|
+
return [4 /*yield*/, act(function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
319
|
+
return __generator(this, function (_a) {
|
|
320
|
+
switch (_a.label) {
|
|
321
|
+
case 0: return [4 /*yield*/, tick()];
|
|
322
|
+
case 1:
|
|
323
|
+
_a.sent();
|
|
324
|
+
return [2 /*return*/];
|
|
325
|
+
}
|
|
326
|
+
});
|
|
327
|
+
}); })];
|
|
239
328
|
case 1:
|
|
240
329
|
_a.sent();
|
|
241
330
|
// then
|
|
@@ -258,7 +347,16 @@ describe('Translate', function () {
|
|
|
258
347
|
React.createElement("div", { "data-testid": "wrapper" },
|
|
259
348
|
React.createElement(T, null,
|
|
260
349
|
React.createElement("span", null, "test"))))).getByTestId;
|
|
261
|
-
return [4 /*yield*/,
|
|
350
|
+
return [4 /*yield*/, act(function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
351
|
+
return __generator(this, function (_a) {
|
|
352
|
+
switch (_a.label) {
|
|
353
|
+
case 0: return [4 /*yield*/, tick()];
|
|
354
|
+
case 1:
|
|
355
|
+
_a.sent();
|
|
356
|
+
return [2 /*return*/];
|
|
357
|
+
}
|
|
358
|
+
});
|
|
359
|
+
}); })];
|
|
262
360
|
case 1:
|
|
263
361
|
_a.sent();
|
|
264
362
|
// then
|
|
@@ -288,11 +386,20 @@ describe('Translate', function () {
|
|
|
288
386
|
case 0:
|
|
289
387
|
_a = render(React.createElement(Wrapper, null,
|
|
290
388
|
React.createElement(InteractiveComonent, null))), getByRole = _a.getByRole, getByTestId = _a.getByTestId;
|
|
291
|
-
return [4 /*yield*/,
|
|
389
|
+
return [4 /*yield*/, act(function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
390
|
+
return __generator(this, function (_a) {
|
|
391
|
+
switch (_a.label) {
|
|
392
|
+
case 0: return [4 /*yield*/, tick()];
|
|
393
|
+
case 1:
|
|
394
|
+
_a.sent();
|
|
395
|
+
// when
|
|
396
|
+
getByRole('button').click();
|
|
397
|
+
return [2 /*return*/];
|
|
398
|
+
}
|
|
399
|
+
});
|
|
400
|
+
}); })];
|
|
292
401
|
case 1:
|
|
293
402
|
_b.sent();
|
|
294
|
-
// when
|
|
295
|
-
getByRole('button').click();
|
|
296
403
|
// then
|
|
297
404
|
return [4 /*yield*/, waitFor(function () {
|
|
298
405
|
return expect(getByTestId('wrapper').innerHTML).toContain("Translated: <div style=\"color: blue;\">test</div>");
|
|
@@ -311,12 +418,30 @@ describe('Translate', function () {
|
|
|
311
418
|
case 0:
|
|
312
419
|
getByRole = render(React.createElement(Wrapper, null,
|
|
313
420
|
React.createElement(InteractiveComonent, null))).getByRole;
|
|
314
|
-
return [4 /*yield*/,
|
|
421
|
+
return [4 /*yield*/, act(function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
422
|
+
return __generator(this, function (_a) {
|
|
423
|
+
switch (_a.label) {
|
|
424
|
+
case 0: return [4 /*yield*/, tick()];
|
|
425
|
+
case 1:
|
|
426
|
+
_a.sent();
|
|
427
|
+
return [2 /*return*/];
|
|
428
|
+
}
|
|
429
|
+
});
|
|
430
|
+
}); })];
|
|
315
431
|
case 1:
|
|
316
432
|
_a.sent();
|
|
317
433
|
// when
|
|
318
434
|
getByRole('button').click();
|
|
319
|
-
return [4 /*yield*/,
|
|
435
|
+
return [4 /*yield*/, act(function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
436
|
+
return __generator(this, function (_a) {
|
|
437
|
+
switch (_a.label) {
|
|
438
|
+
case 0: return [4 /*yield*/, tick()];
|
|
439
|
+
case 1:
|
|
440
|
+
_a.sent();
|
|
441
|
+
return [2 /*return*/];
|
|
442
|
+
}
|
|
443
|
+
});
|
|
444
|
+
}); })];
|
|
320
445
|
case 2:
|
|
321
446
|
_a.sent();
|
|
322
447
|
// then
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Translate.test.js","sourceRoot":"","sources":["../../src/components/Translate.test.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"Translate.test.js","sourceRoot":"","sources":["../../src/components/Translate.test.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,13 +1,18 @@
|
|
|
1
1
|
import DataLoader from 'dataloader';
|
|
2
2
|
import React, { PropsWithChildren } from 'react';
|
|
3
|
-
import { DataLoaderLoadParams,
|
|
3
|
+
import { DataLoaderLoadParams, DataLoaderOptions } from '../api/data-loader';
|
|
4
|
+
import { Language } from '../domain/language';
|
|
4
5
|
export interface MagicTranslateProviderProps {
|
|
5
|
-
|
|
6
|
+
loaderFactory?: (options?: DataLoaderOptions) => (content: readonly DataLoaderLoadParams[]) => Promise<readonly string[]>;
|
|
6
7
|
language: Language;
|
|
8
|
+
sourceLanguage: Language;
|
|
9
|
+
debug?: boolean;
|
|
10
|
+
apiKey: string;
|
|
7
11
|
}
|
|
8
12
|
export interface MagicTranslateContextValue {
|
|
9
13
|
dataLoader: DataLoader<DataLoaderLoadParams, string>;
|
|
10
14
|
language: Language;
|
|
15
|
+
sourceLanguage: Language;
|
|
11
16
|
}
|
|
12
17
|
export declare const MagicTranslateContext: React.Context<MagicTranslateContextValue | null>;
|
|
13
18
|
export declare const MagicTranslateProvider: React.FunctionComponent<PropsWithChildren<MagicTranslateProviderProps>>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MagicTranslateContext.d.ts","sourceRoot":"","sources":["../../src/context/MagicTranslateContext.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"MagicTranslateContext.d.ts","sourceRoot":"","sources":["../../src/context/MagicTranslateContext.tsx"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,KAAK,EAAE,EAAiB,iBAAiB,EAAW,MAAM,OAAO,CAAC;AACzE,OAAO,EACL,oBAAoB,EACpB,iBAAiB,EAElB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAE9C,MAAM,WAAW,2BAA2B;IAC1C,aAAa,CAAC,EAAE,CACd,OAAO,CAAC,EAAE,iBAAiB,KACxB,CAAC,OAAO,EAAE,SAAS,oBAAoB,EAAE,KAAK,OAAO,CAAC,SAAS,MAAM,EAAE,CAAC,CAAC;IAC9E,QAAQ,EAAE,QAAQ,CAAC;IACnB,cAAc,EAAE,QAAQ,CAAC;IACzB,KAAK,CAAC,EAAE,OAAO,CAAC;IAEhB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,0BAA0B;IACzC,UAAU,EAAE,UAAU,CAAC,oBAAoB,EAAE,MAAM,CAAC,CAAC;IACrD,QAAQ,EAAE,QAAQ,CAAC;IACnB,cAAc,EAAE,QAAQ,CAAC;CAC1B;AAED,eAAO,MAAM,qBAAqB,kDACsB,CAAC;AAEzD,eAAO,MAAM,sBAAsB,EAAE,KAAK,CAAC,iBAAiB,CAC1D,iBAAiB,CAAC,2BAA2B,CAAC,CAyC/C,CAAC"}
|
|
@@ -1,16 +1,27 @@
|
|
|
1
|
-
'use client';
|
|
2
1
|
import DataLoader from 'dataloader';
|
|
3
2
|
import React, { createContext, useMemo } from 'react';
|
|
4
|
-
import {
|
|
3
|
+
import { defaultLoaderFactory as defaultLoaderFactory, } from '../api/data-loader';
|
|
5
4
|
export var MagicTranslateContext = createContext(null);
|
|
6
5
|
export var MagicTranslateProvider = function (_a) {
|
|
7
|
-
var _b = _a.
|
|
6
|
+
var _b = _a.loaderFactory, loaderFactory = _b === void 0 ? defaultLoaderFactory : _b, language = _a.language, sourceLanguage = _a.sourceLanguage, debug = _a.debug, apiKey = _a.apiKey, children = _a.children;
|
|
7
|
+
if (!apiKey) {
|
|
8
|
+
throw new Error('Missing API key. Please get one at https://magic-translate.com');
|
|
9
|
+
}
|
|
8
10
|
var value = useMemo(function () { return ({
|
|
9
|
-
dataLoader: new DataLoader(
|
|
10
|
-
|
|
11
|
+
dataLoader: new DataLoader(loaderFactory({
|
|
12
|
+
debug: !!debug,
|
|
13
|
+
apiKey: apiKey,
|
|
14
|
+
lang: language,
|
|
15
|
+
sourceLang: sourceLanguage,
|
|
16
|
+
}), {
|
|
17
|
+
cacheKeyFn: function (params) {
|
|
18
|
+
return "apiKey:".concat(apiKey, ";content=").concat(params.content, ";lang=").concat(language, ";sourceLang=").concat(sourceLanguage);
|
|
19
|
+
},
|
|
11
20
|
}),
|
|
12
21
|
language: language,
|
|
13
|
-
|
|
22
|
+
sourceLanguage: sourceLanguage,
|
|
23
|
+
apiKey: apiKey,
|
|
24
|
+
}); }, [loaderFactory, language, sourceLanguage, debug, apiKey]);
|
|
14
25
|
return (React.createElement(MagicTranslateContext.Provider, { value: value }, children));
|
|
15
26
|
};
|
|
16
27
|
//# sourceMappingURL=MagicTranslateContext.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MagicTranslateContext.js","sourceRoot":"","sources":["../../src/context/MagicTranslateContext.tsx"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"MagicTranslateContext.js","sourceRoot":"","sources":["../../src/context/MagicTranslateContext.tsx"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,KAAK,EAAE,EAAE,aAAa,EAAqB,OAAO,EAAE,MAAM,OAAO,CAAC;AACzE,OAAO,EAGL,oBAAoB,IAAI,oBAAoB,GAC7C,MAAM,oBAAoB,CAAC;AAoB5B,MAAM,CAAC,IAAM,qBAAqB,GAChC,aAAa,CAAoC,IAAI,CAAC,CAAC;AAEzD,MAAM,CAAC,IAAM,sBAAsB,GAE/B,UAAC,EAOJ;QANC,qBAAoC,EAApC,aAAa,mBAAG,oBAAoB,KAAA,EACpC,QAAQ,cAAA,EACR,cAAc,oBAAA,EACd,KAAK,WAAA,EACL,MAAM,YAAA,EACN,QAAQ,cAAA;IAER,IAAI,CAAC,MAAM,EAAE;QACX,MAAM,IAAI,KAAK,CACb,gEAAgE,CACjE,CAAC;KACH;IAED,IAAM,KAAK,GAAG,OAAO,CACnB,cAAM,OAAA,CAAC;QACL,UAAU,EAAE,IAAI,UAAU,CACxB,aAAa,CAAC;YACZ,KAAK,EAAE,CAAC,CAAC,KAAK;YACd,MAAM,QAAA;YACN,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,cAAc;SAC3B,CAAC,EACF;YACE,UAAU,EAAE,UAAC,MAAM;gBACjB,OAAA,iBAAU,MAAM,sBAAY,MAAM,CAAC,OAAO,mBAAS,QAAQ,yBAAe,cAAc,CAAE;YAA1F,CAA0F;SAC7F,CACF;QACD,QAAQ,UAAA;QACR,cAAc,gBAAA;QACd,MAAM,QAAA;KACP,CAAC,EAhBI,CAgBJ,EACF,CAAC,aAAa,EAAE,QAAQ,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,CAAC,CACzD,CAAC;IAEF,OAAO,CACL,oBAAC,qBAAqB,CAAC,QAAQ,IAAC,KAAK,EAAE,KAAK,IACzC,QAAQ,CACsB,CAClC,CAAC;AACJ,CAAC,CAAC"}
|