@dooboostore/simple-boot-http-server-ssr 1.0.12 → 1.0.13
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/dist/cjs/filters/SSRFilter.js +1 -1
- package/dist/cjs/filters/SSRFilter.js.map +2 -2
- package/dist/cjs/filters/SSRLinkDomDomFilter.js +183 -0
- package/dist/cjs/filters/SSRLinkDomDomFilter.js.map +7 -0
- package/dist/cjs/initializers/LinkedomInitializer.js +81 -0
- package/dist/cjs/initializers/LinkedomInitializer.js.map +7 -0
- package/dist/esm/filters/SSRFilter.js +1 -1
- package/dist/esm/filters/SSRFilter.js.map +2 -2
- package/dist/esm/filters/SSRLinkDomDomFilter.js +160 -0
- package/dist/esm/filters/SSRLinkDomDomFilter.js.map +7 -0
- package/dist/esm/initializers/LinkedomInitializer.js +48 -0
- package/dist/esm/initializers/LinkedomInitializer.js.map +7 -0
- package/dist/esm-bundle/dooboostore-simple-boot-http-server-ssr.esm.js +681 -242
- package/dist/esm-bundle/dooboostore-simple-boot-http-server-ssr.esm.js.map +4 -4
- package/dist/types/filters/SSRLinkDomDomFilter.d.ts +57 -0
- package/dist/types/filters/SSRLinkDomDomFilter.d.ts.map +1 -0
- package/dist/types/index.d.ts +0 -19
- package/dist/types/initializers/LinkedomInitializer.d.ts +11 -0
- package/dist/types/initializers/LinkedomInitializer.d.ts.map +1 -0
- package/dist/umd-bundle/dooboostore-simple-boot-http-server-ssr.umd.js +681 -242
- package/dist/umd-bundle/dooboostore-simple-boot-http-server-ssr.umd.js.map +4 -4
- package/package.json +15 -14
- package/src/filters/SSRFilter.ts +2 -2
- package/src/filters/SSRLinkDomDomFilter.ts +227 -0
- package/src/initializers/LinkedomInitializer.ts +69 -0
- package/src/node_modules/.bin/acorn +17 -0
- package/src/node_modules/.bin/browserslist +17 -0
- package/src/node_modules/.bin/eslint +17 -0
- package/src/node_modules/.bin/jest +17 -0
- package/src/node_modules/.bin/ts-jest +17 -0
- package/src/node_modules/.bin/ts-node +17 -0
- package/src/node_modules/.bin/ts-node-cwd +17 -0
- package/src/node_modules/.bin/ts-node-esm +17 -0
- package/src/node_modules/.bin/ts-node-script +17 -0
- package/src/node_modules/.bin/ts-node-transpile-only +17 -0
- package/src/node_modules/.bin/ts-script +17 -0
- package/src/node_modules/.bin/tsc +17 -0
- package/src/node_modules/.bin/tsserver +17 -0
|
@@ -30,9 +30,9 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
|
|
|
30
30
|
mod
|
|
31
31
|
));
|
|
32
32
|
|
|
33
|
-
//
|
|
33
|
+
// ../../../node_modules/.pnpm/node-gzip@1.1.2/node_modules/node-gzip/dist/index.js
|
|
34
34
|
var require_dist = __commonJS({
|
|
35
|
-
"
|
|
35
|
+
"../../../node_modules/.pnpm/node-gzip@1.1.2/node_modules/node-gzip/dist/index.js"(exports, module) {
|
|
36
36
|
"use strict";
|
|
37
37
|
var zlib = __require("zlib");
|
|
38
38
|
module.exports = {
|
|
@@ -945,7 +945,7 @@ var ObjectUtils;
|
|
|
945
945
|
const func = new Function("window", "document", "console", `"use strict"; ${script}; `);
|
|
946
946
|
func.call(destUser, globalContext.window, globalContext.document, globalContext.console);
|
|
947
947
|
} catch (e) {
|
|
948
|
-
console.error("detectPathFromScript error:", e);
|
|
948
|
+
console.error("detectPathFromScript error:", script, e);
|
|
949
949
|
}
|
|
950
950
|
if (options?.excludeThis) {
|
|
951
951
|
const filteredVars = /* @__PURE__ */ new Set();
|
|
@@ -1077,117 +1077,6 @@ var getStorage = (window2) => {
|
|
|
1077
1077
|
return window2.aroundStorage;
|
|
1078
1078
|
};
|
|
1079
1079
|
|
|
1080
|
-
// ../core/dist/esm/string/StringUtils.js
|
|
1081
|
-
var StringUtils;
|
|
1082
|
-
((StringUtils2) => {
|
|
1083
|
-
StringUtils2.deleteEnter = (data) => {
|
|
1084
|
-
return data.replace(/\r?\n/g, "");
|
|
1085
|
-
};
|
|
1086
|
-
StringUtils2.pickEmoji = (data) => {
|
|
1087
|
-
return data.match(/[\p{Emoji}]/gu) ?? [];
|
|
1088
|
-
};
|
|
1089
|
-
StringUtils2.regexExec = (regex, text) => {
|
|
1090
|
-
let varExec = regex.exec(text);
|
|
1091
|
-
const usingVars = [];
|
|
1092
|
-
while (varExec) {
|
|
1093
|
-
usingVars.push(varExec);
|
|
1094
|
-
varExec = regex.exec(varExec.input);
|
|
1095
|
-
}
|
|
1096
|
-
return usingVars;
|
|
1097
|
-
};
|
|
1098
|
-
StringUtils2.regexExecArrayReplace = (origin, regexpExecArrayOrRegex, replace) => {
|
|
1099
|
-
const regexpExecArrays = Array.isArray(regexpExecArrayOrRegex) ? regexpExecArrayOrRegex : StringUtils2.regexExec(regexpExecArrayOrRegex, origin);
|
|
1100
|
-
regexpExecArrays.reverse().forEach((it) => {
|
|
1101
|
-
const r = typeof replace === "string" ? replace : replace(it);
|
|
1102
|
-
origin = origin.substr(0, it.index) + origin.substr(it.index).replace(it[0], r);
|
|
1103
|
-
});
|
|
1104
|
-
return origin;
|
|
1105
|
-
};
|
|
1106
|
-
StringUtils2.escapeSpecialCharacterRegExp = (data) => {
|
|
1107
|
-
return data.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
|
|
1108
|
-
};
|
|
1109
|
-
StringUtils2.trim = (data) => data.trim();
|
|
1110
|
-
StringUtils2.rsubString = (data_s, blen_n) => data_s.substring(data_s.length - blen_n, data_s.length);
|
|
1111
|
-
StringUtils2.lsubString = (data_s, alen_n) => data_s.substring(0, alen_n);
|
|
1112
|
-
StringUtils2.lpad = (fill_s, len_n, full_s) => {
|
|
1113
|
-
while (len_n > full_s.length) {
|
|
1114
|
-
full_s = fill_s + full_s;
|
|
1115
|
-
}
|
|
1116
|
-
return StringUtils2.rsubString(full_s, len_n);
|
|
1117
|
-
};
|
|
1118
|
-
StringUtils2.rpad = (fill_s, len_n, full_s) => {
|
|
1119
|
-
while (len_n > full_s.length) {
|
|
1120
|
-
full_s += fill_s;
|
|
1121
|
-
}
|
|
1122
|
-
return StringUtils2.lsubString(full_s, len_n);
|
|
1123
|
-
};
|
|
1124
|
-
StringUtils2.lappend = (count_n, input_s) => {
|
|
1125
|
-
let s = "";
|
|
1126
|
-
let i = 0;
|
|
1127
|
-
while (i++ < count_n) {
|
|
1128
|
-
s += input_s;
|
|
1129
|
-
}
|
|
1130
|
-
return s;
|
|
1131
|
-
};
|
|
1132
|
-
StringUtils2.unescape = (html) => {
|
|
1133
|
-
if (!html) return "";
|
|
1134
|
-
const htmlEntity = {
|
|
1135
|
-
quot: '"',
|
|
1136
|
-
amp: "&",
|
|
1137
|
-
apos: "'",
|
|
1138
|
-
lt: "<",
|
|
1139
|
-
gt: ">",
|
|
1140
|
-
nbsp: "\xA0",
|
|
1141
|
-
iexcl: "\xA1",
|
|
1142
|
-
cent: "\xA2",
|
|
1143
|
-
pound: "\xA3",
|
|
1144
|
-
curren: "\xA4",
|
|
1145
|
-
yen: "\xA5",
|
|
1146
|
-
brvbar: "\xA6",
|
|
1147
|
-
sect: "\xA7",
|
|
1148
|
-
uml: "\xA8",
|
|
1149
|
-
copy: "\xA9",
|
|
1150
|
-
ordf: "\xAA",
|
|
1151
|
-
laquo: "\xAB",
|
|
1152
|
-
not: "\xAC",
|
|
1153
|
-
shy: "\xAD",
|
|
1154
|
-
reg: "\xAE",
|
|
1155
|
-
macr: "\xAF",
|
|
1156
|
-
deg: "\xB0",
|
|
1157
|
-
plusmn: "\xB1",
|
|
1158
|
-
sup2: "\xB2",
|
|
1159
|
-
sup3: "\xB3",
|
|
1160
|
-
acute: "\xB4",
|
|
1161
|
-
micro: "\xB5",
|
|
1162
|
-
para: "\xB6",
|
|
1163
|
-
middot: "\xB7",
|
|
1164
|
-
cedil: "\xB8",
|
|
1165
|
-
sup1: "\xB9",
|
|
1166
|
-
ordm: "\xBA",
|
|
1167
|
-
raquo: "\xBB",
|
|
1168
|
-
frac14: "\xBC",
|
|
1169
|
-
frac12: "\xBD",
|
|
1170
|
-
frac34: "\xBE",
|
|
1171
|
-
iquest: "\xBF",
|
|
1172
|
-
"#x27": "'"
|
|
1173
|
-
};
|
|
1174
|
-
return html.replace(/&((?:(?:[a-z0-9]+|#[0-9]{1,6}|#x[0-9a-fA-F]{1,6});?)+);/gi, (match, entity) => {
|
|
1175
|
-
const entities = entity.toLowerCase().split(";");
|
|
1176
|
-
return entities.map((it) => it in htmlEntity ? htmlEntity[it] : match).join("");
|
|
1177
|
-
});
|
|
1178
|
-
};
|
|
1179
|
-
StringUtils2.executeExpression = (formatString, object) => {
|
|
1180
|
-
return formatString.replace(/\${([^{}]*)}/g, (matched, piece) => String(object[piece] ?? matched));
|
|
1181
|
-
};
|
|
1182
|
-
StringUtils2.ellipsis = (text, length) => {
|
|
1183
|
-
if (text.length > length) return `${text.slice(0, length)}...`;
|
|
1184
|
-
return text;
|
|
1185
|
-
};
|
|
1186
|
-
StringUtils2.appendPostposition = (text, { vowel, consonant }) => {
|
|
1187
|
-
return `${text}${ValidUtils.lastConsonantLetter(text) ? consonant : vowel}`;
|
|
1188
|
-
};
|
|
1189
|
-
})(StringUtils || (StringUtils = {}));
|
|
1190
|
-
|
|
1191
1080
|
// ../core/dist/esm/expression/Expression.js
|
|
1192
1081
|
var Expression;
|
|
1193
1082
|
((Expression2) => {
|
|
@@ -1202,17 +1091,6 @@ var Expression;
|
|
|
1202
1091
|
return binder;
|
|
1203
1092
|
});
|
|
1204
1093
|
};
|
|
1205
|
-
let Group;
|
|
1206
|
-
((Group2) => {
|
|
1207
|
-
Group2.isExpression = (data) => {
|
|
1208
|
-
const reg = /[$#]\{([\s\S.]*?)\}[$#]/g;
|
|
1209
|
-
return reg.test(data ?? "");
|
|
1210
|
-
};
|
|
1211
|
-
Group2.expressionGroups = (data) => {
|
|
1212
|
-
const reg = /[$#]\{([\s\S.]*?)\}[$#]/g;
|
|
1213
|
-
return StringUtils.regexExec(reg, data ?? "");
|
|
1214
|
-
};
|
|
1215
|
-
})(Group = Expression2.Group || (Expression2.Group = {}));
|
|
1216
1094
|
let Path;
|
|
1217
1095
|
((Path2) => {
|
|
1218
1096
|
Path2.pathNameData = (pathName, urlExpression) => {
|
|
@@ -2841,6 +2719,74 @@ var ConvertUtils;
|
|
|
2841
2719
|
ConvertUtils22.decodeHTMLEscape = (data) => {
|
|
2842
2720
|
return data.replace(/&/g, "&").replace(/</g, "<").replace(/>/g, ">").replace(/"/g, '"').replace(/'/g, "'").replace(///g, "/");
|
|
2843
2721
|
};
|
|
2722
|
+
function escapeHTML(htmlString, option) {
|
|
2723
|
+
if (!htmlString) return "";
|
|
2724
|
+
const escapeMap = {
|
|
2725
|
+
"&": "&",
|
|
2726
|
+
// 반드시 먼저 처리
|
|
2727
|
+
"<": "<",
|
|
2728
|
+
">": ">",
|
|
2729
|
+
'"': """,
|
|
2730
|
+
"'": "'",
|
|
2731
|
+
// or ' (하지만 HTML4에서는 ' 권장)
|
|
2732
|
+
"/": "/",
|
|
2733
|
+
"`": "`",
|
|
2734
|
+
"=": "=",
|
|
2735
|
+
"{": "{",
|
|
2736
|
+
"}": "}",
|
|
2737
|
+
"#": "#",
|
|
2738
|
+
"$": "$",
|
|
2739
|
+
"\n": " ",
|
|
2740
|
+
// newline
|
|
2741
|
+
"\r": " ",
|
|
2742
|
+
// carriage return
|
|
2743
|
+
" ": "	",
|
|
2744
|
+
// tab
|
|
2745
|
+
"\xA0": " ",
|
|
2746
|
+
// non-breaking space
|
|
2747
|
+
"\xA2": "¢",
|
|
2748
|
+
"\xA3": "£",
|
|
2749
|
+
"\xA5": "¥",
|
|
2750
|
+
"\u20AC": "€",
|
|
2751
|
+
"\xA9": "©",
|
|
2752
|
+
"\xAE": "®",
|
|
2753
|
+
"\u2122": "™",
|
|
2754
|
+
"\xB0": "°",
|
|
2755
|
+
"\xB1": "±",
|
|
2756
|
+
"\xD7": "×",
|
|
2757
|
+
"\xF7": "÷",
|
|
2758
|
+
"\u2212": "−",
|
|
2759
|
+
"\u2022": "•",
|
|
2760
|
+
"\u2026": "…",
|
|
2761
|
+
"\u2190": "←",
|
|
2762
|
+
"\u2192": "→",
|
|
2763
|
+
"\u2191": "↑",
|
|
2764
|
+
"\u2193": "↓",
|
|
2765
|
+
"\u2194": "↔"
|
|
2766
|
+
};
|
|
2767
|
+
const targetsSet = option?.targets ? new Set(option.targets) : null;
|
|
2768
|
+
const filteredEscapeMap = targetsSet ? Object.fromEntries(Object.entries(escapeMap).filter(([key]) => targetsSet.has(key))) : escapeMap;
|
|
2769
|
+
const shouldEscapeAmpersand = !targetsSet || targetsSet.has("&");
|
|
2770
|
+
const charsToEscape = Object.keys(filteredEscapeMap).filter((char) => char !== "&");
|
|
2771
|
+
if (charsToEscape.length === 0 && !shouldEscapeAmpersand) {
|
|
2772
|
+
return htmlString;
|
|
2773
|
+
}
|
|
2774
|
+
const escapedChars = charsToEscape.map((char) => {
|
|
2775
|
+
return char.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
|
|
2776
|
+
}).join("");
|
|
2777
|
+
let result = htmlString;
|
|
2778
|
+
if (shouldEscapeAmpersand) {
|
|
2779
|
+
result = result.replace(/&/g, "&");
|
|
2780
|
+
}
|
|
2781
|
+
if (escapedChars.length > 0) {
|
|
2782
|
+
const regex = new RegExp(`[${escapedChars}]`, "g");
|
|
2783
|
+
result = result.replace(regex, (match) => {
|
|
2784
|
+
return filteredEscapeMap[match] || match;
|
|
2785
|
+
});
|
|
2786
|
+
}
|
|
2787
|
+
return result;
|
|
2788
|
+
}
|
|
2789
|
+
ConvertUtils22.escapeHTML = escapeHTML;
|
|
2844
2790
|
ConvertUtils22.copyObject = (obj, update = {}) => {
|
|
2845
2791
|
return { ...obj, ...update };
|
|
2846
2792
|
};
|
|
@@ -4550,6 +4496,138 @@ var NotFoundError = class extends HttpError {
|
|
|
4550
4496
|
}
|
|
4551
4497
|
};
|
|
4552
4498
|
|
|
4499
|
+
// ../core/dist/esm/string/StringUtils.js
|
|
4500
|
+
var StringUtils;
|
|
4501
|
+
(function(StringUtils2) {
|
|
4502
|
+
StringUtils2.deleteEnter = (data) => {
|
|
4503
|
+
return data.replace(/\r?\n/g, "");
|
|
4504
|
+
};
|
|
4505
|
+
StringUtils2.pickEmoji = (data) => {
|
|
4506
|
+
return data.match(/[\p{Emoji}]/gu) ?? [];
|
|
4507
|
+
};
|
|
4508
|
+
StringUtils2.regexExec = (regex, text) => {
|
|
4509
|
+
let varExec = regex.exec(text);
|
|
4510
|
+
const usingVars = [];
|
|
4511
|
+
while (varExec) {
|
|
4512
|
+
usingVars.push(varExec);
|
|
4513
|
+
varExec = regex.exec(varExec.input);
|
|
4514
|
+
}
|
|
4515
|
+
return usingVars;
|
|
4516
|
+
};
|
|
4517
|
+
StringUtils2.escapeSpecialCharacterRegExp = (data) => {
|
|
4518
|
+
return data.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
|
|
4519
|
+
};
|
|
4520
|
+
StringUtils2.trim = (data) => data.trim();
|
|
4521
|
+
StringUtils2.rsubString = (data_s, blen_n) => data_s.substring(data_s.length - blen_n, data_s.length);
|
|
4522
|
+
StringUtils2.lsubString = (data_s, alen_n) => data_s.substring(0, alen_n);
|
|
4523
|
+
StringUtils2.lpad = (fill_s, len_n, full_s) => {
|
|
4524
|
+
while (len_n > full_s.length) {
|
|
4525
|
+
full_s = fill_s + full_s;
|
|
4526
|
+
}
|
|
4527
|
+
return StringUtils2.rsubString(full_s, len_n);
|
|
4528
|
+
};
|
|
4529
|
+
StringUtils2.rpad = (fill_s, len_n, full_s) => {
|
|
4530
|
+
while (len_n > full_s.length) {
|
|
4531
|
+
full_s += fill_s;
|
|
4532
|
+
}
|
|
4533
|
+
return StringUtils2.lsubString(full_s, len_n);
|
|
4534
|
+
};
|
|
4535
|
+
StringUtils2.lappend = (count_n, input_s) => {
|
|
4536
|
+
let s = "";
|
|
4537
|
+
let i = 0;
|
|
4538
|
+
while (i++ < count_n) {
|
|
4539
|
+
s += input_s;
|
|
4540
|
+
}
|
|
4541
|
+
return s;
|
|
4542
|
+
};
|
|
4543
|
+
StringUtils2.unescape = (html) => {
|
|
4544
|
+
if (!html)
|
|
4545
|
+
return "";
|
|
4546
|
+
const htmlEntity = {
|
|
4547
|
+
quot: '"',
|
|
4548
|
+
amp: "&",
|
|
4549
|
+
apos: "'",
|
|
4550
|
+
lt: "<",
|
|
4551
|
+
gt: ">",
|
|
4552
|
+
nbsp: "\xA0",
|
|
4553
|
+
iexcl: "\xA1",
|
|
4554
|
+
cent: "\xA2",
|
|
4555
|
+
pound: "\xA3",
|
|
4556
|
+
curren: "\xA4",
|
|
4557
|
+
yen: "\xA5",
|
|
4558
|
+
brvbar: "\xA6",
|
|
4559
|
+
sect: "\xA7",
|
|
4560
|
+
uml: "\xA8",
|
|
4561
|
+
copy: "\xA9",
|
|
4562
|
+
ordf: "\xAA",
|
|
4563
|
+
laquo: "\xAB",
|
|
4564
|
+
not: "\xAC",
|
|
4565
|
+
shy: "\xAD",
|
|
4566
|
+
reg: "\xAE",
|
|
4567
|
+
macr: "\xAF",
|
|
4568
|
+
deg: "\xB0",
|
|
4569
|
+
plusmn: "\xB1",
|
|
4570
|
+
sup2: "\xB2",
|
|
4571
|
+
sup3: "\xB3",
|
|
4572
|
+
acute: "\xB4",
|
|
4573
|
+
micro: "\xB5",
|
|
4574
|
+
para: "\xB6",
|
|
4575
|
+
middot: "\xB7",
|
|
4576
|
+
cedil: "\xB8",
|
|
4577
|
+
sup1: "\xB9",
|
|
4578
|
+
ordm: "\xBA",
|
|
4579
|
+
raquo: "\xBB",
|
|
4580
|
+
frac14: "\xBC",
|
|
4581
|
+
frac12: "\xBD",
|
|
4582
|
+
frac34: "\xBE",
|
|
4583
|
+
iquest: "\xBF",
|
|
4584
|
+
"#x27": "'"
|
|
4585
|
+
};
|
|
4586
|
+
return html.replace(/&((?:(?:[a-z0-9]+|#[0-9]{1,6}|#x[0-9a-fA-F]{1,6});?)+);/gi, (match, entity) => {
|
|
4587
|
+
const entities = entity.toLowerCase().split(";");
|
|
4588
|
+
return entities.map((it) => it in htmlEntity ? htmlEntity[it] : match).join("");
|
|
4589
|
+
});
|
|
4590
|
+
};
|
|
4591
|
+
StringUtils2.executeExpression = (formatString, object) => {
|
|
4592
|
+
return formatString.replace(/\${([^{}]*)}/g, (matched, piece) => String(object[piece] ?? matched));
|
|
4593
|
+
};
|
|
4594
|
+
StringUtils2.ellipsis = (text, length) => {
|
|
4595
|
+
if (text.length > length)
|
|
4596
|
+
return `${text.slice(0, length)}...`;
|
|
4597
|
+
return text;
|
|
4598
|
+
};
|
|
4599
|
+
StringUtils2.appendPostposition = (text, { vowel, consonant }) => {
|
|
4600
|
+
return `${text}${ValidUtils.lastConsonantLetter(text) ? consonant : vowel}`;
|
|
4601
|
+
};
|
|
4602
|
+
StringUtils2.replaceSequentially = (text, replacements) => {
|
|
4603
|
+
let remainingText = text;
|
|
4604
|
+
let result = "";
|
|
4605
|
+
while (remainingText.length > 0) {
|
|
4606
|
+
let bestMatch = null;
|
|
4607
|
+
for (const replacement of replacements) {
|
|
4608
|
+
const newRegex = new RegExp(replacement.regex);
|
|
4609
|
+
const match = newRegex.exec(remainingText);
|
|
4610
|
+
if (match) {
|
|
4611
|
+
if (bestMatch === null || match.index < bestMatch.index) {
|
|
4612
|
+
bestMatch = { index: match.index, match, replacement };
|
|
4613
|
+
}
|
|
4614
|
+
}
|
|
4615
|
+
}
|
|
4616
|
+
if (bestMatch) {
|
|
4617
|
+
const { index, match, replacement } = bestMatch;
|
|
4618
|
+
const matchedString = match[0];
|
|
4619
|
+
result += remainingText.substring(0, index);
|
|
4620
|
+
result += replacement.callback(matchedString);
|
|
4621
|
+
remainingText = remainingText.substring(index + matchedString.length);
|
|
4622
|
+
} else {
|
|
4623
|
+
result += remainingText;
|
|
4624
|
+
break;
|
|
4625
|
+
}
|
|
4626
|
+
}
|
|
4627
|
+
return result;
|
|
4628
|
+
};
|
|
4629
|
+
})(StringUtils || (StringUtils = {}));
|
|
4630
|
+
|
|
4553
4631
|
// ../core-web/dist/esm/script/ScriptUtils.js
|
|
4554
4632
|
var ScriptUtils = class _ScriptUtils {
|
|
4555
4633
|
/**
|
|
@@ -4766,6 +4844,48 @@ var Promises;
|
|
|
4766
4844
|
});
|
|
4767
4845
|
return { promise, resolve, reject };
|
|
4768
4846
|
};
|
|
4847
|
+
Promises2.executeInChunks = async (promiseFactories, chunkSize = 10) => {
|
|
4848
|
+
const results = [];
|
|
4849
|
+
for (let i = 0; i < promiseFactories.length; i += chunkSize) {
|
|
4850
|
+
const chunk = promiseFactories.slice(i, i + chunkSize);
|
|
4851
|
+
const chunkResults = await Promise.all(chunk.map((factory) => factory()));
|
|
4852
|
+
results.push(...chunkResults);
|
|
4853
|
+
if (i + chunkSize < promiseFactories.length) {
|
|
4854
|
+
await (0, Promises2.sleep)(100);
|
|
4855
|
+
}
|
|
4856
|
+
}
|
|
4857
|
+
return results;
|
|
4858
|
+
};
|
|
4859
|
+
Promises2.executeWithConcurrency = async (promiseFactories, concurrency = 10) => {
|
|
4860
|
+
const results = new Array(promiseFactories.length);
|
|
4861
|
+
let currentIndex = 0;
|
|
4862
|
+
const executeNext = async (index) => {
|
|
4863
|
+
while (currentIndex < promiseFactories.length) {
|
|
4864
|
+
const factoryIndex = currentIndex++;
|
|
4865
|
+
results[factoryIndex] = await promiseFactories[factoryIndex]();
|
|
4866
|
+
}
|
|
4867
|
+
};
|
|
4868
|
+
const workers = Array(Math.min(concurrency, promiseFactories.length)).fill(0).map((_, i) => executeNext(i));
|
|
4869
|
+
await Promise.all(workers);
|
|
4870
|
+
return results;
|
|
4871
|
+
};
|
|
4872
|
+
Promises2.executeWithLimit = async (promiseFactories, limit = 5) => {
|
|
4873
|
+
const results = new Array(promiseFactories.length);
|
|
4874
|
+
const executing = [];
|
|
4875
|
+
for (const [index, factory] of promiseFactories.entries()) {
|
|
4876
|
+
const promise = factory().then((result) => {
|
|
4877
|
+
results[index] = result;
|
|
4878
|
+
}).finally(() => {
|
|
4879
|
+
executing.splice(executing.indexOf(promise), 1);
|
|
4880
|
+
});
|
|
4881
|
+
executing.push(promise);
|
|
4882
|
+
if (executing.length >= limit) {
|
|
4883
|
+
await Promise.race(executing);
|
|
4884
|
+
}
|
|
4885
|
+
}
|
|
4886
|
+
await Promise.all(executing);
|
|
4887
|
+
return results;
|
|
4888
|
+
};
|
|
4769
4889
|
let Result;
|
|
4770
4890
|
((Result2) => {
|
|
4771
4891
|
async function awaitWrap(promise) {
|
|
@@ -5371,7 +5491,13 @@ var _EventManager = class _EventManager2 {
|
|
|
5371
5491
|
this.procAttr(childNodes, _EventManager2.normalAttrMapAttrName, (it, attribute) => {
|
|
5372
5492
|
const map = new Map(JSON.parse(attribute));
|
|
5373
5493
|
map.forEach((v, k) => {
|
|
5374
|
-
const
|
|
5494
|
+
const variablePaths = v.variablePaths;
|
|
5495
|
+
let targetScript = v.originalAttrValue;
|
|
5496
|
+
variablePaths.forEach((it2) => {
|
|
5497
|
+
let r = ObjectUtils.Path.toOptionalChainPath(it2.inner);
|
|
5498
|
+
targetScript = targetScript.replaceAll(it2.origin, `\${${r}}`);
|
|
5499
|
+
});
|
|
5500
|
+
const data = ObjectUtils.Script.evaluate(`const $element = this.element; return ${"`" + targetScript + "`"} `, Object.assign(obj, {
|
|
5375
5501
|
__render: Object.freeze({
|
|
5376
5502
|
element: it,
|
|
5377
5503
|
attribute: ElementUtils.getAttributeToObject(it)
|
|
@@ -5561,7 +5687,7 @@ var _EventManager = class _EventManager2 {
|
|
|
5561
5687
|
});
|
|
5562
5688
|
}
|
|
5563
5689
|
getValue(obj, name, bindObj) {
|
|
5564
|
-
let r =
|
|
5690
|
+
let r = ObjectUtils.Script.evaluateReturn(name, obj);
|
|
5565
5691
|
if (typeof r === "function") {
|
|
5566
5692
|
r = r.bind(bindObj ?? obj);
|
|
5567
5693
|
}
|
|
@@ -5661,6 +5787,7 @@ _EventManager.VARNAMES = [_EventManager.SCRIPTS_VARNAME, _EventManager.FAG_VARNA
|
|
|
5661
5787
|
_EventManager.WINDOW_EVENT_POPSTATE = "popstate";
|
|
5662
5788
|
_EventManager.WINDOW_EVENT_RESIZE = "resize";
|
|
5663
5789
|
_EventManager.WINDOW_EVENTS = [_EventManager.WINDOW_EVENT_POPSTATE, _EventManager.WINDOW_EVENT_RESIZE];
|
|
5790
|
+
_EventManager.noDetectAttr = [_EventManager.normalAttrMapAttrName];
|
|
5664
5791
|
_EventManager.attrNames = [
|
|
5665
5792
|
_EventManager.valueAttrName,
|
|
5666
5793
|
_EventManager.checkedAttrName,
|
|
@@ -5794,7 +5921,7 @@ var DrIf = class extends OperatorExecuterAttrRequire {
|
|
|
5794
5921
|
const itRandom = RawSet.drItOtherEncoding(this.elementSource.element, "DrIf");
|
|
5795
5922
|
const vars = RawSet.drVarEncoding(this.elementSource.element, this.elementSource.attrs.drVarOption ?? "");
|
|
5796
5923
|
const newTemp = this.source.config.window.document.createElement("temp");
|
|
5797
|
-
const keepgoing =
|
|
5924
|
+
const keepgoing = ObjectUtils.Script.evaluate(`
|
|
5798
5925
|
${this.render.bindScript}
|
|
5799
5926
|
${this.elementSource.attrs.drBeforeOption ?? ""}
|
|
5800
5927
|
if ($rawSet.data === (${ObjectUtils.Path.toOptionalChainPath(attr)})) {
|
|
@@ -6307,7 +6434,7 @@ var DrInnerText = class extends OperatorExecuterAttrRequire {
|
|
|
6307
6434
|
}
|
|
6308
6435
|
async executeAttrRequire(attr) {
|
|
6309
6436
|
const newTemp = this.source.config.window.document.createElement("temp");
|
|
6310
|
-
|
|
6437
|
+
ObjectUtils.Script.evaluate(`
|
|
6311
6438
|
${this.render.bindScript}
|
|
6312
6439
|
const n = $element.cloneNode(true);
|
|
6313
6440
|
${this.elementSource.attrs.drBeforeOption ?? ""}
|
|
@@ -6427,7 +6554,10 @@ var DrForOf = class extends OperatorExecuterAttrRequire {
|
|
|
6427
6554
|
const itRandom = RawSet.drItOtherEncoding(this.elementSource.element, "DrForOf");
|
|
6428
6555
|
const vars = RawSet.drVarEncoding(this.elementSource.element, this.elementSource.attrs.drVarOption ?? "");
|
|
6429
6556
|
const newTemp = this.source.config.window.document.createElement("temp");
|
|
6430
|
-
|
|
6557
|
+
const variableName = this.elementSource.element.getAttribute(RawSet.DR_VARIABLE_NAME_OPTIONNAME);
|
|
6558
|
+
const itemVariableName = this.elementSource.element.getAttribute(RawSet.DR_ITEM_VARIABLE_NAME_OPTIONNAME);
|
|
6559
|
+
const itemIndexVariableName = this.elementSource.element.getAttribute(RawSet.DR_ITEM_INDEX_VARIABLE_NAME_OPTIONNAME);
|
|
6560
|
+
ObjectUtils.Script.evaluate(`
|
|
6431
6561
|
${this.render.bindScript}
|
|
6432
6562
|
${this.elementSource.attrs.drBeforeOption ?? ""}
|
|
6433
6563
|
var i = -1;
|
|
@@ -6450,11 +6580,18 @@ var DrForOf = class extends OperatorExecuterAttrRequire {
|
|
|
6450
6580
|
destIt = forOfStr + '[' + i +']'
|
|
6451
6581
|
}
|
|
6452
6582
|
const n = this.__render.element.cloneNode(true);
|
|
6453
|
-
// console.log('zzzzzzzzzzz', n.getAttribute('${RawSet.DR_DETECT_ATTR_OPTIONNAME}'));
|
|
6454
6583
|
Object.entries(this.__render.drAttr).filter(([k,v]) => k !== 'drForOf' && k !== 'drNextOption' && v).forEach(([k, v]) => n.setAttribute(this.__render.drAttrsOriginName[k], v));
|
|
6455
|
-
// console.log('---------'+destIt,n, Array.from(n.getAttributeNames()).map(it=>({name:it,attr: n.getAttribute(it)})));
|
|
6456
|
-
// console.log('---------destItdestIt',destIt);
|
|
6457
6584
|
n.getAttributeNames().forEach(it => n.setAttribute(it, n.getAttribute(it).replace(/\\#it\\#/g, destIt).replace(/\\#nearForOfIt\\#/g, destIt).replace(/\\#it\\#/g, destIt).replace(/\\#nearForOfIndex\\#/g, i)))
|
|
6585
|
+
if ('${variableName}') {
|
|
6586
|
+
n.getAttributeNames().forEach(it => n.setAttribute(it, n.getAttribute(it).replaceAll('#${variableName}#', forOfStr)));
|
|
6587
|
+
}
|
|
6588
|
+
if ('${itemVariableName}') {
|
|
6589
|
+
n.getAttributeNames().forEach(it => n.setAttribute(it, n.getAttribute(it).replaceAll('#${itemVariableName}#', destIt)));
|
|
6590
|
+
}
|
|
6591
|
+
if ('${itemIndexVariableName}') {
|
|
6592
|
+
n.getAttributeNames().forEach(it => n.setAttribute(it, n.getAttribute(it).replaceAll('#${itemIndexVariableName}#', i)));
|
|
6593
|
+
}
|
|
6594
|
+
|
|
6458
6595
|
const drOptionAttr = n.getAttribute('${RawSet.DR_DETECT_ATTR_OPTIONNAME}');
|
|
6459
6596
|
if (drOptionAttr) {
|
|
6460
6597
|
const drOptionAttrResult = $scriptUtils.evaluateReturn(drOptionAttr, this);
|
|
@@ -6477,12 +6614,16 @@ var DrForOf = class extends OperatorExecuterAttrRequire {
|
|
|
6477
6614
|
}
|
|
6478
6615
|
|
|
6479
6616
|
n.innerHTML = n.innerHTML.replace(/\\#it\\#/g, destIt).replace(/\\#index\\#/g, i);
|
|
6480
|
-
|
|
6481
|
-
|
|
6482
|
-
|
|
6483
|
-
|
|
6484
|
-
|
|
6485
|
-
|
|
6617
|
+
if ('${variableName}') {
|
|
6618
|
+
n.innerHTML = n.innerHTML.replaceAll('#${variableName}#', forOfStr);
|
|
6619
|
+
}
|
|
6620
|
+
if ('${itemVariableName}') {
|
|
6621
|
+
n.innerHTML = n.innerHTML.replaceAll('#${itemVariableName}#', destIt);
|
|
6622
|
+
}
|
|
6623
|
+
if ('${itemIndexVariableName}') {
|
|
6624
|
+
n.innerHTML = n.innerHTML.replaceAll('#${itemIndexVariableName}#', i);
|
|
6625
|
+
}
|
|
6626
|
+
|
|
6486
6627
|
if (this.__render.drStripOption === 'true') {
|
|
6487
6628
|
Array.from(n.childNodes).forEach(it => this.__render.fag.append(it));
|
|
6488
6629
|
} else {
|
|
@@ -7475,7 +7616,8 @@ var _RawSet = class _RawSet2 {
|
|
|
7475
7616
|
const targetAttrMap = element.getAttribute(EventManager.normalAttrMapAttrName);
|
|
7476
7617
|
if (targetAttrMap) {
|
|
7477
7618
|
new Map(JSON.parse(targetAttrMap)).forEach((v, k) => {
|
|
7478
|
-
|
|
7619
|
+
const variablePaths = v.variablePaths;
|
|
7620
|
+
variablePaths.forEach((it) => targetScripts.push(`(${it.inner})`));
|
|
7479
7621
|
});
|
|
7480
7622
|
}
|
|
7481
7623
|
script = targetScripts.join(";");
|
|
@@ -7536,12 +7678,18 @@ var _RawSet = class _RawSet2 {
|
|
|
7536
7678
|
const runText = _RawSet2.expressionGroups(textContent)[0][1];
|
|
7537
7679
|
let newNode;
|
|
7538
7680
|
if (textContent?.startsWith("#")) {
|
|
7539
|
-
const r = ObjectUtils.Script.evaluate(
|
|
7681
|
+
const r = ObjectUtils.Script.evaluate(
|
|
7682
|
+
`${__render.bindScript} return ${runText}`,
|
|
7683
|
+
Object.assign(obj, { __render })
|
|
7684
|
+
);
|
|
7540
7685
|
const template = config.window.document.createElement("template");
|
|
7541
7686
|
template.innerHTML = r;
|
|
7542
7687
|
newNode = template.content;
|
|
7543
7688
|
} else {
|
|
7544
|
-
const r = ObjectUtils.Script.evaluate(
|
|
7689
|
+
const r = ObjectUtils.Script.evaluate(
|
|
7690
|
+
`${__render.bindScript} return ${runText}`,
|
|
7691
|
+
Object.assign(obj, { __render })
|
|
7692
|
+
);
|
|
7545
7693
|
newNode = config.window.document.createTextNode(r);
|
|
7546
7694
|
}
|
|
7547
7695
|
cNode.parentNode?.replaceChild(newNode, cNode);
|
|
@@ -7580,23 +7728,140 @@ var _RawSet = class _RawSet2 {
|
|
|
7580
7728
|
};
|
|
7581
7729
|
drAttrs.push(drAttr);
|
|
7582
7730
|
const operators = [
|
|
7583
|
-
new DrPre(
|
|
7584
|
-
|
|
7731
|
+
new DrPre(
|
|
7732
|
+
this,
|
|
7733
|
+
__render,
|
|
7734
|
+
{ raws, fag },
|
|
7735
|
+
{ element, attrName: _RawSet2.DR_PRE_NAME, attr: drAttr.drPre, attrs: drAttr },
|
|
7736
|
+
{ config, obj, operatorAround: config.operatorAround?.drPre },
|
|
7737
|
+
{ onAttrInitCallBacks, onElementInitCallBacks, onThisComponentSetCallBacks }
|
|
7738
|
+
),
|
|
7739
|
+
new Dr(
|
|
7740
|
+
this,
|
|
7741
|
+
__render,
|
|
7742
|
+
{ raws, fag },
|
|
7743
|
+
{ element, attrName: _RawSet2.DR_NAME, attr: drAttr.dr, attrs: drAttr },
|
|
7744
|
+
{ config, obj, operatorAround: config.operatorAround?.dr },
|
|
7745
|
+
{ onAttrInitCallBacks, onElementInitCallBacks, onThisComponentSetCallBacks }
|
|
7746
|
+
),
|
|
7585
7747
|
// new Dr(this, __render, {raws, fag}, {element, attrName: EventManager.onRenderedInitAttrName, attr: drAttr.dr, attrs: drAttr}, {config, obj, operatorAround: config.operatorAround?.dr}, {onAttrInitCallBacks, onElementInitCallBacks, onThisComponentSetCallBacks}),
|
|
7586
|
-
new DrIf(
|
|
7587
|
-
|
|
7588
|
-
|
|
7589
|
-
|
|
7590
|
-
|
|
7591
|
-
|
|
7592
|
-
|
|
7593
|
-
|
|
7594
|
-
new
|
|
7595
|
-
|
|
7596
|
-
|
|
7597
|
-
|
|
7598
|
-
|
|
7599
|
-
|
|
7748
|
+
new DrIf(
|
|
7749
|
+
this,
|
|
7750
|
+
__render,
|
|
7751
|
+
{ raws, fag },
|
|
7752
|
+
{ element, attrName: _RawSet2.DR_IF_NAME, attr: drAttr.drIf, attrs: drAttr },
|
|
7753
|
+
{ config, obj, operatorAround: config.operatorAround?.drIf },
|
|
7754
|
+
{ onAttrInitCallBacks, onElementInitCallBacks, onThisComponentSetCallBacks }
|
|
7755
|
+
),
|
|
7756
|
+
new DrStripElement(
|
|
7757
|
+
this,
|
|
7758
|
+
__render,
|
|
7759
|
+
{ raws, fag },
|
|
7760
|
+
{ element, attrName: _RawSet2.DR_STRIP_NAME, attr: drAttr.drStripElement, attrs: drAttr },
|
|
7761
|
+
{ config, obj, operatorAround: config.operatorAround?.drThis },
|
|
7762
|
+
{ onAttrInitCallBacks, onElementInitCallBacks, onThisComponentSetCallBacks }
|
|
7763
|
+
),
|
|
7764
|
+
new DrThis(
|
|
7765
|
+
this,
|
|
7766
|
+
__render,
|
|
7767
|
+
{ raws, fag },
|
|
7768
|
+
{ element, attrName: _RawSet2.DR_THIS_NAME, attr: drAttr.drThis, attrs: drAttr },
|
|
7769
|
+
{ config, obj, operatorAround: config.operatorAround?.drThis },
|
|
7770
|
+
{ onAttrInitCallBacks, onElementInitCallBacks, onThisComponentSetCallBacks }
|
|
7771
|
+
),
|
|
7772
|
+
new DrForm(
|
|
7773
|
+
this,
|
|
7774
|
+
__render,
|
|
7775
|
+
{ raws, fag },
|
|
7776
|
+
{ element, attrName: _RawSet2.DR_FOR_NAME, attr: drAttr.drForm, attrs: drAttr },
|
|
7777
|
+
{ config, obj, operatorAround: config.operatorAround?.drForm },
|
|
7778
|
+
{ onAttrInitCallBacks, onElementInitCallBacks, onThisComponentSetCallBacks }
|
|
7779
|
+
),
|
|
7780
|
+
new DrInnerText(
|
|
7781
|
+
this,
|
|
7782
|
+
__render,
|
|
7783
|
+
{ raws, fag },
|
|
7784
|
+
{ element, attrName: _RawSet2.DR_INNERTEXT_NAME, attr: drAttr.drInnerText, attrs: drAttr },
|
|
7785
|
+
{ config, obj, operatorAround: config.operatorAround?.drInnerText },
|
|
7786
|
+
{ onAttrInitCallBacks, onElementInitCallBacks, onThisComponentSetCallBacks }
|
|
7787
|
+
),
|
|
7788
|
+
new DrInnerHTML(
|
|
7789
|
+
this,
|
|
7790
|
+
__render,
|
|
7791
|
+
{ raws, fag },
|
|
7792
|
+
{ element, attrName: _RawSet2.DR_INNERHTML_NAME, attr: drAttr.drInnerHTML, attrs: drAttr },
|
|
7793
|
+
{ config, obj, operatorAround: config.operatorAround?.drInnerHTML },
|
|
7794
|
+
{ onAttrInitCallBacks, onElementInitCallBacks, onThisComponentSetCallBacks }
|
|
7795
|
+
),
|
|
7796
|
+
new DrFor(
|
|
7797
|
+
this,
|
|
7798
|
+
__render,
|
|
7799
|
+
{ raws, fag },
|
|
7800
|
+
{ element, attrName: _RawSet2.DR_FOR_NAME, attr: drAttr.drFor, attrs: drAttr },
|
|
7801
|
+
{ config, obj, operatorAround: config.operatorAround?.drFor },
|
|
7802
|
+
{ onAttrInitCallBacks, onElementInitCallBacks, onThisComponentSetCallBacks }
|
|
7803
|
+
),
|
|
7804
|
+
new DrForOf(
|
|
7805
|
+
this,
|
|
7806
|
+
__render,
|
|
7807
|
+
{ raws, fag },
|
|
7808
|
+
{ element, attrName: _RawSet2.DR_FOR_OF_NAME, attr: drAttr.drForOf, attrs: drAttr },
|
|
7809
|
+
{ config, obj, operatorAround: config.operatorAround?.drForOf },
|
|
7810
|
+
{ onAttrInitCallBacks, onElementInitCallBacks, onThisComponentSetCallBacks }
|
|
7811
|
+
),
|
|
7812
|
+
new DrThisProperty(
|
|
7813
|
+
this,
|
|
7814
|
+
__render,
|
|
7815
|
+
{ raws, fag },
|
|
7816
|
+
{ element, attrName: _RawSet2.DR_THIS_PROPERTY_NAME, attr: drAttr.drThisProperty, attrs: drAttr },
|
|
7817
|
+
{ config, obj, operatorAround: config.operatorAround?.drThisProperty },
|
|
7818
|
+
{ onAttrInitCallBacks, onElementInitCallBacks, onThisComponentSetCallBacks }
|
|
7819
|
+
),
|
|
7820
|
+
new DrAppender(
|
|
7821
|
+
this,
|
|
7822
|
+
__render,
|
|
7823
|
+
{ raws, fag },
|
|
7824
|
+
{ element, attrName: _RawSet2.DR_APPENDER_NAME, attr: drAttr.drAppender, attrs: drAttr },
|
|
7825
|
+
{ config, obj, operatorAround: config.operatorAround?.drAppender },
|
|
7826
|
+
{ onAttrInitCallBacks, onElementInitCallBacks, onThisComponentSetCallBacks }
|
|
7827
|
+
),
|
|
7828
|
+
new DrRepeat(
|
|
7829
|
+
this,
|
|
7830
|
+
__render,
|
|
7831
|
+
{ raws, fag },
|
|
7832
|
+
{ element, attrName: _RawSet2.DR_REPEAT_NAME, attr: drAttr.drRepeat, attrs: drAttr },
|
|
7833
|
+
{ config, obj, operatorAround: config.operatorAround?.drRepeat },
|
|
7834
|
+
{ onAttrInitCallBacks, onElementInitCallBacks, onThisComponentSetCallBacks }
|
|
7835
|
+
),
|
|
7836
|
+
new DrTargetElementIsElement(
|
|
7837
|
+
this,
|
|
7838
|
+
__render,
|
|
7839
|
+
{ raws, fag },
|
|
7840
|
+
{
|
|
7841
|
+
element,
|
|
7842
|
+
attrName: _RawSet2.DR_REPLACE_TARGET_ELEMENT_IS_NAME,
|
|
7843
|
+
attr: drAttr.drReplaceTargetElementIs,
|
|
7844
|
+
attrs: drAttr
|
|
7845
|
+
},
|
|
7846
|
+
{ config, obj },
|
|
7847
|
+
{ onAttrInitCallBacks, onElementInitCallBacks, onThisComponentSetCallBacks }
|
|
7848
|
+
),
|
|
7849
|
+
new DrTargetElement(
|
|
7850
|
+
this,
|
|
7851
|
+
__render,
|
|
7852
|
+
{ raws, fag },
|
|
7853
|
+
{ element, attrs: drAttr },
|
|
7854
|
+
{ config, obj },
|
|
7855
|
+
{ onAttrInitCallBacks, onElementInitCallBacks, onThisComponentSetCallBacks }
|
|
7856
|
+
),
|
|
7857
|
+
new DrTargetAttr(
|
|
7858
|
+
this,
|
|
7859
|
+
__render,
|
|
7860
|
+
{ raws, fag },
|
|
7861
|
+
{ element, attrs: drAttr },
|
|
7862
|
+
{ config, obj },
|
|
7863
|
+
{ onAttrInitCallBacks, onElementInitCallBacks, onThisComponentSetCallBacks }
|
|
7864
|
+
)
|
|
7600
7865
|
];
|
|
7601
7866
|
for (const operator of operators) {
|
|
7602
7867
|
const state = await operator.start();
|
|
@@ -7636,12 +7901,12 @@ var _RawSet = class _RawSet2 {
|
|
|
7636
7901
|
});
|
|
7637
7902
|
for (const it of onThisComponentSetCallBacks) {
|
|
7638
7903
|
if (isOnInitRender(it.obj)) {
|
|
7639
|
-
it.obj?.onInitRender?.({}, this);
|
|
7904
|
+
await it.obj?.onInitRender?.({}, this);
|
|
7640
7905
|
}
|
|
7641
7906
|
}
|
|
7642
7907
|
for (const it of onElementInitCallBacks) {
|
|
7643
7908
|
if (isOnInitRender(this.dataSet.render?.currentThis)) {
|
|
7644
|
-
this.dataSet.render.currentThis.onInitRender({}, this);
|
|
7909
|
+
await this.dataSet.render.currentThis.onInitRender({}, this);
|
|
7645
7910
|
}
|
|
7646
7911
|
config?.onElementInit?.(it.name, obj, this, it.targetElement);
|
|
7647
7912
|
}
|
|
@@ -7743,7 +8008,10 @@ var _RawSet = class _RawSet2 {
|
|
|
7743
8008
|
getDrAppendAttributeAndDelete(element, obj) {
|
|
7744
8009
|
let data = element.getAttribute(_RawSet2.DR_APPENDER_NAME);
|
|
7745
8010
|
if (data && !/\[.+\]/g.test(data)) {
|
|
7746
|
-
const currentIndex = ObjectUtils.Script.evaluateReturn(
|
|
8011
|
+
const currentIndex = ObjectUtils.Script.evaluateReturn(
|
|
8012
|
+
`${ObjectUtils.Path.toOptionalChainPath(data)}?.length -1`,
|
|
8013
|
+
obj
|
|
8014
|
+
);
|
|
7747
8015
|
data = `${data}[${currentIndex}]`;
|
|
7748
8016
|
element.setAttribute(_RawSet2.DR_APPENDER_NAME, data);
|
|
7749
8017
|
}
|
|
@@ -7789,22 +8057,28 @@ var _RawSet = class _RawSet2 {
|
|
|
7789
8057
|
const normalAttrs = /* @__PURE__ */ new Map();
|
|
7790
8058
|
const linkVariables = /* @__PURE__ */ new Map();
|
|
7791
8059
|
const linkNames = EventManager.linkAttrs.map((it) => it.name);
|
|
7792
|
-
const isAttr = element2.getAttributeNames().filter((it) => {
|
|
8060
|
+
const isAttr = element2.getAttributeNames().filter((it) => !EventManager.noDetectAttr.includes(it)).filter((it) => {
|
|
7793
8061
|
const value = element2.getAttribute(it);
|
|
7794
8062
|
if (value && linkNames.includes(it)) {
|
|
7795
8063
|
linkVariables.set(it, value);
|
|
7796
8064
|
} else if (value && _RawSet2.isExpression(value)) {
|
|
7797
|
-
|
|
7798
|
-
|
|
7799
|
-
|
|
7800
|
-
|
|
7801
|
-
|
|
8065
|
+
const variablePaths = _RawSet2.expressionGroups(value).map((it2) => ({
|
|
8066
|
+
origin: it2[0],
|
|
8067
|
+
inner: it2[1]
|
|
8068
|
+
}));
|
|
8069
|
+
let targetScript = value;
|
|
8070
|
+
variablePaths.forEach((it2) => {
|
|
8071
|
+
let r3 = it2.inner.replace(/#[^#]*#/g, "({})");
|
|
8072
|
+
r3 = ObjectUtils.Path.toOptionalChainPath(r3);
|
|
8073
|
+
targetScript = targetScript.replaceAll(it2.origin, `\${${r3}}`);
|
|
8074
|
+
});
|
|
8075
|
+
const cval = ObjectUtils.Script.evaluateReturn("`" + targetScript + "`", Object.assign(obj));
|
|
7802
8076
|
if (cval === null) {
|
|
7803
8077
|
element2.removeAttribute(it);
|
|
7804
8078
|
} else {
|
|
7805
8079
|
element2.setAttribute(it, cval);
|
|
7806
8080
|
}
|
|
7807
|
-
normalAttrs.set(it,
|
|
8081
|
+
normalAttrs.set(it, { originalAttrValue: value, variablePaths });
|
|
7808
8082
|
}
|
|
7809
8083
|
const isTargetAttr = targetAttrNames.includes(it.toLowerCase());
|
|
7810
8084
|
return isTargetAttr;
|
|
@@ -8218,11 +8492,33 @@ var _RawSet = class _RawSet2 {
|
|
|
8218
8492
|
targetElement.querySelectorAll(EventManager.attrNames.map((it) => `[${it}]`).join(",")).forEach((it) => {
|
|
8219
8493
|
it.setAttribute(EventManager.ownerVariablePathAttrName, "this");
|
|
8220
8494
|
});
|
|
8221
|
-
const componentNameReplaceKey = RandomUtils.uuid();
|
|
8222
8495
|
rawSet.point.innerHTML = element.innerHTML;
|
|
8223
|
-
const
|
|
8496
|
+
const innerText = element.textContent?.trim() ?? "";
|
|
8497
|
+
const escapedInnerHTML = ConvertUtils.escapeHTML(element.innerHTML);
|
|
8498
|
+
const innerHTMLName = targetElement.getAttribute(_RawSet2.DR_INNER_HTML_NAME_OPTIONNAME) ?? "innerHTML";
|
|
8499
|
+
const innerTEXTName = targetElement.getAttribute(_RawSet2.DR_INNER_TEXT_NAME_OPTIONNAME) ?? "innerTEXT";
|
|
8500
|
+
const innerHTMLEscapedName = targetElement.getAttribute(_RawSet2.DR_INNER_HTML_ESCAPED_NAME_OPTIONNAME) ?? "innerHTMLEscaped";
|
|
8501
|
+
const templateReplacements = [];
|
|
8224
8502
|
if (innerHTMLName) {
|
|
8225
|
-
|
|
8503
|
+
templateReplacements.push({
|
|
8504
|
+
regex: new RegExp(`#${innerHTMLName}#`, "g"),
|
|
8505
|
+
callback: () => element.innerHTML
|
|
8506
|
+
});
|
|
8507
|
+
}
|
|
8508
|
+
if (innerTEXTName) {
|
|
8509
|
+
templateReplacements.push({
|
|
8510
|
+
regex: new RegExp(`#${innerTEXTName}#`, "g"),
|
|
8511
|
+
callback: () => innerText
|
|
8512
|
+
});
|
|
8513
|
+
}
|
|
8514
|
+
if (innerHTMLEscapedName) {
|
|
8515
|
+
templateReplacements.push({
|
|
8516
|
+
regex: new RegExp(`#${innerHTMLEscapedName}#`, "g"),
|
|
8517
|
+
callback: () => escapedInnerHTML
|
|
8518
|
+
});
|
|
8519
|
+
}
|
|
8520
|
+
if (templateReplacements.length > 0) {
|
|
8521
|
+
targetElement.innerHTML = StringUtils.replaceSequentially(targetElement.innerHTML, templateReplacements);
|
|
8226
8522
|
}
|
|
8227
8523
|
const optionThisName = targetElement.getAttribute(_RawSet2.DR_THIS_NAME_OPTIONNAME);
|
|
8228
8524
|
targetElement.getAttributeNames().forEach((it) => targetElement.setAttribute(it, targetElement.getAttribute(it).replace(/#this#/g, drThis)));
|
|
@@ -8299,7 +8595,6 @@ var _RawSet = class _RawSet2 {
|
|
|
8299
8595
|
obj.__domrender_components ?? (obj.__domrender_components = {});
|
|
8300
8596
|
const domrenderComponents = obj.__domrender_components;
|
|
8301
8597
|
const renderScript = ` /*createComponentTargetElement*/
|
|
8302
|
-
// console.log('-------------------',this.__render);
|
|
8303
8598
|
var ${EventManager.RAWSET_VARNAME} = this.__render.rawSet;
|
|
8304
8599
|
var ${EventManager.COMPONENT_VARNAME} = this.__render.component;
|
|
8305
8600
|
var ${EventManager.ELEMENT_VARNAME} = this.__render.element;
|
|
@@ -8354,15 +8649,40 @@ var _RawSet = class _RawSet2 {
|
|
|
8354
8649
|
rawSet.dataSet.render = render;
|
|
8355
8650
|
instance.__rawSet = rawSet;
|
|
8356
8651
|
let applayTemplate = element.innerHTML;
|
|
8652
|
+
let applayTemplateText = element.textContent?.trim() ?? "";
|
|
8653
|
+
let applayTemplateEscape = ConvertUtils.escapeHTML(element.innerHTML);
|
|
8357
8654
|
let innerHTMLThisRandom;
|
|
8358
|
-
const componentName = element.getAttribute(_RawSet2.
|
|
8359
|
-
const innerHTMLName = element.getAttribute(_RawSet2.
|
|
8655
|
+
const componentName = element.getAttribute(_RawSet2.DR_VARIABLE_NAME_OPTIONNAME) ?? "component";
|
|
8656
|
+
const innerHTMLName = element.getAttribute(_RawSet2.DR_INNER_HTML_NAME_OPTIONNAME) ?? "innerHTML";
|
|
8657
|
+
const innerTEXTName = element.getAttribute(_RawSet2.DR_INNER_TEXT_NAME_OPTIONNAME) ?? "innerTEXT";
|
|
8658
|
+
const innerHTMLEscapedName = element.getAttribute(_RawSet2.DR_INNER_HTML_ESCAPED_NAME_OPTIONNAME) ?? "innerHTMLEscaped";
|
|
8360
8659
|
if (applayTemplate) {
|
|
8361
8660
|
innerHTMLThisRandom = RandomUtils.uuid();
|
|
8362
|
-
applayTemplate =
|
|
8363
|
-
|
|
8661
|
+
applayTemplate = StringUtils.replaceSequentially(applayTemplate, [
|
|
8662
|
+
{
|
|
8663
|
+
regex: /this\./g,
|
|
8664
|
+
callback: () => innerHTMLThisRandom
|
|
8665
|
+
},
|
|
8666
|
+
{
|
|
8667
|
+
regex: new RegExp(`#${componentName}#`, "g"),
|
|
8668
|
+
callback: () => nearThisPath
|
|
8669
|
+
}
|
|
8670
|
+
]);
|
|
8364
8671
|
}
|
|
8365
|
-
applayTemplate = (this.template ?? ""
|
|
8672
|
+
applayTemplate = StringUtils.replaceSequentially(this.template ?? "", [
|
|
8673
|
+
{
|
|
8674
|
+
regex: new RegExp(`#${innerHTMLName}#`, "g"),
|
|
8675
|
+
callback: () => applayTemplate
|
|
8676
|
+
},
|
|
8677
|
+
{
|
|
8678
|
+
regex: new RegExp(`#${innerTEXTName}#`, "g"),
|
|
8679
|
+
callback: () => applayTemplateText
|
|
8680
|
+
},
|
|
8681
|
+
{
|
|
8682
|
+
regex: new RegExp(`#${innerHTMLEscapedName}#`, "g"),
|
|
8683
|
+
callback: () => applayTemplateEscape
|
|
8684
|
+
}
|
|
8685
|
+
]);
|
|
8366
8686
|
const style = _RawSet2.generateStyleTransform(this.styles, rawSet.uuid, true);
|
|
8367
8687
|
element.innerHTML = style + (applayTemplate ?? "");
|
|
8368
8688
|
let data = await _RawSet2.drThisCreate(
|
|
@@ -8376,8 +8696,8 @@ var _RawSet = class _RawSet2 {
|
|
|
8376
8696
|
);
|
|
8377
8697
|
if (data && innerHTMLThisRandom) {
|
|
8378
8698
|
const template2 = config.window.document.createElement("template");
|
|
8379
|
-
template2.
|
|
8380
|
-
|
|
8699
|
+
template2.innerHTML = ElementUtils.toInnerHTML(data, { document: config.window.document }).replace(RegExp(innerHTMLThisRandom, "g"), "this.");
|
|
8700
|
+
;
|
|
8381
8701
|
data = template2.content;
|
|
8382
8702
|
}
|
|
8383
8703
|
return data;
|
|
@@ -8414,8 +8734,24 @@ var _RawSet = class _RawSet2 {
|
|
|
8414
8734
|
const normalAttribute = attribute[EventManager.normalAttrMapAttrName];
|
|
8415
8735
|
if (normalAttribute) {
|
|
8416
8736
|
new Map(JSON.parse(normalAttribute)).forEach((v, k) => {
|
|
8737
|
+
const variablePaths = v.variablePaths;
|
|
8738
|
+
let targetScript = v.originalAttrValue.trim();
|
|
8739
|
+
let checktargetScript = v.originalAttrValue.trim();
|
|
8740
|
+
variablePaths.forEach((it) => {
|
|
8741
|
+
checktargetScript = targetScript.replaceAll(it.origin, "");
|
|
8742
|
+
});
|
|
8743
|
+
let isScriptValue = checktargetScript.length === 0 && variablePaths.length === 1;
|
|
8744
|
+
if (isScriptValue) {
|
|
8745
|
+
let r = ObjectUtils.Path.toOptionalChainPath(variablePaths[0].inner);
|
|
8746
|
+
targetScript = targetScript.replaceAll(variablePaths[0].origin, r);
|
|
8747
|
+
} else {
|
|
8748
|
+
variablePaths.forEach((it) => {
|
|
8749
|
+
let r = ObjectUtils.Path.toOptionalChainPath(it.inner);
|
|
8750
|
+
targetScript = targetScript.replaceAll(it.origin, `\${${r}}`);
|
|
8751
|
+
});
|
|
8752
|
+
}
|
|
8417
8753
|
const cval = ObjectUtils.Script.evaluateReturn(
|
|
8418
|
-
{ bodyScript: config.script, returnScript:
|
|
8754
|
+
{ bodyScript: config.script, returnScript: isScriptValue ? targetScript : "`" + targetScript + "`" },
|
|
8419
8755
|
Object.assign(config.obj, config.renderData ? { __render: config.renderData } : void 0)
|
|
8420
8756
|
);
|
|
8421
8757
|
attribute[k] = cval;
|
|
@@ -8454,8 +8790,12 @@ _RawSet.DR_COMPLETE_OPTIONNAME = "dr-option-complete";
|
|
|
8454
8790
|
_RawSet.DR_STRIP_OPTIONNAME = "dr-option-strip";
|
|
8455
8791
|
_RawSet.DR_DESTROY_OPTIONNAME = "dr-option-destroy";
|
|
8456
8792
|
_RawSet.DR_THIS_NAME_OPTIONNAME = "dr-option-this-name";
|
|
8457
|
-
_RawSet.
|
|
8458
|
-
_RawSet.
|
|
8793
|
+
_RawSet.DR_VARIABLE_NAME_OPTIONNAME = "dr-option-variable-name";
|
|
8794
|
+
_RawSet.DR_ITEM_VARIABLE_NAME_OPTIONNAME = "dr-option-item-variable-name";
|
|
8795
|
+
_RawSet.DR_ITEM_INDEX_VARIABLE_NAME_OPTIONNAME = "dr-option-item-index-variable-name";
|
|
8796
|
+
_RawSet.DR_INNER_HTML_NAME_OPTIONNAME = "dr-option-inner-html-name";
|
|
8797
|
+
_RawSet.DR_INNER_TEXT_NAME_OPTIONNAME = "dr-option-inner-text-name";
|
|
8798
|
+
_RawSet.DR_INNER_HTML_ESCAPED_NAME_OPTIONNAME = "dr-option-inner-html-escaped-name";
|
|
8459
8799
|
_RawSet.DR_KEY_OPTIONNAME = "dr-option-key";
|
|
8460
8800
|
_RawSet.DR_HAS_KEYS_OPTIONNAME = "dr-option-has-keys";
|
|
8461
8801
|
_RawSet.DR_ON_CREATE_ARGUMENTS_OPTIONNAME = "dr-on-create:arguments";
|
|
@@ -8561,7 +8901,20 @@ var isOnRawSetRendered = (obj) => {
|
|
|
8561
8901
|
};
|
|
8562
8902
|
|
|
8563
8903
|
// ../dom-render/dist/esm/DomRenderProxy.js
|
|
8564
|
-
var excludeGetSetPropertys = [
|
|
8904
|
+
var excludeGetSetPropertys = [
|
|
8905
|
+
"onBeforeReturnGet",
|
|
8906
|
+
"onBeforeReturnSet",
|
|
8907
|
+
"__domrender_components",
|
|
8908
|
+
"__render",
|
|
8909
|
+
"_DomRender_isFinal",
|
|
8910
|
+
"_domRender_ref",
|
|
8911
|
+
"_rawSets",
|
|
8912
|
+
"_domRender_proxy",
|
|
8913
|
+
"_targets",
|
|
8914
|
+
"_DomRender_origin",
|
|
8915
|
+
"_DomRender_ref",
|
|
8916
|
+
"_DomRender_proxy"
|
|
8917
|
+
];
|
|
8565
8918
|
var isWrapProxyDomRenderProxy = (obj) => {
|
|
8566
8919
|
return obj && typeof obj === "object" && "_DomRender_isProxy" in obj;
|
|
8567
8920
|
};
|
|
@@ -8597,7 +8950,7 @@ var DomRenderProxy = class _DomRenderProxy {
|
|
|
8597
8950
|
static isFinal(obj) {
|
|
8598
8951
|
return ValidUtils.isNull(obj) || DomRenderFinalProxy.isFinal(obj);
|
|
8599
8952
|
}
|
|
8600
|
-
run(objProxy) {
|
|
8953
|
+
async run(objProxy) {
|
|
8601
8954
|
this._domRender_proxy = objProxy;
|
|
8602
8955
|
if (isOnProxyDomRender(objProxy)) {
|
|
8603
8956
|
objProxy.onProxyDomRender(this._domRender_config);
|
|
@@ -8622,18 +8975,18 @@ var DomRenderProxy = class _DomRenderProxy {
|
|
|
8622
8975
|
}
|
|
8623
8976
|
});
|
|
8624
8977
|
}
|
|
8625
|
-
this._targets
|
|
8626
|
-
this.initRender(target);
|
|
8627
|
-
}
|
|
8978
|
+
for (let target of this._targets) {
|
|
8979
|
+
await this.initRender(target);
|
|
8980
|
+
}
|
|
8628
8981
|
}
|
|
8629
|
-
initRender(target, rawSet) {
|
|
8982
|
+
async initRender(target, rawSet) {
|
|
8630
8983
|
if (target instanceof Element) {
|
|
8631
8984
|
target.innerHTML = target.innerHTML.replace(/@this@/g, "this");
|
|
8632
8985
|
}
|
|
8633
8986
|
const onCreate = target.getAttribute?.(RawSet.DR_ON_CREATE_ARGUMENTS_OPTIONNAME);
|
|
8634
8987
|
let createParam = [];
|
|
8635
8988
|
if (onCreate) {
|
|
8636
|
-
createParam =
|
|
8989
|
+
createParam = ObjectUtils.Script.evaluateReturn(onCreate, this._domRender_proxy);
|
|
8637
8990
|
if (!Array.isArray(createParam)) {
|
|
8638
8991
|
createParam = [createParam];
|
|
8639
8992
|
}
|
|
@@ -8646,7 +8999,11 @@ var DomRenderProxy = class _DomRenderProxy {
|
|
|
8646
8999
|
}
|
|
8647
9000
|
this._targets.add(target);
|
|
8648
9001
|
const rawSets = RawSet.checkPointCreates(target, this._domRender_proxy, this._domRender_config);
|
|
8649
|
-
this._domRender_config.eventManager.applyEvent(
|
|
9002
|
+
this._domRender_config.eventManager.applyEvent(
|
|
9003
|
+
this._domRender_proxy,
|
|
9004
|
+
this._domRender_config.eventManager.findAttrElements(target, this._domRender_config),
|
|
9005
|
+
this._domRender_config
|
|
9006
|
+
);
|
|
8650
9007
|
rawSets.forEach((it) => {
|
|
8651
9008
|
const variables = it.getUsingTriggerVariables(this._domRender_config);
|
|
8652
9009
|
if (variables.size <= 0) {
|
|
@@ -8657,16 +9014,20 @@ var DomRenderProxy = class _DomRenderProxy {
|
|
|
8657
9014
|
});
|
|
8658
9015
|
}
|
|
8659
9016
|
});
|
|
8660
|
-
this.render(this.getRawSets())
|
|
9017
|
+
const targetRawSets = await this.render(this.getRawSets());
|
|
9018
|
+
for (let targetRawSet of targetRawSets) {
|
|
8661
9019
|
const onInit = target.getAttribute?.(RawSet.DR_ON_INIT_ARGUMENTS_OPTIONNAME);
|
|
8662
9020
|
let initParam;
|
|
8663
9021
|
if (onCreate) {
|
|
8664
9022
|
initParam = ScriptUtils.evaluateReturn(onCreate, this._domRender_proxy);
|
|
8665
9023
|
}
|
|
8666
9024
|
if (isOnInitRender(this._domRender_proxy)) {
|
|
8667
|
-
this._domRender_proxy.onInitRender(
|
|
9025
|
+
await this._domRender_proxy.onInitRender(
|
|
9026
|
+
initParam,
|
|
9027
|
+
rawSet ?? { dataSet: { config: this._domRender_config } }
|
|
9028
|
+
);
|
|
8668
9029
|
}
|
|
8669
|
-
}
|
|
9030
|
+
}
|
|
8670
9031
|
}
|
|
8671
9032
|
getRawSets() {
|
|
8672
9033
|
const set = /* @__PURE__ */ new Set();
|
|
@@ -8699,9 +9060,12 @@ var DomRenderProxy = class _DomRenderProxy {
|
|
|
8699
9060
|
} else if (it.type === RawSetType.TARGET_ELEMENT && it.dataSet?.render?.currentThis && fullPathStr && targetAttrMap) {
|
|
8700
9061
|
new Map(JSON.parse(targetAttrMap)).forEach((v, k) => {
|
|
8701
9062
|
var _a7;
|
|
8702
|
-
const isUsing = EventManager.isUsingThisVar(
|
|
9063
|
+
const isUsing = v.variablePaths.some((it2) => EventManager.isUsingThisVar(it2.inner, `this.${fullPathStr}`));
|
|
8703
9064
|
if (isUsing) {
|
|
8704
|
-
const targetAttrObject = RawSet.getAttributeObject(it.point.node, {
|
|
9065
|
+
const targetAttrObject = RawSet.getAttributeObject(it.point.node, {
|
|
9066
|
+
script: it.dataSet?.render?.renderScript ?? "",
|
|
9067
|
+
obj: Object.assign(this._domRender_proxy ?? {}, { __render: it.dataSet?.render })
|
|
9068
|
+
});
|
|
8705
9069
|
(_a7 = it.dataSet).render ?? (_a7.render = {});
|
|
8706
9070
|
it.dataSet.render.attribute = targetAttrObject;
|
|
8707
9071
|
if (isOnChangeAttrRender(it.dataSet?.render?.currentThis)) {
|
|
@@ -8745,7 +9109,11 @@ var DomRenderProxy = class _DomRenderProxy {
|
|
|
8745
9109
|
it.forEach((sit) => {
|
|
8746
9110
|
try {
|
|
8747
9111
|
const concat = pathInfos.concat([[{ path: sit, obj: key }]]);
|
|
8748
|
-
const items = key._DomRender_proxy?.root(
|
|
9112
|
+
const items = key._DomRender_proxy?.root(
|
|
9113
|
+
concat,
|
|
9114
|
+
value,
|
|
9115
|
+
lastDoneExecute
|
|
9116
|
+
);
|
|
8749
9117
|
fullPaths.push(items.flat());
|
|
8750
9118
|
} catch (e) {
|
|
8751
9119
|
}
|
|
@@ -8781,10 +9149,19 @@ var DomRenderProxy = class _DomRenderProxy {
|
|
|
8781
9149
|
if (value === void 0) {
|
|
8782
9150
|
const rawSet = it.getHasRawSet(lastPropertyName);
|
|
8783
9151
|
rawSet?.remove();
|
|
8784
|
-
startElement.setAttribute(
|
|
9152
|
+
startElement.setAttribute(
|
|
9153
|
+
RawSet.DR_HAS_KEYS_OPTIONNAME,
|
|
9154
|
+
keys.filter((it2) => it2 !== lastPropertyName).join(",")
|
|
9155
|
+
);
|
|
8785
9156
|
}
|
|
8786
9157
|
if (!keys.includes(lastPropertyName)) {
|
|
8787
|
-
const raws = DrThisProperty.append(
|
|
9158
|
+
const raws = DrThisProperty.append(
|
|
9159
|
+
this._domRender_proxy,
|
|
9160
|
+
fullPathStr,
|
|
9161
|
+
lastPropertyName,
|
|
9162
|
+
it,
|
|
9163
|
+
this._domRender_config
|
|
9164
|
+
);
|
|
8788
9165
|
if (raws) {
|
|
8789
9166
|
rawSets.push(...raws);
|
|
8790
9167
|
}
|
|
@@ -8804,10 +9181,19 @@ var DomRenderProxy = class _DomRenderProxy {
|
|
|
8804
9181
|
} else if (iterable) {
|
|
8805
9182
|
rData = await this.render(Array.from(iterable), fullPathStr);
|
|
8806
9183
|
}
|
|
9184
|
+
const Node2 = this._domRender_config.window.Node;
|
|
8807
9185
|
this._targets.forEach((it) => {
|
|
8808
|
-
if (it.nodeType ===
|
|
8809
|
-
const targets = this._domRender_config.eventManager.findAttrElements(
|
|
8810
|
-
|
|
9186
|
+
if (it.nodeType === Node2.DOCUMENT_FRAGMENT_NODE || it.nodeType === Node2.ELEMENT_NODE) {
|
|
9187
|
+
const targets = this._domRender_config.eventManager.findAttrElements(
|
|
9188
|
+
it,
|
|
9189
|
+
this._domRender_config
|
|
9190
|
+
);
|
|
9191
|
+
this._domRender_config.eventManager.changeVar(
|
|
9192
|
+
this._domRender_proxy,
|
|
9193
|
+
targets,
|
|
9194
|
+
`this.${fullPathStr}`,
|
|
9195
|
+
this._domRender_config
|
|
9196
|
+
);
|
|
8811
9197
|
}
|
|
8812
9198
|
});
|
|
8813
9199
|
if (rData?.length > 0 && isOnChildRenderedByProperty(data)) {
|
|
@@ -8839,49 +9225,64 @@ var DomRenderProxy = class _DomRenderProxy {
|
|
|
8839
9225
|
fullPathInfo = this.root([[{ path: p, obj: this._domRender_proxy }]], value);
|
|
8840
9226
|
}
|
|
8841
9227
|
const rootElement = this._domRender_config.rootElement ?? this._domRender_config.window.document;
|
|
8842
|
-
DocumentUtils.querySelectorAllByAttributeName(rootElement, EventManager.normalAttrMapAttrName)?.forEach(
|
|
8843
|
-
|
|
8844
|
-
|
|
8845
|
-
|
|
8846
|
-
|
|
8847
|
-
|
|
8848
|
-
|
|
8849
|
-
|
|
8850
|
-
|
|
8851
|
-
|
|
8852
|
-
|
|
8853
|
-
|
|
8854
|
-
|
|
8855
|
-
|
|
8856
|
-
|
|
8857
|
-
});
|
|
8858
|
-
DocumentUtils.querySelectorAllByAttributeName(rootElement, EventManager.linkTargetMapAttrName)?.forEach((elementInfo) => {
|
|
8859
|
-
const targets = new Map(ScriptUtils.evaluateReturn(elementInfo.value));
|
|
8860
|
-
Array.from(targets.entries()).filter(([key, value2]) => value2.trim()).filter(isDefined).flatMap(([key, valueScript]) => {
|
|
8861
|
-
return fullPathInfo.flat().filter((it) => valueScript.includes(`this.${it.path}`)).flatMap((it) => ({ key, valueScript, pathInfo: it }));
|
|
8862
|
-
}).forEach((info) => {
|
|
8863
|
-
const value1 = ScriptUtils.evaluateReturn(info.valueScript, info.pathInfo.obj);
|
|
8864
|
-
const applyAttributeName = EventManager.linkAttrs.find((it) => it.name === info.key);
|
|
8865
|
-
if (applyAttributeName) {
|
|
9228
|
+
DocumentUtils.querySelectorAllByAttributeName(rootElement, EventManager.normalAttrMapAttrName)?.forEach(
|
|
9229
|
+
(elementInfo) => {
|
|
9230
|
+
const targets = new Map(
|
|
9231
|
+
ObjectUtils.Script.evaluateReturn(elementInfo.value)
|
|
9232
|
+
);
|
|
9233
|
+
Array.from(targets.entries()).filter(isDefined).flatMap(([key, valueScript]) => {
|
|
9234
|
+
return fullPathInfo.flat().filter((it) => valueScript.variablePaths?.some((vit) => vit.inner.includes(`this.${it.path}`))).flatMap((it) => ({ key, valueScript, pathInfo: it }));
|
|
9235
|
+
}).forEach((it) => {
|
|
9236
|
+
const variablePaths = it.valueScript.variablePaths;
|
|
9237
|
+
let targetScript = it.valueScript.originalAttrValue;
|
|
9238
|
+
variablePaths.forEach((it2) => {
|
|
9239
|
+
let r = ObjectUtils.Path.toOptionalChainPath(it2.inner);
|
|
9240
|
+
targetScript = targetScript.replaceAll(it2.origin, `\${${r}}`);
|
|
9241
|
+
});
|
|
9242
|
+
const value1 = ObjectUtils.Script.evaluateReturn("`" + targetScript + "`", it.pathInfo.obj);
|
|
8866
9243
|
if (value1 === null) {
|
|
8867
|
-
elementInfo.element.removeAttribute(
|
|
9244
|
+
elementInfo.element.removeAttribute(it.key);
|
|
9245
|
+
elementInfo.element[it.key] = null;
|
|
8868
9246
|
} else {
|
|
8869
|
-
elementInfo.element.setAttribute(
|
|
9247
|
+
elementInfo.element.setAttribute(it.key, value1);
|
|
9248
|
+
elementInfo.element[it.key] = value1;
|
|
8870
9249
|
}
|
|
8871
|
-
}
|
|
8872
|
-
}
|
|
8873
|
-
|
|
8874
|
-
|
|
8875
|
-
|
|
8876
|
-
const
|
|
8877
|
-
|
|
8878
|
-
|
|
8879
|
-
}
|
|
8880
|
-
|
|
8881
|
-
|
|
9250
|
+
});
|
|
9251
|
+
}
|
|
9252
|
+
);
|
|
9253
|
+
DocumentUtils.querySelectorAllByAttributeName(rootElement, EventManager.linkTargetMapAttrName)?.forEach(
|
|
9254
|
+
(elementInfo) => {
|
|
9255
|
+
const targets = new Map(ScriptUtils.evaluateReturn(elementInfo.value));
|
|
9256
|
+
Array.from(targets.entries()).filter(([key, value2]) => value2.trim()).filter(isDefined).flatMap(([key, valueScript]) => {
|
|
9257
|
+
return fullPathInfo.flat().filter((it) => valueScript.includes(`this.${it.path}`)).flatMap((it) => ({ key, valueScript, pathInfo: it }));
|
|
9258
|
+
}).forEach((info) => {
|
|
9259
|
+
const value1 = ScriptUtils.evaluateReturn(info.valueScript, info.pathInfo.obj);
|
|
9260
|
+
const applyAttributeName = EventManager.linkAttrs.find((it) => it.name === info.key);
|
|
9261
|
+
if (applyAttributeName) {
|
|
9262
|
+
if (value1 === null) {
|
|
9263
|
+
elementInfo.element.removeAttribute(applyAttributeName.property);
|
|
9264
|
+
} else {
|
|
9265
|
+
elementInfo.element.setAttribute(applyAttributeName.property, value1);
|
|
9266
|
+
}
|
|
9267
|
+
}
|
|
9268
|
+
});
|
|
9269
|
+
Array.from(targets.entries()).filter(([key, value2]) => value2.trim()).filter(isDefined).flatMap(([key, valueScript]) => {
|
|
9270
|
+
return fullPathInfo.flat().filter((it) => valueScript.includes(`this.${it.path}`)).flatMap((it) => ({ key, valueScript, pathInfo: it }));
|
|
9271
|
+
}).forEach((info) => {
|
|
9272
|
+
const linkInfo = EventManager.linkAttrs.find((it) => it.name === info.key);
|
|
9273
|
+
if (linkInfo) {
|
|
9274
|
+
elementInfo.element[linkInfo.property] = value;
|
|
9275
|
+
}
|
|
9276
|
+
});
|
|
9277
|
+
}
|
|
9278
|
+
);
|
|
8882
9279
|
if ("onBeforeReturnSet" in receiver && typeof p === "string" && !(this._domRender_config.proxyExcludeOnBeforeReturnSets ?? []).concat(excludeGetSetPropertys).includes(p)) {
|
|
8883
9280
|
if (isOnBeforeReturnSet(receiver)) {
|
|
8884
|
-
receiver.onBeforeReturnSet?.(
|
|
9281
|
+
receiver.onBeforeReturnSet?.(
|
|
9282
|
+
p,
|
|
9283
|
+
value,
|
|
9284
|
+
fullPathInfo.map((it) => it.map((it2) => it2.path).join())
|
|
9285
|
+
);
|
|
8885
9286
|
}
|
|
8886
9287
|
}
|
|
8887
9288
|
return true;
|
|
@@ -8901,7 +9302,11 @@ var DomRenderProxy = class _DomRenderProxy {
|
|
|
8901
9302
|
it = it._DomRender_origin;
|
|
8902
9303
|
}
|
|
8903
9304
|
if ("onBeforeReturnGet" in receiver && typeof p === "string" && !(this._domRender_config.proxyExcludeOnBeforeReturnGets ?? []).concat(excludeGetSetPropertys).includes(p)) {
|
|
8904
|
-
receiver?.onBeforeReturnGet?.(
|
|
9305
|
+
receiver?.onBeforeReturnGet?.(
|
|
9306
|
+
p,
|
|
9307
|
+
it,
|
|
9308
|
+
this.root([[{ path: p, obj: this._domRender_proxy }]], it, false)
|
|
9309
|
+
);
|
|
8905
9310
|
}
|
|
8906
9311
|
return it;
|
|
8907
9312
|
}
|
|
@@ -9193,7 +9598,7 @@ var SSRFilter = class {
|
|
|
9193
9598
|
simpleBootFront.routingSubjectObservable.pipe(
|
|
9194
9599
|
// @ts-ignore
|
|
9195
9600
|
filter(
|
|
9196
|
-
(it) => it.
|
|
9601
|
+
(it) => it.triggerPoint === "end" && typeof it.routerModule.intent.uri === "string" && targetUrl.endsWith(it.routerModule.intent.uri)
|
|
9197
9602
|
),
|
|
9198
9603
|
// delay(1000),
|
|
9199
9604
|
first()
|
|
@@ -10288,6 +10693,7 @@ var ReqHeader = class {
|
|
|
10288
10693
|
|
|
10289
10694
|
// ../simple-boot-http-server/dist/esm/models/RequestResponse.js
|
|
10290
10695
|
var import_node_gzip = __toESM(require_dist(), 1);
|
|
10696
|
+
import { Blob } from "node:buffer";
|
|
10291
10697
|
|
|
10292
10698
|
// ../core-node/dist/esm/file/FileUtils.js
|
|
10293
10699
|
import * as node_os from "node:os";
|
|
@@ -10397,6 +10803,18 @@ var FileUtils;
|
|
|
10397
10803
|
const buffer = config?.option ? node_fs.readFileSync(p, config.option) : node_fs.readFileSync(p);
|
|
10398
10804
|
return buffer;
|
|
10399
10805
|
};
|
|
10806
|
+
FileUtils2.readAsync = async (path2, config) => {
|
|
10807
|
+
const p = FileUtils2.path(path2);
|
|
10808
|
+
return node_fs.promises.readFile(p, config?.option);
|
|
10809
|
+
};
|
|
10810
|
+
FileUtils2.readStringSync = (path2) => {
|
|
10811
|
+
const p = FileUtils2.path(path2);
|
|
10812
|
+
return node_fs.readFileSync(p, "utf-8");
|
|
10813
|
+
};
|
|
10814
|
+
FileUtils2.readStringAsync = async (path2) => {
|
|
10815
|
+
const p = FileUtils2.path(path2);
|
|
10816
|
+
return node_fs.promises.readFile(p, "utf-8");
|
|
10817
|
+
};
|
|
10400
10818
|
FileUtils2.read = async (path2, config) => {
|
|
10401
10819
|
const p = FileUtils2.path(path2);
|
|
10402
10820
|
return node_fs.readFile(p, config.option);
|
|
@@ -10855,7 +11273,28 @@ var RequestResponse = class _RequestResponse {
|
|
|
10855
11273
|
this.res.end(data);
|
|
10856
11274
|
}
|
|
10857
11275
|
async resEnd(chunk) {
|
|
10858
|
-
|
|
11276
|
+
if (chunk instanceof Response) {
|
|
11277
|
+
chunk.headers.forEach((value, key) => {
|
|
11278
|
+
this.res.setHeader(`ORIGIN-${key}`, value);
|
|
11279
|
+
});
|
|
11280
|
+
if (!this.resHeader(HttpHeaders.ContentType)) {
|
|
11281
|
+
const contentType = chunk.headers.get(HttpHeaders.ContentType);
|
|
11282
|
+
if (contentType) {
|
|
11283
|
+
this.res.setHeader(HttpHeaders.ContentType, contentType);
|
|
11284
|
+
}
|
|
11285
|
+
}
|
|
11286
|
+
this.res.statusCode = chunk.status;
|
|
11287
|
+
this.resWriteChunk = Buffer2.from(await chunk.arrayBuffer());
|
|
11288
|
+
} else if (chunk instanceof Blob) {
|
|
11289
|
+
this.resWriteChunk = Buffer2.from(await chunk.arrayBuffer());
|
|
11290
|
+
if (!this.resHeader(HttpHeaders.ContentType)) {
|
|
11291
|
+
this.res.setHeader(HttpHeaders.ContentType, chunk.type);
|
|
11292
|
+
}
|
|
11293
|
+
} else if (chunk instanceof ArrayBuffer) {
|
|
11294
|
+
this.resWriteChunk = Buffer2.from(chunk);
|
|
11295
|
+
} else {
|
|
11296
|
+
this.resWriteChunk = chunk ?? this.resWriteChunk;
|
|
11297
|
+
}
|
|
10859
11298
|
if (this.req.readable) {
|
|
10860
11299
|
await this.reqBodyData();
|
|
10861
11300
|
await this.resEndChunk();
|