@tolgee/core 2.8.1 → 2.8.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 (107) hide show
  1. package/dist/tolgee.cjs.js +31 -32
  2. package/dist/tolgee.cjs.js.map +1 -1
  3. package/dist/tolgee.cjs.min.js +1 -1
  4. package/dist/tolgee.cjs.min.js.map +1 -1
  5. package/dist/tolgee.esm.js +1 -1
  6. package/dist/tolgee.esm.js.map +1 -1
  7. package/dist/tolgee.umd.js +31 -32
  8. package/dist/tolgee.umd.js.map +1 -1
  9. package/dist/tolgee.umd.min.js +1 -1
  10. package/dist/tolgee.umd.min.js.map +1 -1
  11. package/lib/Observer.test.d.ts +2 -0
  12. package/lib/Observer.test.js +190 -0
  13. package/lib/Observer.test.js.map +1 -0
  14. package/lib/Properties.d.ts +1 -0
  15. package/lib/Properties.js.map +1 -1
  16. package/lib/Properties.test.d.ts +1 -0
  17. package/lib/Properties.test.js +77 -0
  18. package/lib/Properties.test.js.map +1 -0
  19. package/lib/Tolgee.d.ts +1 -1
  20. package/lib/Tolgee.js +11 -11
  21. package/lib/Tolgee.js.map +1 -1
  22. package/lib/Tolgee.test.d.ts +1 -0
  23. package/lib/Tolgee.test.js +482 -0
  24. package/lib/Tolgee.test.js.map +1 -0
  25. package/lib/TolgeeConfig.test.d.ts +1 -0
  26. package/lib/TolgeeConfig.test.js +18 -0
  27. package/lib/TolgeeConfig.test.js.map +1 -0
  28. package/lib/__testFixtures/classMock.d.ts +3 -0
  29. package/lib/__testFixtures/classMock.js +8 -0
  30. package/lib/__testFixtures/classMock.js.map +1 -0
  31. package/lib/__testFixtures/createElement.d.ts +2 -0
  32. package/lib/__testFixtures/createElement.js +58 -0
  33. package/lib/__testFixtures/createElement.js.map +1 -0
  34. package/lib/__testFixtures/createTestDom.d.ts +9 -0
  35. package/lib/__testFixtures/createTestDom.js +18 -0
  36. package/lib/__testFixtures/createTestDom.js.map +1 -0
  37. package/lib/__testFixtures/mocked.d.ts +20 -0
  38. package/lib/__testFixtures/mocked.js +24 -0
  39. package/lib/__testFixtures/mocked.js.map +1 -0
  40. package/lib/__testFixtures/setupAfterEnv.d.ts +8 -0
  41. package/lib/__testFixtures/setupAfterEnv.js +23 -0
  42. package/lib/__testFixtures/setupAfterEnv.js.map +1 -0
  43. package/lib/handlers/AbstractHandler.js +1 -1
  44. package/lib/handlers/AbstractHandler.js.map +1 -1
  45. package/lib/handlers/AttributeHandler.js +1 -1
  46. package/lib/handlers/AttributeHandler.js.map +1 -1
  47. package/lib/handlers/AttributeHandler.test.d.ts +1 -0
  48. package/lib/handlers/AttributeHandler.test.js +177 -0
  49. package/lib/handlers/AttributeHandler.test.js.map +1 -0
  50. package/lib/handlers/CoreHandler.test.d.ts +1 -0
  51. package/lib/handlers/CoreHandler.test.js +148 -0
  52. package/lib/handlers/CoreHandler.test.js.map +1 -0
  53. package/lib/handlers/TextHandler.js +1 -1
  54. package/lib/handlers/TextHandler.js.map +1 -1
  55. package/lib/handlers/TextHandler.test.d.ts +1 -0
  56. package/lib/handlers/TextHandler.test.js +270 -0
  57. package/lib/handlers/TextHandler.test.js.map +1 -0
  58. package/lib/handlers/WrappedHandler.js +1 -1
  59. package/lib/handlers/WrappedHandler.js.map +1 -1
  60. package/lib/helpers/TextHelper.test.d.ts +1 -0
  61. package/lib/helpers/TextHelper.test.js +107 -0
  62. package/lib/helpers/TextHelper.test.js.map +1 -0
  63. package/lib/highlighter/HighlightFunctionsInitializer.test.d.ts +1 -0
  64. package/lib/highlighter/HighlightFunctionsInitializer.test.js +81 -0
  65. package/lib/highlighter/HighlightFunctionsInitializer.test.js.map +1 -0
  66. package/lib/highlighter/MouseEventHandler.test.d.ts +1 -0
  67. package/lib/highlighter/MouseEventHandler.test.js +215 -0
  68. package/lib/highlighter/MouseEventHandler.test.js.map +1 -0
  69. package/lib/highlighter/TranslationHighlighter.test.d.ts +1 -0
  70. package/lib/highlighter/TranslationHighlighter.test.js +287 -0
  71. package/lib/highlighter/TranslationHighlighter.test.js.map +1 -0
  72. package/lib/services/ApiHttpService.js +1 -1
  73. package/lib/services/ApiHttpService.js.map +1 -1
  74. package/lib/services/CoreService.d.ts +3 -1
  75. package/lib/services/CoreService.js +2 -3
  76. package/lib/services/CoreService.js.map +1 -1
  77. package/lib/services/CoreService.test.d.ts +1 -0
  78. package/lib/services/CoreService.test.js +178 -0
  79. package/lib/services/CoreService.test.js.map +1 -0
  80. package/lib/services/DependencyStore.test.d.ts +1 -0
  81. package/lib/services/DependencyStore.test.js +67 -0
  82. package/lib/services/DependencyStore.test.js.map +1 -0
  83. package/lib/services/ElementRegistrar.test.d.ts +1 -0
  84. package/lib/services/ElementRegistrar.test.js +215 -0
  85. package/lib/services/ElementRegistrar.test.js.map +1 -0
  86. package/lib/services/ScreenshotService.js +1 -1
  87. package/lib/services/ScreenshotService.js.map +1 -1
  88. package/lib/services/TextService.js +5 -5
  89. package/lib/services/TextService.js.map +1 -1
  90. package/lib/services/TextService.test.d.ts +1 -0
  91. package/lib/services/TextService.test.js +430 -0
  92. package/lib/services/TextService.test.js.map +1 -0
  93. package/lib/services/TranslationService.js +7 -7
  94. package/lib/services/TranslationService.js.map +1 -1
  95. package/lib/services/TranslationService.test.d.ts +1 -0
  96. package/lib/services/TranslationService.test.js +649 -0
  97. package/lib/services/TranslationService.test.js.map +1 -0
  98. package/lib/services/__mocks__/CoreService.d.ts +2 -0
  99. package/lib/services/__mocks__/CoreService.js +49 -0
  100. package/lib/services/__mocks__/CoreService.js.map +1 -0
  101. package/lib/toolsManager/Messages.test.d.ts +1 -0
  102. package/lib/toolsManager/Messages.test.js +114 -0
  103. package/lib/toolsManager/Messages.test.js.map +1 -0
  104. package/lib/toolsManager/PluginManager.test.d.ts +1 -0
  105. package/lib/toolsManager/PluginManager.test.js +120 -0
  106. package/lib/toolsManager/PluginManager.test.js.map +1 -0
  107. package/package.json +4 -4
