@tolgee/core 2.4.0 → 2.8.1
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 +129 -70
- 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 +1 -1
- package/dist/tolgee.esm.js.map +1 -1
- package/dist/tolgee.umd.js +129 -70
- 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/TolgeeConfig.d.ts +1 -1
- package/lib/handlers/CoreHandler.js +4 -2
- package/lib/handlers/CoreHandler.js.map +1 -1
- package/lib/helpers/NodeHelper.d.ts +1 -1
- package/lib/helpers/NodeHelper.js +19 -18
- package/lib/helpers/NodeHelper.js.map +1 -1
- package/lib/highlighter/MouseEventHandler.js +4 -2
- package/lib/highlighter/MouseEventHandler.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/services/ElementRegistrar.js +13 -9
- package/lib/services/ElementRegistrar.js.map +1 -1
- package/lib/types.d.ts +11 -0
- package/package.json +5 -5
package/lib/TolgeeConfig.d.ts
CHANGED
|
@@ -12,7 +12,7 @@ export declare class TolgeeConfig {
|
|
|
12
12
|
fallbackLanguage?: string;
|
|
13
13
|
filesUrlPrefix?: string;
|
|
14
14
|
watch?: boolean;
|
|
15
|
-
ui?: new (...args: any[]) => any;
|
|
15
|
+
ui?: (new (...args: any[]) => any) | (() => Promise<new (...args: any[]) => any>);
|
|
16
16
|
targetElement?: Element;
|
|
17
17
|
tagAttributes?: {
|
|
18
18
|
[key: string]: string[];
|
|
@@ -55,8 +55,10 @@ var CoreHandler = /** @class */ (function () {
|
|
|
55
55
|
this.attributeHandler = attributeHandler;
|
|
56
56
|
this.textService = textService;
|
|
57
57
|
this.wrappedHandler = wrappedHandler;
|
|
58
|
-
|
|
59
|
-
|
|
58
|
+
if (typeof window !== 'undefined') {
|
|
59
|
+
eventService.LANGUAGE_CHANGED.subscribe(this.refresh.bind(this));
|
|
60
|
+
eventService.TRANSLATION_CHANGED.subscribe(this.refresh.bind(this));
|
|
61
|
+
}
|
|
60
62
|
}
|
|
61
63
|
CoreHandler.prototype.handleSubtree = function (target) {
|
|
62
64
|
return __awaiter(this, void 0, void 0, function () {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CoreHandler.js","sourceRoot":"","sources":["../../src/handlers/CoreHandler.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAUnD;IACE,qBACU,OAAoB,EACpB,WAAwB,EACxB,YAA0B,EAC1B,UAAsB,EACtB,gBAAkC,EAClC,WAAwB,EACxB,cAA8B;QAN9B,YAAO,GAAP,OAAO,CAAa;QACpB,gBAAW,GAAX,WAAW,CAAa;QACxB,iBAAY,GAAZ,YAAY,CAAc;QAC1B,eAAU,GAAV,UAAU,CAAY;QACtB,qBAAgB,GAAhB,gBAAgB,CAAkB;QAClC,gBAAW,GAAX,WAAW,CAAa;QACxB,mBAAc,GAAd,cAAc,CAAgB;QAEtC,YAAY,CAAC,gBAAgB,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"CoreHandler.js","sourceRoot":"","sources":["../../src/handlers/CoreHandler.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAUnD;IACE,qBACU,OAAoB,EACpB,WAAwB,EACxB,YAA0B,EAC1B,UAAsB,EACtB,gBAAkC,EAClC,WAAwB,EACxB,cAA8B;QAN9B,YAAO,GAAP,OAAO,CAAa;QACpB,gBAAW,GAAX,WAAW,CAAa;QACxB,iBAAY,GAAZ,YAAY,CAAc;QAC1B,eAAU,GAAV,UAAU,CAAY;QACtB,qBAAgB,GAAhB,gBAAgB,CAAkB;QAClC,gBAAW,GAAX,WAAW,CAAa;QACxB,mBAAc,GAAd,cAAc,CAAgB;QAEtC,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE;YACjC,YAAY,CAAC,gBAAgB,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;YACjE,YAAY,CAAC,mBAAmB,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;SACrE;IACH,CAAC;IAEY,mCAAa,GAA1B,UAA2B,MAAe;;;;4BACxC,qBAAM,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,MAAM,CAAC,EAAA;;wBAA1C,SAA0C,CAAC;wBAC3C,qBAAM,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC,EAAA;;wBAArC,SAAqC,CAAC;wBACtC,qBAAM,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,MAAM,CAAC,EAAA;;wBAAxC,SAAwC,CAAC;;;;;KAC1C;IAEa,6BAAO,GAArB;;;;;;;wBACQ,KAAK,GAAsB,UAAU,CAAC,QAAQ,CAClD,eAAe,EACf,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,aAAa,CACrC,CAAC;;;;wBACiB,UAAA,SAAA,KAAK,CAAA;;;;wBAAb,IAAI;;;;wBACU,oBAAA,SAAA,IAAI,CAAC,OAAO,CAAC,KAAK,CAAA,CAAA;;;;wBAA9B,QAAQ;wBACF,qBAAM,IAAI,CAAC,WAAW,CAAC,OAAO,CAC3C,QAAQ,CAAC,OAAO,CAAC,cAAc,CAChC,EAAA;;wBAFK,MAAM,GAAG,SAEd;wBACD,IAAI,MAAM,EAAE;4BACV,QAAQ,CAAC,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC;yBACpC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAGN;IACH,kBAAC;AAAD,CAAC,AAtCD,IAsCC"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { ArgumentTypes } from './commonTypes';
|
|
2
2
|
export declare class NodeHelper {
|
|
3
|
-
private static evaluateGenerator;
|
|
4
3
|
static evaluate<T extends Node>(...args: ArgumentTypes<typeof NodeHelper.evaluateGenerator>): T[];
|
|
5
4
|
static evaluateToSingle<T extends Node>(...args: ArgumentTypes<typeof NodeHelper.evaluateGenerator>): T;
|
|
6
5
|
static closestElement(node: Element | Text): Element;
|
|
@@ -9,4 +8,5 @@ export declare class NodeHelper {
|
|
|
9
8
|
static markElementAsTargetElement(element: Element): void;
|
|
10
9
|
static unmarkElementAsTargetElement(element: Element): void;
|
|
11
10
|
static nodeContains(descendant: Node, node: Node): boolean;
|
|
11
|
+
private static evaluateGenerator;
|
|
12
12
|
}
|
|
@@ -54,23 +54,6 @@ import { TOLGEE_TARGET_ATTRIBUTE } from '../Constants/Global';
|
|
|
54
54
|
var NodeHelper = /** @class */ (function () {
|
|
55
55
|
function NodeHelper() {
|
|
56
56
|
}
|
|
57
|
-
NodeHelper.evaluateGenerator = function (expression, targetNode) {
|
|
58
|
-
var node, evaluated;
|
|
59
|
-
return __generator(this, function (_a) {
|
|
60
|
-
switch (_a.label) {
|
|
61
|
-
case 0:
|
|
62
|
-
evaluated = document.evaluate(expression, targetNode, undefined, XPathResult.ANY_TYPE);
|
|
63
|
-
_a.label = 1;
|
|
64
|
-
case 1:
|
|
65
|
-
if (!((node = evaluated.iterateNext()) !== null)) return [3 /*break*/, 3];
|
|
66
|
-
return [4 /*yield*/, node];
|
|
67
|
-
case 2:
|
|
68
|
-
_a.sent();
|
|
69
|
-
return [3 /*break*/, 1];
|
|
70
|
-
case 3: return [2 /*return*/];
|
|
71
|
-
}
|
|
72
|
-
});
|
|
73
|
-
};
|
|
74
57
|
NodeHelper.evaluate = function () {
|
|
75
58
|
var args = [];
|
|
76
59
|
for (var _i = 0; _i < arguments.length; _i++) {
|
|
@@ -120,13 +103,31 @@ var NodeHelper = /** @class */ (function () {
|
|
|
120
103
|
return true;
|
|
121
104
|
}
|
|
122
105
|
if (node instanceof Attr) {
|
|
123
|
-
var ownerContainsAttr =
|
|
106
|
+
var ownerContainsAttr = node.ownerElement &&
|
|
107
|
+
Object.values(node.ownerElement.attributes).indexOf(node) > -1;
|
|
124
108
|
if (descendant.contains(node.ownerElement) && ownerContainsAttr) {
|
|
125
109
|
return true;
|
|
126
110
|
}
|
|
127
111
|
}
|
|
128
112
|
return false;
|
|
129
113
|
};
|
|
114
|
+
NodeHelper.evaluateGenerator = function (expression, targetNode) {
|
|
115
|
+
var node, evaluated;
|
|
116
|
+
return __generator(this, function (_a) {
|
|
117
|
+
switch (_a.label) {
|
|
118
|
+
case 0:
|
|
119
|
+
evaluated = document.evaluate(expression, targetNode, undefined, XPathResult.ANY_TYPE);
|
|
120
|
+
_a.label = 1;
|
|
121
|
+
case 1:
|
|
122
|
+
if (!((node = evaluated.iterateNext()) !== null)) return [3 /*break*/, 3];
|
|
123
|
+
return [4 /*yield*/, node];
|
|
124
|
+
case 2:
|
|
125
|
+
_a.sent();
|
|
126
|
+
return [3 /*break*/, 1];
|
|
127
|
+
case 3: return [2 /*return*/];
|
|
128
|
+
}
|
|
129
|
+
});
|
|
130
|
+
};
|
|
130
131
|
return NodeHelper;
|
|
131
132
|
}());
|
|
132
133
|
export { NodeHelper };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NodeHelper.js","sourceRoot":"","sources":["../../src/helpers/NodeHelper.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,OAAO,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAE9D;IAAA;
|
|
1
|
+
{"version":3,"file":"NodeHelper.js","sourceRoot":"","sources":["../../src/helpers/NodeHelper.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,OAAO,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAE9D;IAAA;IA8EA,CAAC;IA7EQ,mBAAQ,GAAf;QACE,cAA2D;aAA3D,UAA2D,EAA3D,qBAA2D,EAA3D,IAA2D;YAA3D,yBAA2D;;QAE3D,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,iBAAiB,OAAtB,IAAI,2BAAsB,IAAI,WAAS,CAAC;IAC5D,CAAC;IAEM,2BAAgB,GAAvB;QACE,cAA2D;aAA3D,UAA2D,EAA3D,qBAA2D,EAA3D,IAA2D;YAA3D,yBAA2D;;QAE3D,IAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,OAAb,IAAI,2BAAgB,IAAI,UAAC,CAAC;QACtC,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE;YACpB,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC;SACf;QACD,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE;YAClB,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC;SACrC;QACD,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC7C,CAAC;IAEa,yBAAc,GAA5B,UAA6B,IAAoB;QAC/C,IAAI,IAAI,YAAY,IAAI,EAAE;YACxB,OAAO,IAAI,CAAC,aAAa,CAAC;SAC3B;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,2BAAgB,GAAvB,UAAwB,IAAU;QAChC,IAAI,IAAI,CAAC,aAAa,EAAE;YACtB,OAAO,IAAI,CAAC,aAAa,CAAC;SAC3B;QACD,IAAK,IAAa,CAAC,YAAY,EAAE;YAC/B,OAAQ,IAAa,CAAC,YAAY,CAAC;SACpC;IACH,CAAC;IAEM,iCAAsB,GAA7B,UAA8B,OAAgB;QAC5C,OAAO,OAAO,CAAC,YAAY,CAAC,uBAAuB,CAAC,CAAC;IACvD,CAAC;IAEM,qCAA0B,GAAjC,UAAkC,OAAgB;QAChD,OAAO,CAAC,YAAY,CAAC,uBAAuB,EAAE,EAAE,CAAC,CAAC;IACpD,CAAC;IAEM,uCAA4B,GAAnC,UAAoC,OAAgB;QAClD,OAAO,CAAC,eAAe,CAAC,uBAAuB,CAAC,CAAC;IACnD,CAAC;IAEM,uBAAY,GAAnB,UAAoB,UAAgB,EAAE,IAAU;QAC9C,IAAI,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;YAC7B,OAAO,IAAI,CAAC;SACb;QACD,IAAI,IAAI,YAAY,IAAI,EAAE;YACxB,IAAM,iBAAiB,GACrB,IAAI,CAAC,YAAY;gBACjB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;YACjE,IAAI,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,iBAAiB,EAAE;gBAC/D,OAAO,IAAI,CAAC;aACb;SACF;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAEe,4BAAiB,GAAjC,UACE,UAAkB,EAClB,UAAgB;;;;;oBAGV,SAAS,GAAG,QAAQ,CAAC,QAAQ,CACjC,UAAU,EACV,UAAU,EACV,SAAS,EACT,WAAW,CAAC,QAAQ,CACrB,CAAC;;;yBACK,CAAA,CAAC,IAAI,GAAG,SAAS,CAAC,WAAW,EAAE,CAAC,KAAK,IAAI,CAAA;oBAC9C,qBAAM,IAAS,EAAA;;oBAAf,SAAe,CAAC;;;;;KAEnB;IACH,iBAAC;AAAD,CAAC,AA9ED,IA8EC"}
|
|
@@ -53,7 +53,7 @@ var MouseEventHandler = /** @class */ (function () {
|
|
|
53
53
|
}
|
|
54
54
|
};
|
|
55
55
|
element.addEventListener('mouseover', onMouseOver);
|
|
56
|
-
element.addEventListener('click', onClick);
|
|
56
|
+
element.addEventListener('click', onClick, { capture: true });
|
|
57
57
|
var onMouseDownOrUp = function (e) {
|
|
58
58
|
if (_this.areKeysDown()) {
|
|
59
59
|
e.stopPropagation();
|
|
@@ -67,7 +67,7 @@ var MouseEventHandler = /** @class */ (function () {
|
|
|
67
67
|
element.removeEventListener('mousedown', onMouseDownOrUp);
|
|
68
68
|
element.removeEventListener('mouseup', onMouseDownOrUp);
|
|
69
69
|
element.removeEventListener('mouseover', onMouseOver);
|
|
70
|
-
element.removeEventListener('click', onClick);
|
|
70
|
+
element.removeEventListener('click', onClick, { capture: true });
|
|
71
71
|
element.removeEventListener('mouseout', onMouseOut);
|
|
72
72
|
};
|
|
73
73
|
};
|
|
@@ -88,11 +88,13 @@ var MouseEventHandler = /** @class */ (function () {
|
|
|
88
88
|
}
|
|
89
89
|
};
|
|
90
90
|
MouseEventHandler.prototype.onMouseOut = function (element) {
|
|
91
|
+
element._tolgee.preventClean = false;
|
|
91
92
|
this.mouseOn.delete(element);
|
|
92
93
|
this.mouseOnChanged.emit(this.getMouseOn());
|
|
93
94
|
};
|
|
94
95
|
MouseEventHandler.prototype.onMouseOver = function (element) {
|
|
95
96
|
this.filterMouseOn();
|
|
97
|
+
element._tolgee.preventClean = true;
|
|
96
98
|
this.mouseOn.delete(element); //to get in to last place
|
|
97
99
|
this.mouseOn.add(element);
|
|
98
100
|
this.mouseOnChanged.emit(this.getMouseOn());
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MouseEventHandler.js","sourceRoot":"","sources":["../../src/highlighter/MouseEventHandler.ts"],"names":[],"mappings":";;;;;;;;;;;AACA,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAEvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAE5D;IAQE,2BAAoB,UAAsB;QAAtB,eAAU,GAAV,UAAU,CAAY;QAPlC,aAAQ,GAAG,IAAI,GAAG,EAAe,CAAC;QAClC,YAAO,GAAyB,IAAI,GAAG,EAAE,CAAC;QAE1C,mBAAc,GAAG,IAAI,gBAAgB,EAAmB,CAAC;QACzD,gBAAW,GACjB,IAAI,gBAAgB,EAAW,CAAC;QAGhC,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE;YACjC,IAAI,CAAC,eAAe,EAAE,CAAC;YACvB,OAAO;SACR;IACH,CAAC;IAED,kCAAM,GAAN,UACE,OAAgD,EAChD,OAAyC;QAF3C,iBAwBC;QApBC,IAAI,OAAO,CAAC,OAAO,CAAC,wBAAwB,EAAE;YAC5C,sCAAsC;YACtC,OAAO,CAAC,KAAK,CACX,2EAA2E,CAC5E,CAAC;YACF,OAAO;SACR;QACD,OAAO,CAAC,OAAO,CAAC,wBAAwB,GAAG,IAAI,CAAC;QAEhD,IAAI,CAAC,kBAAkB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAE1C,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC;YAC5B,IAAI,KAAI,CAAC,WAAW,KAAK,KAAI,CAAC,UAAU,EAAE,EAAE;gBAC1C,KAAI,CAAC,mBAAmB,EAAE,CAAC;aAC5B;QACH,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC;YACzB,KAAI,CAAC,mBAAmB,EAAE,CAAC;QAC7B,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,8CAAkB,GAA1B,UACE,OAAmE,EACnE,OAAyC;QAF3C,
|
|
1
|
+
{"version":3,"file":"MouseEventHandler.js","sourceRoot":"","sources":["../../src/highlighter/MouseEventHandler.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,11 +4,11 @@ import { DependencyStore } from '../services/DependencyStore';
|
|
|
4
4
|
export declare class TranslationHighlighter {
|
|
5
5
|
private dependencies;
|
|
6
6
|
pluginManager: PluginManager;
|
|
7
|
-
constructor(dependencies: DependencyStore);
|
|
8
7
|
private _renderer;
|
|
9
|
-
|
|
8
|
+
constructor(dependencies: DependencyStore);
|
|
10
9
|
private static getKeyOptions;
|
|
11
10
|
listen(element: ElementWithMeta & ElementCSSInlineStyle): void;
|
|
11
|
+
private getRenderer;
|
|
12
12
|
private getKeyAndDefault;
|
|
13
13
|
private translationEdit;
|
|
14
14
|
}
|
|
@@ -59,45 +59,42 @@ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
|
59
59
|
}
|
|
60
60
|
return to.concat(ar || Array.prototype.slice.call(from));
|
|
61
61
|
};
|
|
62
|
+
var __values = (this && this.__values) || function(o) {
|
|
63
|
+
var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
|
|
64
|
+
if (m) return m.call(o);
|
|
65
|
+
if (o && typeof o.length === "number") return {
|
|
66
|
+
next: function () {
|
|
67
|
+
if (o && i >= o.length) o = void 0;
|
|
68
|
+
return { value: o && o[i++], done: !o };
|
|
69
|
+
}
|
|
70
|
+
};
|
|
71
|
+
throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
|
|
72
|
+
};
|
|
62
73
|
var TranslationHighlighter = /** @class */ (function () {
|
|
63
74
|
function TranslationHighlighter(dependencies) {
|
|
64
75
|
var _this = this;
|
|
65
76
|
this.dependencies = dependencies;
|
|
66
77
|
this.translationEdit = function (e, element) { return __awaiter(_this, void 0, void 0, function () {
|
|
67
|
-
var key;
|
|
78
|
+
var renderer, key;
|
|
68
79
|
return __generator(this, function (_a) {
|
|
69
80
|
switch (_a.label) {
|
|
70
|
-
case 0:
|
|
71
|
-
if (!(typeof this.renderer === 'object')) return [3 /*break*/, 2];
|
|
72
|
-
return [4 /*yield*/, this.getKeyAndDefault(e, element)];
|
|
81
|
+
case 0: return [4 /*yield*/, this.getRenderer()];
|
|
73
82
|
case 1:
|
|
83
|
+
renderer = _a.sent();
|
|
84
|
+
if (!(typeof renderer === 'object')) return [3 /*break*/, 3];
|
|
85
|
+
return [4 /*yield*/, this.getKeyAndDefault(e, element)];
|
|
86
|
+
case 2:
|
|
74
87
|
key = _a.sent();
|
|
75
88
|
if (key) {
|
|
76
|
-
|
|
89
|
+
renderer.renderViewer(key.key, key.defaultValue);
|
|
77
90
|
return [2 /*return*/];
|
|
78
91
|
}
|
|
79
92
|
return [2 /*return*/];
|
|
80
|
-
case 2
|
|
81
|
-
// eslint-disable-next-line no-console
|
|
82
|
-
console.warn('Tolgee UI is not provided. To translate interactively provide tolgee ui constructor to "ui" configuration property. ' +
|
|
83
|
-
'To disable highlighting use production mode.');
|
|
84
|
-
return [2 /*return*/];
|
|
93
|
+
case 3: return [2 /*return*/];
|
|
85
94
|
}
|
|
86
95
|
});
|
|
87
96
|
}); };
|
|
88
97
|
}
|
|
89
|
-
Object.defineProperty(TranslationHighlighter.prototype, "renderer", {
|
|
90
|
-
get: function () {
|
|
91
|
-
if (this._renderer === undefined) {
|
|
92
|
-
if (typeof this.dependencies.properties.config.ui === 'function') {
|
|
93
|
-
this._renderer = new this.dependencies.properties.config.ui(this.dependencies);
|
|
94
|
-
}
|
|
95
|
-
}
|
|
96
|
-
return this._renderer;
|
|
97
|
-
},
|
|
98
|
-
enumerable: false,
|
|
99
|
-
configurable: true
|
|
100
|
-
});
|
|
101
98
|
TranslationHighlighter.getKeyOptions = function (node) {
|
|
102
99
|
var nodes = Array.from(node._tolgee.nodes);
|
|
103
100
|
return nodes.reduce(function (acc, curr) { return __spreadArray(__spreadArray([], __read(acc), false), __read(curr._tolgee.keys.map(function (k) { return ({
|
|
@@ -115,9 +112,70 @@ var TranslationHighlighter = /** @class */ (function () {
|
|
|
115
112
|
}
|
|
116
113
|
}); }); });
|
|
117
114
|
};
|
|
115
|
+
TranslationHighlighter.prototype.getRenderer = function () {
|
|
116
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
117
|
+
var possibleProviders, possibleProviders_1, possibleProviders_1_1, possibleProvider, constructorProvider, constructor, e_1, constructor, e_2_1;
|
|
118
|
+
var e_2, _a;
|
|
119
|
+
return __generator(this, function (_b) {
|
|
120
|
+
switch (_b.label) {
|
|
121
|
+
case 0:
|
|
122
|
+
if (!(this._renderer === undefined)) return [3 /*break*/, 11];
|
|
123
|
+
possibleProviders = [
|
|
124
|
+
this.dependencies.properties.config.ui,
|
|
125
|
+
window['@tolgee/ui'],
|
|
126
|
+
];
|
|
127
|
+
_b.label = 1;
|
|
128
|
+
case 1:
|
|
129
|
+
_b.trys.push([1, 8, 9, 10]);
|
|
130
|
+
possibleProviders_1 = __values(possibleProviders), possibleProviders_1_1 = possibleProviders_1.next();
|
|
131
|
+
_b.label = 2;
|
|
132
|
+
case 2:
|
|
133
|
+
if (!!possibleProviders_1_1.done) return [3 /*break*/, 7];
|
|
134
|
+
possibleProvider = possibleProviders_1_1.value;
|
|
135
|
+
if (!(typeof possibleProvider === 'function')) return [3 /*break*/, 6];
|
|
136
|
+
_b.label = 3;
|
|
137
|
+
case 3:
|
|
138
|
+
_b.trys.push([3, 5, , 6]);
|
|
139
|
+
constructorProvider = possibleProvider;
|
|
140
|
+
return [4 /*yield*/, constructorProvider()];
|
|
141
|
+
case 4:
|
|
142
|
+
constructor = _b.sent();
|
|
143
|
+
this._renderer = new constructor(this.dependencies);
|
|
144
|
+
return [3 /*break*/, 6];
|
|
145
|
+
case 5:
|
|
146
|
+
e_1 = _b.sent();
|
|
147
|
+
constructor = possibleProvider;
|
|
148
|
+
this._renderer = new constructor(this.dependencies);
|
|
149
|
+
return [3 /*break*/, 6];
|
|
150
|
+
case 6:
|
|
151
|
+
possibleProviders_1_1 = possibleProviders_1.next();
|
|
152
|
+
return [3 /*break*/, 2];
|
|
153
|
+
case 7: return [3 /*break*/, 10];
|
|
154
|
+
case 8:
|
|
155
|
+
e_2_1 = _b.sent();
|
|
156
|
+
e_2 = { error: e_2_1 };
|
|
157
|
+
return [3 /*break*/, 10];
|
|
158
|
+
case 9:
|
|
159
|
+
try {
|
|
160
|
+
if (possibleProviders_1_1 && !possibleProviders_1_1.done && (_a = possibleProviders_1.return)) _a.call(possibleProviders_1);
|
|
161
|
+
}
|
|
162
|
+
finally { if (e_2) throw e_2.error; }
|
|
163
|
+
return [7 /*endfinally*/];
|
|
164
|
+
case 10:
|
|
165
|
+
if (this._renderer === undefined) {
|
|
166
|
+
// eslint-disable-next-line no-console
|
|
167
|
+
console.warn('Tolgee UI is not provided. To translate interactively provide tolgee ui constructor to "ui" configuration property. ' +
|
|
168
|
+
'To disable highlighting use production mode.');
|
|
169
|
+
}
|
|
170
|
+
_b.label = 11;
|
|
171
|
+
case 11: return [2 /*return*/, this._renderer];
|
|
172
|
+
}
|
|
173
|
+
});
|
|
174
|
+
});
|
|
175
|
+
};
|
|
118
176
|
TranslationHighlighter.prototype.getKeyAndDefault = function (mouseEvent, element) {
|
|
119
177
|
return __awaiter(this, void 0, void 0, function () {
|
|
120
|
-
var keysWithDefaults, keySet, selectedKey_1, found;
|
|
178
|
+
var keysWithDefaults, keySet, renderer, selectedKey_1, found;
|
|
121
179
|
return __generator(this, function (_a) {
|
|
122
180
|
switch (_a.label) {
|
|
123
181
|
case 0:
|
|
@@ -129,19 +187,22 @@ var TranslationHighlighter = /** @class */ (function () {
|
|
|
129
187
|
}
|
|
130
188
|
keysWithDefaults = TranslationHighlighter.getKeyOptions(element);
|
|
131
189
|
keySet = new Set(keysWithDefaults.map(function (keyWithDefault) { return keyWithDefault.key; }));
|
|
132
|
-
if (!(keySet.size > 1)) return [3 /*break*/,
|
|
133
|
-
return [4 /*yield*/, this.
|
|
190
|
+
if (!(keySet.size > 1)) return [3 /*break*/, 3];
|
|
191
|
+
return [4 /*yield*/, this.getRenderer()];
|
|
192
|
+
case 1:
|
|
193
|
+
renderer = _a.sent();
|
|
194
|
+
return [4 /*yield*/, renderer.getKey({
|
|
134
195
|
keys: keySet,
|
|
135
196
|
openEvent: mouseEvent,
|
|
136
197
|
})];
|
|
137
|
-
case
|
|
198
|
+
case 2:
|
|
138
199
|
selectedKey_1 = _a.sent();
|
|
139
200
|
found = keysWithDefaults.find(function (kwd) { return kwd.key === selectedKey_1; });
|
|
140
201
|
if (found) {
|
|
141
202
|
return [2 /*return*/, found];
|
|
142
203
|
}
|
|
143
|
-
_a.label =
|
|
144
|
-
case
|
|
204
|
+
_a.label = 3;
|
|
205
|
+
case 3:
|
|
145
206
|
if (keySet.size === 1) {
|
|
146
207
|
return [2 /*return*/, keysWithDefaults[0]];
|
|
147
208
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TranslationHighlighter.js","sourceRoot":"","sources":["../../src/highlighter/TranslationHighlighter.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"TranslationHighlighter.js","sourceRoot":"","sources":["../../src/highlighter/TranslationHighlighter.ts"],"names":[],"mappings":"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"}
|
|
@@ -63,10 +63,12 @@ var ElementRegistrar = /** @class */ (function () {
|
|
|
63
63
|
try {
|
|
64
64
|
for (var _b = __values(this.registeredElements), _c = _b.next(); !_c.done; _c = _b.next()) {
|
|
65
65
|
var element = _c.value;
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
66
|
+
if (!element._tolgee.preventClean) {
|
|
67
|
+
this.cleanElementInactiveNodes(element);
|
|
68
|
+
if (element._tolgee.nodes.size === 0 &&
|
|
69
|
+
!element._tolgee.wrappedWithElementOnlyKey) {
|
|
70
|
+
this.cleanElement(element);
|
|
71
|
+
}
|
|
70
72
|
}
|
|
71
73
|
}
|
|
72
74
|
}
|
|
@@ -138,12 +140,14 @@ var ElementRegistrar = /** @class */ (function () {
|
|
|
138
140
|
}
|
|
139
141
|
};
|
|
140
142
|
ElementRegistrar.prototype.cleanElement = function (element) {
|
|
141
|
-
if (
|
|
142
|
-
element._tolgee.removeAllEventListeners
|
|
143
|
+
if (!element._tolgee.preventClean) {
|
|
144
|
+
if (typeof element._tolgee.removeAllEventListeners === 'function') {
|
|
145
|
+
element._tolgee.removeAllEventListeners();
|
|
146
|
+
}
|
|
147
|
+
element.removeAttribute(TOLGEE_ATTRIBUTE_NAME);
|
|
148
|
+
delete element._tolgee;
|
|
149
|
+
this.registeredElements.delete(element);
|
|
143
150
|
}
|
|
144
|
-
element.removeAttribute(TOLGEE_ATTRIBUTE_NAME);
|
|
145
|
-
delete element._tolgee;
|
|
146
|
-
this.registeredElements.delete(element);
|
|
147
151
|
};
|
|
148
152
|
ElementRegistrar.prototype.getActiveNodes = function (element) {
|
|
149
153
|
var _a, _b, node, e_5_1;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ElementRegistrar.js","sourceRoot":"","sources":["../../src/services/ElementRegistrar.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAE5D,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAInD;IAGE,0BACU,UAAsB,EACtB,sBAA8C,EAC9C,YAA0B;QAF1B,eAAU,GAAV,UAAU,CAAY;QACtB,2BAAsB,GAAtB,sBAAsB,CAAwB;QAC9C,iBAAY,GAAZ,YAAY,CAAc;QAL5B,uBAAkB,GAAyB,IAAI,GAAG,EAAE,CAAC;IAM1D,CAAC;IAEJ,mCAAQ,GAAR,UAAS,OAAwB;QAC/B,qCAAqC;QACrC,IACE,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,KAAK,SAAS;YACvD,CAAC,OAAO,CAAC,OAAO,CAAC,yBAAyB,EAC1C;YACA,OAAO;SACR;QACD,IACE,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,KAAK,aAAa;YAC7C,CAAC,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,OAAO,CAAC,EACrC;YACA,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;SAC7C;QACD,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAEnC,IAAI,CAAC,YAAY,CAAC,kBACnB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAClB,CAAC;IAED,qCAAU,GAAV;;;YACE,KAAsB,IAAA,KAAA,SAAA,IAAI,CAAC,kBAAkB,CAAA,gBAAA,4BAAE;gBAA1C,IAAM,OAAO,WAAA;gBAChB,IAAI,CAAC,yBAAyB,CAAC,OAAO,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"ElementRegistrar.js","sourceRoot":"","sources":["../../src/services/ElementRegistrar.ts"],"names":[],"mappings":"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"}
|
package/lib/types.d.ts
CHANGED
|
@@ -55,6 +55,17 @@ export declare type ElementMeta = {
|
|
|
55
55
|
highlight?: () => void;
|
|
56
56
|
unhighlight?: () => void;
|
|
57
57
|
initialBackgroundColor?: string;
|
|
58
|
+
/**
|
|
59
|
+
* Stops removing of element's inactive nodes and
|
|
60
|
+
* unregistering from ElementRegistrar.
|
|
61
|
+
*
|
|
62
|
+
* It's used when user has mouse on the element, so there is
|
|
63
|
+
* potential, that element highlight will be triggered.
|
|
64
|
+
*
|
|
65
|
+
* Triggering highlight needs the metadata stored on element, so
|
|
66
|
+
* we need the ability to prevent clean.
|
|
67
|
+
*/
|
|
68
|
+
preventClean?: boolean;
|
|
58
69
|
};
|
|
59
70
|
export declare type NodeMeta = {
|
|
60
71
|
oldTextContent: string;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tolgee/core",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.8.1",
|
|
4
4
|
"description": "Library providing ability to translate messages directly in context of developed application.",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"module": "./dist/tolgee.esm.js",
|
|
@@ -45,7 +45,7 @@
|
|
|
45
45
|
"@types/intl-messageformat": "^3.0.0",
|
|
46
46
|
"@types/jest": "^27.0.2",
|
|
47
47
|
"@types/node": "^16.10.2",
|
|
48
|
-
"concurrently": "6.
|
|
48
|
+
"concurrently": "6.4.0",
|
|
49
49
|
"intl-messageformat": "^9.9.1",
|
|
50
50
|
"jest": "^27.2.4",
|
|
51
51
|
"jest-fetch-mock": "^3.0.3",
|
|
@@ -54,11 +54,11 @@
|
|
|
54
54
|
"rollup-plugin-terser": "7.0.2",
|
|
55
55
|
"ts-jest": "^27.0.5",
|
|
56
56
|
"tslib": "^2.3.1",
|
|
57
|
-
"typedoc": "0.22.
|
|
58
|
-
"typedoc-plugin-markdown": "3.11.
|
|
57
|
+
"typedoc": "0.22.10",
|
|
58
|
+
"typedoc-plugin-markdown": "3.11.7",
|
|
59
59
|
"typescript": "4.4.4"
|
|
60
60
|
},
|
|
61
|
-
"gitHead": "
|
|
61
|
+
"gitHead": "b5def0cc789ac4492c8d5bf784885c432a7fb5d0",
|
|
62
62
|
"publishConfig": {
|
|
63
63
|
"access": "public"
|
|
64
64
|
}
|