@tolgee/core 2.1.1 → 2.7.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/README.md +2 -1
- package/dist/tolgee.cjs.js +86 -32
- package/dist/tolgee.cjs.js.map +1 -1
- package/dist/tolgee.cjs.min.js +1 -1
- package/dist/tolgee.cjs.min.js.map +1 -1
- package/dist/tolgee.esm.js +16 -0
- package/dist/tolgee.esm.js.map +1 -0
- package/dist/tolgee.umd.js +86 -32
- package/dist/tolgee.umd.js.map +1 -1
- package/dist/tolgee.umd.min.js +1 -1
- package/dist/tolgee.umd.min.js.map +1 -1
- package/lib/Tolgee.js +4 -2
- package/lib/Tolgee.js.map +1 -1
- package/lib/TolgeeConfig.d.ts +1 -1
- package/lib/handlers/CoreHandler.js +4 -2
- package/lib/handlers/CoreHandler.js.map +1 -1
- package/lib/highlighter/TranslationHighlighter.d.ts +2 -2
- package/lib/highlighter/TranslationHighlighter.js +89 -28
- package/lib/highlighter/TranslationHighlighter.js.map +1 -1
- package/lib/types.d.ts +1 -0
- package/package.json +5 -5
- package/lib/Observer.test.d.ts +0 -2
- package/lib/Observer.test.js +0 -190
- package/lib/Observer.test.js.map +0 -1
- package/lib/Properties.test.d.ts +0 -1
- package/lib/Properties.test.js +0 -77
- package/lib/Properties.test.js.map +0 -1
- package/lib/Tolgee.test.d.ts +0 -1
- package/lib/Tolgee.test.js +0 -451
- package/lib/Tolgee.test.js.map +0 -1
- package/lib/TolgeeConfig.test.d.ts +0 -1
- package/lib/TolgeeConfig.test.js +0 -18
- package/lib/TolgeeConfig.test.js.map +0 -1
- package/lib/__testFixtures/classMock.d.ts +0 -3
- package/lib/__testFixtures/classMock.js +0 -8
- package/lib/__testFixtures/classMock.js.map +0 -1
- package/lib/__testFixtures/createElement.d.ts +0 -2
- package/lib/__testFixtures/createElement.js +0 -58
- package/lib/__testFixtures/createElement.js.map +0 -1
- package/lib/__testFixtures/createTestDom.d.ts +0 -9
- package/lib/__testFixtures/createTestDom.js +0 -18
- package/lib/__testFixtures/createTestDom.js.map +0 -1
- package/lib/__testFixtures/mocked.d.ts +0 -20
- package/lib/__testFixtures/mocked.js +0 -24
- package/lib/__testFixtures/mocked.js.map +0 -1
- package/lib/handlers/AttributeHandler.test.d.ts +0 -1
- package/lib/handlers/AttributeHandler.test.js +0 -177
- package/lib/handlers/AttributeHandler.test.js.map +0 -1
- package/lib/handlers/CoreHandler.test.d.ts +0 -1
- package/lib/handlers/CoreHandler.test.js +0 -148
- package/lib/handlers/CoreHandler.test.js.map +0 -1
- package/lib/handlers/TextHandler.test.d.ts +0 -1
- package/lib/handlers/TextHandler.test.js +0 -270
- package/lib/handlers/TextHandler.test.js.map +0 -1
- package/lib/helpers/TextHelper.test.d.ts +0 -1
- package/lib/helpers/TextHelper.test.js +0 -107
- package/lib/helpers/TextHelper.test.js.map +0 -1
- package/lib/highlighter/HighlightFunctionsInitializer.test.d.ts +0 -1
- package/lib/highlighter/HighlightFunctionsInitializer.test.js +0 -81
- package/lib/highlighter/HighlightFunctionsInitializer.test.js.map +0 -1
- package/lib/highlighter/MouseEventHandler.test.d.ts +0 -1
- package/lib/highlighter/MouseEventHandler.test.js +0 -195
- package/lib/highlighter/MouseEventHandler.test.js.map +0 -1
- package/lib/highlighter/TranslationHighlighter.test.d.ts +0 -1
- package/lib/highlighter/TranslationHighlighter.test.js +0 -207
- package/lib/highlighter/TranslationHighlighter.test.js.map +0 -1
- package/lib/services/CoreService.test.d.ts +0 -1
- package/lib/services/CoreService.test.js +0 -179
- package/lib/services/CoreService.test.js.map +0 -1
- package/lib/services/DependencyStore.test.d.ts +0 -1
- package/lib/services/DependencyStore.test.js +0 -67
- package/lib/services/DependencyStore.test.js.map +0 -1
- package/lib/services/ElementRegistrar.test.d.ts +0 -1
- package/lib/services/ElementRegistrar.test.js +0 -200
- package/lib/services/ElementRegistrar.test.js.map +0 -1
- package/lib/services/TextService.test.d.ts +0 -1
- package/lib/services/TextService.test.js +0 -430
- package/lib/services/TextService.test.js.map +0 -1
- package/lib/services/TranslationService.test.d.ts +0 -1
- package/lib/services/TranslationService.test.js +0 -649
- package/lib/services/TranslationService.test.js.map +0 -1
- package/lib/toolsManager/Messages.test.d.ts +0 -1
- package/lib/toolsManager/Messages.test.js +0 -114
- package/lib/toolsManager/Messages.test.js.map +0 -1
- package/lib/toolsManager/PluginManager.test.d.ts +0 -1
- package/lib/toolsManager/PluginManager.test.js +0 -120
- package/lib/toolsManager/PluginManager.test.js.map +0 -1
package/dist/tolgee.umd.js
CHANGED
|
@@ -3787,40 +3787,26 @@
|
|
|
3787
3787
|
var _this = this;
|
|
3788
3788
|
this.dependencies = dependencies;
|
|
3789
3789
|
this.translationEdit = function (e, element) { return __awaiter(_this, void 0, void 0, function () {
|
|
3790
|
-
var key;
|
|
3790
|
+
var renderer, key;
|
|
3791
3791
|
return __generator(this, function (_a) {
|
|
3792
3792
|
switch (_a.label) {
|
|
3793
|
-
case 0:
|
|
3794
|
-
if (!(typeof this.renderer === 'object')) return [3 /*break*/, 2];
|
|
3795
|
-
return [4 /*yield*/, this.getKeyAndDefault(e, element)];
|
|
3793
|
+
case 0: return [4 /*yield*/, this.getRenderer()];
|
|
3796
3794
|
case 1:
|
|
3795
|
+
renderer = _a.sent();
|
|
3796
|
+
if (!(typeof renderer === 'object')) return [3 /*break*/, 3];
|
|
3797
|
+
return [4 /*yield*/, this.getKeyAndDefault(e, element)];
|
|
3798
|
+
case 2:
|
|
3797
3799
|
key = _a.sent();
|
|
3798
3800
|
if (key) {
|
|
3799
|
-
|
|
3801
|
+
renderer.renderViewer(key.key, key.defaultValue);
|
|
3800
3802
|
return [2 /*return*/];
|
|
3801
3803
|
}
|
|
3802
3804
|
return [2 /*return*/];
|
|
3803
|
-
case 2
|
|
3804
|
-
// eslint-disable-next-line no-console
|
|
3805
|
-
console.warn('Tolgee UI is not provided. To translate interactively provide tolgee ui constructor to "ui" configuration property. ' +
|
|
3806
|
-
'To disable highlighting use production mode.');
|
|
3807
|
-
return [2 /*return*/];
|
|
3805
|
+
case 3: return [2 /*return*/];
|
|
3808
3806
|
}
|
|
3809
3807
|
});
|
|
3810
3808
|
}); };
|
|
3811
3809
|
}
|
|
3812
|
-
Object.defineProperty(TranslationHighlighter.prototype, "renderer", {
|
|
3813
|
-
get: function () {
|
|
3814
|
-
if (this._renderer === undefined) {
|
|
3815
|
-
if (typeof this.dependencies.properties.config.ui === 'function') {
|
|
3816
|
-
this._renderer = new this.dependencies.properties.config.ui(this.dependencies);
|
|
3817
|
-
}
|
|
3818
|
-
}
|
|
3819
|
-
return this._renderer;
|
|
3820
|
-
},
|
|
3821
|
-
enumerable: false,
|
|
3822
|
-
configurable: true
|
|
3823
|
-
});
|
|
3824
3810
|
TranslationHighlighter.getKeyOptions = function (node) {
|
|
3825
3811
|
var nodes = Array.from(node._tolgee.nodes);
|
|
3826
3812
|
return nodes.reduce(function (acc, curr) { return __spreadArray(__spreadArray([], __read(acc), false), __read(curr._tolgee.keys.map(function (k) { return ({
|
|
@@ -3838,9 +3824,70 @@
|
|
|
3838
3824
|
}
|
|
3839
3825
|
}); }); });
|
|
3840
3826
|
};
|
|
3827
|
+
TranslationHighlighter.prototype.getRenderer = function () {
|
|
3828
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
3829
|
+
var possibleProviders, possibleProviders_1, possibleProviders_1_1, possibleProvider, constructorProvider, constructor, constructor, e_2_1;
|
|
3830
|
+
var e_2, _a;
|
|
3831
|
+
return __generator(this, function (_b) {
|
|
3832
|
+
switch (_b.label) {
|
|
3833
|
+
case 0:
|
|
3834
|
+
if (!(this._renderer === undefined)) return [3 /*break*/, 11];
|
|
3835
|
+
possibleProviders = [
|
|
3836
|
+
this.dependencies.properties.config.ui,
|
|
3837
|
+
window['@tolgee/ui'],
|
|
3838
|
+
];
|
|
3839
|
+
_b.label = 1;
|
|
3840
|
+
case 1:
|
|
3841
|
+
_b.trys.push([1, 8, 9, 10]);
|
|
3842
|
+
possibleProviders_1 = __values(possibleProviders), possibleProviders_1_1 = possibleProviders_1.next();
|
|
3843
|
+
_b.label = 2;
|
|
3844
|
+
case 2:
|
|
3845
|
+
if (!!possibleProviders_1_1.done) return [3 /*break*/, 7];
|
|
3846
|
+
possibleProvider = possibleProviders_1_1.value;
|
|
3847
|
+
if (!(typeof possibleProvider === 'function')) return [3 /*break*/, 6];
|
|
3848
|
+
_b.label = 3;
|
|
3849
|
+
case 3:
|
|
3850
|
+
_b.trys.push([3, 5, , 6]);
|
|
3851
|
+
constructorProvider = possibleProvider;
|
|
3852
|
+
return [4 /*yield*/, constructorProvider()];
|
|
3853
|
+
case 4:
|
|
3854
|
+
constructor = _b.sent();
|
|
3855
|
+
this._renderer = new constructor(this.dependencies);
|
|
3856
|
+
return [3 /*break*/, 6];
|
|
3857
|
+
case 5:
|
|
3858
|
+
_b.sent();
|
|
3859
|
+
constructor = possibleProvider;
|
|
3860
|
+
this._renderer = new constructor(this.dependencies);
|
|
3861
|
+
return [3 /*break*/, 6];
|
|
3862
|
+
case 6:
|
|
3863
|
+
possibleProviders_1_1 = possibleProviders_1.next();
|
|
3864
|
+
return [3 /*break*/, 2];
|
|
3865
|
+
case 7: return [3 /*break*/, 10];
|
|
3866
|
+
case 8:
|
|
3867
|
+
e_2_1 = _b.sent();
|
|
3868
|
+
e_2 = { error: e_2_1 };
|
|
3869
|
+
return [3 /*break*/, 10];
|
|
3870
|
+
case 9:
|
|
3871
|
+
try {
|
|
3872
|
+
if (possibleProviders_1_1 && !possibleProviders_1_1.done && (_a = possibleProviders_1.return)) _a.call(possibleProviders_1);
|
|
3873
|
+
}
|
|
3874
|
+
finally { if (e_2) throw e_2.error; }
|
|
3875
|
+
return [7 /*endfinally*/];
|
|
3876
|
+
case 10:
|
|
3877
|
+
if (this._renderer === undefined) {
|
|
3878
|
+
// eslint-disable-next-line no-console
|
|
3879
|
+
console.warn('Tolgee UI is not provided. To translate interactively provide tolgee ui constructor to "ui" configuration property. ' +
|
|
3880
|
+
'To disable highlighting use production mode.');
|
|
3881
|
+
}
|
|
3882
|
+
_b.label = 11;
|
|
3883
|
+
case 11: return [2 /*return*/, this._renderer];
|
|
3884
|
+
}
|
|
3885
|
+
});
|
|
3886
|
+
});
|
|
3887
|
+
};
|
|
3841
3888
|
TranslationHighlighter.prototype.getKeyAndDefault = function (mouseEvent, element) {
|
|
3842
3889
|
return __awaiter(this, void 0, void 0, function () {
|
|
3843
|
-
var keysWithDefaults, keySet, selectedKey_1, found;
|
|
3890
|
+
var keysWithDefaults, keySet, renderer, selectedKey_1, found;
|
|
3844
3891
|
return __generator(this, function (_a) {
|
|
3845
3892
|
switch (_a.label) {
|
|
3846
3893
|
case 0:
|
|
@@ -3852,19 +3899,22 @@
|
|
|
3852
3899
|
}
|
|
3853
3900
|
keysWithDefaults = TranslationHighlighter.getKeyOptions(element);
|
|
3854
3901
|
keySet = new Set(keysWithDefaults.map(function (keyWithDefault) { return keyWithDefault.key; }));
|
|
3855
|
-
if (!(keySet.size > 1)) return [3 /*break*/,
|
|
3856
|
-
return [4 /*yield*/, this.
|
|
3902
|
+
if (!(keySet.size > 1)) return [3 /*break*/, 3];
|
|
3903
|
+
return [4 /*yield*/, this.getRenderer()];
|
|
3904
|
+
case 1:
|
|
3905
|
+
renderer = _a.sent();
|
|
3906
|
+
return [4 /*yield*/, renderer.getKey({
|
|
3857
3907
|
keys: keySet,
|
|
3858
3908
|
openEvent: mouseEvent,
|
|
3859
3909
|
})];
|
|
3860
|
-
case
|
|
3910
|
+
case 2:
|
|
3861
3911
|
selectedKey_1 = _a.sent();
|
|
3862
3912
|
found = keysWithDefaults.find(function (kwd) { return kwd.key === selectedKey_1; });
|
|
3863
3913
|
if (found) {
|
|
3864
3914
|
return [2 /*return*/, found];
|
|
3865
3915
|
}
|
|
3866
|
-
_a.label =
|
|
3867
|
-
case
|
|
3916
|
+
_a.label = 3;
|
|
3917
|
+
case 3:
|
|
3868
3918
|
if (keySet.size === 1) {
|
|
3869
3919
|
return [2 /*return*/, keysWithDefaults[0]];
|
|
3870
3920
|
}
|
|
@@ -4273,8 +4323,10 @@
|
|
|
4273
4323
|
this.attributeHandler = attributeHandler;
|
|
4274
4324
|
this.textService = textService;
|
|
4275
4325
|
this.wrappedHandler = wrappedHandler;
|
|
4276
|
-
|
|
4277
|
-
|
|
4326
|
+
if (typeof window !== 'undefined') {
|
|
4327
|
+
eventService.LANGUAGE_CHANGED.subscribe(this.refresh.bind(this));
|
|
4328
|
+
eventService.TRANSLATION_CHANGED.subscribe(this.refresh.bind(this));
|
|
4329
|
+
}
|
|
4278
4330
|
}
|
|
4279
4331
|
CoreHandler.prototype.handleSubtree = function (target) {
|
|
4280
4332
|
return __awaiter(this, void 0, void 0, function () {
|
|
@@ -4930,11 +4982,12 @@
|
|
|
4930
4982
|
if (noWrap === void 0) { noWrap = false; }
|
|
4931
4983
|
if (defaultValue === void 0) { defaultValue = undefined; }
|
|
4932
4984
|
return __awaiter(this, void 0, void 0, function () {
|
|
4933
|
-
var key, props;
|
|
4985
|
+
var key, orEmpty, props;
|
|
4934
4986
|
return __generator(this, function (_a) {
|
|
4935
4987
|
switch (_a.label) {
|
|
4936
4988
|
case 0:
|
|
4937
4989
|
key = typeof keyOrProps === 'string' ? keyOrProps : keyOrProps.key;
|
|
4990
|
+
orEmpty = undefined;
|
|
4938
4991
|
if (typeof keyOrProps === 'object') {
|
|
4939
4992
|
props = keyOrProps;
|
|
4940
4993
|
// if values are not provided in props object, get them from function
|
|
@@ -4943,6 +4996,7 @@
|
|
|
4943
4996
|
noWrap = props.noWrap !== undefined ? props.noWrap : noWrap;
|
|
4944
4997
|
defaultValue =
|
|
4945
4998
|
props.defaultValue !== undefined ? props.defaultValue : defaultValue;
|
|
4999
|
+
orEmpty = props.orEmpty;
|
|
4946
5000
|
}
|
|
4947
5001
|
if (!(this.properties.config.mode === 'development' && !noWrap)) return [3 /*break*/, 3];
|
|
4948
5002
|
return [4 /*yield*/, this.loadScopes()];
|
|
@@ -4952,7 +5006,7 @@
|
|
|
4952
5006
|
case 2:
|
|
4953
5007
|
_a.sent();
|
|
4954
5008
|
return [2 /*return*/, this.dependencyStore.textService.wrap(key, params, defaultValue)];
|
|
4955
|
-
case 3: return [2 /*return*/, this.dependencyStore.textService.translate(key, params, undefined,
|
|
5009
|
+
case 3: return [2 /*return*/, this.dependencyStore.textService.translate(key, params, undefined, orEmpty, defaultValue)];
|
|
4956
5010
|
}
|
|
4957
5011
|
});
|
|
4958
5012
|
});
|