@@ -524,7 +524,7 @@
524
524
  };
525
525
  ApiHttpService.prototype.getUrl = function (path) {
526
526
  var querySeparator = path.indexOf('?') < 0 ? '?' : '&';
527
- return this.properties.config.apiUrl + "/" + path + querySeparator + "ak=" + this.properties.config.apiKey;
527
+ return "".concat(this.properties.config.apiUrl, "/").concat(path).concat(querySeparator, "ak=").concat(this.properties.config.apiKey);
528
528
  };
529
529
  return ApiHttpService;
530
530
  }());
@@ -583,9 +583,9 @@
583
583
  _e.trys.push([1, 3, , 7]);
584
584
  languagesArray = __spreadArray([], __read(languages), false);
585
585
  languagesQuery = languagesArray
586
- .map(function (l) { return "languages=" + l; })
586
+ .map(function (l) { return "languages=".concat(l); })
587
587
  .join('&');
588
- return [4 /*yield*/, this.apiHttpService.fetchJson("v2/projects/translations?" + languagesQuery + "&filterKeyName=" + encodeURIComponent(key))];
588
+ return [4 /*yield*/, this.apiHttpService.fetchJson("v2/projects/translations?".concat(languagesQuery, "&filterKeyName=").concat(encodeURIComponent(key)))];
589
589
  case 2:
