@tolgee/core 2.5.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.
@@ -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
- this.renderer.renderViewer(key.key, key.defaultValue);
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*/, 2];
3856
- return [4 /*yield*/, this.renderer.getKey({
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 1:
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 = 2;
3867
- case 2:
3916
+ _a.label = 3;
3917
+ case 3:
3868
3918
  if (keySet.size === 1) {
3869
3919
  return [2 /*return*/, keysWithDefaults[0]];
3870
3920
  }