dom-render 1.0.32 → 1.0.36
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/Config.d.ts +3 -0
- package/DomRenderProxy.d.ts +2 -1
- package/DomRenderProxy.js +8 -4
- package/README.MD +10 -2
- package/RawSet.d.ts +4 -0
- package/RawSet.js +69 -58
- package/dist/dom-render.js +78 -66
- package/events/EventManager.js +1 -1
- package/package.json +1 -1
- package/utils/script/ScriptUtils.js +0 -3
package/Config.d.ts
CHANGED
@@ -16,6 +16,9 @@ export interface Config {
|
|
16
16
|
onElementInit?: (name: string, obj: any, rawSet: RawSet) => void;
|
17
17
|
onAttrInit?: (name: string, attrValue: string, obj: any, rawSet: RawSet) => void;
|
18
18
|
proxyExcludeTyps?: ConstructorType<any>[];
|
19
|
+
scripts?: {
|
20
|
+
[n: string]: any;
|
21
|
+
};
|
19
22
|
applyEvents?: {
|
20
23
|
attrName: string;
|
21
24
|
callBack: (elements: Element, attrValue: string, obj: any) => void;
|
package/DomRenderProxy.d.ts
CHANGED
@@ -12,7 +12,8 @@ export declare class DomRenderProxy<T extends object> implements ProxyHandler<T>
|
|
12
12
|
static isFinal<T = any>(obj: T): boolean;
|
13
13
|
run(objProxy: T): void;
|
14
14
|
initRender(target: Node): void;
|
15
|
-
|
15
|
+
getRawSets(): RawSet[];
|
16
|
+
render(raws?: RawSet[]): void;
|
16
17
|
root(paths: string[], value: any): void;
|
17
18
|
set(target: T, p: string | symbol, value: any, receiver: T): boolean;
|
18
19
|
get(target: T, p: string | symbol, receiver: any): any;
|
package/DomRenderProxy.js
CHANGED
@@ -64,15 +64,19 @@ var DomRenderProxy = (function () {
|
|
64
64
|
});
|
65
65
|
}
|
66
66
|
});
|
67
|
+
this.render(this.getRawSets());
|
68
|
+
(_b = (_a = this._domRender_proxy) === null || _a === void 0 ? void 0 : _a.onInitRender) === null || _b === void 0 ? void 0 : _b.call(_a);
|
69
|
+
};
|
70
|
+
DomRenderProxy.prototype.getRawSets = function () {
|
71
|
+
var set = new Set();
|
67
72
|
this._rawSets.forEach(function (v, k) {
|
68
|
-
|
73
|
+
v.forEach(function (it) { return set.add(it); });
|
69
74
|
});
|
70
|
-
|
75
|
+
return Array.from(set);
|
71
76
|
};
|
72
77
|
DomRenderProxy.prototype.render = function (raws) {
|
73
78
|
var _this = this;
|
74
|
-
raws.forEach(function (it) {
|
75
|
-
it.getUsingTriggerVariables(_this.config).forEach(function (path) { return _this.addRawSet(path, it); });
|
79
|
+
(raws !== null && raws !== void 0 ? raws : this.getRawSets()).forEach(function (it) {
|
76
80
|
if (it.point.start.isConnected && it.point.start.isConnected) {
|
77
81
|
var rawSets = it.render(_this._domRender_proxy, _this.config);
|
78
82
|
_this.render(rawSets);
|
package/README.MD
CHANGED
@@ -34,7 +34,13 @@ npm install dom-render
|
|
34
34
|
#it# = ${var.superIt * #it#}
|
35
35
|
</scope>
|
36
36
|
</div>
|
37
|
-
|
37
|
+
|
38
|
+
<h2>df-inner-text</h2>
|
39
|
+
<div dr-strip="true" dr-inner-text="'<b>aa</b> <button dr-event-click=\'alert(1)\'>aa</button>'" > friend</div>
|
40
|
+
|
41
|
+
<h2>df-inner-html</h2>
|
42
|
+
<div dr-strip="true" dr-inner-html="'<b>aa</b> <button dr-event-click=\'alert(1)\'>aa</button>'" > friend</div>
|
43
|
+
|
38
44
|
<h1>event</h1>
|
39
45
|
<h2>dr-event, click, change, input, keyup, keydown</h2>
|
40
46
|
<div>
|
@@ -42,7 +48,9 @@ npm install dom-render
|
|
42
48
|
change: <input type="text" dr-event-change="this.name = $target.value"> <br>
|
43
49
|
input: <input type="text" dr-event-input="this.name = $target.value"> <br>
|
44
50
|
keyup: <input type="text" dr-event-keyup="this.name = $target.value"> <br>
|
45
|
-
keydown: <input type="text" dr-event-keydown="this.name = $target.value">
|
51
|
+
keydown: <input type="text" dr-event-keydown="this.name = $target.value"><br>
|
52
|
+
submit: <form dr-event-submit="console.log($event); $event.preventDefault();"><input type="text"> <button type="submit">submit</button></form><br>
|
53
|
+
window-event-popstate: <input type="text" dr-window-event-popstate="alert(this.name)"><br>
|
46
54
|
</div>
|
47
55
|
|
48
56
|
<h2>dr-value, value-link</h2>
|
package/RawSet.d.ts
CHANGED
@@ -12,11 +12,15 @@ export declare class RawSet {
|
|
12
12
|
static readonly DR_FOR_OF_NAME = "dr-for-of";
|
13
13
|
static readonly DR_FOR_NAME = "dr-for";
|
14
14
|
static readonly DR_THIS_NAME = "dr-this";
|
15
|
+
static readonly DR_INNERHTML_NAME = "dr-inner-html";
|
16
|
+
static readonly DR_INNERTEXT_NAME = "dr-inner-text";
|
15
17
|
static readonly DR_TAGS: never[];
|
16
18
|
static readonly DR_IT_OPTIONNAME = "dr-it";
|
17
19
|
static readonly DR_VAR_OPTIONNAME = "dr-var";
|
18
20
|
static readonly DR_STRIP_OPTIONNAME = "dr-strip";
|
19
21
|
static readonly DR_ATTRIBUTES: string[];
|
22
|
+
static readonly SCRIPTS_VARNAME = "$scripts";
|
23
|
+
static readonly RAWSET_VARNAME = "$rawset";
|
20
24
|
constructor(uuid: string, point: {
|
21
25
|
start: Comment;
|
22
26
|
end: Comment;
|
package/RawSet.js
CHANGED
@@ -24,13 +24,19 @@ var RawSet = (function () {
|
|
24
24
|
var usingTriggerVariables = new Set();
|
25
25
|
this.fragment.childNodes.forEach(function (cNode, key) {
|
26
26
|
var _a, _b, _c;
|
27
|
+
var script = '';
|
27
28
|
if (cNode.nodeType === Node.TEXT_NODE) {
|
28
|
-
|
29
|
+
script = "`" + ((_a = cNode.textContent) !== null && _a !== void 0 ? _a : '') + "`";
|
29
30
|
}
|
30
31
|
else if (cNode.nodeType === Node.ELEMENT_NODE) {
|
31
32
|
var element_1 = cNode;
|
32
33
|
var targetAttrNames = ((_c = (_b = config === null || config === void 0 ? void 0 : config.targetAttrs) === null || _b === void 0 ? void 0 : _b.map(function (it) { return it.name; })) !== null && _c !== void 0 ? _c : []).concat(RawSet.DR_ATTRIBUTES);
|
33
|
-
|
34
|
+
script = targetAttrNames.map(function (it) { return (element_1.getAttribute(it)); }).filter(function (it) { return it; }).join(';');
|
35
|
+
}
|
36
|
+
if (script) {
|
37
|
+
script = script.replace(RegExp(RawSet.SCRIPTS_VARNAME.replace('$', '\\$'), 'g'), "this?.___" + RawSet.SCRIPTS_VARNAME);
|
38
|
+
script = script.replace(RegExp(RawSet.RAWSET_VARNAME.replace('$', '\\$'), 'g'), "this?.___" + RawSet.RAWSET_VARNAME);
|
39
|
+
Array.from(ScriptUtils_1.ScriptUtils.getVariablePaths(script)).filter(function (it) { return !it.startsWith("___" + RawSet.SCRIPTS_VARNAME) && !it.startsWith("___" + RawSet.SCRIPTS_VARNAME); }).forEach(function (it) { return usingTriggerVariables.add(it); });
|
34
40
|
}
|
35
41
|
});
|
36
42
|
return usingTriggerVariables;
|
@@ -42,11 +48,11 @@ var RawSet = (function () {
|
|
42
48
|
var onAttrInitCallBack = [];
|
43
49
|
var onElementInitCallBack = [];
|
44
50
|
genNode.childNodes.forEach(function (cNode, key) {
|
45
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o;
|
51
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q;
|
46
52
|
var fag = document.createDocumentFragment();
|
47
53
|
if (cNode.nodeType === Node.TEXT_NODE) {
|
48
54
|
var textContent = cNode.textContent;
|
49
|
-
var n = document.createTextNode(ScriptUtils_1.ScriptUtils.eval("return `" + textContent + "
|
55
|
+
var n = document.createTextNode(ScriptUtils_1.ScriptUtils.eval("\n const " + RawSet.SCRIPTS_VARNAME + " = this.__render.scripts;\n const " + RawSet.RAWSET_VARNAME + " = this.__render.rawset;\n return `" + textContent + "`\n ", (config === null || config === void 0 ? void 0 : config.scripts) ? Object.assign(obj, { __render: Object.freeze({ rawset: _this, scripts: config === null || config === void 0 ? void 0 : config.scripts }) }) : obj));
|
50
56
|
(_a = cNode.parentNode) === null || _a === void 0 ? void 0 : _a.replaceChild(n, cNode);
|
51
57
|
}
|
52
58
|
else if (cNode.nodeType === Node.ELEMENT_NODE) {
|
@@ -57,6 +63,8 @@ var RawSet = (function () {
|
|
57
63
|
drFor: _this.getAttributeAndDelete(element_2, RawSet.DR_FOR_NAME),
|
58
64
|
drForOf: _this.getAttributeAndDelete(element_2, RawSet.DR_FOR_OF_NAME),
|
59
65
|
drThis: _this.getAttributeAndDelete(element_2, RawSet.DR_THIS_NAME),
|
66
|
+
drInnerHTML: _this.getAttributeAndDelete(element_2, RawSet.DR_INNERHTML_NAME),
|
67
|
+
drInnerText: _this.getAttributeAndDelete(element_2, RawSet.DR_INNERTEXT_NAME),
|
60
68
|
drItOption: _this.getAttributeAndDelete(element_2, RawSet.DR_IT_OPTIONNAME),
|
61
69
|
drVarOption: _this.getAttributeAndDelete(element_2, RawSet.DR_VAR_OPTIONNAME),
|
62
70
|
drStripOption: _this.getAttributeAndDelete(element_2, RawSet.DR_STRIP_OPTIONNAME) === 'true'
|
@@ -65,9 +73,7 @@ var RawSet = (function () {
|
|
65
73
|
var itRandom = RawSet.drItOtherEncoding(element_2);
|
66
74
|
var vars = RawSet.drVarEncoding(element_2, (_b = drAttr.drVarOption) !== null && _b !== void 0 ? _b : '');
|
67
75
|
var newTemp = document.createElement('temp');
|
68
|
-
ScriptUtils_1.ScriptUtils.eval("\n const n = this.
|
69
|
-
__fag: newTemp, __drStripOption: drAttr.drStripOption, __element: element_2
|
70
|
-
}, obj));
|
76
|
+
ScriptUtils_1.ScriptUtils.eval("\n const " + RawSet.SCRIPTS_VARNAME + " = this.__render.scripts;\n const " + RawSet.RAWSET_VARNAME + " = this.__render.rawset;\n const n = this.__render.element.cloneNode(true);\n var destIt = " + drAttr.drItOption + ";\n if (destIt !== undefined) {\n n.innerHTML = n.innerHTML.replace(/\\#it\\#/g, destIt);\n }\n if (this.__render.drStripOption) {\n Array.from(n.childNodes).forEach(it => this.__fag.append(it));\n } else {\n this.__render.fag.append(n);\n }", Object.assign(obj, { __render: Object.freeze({ fag: newTemp, drStripOption: drAttr.drStripOption, element: element_2, rawset: _this, scripts: config === null || config === void 0 ? void 0 : config.scripts }) }));
|
71
77
|
RawSet.drVarDecoding(newTemp, vars);
|
72
78
|
RawSet.drItOtherDecoding(newTemp, itRandom);
|
73
79
|
var tempalte = document.createElement('template');
|
@@ -81,9 +87,7 @@ var RawSet = (function () {
|
|
81
87
|
var itRandom = RawSet.drItOtherEncoding(element_2);
|
82
88
|
var vars = RawSet.drVarEncoding(element_2, (_d = drAttr.drVarOption) !== null && _d !== void 0 ? _d : '');
|
83
89
|
var newTemp = document.createElement('temp');
|
84
|
-
ScriptUtils_1.ScriptUtils.eval("\n if(" + drAttr.drIf + ") {\n const n = this.
|
85
|
-
__fag: newTemp, __drStripOption: drAttr.drStripOption, __element: element_2
|
86
|
-
}, obj));
|
90
|
+
ScriptUtils_1.ScriptUtils.eval("\n const " + RawSet.SCRIPTS_VARNAME + " = this.__render.scripts;\n const " + RawSet.RAWSET_VARNAME + " = this.__render.rawset;\n if(" + drAttr.drIf + ") {\n const n = this.__render.element.cloneNode(true);\n var destIt = " + drAttr.drItOption + ";\n if (destIt !== undefined) {\n n.innerHTML = n.innerHTML.replace(/\\#it\\#/g, destIt);\n }\n if (this.__render.drStripOption) {\n Array.from(n.childNodes).forEach(it => this.__render.fag.append(it));\n } else {\n this.__render.fag.append(n);\n }\n }", Object.assign(obj, { __render: Object.freeze({ fag: newTemp, drStripOption: drAttr.drStripOption, element: element_2, rawset: _this, scripts: config === null || config === void 0 ? void 0 : config.scripts }) }));
|
87
91
|
RawSet.drVarDecoding(newTemp, vars);
|
88
92
|
RawSet.drItOtherDecoding(newTemp, itRandom);
|
89
93
|
var tempalte = document.createElement('template');
|
@@ -105,41 +109,61 @@ var RawSet = (function () {
|
|
105
109
|
cNode.remove();
|
106
110
|
}
|
107
111
|
}
|
112
|
+
if (drAttr.drInnerText) {
|
113
|
+
var data = ScriptUtils_1.ScriptUtils.evalReturn(drAttr.drInnerText, obj);
|
114
|
+
var newTemp = document.createElement('temp');
|
115
|
+
ScriptUtils_1.ScriptUtils.eval("\n const n = this.__element.cloneNode(true);\n n.innerText = this.__data;\n if (this.__drStripOption) {\n Array.from(n.childNodes).forEach(it => this.__fag.append(it));\n } else {\n this.__fag.append(n);\n }\n ", Object.assign({
|
116
|
+
__fag: newTemp, __drStripOption: drAttr.drStripOption, __data: data, __element: element_2
|
117
|
+
}, obj));
|
118
|
+
var tempalte = document.createElement('template');
|
119
|
+
tempalte.innerHTML = newTemp.innerHTML;
|
120
|
+
fag.append(tempalte.content);
|
121
|
+
var rr = RawSet.checkPointCreates(fag, config);
|
122
|
+
(_h = element_2.parentNode) === null || _h === void 0 ? void 0 : _h.replaceChild(fag, element_2);
|
123
|
+
raws.push.apply(raws, rr);
|
124
|
+
}
|
125
|
+
if (drAttr.drInnerHTML) {
|
126
|
+
var data = ScriptUtils_1.ScriptUtils.evalReturn(drAttr.drInnerHTML, obj);
|
127
|
+
var newTemp = document.createElement('temp');
|
128
|
+
ScriptUtils_1.ScriptUtils.eval("\n const n = this.__element.cloneNode(true);\n n.innerHTML = this.__data;\n if (this.__drStripOption) {\n Array.from(n.childNodes).forEach(it => this.__fag.append(it));\n } else {\n this.__fag.append(n);\n }\n ", Object.assign({
|
129
|
+
__fag: newTemp, __drStripOption: drAttr.drStripOption, __data: data, __element: element_2
|
130
|
+
}, obj));
|
131
|
+
var tempalte = document.createElement('template');
|
132
|
+
tempalte.innerHTML = newTemp.innerHTML;
|
133
|
+
fag.append(tempalte.content);
|
134
|
+
var rr = RawSet.checkPointCreates(fag, config);
|
135
|
+
(_j = element_2.parentNode) === null || _j === void 0 ? void 0 : _j.replaceChild(fag, element_2);
|
136
|
+
raws.push.apply(raws, rr);
|
137
|
+
}
|
108
138
|
if (drAttr.drFor) {
|
109
139
|
var itRandom = RawSet.drItOtherEncoding(element_2);
|
110
|
-
var vars = RawSet.drVarEncoding(element_2, (
|
140
|
+
var vars = RawSet.drVarEncoding(element_2, (_k = drAttr.drVarOption) !== null && _k !== void 0 ? _k : '');
|
111
141
|
var newTemp = document.createElement('temp');
|
112
|
-
ScriptUtils_1.ScriptUtils.eval("\n for(" + drAttr.drFor + ") {\n const n = this.
|
113
|
-
__fag: newTemp, __drStripOption: drAttr.drStripOption, __element: element_2
|
114
|
-
}, obj));
|
142
|
+
ScriptUtils_1.ScriptUtils.eval("\n const " + RawSet.SCRIPTS_VARNAME + " = this.__render.scripts;\n for(" + drAttr.drFor + ") {\n const n = this.__render.element.cloneNode(true);\n var destIt = " + drAttr.drItOption + ";\n if (destIt !== undefined) {\n n.innerHTML = n.innerHTML.replace(/\\#it\\#/g, destIt);\n }\n if (this.__render.drStripOption) {\n Array.from(n.childNodes).forEach(it => this.__render.fag.append(it));\n } else {\n this.__render.fag.append(n);\n }\n }", Object.assign(obj, { __render: Object.freeze({ fag: newTemp, drStripOption: drAttr.drStripOption, element: element_2, scripts: config === null || config === void 0 ? void 0 : config.scripts }) }));
|
115
143
|
RawSet.drVarDecoding(newTemp, vars);
|
116
144
|
RawSet.drItOtherDecoding(newTemp, itRandom);
|
117
145
|
var tempalte = document.createElement('template');
|
118
146
|
tempalte.innerHTML = newTemp.innerHTML;
|
119
147
|
fag.append(tempalte.content);
|
120
148
|
var rr = RawSet.checkPointCreates(fag, config);
|
121
|
-
(
|
149
|
+
(_l = element_2.parentNode) === null || _l === void 0 ? void 0 : _l.replaceChild(fag, element_2);
|
122
150
|
raws.push.apply(raws, rr);
|
123
151
|
}
|
124
152
|
if (drAttr.drForOf) {
|
125
153
|
var itRandom = RawSet.drItOtherEncoding(element_2);
|
126
|
-
var vars = RawSet.drVarEncoding(element_2, (
|
154
|
+
var vars = RawSet.drVarEncoding(element_2, (_m = drAttr.drVarOption) !== null && _m !== void 0 ? _m : '');
|
127
155
|
var newTemp = document.createElement('temp');
|
128
|
-
ScriptUtils_1.ScriptUtils.eval("var i = 0; for(const it of " + drAttr.drForOf + ") {\n var destIt = it;\n var forOfStr = `" + drAttr.drForOf + "`;\n if (/,/g.test(forOfStr)) {\n if (typeof it === 'string') {\n destIt = it;\n } else {\n destIt = forOfStr.substring(1, forOfStr.length-1).split(',')[i];\n }\n } else {\n destIt = forOfStr + '[' + i +']'\n }\n \n const n = this.
|
129
|
-
__drStripOption: drAttr.drStripOption,
|
130
|
-
__fag: newTemp,
|
131
|
-
__element: element_2
|
132
|
-
}, obj));
|
156
|
+
ScriptUtils_1.ScriptUtils.eval("\n const " + RawSet.SCRIPTS_VARNAME + " = this.__render.scripts;\n var i = 0; \n for(const it of " + drAttr.drForOf + ") {\n var destIt = it;\n var forOfStr = `" + drAttr.drForOf + "`;\n if (/,/g.test(forOfStr)) {\n if (typeof it === 'string') {\n destIt = it;\n } else {\n destIt = forOfStr.substring(1, forOfStr.length-1).split(',')[i];\n }\n } else {\n destIt = forOfStr + '[' + i +']'\n }\n \n const n = this.__render.element.cloneNode(true);\n n.innerHTML = n.innerHTML.replace(/\\#it\\#/g, destIt);\n \n if (this.__render.drStripOption) {\n Array.from(n.childNodes).forEach(it => this.__render.fag.append(it));\n } else {\n this.__render.fag.append(n);\n }\n i++;\n }", Object.assign(obj, { __render: Object.freeze({ drStripOption: drAttr.drStripOption, fag: newTemp, element: element_2 }) }));
|
133
157
|
RawSet.drVarDecoding(newTemp, vars);
|
134
158
|
RawSet.drItOtherDecoding(newTemp, itRandom);
|
135
159
|
var tempalte = document.createElement('template');
|
136
160
|
tempalte.innerHTML = newTemp.innerHTML;
|
137
161
|
fag.append(tempalte.content);
|
138
162
|
var rr = RawSet.checkPointCreates(fag, config);
|
139
|
-
(
|
163
|
+
(_o = element_2.parentNode) === null || _o === void 0 ? void 0 : _o.replaceChild(fag, element_2);
|
140
164
|
raws.push.apply(raws, rr);
|
141
165
|
}
|
142
|
-
(
|
166
|
+
(_p = config === null || config === void 0 ? void 0 : config.targetElements) === null || _p === void 0 ? void 0 : _p.forEach(function (it) {
|
143
167
|
var _a, _b;
|
144
168
|
var name = it.name;
|
145
169
|
if (name.toLowerCase() === element_2.tagName.toLowerCase()) {
|
@@ -158,7 +182,7 @@ var RawSet = (function () {
|
|
158
182
|
}
|
159
183
|
}
|
160
184
|
});
|
161
|
-
(
|
185
|
+
(_q = config === null || config === void 0 ? void 0 : config.targetAttrs) === null || _q === void 0 ? void 0 : _q.forEach(function (it) {
|
162
186
|
var _a, _b;
|
163
187
|
var attrName = it.name;
|
164
188
|
var attrValue = _this.getAttributeAndDelete(element_2, attrName);
|
@@ -218,42 +242,25 @@ var RawSet = (function () {
|
|
218
242
|
var currentNode;
|
219
243
|
var _loop_1 = function () {
|
220
244
|
if (currentNode.nodeType === Node.TEXT_NODE) {
|
221
|
-
var
|
245
|
+
var text = (_a = currentNode.textContent) !== null && _a !== void 0 ? _a : '';
|
222
246
|
var template_1 = document.createElement('template');
|
223
|
-
var a = StringUtils_1.StringUtils.regexExec(/\$\{.*?\}/g,
|
224
|
-
var map = a.
|
247
|
+
var a = StringUtils_1.StringUtils.regexExec(/\$\{.*?\}/g, text);
|
248
|
+
var map = a.map(function (it) { return { uuid: RandomUtils_1.RandomUtils.uuid(), content: it[0], regexArr: it }; });
|
249
|
+
var lasterIndex_1 = 0;
|
225
250
|
map.forEach(function (it) {
|
226
|
-
var
|
227
|
-
|
228
|
-
|
229
|
-
|
230
|
-
|
231
|
-
|
232
|
-
|
233
|
-
var
|
234
|
-
|
235
|
-
|
236
|
-
|
237
|
-
return (text === "start text " + it.uuid || text === "end text " + it.uuid) ? NodeFilter.FILTER_ACCEPT : NodeFilter.FILTER_REJECT;
|
238
|
-
}
|
239
|
-
});
|
240
|
-
var start;
|
241
|
-
var end;
|
242
|
-
var subNode;
|
243
|
-
while (subNode = subNodeIterator.nextNode()) {
|
244
|
-
if (((_a = subNode.textContent) !== null && _a !== void 0 ? _a : '').startsWith('start')) {
|
245
|
-
start = subNode;
|
246
|
-
}
|
247
|
-
if (((_b = subNode.textContent) !== null && _b !== void 0 ? _b : '').startsWith('end')) {
|
248
|
-
end = subNode;
|
249
|
-
}
|
250
|
-
}
|
251
|
-
if (start && end) {
|
252
|
-
var fragment = document.createDocumentFragment();
|
253
|
-
fragment.append(document.createTextNode(it.content));
|
254
|
-
pars.push(new RawSet(it.uuid, { start: start, end: end }, fragment));
|
255
|
-
}
|
251
|
+
var regexArr = it.regexArr;
|
252
|
+
var preparedText = regexArr.input.substring(lasterIndex_1, regexArr.index);
|
253
|
+
var start = document.createComment("start text " + it.uuid);
|
254
|
+
var end = document.createComment("end text " + it.uuid);
|
255
|
+
template_1.content.append(document.createTextNode(preparedText));
|
256
|
+
template_1.content.append(start);
|
257
|
+
template_1.content.append(end);
|
258
|
+
var fragment = document.createDocumentFragment();
|
259
|
+
fragment.append(document.createTextNode(it.content));
|
260
|
+
pars.push(new RawSet(it.uuid, { start: start, end: end }, fragment));
|
261
|
+
lasterIndex_1 = regexArr.index + it.content.length;
|
256
262
|
});
|
263
|
+
template_1.content.append(document.createTextNode(text.substring(lasterIndex_1, text.length)));
|
257
264
|
(_b = currentNode === null || currentNode === void 0 ? void 0 : currentNode.parentNode) === null || _b === void 0 ? void 0 : _b.replaceChild(template_1.content, currentNode);
|
258
265
|
}
|
259
266
|
else {
|
@@ -366,11 +373,15 @@ var RawSet = (function () {
|
|
366
373
|
RawSet.DR_FOR_OF_NAME = 'dr-for-of';
|
367
374
|
RawSet.DR_FOR_NAME = 'dr-for';
|
368
375
|
RawSet.DR_THIS_NAME = 'dr-this';
|
376
|
+
RawSet.DR_INNERHTML_NAME = 'dr-inner-html';
|
377
|
+
RawSet.DR_INNERTEXT_NAME = 'dr-inner-text';
|
369
378
|
RawSet.DR_TAGS = [];
|
370
379
|
RawSet.DR_IT_OPTIONNAME = 'dr-it';
|
371
380
|
RawSet.DR_VAR_OPTIONNAME = 'dr-var';
|
372
381
|
RawSet.DR_STRIP_OPTIONNAME = 'dr-strip';
|
373
|
-
RawSet.DR_ATTRIBUTES = [RawSet.DR_IF_NAME, RawSet.DR_FOR_OF_NAME, RawSet.DR_FOR_NAME, RawSet.DR_THIS_NAME, RawSet.
|
382
|
+
RawSet.DR_ATTRIBUTES = [RawSet.DR, RawSet.DR_IF_NAME, RawSet.DR_FOR_OF_NAME, RawSet.DR_FOR_NAME, RawSet.DR_THIS_NAME, RawSet.DR_INNERHTML_NAME, RawSet.DR_INNERTEXT_NAME];
|
383
|
+
RawSet.SCRIPTS_VARNAME = '$scripts';
|
384
|
+
RawSet.RAWSET_VARNAME = '$rawset';
|
374
385
|
return RawSet;
|
375
386
|
}());
|
376
387
|
exports.RawSet = RawSet;
|
package/dist/dom-render.js
CHANGED
@@ -165,9 +165,6 @@ var ScriptUtils = (function () {
|
|
165
165
|
return usingVars;
|
166
166
|
};
|
167
167
|
ScriptUtils.evalReturn = function (script, thisTarget) {
|
168
|
-
if (!script.startsWith('this.')) {
|
169
|
-
script = 'this.' + script;
|
170
|
-
}
|
171
168
|
return this.eval('return ' + script + ';', thisTarget);
|
172
169
|
};
|
173
170
|
ScriptUtils.eval = function (script, thisTarget) {
|
@@ -206,7 +203,7 @@ var eventManager = new (function () {
|
|
206
203
|
function class_1() {
|
207
204
|
var _this = this;
|
208
205
|
this.attrPrefix = 'dr-';
|
209
|
-
this.eventNames = ['click', 'change', 'keyup', 'keydown', 'input'];
|
206
|
+
this.eventNames = ['click', 'change', 'keyup', 'keydown', 'input', 'submit'];
|
210
207
|
this.attrNames = [
|
211
208
|
this.attrPrefix + 'value',
|
212
209
|
this.attrPrefix + 'value-link',
|
@@ -438,13 +435,19 @@ var RawSet = (function () {
|
|
438
435
|
var usingTriggerVariables = new Set();
|
439
436
|
this.fragment.childNodes.forEach(function (cNode, key) {
|
440
437
|
var _a, _b, _c;
|
438
|
+
var script = '';
|
441
439
|
if (cNode.nodeType === Node.TEXT_NODE) {
|
442
|
-
|
440
|
+
script = "`" + ((_a = cNode.textContent) !== null && _a !== void 0 ? _a : '') + "`";
|
443
441
|
}
|
444
442
|
else if (cNode.nodeType === Node.ELEMENT_NODE) {
|
445
443
|
var element_1 = cNode;
|
446
444
|
var targetAttrNames = ((_c = (_b = config === null || config === void 0 ? void 0 : config.targetAttrs) === null || _b === void 0 ? void 0 : _b.map(function (it) { return it.name; })) !== null && _c !== void 0 ? _c : []).concat(RawSet.DR_ATTRIBUTES);
|
447
|
-
|
445
|
+
script = targetAttrNames.map(function (it) { return (element_1.getAttribute(it)); }).filter(function (it) { return it; }).join(';');
|
446
|
+
}
|
447
|
+
if (script) {
|
448
|
+
script = script.replace(RegExp(RawSet.SCRIPTS_VARNAME.replace('$', '\\$'), 'g'), "this?.___" + RawSet.SCRIPTS_VARNAME);
|
449
|
+
script = script.replace(RegExp(RawSet.RAWSET_VARNAME.replace('$', '\\$'), 'g'), "this?.___" + RawSet.RAWSET_VARNAME);
|
450
|
+
Array.from(ScriptUtils.getVariablePaths(script)).filter(function (it) { return !it.startsWith("___" + RawSet.SCRIPTS_VARNAME) && !it.startsWith("___" + RawSet.SCRIPTS_VARNAME); }).forEach(function (it) { return usingTriggerVariables.add(it); });
|
448
451
|
}
|
449
452
|
});
|
450
453
|
return usingTriggerVariables;
|
@@ -456,11 +459,11 @@ var RawSet = (function () {
|
|
456
459
|
var onAttrInitCallBack = [];
|
457
460
|
var onElementInitCallBack = [];
|
458
461
|
genNode.childNodes.forEach(function (cNode, key) {
|
459
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o;
|
462
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q;
|
460
463
|
var fag = document.createDocumentFragment();
|
461
464
|
if (cNode.nodeType === Node.TEXT_NODE) {
|
462
465
|
var textContent = cNode.textContent;
|
463
|
-
var n = document.createTextNode(ScriptUtils.eval("return `" + textContent + "
|
466
|
+
var n = document.createTextNode(ScriptUtils.eval("\n const " + RawSet.SCRIPTS_VARNAME + " = this.__render.scripts;\n const " + RawSet.RAWSET_VARNAME + " = this.__render.rawset;\n return `" + textContent + "`\n ", (config === null || config === void 0 ? void 0 : config.scripts) ? Object.assign(obj, { __render: Object.freeze({ rawset: _this, scripts: config === null || config === void 0 ? void 0 : config.scripts }) }) : obj));
|
464
467
|
(_a = cNode.parentNode) === null || _a === void 0 ? void 0 : _a.replaceChild(n, cNode);
|
465
468
|
}
|
466
469
|
else if (cNode.nodeType === Node.ELEMENT_NODE) {
|
@@ -471,6 +474,8 @@ var RawSet = (function () {
|
|
471
474
|
drFor: _this.getAttributeAndDelete(element_2, RawSet.DR_FOR_NAME),
|
472
475
|
drForOf: _this.getAttributeAndDelete(element_2, RawSet.DR_FOR_OF_NAME),
|
473
476
|
drThis: _this.getAttributeAndDelete(element_2, RawSet.DR_THIS_NAME),
|
477
|
+
drInnerHTML: _this.getAttributeAndDelete(element_2, RawSet.DR_INNERHTML_NAME),
|
478
|
+
drInnerText: _this.getAttributeAndDelete(element_2, RawSet.DR_INNERTEXT_NAME),
|
474
479
|
drItOption: _this.getAttributeAndDelete(element_2, RawSet.DR_IT_OPTIONNAME),
|
475
480
|
drVarOption: _this.getAttributeAndDelete(element_2, RawSet.DR_VAR_OPTIONNAME),
|
476
481
|
drStripOption: _this.getAttributeAndDelete(element_2, RawSet.DR_STRIP_OPTIONNAME) === 'true'
|
@@ -479,9 +484,7 @@ var RawSet = (function () {
|
|
479
484
|
var itRandom = RawSet.drItOtherEncoding(element_2);
|
480
485
|
var vars = RawSet.drVarEncoding(element_2, (_b = drAttr.drVarOption) !== null && _b !== void 0 ? _b : '');
|
481
486
|
var newTemp = document.createElement('temp');
|
482
|
-
ScriptUtils.eval("\n const n = this.
|
483
|
-
__fag: newTemp, __drStripOption: drAttr.drStripOption, __element: element_2
|
484
|
-
}, obj));
|
487
|
+
ScriptUtils.eval("\n const " + RawSet.SCRIPTS_VARNAME + " = this.__render.scripts;\n const " + RawSet.RAWSET_VARNAME + " = this.__render.rawset;\n const n = this.__render.element.cloneNode(true);\n var destIt = " + drAttr.drItOption + ";\n if (destIt !== undefined) {\n n.innerHTML = n.innerHTML.replace(/\\#it\\#/g, destIt);\n }\n if (this.__render.drStripOption) {\n Array.from(n.childNodes).forEach(it => this.__fag.append(it));\n } else {\n this.__render.fag.append(n);\n }", Object.assign(obj, { __render: Object.freeze({ fag: newTemp, drStripOption: drAttr.drStripOption, element: element_2, rawset: _this, scripts: config === null || config === void 0 ? void 0 : config.scripts }) }));
|
485
488
|
RawSet.drVarDecoding(newTemp, vars);
|
486
489
|
RawSet.drItOtherDecoding(newTemp, itRandom);
|
487
490
|
var tempalte = document.createElement('template');
|
@@ -495,9 +498,7 @@ var RawSet = (function () {
|
|
495
498
|
var itRandom = RawSet.drItOtherEncoding(element_2);
|
496
499
|
var vars = RawSet.drVarEncoding(element_2, (_d = drAttr.drVarOption) !== null && _d !== void 0 ? _d : '');
|
497
500
|
var newTemp = document.createElement('temp');
|
498
|
-
ScriptUtils.eval("\n if(" + drAttr.drIf + ") {\n const n = this.
|
499
|
-
__fag: newTemp, __drStripOption: drAttr.drStripOption, __element: element_2
|
500
|
-
}, obj));
|
501
|
+
ScriptUtils.eval("\n const " + RawSet.SCRIPTS_VARNAME + " = this.__render.scripts;\n const " + RawSet.RAWSET_VARNAME + " = this.__render.rawset;\n if(" + drAttr.drIf + ") {\n const n = this.__render.element.cloneNode(true);\n var destIt = " + drAttr.drItOption + ";\n if (destIt !== undefined) {\n n.innerHTML = n.innerHTML.replace(/\\#it\\#/g, destIt);\n }\n if (this.__render.drStripOption) {\n Array.from(n.childNodes).forEach(it => this.__render.fag.append(it));\n } else {\n this.__render.fag.append(n);\n }\n }", Object.assign(obj, { __render: Object.freeze({ fag: newTemp, drStripOption: drAttr.drStripOption, element: element_2, rawset: _this, scripts: config === null || config === void 0 ? void 0 : config.scripts }) }));
|
501
502
|
RawSet.drVarDecoding(newTemp, vars);
|
502
503
|
RawSet.drItOtherDecoding(newTemp, itRandom);
|
503
504
|
var tempalte = document.createElement('template');
|
@@ -519,41 +520,61 @@ var RawSet = (function () {
|
|
519
520
|
cNode.remove();
|
520
521
|
}
|
521
522
|
}
|
523
|
+
if (drAttr.drInnerText) {
|
524
|
+
var data = ScriptUtils.evalReturn(drAttr.drInnerText, obj);
|
525
|
+
var newTemp = document.createElement('temp');
|
526
|
+
ScriptUtils.eval("\n const n = this.__element.cloneNode(true);\n n.innerText = this.__data;\n if (this.__drStripOption) {\n Array.from(n.childNodes).forEach(it => this.__fag.append(it));\n } else {\n this.__fag.append(n);\n }\n ", Object.assign({
|
527
|
+
__fag: newTemp, __drStripOption: drAttr.drStripOption, __data: data, __element: element_2
|
528
|
+
}, obj));
|
529
|
+
var tempalte = document.createElement('template');
|
530
|
+
tempalte.innerHTML = newTemp.innerHTML;
|
531
|
+
fag.append(tempalte.content);
|
532
|
+
var rr = RawSet.checkPointCreates(fag, config);
|
533
|
+
(_h = element_2.parentNode) === null || _h === void 0 ? void 0 : _h.replaceChild(fag, element_2);
|
534
|
+
raws.push.apply(raws, rr);
|
535
|
+
}
|
536
|
+
if (drAttr.drInnerHTML) {
|
537
|
+
var data = ScriptUtils.evalReturn(drAttr.drInnerHTML, obj);
|
538
|
+
var newTemp = document.createElement('temp');
|
539
|
+
ScriptUtils.eval("\n const n = this.__element.cloneNode(true);\n n.innerHTML = this.__data;\n if (this.__drStripOption) {\n Array.from(n.childNodes).forEach(it => this.__fag.append(it));\n } else {\n this.__fag.append(n);\n }\n ", Object.assign({
|
540
|
+
__fag: newTemp, __drStripOption: drAttr.drStripOption, __data: data, __element: element_2
|
541
|
+
}, obj));
|
542
|
+
var tempalte = document.createElement('template');
|
543
|
+
tempalte.innerHTML = newTemp.innerHTML;
|
544
|
+
fag.append(tempalte.content);
|
545
|
+
var rr = RawSet.checkPointCreates(fag, config);
|
546
|
+
(_j = element_2.parentNode) === null || _j === void 0 ? void 0 : _j.replaceChild(fag, element_2);
|
547
|
+
raws.push.apply(raws, rr);
|
548
|
+
}
|
522
549
|
if (drAttr.drFor) {
|
523
550
|
var itRandom = RawSet.drItOtherEncoding(element_2);
|
524
|
-
var vars = RawSet.drVarEncoding(element_2, (
|
551
|
+
var vars = RawSet.drVarEncoding(element_2, (_k = drAttr.drVarOption) !== null && _k !== void 0 ? _k : '');
|
525
552
|
var newTemp = document.createElement('temp');
|
526
|
-
ScriptUtils.eval("\n for(" + drAttr.drFor + ") {\n const n = this.
|
527
|
-
__fag: newTemp, __drStripOption: drAttr.drStripOption, __element: element_2
|
528
|
-
}, obj));
|
553
|
+
ScriptUtils.eval("\n const " + RawSet.SCRIPTS_VARNAME + " = this.__render.scripts;\n for(" + drAttr.drFor + ") {\n const n = this.__render.element.cloneNode(true);\n var destIt = " + drAttr.drItOption + ";\n if (destIt !== undefined) {\n n.innerHTML = n.innerHTML.replace(/\\#it\\#/g, destIt);\n }\n if (this.__render.drStripOption) {\n Array.from(n.childNodes).forEach(it => this.__render.fag.append(it));\n } else {\n this.__render.fag.append(n);\n }\n }", Object.assign(obj, { __render: Object.freeze({ fag: newTemp, drStripOption: drAttr.drStripOption, element: element_2, scripts: config === null || config === void 0 ? void 0 : config.scripts }) }));
|
529
554
|
RawSet.drVarDecoding(newTemp, vars);
|
530
555
|
RawSet.drItOtherDecoding(newTemp, itRandom);
|
531
556
|
var tempalte = document.createElement('template');
|
532
557
|
tempalte.innerHTML = newTemp.innerHTML;
|
533
558
|
fag.append(tempalte.content);
|
534
559
|
var rr = RawSet.checkPointCreates(fag, config);
|
535
|
-
(
|
560
|
+
(_l = element_2.parentNode) === null || _l === void 0 ? void 0 : _l.replaceChild(fag, element_2);
|
536
561
|
raws.push.apply(raws, rr);
|
537
562
|
}
|
538
563
|
if (drAttr.drForOf) {
|
539
564
|
var itRandom = RawSet.drItOtherEncoding(element_2);
|
540
|
-
var vars = RawSet.drVarEncoding(element_2, (
|
565
|
+
var vars = RawSet.drVarEncoding(element_2, (_m = drAttr.drVarOption) !== null && _m !== void 0 ? _m : '');
|
541
566
|
var newTemp = document.createElement('temp');
|
542
|
-
ScriptUtils.eval("var i = 0; for(const it of " + drAttr.drForOf + ") {\n var destIt = it;\n var forOfStr = `" + drAttr.drForOf + "`;\n if (/,/g.test(forOfStr)) {\n if (typeof it === 'string') {\n destIt = it;\n } else {\n destIt = forOfStr.substring(1, forOfStr.length-1).split(',')[i];\n }\n } else {\n destIt = forOfStr + '[' + i +']'\n }\n \n const n = this.
|
543
|
-
__drStripOption: drAttr.drStripOption,
|
544
|
-
__fag: newTemp,
|
545
|
-
__element: element_2
|
546
|
-
}, obj));
|
567
|
+
ScriptUtils.eval("\n const " + RawSet.SCRIPTS_VARNAME + " = this.__render.scripts;\n var i = 0; \n for(const it of " + drAttr.drForOf + ") {\n var destIt = it;\n var forOfStr = `" + drAttr.drForOf + "`;\n if (/,/g.test(forOfStr)) {\n if (typeof it === 'string') {\n destIt = it;\n } else {\n destIt = forOfStr.substring(1, forOfStr.length-1).split(',')[i];\n }\n } else {\n destIt = forOfStr + '[' + i +']'\n }\n \n const n = this.__render.element.cloneNode(true);\n n.innerHTML = n.innerHTML.replace(/\\#it\\#/g, destIt);\n \n if (this.__render.drStripOption) {\n Array.from(n.childNodes).forEach(it => this.__render.fag.append(it));\n } else {\n this.__render.fag.append(n);\n }\n i++;\n }", Object.assign(obj, { __render: Object.freeze({ drStripOption: drAttr.drStripOption, fag: newTemp, element: element_2 }) }));
|
547
568
|
RawSet.drVarDecoding(newTemp, vars);
|
548
569
|
RawSet.drItOtherDecoding(newTemp, itRandom);
|
549
570
|
var tempalte = document.createElement('template');
|
550
571
|
tempalte.innerHTML = newTemp.innerHTML;
|
551
572
|
fag.append(tempalte.content);
|
552
573
|
var rr = RawSet.checkPointCreates(fag, config);
|
553
|
-
(
|
574
|
+
(_o = element_2.parentNode) === null || _o === void 0 ? void 0 : _o.replaceChild(fag, element_2);
|
554
575
|
raws.push.apply(raws, rr);
|
555
576
|
}
|
556
|
-
(
|
577
|
+
(_p = config === null || config === void 0 ? void 0 : config.targetElements) === null || _p === void 0 ? void 0 : _p.forEach(function (it) {
|
557
578
|
var _a, _b;
|
558
579
|
var name = it.name;
|
559
580
|
if (name.toLowerCase() === element_2.tagName.toLowerCase()) {
|
@@ -572,7 +593,7 @@ var RawSet = (function () {
|
|
572
593
|
}
|
573
594
|
}
|
574
595
|
});
|
575
|
-
(
|
596
|
+
(_q = config === null || config === void 0 ? void 0 : config.targetAttrs) === null || _q === void 0 ? void 0 : _q.forEach(function (it) {
|
576
597
|
var _a, _b;
|
577
598
|
var attrName = it.name;
|
578
599
|
var attrValue = _this.getAttributeAndDelete(element_2, attrName);
|
@@ -632,42 +653,25 @@ var RawSet = (function () {
|
|
632
653
|
var currentNode;
|
633
654
|
var _loop_1 = function () {
|
634
655
|
if (currentNode.nodeType === Node.TEXT_NODE) {
|
635
|
-
var
|
656
|
+
var text = (_a = currentNode.textContent) !== null && _a !== void 0 ? _a : '';
|
636
657
|
var template_1 = document.createElement('template');
|
637
|
-
var a = StringUtils.regexExec(/\$\{.*?\}/g,
|
638
|
-
var map = a.
|
639
|
-
|
640
|
-
var uuid = RandomUtils.uuid();
|
641
|
-
it.uuid = uuid;
|
642
|
-
it.content = it.regexArr[0];
|
643
|
-
text_1 = text_1.substr(0, it.regexArr.index) + text_1.substr(it.regexArr.index).replace(it.regexArr[0], "<!--start text " + uuid + "--><!--end text " + uuid + "-->");
|
644
|
-
});
|
645
|
-
template_1.innerHTML = text_1;
|
658
|
+
var a = StringUtils.regexExec(/\$\{.*?\}/g, text);
|
659
|
+
var map = a.map(function (it) { return { uuid: RandomUtils.uuid(), content: it[0], regexArr: it }; });
|
660
|
+
var lasterIndex_1 = 0;
|
646
661
|
map.forEach(function (it) {
|
647
|
-
var
|
648
|
-
var
|
649
|
-
|
650
|
-
|
651
|
-
|
652
|
-
|
653
|
-
|
654
|
-
var
|
655
|
-
|
656
|
-
|
657
|
-
|
658
|
-
if (((_a = subNode.textContent) !== null && _a !== void 0 ? _a : '').startsWith('start')) {
|
659
|
-
start = subNode;
|
660
|
-
}
|
661
|
-
if (((_b = subNode.textContent) !== null && _b !== void 0 ? _b : '').startsWith('end')) {
|
662
|
-
end = subNode;
|
663
|
-
}
|
664
|
-
}
|
665
|
-
if (start && end) {
|
666
|
-
var fragment = document.createDocumentFragment();
|
667
|
-
fragment.append(document.createTextNode(it.content));
|
668
|
-
pars.push(new RawSet(it.uuid, { start: start, end: end }, fragment));
|
669
|
-
}
|
662
|
+
var regexArr = it.regexArr;
|
663
|
+
var preparedText = regexArr.input.substring(lasterIndex_1, regexArr.index);
|
664
|
+
var start = document.createComment("start text " + it.uuid);
|
665
|
+
var end = document.createComment("end text " + it.uuid);
|
666
|
+
template_1.content.append(document.createTextNode(preparedText));
|
667
|
+
template_1.content.append(start);
|
668
|
+
template_1.content.append(end);
|
669
|
+
var fragment = document.createDocumentFragment();
|
670
|
+
fragment.append(document.createTextNode(it.content));
|
671
|
+
pars.push(new RawSet(it.uuid, { start: start, end: end }, fragment));
|
672
|
+
lasterIndex_1 = regexArr.index + it.content.length;
|
670
673
|
});
|
674
|
+
template_1.content.append(document.createTextNode(text.substring(lasterIndex_1, text.length)));
|
671
675
|
(_b = currentNode === null || currentNode === void 0 ? void 0 : currentNode.parentNode) === null || _b === void 0 ? void 0 : _b.replaceChild(template_1.content, currentNode);
|
672
676
|
}
|
673
677
|
else {
|
@@ -780,11 +784,15 @@ var RawSet = (function () {
|
|
780
784
|
RawSet.DR_FOR_OF_NAME = 'dr-for-of';
|
781
785
|
RawSet.DR_FOR_NAME = 'dr-for';
|
782
786
|
RawSet.DR_THIS_NAME = 'dr-this';
|
787
|
+
RawSet.DR_INNERHTML_NAME = 'dr-inner-html';
|
788
|
+
RawSet.DR_INNERTEXT_NAME = 'dr-inner-text';
|
783
789
|
RawSet.DR_TAGS = [];
|
784
790
|
RawSet.DR_IT_OPTIONNAME = 'dr-it';
|
785
791
|
RawSet.DR_VAR_OPTIONNAME = 'dr-var';
|
786
792
|
RawSet.DR_STRIP_OPTIONNAME = 'dr-strip';
|
787
|
-
RawSet.DR_ATTRIBUTES = [RawSet.DR_IF_NAME, RawSet.DR_FOR_OF_NAME, RawSet.DR_FOR_NAME, RawSet.DR_THIS_NAME, RawSet.
|
793
|
+
RawSet.DR_ATTRIBUTES = [RawSet.DR, RawSet.DR_IF_NAME, RawSet.DR_FOR_OF_NAME, RawSet.DR_FOR_NAME, RawSet.DR_THIS_NAME, RawSet.DR_INNERHTML_NAME, RawSet.DR_INNERTEXT_NAME];
|
794
|
+
RawSet.SCRIPTS_VARNAME = '$scripts';
|
795
|
+
RawSet.RAWSET_VARNAME = '$rawset';
|
788
796
|
return RawSet;
|
789
797
|
}());
|
790
798
|
|
@@ -853,15 +861,19 @@ var DomRenderProxy = (function () {
|
|
853
861
|
});
|
854
862
|
}
|
855
863
|
});
|
864
|
+
this.render(this.getRawSets());
|
865
|
+
(_b = (_a = this._domRender_proxy) === null || _a === void 0 ? void 0 : _a.onInitRender) === null || _b === void 0 ? void 0 : _b.call(_a);
|
866
|
+
};
|
867
|
+
DomRenderProxy.prototype.getRawSets = function () {
|
868
|
+
var set = new Set();
|
856
869
|
this._rawSets.forEach(function (v, k) {
|
857
|
-
|
870
|
+
v.forEach(function (it) { return set.add(it); });
|
858
871
|
});
|
859
|
-
|
872
|
+
return Array.from(set);
|
860
873
|
};
|
861
874
|
DomRenderProxy.prototype.render = function (raws) {
|
862
875
|
var _this = this;
|
863
|
-
raws.forEach(function (it) {
|
864
|
-
it.getUsingTriggerVariables(_this.config).forEach(function (path) { return _this.addRawSet(path, it); });
|
876
|
+
(raws !== null && raws !== void 0 ? raws : this.getRawSets()).forEach(function (it) {
|
865
877
|
if (it.point.start.isConnected && it.point.start.isConnected) {
|
866
878
|
var rawSets = it.render(_this._domRender_proxy, _this.config);
|
867
879
|
_this.render(rawSets);
|
package/events/EventManager.js
CHANGED
@@ -6,7 +6,7 @@ exports.eventManager = new (function () {
|
|
6
6
|
function class_1() {
|
7
7
|
var _this = this;
|
8
8
|
this.attrPrefix = 'dr-';
|
9
|
-
this.eventNames = ['click', 'change', 'keyup', 'keydown', 'input'];
|
9
|
+
this.eventNames = ['click', 'change', 'keyup', 'keydown', 'input', 'submit'];
|
10
10
|
this.attrNames = [
|
11
11
|
this.attrPrefix + 'value',
|
12
12
|
this.attrPrefix + 'value-link',
|
package/package.json
CHANGED
@@ -36,9 +36,6 @@ var ScriptUtils = (function () {
|
|
36
36
|
return usingVars;
|
37
37
|
};
|
38
38
|
ScriptUtils.evalReturn = function (script, thisTarget) {
|
39
|
-
if (!script.startsWith('this.')) {
|
40
|
-
script = 'this.' + script;
|
41
|
-
}
|
42
39
|
return this.eval('return ' + script + ';', thisTarget);
|
43
40
|
};
|
44
41
|
ScriptUtils.eval = function (script, thisTarget) {
|