590
590
  data = _e.sent();
591
591
  translationData_1 = languagesArray.reduce(function (acc, curr) {
@@ -710,7 +710,7 @@
710
710
  switch (_c.label) {
711
711
  case 0:
712
712
  this.coreService.checkScope('translations.edit');
713
- return [4 /*yield*/, this.apiHttpService.postJson("v2/projects/keys/" + id + "/complex-update", __assign(__assign({}, data), { screenshotUploadedImageIds: ((_a = data.screenshotUploadedImageIds) === null || _a === void 0 ? void 0 : _a.length)
713
+ return [4 /*yield*/, this.apiHttpService.postJson("v2/projects/keys/".concat(id, "/complex-update"), __assign(__assign({}, data), { screenshotUploadedImageIds: ((_a = data.screenshotUploadedImageIds) === null || _a === void 0 ? void 0 : _a.length)
714
714
  ? data.screenshotUploadedImageIds
715
715
  : undefined, screenshotIdsToDelete: ((_b = data.screenshotIdsToDelete) === null || _b === void 0 ? void 0 : _b.length)
716
716
  ? data.screenshotIdsToDelete
@@ -868,7 +868,7 @@
868
868
  }
869
869
  _c.label = 3;
870
870
  case 3:
871
- url = "" + (this.properties.config.filesUrlPrefix || '/') + language + ".json";
871
+ url = "".concat(this.properties.config.filesUrlPrefix || '/').concat(language, ".json");
872
872
  _c.label = 4;
873
873
  case 4:
874
874
  _c.trys.push([4, 10, , 11]);
@@ -893,14 +893,14 @@
893
893
  case 8:
894
894
  _c.sent();
895
895
  // eslint-disable-next-line no-console
896
- console.error("Error parsing json retrieved from " + url + ".");
896
+ console.error("Error parsing json retrieved from ".concat(url, "."));
897
897
  this.setEmptyLanguageData(language);
898
898
  return [3 /*break*/, 9];
899
899
  case 9: return [3 /*break*/, 11];
900
900
  case 10:
901
901
  _c.sent();
902
902
  // eslint-disable-next-line no-console
903
- console.error("Error fetching localization data from " + url + ".");
903
+ console.error("Error fetching localization data from ".concat(url, "."));
904
904
  this.setEmptyLanguageData(language);
905
905
  return [3 /*break*/, 11];
906
906
  case 11: return [2 /*return*/];
@@ -918,7 +918,7 @@
918
918
  _a.label = 1;
919
919
  case 1:
920
920
  _a.trys.push([1, 3, , 4]);
921
- return [4 /*yield*/, this.apiHttpService.fetchJson("v2/projects/translations/" + language)];
921
+ return [4 /*yield*/, this.apiHttpService.fetchJson("v2/projects/translations/".concat(language))];
922
922
  case 2:
923
923
  data = _a.sent();
924
924
  this.setLanguageData(language, data[language] || {});
@@ -3460,7 +3460,7 @@
3460
3460
  get: function () {
3461
3461
  var escapedPrefix = this.escapeForRegExp(this.properties.config.inputPrefix);
3462
3462
  var escapedSuffix = this.escapeForRegExp(this.properties.config.inputSuffix);
3463
- return "(\\\\?)(" + escapedPrefix + "(.*?)" + escapedSuffix + ")";
3463
+ return "(\\\\?)(".concat(escapedPrefix, "(.*?)").concat(escapedSuffix, ")");
3464
3464
  },
3465
3465
  enumerable: false,
3466
3466
  configurable: true
@@ -3620,12 +3620,12 @@
3620
3620
  var paramString = Object.entries(params)
3621
3621
  .map(function (_a) {
3622
3622
  var _b = __read(_a, 2), name = _b[0], value = _b[1];
3623
- return _this.escapeParam(name) + ":" + _this.escapeParam(value);
3623
+ return "".concat(_this.escapeParam(name), ":").concat(_this.escapeParam(value));
3624
3624
  })
3625
3625
  .join(',');
3626
- paramString = paramString.length ? ":" + paramString : '';
3627
- var defaultString = defaultValue !== undefined ? "," + this.escapeParam(defaultValue) : '';
3628
- return "" + this.properties.config.inputPrefix + this.escapeParam(key) + defaultString + paramString + this.properties.config.inputSuffix;
3626
+ paramString = paramString.length ? ":".concat(paramString) : '';
3627
+ var defaultString = defaultValue !== undefined ? ",".concat(this.escapeParam(defaultValue)) : '';
3628
+ return "".concat(this.properties.config.inputPrefix).concat(this.escapeParam(key)).concat(defaultString).concat(paramString).concat(this.properties.config.inputSuffix);
3629
3629
  };
3630
3630
  TextService.prototype.getTranslatedWithMetadata = function (text) {
3631
3631
  return __awaiter(this, void 0, void 0, function () {
@@ -4104,7 +4104,7 @@
4104
4104
  return nodes.filter(function (n) {
4105
4105
  var e = NodeHelper.closestElement(n);
4106
4106
  return (restrictedElements.indexOf(e.tagName.toLowerCase()) === -1 &&
4107
- e.closest("[" + RESTRICTED_ASCENDANT_ATTRIBUTE + "=\"true\"]") === null);
4107
+ e.closest("[".concat(RESTRICTED_ASCENDANT_ATTRIBUTE, "=\"true\"]")) === null);
4108
4108
  });
4109
4109
  };
4110
4110
  AbstractHandler.prototype.handleNodes = function (nodes) {
@@ -4230,7 +4230,7 @@
4230
4230
  case 0:
4231
4231
  inputPrefix = this.properties.config.inputPrefix;
4232
4232
  inputSuffix = this.properties.config.inputSuffix;
4233
- xPath = "./descendant-or-self::text()[contains(., '" + inputPrefix + "') and contains(., '" + inputSuffix + "')]";
4233
+ xPath = "./descendant-or-self::text()[contains(., '".concat(inputPrefix, "') and contains(., '").concat(inputSuffix, "')]");
4234
4234
  nodes = NodeHelper.evaluate(xPath, node);
4235
4235
  filtered = this.filterRestricted(nodes);
4236
4236
  return [4 /*yield*/, this.handleNodes(filtered)];
@@ -4279,7 +4279,7 @@
4279
4279
  case 4:
4280
4280
  if (!!attributes_1_1.done) return [3 /*break*/, 7];
4281
4281
  attribute = attributes_1_1.value;
4282
- expression = "descendant-or-self::" + tag + "/@" + attribute + "[contains(., '" + inputPrefix + "') and contains(., '" + inputSuffix + "')]";
4282
+ expression = "descendant-or-self::".concat(tag, "/@").concat(attribute, "[contains(., '").concat(inputPrefix, "') and contains(., '").concat(inputSuffix, "')]");
4283
4283
  nodes = NodeHelper.evaluate(expression, node);
4284
4284
  return [4 /*yield*/, this.handleNodes(nodes)];
4285
4285
  case 5:
@@ -4549,7 +4549,7 @@
4549
4549
  });
4550
4550
  });
4551
4551
  };
4552
- CoreService.prototype.getScopes = function () {
4552
+ CoreService.prototype.getApiKeyDetails = function () {
4553
4553
  return __awaiter(this, void 0, void 0, function () {
4554
4554
  var e_1;
4555
4555
  return __generator(this, function (_a) {
@@ -4557,8 +4557,7 @@
4557
4557
  case 0:
4558
4558
  _a.trys.push([0, 2, , 3]);
4559
4559
  return [4 /*yield*/, this.apiHttpService.fetchJson("v2/api-keys/current")];
4560
- case 1: return [2 /*return*/, (_a.sent())
4561
- .scopes];
4560
+ case 1: return [2 /*return*/, _a.sent()];
4562
4561
  case 2:
4563
4562
  e_1 = _a.sent();
4564
4563
  // eslint-disable-next-line no-console
@@ -4598,7 +4597,7 @@
4598
4597
  var xPath, nodes, filtered;
4599
4598
  var _this = this;
4600
4599
  return __generator(this, function (_a) {
4601
- xPath = "./descendant-or-self::*[@" + TOLGEE_WRAPPED_ONLY_DATA_ATTRIBUTE + "]";
4600
+ xPath = "./descendant-or-self::*[@".concat(TOLGEE_WRAPPED_ONLY_DATA_ATTRIBUTE, "]");
4602
4601
  nodes = NodeHelper.evaluate(xPath, node);
4603
4602
  filtered = this.filterRestricted(nodes);
4604
4603
  filtered.forEach(function (element) {
@@ -4812,7 +4811,7 @@
4812
4811
  ScreenshotService.prototype.deleteImages = function (ids) {
4813
4812
  return __awaiter(this, void 0, void 0, function () {
4814
4813
  return __generator(this, function (_a) {
4815
- return [2 /*return*/, this.apiHttpService.post("v2/image-upload/" + ids.join(','), undefined, {
4814
+ return [2 /*return*/, this.apiHttpService.post("v2/image-upload/".concat(ids.join(',')), undefined, {
4816
4815
  method: 'delete',
4817
4816
  })];
4818
4817
  });
@@ -4951,7 +4950,7 @@
4951
4950
  switch (_a.label) {
4952
4951
  case 0:
4953
4952
  if (!(this.properties.config.mode === 'development')) return [3 /*break*/, 2];
4954
- return [4 /*yield*/, this.loadScopes()];
4953
+ return [4 /*yield*/, this.loadApiKeyDetails()];
4955
4954
  case 1:
4956
4955
  _a.sent();
4957
4956
  _a.label = 2;
@@ -5006,7 +5005,7 @@
5006
5005
  orEmpty = props.orEmpty;
5007
5006
  }
5008
5007
  if (!(this.properties.config.mode === 'development' && !noWrap)) return [3 /*break*/, 3];
5009
- return [4 /*yield*/, this.loadScopes()];
5008
+ return [4 /*yield*/, this.loadApiKeyDetails()];
5010
5009
  case 1:
5011
5010
  _a.sent();
5012
5011
  return [4 /*yield*/, this.translationService.loadTranslations()];
@@ -5037,19 +5036,19 @@
5037
5036
  }
5038
5037
  return this.dependencyStore.textService.instant(key, params, undefined, orEmpty, defaultValue);
5039
5038
  };
5040
- Tolgee.prototype.loadScopes = function () {
5039
+ Tolgee.prototype.loadApiKeyDetails = function () {
5041
5040
  return __awaiter(this, void 0, void 0, function () {
5042
- var _a;
5043
- return __generator(this, function (_b) {
5044
- switch (_b.label) {
5041
+ var details;
5042
+ return __generator(this, function (_a) {
5043
+ switch (_a.label) {
5045
5044
  case 0:
5046
5045
  if (!(this.properties.scopes === undefined)) return [3 /*break*/, 2];
5047
- _a = this.properties;
5048
- return [4 /*yield*/, this.dependencyStore.coreService.getScopes()];
5046
+ return [4 /*yield*/, this.dependencyStore.coreService.getApiKeyDetails()];
5049
5047
  case 1:
5050
- _a.scopes =
5051
- _b.sent();
5052
- _b.label = 2;
5048
+ details = _a.sent();
5049
+ this.properties.scopes = details.scopes;
5050
+ this.properties.projectId = details.projectId;
5051
+ _a.label = 2;
5053
5052
  case 2: return [2 /*return*/];
5054
5053
  }
5055
5054
  });