@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
|
@@ -36,9 +36,9 @@ var dooboostoreSimpleBootHttpServerSsr = (() => {
|
|
|
36
36
|
));
|
|
37
37
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
38
38
|
|
|
39
|
-
//
|
|
39
|
+
// ../../../node_modules/.pnpm/node-gzip@1.1.2/node_modules/node-gzip/dist/index.js
|
|
40
40
|
var require_dist = __commonJS({
|
|
41
|
-
"
|
|
41
|
+
"../../../node_modules/.pnpm/node-gzip@1.1.2/node_modules/node-gzip/dist/index.js"(exports, module) {
|
|
42
42
|
"use strict";
|
|
43
43
|
var zlib = __require("zlib");
|
|
44
44
|
module.exports = {
|
|
@@ -973,7 +973,7 @@ var dooboostoreSimpleBootHttpServerSsr = (() => {
|
|
|
973
973
|
const func = new Function("window", "document", "console", `"use strict"; ${script}; `);
|
|
974
974
|
func.call(destUser, globalContext.window, globalContext.document, globalContext.console);
|
|
975
975
|
} catch (e) {
|
|
976
|
-
console.error("detectPathFromScript error:", e);
|
|
976
|
+
console.error("detectPathFromScript error:", script, e);
|
|
977
977
|
}
|
|
978
978
|
if (options?.excludeThis) {
|
|
979
979
|
const filteredVars = /* @__PURE__ */ new Set();
|
|
@@ -1105,117 +1105,6 @@ var dooboostoreSimpleBootHttpServerSsr = (() => {
|
|
|
1105
1105
|
return window2.aroundStorage;
|
|
1106
1106
|
};
|
|
1107
1107
|
|
|
1108
|
-
// ../core/dist/esm/string/StringUtils.js
|
|
1109
|
-
var StringUtils;
|
|
1110
|
-
((StringUtils2) => {
|
|
1111
|
-
StringUtils2.deleteEnter = (data) => {
|
|
1112
|
-
return data.replace(/\r?\n/g, "");
|
|
1113
|
-
};
|
|
1114
|
-
StringUtils2.pickEmoji = (data) => {
|
|
1115
|
-
return data.match(/[\p{Emoji}]/gu) ?? [];
|
|
1116
|
-
};
|
|
1117
|
-
StringUtils2.regexExec = (regex, text) => {
|
|
1118
|
-
let varExec = regex.exec(text);
|
|
1119
|
-
const usingVars = [];
|
|
1120
|
-
while (varExec) {
|
|
1121
|
-
usingVars.push(varExec);
|
|
1122
|
-
varExec = regex.exec(varExec.input);
|
|
1123
|
-
}
|
|
1124
|
-
return usingVars;
|
|
1125
|
-
};
|
|
1126
|
-
StringUtils2.regexExecArrayReplace = (origin, regexpExecArrayOrRegex, replace) => {
|
|
1127
|
-
const regexpExecArrays = Array.isArray(regexpExecArrayOrRegex) ? regexpExecArrayOrRegex : StringUtils2.regexExec(regexpExecArrayOrRegex, origin);
|
|
1128
|
-
regexpExecArrays.reverse().forEach((it) => {
|
|
1129
|
-
const r = typeof replace === "string" ? replace : replace(it);
|
|
1130
|
-
origin = origin.substr(0, it.index) + origin.substr(it.index).replace(it[0], r);
|
|
1131
|
-
});
|
|
1132
|
-
return origin;
|
|
1133
|
-
};
|
|
1134
|
-
StringUtils2.escapeSpecialCharacterRegExp = (data) => {
|
|
1135
|
-
return data.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
|
|
1136
|
-
};
|
|
1137
|
-
StringUtils2.trim = (data) => data.trim();
|
|
1138
|
-
StringUtils2.rsubString = (data_s, blen_n) => data_s.substring(data_s.length - blen_n, data_s.length);
|
|
1139
|
-
StringUtils2.lsubString = (data_s, alen_n) => data_s.substring(0, alen_n);
|
|
1140
|
-
StringUtils2.lpad = (fill_s, len_n, full_s) => {
|
|
1141
|
-
while (len_n > full_s.length) {
|
|
1142
|
-
full_s = fill_s + full_s;
|
|
1143
|
-
}
|
|
1144
|
-
return StringUtils2.rsubString(full_s, len_n);
|
|
1145
|
-
};
|
|
1146
|
-
StringUtils2.rpad = (fill_s, len_n, full_s) => {
|
|
1147
|
-
while (len_n > full_s.length) {
|
|
1148
|
-
full_s += fill_s;
|
|
1149
|
-
}
|
|
1150
|
-
return StringUtils2.lsubString(full_s, len_n);
|
|
1151
|
-
};
|
|
1152
|
-
StringUtils2.lappend = (count_n, input_s) => {
|
|
1153
|
-
let s = "";
|
|
1154
|
-
let i = 0;
|
|
1155
|
-
while (i++ < count_n) {
|
|
1156
|
-
s += input_s;
|
|
1157
|
-
}
|
|
1158
|
-
return s;
|
|
1159
|
-
};
|
|
1160
|
-
StringUtils2.unescape = (html) => {
|
|
1161
|
-
if (!html) return "";
|
|
1162
|
-
const htmlEntity = {
|
|
1163
|
-
quot: '"',
|
|
1164
|
-
amp: "&",
|
|
1165
|
-
apos: "'",
|
|
1166
|
-
lt: "<",
|
|
1167
|
-
gt: ">",
|
|
1168
|
-
nbsp: "\xA0",
|
|
1169
|
-
iexcl: "\xA1",
|
|
1170
|
-
cent: "\xA2",
|
|
1171
|
-
pound: "\xA3",
|
|
1172
|
-
curren: "\xA4",
|
|
1173
|
-
yen: "\xA5",
|
|
1174
|
-
brvbar: "\xA6",
|
|
1175
|
-
sect: "\xA7",
|
|
1176
|
-
uml: "\xA8",
|
|
1177
|
-
copy: "\xA9",
|
|
1178
|
-
ordf: "\xAA",
|
|
1179
|
-
laquo: "\xAB",
|
|
1180
|
-
not: "\xAC",
|
|
1181
|
-
shy: "\xAD",
|
|
1182
|
-
reg: "\xAE",
|
|
1183
|
-
macr: "\xAF",
|
|
1184
|
-
deg: "\xB0",
|
|
1185
|
-
plusmn: "\xB1",
|
|
1186
|
-
sup2: "\xB2",
|
|
1187
|
-
sup3: "\xB3",
|
|
1188
|
-
acute: "\xB4",
|
|
1189
|
-
micro: "\xB5",
|
|
1190
|
-
para: "\xB6",
|
|
1191
|
-
middot: "\xB7",
|
|
1192
|
-
cedil: "\xB8",
|
|
1193
|
-
sup1: "\xB9",
|
|
1194
|
-
ordm: "\xBA",
|
|
1195
|
-
raquo: "\xBB",
|
|
1196
|
-
frac14: "\xBC",
|
|
1197
|
-
frac12: "\xBD",
|
|
1198
|
-
frac34: "\xBE",
|
|
1199
|
-
iquest: "\xBF",
|
|
1200
|
-
"#x27": "'"
|
|
1201
|
-
};
|
|
1202
|
-
return html.replace(/&((?:(?:[a-z0-9]+|#[0-9]{1,6}|#x[0-9a-fA-F]{1,6});?)+);/gi, (match, entity) => {
|
|
1203
|
-
const entities = entity.toLowerCase().split(";");
|
|
1204
|
-
return entities.map((it) => it in htmlEntity ? htmlEntity[it] : match).join("");
|
|
1205
|
-
});
|
|
1206
|
-
};
|
|
1207
|
-
StringUtils2.executeExpression = (formatString, object) => {
|
|
1208
|
-
return formatString.replace(/\${([^{}]*)}/g, (matched, piece) => String(object[piece] ?? matched));
|
|
1209
|
-
};
|
|
1210
|
-
StringUtils2.ellipsis = (text, length) => {
|
|
1211
|
-
if (text.length > length) return `${text.slice(0, length)}...`;
|
|
1212
|
-
return text;
|
|
1213
|
-
};
|
|
1214
|
-
StringUtils2.appendPostposition = (text, { vowel, consonant }) => {
|
|
1215
|
-
return `${text}${ValidUtils.lastConsonantLetter(text) ? consonant : vowel}`;
|
|
1216
|
-
};
|
|
1217
|
-
})(StringUtils || (StringUtils = {}));
|
|
1218
|
-
|
|
1219
1108
|
// ../core/dist/esm/expression/Expression.js
|
|
1220
1109
|
var Expression;
|
|
1221
1110
|
((Expression2) => {
|
|
@@ -1230,17 +1119,6 @@ var dooboostoreSimpleBootHttpServerSsr = (() => {
|
|
|
1230
1119
|
return binder;
|
|
1231
1120
|
});
|
|
1232
1121
|
};
|
|
1233
|
-
let Group;
|
|
1234
|
-
((Group2) => {
|
|
1235
|
-
Group2.isExpression = (data) => {
|
|
1236
|
-
const reg = /[$#]\{([\s\S.]*?)\}[$#]/g;
|
|
1237
|
-
return reg.test(data ?? "");
|
|
1238
|
-
};
|
|
1239
|
-
Group2.expressionGroups = (data) => {
|
|
1240
|
-
const reg = /[$#]\{([\s\S.]*?)\}[$#]/g;
|
|
1241
|
-
return StringUtils.regexExec(reg, data ?? "");
|
|
1242
|
-
};
|
|
1243
|
-
})(Group = Expression2.Group || (Expression2.Group = {}));
|
|
1244
1122
|
let Path;
|
|
1245
1123
|
((Path2) => {
|
|
1246
1124
|
Path2.pathNameData = (pathName, urlExpression) => {
|
|
@@ -2869,6 +2747,74 @@ var dooboostoreSimpleBootHttpServerSsr = (() => {
|
|
|
2869
2747
|
ConvertUtils22.decodeHTMLEscape = (data) => {
|
|
2870
2748
|
return data.replace(/&/g, "&").replace(/</g, "<").replace(/>/g, ">").replace(/"/g, '"').replace(/'/g, "'").replace(///g, "/");
|
|
2871
2749
|
};
|
|
2750
|
+
function escapeHTML(htmlString, option) {
|
|
2751
|
+
if (!htmlString) return "";
|
|
2752
|
+
const escapeMap = {
|
|
2753
|
+
"&": "&",
|
|
2754
|
+
// 반드시 먼저 처리
|
|
2755
|
+
"<": "<",
|
|
2756
|
+
">": ">",
|
|
2757
|
+
'"': """,
|
|
2758
|
+
"'": "'",
|
|
2759
|
+
// or ' (하지만 HTML4에서는 ' 권장)
|
|
2760
|
+
"/": "/",
|
|
2761
|
+
"`": "`",
|
|
2762
|
+
"=": "=",
|
|
2763
|
+
"{": "{",
|
|
2764
|
+
"}": "}",
|
|
2765
|
+
"#": "#",
|
|
2766
|
+
"$": "$",
|
|
2767
|
+
"\n": " ",
|
|
2768
|
+
// newline
|
|
2769
|
+
"\r": " ",
|
|
2770
|
+
// carriage return
|
|
2771
|
+
" ": "	",
|
|
2772
|
+
// tab
|
|
2773
|
+
"\xA0": " ",
|
|
2774
|
+
// non-breaking space
|
|
2775
|
+
"\xA2": "¢",
|
|
2776
|
+
"\xA3": "£",
|
|
2777
|
+
"\xA5": "¥",
|
|
2778
|
+
"\u20AC": "€",
|
|
2779
|
+
"\xA9": "©",
|
|
2780
|
+
"\xAE": "®",
|
|
2781
|
+
"\u2122": "™",
|
|
2782
|
+
"\xB0": "°",
|
|
2783
|
+
"\xB1": "±",
|
|
2784
|
+
"\xD7": "×",
|
|
2785
|
+
"\xF7": "÷",
|
|
2786
|
+
"\u2212": "−",
|
|
2787
|
+
"\u2022": "•",
|
|
2788
|
+
"\u2026": "…",
|
|
2789
|
+
"\u2190": "←",
|
|
2790
|
+
"\u2192": "→",
|
|
2791
|
+
"\u2191": "↑",
|
|
2792
|
+
"\u2193": "↓",
|
|
2793
|
+
"\u2194": "↔"
|
|
2794
|
+
};
|
|
2795
|
+
const targetsSet = option?.targets ? new Set(option.targets) : null;
|
|
2796
|
+
const filteredEscapeMap = targetsSet ? Object.fromEntries(Object.entries(escapeMap).filter(([key]) => targetsSet.has(key))) : escapeMap;
|
|
2797
|
+
const shouldEscapeAmpersand = !targetsSet || targetsSet.has("&");
|
|
2798
|
+
const charsToEscape = Object.keys(filteredEscapeMap).filter((char) => char !== "&");
|
|
2799
|
+
if (charsToEscape.length === 0 && !shouldEscapeAmpersand) {
|
|
2800
|
+
return htmlString;
|
|
2801
|
+
}
|
|
2802
|
+
const escapedChars = charsToEscape.map((char) => {
|
|
2803
|
+
return char.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
|
|
2804
|
+
}).join("");
|
|
2805
|
+
let result = htmlString;
|
|
2806
|
+
if (shouldEscapeAmpersand) {
|
|
2807
|
+
result = result.replace(/&/g, "&");
|
|
2808
|
+
}
|
|
2809
|
+
if (escapedChars.length > 0) {
|
|
2810
|
+
const regex = new RegExp(`[${escapedChars}]`, "g");
|
|
2811
|
+
result = result.replace(regex, (match) => {
|
|
2812
|
+
return filteredEscapeMap[match] || match;
|
|
2813
|
+
});
|
|
2814
|
+
}
|
|
2815
|
+
return result;
|
|
2816
|
+
}
|
|
2817
|
+
ConvertUtils22.escapeHTML = escapeHTML;
|
|
2872
2818
|
ConvertUtils22.copyObject = (obj, update = {}) => {
|
|
2873
2819
|
return { ...obj, ...update };
|
|
2874
2820
|
};
|
|
@@ -4578,6 +4524,138 @@ var dooboostoreSimpleBootHttpServerSsr = (() => {
|
|
|
4578
4524
|
}
|
|
4579
4525
|
};
|
|
4580
4526
|
|
|
4527
|
+
// ../core/dist/esm/string/StringUtils.js
|
|
4528
|
+
var StringUtils;
|
|
4529
|
+
(function(StringUtils2) {
|
|
4530
|
+
StringUtils2.deleteEnter = (data) => {
|
|
4531
|
+
return data.replace(/\r?\n/g, "");
|
|
4532
|
+
};
|
|
4533
|
+
StringUtils2.pickEmoji = (data) => {
|
|
4534
|
+
return data.match(/[\p{Emoji}]/gu) ?? [];
|
|
4535
|
+
};
|
|
4536
|
+
StringUtils2.regexExec = (regex, text) => {
|
|
4537
|
+
let varExec = regex.exec(text);
|
|
4538
|
+
const usingVars = [];
|
|
4539
|
+
while (varExec) {
|
|
4540
|
+
usingVars.push(varExec);
|
|
4541
|
+
varExec = regex.exec(varExec.input);
|
|
4542
|
+
}
|
|
4543
|
+
return usingVars;
|
|
4544
|
+
};
|
|
4545
|
+
StringUtils2.escapeSpecialCharacterRegExp = (data) => {
|
|
4546
|
+
return data.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
|
|
4547
|
+
};
|
|
4548
|
+
StringUtils2.trim = (data) => data.trim();
|
|
4549
|
+
StringUtils2.rsubString = (data_s, blen_n) => data_s.substring(data_s.length - blen_n, data_s.length);
|
|
4550
|
+
StringUtils2.lsubString = (data_s, alen_n) => data_s.substring(0, alen_n);
|
|
4551
|
+
StringUtils2.lpad = (fill_s, len_n, full_s) => {
|
|
4552
|
+
while (len_n > full_s.length) {
|
|
4553
|
+
full_s = fill_s + full_s;
|
|
4554
|
+
}
|
|
4555
|
+
return StringUtils2.rsubString(full_s, len_n);
|
|
4556
|
+
};
|
|
4557
|
+
StringUtils2.rpad = (fill_s, len_n, full_s) => {
|
|
4558
|
+
while (len_n > full_s.length) {
|
|
4559
|
+
full_s += fill_s;
|
|
4560
|
+
}
|
|
4561
|
+
return StringUtils2.lsubString(full_s, len_n);
|
|
4562
|
+
};
|
|
4563
|
+
StringUtils2.lappend = (count_n, input_s) => {
|
|
4564
|
+
let s = "";
|
|
4565
|
+
let i = 0;
|
|
4566
|
+
while (i++ < count_n) {
|
|
4567
|
+
s += input_s;
|
|
4568
|
+
}
|
|
4569
|
+
return s;
|
|
4570
|
+
};
|
|
4571
|
+
StringUtils2.unescape = (html) => {
|
|
4572
|
+
if (!html)
|
|
4573
|
+
return "";
|
|
4574
|
+
const htmlEntity = {
|
|
4575
|
+
quot: '"',
|
|
4576
|
+
amp: "&",
|
|
4577
|
+
apos: "'",
|
|
4578
|
+
lt: "<",
|
|
4579
|
+
gt: ">",
|
|
4580
|
+
nbsp: "\xA0",
|
|
4581
|
+
iexcl: "\xA1",
|
|
4582
|
+
cent: "\xA2",
|
|
4583
|
+
pound: "\xA3",
|
|
4584
|
+
curren: "\xA4",
|
|
4585
|
+
yen: "\xA5",
|
|
4586
|
+
brvbar: "\xA6",
|
|
4587
|
+
sect: "\xA7",
|
|
4588
|
+
uml: "\xA8",
|
|
4589
|
+
copy: "\xA9",
|
|
4590
|
+
ordf: "\xAA",
|
|
4591
|
+
laquo: "\xAB",
|
|
4592
|
+
not: "\xAC",
|
|
4593
|
+
shy: "\xAD",
|
|
4594
|
+
reg: "\xAE",
|
|
4595
|
+
macr: "\xAF",
|
|
4596
|
+
deg: "\xB0",
|
|
4597
|
+
plusmn: "\xB1",
|
|
4598
|
+
sup2: "\xB2",
|
|
4599
|
+
sup3: "\xB3",
|
|
4600
|
+
acute: "\xB4",
|
|
4601
|
+
micro: "\xB5",
|
|
4602
|
+
para: "\xB6",
|
|
4603
|
+
middot: "\xB7",
|
|
4604
|
+
cedil: "\xB8",
|
|
4605
|
+
sup1: "\xB9",
|
|
4606
|
+
ordm: "\xBA",
|
|
4607
|
+
raquo: "\xBB",
|
|
4608
|
+
frac14: "\xBC",
|
|
4609
|
+
frac12: "\xBD",
|
|
4610
|
+
frac34: "\xBE",
|
|
4611
|
+
iquest: "\xBF",
|
|
4612
|
+
"#x27": "'"
|
|
4613
|
+
};
|
|
4614
|
+
return html.replace(/&((?:(?:[a-z0-9]+|#[0-9]{1,6}|#x[0-9a-fA-F]{1,6});?)+);/gi, (match, entity) => {
|
|
4615
|
+
const entities = entity.toLowerCase().split(";");
|
|
4616
|
+
return entities.map((it) => it in htmlEntity ? htmlEntity[it] : match).join("");
|
|
4617
|
+
});
|
|
4618
|
+
};
|
|
4619
|
+
StringUtils2.executeExpression = (formatString, object) => {
|
|
4620
|
+
return formatString.replace(/\${([^{}]*)}/g, (matched, piece) => String(object[piece] ?? matched));
|
|
4621
|
+
};
|
|
4622
|
+
StringUtils2.ellipsis = (text, length) => {
|
|
4623
|
+
if (text.length > length)
|
|
4624
|
+
return `${text.slice(0, length)}...`;
|
|
4625
|
+
return text;
|
|
4626
|
+
};
|
|
4627
|
+
StringUtils2.appendPostposition = (text, { vowel, consonant }) => {
|
|
4628
|
+
return `${text}${ValidUtils.lastConsonantLetter(text) ? consonant : vowel}`;
|
|
4629
|
+
};
|
|
4630
|
+
StringUtils2.replaceSequentially = (text, replacements) => {
|
|
4631
|
+
let remainingText = text;
|
|
4632
|
+
let result = "";
|
|
4633
|
+
while (remainingText.length > 0) {
|
|
4634
|
+
let bestMatch = null;
|
|
4635
|
+
for (const replacement of replacements) {
|
|
4636
|
+
const newRegex = new RegExp(replacement.regex);
|
|
4637
|
+
const match = newRegex.exec(remainingText);
|
|
4638
|
+
if (match) {
|
|
4639
|
+
if (bestMatch === null || match.index < bestMatch.index) {
|
|
4640
|
+
bestMatch = { index: match.index, match, replacement };
|
|
4641
|
+
}
|
|
4642
|
+
}
|
|
4643
|
+
}
|
|
4644
|
+
if (bestMatch) {
|
|
4645
|
+
const { index, match, replacement } = bestMatch;
|
|
4646
|
+
const matchedString = match[0];
|
|
4647
|
+
result += remainingText.substring(0, index);
|
|
4648
|
+
result += replacement.callback(matchedString);
|
|
4649
|
+
remainingText = remainingText.substring(index + matchedString.length);
|
|
4650
|
+
} else {
|
|
4651
|
+
result += remainingText;
|
|
4652
|
+
break;
|
|
4653
|
+
}
|
|
4654
|
+
}
|
|
4655
|
+
return result;
|
|
4656
|
+
};
|
|
4657
|
+
})(StringUtils || (StringUtils = {}));
|
|
4658
|
+
|
|
4581
4659
|
// ../core-web/dist/esm/script/ScriptUtils.js
|
|
4582
4660
|
var ScriptUtils = class _ScriptUtils {
|
|
4583
4661
|
/**
|
|
@@ -4794,6 +4872,48 @@ var dooboostoreSimpleBootHttpServerSsr = (() => {
|
|
|
4794
4872
|
});
|
|
4795
4873
|
return { promise, resolve, reject };
|
|
4796
4874
|
};
|
|
4875
|
+
Promises2.executeInChunks = async (promiseFactories, chunkSize = 10) => {
|
|
4876
|
+
const results = [];
|
|
4877
|
+
for (let i = 0; i < promiseFactories.length; i += chunkSize) {
|
|
4878
|
+
const chunk = promiseFactories.slice(i, i + chunkSize);
|
|
4879
|
+
const chunkResults = await Promise.all(chunk.map((factory) => factory()));
|
|
4880
|
+
results.push(...chunkResults);
|
|
4881
|
+
if (i + chunkSize < promiseFactories.length) {
|
|
4882
|
+
await (0, Promises2.sleep)(100);
|
|
4883
|
+
}
|
|
4884
|
+
}
|
|
4885
|
+
return results;
|
|
4886
|
+
};
|
|
4887
|
+
Promises2.executeWithConcurrency = async (promiseFactories, concurrency = 10) => {
|
|
4888
|
+
const results = new Array(promiseFactories.length);
|
|
4889
|
+
let currentIndex = 0;
|
|
4890
|
+
const executeNext = async (index) => {
|
|
4891
|
+
while (currentIndex < promiseFactories.length) {
|
|
4892
|
+
const factoryIndex = currentIndex++;
|
|
4893
|
+
results[factoryIndex] = await promiseFactories[factoryIndex]();
|
|
4894
|
+
}
|
|
4895
|
+
};
|
|
4896
|
+
const workers = Array(Math.min(concurrency, promiseFactories.length)).fill(0).map((_, i) => executeNext(i));
|
|
4897
|
+
await Promise.all(workers);
|
|
4898
|
+
return results;
|
|
4899
|
+
};
|
|
4900
|
+
Promises2.executeWithLimit = async (promiseFactories, limit = 5) => {
|
|
4901
|
+
const results = new Array(promiseFactories.length);
|
|
4902
|
+
const executing = [];
|
|
4903
|
+
for (const [index, factory] of promiseFactories.entries()) {
|
|
4904
|
+
const promise = factory().then((result) => {
|
|
4905
|
+
results[index] = result;
|
|
4906
|
+
}).finally(() => {
|
|
4907
|
+
executing.splice(executing.indexOf(promise), 1);
|
|
4908
|
+
});
|
|
4909
|
+
executing.push(promise);
|
|
4910
|
+
if (executing.length >= limit) {
|
|
4911
|
+
await Promise.race(executing);
|
|
4912
|
+
}
|
|
4913
|
+
}
|
|
4914
|
+
await Promise.all(executing);
|
|
4915
|
+
return results;
|
|
4916
|
+
};
|
|
4797
4917
|
let Result;
|
|
4798
4918
|
((Result2) => {
|
|
4799
4919
|
async function awaitWrap(promise) {
|
|
@@ -5399,7 +5519,13 @@ var dooboostoreSimpleBootHttpServerSsr = (() => {
|
|
|
5399
5519
|
this.procAttr(childNodes, _EventManager2.normalAttrMapAttrName, (it, attribute) => {
|
|
5400
5520
|
const map = new Map(JSON.parse(attribute));
|
|
5401
5521
|
map.forEach((v, k) => {
|
|
5402
|
-
const
|
|
5522
|
+
const variablePaths = v.variablePaths;
|
|
5523
|
+
let targetScript = v.originalAttrValue;
|
|
5524
|
+
variablePaths.forEach((it2) => {
|
|
5525
|
+
let r = ObjectUtils.Path.toOptionalChainPath(it2.inner);
|
|
5526
|
+
targetScript = targetScript.replaceAll(it2.origin, `\${${r}}`);
|
|
5527
|
+
});
|
|
5528
|
+
const data = ObjectUtils.Script.evaluate(`const $element = this.element; return ${"`" + targetScript + "`"} `, Object.assign(obj, {
|
|
5403
5529
|
__render: Object.freeze({
|
|
5404
5530
|
element: it,
|
|
5405
5531
|
attribute: ElementUtils.getAttributeToObject(it)
|
|
@@ -5589,7 +5715,7 @@ var dooboostoreSimpleBootHttpServerSsr = (() => {
|
|
|
5589
5715
|
});
|
|
5590
5716
|
}
|
|
5591
5717
|
getValue(obj, name, bindObj) {
|
|
5592
|
-
let r =
|
|
5718
|
+
let r = ObjectUtils.Script.evaluateReturn(name, obj);
|
|
5593
5719
|
if (typeof r === "function") {
|
|
5594
5720
|
r = r.bind(bindObj ?? obj);
|
|
5595
5721
|
}
|
|
@@ -5689,6 +5815,7 @@ var dooboostoreSimpleBootHttpServerSsr = (() => {
|
|
|
5689
5815
|
_EventManager.WINDOW_EVENT_POPSTATE = "popstate";
|
|
5690
5816
|
_EventManager.WINDOW_EVENT_RESIZE = "resize";
|
|
5691
5817
|
_EventManager.WINDOW_EVENTS = [_EventManager.WINDOW_EVENT_POPSTATE, _EventManager.WINDOW_EVENT_RESIZE];
|
|
5818
|
+
_EventManager.noDetectAttr = [_EventManager.normalAttrMapAttrName];
|
|
5692
5819
|
_EventManager.attrNames = [
|
|
5693
5820
|
_EventManager.valueAttrName,
|
|
5694
5821
|
_EventManager.checkedAttrName,
|
|
@@ -5822,7 +5949,7 @@ var dooboostoreSimpleBootHttpServerSsr = (() => {
|
|
|
5822
5949
|
const itRandom = RawSet.drItOtherEncoding(this.elementSource.element, "DrIf");
|
|
5823
5950
|
const vars = RawSet.drVarEncoding(this.elementSource.element, this.elementSource.attrs.drVarOption ?? "");
|
|
5824
5951
|
const newTemp = this.source.config.window.document.createElement("temp");
|
|
5825
|
-
const keepgoing =
|
|
5952
|
+
const keepgoing = ObjectUtils.Script.evaluate(`
|
|
5826
5953
|
${this.render.bindScript}
|
|
5827
5954
|
${this.elementSource.attrs.drBeforeOption ?? ""}
|
|
5828
5955
|
if ($rawSet.data === (${ObjectUtils.Path.toOptionalChainPath(attr)})) {
|
|
@@ -6335,7 +6462,7 @@ var dooboostoreSimpleBootHttpServerSsr = (() => {
|
|
|
6335
6462
|
}
|
|
6336
6463
|
async executeAttrRequire(attr) {
|
|
6337
6464
|
const newTemp = this.source.config.window.document.createElement("temp");
|
|
6338
|
-
|
|
6465
|
+
ObjectUtils.Script.evaluate(`
|
|
6339
6466
|
${this.render.bindScript}
|
|
6340
6467
|
const n = $element.cloneNode(true);
|
|
6341
6468
|
${this.elementSource.attrs.drBeforeOption ?? ""}
|
|
@@ -6455,7 +6582,10 @@ var dooboostoreSimpleBootHttpServerSsr = (() => {
|
|
|
6455
6582
|
const itRandom = RawSet.drItOtherEncoding(this.elementSource.element, "DrForOf");
|
|
6456
6583
|
const vars = RawSet.drVarEncoding(this.elementSource.element, this.elementSource.attrs.drVarOption ?? "");
|
|
6457
6584
|
const newTemp = this.source.config.window.document.createElement("temp");
|
|
6458
|
-
|
|
6585
|
+
const variableName = this.elementSource.element.getAttribute(RawSet.DR_VARIABLE_NAME_OPTIONNAME);
|
|
6586
|
+
const itemVariableName = this.elementSource.element.getAttribute(RawSet.DR_ITEM_VARIABLE_NAME_OPTIONNAME);
|
|
6587
|
+
const itemIndexVariableName = this.elementSource.element.getAttribute(RawSet.DR_ITEM_INDEX_VARIABLE_NAME_OPTIONNAME);
|
|
6588
|
+
ObjectUtils.Script.evaluate(`
|
|
6459
6589
|
${this.render.bindScript}
|
|
6460
6590
|
${this.elementSource.attrs.drBeforeOption ?? ""}
|
|
6461
6591
|
var i = -1;
|
|
@@ -6478,11 +6608,18 @@ var dooboostoreSimpleBootHttpServerSsr = (() => {
|
|
|
6478
6608
|
destIt = forOfStr + '[' + i +']'
|
|
6479
6609
|
}
|
|
6480
6610
|
const n = this.__render.element.cloneNode(true);
|
|
6481
|
-
// console.log('zzzzzzzzzzz', n.getAttribute('${RawSet.DR_DETECT_ATTR_OPTIONNAME}'));
|
|
6482
6611
|
Object.entries(this.__render.drAttr).filter(([k,v]) => k !== 'drForOf' && k !== 'drNextOption' && v).forEach(([k, v]) => n.setAttribute(this.__render.drAttrsOriginName[k], v));
|
|
6483
|
-
// console.log('---------'+destIt,n, Array.from(n.getAttributeNames()).map(it=>({name:it,attr: n.getAttribute(it)})));
|
|
6484
|
-
// console.log('---------destItdestIt',destIt);
|
|
6485
6612
|
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)))
|
|
6613
|
+
if ('${variableName}') {
|
|
6614
|
+
n.getAttributeNames().forEach(it => n.setAttribute(it, n.getAttribute(it).replaceAll('#${variableName}#', forOfStr)));
|
|
6615
|
+
}
|
|
6616
|
+
if ('${itemVariableName}') {
|
|
6617
|
+
n.getAttributeNames().forEach(it => n.setAttribute(it, n.getAttribute(it).replaceAll('#${itemVariableName}#', destIt)));
|
|
6618
|
+
}
|
|
6619
|
+
if ('${itemIndexVariableName}') {
|
|
6620
|
+
n.getAttributeNames().forEach(it => n.setAttribute(it, n.getAttribute(it).replaceAll('#${itemIndexVariableName}#', i)));
|
|
6621
|
+
}
|
|
6622
|
+
|
|
6486
6623
|
const drOptionAttr = n.getAttribute('${RawSet.DR_DETECT_ATTR_OPTIONNAME}');
|
|
6487
6624
|
if (drOptionAttr) {
|
|
6488
6625
|
const drOptionAttrResult = $scriptUtils.evaluateReturn(drOptionAttr, this);
|
|
@@ -6505,12 +6642,16 @@ var dooboostoreSimpleBootHttpServerSsr = (() => {
|
|
|
6505
6642
|
}
|
|
6506
6643
|
|
|
6507
6644
|
n.innerHTML = n.innerHTML.replace(/\\#it\\#/g, destIt).replace(/\\#index\\#/g, i);
|
|
6508
|
-
|
|
6509
|
-
|
|
6510
|
-
|
|
6511
|
-
|
|
6512
|
-
|
|
6513
|
-
|
|
6645
|
+
if ('${variableName}') {
|
|
6646
|
+
n.innerHTML = n.innerHTML.replaceAll('#${variableName}#', forOfStr);
|
|
6647
|
+
}
|
|
6648
|
+
if ('${itemVariableName}') {
|
|
6649
|
+
n.innerHTML = n.innerHTML.replaceAll('#${itemVariableName}#', destIt);
|
|
6650
|
+
}
|
|
6651
|
+
if ('${itemIndexVariableName}') {
|
|
6652
|
+
n.innerHTML = n.innerHTML.replaceAll('#${itemIndexVariableName}#', i);
|
|
6653
|
+
}
|
|
6654
|
+
|
|
6514
6655
|
if (this.__render.drStripOption === 'true') {
|
|
6515
6656
|
Array.from(n.childNodes).forEach(it => this.__render.fag.append(it));
|
|
6516
6657
|
} else {
|
|
@@ -7503,7 +7644,8 @@ ${indentStr}}`;
|
|
|
7503
7644
|
const targetAttrMap = element.getAttribute(EventManager.normalAttrMapAttrName);
|
|
7504
7645
|
if (targetAttrMap) {
|
|
7505
7646
|
new Map(JSON.parse(targetAttrMap)).forEach((v, k) => {
|
|
7506
|
-
|
|
7647
|
+
const variablePaths = v.variablePaths;
|
|
7648
|
+
variablePaths.forEach((it) => targetScripts.push(`(${it.inner})`));
|
|
7507
7649
|
});
|
|
7508
7650
|
}
|
|
7509
7651
|
script = targetScripts.join(";");
|
|
@@ -7564,12 +7706,18 @@ ${indentStr}}`;
|
|
|
7564
7706
|
const runText = _RawSet2.expressionGroups(textContent)[0][1];
|
|
7565
7707
|
let newNode;
|
|
7566
7708
|
if (textContent?.startsWith("#")) {
|
|
7567
|
-
const r = ObjectUtils.Script.evaluate(
|
|
7709
|
+
const r = ObjectUtils.Script.evaluate(
|
|
7710
|
+
`${__render.bindScript} return ${runText}`,
|
|
7711
|
+
Object.assign(obj, { __render })
|
|
7712
|
+
);
|
|
7568
7713
|
const template = config.window.document.createElement("template");
|
|
7569
7714
|
template.innerHTML = r;
|
|
7570
7715
|
newNode = template.content;
|
|
7571
7716
|
} else {
|
|
7572
|
-
const r = ObjectUtils.Script.evaluate(
|
|
7717
|
+
const r = ObjectUtils.Script.evaluate(
|
|
7718
|
+
`${__render.bindScript} return ${runText}`,
|
|
7719
|
+
Object.assign(obj, { __render })
|
|
7720
|
+
);
|
|
7573
7721
|
newNode = config.window.document.createTextNode(r);
|
|
7574
7722
|
}
|
|
7575
7723
|
cNode.parentNode?.replaceChild(newNode, cNode);
|
|
@@ -7608,23 +7756,140 @@ ${indentStr}}`;
|
|
|
7608
7756
|
};
|
|
7609
7757
|
drAttrs.push(drAttr);
|
|
7610
7758
|
const operators = [
|
|
7611
|
-
new DrPre(
|
|
7612
|
-
|
|
7759
|
+
new DrPre(
|
|
7760
|
+
this,
|
|
7761
|
+
__render,
|
|
7762
|
+
{ raws, fag },
|
|
7763
|
+
{ element, attrName: _RawSet2.DR_PRE_NAME, attr: drAttr.drPre, attrs: drAttr },
|
|
7764
|
+
{ config, obj, operatorAround: config.operatorAround?.drPre },
|
|
7765
|
+
{ onAttrInitCallBacks, onElementInitCallBacks, onThisComponentSetCallBacks }
|
|
7766
|
+
),
|
|
7767
|
+
new Dr(
|
|
7768
|
+
this,
|
|
7769
|
+
__render,
|
|
7770
|
+
{ raws, fag },
|
|
7771
|
+
{ element, attrName: _RawSet2.DR_NAME, attr: drAttr.dr, attrs: drAttr },
|
|
7772
|
+
{ config, obj, operatorAround: config.operatorAround?.dr },
|
|
7773
|
+
{ onAttrInitCallBacks, onElementInitCallBacks, onThisComponentSetCallBacks }
|
|
7774
|
+
),
|
|
7613
7775
|
// new Dr(this, __render, {raws, fag}, {element, attrName: EventManager.onRenderedInitAttrName, attr: drAttr.dr, attrs: drAttr}, {config, obj, operatorAround: config.operatorAround?.dr}, {onAttrInitCallBacks, onElementInitCallBacks, onThisComponentSetCallBacks}),
|
|
7614
|
-
new DrIf(
|
|
7615
|
-
|
|
7616
|
-
|
|
7617
|
-
|
|
7618
|
-
|
|
7619
|
-
|
|
7620
|
-
|
|
7621
|
-
|
|
7622
|
-
new
|
|
7623
|
-
|
|
7624
|
-
|
|
7625
|
-
|
|
7626
|
-
|
|
7627
|
-
|
|
7776
|
+
new DrIf(
|
|
7777
|
+
this,
|
|
7778
|
+
__render,
|
|
7779
|
+
{ raws, fag },
|
|
7780
|
+
{ element, attrName: _RawSet2.DR_IF_NAME, attr: drAttr.drIf, attrs: drAttr },
|
|
7781
|
+
{ config, obj, operatorAround: config.operatorAround?.drIf },
|
|
7782
|
+
{ onAttrInitCallBacks, onElementInitCallBacks, onThisComponentSetCallBacks }
|
|
7783
|
+
),
|
|
7784
|
+
new DrStripElement(
|
|
7785
|
+
this,
|
|
7786
|
+
__render,
|
|
7787
|
+
{ raws, fag },
|
|
7788
|
+
{ element, attrName: _RawSet2.DR_STRIP_NAME, attr: drAttr.drStripElement, attrs: drAttr },
|
|
7789
|
+
{ config, obj, operatorAround: config.operatorAround?.drThis },
|
|
7790
|
+
{ onAttrInitCallBacks, onElementInitCallBacks, onThisComponentSetCallBacks }
|
|
7791
|
+
),
|
|
7792
|
+
new DrThis(
|
|
7793
|
+
this,
|
|
7794
|
+
__render,
|
|
7795
|
+
{ raws, fag },
|
|
7796
|
+
{ element, attrName: _RawSet2.DR_THIS_NAME, attr: drAttr.drThis, attrs: drAttr },
|
|
7797
|
+
{ config, obj, operatorAround: config.operatorAround?.drThis },
|
|
7798
|
+
{ onAttrInitCallBacks, onElementInitCallBacks, onThisComponentSetCallBacks }
|
|
7799
|
+
),
|
|
7800
|
+
new DrForm(
|
|
7801
|
+
this,
|
|
7802
|
+
__render,
|
|
7803
|
+
{ raws, fag },
|
|
7804
|
+
{ element, attrName: _RawSet2.DR_FOR_NAME, attr: drAttr.drForm, attrs: drAttr },
|
|
7805
|
+
{ config, obj, operatorAround: config.operatorAround?.drForm },
|
|
7806
|
+
{ onAttrInitCallBacks, onElementInitCallBacks, onThisComponentSetCallBacks }
|
|
7807
|
+
),
|
|
7808
|
+
new DrInnerText(
|
|
7809
|
+
this,
|
|
7810
|
+
__render,
|
|
7811
|
+
{ raws, fag },
|
|
7812
|
+
{ element, attrName: _RawSet2.DR_INNERTEXT_NAME, attr: drAttr.drInnerText, attrs: drAttr },
|
|
7813
|
+
{ config, obj, operatorAround: config.operatorAround?.drInnerText },
|
|
7814
|
+
{ onAttrInitCallBacks, onElementInitCallBacks, onThisComponentSetCallBacks }
|
|
7815
|
+
),
|
|
7816
|
+
new DrInnerHTML(
|
|
7817
|
+
this,
|
|
7818
|
+
__render,
|
|
7819
|
+
{ raws, fag },
|
|
7820
|
+
{ element, attrName: _RawSet2.DR_INNERHTML_NAME, attr: drAttr.drInnerHTML, attrs: drAttr },
|
|
7821
|
+
{ config, obj, operatorAround: config.operatorAround?.drInnerHTML },
|
|
7822
|
+
{ onAttrInitCallBacks, onElementInitCallBacks, onThisComponentSetCallBacks }
|
|
7823
|
+
),
|
|
7824
|
+
new DrFor(
|
|
7825
|
+
this,
|
|
7826
|
+
__render,
|
|
7827
|
+
{ raws, fag },
|
|
7828
|
+
{ element, attrName: _RawSet2.DR_FOR_NAME, attr: drAttr.drFor, attrs: drAttr },
|
|
7829
|
+
{ config, obj, operatorAround: config.operatorAround?.drFor },
|
|
7830
|
+
{ onAttrInitCallBacks, onElementInitCallBacks, onThisComponentSetCallBacks }
|
|
7831
|
+
),
|
|
7832
|
+
new DrForOf(
|
|
7833
|
+
this,
|
|
7834
|
+
__render,
|
|
7835
|
+
{ raws, fag },
|
|
7836
|
+
{ element, attrName: _RawSet2.DR_FOR_OF_NAME, attr: drAttr.drForOf, attrs: drAttr },
|
|
7837
|
+
{ config, obj, operatorAround: config.operatorAround?.drForOf },
|
|
7838
|
+
{ onAttrInitCallBacks, onElementInitCallBacks, onThisComponentSetCallBacks }
|
|
7839
|
+
),
|
|
7840
|
+
new DrThisProperty(
|
|
7841
|
+
this,
|
|
7842
|
+
__render,
|
|
7843
|
+
{ raws, fag },
|
|
7844
|
+
{ element, attrName: _RawSet2.DR_THIS_PROPERTY_NAME, attr: drAttr.drThisProperty, attrs: drAttr },
|
|
7845
|
+
{ config, obj, operatorAround: config.operatorAround?.drThisProperty },
|
|
7846
|
+
{ onAttrInitCallBacks, onElementInitCallBacks, onThisComponentSetCallBacks }
|
|
7847
|
+
),
|
|
7848
|
+
new DrAppender(
|
|
7849
|
+
this,
|
|
7850
|
+
__render,
|
|
7851
|
+
{ raws, fag },
|
|
7852
|
+
{ element, attrName: _RawSet2.DR_APPENDER_NAME, attr: drAttr.drAppender, attrs: drAttr },
|
|
7853
|
+
{ config, obj, operatorAround: config.operatorAround?.drAppender },
|
|
7854
|
+
{ onAttrInitCallBacks, onElementInitCallBacks, onThisComponentSetCallBacks }
|
|
7855
|
+
),
|
|
7856
|
+
new DrRepeat(
|
|
7857
|
+
this,
|
|
7858
|
+
__render,
|
|
7859
|
+
{ raws, fag },
|
|
7860
|
+
{ element, attrName: _RawSet2.DR_REPEAT_NAME, attr: drAttr.drRepeat, attrs: drAttr },
|
|
7861
|
+
{ config, obj, operatorAround: config.operatorAround?.drRepeat },
|
|
7862
|
+
{ onAttrInitCallBacks, onElementInitCallBacks, onThisComponentSetCallBacks }
|
|
7863
|
+
),
|
|
7864
|
+
new DrTargetElementIsElement(
|
|
7865
|
+
this,
|
|
7866
|
+
__render,
|
|
7867
|
+
{ raws, fag },
|
|
7868
|
+
{
|
|
7869
|
+
element,
|
|
7870
|
+
attrName: _RawSet2.DR_REPLACE_TARGET_ELEMENT_IS_NAME,
|
|
7871
|
+
attr: drAttr.drReplaceTargetElementIs,
|
|
7872
|
+
attrs: drAttr
|
|
7873
|
+
},
|
|
7874
|
+
{ config, obj },
|
|
7875
|
+
{ onAttrInitCallBacks, onElementInitCallBacks, onThisComponentSetCallBacks }
|
|
7876
|
+
),
|
|
7877
|
+
new DrTargetElement(
|
|
7878
|
+
this,
|
|
7879
|
+
__render,
|
|
7880
|
+
{ raws, fag },
|
|
7881
|
+
{ element, attrs: drAttr },
|
|
7882
|
+
{ config, obj },
|
|
7883
|
+
{ onAttrInitCallBacks, onElementInitCallBacks, onThisComponentSetCallBacks }
|
|
7884
|
+
),
|
|
7885
|
+
new DrTargetAttr(
|
|
7886
|
+
this,
|
|
7887
|
+
__render,
|
|
7888
|
+
{ raws, fag },
|
|
7889
|
+
{ element, attrs: drAttr },
|
|
7890
|
+
{ config, obj },
|
|
7891
|
+
{ onAttrInitCallBacks, onElementInitCallBacks, onThisComponentSetCallBacks }
|
|
7892
|
+
)
|
|
7628
7893
|
];
|
|
7629
7894
|
for (const operator of operators) {
|
|
7630
7895
|
const state = await operator.start();
|
|
@@ -7664,12 +7929,12 @@ ${indentStr}}`;
|
|
|
7664
7929
|
});
|
|
7665
7930
|
for (const it of onThisComponentSetCallBacks) {
|
|
7666
7931
|
if (isOnInitRender(it.obj)) {
|
|
7667
|
-
it.obj?.onInitRender?.({}, this);
|
|
7932
|
+
await it.obj?.onInitRender?.({}, this);
|
|
7668
7933
|
}
|
|
7669
7934
|
}
|
|
7670
7935
|
for (const it of onElementInitCallBacks) {
|
|
7671
7936
|
if (isOnInitRender(this.dataSet.render?.currentThis)) {
|
|
7672
|
-
this.dataSet.render.currentThis.onInitRender({}, this);
|
|
7937
|
+
await this.dataSet.render.currentThis.onInitRender({}, this);
|
|
7673
7938
|
}
|
|
7674
7939
|
config?.onElementInit?.(it.name, obj, this, it.targetElement);
|
|
7675
7940
|
}
|
|
@@ -7771,7 +8036,10 @@ ${indentStr}}`;
|
|
|
7771
8036
|
getDrAppendAttributeAndDelete(element, obj) {
|
|
7772
8037
|
let data = element.getAttribute(_RawSet2.DR_APPENDER_NAME);
|
|
7773
8038
|
if (data && !/\[.+\]/g.test(data)) {
|
|
7774
|
-
const currentIndex = ObjectUtils.Script.evaluateReturn(
|
|
8039
|
+
const currentIndex = ObjectUtils.Script.evaluateReturn(
|
|
8040
|
+
`${ObjectUtils.Path.toOptionalChainPath(data)}?.length -1`,
|
|
8041
|
+
obj
|
|
8042
|
+
);
|
|
7775
8043
|
data = `${data}[${currentIndex}]`;
|
|
7776
8044
|
element.setAttribute(_RawSet2.DR_APPENDER_NAME, data);
|
|
7777
8045
|
}
|
|
@@ -7817,22 +8085,28 @@ ${indentStr}}`;
|
|
|
7817
8085
|
const normalAttrs = /* @__PURE__ */ new Map();
|
|
7818
8086
|
const linkVariables = /* @__PURE__ */ new Map();
|
|
7819
8087
|
const linkNames = EventManager.linkAttrs.map((it) => it.name);
|
|
7820
|
-
const isAttr = element2.getAttributeNames().filter((it) => {
|
|
8088
|
+
const isAttr = element2.getAttributeNames().filter((it) => !EventManager.noDetectAttr.includes(it)).filter((it) => {
|
|
7821
8089
|
const value = element2.getAttribute(it);
|
|
7822
8090
|
if (value && linkNames.includes(it)) {
|
|
7823
8091
|
linkVariables.set(it, value);
|
|
7824
8092
|
} else if (value && _RawSet2.isExpression(value)) {
|
|
7825
|
-
|
|
7826
|
-
|
|
7827
|
-
|
|
7828
|
-
|
|
7829
|
-
|
|
8093
|
+
const variablePaths = _RawSet2.expressionGroups(value).map((it2) => ({
|
|
8094
|
+
origin: it2[0],
|
|
8095
|
+
inner: it2[1]
|
|
8096
|
+
}));
|
|
8097
|
+
let targetScript = value;
|
|
8098
|
+
variablePaths.forEach((it2) => {
|
|
8099
|
+
let r3 = it2.inner.replace(/#[^#]*#/g, "({})");
|
|
8100
|
+
r3 = ObjectUtils.Path.toOptionalChainPath(r3);
|
|
8101
|
+
targetScript = targetScript.replaceAll(it2.origin, `\${${r3}}`);
|
|
8102
|
+
});
|
|
8103
|
+
const cval = ObjectUtils.Script.evaluateReturn("`" + targetScript + "`", Object.assign(obj));
|
|
7830
8104
|
if (cval === null) {
|
|
7831
8105
|
element2.removeAttribute(it);
|
|
7832
8106
|
} else {
|
|
7833
8107
|
element2.setAttribute(it, cval);
|
|
7834
8108
|
}
|
|
7835
|
-
normalAttrs.set(it,
|
|
8109
|
+
normalAttrs.set(it, { originalAttrValue: value, variablePaths });
|
|
7836
8110
|
}
|
|
7837
8111
|
const isTargetAttr = targetAttrNames.includes(it.toLowerCase());
|
|
7838
8112
|
return isTargetAttr;
|
|
@@ -8246,11 +8520,33 @@ ${indentStr}}`;
|
|
|
8246
8520
|
targetElement.querySelectorAll(EventManager.attrNames.map((it) => `[${it}]`).join(",")).forEach((it) => {
|
|
8247
8521
|
it.setAttribute(EventManager.ownerVariablePathAttrName, "this");
|
|
8248
8522
|
});
|
|
8249
|
-
const componentNameReplaceKey = RandomUtils.uuid();
|
|
8250
8523
|
rawSet.point.innerHTML = element.innerHTML;
|
|
8251
|
-
const
|
|
8524
|
+
const innerText = element.textContent?.trim() ?? "";
|
|
8525
|
+
const escapedInnerHTML = ConvertUtils.escapeHTML(element.innerHTML);
|
|
8526
|
+
const innerHTMLName = targetElement.getAttribute(_RawSet2.DR_INNER_HTML_NAME_OPTIONNAME) ?? "innerHTML";
|
|
8527
|
+
const innerTEXTName = targetElement.getAttribute(_RawSet2.DR_INNER_TEXT_NAME_OPTIONNAME) ?? "innerTEXT";
|
|
8528
|
+
const innerHTMLEscapedName = targetElement.getAttribute(_RawSet2.DR_INNER_HTML_ESCAPED_NAME_OPTIONNAME) ?? "innerHTMLEscaped";
|
|
8529
|
+
const templateReplacements = [];
|
|
8252
8530
|
if (innerHTMLName) {
|
|
8253
|
-
|
|
8531
|
+
templateReplacements.push({
|
|
8532
|
+
regex: new RegExp(`#${innerHTMLName}#`, "g"),
|
|
8533
|
+
callback: () => element.innerHTML
|
|
8534
|
+
});
|
|
8535
|
+
}
|
|
8536
|
+
if (innerTEXTName) {
|
|
8537
|
+
templateReplacements.push({
|
|
8538
|
+
regex: new RegExp(`#${innerTEXTName}#`, "g"),
|
|
8539
|
+
callback: () => innerText
|
|
8540
|
+
});
|
|
8541
|
+
}
|
|
8542
|
+
if (innerHTMLEscapedName) {
|
|
8543
|
+
templateReplacements.push({
|
|
8544
|
+
regex: new RegExp(`#${innerHTMLEscapedName}#`, "g"),
|
|
8545
|
+
callback: () => escapedInnerHTML
|
|
8546
|
+
});
|
|
8547
|
+
}
|
|
8548
|
+
if (templateReplacements.length > 0) {
|
|
8549
|
+
targetElement.innerHTML = StringUtils.replaceSequentially(targetElement.innerHTML, templateReplacements);
|
|
8254
8550
|
}
|
|
8255
8551
|
const optionThisName = targetElement.getAttribute(_RawSet2.DR_THIS_NAME_OPTIONNAME);
|
|
8256
8552
|
targetElement.getAttributeNames().forEach((it) => targetElement.setAttribute(it, targetElement.getAttribute(it).replace(/#this#/g, drThis)));
|
|
@@ -8327,7 +8623,6 @@ ${indentStr}}`;
|
|
|
8327
8623
|
obj.__domrender_components ?? (obj.__domrender_components = {});
|
|
8328
8624
|
const domrenderComponents = obj.__domrender_components;
|
|
8329
8625
|
const renderScript = ` /*createComponentTargetElement*/
|
|
8330
|
-
// console.log('-------------------',this.__render);
|
|
8331
8626
|
var ${EventManager.RAWSET_VARNAME} = this.__render.rawSet;
|
|
8332
8627
|
var ${EventManager.COMPONENT_VARNAME} = this.__render.component;
|
|
8333
8628
|
var ${EventManager.ELEMENT_VARNAME} = this.__render.element;
|
|
@@ -8382,15 +8677,40 @@ ${indentStr}}`;
|
|
|
8382
8677
|
rawSet.dataSet.render = render;
|
|
8383
8678
|
instance.__rawSet = rawSet;
|
|
8384
8679
|
let applayTemplate = element.innerHTML;
|
|
8680
|
+
let applayTemplateText = element.textContent?.trim() ?? "";
|
|
8681
|
+
let applayTemplateEscape = ConvertUtils.escapeHTML(element.innerHTML);
|
|
8385
8682
|
let innerHTMLThisRandom;
|
|
8386
|
-
const componentName = element.getAttribute(_RawSet2.
|
|
8387
|
-
const innerHTMLName = element.getAttribute(_RawSet2.
|
|
8683
|
+
const componentName = element.getAttribute(_RawSet2.DR_VARIABLE_NAME_OPTIONNAME) ?? "component";
|
|
8684
|
+
const innerHTMLName = element.getAttribute(_RawSet2.DR_INNER_HTML_NAME_OPTIONNAME) ?? "innerHTML";
|
|
8685
|
+
const innerTEXTName = element.getAttribute(_RawSet2.DR_INNER_TEXT_NAME_OPTIONNAME) ?? "innerTEXT";
|
|
8686
|
+
const innerHTMLEscapedName = element.getAttribute(_RawSet2.DR_INNER_HTML_ESCAPED_NAME_OPTIONNAME) ?? "innerHTMLEscaped";
|
|
8388
8687
|
if (applayTemplate) {
|
|
8389
8688
|
innerHTMLThisRandom = RandomUtils.uuid();
|
|
8390
|
-
applayTemplate =
|
|
8391
|
-
|
|
8689
|
+
applayTemplate = StringUtils.replaceSequentially(applayTemplate, [
|
|
8690
|
+
{
|
|
8691
|
+
regex: /this\./g,
|
|
8692
|
+
callback: () => innerHTMLThisRandom
|
|
8693
|
+
},
|
|
8694
|
+
{
|
|
8695
|
+
regex: new RegExp(`#${componentName}#`, "g"),
|
|
8696
|
+
callback: () => nearThisPath
|
|
8697
|
+
}
|
|
8698
|
+
]);
|
|
8392
8699
|
}
|
|
8393
|
-
applayTemplate = (this.template ?? ""
|
|
8700
|
+
applayTemplate = StringUtils.replaceSequentially(this.template ?? "", [
|
|
8701
|
+
{
|
|
8702
|
+
regex: new RegExp(`#${innerHTMLName}#`, "g"),
|
|
8703
|
+
callback: () => applayTemplate
|
|
8704
|
+
},
|
|
8705
|
+
{
|
|
8706
|
+
regex: new RegExp(`#${innerTEXTName}#`, "g"),
|
|
8707
|
+
callback: () => applayTemplateText
|
|
8708
|
+
},
|
|
8709
|
+
{
|
|
8710
|
+
regex: new RegExp(`#${innerHTMLEscapedName}#`, "g"),
|
|
8711
|
+
callback: () => applayTemplateEscape
|
|
8712
|
+
}
|
|
8713
|
+
]);
|
|
8394
8714
|
const style = _RawSet2.generateStyleTransform(this.styles, rawSet.uuid, true);
|
|
8395
8715
|
element.innerHTML = style + (applayTemplate ?? "");
|
|
8396
8716
|
let data = await _RawSet2.drThisCreate(
|
|
@@ -8404,8 +8724,8 @@ ${indentStr}}`;
|
|
|
8404
8724
|
);
|
|
8405
8725
|
if (data && innerHTMLThisRandom) {
|
|
8406
8726
|
const template2 = config.window.document.createElement("template");
|
|
8407
|
-
template2.
|
|
8408
|
-
|
|
8727
|
+
template2.innerHTML = ElementUtils.toInnerHTML(data, { document: config.window.document }).replace(RegExp(innerHTMLThisRandom, "g"), "this.");
|
|
8728
|
+
;
|
|
8409
8729
|
data = template2.content;
|
|
8410
8730
|
}
|
|
8411
8731
|
return data;
|
|
@@ -8442,8 +8762,24 @@ ${indentStr}}`;
|
|
|
8442
8762
|
const normalAttribute = attribute[EventManager.normalAttrMapAttrName];
|
|
8443
8763
|
if (normalAttribute) {
|
|
8444
8764
|
new Map(JSON.parse(normalAttribute)).forEach((v, k) => {
|
|
8765
|
+
const variablePaths = v.variablePaths;
|
|
8766
|
+
let targetScript = v.originalAttrValue.trim();
|
|
8767
|
+
let checktargetScript = v.originalAttrValue.trim();
|
|
8768
|
+
variablePaths.forEach((it) => {
|
|
8769
|
+
checktargetScript = targetScript.replaceAll(it.origin, "");
|
|
8770
|
+
});
|
|
8771
|
+
let isScriptValue = checktargetScript.length === 0 && variablePaths.length === 1;
|
|
8772
|
+
if (isScriptValue) {
|
|
8773
|
+
let r = ObjectUtils.Path.toOptionalChainPath(variablePaths[0].inner);
|
|
8774
|
+
targetScript = targetScript.replaceAll(variablePaths[0].origin, r);
|
|
8775
|
+
} else {
|
|
8776
|
+
variablePaths.forEach((it) => {
|
|
8777
|
+
let r = ObjectUtils.Path.toOptionalChainPath(it.inner);
|
|
8778
|
+
targetScript = targetScript.replaceAll(it.origin, `\${${r}}`);
|
|
8779
|
+
});
|
|
8780
|
+
}
|
|
8445
8781
|
const cval = ObjectUtils.Script.evaluateReturn(
|
|
8446
|
-
{ bodyScript: config.script, returnScript:
|
|
8782
|
+
{ bodyScript: config.script, returnScript: isScriptValue ? targetScript : "`" + targetScript + "`" },
|
|
8447
8783
|
Object.assign(config.obj, config.renderData ? { __render: config.renderData } : void 0)
|
|
8448
8784
|
);
|
|
8449
8785
|
attribute[k] = cval;
|
|
@@ -8482,8 +8818,12 @@ ${indentStr}}`;
|
|
|
8482
8818
|
_RawSet.DR_STRIP_OPTIONNAME = "dr-option-strip";
|
|
8483
8819
|
_RawSet.DR_DESTROY_OPTIONNAME = "dr-option-destroy";
|
|
8484
8820
|
_RawSet.DR_THIS_NAME_OPTIONNAME = "dr-option-this-name";
|
|
8485
|
-
_RawSet.
|
|
8486
|
-
_RawSet.
|
|
8821
|
+
_RawSet.DR_VARIABLE_NAME_OPTIONNAME = "dr-option-variable-name";
|
|
8822
|
+
_RawSet.DR_ITEM_VARIABLE_NAME_OPTIONNAME = "dr-option-item-variable-name";
|
|
8823
|
+
_RawSet.DR_ITEM_INDEX_VARIABLE_NAME_OPTIONNAME = "dr-option-item-index-variable-name";
|
|
8824
|
+
_RawSet.DR_INNER_HTML_NAME_OPTIONNAME = "dr-option-inner-html-name";
|
|
8825
|
+
_RawSet.DR_INNER_TEXT_NAME_OPTIONNAME = "dr-option-inner-text-name";
|
|
8826
|
+
_RawSet.DR_INNER_HTML_ESCAPED_NAME_OPTIONNAME = "dr-option-inner-html-escaped-name";
|
|
8487
8827
|
_RawSet.DR_KEY_OPTIONNAME = "dr-option-key";
|
|
8488
8828
|
_RawSet.DR_HAS_KEYS_OPTIONNAME = "dr-option-has-keys";
|
|
8489
8829
|
_RawSet.DR_ON_CREATE_ARGUMENTS_OPTIONNAME = "dr-on-create:arguments";
|
|
@@ -8589,7 +8929,20 @@ ${indentStr}}`;
|
|
|
8589
8929
|
};
|
|
8590
8930
|
|
|
8591
8931
|
// ../dom-render/dist/esm/DomRenderProxy.js
|
|
8592
|
-
var excludeGetSetPropertys = [
|
|
8932
|
+
var excludeGetSetPropertys = [
|
|
8933
|
+
"onBeforeReturnGet",
|
|
8934
|
+
"onBeforeReturnSet",
|
|
8935
|
+
"__domrender_components",
|
|
8936
|
+
"__render",
|
|
8937
|
+
"_DomRender_isFinal",
|
|
8938
|
+
"_domRender_ref",
|
|
8939
|
+
"_rawSets",
|
|
8940
|
+
"_domRender_proxy",
|
|
8941
|
+
"_targets",
|
|
8942
|
+
"_DomRender_origin",
|
|
8943
|
+
"_DomRender_ref",
|
|
8944
|
+
"_DomRender_proxy"
|
|
8945
|
+
];
|
|
8593
8946
|
var isWrapProxyDomRenderProxy = (obj) => {
|
|
8594
8947
|
return obj && typeof obj === "object" && "_DomRender_isProxy" in obj;
|
|
8595
8948
|
};
|
|
@@ -8625,7 +8978,7 @@ ${indentStr}}`;
|
|
|
8625
8978
|
static isFinal(obj) {
|
|
8626
8979
|
return ValidUtils.isNull(obj) || DomRenderFinalProxy.isFinal(obj);
|
|
8627
8980
|
}
|
|
8628
|
-
run(objProxy) {
|
|
8981
|
+
async run(objProxy) {
|
|
8629
8982
|
this._domRender_proxy = objProxy;
|
|
8630
8983
|
if (isOnProxyDomRender(objProxy)) {
|
|
8631
8984
|
objProxy.onProxyDomRender(this._domRender_config);
|
|
@@ -8650,18 +9003,18 @@ ${indentStr}}`;
|
|
|
8650
9003
|
}
|
|
8651
9004
|
});
|
|
8652
9005
|
}
|
|
8653
|
-
this._targets
|
|
8654
|
-
this.initRender(target);
|
|
8655
|
-
}
|
|
9006
|
+
for (let target of this._targets) {
|
|
9007
|
+
await this.initRender(target);
|
|
9008
|
+
}
|
|
8656
9009
|
}
|
|
8657
|
-
initRender(target, rawSet) {
|
|
9010
|
+
async initRender(target, rawSet) {
|
|
8658
9011
|
if (target instanceof Element) {
|
|
8659
9012
|
target.innerHTML = target.innerHTML.replace(/@this@/g, "this");
|
|
8660
9013
|
}
|
|
8661
9014
|
const onCreate = target.getAttribute?.(RawSet.DR_ON_CREATE_ARGUMENTS_OPTIONNAME);
|
|
8662
9015
|
let createParam = [];
|
|
8663
9016
|
if (onCreate) {
|
|
8664
|
-
createParam =
|
|
9017
|
+
createParam = ObjectUtils.Script.evaluateReturn(onCreate, this._domRender_proxy);
|
|
8665
9018
|
if (!Array.isArray(createParam)) {
|
|
8666
9019
|
createParam = [createParam];
|
|
8667
9020
|
}
|
|
@@ -8674,7 +9027,11 @@ ${indentStr}}`;
|
|
|
8674
9027
|
}
|
|
8675
9028
|
this._targets.add(target);
|
|
8676
9029
|
const rawSets = RawSet.checkPointCreates(target, this._domRender_proxy, this._domRender_config);
|
|
8677
|
-
this._domRender_config.eventManager.applyEvent(
|
|
9030
|
+
this._domRender_config.eventManager.applyEvent(
|
|
9031
|
+
this._domRender_proxy,
|
|
9032
|
+
this._domRender_config.eventManager.findAttrElements(target, this._domRender_config),
|
|
9033
|
+
this._domRender_config
|
|
9034
|
+
);
|
|
8678
9035
|
rawSets.forEach((it) => {
|
|
8679
9036
|
const variables = it.getUsingTriggerVariables(this._domRender_config);
|
|
8680
9037
|
if (variables.size <= 0) {
|
|
@@ -8685,16 +9042,20 @@ ${indentStr}}`;
|
|
|
8685
9042
|
});
|
|
8686
9043
|
}
|
|
8687
9044
|
});
|
|
8688
|
-
this.render(this.getRawSets())
|
|
9045
|
+
const targetRawSets = await this.render(this.getRawSets());
|
|
9046
|
+
for (let targetRawSet of targetRawSets) {
|
|
8689
9047
|
const onInit = target.getAttribute?.(RawSet.DR_ON_INIT_ARGUMENTS_OPTIONNAME);
|
|
8690
9048
|
let initParam;
|
|
8691
9049
|
if (onCreate) {
|
|
8692
9050
|
initParam = ScriptUtils.evaluateReturn(onCreate, this._domRender_proxy);
|
|
8693
9051
|
}
|
|
8694
9052
|
if (isOnInitRender(this._domRender_proxy)) {
|
|
8695
|
-
this._domRender_proxy.onInitRender(
|
|
9053
|
+
await this._domRender_proxy.onInitRender(
|
|
9054
|
+
initParam,
|
|
9055
|
+
rawSet ?? { dataSet: { config: this._domRender_config } }
|
|
9056
|
+
);
|
|
8696
9057
|
}
|
|
8697
|
-
}
|
|
9058
|
+
}
|
|
8698
9059
|
}
|
|
8699
9060
|
getRawSets() {
|
|
8700
9061
|
const set = /* @__PURE__ */ new Set();
|
|
@@ -8727,9 +9088,12 @@ ${indentStr}}`;
|
|
|
8727
9088
|
} else if (it.type === RawSetType.TARGET_ELEMENT && it.dataSet?.render?.currentThis && fullPathStr && targetAttrMap) {
|
|
8728
9089
|
new Map(JSON.parse(targetAttrMap)).forEach((v, k) => {
|
|
8729
9090
|
var _a7;
|
|
8730
|
-
const isUsing = EventManager.isUsingThisVar(
|
|
9091
|
+
const isUsing = v.variablePaths.some((it2) => EventManager.isUsingThisVar(it2.inner, `this.${fullPathStr}`));
|
|
8731
9092
|
if (isUsing) {
|
|
8732
|
-
const targetAttrObject = RawSet.getAttributeObject(it.point.node, {
|
|
9093
|
+
const targetAttrObject = RawSet.getAttributeObject(it.point.node, {
|
|
9094
|
+
script: it.dataSet?.render?.renderScript ?? "",
|
|
9095
|
+
obj: Object.assign(this._domRender_proxy ?? {}, { __render: it.dataSet?.render })
|
|
9096
|
+
});
|
|
8733
9097
|
(_a7 = it.dataSet).render ?? (_a7.render = {});
|
|
8734
9098
|
it.dataSet.render.attribute = targetAttrObject;
|
|
8735
9099
|
if (isOnChangeAttrRender(it.dataSet?.render?.currentThis)) {
|
|
@@ -8773,7 +9137,11 @@ ${indentStr}}`;
|
|
|
8773
9137
|
it.forEach((sit) => {
|
|
8774
9138
|
try {
|
|
8775
9139
|
const concat = pathInfos.concat([[{ path: sit, obj: key }]]);
|
|
8776
|
-
const items = key._DomRender_proxy?.root(
|
|
9140
|
+
const items = key._DomRender_proxy?.root(
|
|
9141
|
+
concat,
|
|
9142
|
+
value,
|
|
9143
|
+
lastDoneExecute
|
|
9144
|
+
);
|
|
8777
9145
|
fullPaths.push(items.flat());
|
|
8778
9146
|
} catch (e) {
|
|
8779
9147
|
}
|
|
@@ -8809,10 +9177,19 @@ ${indentStr}}`;
|
|
|
8809
9177
|
if (value === void 0) {
|
|
8810
9178
|
const rawSet = it.getHasRawSet(lastPropertyName);
|
|
8811
9179
|
rawSet?.remove();
|
|
8812
|
-
startElement.setAttribute(
|
|
9180
|
+
startElement.setAttribute(
|
|
9181
|
+
RawSet.DR_HAS_KEYS_OPTIONNAME,
|
|
9182
|
+
keys.filter((it2) => it2 !== lastPropertyName).join(",")
|
|
9183
|
+
);
|
|
8813
9184
|
}
|
|
8814
9185
|
if (!keys.includes(lastPropertyName)) {
|
|
8815
|
-
const raws = DrThisProperty.append(
|
|
9186
|
+
const raws = DrThisProperty.append(
|
|
9187
|
+
this._domRender_proxy,
|
|
9188
|
+
fullPathStr,
|
|
9189
|
+
lastPropertyName,
|
|
9190
|
+
it,
|
|
9191
|
+
this._domRender_config
|
|
9192
|
+
);
|
|
8816
9193
|
if (raws) {
|
|
8817
9194
|
rawSets.push(...raws);
|
|
8818
9195
|
}
|
|
@@ -8832,10 +9209,19 @@ ${indentStr}}`;
|
|
|
8832
9209
|
} else if (iterable) {
|
|
8833
9210
|
rData = await this.render(Array.from(iterable), fullPathStr);
|
|
8834
9211
|
}
|
|
9212
|
+
const Node2 = this._domRender_config.window.Node;
|
|
8835
9213
|
this._targets.forEach((it) => {
|
|
8836
|
-
if (it.nodeType ===
|
|
8837
|
-
const targets = this._domRender_config.eventManager.findAttrElements(
|
|
8838
|
-
|
|
9214
|
+
if (it.nodeType === Node2.DOCUMENT_FRAGMENT_NODE || it.nodeType === Node2.ELEMENT_NODE) {
|
|
9215
|
+
const targets = this._domRender_config.eventManager.findAttrElements(
|
|
9216
|
+
it,
|
|
9217
|
+
this._domRender_config
|
|
9218
|
+
);
|
|
9219
|
+
this._domRender_config.eventManager.changeVar(
|
|
9220
|
+
this._domRender_proxy,
|
|
9221
|
+
targets,
|
|
9222
|
+
`this.${fullPathStr}`,
|
|
9223
|
+
this._domRender_config
|
|
9224
|
+
);
|
|
8839
9225
|
}
|
|
8840
9226
|
});
|
|
8841
9227
|
if (rData?.length > 0 && isOnChildRenderedByProperty(data)) {
|
|
@@ -8867,49 +9253,64 @@ ${indentStr}}`;
|
|
|
8867
9253
|
fullPathInfo = this.root([[{ path: p, obj: this._domRender_proxy }]], value);
|
|
8868
9254
|
}
|
|
8869
9255
|
const rootElement = this._domRender_config.rootElement ?? this._domRender_config.window.document;
|
|
8870
|
-
DocumentUtils.querySelectorAllByAttributeName(rootElement, EventManager.normalAttrMapAttrName)?.forEach(
|
|
8871
|
-
|
|
8872
|
-
|
|
8873
|
-
|
|
8874
|
-
|
|
8875
|
-
|
|
8876
|
-
|
|
8877
|
-
|
|
8878
|
-
|
|
8879
|
-
|
|
8880
|
-
|
|
8881
|
-
|
|
8882
|
-
|
|
8883
|
-
|
|
8884
|
-
|
|
8885
|
-
});
|
|
8886
|
-
DocumentUtils.querySelectorAllByAttributeName(rootElement, EventManager.linkTargetMapAttrName)?.forEach((elementInfo) => {
|
|
8887
|
-
const targets = new Map(ScriptUtils.evaluateReturn(elementInfo.value));
|
|
8888
|
-
Array.from(targets.entries()).filter(([key, value2]) => value2.trim()).filter(isDefined).flatMap(([key, valueScript]) => {
|
|
8889
|
-
return fullPathInfo.flat().filter((it) => valueScript.includes(`this.${it.path}`)).flatMap((it) => ({ key, valueScript, pathInfo: it }));
|
|
8890
|
-
}).forEach((info) => {
|
|
8891
|
-
const value1 = ScriptUtils.evaluateReturn(info.valueScript, info.pathInfo.obj);
|
|
8892
|
-
const applyAttributeName = EventManager.linkAttrs.find((it) => it.name === info.key);
|
|
8893
|
-
if (applyAttributeName) {
|
|
9256
|
+
DocumentUtils.querySelectorAllByAttributeName(rootElement, EventManager.normalAttrMapAttrName)?.forEach(
|
|
9257
|
+
(elementInfo) => {
|
|
9258
|
+
const targets = new Map(
|
|
9259
|
+
ObjectUtils.Script.evaluateReturn(elementInfo.value)
|
|
9260
|
+
);
|
|
9261
|
+
Array.from(targets.entries()).filter(isDefined).flatMap(([key, valueScript]) => {
|
|
9262
|
+
return fullPathInfo.flat().filter((it) => valueScript.variablePaths?.some((vit) => vit.inner.includes(`this.${it.path}`))).flatMap((it) => ({ key, valueScript, pathInfo: it }));
|
|
9263
|
+
}).forEach((it) => {
|
|
9264
|
+
const variablePaths = it.valueScript.variablePaths;
|
|
9265
|
+
let targetScript = it.valueScript.originalAttrValue;
|
|
9266
|
+
variablePaths.forEach((it2) => {
|
|
9267
|
+
let r = ObjectUtils.Path.toOptionalChainPath(it2.inner);
|
|
9268
|
+
targetScript = targetScript.replaceAll(it2.origin, `\${${r}}`);
|
|
9269
|
+
});
|
|
9270
|
+
const value1 = ObjectUtils.Script.evaluateReturn("`" + targetScript + "`", it.pathInfo.obj);
|
|
8894
9271
|
if (value1 === null) {
|
|
8895
|
-
elementInfo.element.removeAttribute(
|
|
9272
|
+
elementInfo.element.removeAttribute(it.key);
|
|
9273
|
+
elementInfo.element[it.key] = null;
|
|
8896
9274
|
} else {
|
|
8897
|
-
elementInfo.element.setAttribute(
|
|
9275
|
+
elementInfo.element.setAttribute(it.key, value1);
|
|
9276
|
+
elementInfo.element[it.key] = value1;
|
|
8898
9277
|
}
|
|
8899
|
-
}
|
|
8900
|
-
}
|
|
8901
|
-
|
|
8902
|
-
|
|
8903
|
-
|
|
8904
|
-
const
|
|
8905
|
-
|
|
8906
|
-
|
|
8907
|
-
}
|
|
8908
|
-
|
|
8909
|
-
|
|
9278
|
+
});
|
|
9279
|
+
}
|
|
9280
|
+
);
|
|
9281
|
+
DocumentUtils.querySelectorAllByAttributeName(rootElement, EventManager.linkTargetMapAttrName)?.forEach(
|
|
9282
|
+
(elementInfo) => {
|
|
9283
|
+
const targets = new Map(ScriptUtils.evaluateReturn(elementInfo.value));
|
|
9284
|
+
Array.from(targets.entries()).filter(([key, value2]) => value2.trim()).filter(isDefined).flatMap(([key, valueScript]) => {
|
|
9285
|
+
return fullPathInfo.flat().filter((it) => valueScript.includes(`this.${it.path}`)).flatMap((it) => ({ key, valueScript, pathInfo: it }));
|
|
9286
|
+
}).forEach((info) => {
|
|
9287
|
+
const value1 = ScriptUtils.evaluateReturn(info.valueScript, info.pathInfo.obj);
|
|
9288
|
+
const applyAttributeName = EventManager.linkAttrs.find((it) => it.name === info.key);
|
|
9289
|
+
if (applyAttributeName) {
|
|
9290
|
+
if (value1 === null) {
|
|
9291
|
+
elementInfo.element.removeAttribute(applyAttributeName.property);
|
|
9292
|
+
} else {
|
|
9293
|
+
elementInfo.element.setAttribute(applyAttributeName.property, value1);
|
|
9294
|
+
}
|
|
9295
|
+
}
|
|
9296
|
+
});
|
|
9297
|
+
Array.from(targets.entries()).filter(([key, value2]) => value2.trim()).filter(isDefined).flatMap(([key, valueScript]) => {
|
|
9298
|
+
return fullPathInfo.flat().filter((it) => valueScript.includes(`this.${it.path}`)).flatMap((it) => ({ key, valueScript, pathInfo: it }));
|
|
9299
|
+
}).forEach((info) => {
|
|
9300
|
+
const linkInfo = EventManager.linkAttrs.find((it) => it.name === info.key);
|
|
9301
|
+
if (linkInfo) {
|
|
9302
|
+
elementInfo.element[linkInfo.property] = value;
|
|
9303
|
+
}
|
|
9304
|
+
});
|
|
9305
|
+
}
|
|
9306
|
+
);
|
|
8910
9307
|
if ("onBeforeReturnSet" in receiver && typeof p === "string" && !(this._domRender_config.proxyExcludeOnBeforeReturnSets ?? []).concat(excludeGetSetPropertys).includes(p)) {
|
|
8911
9308
|
if (isOnBeforeReturnSet(receiver)) {
|
|
8912
|
-
receiver.onBeforeReturnSet?.(
|
|
9309
|
+
receiver.onBeforeReturnSet?.(
|
|
9310
|
+
p,
|
|
9311
|
+
value,
|
|
9312
|
+
fullPathInfo.map((it) => it.map((it2) => it2.path).join())
|
|
9313
|
+
);
|
|
8913
9314
|
}
|
|
8914
9315
|
}
|
|
8915
9316
|
return true;
|
|
@@ -8929,7 +9330,11 @@ ${indentStr}}`;
|
|
|
8929
9330
|
it = it._DomRender_origin;
|
|
8930
9331
|
}
|
|
8931
9332
|
if ("onBeforeReturnGet" in receiver && typeof p === "string" && !(this._domRender_config.proxyExcludeOnBeforeReturnGets ?? []).concat(excludeGetSetPropertys).includes(p)) {
|
|
8932
|
-
receiver?.onBeforeReturnGet?.(
|
|
9333
|
+
receiver?.onBeforeReturnGet?.(
|
|
9334
|
+
p,
|
|
9335
|
+
it,
|
|
9336
|
+
this.root([[{ path: p, obj: this._domRender_proxy }]], it, false)
|
|
9337
|
+
);
|
|
8933
9338
|
}
|
|
8934
9339
|
return it;
|
|
8935
9340
|
}
|
|
@@ -9221,7 +9626,7 @@ ${indentStr}}`;
|
|
|
9221
9626
|
simpleBootFront.routingSubjectObservable.pipe(
|
|
9222
9627
|
// @ts-ignore
|
|
9223
9628
|
filter(
|
|
9224
|
-
(it) => it.
|
|
9629
|
+
(it) => it.triggerPoint === "end" && typeof it.routerModule.intent.uri === "string" && targetUrl.endsWith(it.routerModule.intent.uri)
|
|
9225
9630
|
),
|
|
9226
9631
|
// delay(1000),
|
|
9227
9632
|
first()
|
|
@@ -10316,6 +10721,7 @@ ${indentStr}}`;
|
|
|
10316
10721
|
|
|
10317
10722
|
// ../simple-boot-http-server/dist/esm/models/RequestResponse.js
|
|
10318
10723
|
var import_node_gzip = __toESM(require_dist(), 1);
|
|
10724
|
+
var import_node_buffer = __require("node:buffer");
|
|
10319
10725
|
|
|
10320
10726
|
// ../core-node/dist/esm/file/FileUtils.js
|
|
10321
10727
|
var node_os = __toESM(__require("node:os"), 1);
|
|
@@ -10425,6 +10831,18 @@ ${indentStr}}`;
|
|
|
10425
10831
|
const buffer = config?.option ? node_fs.readFileSync(p, config.option) : node_fs.readFileSync(p);
|
|
10426
10832
|
return buffer;
|
|
10427
10833
|
};
|
|
10834
|
+
FileUtils2.readAsync = async (path2, config) => {
|
|
10835
|
+
const p = FileUtils2.path(path2);
|
|
10836
|
+
return node_fs.promises.readFile(p, config?.option);
|
|
10837
|
+
};
|
|
10838
|
+
FileUtils2.readStringSync = (path2) => {
|
|
10839
|
+
const p = FileUtils2.path(path2);
|
|
10840
|
+
return node_fs.readFileSync(p, "utf-8");
|
|
10841
|
+
};
|
|
10842
|
+
FileUtils2.readStringAsync = async (path2) => {
|
|
10843
|
+
const p = FileUtils2.path(path2);
|
|
10844
|
+
return node_fs.promises.readFile(p, "utf-8");
|
|
10845
|
+
};
|
|
10428
10846
|
FileUtils2.read = async (path2, config) => {
|
|
10429
10847
|
const p = FileUtils2.path(path2);
|
|
10430
10848
|
return node_fs.readFile(p, config.option);
|
|
@@ -10883,7 +11301,28 @@ ${indentStr}}`;
|
|
|
10883
11301
|
this.res.end(data);
|
|
10884
11302
|
}
|
|
10885
11303
|
async resEnd(chunk) {
|
|
10886
|
-
|
|
11304
|
+
if (chunk instanceof Response) {
|
|
11305
|
+
chunk.headers.forEach((value, key) => {
|
|
11306
|
+
this.res.setHeader(`ORIGIN-${key}`, value);
|
|
11307
|
+
});
|
|
11308
|
+
if (!this.resHeader(HttpHeaders.ContentType)) {
|
|
11309
|
+
const contentType = chunk.headers.get(HttpHeaders.ContentType);
|
|
11310
|
+
if (contentType) {
|
|
11311
|
+
this.res.setHeader(HttpHeaders.ContentType, contentType);
|
|
11312
|
+
}
|
|
11313
|
+
}
|
|
11314
|
+
this.res.statusCode = chunk.status;
|
|
11315
|
+
this.resWriteChunk = import_buffer.Buffer.from(await chunk.arrayBuffer());
|
|
11316
|
+
} else if (chunk instanceof import_node_buffer.Blob) {
|
|
11317
|
+
this.resWriteChunk = import_buffer.Buffer.from(await chunk.arrayBuffer());
|
|
11318
|
+
if (!this.resHeader(HttpHeaders.ContentType)) {
|
|
11319
|
+
this.res.setHeader(HttpHeaders.ContentType, chunk.type);
|
|
11320
|
+
}
|
|
11321
|
+
} else if (chunk instanceof ArrayBuffer) {
|
|
11322
|
+
this.resWriteChunk = import_buffer.Buffer.from(chunk);
|
|
11323
|
+
} else {
|
|
11324
|
+
this.resWriteChunk = chunk ?? this.resWriteChunk;
|
|
11325
|
+
}
|
|
10887
11326
|
if (this.req.readable) {
|
|
10888
11327
|
await this.reqBodyData();
|
|
10889
11328
|
await this.resEndChunk();
|