@vtj/parser 0.15.1 → 0.16.0
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/index.cjs +15 -15
- package/dist/index.mjs +1129 -886
- package/package.json +3 -3
- package/types/shared/utils.d.ts +3 -0
- package/types/version.d.ts +2 -2
- package/types/vue/scripts.d.ts +2 -1
- package/types/vue/template.d.ts +2 -1
- package/types/vue/utils.d.ts +9 -0
package/dist/index.mjs
CHANGED
|
@@ -1,37 +1,38 @@
|
|
|
1
|
-
import { parse as
|
|
2
|
-
import { parse as
|
|
1
|
+
import { parse as ku, compileTemplate as Vu } from "@vue/compiler-sfc";
|
|
2
|
+
import { parse as Yu } from "@babel/parser";
|
|
3
3
|
import pu from "@babel/traverse";
|
|
4
4
|
import mu from "@babel/generator";
|
|
5
|
-
import { BlockModel as
|
|
5
|
+
import { BlockModel as ue } from "@vtj/core";
|
|
6
6
|
import { tsFormatter as xu } from "@vtj/coder";
|
|
7
|
-
import { NodeTypes as
|
|
8
|
-
import { upperFirstCamelCase as
|
|
9
|
-
import
|
|
10
|
-
import * as
|
|
11
|
-
import * as
|
|
7
|
+
import { NodeTypes as g } from "@vue/compiler-core";
|
|
8
|
+
import { upperFirstCamelCase as ee, unBase64 as te, uid as iu } from "@vtj/base";
|
|
9
|
+
import ae from "postcss";
|
|
10
|
+
import * as ie from "sass";
|
|
11
|
+
import * as V from "@babel/types";
|
|
12
12
|
/**!
|
|
13
13
|
* Copyright (c) 2026, VTJ.PRO All rights reserved.
|
|
14
14
|
* @name @vtj/parser
|
|
15
15
|
* @author CHC chenhuachun1549@dingtalk.com
|
|
16
|
-
* @version 0.
|
|
16
|
+
* @version 0.16.0
|
|
17
17
|
* @license <a href="https://vtj.pro/license.html">MIT License</a>
|
|
18
18
|
*/
|
|
19
|
-
const
|
|
20
|
-
function
|
|
21
|
-
const { descriptor: u } =
|
|
19
|
+
const v0 = "0.16.0";
|
|
20
|
+
function D(e) {
|
|
21
|
+
const { descriptor: u, errors: t } = ku(e), a = u.template?.content || "", i = (u.scriptSetup || u.script)?.content || "", s = u.styles.map((r) => r.content);
|
|
22
22
|
return {
|
|
23
|
-
template:
|
|
24
|
-
script:
|
|
25
|
-
styles:
|
|
23
|
+
template: a,
|
|
24
|
+
script: i,
|
|
25
|
+
styles: s,
|
|
26
|
+
errors: t
|
|
26
27
|
};
|
|
27
28
|
}
|
|
28
|
-
function
|
|
29
|
-
return
|
|
29
|
+
function W(e) {
|
|
30
|
+
return Yu(e, { sourceType: "module", plugins: ["typescript"] });
|
|
30
31
|
}
|
|
31
|
-
function
|
|
32
|
+
function Y(e, u) {
|
|
32
33
|
return (pu.default || pu)(e, u);
|
|
33
34
|
}
|
|
34
|
-
function
|
|
35
|
+
function O(e) {
|
|
35
36
|
try {
|
|
36
37
|
return (mu.default || mu)(e, {
|
|
37
38
|
comments: !1,
|
|
@@ -48,69 +49,278 @@ function M(e) {
|
|
|
48
49
|
function nu(e) {
|
|
49
50
|
return !!e && e.type === "JSExpression";
|
|
50
51
|
}
|
|
51
|
-
function
|
|
52
|
+
function se(e) {
|
|
52
53
|
return typeof e == "object" && !!e && e.type === "JSFunction";
|
|
53
54
|
}
|
|
54
55
|
function ou(e) {
|
|
55
|
-
return !!nu(e) || !!
|
|
56
|
+
return !!nu(e) || !!se(e);
|
|
56
57
|
}
|
|
57
|
-
function
|
|
58
|
+
function re(e) {
|
|
58
59
|
return !!e && !nu(e) && typeof e != "string";
|
|
59
60
|
}
|
|
60
|
-
function
|
|
61
|
+
function qu(e, u) {
|
|
61
62
|
try {
|
|
62
|
-
const t =
|
|
63
|
-
return
|
|
63
|
+
const t = W(e);
|
|
64
|
+
return Y(t, u), O(t) || "";
|
|
64
65
|
} catch {
|
|
65
66
|
return "";
|
|
66
67
|
}
|
|
67
68
|
}
|
|
68
|
-
function
|
|
69
|
-
const
|
|
70
|
-
|
|
69
|
+
function ce(e, u) {
|
|
70
|
+
const t = [];
|
|
71
|
+
try {
|
|
72
|
+
const { descriptor: a, errors: i } = ku(e);
|
|
73
|
+
if (i && i.length > 0 && i.forEach((r) => {
|
|
74
|
+
const n = r.message || String(r), o = r.loc;
|
|
75
|
+
o && o.start ? t.push(
|
|
76
|
+
`Vue SFC 错误: ${n} (位置: ${o.start.line}:${o.start.column})`
|
|
77
|
+
) : t.push(`Vue SFC 错误: ${n}`);
|
|
78
|
+
}), a.template)
|
|
79
|
+
try {
|
|
80
|
+
const r = Vu({
|
|
81
|
+
id: "validation",
|
|
82
|
+
filename: u,
|
|
83
|
+
source: a.template.content,
|
|
84
|
+
isProd: !1
|
|
85
|
+
});
|
|
86
|
+
r.errors && r.errors.length > 0 && r.errors.forEach((n) => {
|
|
87
|
+
const o = typeof n == "string" ? n : n.message, c = typeof n == "string" ? null : n.loc;
|
|
88
|
+
c && c.start ? t.push(
|
|
89
|
+
`模板编译错误: ${o} (位置: ${c.start.line}:${c.start.column})`
|
|
90
|
+
) : t.push(`模板编译错误: ${o}`);
|
|
91
|
+
});
|
|
92
|
+
} catch (r) {
|
|
93
|
+
t.push(`模板编译错误: ${r.message}`);
|
|
94
|
+
}
|
|
95
|
+
const s = (a.scriptSetup || a.script)?.content;
|
|
96
|
+
if (s)
|
|
97
|
+
try {
|
|
98
|
+
W(s);
|
|
99
|
+
} catch (r) {
|
|
100
|
+
t.push(`脚本语法错误: ${r.message}`);
|
|
101
|
+
}
|
|
102
|
+
} catch (a) {
|
|
103
|
+
t.push(`Vue SFC 解析错误: ${a.message}`);
|
|
104
|
+
}
|
|
105
|
+
return t.length > 0 ? t : null;
|
|
106
|
+
}
|
|
107
|
+
function w0(e) {
|
|
108
|
+
const u = D(e), t = W(u.script), a = {};
|
|
109
|
+
return u.styles && (a.css = u.styles[0] || ""), Y(t, {
|
|
71
110
|
CallExpression(i) {
|
|
72
|
-
const
|
|
73
|
-
if (
|
|
74
|
-
const
|
|
75
|
-
|
|
111
|
+
const s = i.node.callee?.name;
|
|
112
|
+
if (s) {
|
|
113
|
+
const r = O(i.node.arguments[0]);
|
|
114
|
+
r && (a[s] = {
|
|
76
115
|
type: "JSFunction",
|
|
77
|
-
value:
|
|
116
|
+
value: r
|
|
78
117
|
});
|
|
79
118
|
}
|
|
80
119
|
}
|
|
81
120
|
}), a;
|
|
82
121
|
}
|
|
83
|
-
function
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
122
|
+
function ne(e, u, t, a) {
|
|
123
|
+
if (a.match(/function\s*\(\s*$/))
|
|
124
|
+
return !0;
|
|
125
|
+
const s = e.slice(u + t.length);
|
|
126
|
+
if (s.trim().startsWith("=>"))
|
|
127
|
+
return !0;
|
|
128
|
+
const n = a.endsWith("(") || a.match(/\(\s*$/), o = a.endsWith(",") || a.match(/,\s*$/);
|
|
129
|
+
if (n || o) {
|
|
130
|
+
let f = -1, m = "";
|
|
131
|
+
if (n)
|
|
132
|
+
f = a.length - 1;
|
|
133
|
+
else if (o) {
|
|
134
|
+
let y = 0, b = !1, S = "";
|
|
135
|
+
for (let I = a.length - 1; I >= 0; I--) {
|
|
136
|
+
const x = a[I];
|
|
137
|
+
if (b && x === S)
|
|
138
|
+
b = !1, S = "";
|
|
139
|
+
else if (!b && (x === "'" || x === '"' || x === "`")) {
|
|
140
|
+
b = !0, S = x;
|
|
141
|
+
continue;
|
|
142
|
+
}
|
|
143
|
+
if (!b) {
|
|
144
|
+
if (x === ")")
|
|
145
|
+
y++;
|
|
146
|
+
else if (x === "(") {
|
|
147
|
+
if (y === 0) {
|
|
148
|
+
f = I;
|
|
149
|
+
break;
|
|
150
|
+
}
|
|
151
|
+
y--;
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
if (f >= 0) {
|
|
157
|
+
let y = f - 1;
|
|
158
|
+
for (; y >= 0 && /\s/.test(a.charAt(y)); )
|
|
159
|
+
y--;
|
|
160
|
+
if (y >= 0) {
|
|
161
|
+
let b = y;
|
|
162
|
+
for (; y >= 0 && /[a-zA-Z0-9_$]/.test(a.charAt(y)); )
|
|
163
|
+
y--;
|
|
164
|
+
if (m = a.slice(y + 1, b + 1), m && m !== "function" && m !== "class") {
|
|
165
|
+
const S = a.slice(0, y + 1);
|
|
166
|
+
if (!S.endsWith("=>") && !S.match(/[a-zA-Z0-9_$]\s*=>\s*$/))
|
|
167
|
+
return !1;
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
let p = 0, v = !1, A = "";
|
|
172
|
+
for (let y = 0; y < s.length; y++) {
|
|
173
|
+
const b = s[y];
|
|
174
|
+
if (!v && (b === "'" || b === '"' || b === "`") ? (v = !0, A = b) : v && b === A && (v = !1, A = ""), !v)
|
|
175
|
+
if (b === "(")
|
|
176
|
+
p++;
|
|
177
|
+
else if (b === ")") {
|
|
178
|
+
if (p === 0)
|
|
179
|
+
return !0;
|
|
180
|
+
p--;
|
|
181
|
+
} else {
|
|
182
|
+
if (b === "," && p === 0)
|
|
183
|
+
return !0;
|
|
184
|
+
if (b === "=" && y + 1 < s.length && s[y + 1] === ">")
|
|
185
|
+
return !0;
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
}
|
|
189
|
+
const c = u > 0 ? e.charAt(u - 1) : "";
|
|
190
|
+
if (!/[a-zA-Z0-9_$@-]/.test(c) && s.includes("=>")) {
|
|
191
|
+
const f = s.indexOf("=>"), m = s.slice(0, f).trim();
|
|
192
|
+
if (m === "" || m === ",")
|
|
193
|
+
return !0;
|
|
194
|
+
}
|
|
195
|
+
return !1;
|
|
196
|
+
}
|
|
197
|
+
function M(e, u, t) {
|
|
198
|
+
if (!e.includes(u)) return e;
|
|
199
|
+
const a = [];
|
|
200
|
+
let i = 0;
|
|
201
|
+
const s = {
|
|
202
|
+
inString: !1,
|
|
203
|
+
quoteChar: "",
|
|
204
|
+
inTemplateExpr: 0,
|
|
205
|
+
inRegex: !1,
|
|
206
|
+
// 是否在正则表达式字面量中
|
|
207
|
+
regexDepth: 0
|
|
208
|
+
// 正则表达式括号深度(用于处理字符类)
|
|
209
|
+
}, r = /[a-zA-Z0-9_$@-]/;
|
|
210
|
+
function n(c) {
|
|
211
|
+
for (let l = 0; l < c.length; l++) {
|
|
212
|
+
const f = c[l];
|
|
213
|
+
if (!s.inString && !s.inRegex) {
|
|
214
|
+
if (f === "'" || f === '"' || f === "`")
|
|
215
|
+
s.inString = !0, s.quoteChar = f;
|
|
216
|
+
else if (f === "/") {
|
|
217
|
+
let m = l - 1;
|
|
218
|
+
for (; m >= 0 && /\s/.test(c[m]); )
|
|
219
|
+
m--;
|
|
220
|
+
if (m < 0)
|
|
221
|
+
s.inRegex = !0, s.regexDepth = 0;
|
|
222
|
+
else {
|
|
223
|
+
const p = c[m], v = /[=+*%!&|?:;,()[\]{}<>]/.test(p), A = /[a-zA-Z0-9_$)]/.test(p);
|
|
224
|
+
if (p === "-") {
|
|
225
|
+
let y = m - 1;
|
|
226
|
+
for (; y >= 0 && /\s/.test(c[y]); )
|
|
227
|
+
y--;
|
|
228
|
+
y >= 0 && /[a-zA-Z0-9_$)]/.test(c[y]) ? s.inRegex = !1 : (s.inRegex = !0, s.regexDepth = 0);
|
|
229
|
+
} else if (p === "=" && m > 0) {
|
|
230
|
+
const y = c[m - 1];
|
|
231
|
+
/[+\-*/%]/.test(y) ? s.inRegex = !1 : (s.inRegex = !0, s.regexDepth = 0);
|
|
232
|
+
} else if (p === "/" || p === "*")
|
|
233
|
+
s.inRegex = !1;
|
|
234
|
+
else if (A && !v) {
|
|
235
|
+
let y = m;
|
|
236
|
+
for (; y > 0 && /[a-zA-Z0-9_$]/.test(c[y - 1]); )
|
|
237
|
+
y--;
|
|
238
|
+
const b = c.slice(y, m + 1);
|
|
239
|
+
[
|
|
240
|
+
"if",
|
|
241
|
+
"else",
|
|
242
|
+
"for",
|
|
243
|
+
"while",
|
|
244
|
+
"do",
|
|
245
|
+
"switch",
|
|
246
|
+
"case",
|
|
247
|
+
"return",
|
|
248
|
+
"typeof",
|
|
249
|
+
"instanceof",
|
|
250
|
+
"void",
|
|
251
|
+
"delete",
|
|
252
|
+
"new",
|
|
253
|
+
"in",
|
|
254
|
+
"of",
|
|
255
|
+
"await",
|
|
256
|
+
"yield",
|
|
257
|
+
"throw",
|
|
258
|
+
"try",
|
|
259
|
+
"catch",
|
|
260
|
+
"finally"
|
|
261
|
+
].includes(b) ? (s.inRegex = !0, s.regexDepth = 0) : s.inRegex = !1;
|
|
262
|
+
} else
|
|
263
|
+
s.inRegex = !0, s.regexDepth = 0;
|
|
264
|
+
}
|
|
265
|
+
}
|
|
266
|
+
} else s.inString ? f === s.quoteChar ? s.quoteChar === "`" && s.inTemplateExpr > 0 || (s.inString = !1, s.quoteChar = "", s.inTemplateExpr = 0) : s.quoteChar === "`" && (f === "$" && l + 1 < c.length && c[l + 1] === "{" ? (s.inTemplateExpr++, l++) : f === "}" && s.inTemplateExpr > 0 && s.inTemplateExpr--) : s.inRegex && (f === "[" ? s.regexDepth++ : f === "]" && s.regexDepth > 0 ? s.regexDepth-- : f === "/" && s.regexDepth === 0 && (l === 0 || c[l - 1] !== "\\") && (s.inRegex = !1, s.regexDepth = 0));
|
|
267
|
+
}
|
|
268
|
+
}
|
|
269
|
+
function o(c) {
|
|
270
|
+
if (s.inRegex || s.inString && s.inTemplateExpr === 0 && !e.slice(0, c).match(/new\s+RegExp\s*\([^)]*$/))
|
|
271
|
+
return !1;
|
|
272
|
+
if (c >= 3 && e.slice(c - 3, c) === "..." && (c >= 4 ? e.charAt(c - 4) : "") !== ".")
|
|
273
|
+
return !0;
|
|
274
|
+
if (c > 0 && e.charAt(c - 1) === ".") {
|
|
275
|
+
if (c >= 2 && e.slice(c - 2, c) === "?.") {
|
|
276
|
+
const S = e.slice(c + u.length).charAt(0);
|
|
277
|
+
return S === "[" || S === "(";
|
|
278
|
+
}
|
|
279
|
+
return !1;
|
|
280
|
+
}
|
|
281
|
+
const l = c > 0 ? e.charAt(c - 1) : "", f = c + u.length < e.length ? e.charAt(c + u.length) : "";
|
|
282
|
+
if (r.test(l) || r.test(f))
|
|
283
|
+
return !1;
|
|
284
|
+
const m = e.slice(0, c);
|
|
285
|
+
return m.match(/(const|let|var|function)\s+$/) ? !1 : m.match(/\{\s*$/) && !m.endsWith("${") ? c > 0 && e.charAt(c - 1) === "[" : ne(
|
|
286
|
+
e,
|
|
287
|
+
c,
|
|
288
|
+
u,
|
|
289
|
+
m
|
|
290
|
+
) ? !1 : (m.endsWith("${"), !0);
|
|
291
|
+
}
|
|
292
|
+
for (; i < e.length; ) {
|
|
293
|
+
const c = e.indexOf(u, i);
|
|
294
|
+
if (c === -1) break;
|
|
295
|
+
const l = e.slice(i, c);
|
|
296
|
+
a.push(l), n(l), i = c, o(i) ? a.push(t) : a.push(u), i += u.length;
|
|
297
|
+
}
|
|
298
|
+
return i < e.length && a.push(e.slice(i)), a.join("");
|
|
89
299
|
}
|
|
90
300
|
function gu(e, u, t) {
|
|
91
301
|
const {
|
|
92
302
|
context: a = {},
|
|
93
303
|
computed: i = [],
|
|
94
|
-
libs:
|
|
95
|
-
members:
|
|
304
|
+
libs: s = {},
|
|
305
|
+
members: r = [],
|
|
96
306
|
platform: n
|
|
97
|
-
} = t || {},
|
|
98
|
-
if (
|
|
99
|
-
for (const
|
|
100
|
-
e =
|
|
101
|
-
for (const
|
|
102
|
-
e =
|
|
103
|
-
for (const [
|
|
104
|
-
e =
|
|
105
|
-
for (const
|
|
106
|
-
e =
|
|
307
|
+
} = t || {}, o = Array.from(a[u || ""] || /* @__PURE__ */ new Set());
|
|
308
|
+
if (o)
|
|
309
|
+
for (const c of o)
|
|
310
|
+
e = M(e, c, `this.context.${c}`);
|
|
311
|
+
for (const c of i)
|
|
312
|
+
e = M(e, c, `this.${c}.value`), e = M(e, `this.${c}`, `this.${c}.value`), e = M(e, `this.${c}.value.value`, `this.${c}.value`);
|
|
313
|
+
for (const [c, l] of Object.entries(s))
|
|
314
|
+
e = M(e, c, `this.$libs.${l}.${c}`), e = M(e, `this.${c}`, `this.$libs.${l}.${c}`);
|
|
315
|
+
for (const c of r)
|
|
316
|
+
e = M(e, c, `this.${c}`);
|
|
107
317
|
if (n === "uniapp") {
|
|
108
|
-
const
|
|
109
|
-
e = e.replace(
|
|
318
|
+
const c = /\suni\./g;
|
|
319
|
+
e = e.replace(c, "this.$libs.UniH5.uni.");
|
|
110
320
|
}
|
|
111
321
|
return e = e.replace(/_ctx\./g, "this."), e = e.replace(/this\.this\./g, "this."), e;
|
|
112
322
|
}
|
|
113
|
-
function
|
|
323
|
+
function q(e) {
|
|
114
324
|
return {
|
|
115
325
|
type: "JSExpression",
|
|
116
326
|
value: /^\{[\w\W]*\}$/.test(e) ? `(${e})` : e
|
|
@@ -122,7 +332,7 @@ function du(e) {
|
|
|
122
332
|
value: e
|
|
123
333
|
};
|
|
124
334
|
}
|
|
125
|
-
const
|
|
335
|
+
const oe = [
|
|
126
336
|
"beforeCreate",
|
|
127
337
|
"created",
|
|
128
338
|
"beforeMount",
|
|
@@ -136,46 +346,46 @@ const ie = [
|
|
|
136
346
|
"renderTriggered",
|
|
137
347
|
"activated",
|
|
138
348
|
"deactivated"
|
|
139
|
-
],
|
|
349
|
+
], de = "html,body,base,head,link,meta,style,title,address,article,aside,footer,header,hgroup,h1,h2,h3,h4,h5,h6,nav,section,div,dd,dl,dt,figcaption,figure,picture,hr,img,li,main,ol,p,pre,ul,a,b,abbr,bdi,bdo,br,cite,code,data,dfn,em,i,kbd,mark,q,rp,rt,ruby,s,samp,small,span,strong,sub,sup,time,u,var,wbr,area,audio,map,track,video,embed,object,param,source,canvas,script,noscript,del,ins,caption,col,colgroup,table,thead,tbody,td,th,tr,button,datalist,fieldset,form,input,label,legend,meter,optgroup,option,output,progress,select,textarea,details,dialog,menu,summary,template,blockquote,iframe,tfoot,svg,path,circle,rect,polygon".split(
|
|
140
350
|
","
|
|
141
|
-
),
|
|
351
|
+
), fe = "component,slot,template".split(","), le = "view,swiper,progress,icon,text,button,checkbox,editor,form,input,label,picker,radio,slider,switch,textarea,audio,camera,image,video,map,canvas".split(
|
|
142
352
|
","
|
|
143
353
|
);
|
|
144
|
-
function
|
|
145
|
-
return u === "uniapp" &&
|
|
354
|
+
function be(e, u = "web") {
|
|
355
|
+
return u === "uniapp" && le.includes(e);
|
|
146
356
|
}
|
|
147
|
-
function
|
|
148
|
-
return (
|
|
357
|
+
function Ru(e, u = "web") {
|
|
358
|
+
return (de.includes(e) || fe.includes(e)) && !be(e, u) ? e : ee(e);
|
|
149
359
|
}
|
|
150
|
-
function
|
|
360
|
+
function ju(e) {
|
|
151
361
|
return e.replace(/\s+/g, " ").split(";").reduce((t, a) => {
|
|
152
|
-
const [i,
|
|
153
|
-
return i &&
|
|
362
|
+
const [i, s] = a.split(":").map((r) => r.trim());
|
|
363
|
+
return i && s && (t[i] = s), t;
|
|
154
364
|
}, {});
|
|
155
365
|
}
|
|
156
|
-
function
|
|
366
|
+
function he(e, u, t) {
|
|
157
367
|
if (t === "ObjectExpression")
|
|
158
368
|
return `(Object.assign({${e.split(" ").map((i) => `'${i}': true`).join(",")}}, ${u}))`;
|
|
159
369
|
if (t === "ArrayExpression")
|
|
160
370
|
return `([${e.split(" ").map((i) => `'${i}'`).join(",")}].concat(${u}))`;
|
|
161
371
|
}
|
|
162
|
-
function
|
|
372
|
+
function pe(e = "") {
|
|
163
373
|
const t = e.trim().match(/DataSource:\s*([^\n=]+={0,2})/)?.[1] || "";
|
|
164
374
|
try {
|
|
165
|
-
return t ? JSON.parse(
|
|
375
|
+
return t ? JSON.parse(te(t)) : null;
|
|
166
376
|
} catch (a) {
|
|
167
377
|
return console.warn("extractDataSource fail", a), null;
|
|
168
378
|
}
|
|
169
379
|
}
|
|
170
|
-
const
|
|
380
|
+
const me = /* @__PURE__ */ new Uint16Array(
|
|
171
381
|
// prettier-ignore
|
|
172
382
|
/* @__PURE__ */ 'ᵁ<Õıʊҝջאٵ۞ޢߖࠏઑඡ༉༦ረዡᐕᒝᓃᓟᔥ\0\0\0\0\0\0ᕫᛍᦍᰒᷝ↰⊍⏀⏻⑂⠤⤒ⴈ⹈⿎〖㊺㘹㞬㣾㨨㩱㫠㬮ࠀEMabcfglmnoprstu\\bfms¦³¹ÈÏlig耻Æ䃆P耻&䀦cute耻Á䃁reve;䄂Āiyx}rc耻Â䃂;䐐r;쀀𝔄rave耻À䃀pha;䎑acr;䄀d;橓Āgp¡on;䄄f;쀀𝔸plyFunction;恡ing耻Å䃅Ācs¾Ãr;쀀𝒜ign;扔ilde耻Ã䃃ml耻Ä䃄ЀaceforsuåûþėĜĢħĪĀcrêòkslash;或Ŷöø;櫧ed;挆y;䐑ƀcrtąċĔause;戵noullis;愬a;䎒r;쀀𝔅pf;쀀𝔹eve;䋘còēmpeq;扎܀HOacdefhilorsuōőŖƀƞƢƵƷƺǜȕɳɸɾcy;䐧PY耻©䂩ƀcpyŝŢźute;䄆Ā;iŧŨ拒talDifferentialD;慅leys;愭ȀaeioƉƎƔƘron;䄌dil耻Ç䃇rc;䄈nint;戰ot;䄊ĀdnƧƭilla;䂸terDot;䂷òſi;䎧rcleȀDMPTLJNjǑǖot;抙inus;抖lus;投imes;抗oĀcsǢǸkwiseContourIntegral;戲eCurlyĀDQȃȏoubleQuote;思uote;怙ȀlnpuȞȨɇɕonĀ;eȥȦ户;橴ƀgitȯȶȺruent;扡nt;戯ourIntegral;戮ĀfrɌɎ;愂oduct;成nterClockwiseContourIntegral;戳oss;樯cr;쀀𝒞pĀ;Cʄʅ拓ap;才րDJSZacefiosʠʬʰʴʸˋ˗ˡ˦̳ҍĀ;oŹʥtrahd;椑cy;䐂cy;䐅cy;䐏ƀgrsʿ˄ˇger;怡r;憡hv;櫤Āayː˕ron;䄎;䐔lĀ;t˝˞戇a;䎔r;쀀𝔇Āaf˫̧Ācm˰̢riticalȀADGT̖̜̀̆cute;䂴oŴ̋̍;䋙bleAcute;䋝rave;䁠ilde;䋜ond;拄ferentialD;慆Ѱ̽\0\0\0͔͂\0Ѕf;쀀𝔻ƀ;DE͈͉͍䂨ot;惜qual;扐blèCDLRUVͣͲϏϢϸontourIntegraìȹoɴ\0\0ͻ»͉nArrow;懓Āeo·ΤftƀARTΐΖΡrrow;懐ightArrow;懔eåˊngĀLRΫτeftĀARγιrrow;柸ightArrow;柺ightArrow;柹ightĀATϘϞrrow;懒ee;抨pɁϩ\0\0ϯrrow;懑ownArrow;懕erticalBar;戥ǹABLRTaВЪаўѿͼrrowƀ;BUНОТ憓ar;椓pArrow;懵reve;䌑eft˒к\0ц\0ѐightVector;楐eeVector;楞ectorĀ;Bљњ憽ar;楖ightǔѧ\0ѱeeVector;楟ectorĀ;BѺѻ懁ar;楗eeĀ;A҆҇护rrow;憧ĀctҒҗr;쀀𝒟rok;䄐ࠀNTacdfglmopqstuxҽӀӄӋӞӢӧӮӵԡԯԶՒ՝ՠեG;䅊H耻Ð䃐cute耻É䃉ƀaiyӒӗӜron;䄚rc耻Ê䃊;䐭ot;䄖r;쀀𝔈rave耻È䃈ement;戈ĀapӺӾcr;䄒tyɓԆ\0\0ԒmallSquare;旻erySmallSquare;斫ĀgpԦԪon;䄘f;쀀𝔼silon;䎕uĀaiԼՉlĀ;TՂՃ橵ilde;扂librium;懌Āci՚r;愰m;橳a;䎗ml耻Ë䃋Āipժկsts;戃onentialE;慇ʀcfiosօֈ֍ֲy;䐤r;쀀𝔉lledɓ֗\0\0֣mallSquare;旼erySmallSquare;斪Ͱֺ\0ֿ\0\0ׄf;쀀𝔽All;戀riertrf;愱còJTabcdfgorstרׯؒؖ؛؝أ٬ٲcy;䐃耻>䀾mmaĀ;d䎓;䏜reve;䄞ƀeiy؇،ؐdil;䄢rc;䄜;䐓ot;䄠r;쀀𝔊;拙pf;쀀𝔾eater̀EFGLSTصلَٖٛ٦qualĀ;Lؾؿ扥ess;招ullEqual;执reater;檢ess;扷lantEqual;橾ilde;扳cr;쀀𝒢;扫ЀAacfiosuڅڋږڛڞڪھۊRDcy;䐪Āctڐڔek;䋇;䁞irc;䄤r;愌lbertSpace;愋ǰگ\0ڲf;愍izontalLine;攀Āctۃۅòکrok;䄦mpńېۘownHumðįqual;扏܀EJOacdfgmnostuۺ۾܃܇ܚܞܡܨ݄ݸދޏޕcy;䐕lig;䄲cy;䐁cute耻Í䃍Āiyܓܘrc耻Î䃎;䐘ot;䄰r;愑rave耻Ì䃌ƀ;apܠܯܿĀcgܴܷr;䄪inaryI;慈lieóϝǴ݉\0ݢĀ;eݍݎ戬Āgrݓݘral;戫section;拂isibleĀCTݬݲomma;恣imes;恢ƀgptݿރވon;䄮f;쀀𝕀a;䎙cr;愐ilde;䄨ǫޚ\0ޞcy;䐆l耻Ï䃏ʀcfosuެ߂ߐĀiyޱrc;䄴;䐙r;쀀𝔍pf;쀀𝕁ǣ߇\0ߌr;쀀𝒥rcy;䐈kcy;䐄HJacfosߤߨ߽߬߱ࠂࠈcy;䐥cy;䐌ppa;䎚Āey߶dil;䄶;䐚r;쀀𝔎pf;쀀𝕂cr;쀀𝒦րJTaceflmostࠥࠩࠬࡐࡣসে্ੇcy;䐉耻<䀼ʀcmnpr࠷࠼ࡁࡄࡍute;䄹bda;䎛g;柪lacetrf;愒r;憞ƀaeyࡗࡡron;䄽dil;䄻;䐛Āfsࡨ॰tԀACDFRTUVarࡾࢩࢱࣦ࣠ࣼयज़ΐ४ĀnrࢃgleBracket;柨rowƀ;BR࢙࢚࢞憐ar;懤ightArrow;懆eiling;挈oǵࢷ\0ࣃbleBracket;柦nǔࣈ\0࣒eeVector;楡ectorĀ;Bࣛࣜ懃ar;楙loor;挊ightĀAV࣯ࣵrrow;憔ector;楎Āerँगeƀ;AVउऊऐ抣rrow;憤ector;楚iangleƀ;BEतथऩ抲ar;槏qual;抴pƀDTVषूौownVector;楑eeVector;楠ectorĀ;Bॖॗ憿ar;楘ectorĀ;B॥०憼ar;楒ightáΜs̀EFGLSTॾঋকঝঢভqualGreater;拚ullEqual;扦reater;扶ess;檡lantEqual;橽ilde;扲r;쀀𝔏Ā;eঽা拘ftarrow;懚idot;䄿ƀnpwਖਛgȀLRlr৷ਂਐeftĀAR০৬rrow;柵ightArrow;柷ightArrow;柶eftĀarγਊightáοightáϊf;쀀𝕃erĀLRਢਬeftArrow;憙ightArrow;憘ƀchtਾੀੂòࡌ;憰rok;䅁;扪Ѐacefiosuਗ਼અઋp;椅y;䐜Ādl੯iumSpace;恟lintrf;愳r;쀀𝔐nusPlus;戓pf;쀀𝕄cò੶;䎜ҀJacefostuણધભીଔଙඑඞcy;䐊cute;䅃ƀaeyહાron;䅇dil;䅅;䐝ƀgswે૰ativeƀMTV૨ediumSpace;怋hiĀcn૦ëeryThiîtedĀGLଆreaterGreateòٳessLesóੈLine;䀊r;쀀𝔑ȀBnptଢନଷreak;恠BreakingSpace;䂠f;愕ڀ;CDEGHLNPRSTV୕ୖ୪௫ఄ಄ದൡඅ櫬Āoungruent;扢pCap;扭oubleVerticalBar;戦ƀlqxஃஊement;戉ualĀ;Tஒஓ扠ilde;쀀≂̸ists;戄reater;EFGLSTஶஷ扯qual;扱ullEqual;쀀≧̸reater;쀀≫̸ess;批lantEqual;쀀⩾̸ilde;扵umpń௲ownHump;쀀≎̸qual;쀀≏̸eĀfsఊధtTriangleƀ;BEచఛడ拪ar;쀀⧏̸qual;括s̀;EGLSTవశ఼ౄోౘ扮qual;扰reater;扸ess;쀀≪̸lantEqual;쀀⩽̸ilde;扴estedĀGL౨౹reaterGreater;쀀⪢̸essLess;쀀⪡̸recedesƀ;ESಒಓಛ技qual;쀀⪯̸lantEqual;拠ĀeiಫಹverseElement;戌ghtTriangleƀ;BEೋೌ拫ar;쀀⧐̸qual;拭ĀquೝഌuareSuĀbp೨setĀ;Eೳ쀀⊏̸qual;拢ersetĀ;Eഃആ쀀⊐̸qual;拣ƀbcpഓതൎsetĀ;Eഛഞ쀀⊂⃒qual;抈ceedsȀ;ESTലള഻െ抁qual;쀀⪰̸lantEqual;拡ilde;쀀≿̸ersetĀ;E൘൛쀀⊃⃒qual;抉ildeȀ;EFT൮൯൵ൿ扁qual;扄ullEqual;扇ilde;扉erticalBar;戤cr;쀀𝒩ilde耻Ñ䃑;䎝܀Eacdfgmoprstuvලෂෛ෧ขภยา฿ไlig;䅒cute耻Ó䃓Āiyීrc耻Ô䃔;䐞blac;䅐r;쀀𝔒rave耻Ò䃒ƀaei෮ෲcr;䅌ga;䎩cron;䎟pf;쀀𝕆enCurlyĀDQฎบoubleQuote;怜uote;怘;橔Āclวฬr;쀀𝒪ash耻Ø䃘iŬืde耻Õ䃕es;樷ml耻Ö䃖erĀBP๋Āar๐๓r;怾acĀek๚;揞et;掴arenthesis;揜ҀacfhilorsງຊຏຒດຝະrtialD;戂y;䐟r;쀀𝔓i;䎦;䎠usMinus;䂱Āipຢອncareplanåڝf;愙Ȁ;eio຺ູ檻cedesȀ;EST່້扺qual;檯lantEqual;扼ilde;找me;怳Ādpuct;戏ortionĀ;aȥl;戝Āci༁༆r;쀀𝒫;䎨ȀUfos༑༖༛༟OT耻"䀢r;쀀𝔔pf;愚cr;쀀𝒬BEacefhiorsu༾གྷཇའཱིྦྷྪྭ႖ႩႴႾarr;椐G耻®䂮ƀcnrཎནབute;䅔g;柫rĀ;tཛྷཝ憠l;椖ƀaeyཧཬཱron;䅘dil;䅖;䐠Ā;vླྀཹ愜erseĀEUྂྙĀlq྇ྎement;戋uilibrium;懋pEquilibrium;楯r»ཹo;䎡ghtЀACDFTUVa࿁ဢဨၛႇϘĀnr࿆࿒gleBracket;柩rowƀ;BL憒ar;懥eftArrow;懄eiling;按oǵ\0စbleBracket;柧nǔည\0နeeVector;楝ectorĀ;Bဝသ懂ar;楕loor;挋Āerိ၃eƀ;AVဵံြ抢rrow;憦ector;楛iangleƀ;BEၐၑၕ抳ar;槐qual;抵pƀDTVၣၮၸownVector;楏eeVector;楜ectorĀ;Bႂႃ憾ar;楔ectorĀ;B႑႒懀ar;楓Āpuႛ႞f;愝ndImplies;楰ightarrow;懛ĀchႹႼr;愛;憱leDelayed;槴ڀHOacfhimoqstuფჱჷჽᄙᄞᅑᅖᅡᅧᆵᆻᆿĀCcჩხHcy;䐩y;䐨FTcy;䐬cute;䅚ʀ;aeiyᄈᄉᄎᄓᄗ檼ron;䅠dil;䅞rc;䅜;䐡r;쀀𝔖ortȀDLRUᄪᄴᄾᅉownArrow»ОeftArrow»࢚ightArrow»pArrow;憑gma;䎣allCircle;战pf;쀀𝕊ɲᅭ\0\0ᅰt;戚areȀ;ISUᅻᅼᆉᆯ斡ntersection;抓uĀbpᆏᆞsetĀ;Eᆗᆘ抏qual;抑ersetĀ;Eᆨᆩ抐qual;抒nion;抔cr;쀀𝒮ar;拆ȀbcmpᇈᇛሉላĀ;sᇍᇎ拐etĀ;Eᇍᇕqual;抆ĀchᇠህeedsȀ;ESTᇭᇮᇴᇿ扻qual;檰lantEqual;扽ilde;承Tháྌ;我ƀ;esሒሓሣ拑rsetĀ;Eሜም抃qual;抇et»ሓրHRSacfhiorsሾቄቕቱቶኟዂወዑORN耻Þ䃞ADE;愢ĀHcቒcy;䐋y;䐦Ābuቚቜ;䀉;䎤ƀaeyብቪቯron;䅤dil;䅢;䐢r;쀀𝔗ĀeiቻDzኀ\0ኇefore;戴a;䎘ĀcnኘkSpace;쀀 Space;怉ldeȀ;EFTካኬኲኼ戼qual;扃ullEqual;扅ilde;扈pf;쀀𝕋ipleDot;惛Āctዖዛr;쀀𝒯rok;䅦ૡዷጎጚጦ\0ጬጱ\0\0\0\0\0ጸጽ፷ᎅ\0ᐄᐊᐐĀcrዻጁute耻Ú䃚rĀ;oጇገ憟cir;楉rǣጓ\0y;䐎ve;䅬Āiyጞጣrc耻Û䃛;䐣blac;䅰r;쀀𝔘rave耻Ù䃙acr;䅪Ādiፁ፩erĀBPፈ፝Āarፍፐr;䁟acĀekፗፙ;揟et;掵arenthesis;揝onĀ;P፰፱拃lus;抎Āgp፻on;䅲f;쀀𝕌ЀADETadps᎕ᎮᎸᏄϨᏒᏗᏳrrowƀ;BDᅐᎠᎤar;椒ownArrow;懅ownArrow;憕quilibrium;楮eeĀ;AᏋᏌ报rrow;憥ownáϳerĀLRᏞᏨeftArrow;憖ightArrow;憗iĀ;lᏹᏺ䏒on;䎥ing;䅮cr;쀀𝒰ilde;䅨ml耻Ü䃜ҀDbcdefosvᐧᐬᐰᐳᐾᒅᒊᒐᒖash;披ar;櫫y;䐒ashĀ;lᐻᐼ抩;櫦Āerᑃᑅ;拁ƀbtyᑌᑐᑺar;怖Ā;iᑏᑕcalȀBLSTᑡᑥᑪᑴar;戣ine;䁼eparator;杘ilde;所ThinSpace;怊r;쀀𝔙pf;쀀𝕍cr;쀀𝒱dash;抪ʀcefosᒧᒬᒱᒶᒼirc;䅴dge;拀r;쀀𝔚pf;쀀𝕎cr;쀀𝒲Ȁfiosᓋᓐᓒᓘr;쀀𝔛;䎞pf;쀀𝕏cr;쀀𝒳ҀAIUacfosuᓱᓵᓹᓽᔄᔏᔔᔚᔠcy;䐯cy;䐇cy;䐮cute耻Ý䃝Āiyᔉᔍrc;䅶;䐫r;쀀𝔜pf;쀀𝕐cr;쀀𝒴ml;䅸ЀHacdefosᔵᔹᔿᕋᕏᕝᕠᕤcy;䐖cute;䅹Āayᕄᕉron;䅽;䐗ot;䅻Dzᕔ\0ᕛoWidtèa;䎖r;愨pf;愤cr;쀀𝒵ᖃᖊᖐ\0ᖰᖶᖿ\0\0\0\0ᗆᗛᗫᙟ᙭\0ᚕ᚛ᚲᚹ\0ᚾcute耻á䃡reve;䄃̀;Ediuyᖜᖝᖡᖣᖨᖭ戾;쀀∾̳;房rc耻â䃢te肻´̆;䐰lig耻æ䃦Ā;r²ᖺ;쀀𝔞rave耻à䃠ĀepᗊᗖĀfpᗏᗔsym;愵èᗓha;䎱ĀapᗟcĀclᗤᗧr;䄁g;樿ɤᗰ\0\0ᘊʀ;adsvᗺᗻᗿᘁᘇ戧nd;橕;橜lope;橘;橚;elmrszᘘᘙᘛᘞᘿᙏᙙ戠;榤e»ᘙsdĀ;aᘥᘦ戡ѡᘰᘲᘴᘶᘸᘺᘼᘾ;榨;榩;榪;榫;榬;榭;榮;榯tĀ;vᙅᙆ戟bĀ;dᙌᙍ抾;榝Āptᙔᙗh;戢»¹arr;捼Āgpᙣᙧon;䄅f;쀀𝕒;Eaeiopᙻᙽᚂᚄᚇᚊ;橰cir;橯;扊d;手s;䀧roxĀ;eᚒñᚃing耻å䃥ƀctyᚡᚦᚨr;쀀𝒶;䀪mpĀ;eᚯñʈilde耻ã䃣ml耻ä䃤Āciᛂᛈoninôɲnt;樑ࠀNabcdefiklnoprsu᛭ᛱᜰᝃᝈ០៦ᠹᡐᜍ᥈ᥰot;櫭ĀcrᛶkȀcepsᜀᜅᜍᜓong;扌psilon;䏶rime;怵imĀ;e戽q;拍Ŷᜢᜦee;抽edĀ;gᜬᜭ挅e»ᜭrkĀ;tbrk;掶Āoyᜁᝁ;䐱quo;怞ʀcmprtᝓᝡᝤᝨausĀ;eĊĉptyv;榰séᜌnoõēƀahwᝯᝳ;䎲;愶een;扬r;쀀𝔟gcostuvwឍឝឳេ៕៛ƀaiuបពរðݠrc;旯p»፱ƀdptឤឨឭot;樀lus;樁imes;樂ɱឹ\0\0ើcup;樆ar;昅riangleĀdu៍្own;施p;斳plus;樄eåᑄåᒭarow;植ƀakoᠦᠵĀcn៲ᠣkƀlst֫᠂ozenge;槫riangleȀ;dlr᠒᠓᠘斴own;斾eft;旂ight;斸k;搣Ʊᠫ\0ᠳƲᠯ\0ᠱ;斒;斑4;斓ck;斈ĀeoᠾᡍĀ;qᡃᡆ쀀=⃥uiv;쀀≡⃥t;挐Ȁptwxᡙᡞᡧᡬf;쀀𝕓Ā;tᏋᡣom»Ꮜtie;拈DHUVbdhmptuvᢅᢖᢪᢻᣗᣛᣬᤅᤊᤐᤡȀLRlrᢎᢐᢒᢔ;敗;敔;敖;敓ʀ;DUduᢡᢢᢤᢦᢨ敐;敦;敩;敤;敧ȀLRlrᢳᢵᢷᢹ;敝;敚;敜;教;HLRhlrᣊᣋᣍᣏᣑᣓᣕ救;敬;散;敠;敫;敢;敟ox;槉ȀLRlrᣤᣦᣨᣪ;敕;敒;攐;攌ʀ;DUduڽ;敥;敨;攬;攴inus;抟lus;択imes;抠ȀLRlrᤙᤛᤝ;敛;敘;攘;攔;HLRhlrᤰᤱᤳᤵᤷ᤻᤹攂;敪;敡;敞;攼;攤;攜Āevģbar耻¦䂦Ȁceioᥑᥖᥚᥠr;쀀𝒷mi;恏mĀ;elƀ;bhᥨᥩᥫ䁜;槅sub;柈ŬᥴlĀ;e怢t»pƀ;Eeįᦅᦇ;檮Ā;qۜۛೡᦧ\0᧨ᨑᨕᨲ\0ᨷᩐ\0\0᪴\0\0᫁\0\0ᬡᬮ᭒\0᯽\0ᰌƀcprᦲute;䄇̀;abcdsᦿᧀᧄ᧕᧙戩nd;橄rcup;橉Āau᧒p;橋p;橇ot;橀;쀀∩︀Āeo᧢᧥t;恁îړȀaeiu᧰᧻ᨁᨅǰ᧵\0᧸s;橍on;䄍dil耻ç䃧rc;䄉psĀ;sᨌᨍ橌m;橐ot;䄋ƀdmnᨛᨠᨦil肻¸ƭptyv;榲t脀¢;eᨭᨮ䂢räƲr;쀀𝔠ƀceiᨽᩀᩍy;䑇ckĀ;mᩇᩈ朓ark»ᩈ;䏇r;Ecefms᩠ᩢᩫ᪤᪪旋;槃ƀ;elᩩᩪᩭ䋆q;扗eɡᩴ\0\0᪈rrowĀlr᩼᪁eft;憺ight;憻ʀRSacd᪒᪔᪖»ཇ;擈st;抛irc;抚ash;抝nint;樐id;櫯cir;槂ubsĀ;u᪻᪼晣it»᪼ˬ᫇\0ᬊonĀ;eᫍᫎ䀺Ā;qÇÆɭ\0\0aĀ;t䀬;䁀ƀ;fl戁îᅠeĀmxent»eóɍǧ\0ᬇĀ;dኻᬂot;橭nôɆƀfryᬐᬔᬗ;쀀𝕔oäɔ脀©;sŕᬝr;愗Āaoᬥᬩrr;憵ss;朗Ācuᬲᬷr;쀀𝒸Ābpᬼ᭄Ā;eᭁᭂ櫏;櫑Ā;eᭉᭊ櫐;櫒dot;拯delprvw᭠᭬᭷ᮂᮬᯔarrĀlr᭨᭪;椸;椵ɰ᭲\0\0᭵r;拞c;拟arrĀ;pᮀ憶;椽̀;bcdosᮏᮐᮖᮡᮥᮨ截rcap;橈Āauᮛᮞp;橆p;橊ot;抍r;橅;쀀∪︀Ȁalrv᮵ᮿᯞᯣrrĀ;mᮼᮽ憷;椼yƀevwᯇᯔᯘqɰᯎ\0\0ᯒreã᭳uã᭵ee;拎edge;拏en耻¤䂤earrowĀlrᯮ᯳eft»ᮀight»ᮽeäᯝĀciᰁᰇoninôǷnt;戱lcty;挭ঀAHabcdefhijlorstuwz᰻᰿ᱝᱩᱵᲞᲬᲷᴍᵻᶑᶫᶻ᷆᷍ròar;楥Ȁglrs᱈ᱍ᱒᱔ger;怠eth;愸òᄳhĀ;vᱚᱛ怐»ऊūᱡᱧarow;椏aã̕Āayᱮᱳron;䄏;䐴ƀ;ao̲ᱼᲄĀgrʿᲁr;懊tseq;橷ƀglmᲑᲔᲘ耻°䂰ta;䎴ptyv;榱ĀirᲣᲨsht;楿;쀀𝔡arĀlrᲳᲵ»ࣜ»သʀaegsv᳂᳖᳜᳠mƀ;oș᳔ndĀ;ș᳑uit;晦amma;䏝in;拲ƀ;io᳧᳨᳸䃷de脀÷;o᳧ᳰntimes;拇nø᳷cy;䑒cɯᴆ\0\0ᴊrn;挞op;挍ʀlptuwᴘᴝᴢᵉᵕlar;䀤f;쀀𝕕ʀ;emps̋ᴭᴷᴽᵂqĀ;d͒ᴳot;扑inus;戸lus;戔quare;抡blebarwedgåúnƀadhᄮᵝᵧownarrowóᲃarpoonĀlrᵲᵶefôᲴighôᲶŢᵿᶅkaro÷གɯᶊ\0\0ᶎrn;挟op;挌ƀcotᶘᶣᶦĀryᶝᶡ;쀀𝒹;䑕l;槶rok;䄑Ādrᶰᶴot;拱iĀ;fᶺ᠖斿Āah᷀᷃ròЩaòྦangle;榦Āci᷒ᷕy;䑟grarr;柿ऀDacdefglmnopqrstuxḁḉḙḸոḼṉṡṾấắẽỡἪἷὄĀDoḆᴴoôĀcsḎḔute耻é䃩ter;橮ȀaioyḢḧḱḶron;䄛rĀ;cḭḮ扖耻ê䃪lon;払;䑍ot;䄗ĀDrṁṅot;扒;쀀𝔢ƀ;rsṐṑṗ檚ave耻è䃨Ā;dṜṝ檖ot;檘Ȁ;ilsṪṫṲṴ檙nters;揧;愓Ā;dṹṺ檕ot;檗ƀapsẅẉẗcr;䄓tyƀ;svẒẓẕ戅et»ẓpĀ1;ẝẤijạả;怄;怅怃ĀgsẪẬ;䅋p;怂ĀgpẴẸon;䄙f;쀀𝕖ƀalsỄỎỒrĀ;sỊị拕l;槣us;橱iƀ;lvỚớở䎵on»ớ;䏵ȀcsuvỪỳἋἣĀioữḱrc»Ḯɩỹ\0\0ỻíՈantĀglἂἆtr»ṝess»ṺƀaeiἒἚls;䀽st;扟vĀ;DȵἠD;橸parsl;槥ĀDaἯἳot;打rr;楱ƀcdiἾὁỸr;愯oô͒ĀahὉὋ;䎷耻ð䃰Āmrὓὗl耻ë䃫o;悬ƀcipὡὤὧl;䀡sôծĀeoὬὴctatioîՙnentialåչৡᾒ\0ᾞ\0ᾡᾧ\0\0ῆῌ\0ΐ\0ῦῪ \0 ⁚llingdotseñṄy;䑄male;晀ƀilrᾭᾳ῁lig;耀ffiɩᾹ\0\0᾽g;耀ffig;耀ffl;쀀𝔣lig;耀filig;쀀fjƀaltῙῡt;晭ig;耀flns;斱of;䆒ǰ΅\0ῳf;쀀𝕗ĀakֿῷĀ;vῼ´拔;櫙artint;樍Āao⁕Ācs‑⁒ႉ‸⁅⁈\0⁐β•‥‧\0耻½䂽;慓耻¼䂼;慕;慙;慛Ƴ‴\0‶;慔;慖ʴ‾⁁\0\0⁃耻¾䂾;慗;慜5;慘ƶ⁌\0⁎;慚;慝8;慞l;恄wn;挢cr;쀀𝒻ࢀEabcdefgijlnorstv₂₉₥₰₴⃰℃ℒℸ̗ℾ⅒↞Ā;lٍ₇;檌ƀcmpₐₕute;䇵maĀ;dₜ᳚䎳;檆reve;䄟Āiy₪₮rc;䄝;䐳ot;䄡Ȁ;lqsؾق₽ƀ;qsؾٌlanô٥Ȁ;cdl٥⃒⃥⃕c;檩otĀ;o⃜⃝檀Ā;l⃢⃣檂;檄Ā;e⃪⃭쀀⋛︀s;檔r;쀀𝔤Ā;gٳ؛mel;愷cy;䑓Ȁ;Eajٚℌℎℐ;檒;檥;檤ȀEaesℛℝ℩ℴ;扩pĀ;p℣ℤ檊rox»ℤĀ;q℮ℯ檈Ā;q℮ℛim;拧pf;쀀𝕘Āci⅃ⅆr;愊mƀ;el٫ⅎ⅐;檎;檐茀>;cdlqrⅠⅪⅮⅳⅹĀciⅥⅧ;檧r;橺ot;拗Par;榕uest;橼ʀadelsↄⅪ←ٖ↛ǰ↉\0proør;楸qĀlqؿ↖lesó₈ií٫Āen↣↭rtneqq;쀀≩︀Å↪ԀAabcefkosy⇄⇇⇱⇵⇺∘∝∯≨≽ròΠȀilmr⇐⇔⇗⇛rsðᒄf»․ilôکĀdr⇠⇤cy;䑊ƀ;cwࣴ⇫⇯ir;楈;憭ar;意irc;䄥ƀalr∁∎∓rtsĀ;u∉∊晥it»∊lip;怦con;抹r;쀀𝔥sĀew∣∩arow;椥arow;椦ʀamopr∺∾≃≞≣rr;懿tht;戻kĀlr≉≓eftarrow;憩ightarrow;憪f;쀀𝕙bar;怕ƀclt≯≴≸r;쀀𝒽asè⇴rok;䄧Ābp⊂⊇ull;恃hen»ᱛૡ⊣\0⊪\0⊸⋅⋎\0⋕⋳\0\0⋸⌢⍧⍢⍿\0⎆⎪⎴cute耻í䃭ƀ;iyݱ⊰⊵rc耻î䃮;䐸Ācx⊼⊿y;䐵cl耻¡䂡ĀfrΟ⋉;쀀𝔦rave耻ì䃬Ȁ;inoܾ⋝⋩⋮Āin⋢⋦nt;樌t;戭fin;槜ta;愩lig;䄳ƀaop⋾⌚⌝ƀcgt⌅⌈⌗r;䄫ƀelpܟ⌏⌓inåގarôܠh;䄱f;抷ed;䆵ʀ;cfotӴ⌬⌱⌽⍁are;愅inĀ;t⌸⌹戞ie;槝doô⌙ʀ;celpݗ⍌⍐⍛⍡al;抺Āgr⍕⍙eróᕣã⍍arhk;樗rod;樼Ȁcgpt⍯⍲⍶⍻y;䑑on;䄯f;쀀𝕚a;䎹uest耻¿䂿Āci⎊⎏r;쀀𝒾nʀ;EdsvӴ⎛⎝⎡ӳ;拹ot;拵Ā;v⎦⎧拴;拳Ā;iݷ⎮lde;䄩ǫ⎸\0⎼cy;䑖l耻ï䃯̀cfmosu⏌⏗⏜⏡⏧⏵Āiy⏑⏕rc;䄵;䐹r;쀀𝔧ath;䈷pf;쀀𝕛ǣ⏬\0⏱r;쀀𝒿rcy;䑘kcy;䑔Ѐacfghjos␋␖␢ppaĀ;v␓␔䎺;䏰Āey␛␠dil;䄷;䐺r;쀀𝔨reen;䄸cy;䑅cy;䑜pf;쀀𝕜cr;쀀𝓀ABEHabcdefghjlmnoprstuv⑰⒁⒆⒍⒑┎┽╚▀♎♞♥♹♽⚚⚲⛘❝❨➋⟀⠁⠒ƀart⑷⑺⑼ròòΕail;椛arr;椎Ā;gঔ⒋;檋ar;楢ॣ⒥\0⒪\0⒱\0\0\0\0\0⒵Ⓔ\0ⓆⓈⓍ\0⓹ute;䄺mptyv;榴raîࡌbda;䎻gƀ;dlࢎⓁⓃ;榑åࢎ;檅uo耻«䂫rЀ;bfhlpst࢙ⓞⓦⓩ⓫⓮⓱⓵Ā;f࢝ⓣs;椟s;椝ë≒p;憫l;椹im;楳l;憢ƀ;ae⓿─┄檫il;椙Ā;s┉┊檭;쀀⪭︀ƀabr┕┙┝rr;椌rk;杲Āak┢┬cĀek┨┪;䁻;䁛Āes┱┳;榋lĀdu┹┻;榏;榍Ȁaeuy╆╋╖╘ron;䄾Ādi═╔il;䄼ìࢰâ┩;䐻Ȁcqrs╣╦╭╽a;椶uoĀ;rนᝆĀdu╲╷har;楧shar;楋h;憲ʀ;fgqs▋▌উ◳◿扤tʀahlrt▘▤▷◂◨rrowĀ;t࢙□aé⓶arpoonĀdu▯▴own»њp»०eftarrows;懇ightƀahs◍◖◞rrowĀ;sࣴࢧarpoonóquigarro÷⇰hreetimes;拋ƀ;qs▋ও◺lanôবʀ;cdgsব☊☍☝☨c;檨otĀ;o☔☕橿Ā;r☚☛檁;檃Ā;e☢☥쀀⋚︀s;檓ʀadegs☳☹☽♉♋pproøⓆot;拖qĀgq♃♅ôউgtò⒌ôছiíলƀilr♕࣡♚sht;楼;쀀𝔩Ā;Eজ♣;檑š♩♶rĀdu▲♮Ā;l॥♳;楪lk;斄cy;䑙ʀ;achtੈ⚈⚋⚑⚖rò◁orneòᴈard;楫ri;旺Āio⚟⚤dot;䅀ustĀ;a⚬⚭掰che»⚭ȀEaes⚻⚽⛉⛔;扨pĀ;p⛃⛄檉rox»⛄Ā;q⛎⛏檇Ā;q⛎⚻im;拦Ѐabnoptwz⛩⛴⛷✚✯❁❇❐Ānr⛮⛱g;柬r;懽rëࣁgƀlmr⛿✍✔eftĀar০✇ightá৲apsto;柼ightá৽parrowĀlr✥✩efô⓭ight;憬ƀafl✶✹✽r;榅;쀀𝕝us;樭imes;樴š❋❏st;戗áፎƀ;ef❗❘᠀旊nge»❘arĀ;l❤❥䀨t;榓ʀachmt❳❶❼➅➇ròࢨorneòᶌarĀ;d➃;業;怎ri;抿̀achiqt➘➝ੀ➢➮➻quo;怹r;쀀𝓁mƀ;egল➪➬;檍;檏Ābu┪➳oĀ;rฟ➹;怚rok;䅂萀<;cdhilqrࠫ⟒☹⟜⟠⟥⟪⟰Āci⟗⟙;檦r;橹reå◲mes;拉arr;楶uest;橻ĀPi⟵⟹ar;榖ƀ;ef⠀भ旃rĀdu⠇⠍shar;楊har;楦Āen⠗⠡rtneqq;쀀≨︀Å⠞܀Dacdefhilnopsu⡀⡅⢂⢎⢓⢠⢥⢨⣚⣢⣤ઃ⣳⤂Dot;戺Ȁclpr⡎⡒⡣⡽r耻¯䂯Āet⡗⡙;時Ā;e⡞⡟朠se»⡟Ā;sျ⡨toȀ;dluျ⡳⡷⡻owîҌefôएðᏑker;斮Āoy⢇⢌mma;権;䐼ash;怔asuredangle»ᘦr;쀀𝔪o;愧ƀcdn⢯⢴⣉ro耻µ䂵Ȁ;acdᑤ⢽⣀⣄sôᚧir;櫰ot肻·Ƶusƀ;bd⣒ᤃ⣓戒Ā;uᴼ⣘;横ţ⣞⣡p;櫛ò−ðઁĀdp⣩⣮els;抧f;쀀𝕞Āct⣸⣽r;쀀𝓂pos»ᖝƀ;lm⤉⤊⤍䎼timap;抸ఀGLRVabcdefghijlmoprstuvw⥂⥓⥾⦉⦘⧚⧩⨕⨚⩘⩝⪃⪕⪤⪨⬄⬇⭄⭿⮮ⰴⱧⱼ⳩Āgt⥇⥋;쀀⋙̸Ā;v⥐쀀≫⃒ƀelt⥚⥲⥶ftĀar⥡⥧rrow;懍ightarrow;懎;쀀⋘̸Ā;v⥻ే쀀≪⃒ightarrow;懏ĀDd⦎⦓ash;抯ash;抮ʀbcnpt⦣⦧⦬⦱⧌la»˞ute;䅄g;쀀∠⃒ʀ;Eiop⦼⧀⧅⧈;쀀⩰̸d;쀀≋̸s;䅉roøurĀ;a⧓⧔普lĀ;s⧓ସdz⧟\0⧣p肻 ଷmpĀ;e௹ఀʀaeouy⧴⧾⨃⨐⨓ǰ⧹\0⧻;橃on;䅈dil;䅆ngĀ;dൾ⨊ot;쀀⩭̸p;橂;䐽ash;怓;Aadqsxஒ⨩⨭⨻⩁⩅⩐rr;懗rĀhr⨳⨶k;椤Ā;oᏲᏰot;쀀≐̸uiöୣĀei⩊⩎ar;椨íistĀ;sடr;쀀𝔫ȀEest⩦⩹⩼ƀ;qs⩭ƀ;qs⩴lanôií௪Ā;rஶ⪁»ஷƀAap⪊⪍⪑rò⥱rr;憮ar;櫲ƀ;svྍ⪜ྌĀ;d⪡⪢拼;拺cy;䑚AEadest⪷⪺⪾⫂⫅⫶⫹rò⥦;쀀≦̸rr;憚r;急Ȁ;fqs⫎⫣⫯tĀar⫔⫙rro÷⫁ightarro÷⪐ƀ;qs⪺⫪lanôౕĀ;sౕ⫴»శiíౝĀ;rవ⫾iĀ;eచథiäඐĀpt⬌⬑f;쀀𝕟膀¬;in⬙⬚⬶䂬nȀ;Edvஉ⬤⬨⬮;쀀⋹̸ot;쀀⋵̸ǡஉ⬳⬵;拷;拶iĀ;vಸ⬼ǡಸ⭁⭃;拾;拽ƀaor⭋⭣⭩rȀ;ast⭕⭚⭟lleìl;쀀⫽⃥;쀀∂̸lint;樔ƀ;ceಒ⭰⭳uåಥĀ;cಘ⭸Ā;eಒ⭽ñಘȀAait⮈⮋⮝⮧rò⦈rrƀ;cw⮔⮕⮙憛;쀀⤳̸;쀀↝̸ghtarrow»⮕riĀ;eೋೖchimpqu⮽⯍⯙⬄⯤⯯Ȁ;cerല⯆ഷ⯉uå;쀀𝓃ortɭ⬅\0\0⯖ará⭖mĀ;e൮⯟Ā;q൴൳suĀbp⯫⯭ååഋƀbcp⯶ⰑⰙȀ;Ees⯿ⰀഢⰄ抄;쀀⫅̸etĀ;eഛⰋqĀ;qണⰀcĀ;eലⰗñസȀ;EesⰢⰣൟⰧ抅;쀀⫆̸etĀ;e൘ⰮqĀ;qൠⰣȀgilrⰽⰿⱅⱇìௗlde耻ñ䃱çృiangleĀlrⱒⱜeftĀ;eచⱚñదightĀ;eೋⱥñĀ;mⱬⱭ䎽ƀ;esⱴⱵⱹ䀣ro;愖p;怇ҀDHadgilrsⲏⲔⲙⲞⲣⲰⲶⳓⳣash;抭arr;椄p;쀀≍⃒ash;抬ĀetⲨⲬ;쀀≥⃒;쀀>⃒nfin;槞ƀAetⲽⳁⳅrr;椂;쀀≤⃒Ā;rⳊⳍ쀀<⃒ie;쀀⊴⃒ĀAtⳘⳜrr;椃rie;쀀⊵⃒im;쀀∼⃒ƀAan⳰ⴂrr;懖rĀhr⳺⳽k;椣Ā;oᏧᏥear;椧ቓ᪕\0\0\0\0\0\0\0\0\0\0\0\0\0ⴭ\0ⴸⵈⵠⵥⶄᬇ\0\0ⶍⶫ\0ⷈⷎ\0ⷜ⸙⸫⸾⹃Ācsⴱ᪗ute耻ó䃳ĀiyⴼⵅrĀ;cⵂ耻ô䃴;䐾ʀabios᪠ⵒⵗLjⵚlac;䅑v;樸old;榼lig;䅓Ācrir;榿;쀀𝔬ͯ\0\0\0ⶂn;䋛ave耻ò䃲;槁Ābmⶈ෴ar;榵Ȁacitⶕⶥⶨrò᪀Āirⶠr;榾oss;榻nå๒;槀ƀaeiⶱⶵⶹcr;䅍ga;䏉ƀcdnⷀⷅǍron;䎿;榶pf;쀀𝕠ƀaelⷔǒr;榷rp;榹;adiosvⷪⷫⷮ⸈⸍⸐⸖戨rò᪆Ȁ;efmⷷⷸ⸂⸅橝rĀ;oⷾⷿ愴f»ⷿ耻ª䂪耻º䂺gof;抶r;橖lope;橗;橛ƀclo⸟⸡⸧ò⸁ash耻ø䃸l;折iŬⸯ⸴de耻õ䃵esĀ;aǛ⸺s;樶ml耻ö䃶bar;挽ૡ\0\0⺀⺝\0⺢⺹\0\0⻋ຜ\0⼓\0\0⼫⾼\0⿈rȀ;astЃ脀¶;l䂶leìЃɩ\0\0m;櫳;櫽y;䐿rʀcimpt⺋⺏⺓ᡥ⺗nt;䀥od;䀮il;怰enk;怱r;쀀𝔭ƀimo⺨⺰⺴Ā;v⺭⺮䏆;䏕maô੶ne;明ƀ;tv⺿⻀⻈䏀chfork»´;䏖Āau⻏⻟nĀck⻕⻝kĀ;h⇴⻛;愎ö⇴sҀ;abcdemst⻳ᤈ⼄⼆⼊⼎䀫cir;樣ir;樢Āouᵀ⼂;樥;橲n肻±ຝim;樦wo;樧ƀipu⼙⼠⼥ntint;樕f;쀀𝕡nd耻£䂣Ԁ;Eaceinosu່⼿⽁⽄⽇⾁⾉⾒⽾⾶;檳p;檷uå໙Ā;c໎⽌̀;acens່⽙⽟⽦⽨⽾pproø⽃urlyeñ໙ñ໎ƀaes⽯⽶⽺pprox;檹qq;檵im;拨iíໟmeĀ;s⾈ຮ怲ƀEas⽸⾐⽺ð⽵ƀdfp⾙⾯ƀals⾠⾥⾪lar;挮ine;挒urf;挓Ā;t⾴ïrel;抰Āci⿀⿅r;쀀𝓅;䏈ncsp;怈̀fiopsu⋢⿱r;쀀𝔮pf;쀀𝕢rime;恗cr;쀀𝓆ƀaeo⿸〉〓tĀei々rnionóڰnt;樖stĀ;e【】䀿ñἙô༔ABHabcdefhilmnoprstuxけさすムㄎㄫㅇㅢㅲㆎ㈆㈕㈤㈩㉘㉮㉲㊐㊰㊷ƀartぇおがròႳòϝail;検aròᱥar;楤cdenqrtとふへみわゔヌĀeuねぱ;쀀∽̱te;䅕iãᅮmptyv;榳gȀ;del࿑らるろ;榒;榥å࿑uo耻»䂻rր;abcfhlpstwガクシスゼゾダッデナp;極Ā;fゴs;椠;椳s;椞ë≝ð✮l;楅im;楴l;憣;憝Āaiパフil;椚oĀ;nホボ戶aló༞ƀabrョリヮrò៥rk;杳ĀakンヽcĀekヹ・;䁽;䁝Āes;榌lĀduㄊㄌ;榎;榐Ȁaeuyㄗㄜㄧㄩron;䅙Ādiㄡㄥil;䅗ìâヺ;䑀Ȁclqsㄴㄷㄽㅄa;椷dhar;楩uoĀ;rȎȍh;憳ƀacgㅎㅟངlȀ;ipsླྀㅘㅛႜnåႻarôྩt;断ƀilrㅩဣㅮsht;楽;쀀𝔯ĀaoㅷㆆrĀduㅽㅿ»ѻĀ;l႑ㆄ;楬Ā;vㆋㆌ䏁;䏱ƀgns㆕ㇹㇼht̀ahlrstㆤㆰ㇂㇘rrowĀ;tㆭaéトarpoonĀduㆻㆿowîㅾp»႒eftĀah㇊㇐rrowóarpoonóՑightarrows;應quigarro÷ニhreetimes;拌g;䋚ingdotseñἲƀahm㈍㈐㈓ròaòՑ;怏oustĀ;a㈞掱che»mid;櫮Ȁabpt㈲㈽㉀㉒Ānr㈷㈺g;柭r;懾rëဃƀafl㉇㉊㉎r;榆;쀀𝕣us;樮imes;樵Āap㉝㉧rĀ;g㉣㉤䀩t;榔olint;樒arò㇣Ȁachq㉻㊀Ⴜ㊅quo;怺r;쀀𝓇Ābu・㊊oĀ;rȔȓƀhir㊗㊛㊠reåㇸmes;拊iȀ;efl㊪ၙᠡ㊫方tri;槎luhar;楨;愞ൡ㋕㋛㋟㌬㌸㍱\0㍺㎤\0\0㏬㏰\0㐨㑈㑚㒭㒱㓊㓱\0㘖\0\0㘳cute;䅛quï➺Ԁ;Eaceinpsyᇭ㋳㋵㋿㌂㌋㌏㌟㌦㌩;檴ǰ㋺\0㋼;檸on;䅡uåᇾĀ;dᇳ㌇il;䅟rc;䅝ƀEas㌖㌘㌛;檶p;檺im;择olint;樓iíሄ;䑁otƀ;be㌴ᵇ㌵担;橦Aacmstx㍆㍊㍗㍛㍞㍣㍭rr;懘rĀhr㍐㍒ë∨Ā;oਸ਼t耻§䂧i;䀻war;椩mĀin㍩ðnuóñt;朶rĀ;o㍶⁕쀀𝔰Ȁacoy㎂㎆㎑㎠rp;景Āhy㎋㎏cy;䑉;䑈rtɭ㎙\0\0㎜iäᑤaraì耻䂭Āgm㎨㎴maƀ;fv㎱㎲㎲䏃;䏂Ѐ;deglnprካ㏅㏉㏎㏖㏞㏡㏦ot;橪Ā;qኰĀ;E㏓㏔檞;檠Ā;E㏛㏜檝;檟e;扆lus;樤arr;楲aròᄽȀaeit㏸㐈㐏㐗Āls㏽㐄lsetmé㍪hp;樳parsl;槤Ādlᑣ㐔e;挣Ā;e㐜㐝檪Ā;s㐢㐣檬;쀀⪬︀ƀflp㐮㐳㑂tcy;䑌Ā;b㐸㐹䀯Ā;a㐾㐿槄r;挿f;쀀𝕤aĀdr㑍ЂesĀ;u㑔㑕晠it»㑕ƀcsu㑠㑹㒟Āau㑥㑯pĀ;sᆈ㑫;쀀⊓︀pĀ;sᆴ㑵;쀀⊔︀uĀbp㑿㒏ƀ;esᆗᆜ㒆etĀ;eᆗ㒍ñᆝƀ;esᆨᆭ㒖etĀ;eᆨ㒝ñᆮƀ;afᅻ㒦ְrť㒫ֱ»ᅼaròᅈȀcemt㒹㒾㓂㓅r;쀀𝓈tmîñiì㐕aræᆾĀar㓎㓕rĀ;f㓔ឿ昆Āan㓚㓭ightĀep㓣㓪psiloîỠhé⺯s»⡒ʀbcmnp㓻㕞ሉ㖋㖎Ҁ;Edemnprs㔎㔏㔑㔕㔞㔣㔬㔱㔶抂;櫅ot;檽Ā;dᇚ㔚ot;櫃ult;櫁ĀEe㔨㔪;櫋;把lus;檿arr;楹ƀeiu㔽㕒㕕tƀ;en㔎㕅㕋qĀ;qᇚ㔏eqĀ;q㔫㔨m;櫇Ābp㕚㕜;櫕;櫓c̀;acensᇭ㕬㕲㕹㕻㌦pproø㋺urlyeñᇾñᇳƀaes㖂㖈㌛pproø㌚qñ㌗g;晪ڀ123;Edehlmnps㖩㖬㖯ሜ㖲㖴㗀㗉㗕㗚㗟㗨㗭耻¹䂹耻²䂲耻³䂳;櫆Āos㖹㖼t;檾ub;櫘Ā;dሢ㗅ot;櫄sĀou㗏㗒l;柉b;櫗arr;楻ult;櫂ĀEe㗤㗦;櫌;抋lus;櫀ƀeiu㗴㘉㘌tƀ;enሜ㗼㘂qĀ;qሢ㖲eqĀ;q㗧㗤m;櫈Ābp㘑㘓;櫔;櫖ƀAan㘜㘠㘭rr;懙rĀhr㘦㘨ë∮Ā;oਫwar;椪lig耻ß䃟㙑㙝㙠ዎ㙳㙹\0㙾㛂\0\0\0\0\0㛛㜃\0㜉㝬\0\0\0㞇ɲ㙖\0\0㙛get;挖;䏄rëƀaey㙦㙫㙰ron;䅥dil;䅣;䑂lrec;挕r;쀀𝔱Ȁeiko㚆㚝㚵㚼Dz㚋\0㚑eĀ4fኄኁaƀ;sv㚘㚙㚛䎸ym;䏑Ācn㚢㚲kĀas㚨㚮pproøim»ኬsðኞĀas㚺㚮ðrn耻þ䃾Ǭ̟㛆⋧es膀×;bd㛏㛐㛘䃗Ā;aᤏ㛕r;樱;樰ƀeps㛡㛣㜀á⩍Ȁ;bcf҆㛬㛰㛴ot;挶ir;櫱Ā;o㛹㛼쀀𝕥rk;櫚á㍢rime;怴ƀaip㜏㜒㝤dåቈadempst㜡㝍㝀㝑㝗㝜㝟ngleʀ;dlqr㜰㜱㜶㝀㝂斵own»ᶻeftĀ;e⠀㜾ñम;扜ightĀ;e㊪㝋ñၚot;旬inus;樺lus;樹b;槍ime;樻ezium;揢ƀcht㝲㝽㞁Āry㝷㝻;쀀𝓉;䑆cy;䑛rok;䅧Āio㞋㞎xôheadĀlr㞗㞠eftarro÷ࡏightarrow»ཝऀAHabcdfghlmoprstuw㟐㟓㟗㟤㟰㟼㠎㠜㠣㠴㡑㡝㡫㢩㣌㣒㣪㣶ròϭar;楣Ācr㟜㟢ute耻ú䃺òᅐrǣ㟪\0㟭y;䑞ve;䅭Āiy㟵㟺rc耻û䃻;䑃ƀabh㠃㠆㠋ròᎭlac;䅱aòᏃĀir㠓㠘sht;楾;쀀𝔲rave耻ù䃹š㠧㠱rĀlr㠬㠮»ॗ»ႃlk;斀Āct㠹㡍ɯ㠿\0\0㡊rnĀ;e㡅㡆挜r»㡆op;挏ri;旸Āal㡖㡚cr;䅫肻¨͉Āgp㡢㡦on;䅳f;쀀𝕦̀adhlsuᅋ㡸㡽፲㢑㢠ownáᎳarpoonĀlr㢈㢌efô㠭ighô㠯iƀ;hl㢙㢚㢜䏅»ᏺon»㢚parrows;懈ƀcit㢰㣄㣈ɯ㢶\0\0㣁rnĀ;e㢼㢽挝r»㢽op;挎ng;䅯ri;旹cr;쀀𝓊ƀdir㣙㣝㣢ot;拰lde;䅩iĀ;f㜰㣨»᠓Āam㣯㣲rò㢨l耻ü䃼angle;榧ހABDacdeflnoprsz㤜㤟㤩㤭㦵㦸㦽㧟㧤㧨㧳㧹㧽㨁㨠ròϷarĀ;v㤦㤧櫨;櫩asèϡĀnr㤲㤷grt;榜eknprst㓣㥆㥋㥒㥝㥤㦖appá␕othinçẖƀhir㓫⻈㥙opô⾵Ā;hᎷ㥢ïㆍĀiu㥩㥭gmá㎳Ābp㥲㦄setneqĀ;q㥽㦀쀀⊊︀;쀀⫋︀setneqĀ;q㦏㦒쀀⊋︀;쀀⫌︀Āhr㦛㦟etá㚜iangleĀlr㦪㦯eft»थight»ၑy;䐲ash»ံƀelr㧄㧒㧗ƀ;beⷪ㧋㧏ar;抻q;扚lip;拮Ābt㧜ᑨaòᑩr;쀀𝔳tré㦮suĀbp㧯㧱»ജ»൙pf;쀀𝕧roðtré㦴Ācu㨆㨋r;쀀𝓋Ābp㨐㨘nĀEe㦀㨖»㥾nĀEe㦒㨞»㦐igzag;榚cefoprs㨶㨻㩖㩛㩔㩡㩪irc;䅵Ādi㩀㩑Ābg㩅㩉ar;機eĀ;qᗺ㩏;扙erp;愘r;쀀𝔴pf;쀀𝕨Ā;eᑹ㩦atèᑹcr;쀀𝓌ૣណ㪇\0㪋\0㪐㪛\0\0㪝㪨㪫㪯\0\0㫃㫎\0㫘ៜtré៑r;쀀𝔵ĀAa㪔㪗ròσrò৶;䎾ĀAa㪡㪤ròθrò৫að✓is;拻ƀdptឤ㪵㪾Āfl㪺ឩ;쀀𝕩imåឲĀAa㫇㫊ròώròਁĀcq㫒ីr;쀀𝓍Āpt៖㫜ré។Ѐacefiosu㫰㫽㬈㬌㬑㬕㬛㬡cĀuy㫶㫻te耻ý䃽;䑏Āiy㬂㬆rc;䅷;䑋n耻¥䂥r;쀀𝔶cy;䑗pf;쀀𝕪cr;쀀𝓎Ācm㬦㬩y;䑎l耻ÿ䃿Ԁacdefhiosw㭂㭈㭔㭘㭤㭩㭭㭴㭺㮀cute;䅺Āay㭍㭒ron;䅾;䐷ot;䅼Āet㭝㭡træᕟa;䎶r;쀀𝔷cy;䐶grarr;懝pf;쀀𝕫cr;쀀𝓏Ājn㮅㮇;怍j;怌'.split("").map((e) => e.charCodeAt(0))
|
|
173
|
-
),
|
|
383
|
+
), xe = /* @__PURE__ */ new Uint16Array(
|
|
174
384
|
// prettier-ignore
|
|
175
385
|
/* @__PURE__ */ "Ȁaglq \x1Bɭ\0\0p;䀦os;䀧t;䀾t;䀼uot;䀢".split("").map((e) => e.charCodeAt(0))
|
|
176
386
|
);
|
|
177
387
|
var tu;
|
|
178
|
-
const
|
|
388
|
+
const ge = /* @__PURE__ */ new Map([
|
|
179
389
|
[0, 65533],
|
|
180
390
|
// C1 Unicode control character reference replacements
|
|
181
391
|
[128, 8364],
|
|
@@ -212,46 +422,46 @@ const be = /* @__PURE__ */ new Map([
|
|
|
212
422
|
return e > 65535 && (e -= 65536, u += String.fromCharCode(e >>> 10 & 1023 | 55296), e = 56320 | e & 1023), u += String.fromCharCode(e), u;
|
|
213
423
|
}
|
|
214
424
|
);
|
|
215
|
-
function
|
|
425
|
+
function ye(e) {
|
|
216
426
|
var u;
|
|
217
|
-
return e >= 55296 && e <= 57343 || e > 1114111 ? 65533 : (u =
|
|
427
|
+
return e >= 55296 && e <= 57343 || e > 1114111 ? 65533 : (u = ge.get(e)) !== null && u !== void 0 ? u : e;
|
|
218
428
|
}
|
|
219
|
-
var
|
|
429
|
+
var k;
|
|
220
430
|
(function(e) {
|
|
221
431
|
e[e.NUM = 35] = "NUM", e[e.SEMI = 59] = "SEMI", e[e.EQUALS = 61] = "EQUALS", e[e.ZERO = 48] = "ZERO", e[e.NINE = 57] = "NINE", e[e.LOWER_A = 97] = "LOWER_A", e[e.LOWER_F = 102] = "LOWER_F", e[e.LOWER_X = 120] = "LOWER_X", e[e.LOWER_Z = 122] = "LOWER_Z", e[e.UPPER_A = 65] = "UPPER_A", e[e.UPPER_F = 70] = "UPPER_F", e[e.UPPER_Z = 90] = "UPPER_Z";
|
|
222
|
-
})(
|
|
223
|
-
const
|
|
224
|
-
var
|
|
432
|
+
})(k || (k = {}));
|
|
433
|
+
const Se = 32;
|
|
434
|
+
var $;
|
|
225
435
|
(function(e) {
|
|
226
436
|
e[e.VALUE_LENGTH = 49152] = "VALUE_LENGTH", e[e.BRANCH_LENGTH = 16256] = "BRANCH_LENGTH", e[e.JUMP_TABLE = 127] = "JUMP_TABLE";
|
|
227
|
-
})(
|
|
228
|
-
function
|
|
229
|
-
return e >=
|
|
437
|
+
})($ || ($ = {}));
|
|
438
|
+
function su(e) {
|
|
439
|
+
return e >= k.ZERO && e <= k.NINE;
|
|
230
440
|
}
|
|
231
|
-
function
|
|
232
|
-
return e >=
|
|
441
|
+
function Ie(e) {
|
|
442
|
+
return e >= k.UPPER_A && e <= k.UPPER_F || e >= k.LOWER_A && e <= k.LOWER_F;
|
|
233
443
|
}
|
|
234
|
-
function
|
|
235
|
-
return e >=
|
|
444
|
+
function Ee(e) {
|
|
445
|
+
return e >= k.UPPER_A && e <= k.UPPER_Z || e >= k.LOWER_A && e <= k.LOWER_Z || su(e);
|
|
236
446
|
}
|
|
237
|
-
function
|
|
238
|
-
return e ===
|
|
447
|
+
function ve(e) {
|
|
448
|
+
return e === k.EQUALS || Ee(e);
|
|
239
449
|
}
|
|
240
|
-
var
|
|
450
|
+
var N;
|
|
241
451
|
(function(e) {
|
|
242
452
|
e[e.EntityStart = 0] = "EntityStart", e[e.NumericStart = 1] = "NumericStart", e[e.NumericDecimal = 2] = "NumericDecimal", e[e.NumericHex = 3] = "NumericHex", e[e.NamedEntity = 4] = "NamedEntity";
|
|
243
|
-
})(
|
|
244
|
-
var
|
|
453
|
+
})(N || (N = {}));
|
|
454
|
+
var C;
|
|
245
455
|
(function(e) {
|
|
246
456
|
e[e.Legacy = 0] = "Legacy", e[e.Strict = 1] = "Strict", e[e.Attribute = 2] = "Attribute";
|
|
247
|
-
})(
|
|
248
|
-
class
|
|
457
|
+
})(C || (C = {}));
|
|
458
|
+
class we {
|
|
249
459
|
constructor(u, t, a) {
|
|
250
|
-
this.decodeTree = u, this.emitCodePoint = t, this.errors = a, this.state =
|
|
460
|
+
this.decodeTree = u, this.emitCodePoint = t, this.errors = a, this.state = N.EntityStart, this.consumed = 1, this.result = 0, this.treeIndex = 0, this.excess = 1, this.decodeMode = C.Strict;
|
|
251
461
|
}
|
|
252
462
|
/** Resets the instance to make it reusable. */
|
|
253
463
|
startEntity(u) {
|
|
254
|
-
this.decodeMode = u, this.state =
|
|
464
|
+
this.decodeMode = u, this.state = N.EntityStart, this.result = 0, this.treeIndex = 0, this.excess = 1, this.consumed = 1;
|
|
255
465
|
}
|
|
256
466
|
/**
|
|
257
467
|
* Write an entity to the decoder. This can be called multiple times with partial entities.
|
|
@@ -266,15 +476,15 @@ class ye {
|
|
|
266
476
|
*/
|
|
267
477
|
write(u, t) {
|
|
268
478
|
switch (this.state) {
|
|
269
|
-
case
|
|
270
|
-
return u.charCodeAt(t) ===
|
|
271
|
-
case
|
|
479
|
+
case N.EntityStart:
|
|
480
|
+
return u.charCodeAt(t) === k.NUM ? (this.state = N.NumericStart, this.consumed += 1, this.stateNumericStart(u, t + 1)) : (this.state = N.NamedEntity, this.stateNamedEntity(u, t));
|
|
481
|
+
case N.NumericStart:
|
|
272
482
|
return this.stateNumericStart(u, t);
|
|
273
|
-
case
|
|
483
|
+
case N.NumericDecimal:
|
|
274
484
|
return this.stateNumericDecimal(u, t);
|
|
275
|
-
case
|
|
485
|
+
case N.NumericHex:
|
|
276
486
|
return this.stateNumericHex(u, t);
|
|
277
|
-
case
|
|
487
|
+
case N.NamedEntity:
|
|
278
488
|
return this.stateNamedEntity(u, t);
|
|
279
489
|
}
|
|
280
490
|
}
|
|
@@ -288,12 +498,12 @@ class ye {
|
|
|
288
498
|
* @returns The number of characters that were consumed, or -1 if the entity is incomplete.
|
|
289
499
|
*/
|
|
290
500
|
stateNumericStart(u, t) {
|
|
291
|
-
return t >= u.length ? -1 : (u.charCodeAt(t) |
|
|
501
|
+
return t >= u.length ? -1 : (u.charCodeAt(t) | Se) === k.LOWER_X ? (this.state = N.NumericHex, this.consumed += 1, this.stateNumericHex(u, t + 1)) : (this.state = N.NumericDecimal, this.stateNumericDecimal(u, t));
|
|
292
502
|
}
|
|
293
503
|
addToNumericResult(u, t, a, i) {
|
|
294
504
|
if (t !== a) {
|
|
295
|
-
const
|
|
296
|
-
this.result = this.result * Math.pow(i,
|
|
505
|
+
const s = a - t;
|
|
506
|
+
this.result = this.result * Math.pow(i, s) + Number.parseInt(u.substr(t, s), i), this.consumed += s;
|
|
297
507
|
}
|
|
298
508
|
}
|
|
299
509
|
/**
|
|
@@ -309,7 +519,7 @@ class ye {
|
|
|
309
519
|
const a = t;
|
|
310
520
|
for (; t < u.length; ) {
|
|
311
521
|
const i = u.charCodeAt(t);
|
|
312
|
-
if (
|
|
522
|
+
if (su(i) || Ie(i))
|
|
313
523
|
t += 1;
|
|
314
524
|
else
|
|
315
525
|
return this.addToNumericResult(u, a, t, 16), this.emitNumericEntity(i, 3);
|
|
@@ -329,7 +539,7 @@ class ye {
|
|
|
329
539
|
const a = t;
|
|
330
540
|
for (; t < u.length; ) {
|
|
331
541
|
const i = u.charCodeAt(t);
|
|
332
|
-
if (
|
|
542
|
+
if (su(i))
|
|
333
543
|
t += 1;
|
|
334
544
|
else
|
|
335
545
|
return this.addToNumericResult(u, a, t, 10), this.emitNumericEntity(i, 2);
|
|
@@ -353,11 +563,11 @@ class ye {
|
|
|
353
563
|
var a;
|
|
354
564
|
if (this.consumed <= t)
|
|
355
565
|
return (a = this.errors) === null || a === void 0 || a.absenceOfDigitsInNumericCharacterReference(this.consumed), 0;
|
|
356
|
-
if (u ===
|
|
566
|
+
if (u === k.SEMI)
|
|
357
567
|
this.consumed += 1;
|
|
358
|
-
else if (this.decodeMode ===
|
|
568
|
+
else if (this.decodeMode === C.Strict)
|
|
359
569
|
return 0;
|
|
360
|
-
return this.emitCodePoint(
|
|
570
|
+
return this.emitCodePoint(ye(this.result), this.consumed), this.errors && (u !== k.SEMI && this.errors.missingSemicolonAfterCharacterReference(), this.errors.validateNumericCharacterReference(this.result)), this.consumed;
|
|
361
571
|
}
|
|
362
572
|
/**
|
|
363
573
|
* Parses a named entity.
|
|
@@ -370,18 +580,18 @@ class ye {
|
|
|
370
580
|
*/
|
|
371
581
|
stateNamedEntity(u, t) {
|
|
372
582
|
const { decodeTree: a } = this;
|
|
373
|
-
let i = a[this.treeIndex],
|
|
583
|
+
let i = a[this.treeIndex], s = (i & $.VALUE_LENGTH) >> 14;
|
|
374
584
|
for (; t < u.length; t++, this.excess++) {
|
|
375
|
-
const
|
|
376
|
-
if (this.treeIndex =
|
|
585
|
+
const r = u.charCodeAt(t);
|
|
586
|
+
if (this.treeIndex = Ae(a, i, this.treeIndex + Math.max(1, s), r), this.treeIndex < 0)
|
|
377
587
|
return this.result === 0 || // If we are parsing an attribute
|
|
378
|
-
this.decodeMode ===
|
|
379
|
-
(
|
|
380
|
-
|
|
381
|
-
if (i = a[this.treeIndex],
|
|
382
|
-
if (
|
|
383
|
-
return this.emitNamedEntityData(this.treeIndex,
|
|
384
|
-
this.decodeMode !==
|
|
588
|
+
this.decodeMode === C.Attribute && // We shouldn't have consumed any characters after the entity,
|
|
589
|
+
(s === 0 || // And there should be no invalid characters.
|
|
590
|
+
ve(r)) ? 0 : this.emitNotTerminatedNamedEntity();
|
|
591
|
+
if (i = a[this.treeIndex], s = (i & $.VALUE_LENGTH) >> 14, s !== 0) {
|
|
592
|
+
if (r === k.SEMI)
|
|
593
|
+
return this.emitNamedEntityData(this.treeIndex, s, this.consumed + this.excess);
|
|
594
|
+
this.decodeMode !== C.Strict && (this.result = this.treeIndex, this.consumed += this.excess, this.excess = 0);
|
|
385
595
|
}
|
|
386
596
|
}
|
|
387
597
|
return -1;
|
|
@@ -393,7 +603,7 @@ class ye {
|
|
|
393
603
|
*/
|
|
394
604
|
emitNotTerminatedNamedEntity() {
|
|
395
605
|
var u;
|
|
396
|
-
const { result: t, decodeTree: a } = this, i = (a[t] &
|
|
606
|
+
const { result: t, decodeTree: a } = this, i = (a[t] & $.VALUE_LENGTH) >> 14;
|
|
397
607
|
return this.emitNamedEntityData(t, i, this.consumed), (u = this.errors) === null || u === void 0 || u.missingSemicolonAfterCharacterReference(), this.consumed;
|
|
398
608
|
}
|
|
399
609
|
/**
|
|
@@ -407,7 +617,7 @@ class ye {
|
|
|
407
617
|
*/
|
|
408
618
|
emitNamedEntityData(u, t, a) {
|
|
409
619
|
const { decodeTree: i } = this;
|
|
410
|
-
return this.emitCodePoint(t === 1 ? i[u] &
|
|
620
|
+
return this.emitCodePoint(t === 1 ? i[u] & ~$.VALUE_LENGTH : i[u + 1], a), t === 3 && this.emitCodePoint(i[u + 2], a), a;
|
|
411
621
|
}
|
|
412
622
|
/**
|
|
413
623
|
* Signal to the parser that the end of the input was reached.
|
|
@@ -419,62 +629,62 @@ class ye {
|
|
|
419
629
|
end() {
|
|
420
630
|
var u;
|
|
421
631
|
switch (this.state) {
|
|
422
|
-
case
|
|
423
|
-
return this.result !== 0 && (this.decodeMode !==
|
|
632
|
+
case N.NamedEntity:
|
|
633
|
+
return this.result !== 0 && (this.decodeMode !== C.Attribute || this.result === this.treeIndex) ? this.emitNotTerminatedNamedEntity() : 0;
|
|
424
634
|
// Otherwise, emit a numeric entity if we have one.
|
|
425
|
-
case
|
|
635
|
+
case N.NumericDecimal:
|
|
426
636
|
return this.emitNumericEntity(0, 2);
|
|
427
|
-
case
|
|
637
|
+
case N.NumericHex:
|
|
428
638
|
return this.emitNumericEntity(0, 3);
|
|
429
|
-
case
|
|
639
|
+
case N.NumericStart:
|
|
430
640
|
return (u = this.errors) === null || u === void 0 || u.absenceOfDigitsInNumericCharacterReference(this.consumed), 0;
|
|
431
|
-
case
|
|
641
|
+
case N.EntityStart:
|
|
432
642
|
return 0;
|
|
433
643
|
}
|
|
434
644
|
}
|
|
435
645
|
}
|
|
436
|
-
function
|
|
437
|
-
const i = (u &
|
|
646
|
+
function Ae(e, u, t, a) {
|
|
647
|
+
const i = (u & $.BRANCH_LENGTH) >> 7, s = u & $.JUMP_TABLE;
|
|
438
648
|
if (i === 0)
|
|
439
|
-
return
|
|
440
|
-
if (
|
|
441
|
-
const
|
|
442
|
-
return
|
|
443
|
-
}
|
|
444
|
-
let
|
|
445
|
-
for (;
|
|
446
|
-
const
|
|
447
|
-
if (
|
|
448
|
-
|
|
449
|
-
else if (
|
|
450
|
-
n =
|
|
649
|
+
return s !== 0 && a === s ? t : -1;
|
|
650
|
+
if (s) {
|
|
651
|
+
const o = a - s;
|
|
652
|
+
return o < 0 || o >= i ? -1 : e[t + o] - 1;
|
|
653
|
+
}
|
|
654
|
+
let r = t, n = r + i - 1;
|
|
655
|
+
for (; r <= n; ) {
|
|
656
|
+
const o = r + n >>> 1, c = e[o];
|
|
657
|
+
if (c < a)
|
|
658
|
+
r = o + 1;
|
|
659
|
+
else if (c > a)
|
|
660
|
+
n = o - 1;
|
|
451
661
|
else
|
|
452
|
-
return e[
|
|
662
|
+
return e[o + i];
|
|
453
663
|
}
|
|
454
664
|
return -1;
|
|
455
665
|
}
|
|
456
|
-
var
|
|
666
|
+
var h;
|
|
457
667
|
(function(e) {
|
|
458
668
|
e[e.Tab = 9] = "Tab", e[e.NewLine = 10] = "NewLine", e[e.FormFeed = 12] = "FormFeed", e[e.CarriageReturn = 13] = "CarriageReturn", e[e.Space = 32] = "Space", e[e.ExclamationMark = 33] = "ExclamationMark", e[e.Number = 35] = "Number", e[e.Amp = 38] = "Amp", e[e.SingleQuote = 39] = "SingleQuote", e[e.DoubleQuote = 34] = "DoubleQuote", e[e.Dash = 45] = "Dash", e[e.Slash = 47] = "Slash", e[e.Zero = 48] = "Zero", e[e.Nine = 57] = "Nine", e[e.Semi = 59] = "Semi", e[e.Lt = 60] = "Lt", e[e.Eq = 61] = "Eq", e[e.Gt = 62] = "Gt", e[e.Questionmark = 63] = "Questionmark", e[e.UpperA = 65] = "UpperA", e[e.LowerA = 97] = "LowerA", e[e.UpperF = 70] = "UpperF", e[e.LowerF = 102] = "LowerF", e[e.UpperZ = 90] = "UpperZ", e[e.LowerZ = 122] = "LowerZ", e[e.LowerX = 120] = "LowerX", e[e.OpeningSquareBracket = 91] = "OpeningSquareBracket";
|
|
459
|
-
})(
|
|
460
|
-
var
|
|
669
|
+
})(h || (h = {}));
|
|
670
|
+
var d;
|
|
461
671
|
(function(e) {
|
|
462
672
|
e[e.Text = 1] = "Text", e[e.BeforeTagName = 2] = "BeforeTagName", e[e.InTagName = 3] = "InTagName", e[e.InSelfClosingTag = 4] = "InSelfClosingTag", e[e.BeforeClosingTagName = 5] = "BeforeClosingTagName", e[e.InClosingTagName = 6] = "InClosingTagName", e[e.AfterClosingTagName = 7] = "AfterClosingTagName", e[e.BeforeAttributeName = 8] = "BeforeAttributeName", e[e.InAttributeName = 9] = "InAttributeName", e[e.AfterAttributeName = 10] = "AfterAttributeName", e[e.BeforeAttributeValue = 11] = "BeforeAttributeValue", e[e.InAttributeValueDq = 12] = "InAttributeValueDq", e[e.InAttributeValueSq = 13] = "InAttributeValueSq", e[e.InAttributeValueNq = 14] = "InAttributeValueNq", e[e.BeforeDeclaration = 15] = "BeforeDeclaration", e[e.InDeclaration = 16] = "InDeclaration", e[e.InProcessingInstruction = 17] = "InProcessingInstruction", e[e.BeforeComment = 18] = "BeforeComment", e[e.CDATASequence = 19] = "CDATASequence", e[e.InSpecialComment = 20] = "InSpecialComment", e[e.InCommentLike = 21] = "InCommentLike", e[e.BeforeSpecialS = 22] = "BeforeSpecialS", e[e.BeforeSpecialT = 23] = "BeforeSpecialT", e[e.SpecialStartSequence = 24] = "SpecialStartSequence", e[e.InSpecialTag = 25] = "InSpecialTag", e[e.InEntity = 26] = "InEntity";
|
|
463
|
-
})(
|
|
673
|
+
})(d || (d = {}));
|
|
464
674
|
function _(e) {
|
|
465
|
-
return e ===
|
|
675
|
+
return e === h.Space || e === h.NewLine || e === h.Tab || e === h.FormFeed || e === h.CarriageReturn;
|
|
466
676
|
}
|
|
467
|
-
function
|
|
468
|
-
return e ===
|
|
677
|
+
function Z(e) {
|
|
678
|
+
return e === h.Slash || e === h.Gt || _(e);
|
|
469
679
|
}
|
|
470
|
-
function
|
|
471
|
-
return e >=
|
|
680
|
+
function Te(e) {
|
|
681
|
+
return e >= h.LowerA && e <= h.LowerZ || e >= h.UpperA && e <= h.UpperZ;
|
|
472
682
|
}
|
|
473
683
|
var L;
|
|
474
684
|
(function(e) {
|
|
475
685
|
e[e.NoValue = 0] = "NoValue", e[e.Unquoted = 1] = "Unquoted", e[e.Single = 2] = "Single", e[e.Double = 3] = "Double";
|
|
476
686
|
})(L || (L = {}));
|
|
477
|
-
const
|
|
687
|
+
const T = {
|
|
478
688
|
Cdata: new Uint8Array([67, 68, 65, 84, 65, 91]),
|
|
479
689
|
// CDATA[
|
|
480
690
|
CdataEnd: new Uint8Array([93, 93, 62]),
|
|
@@ -503,12 +713,12 @@ const w = {
|
|
|
503
713
|
XmpEnd: new Uint8Array([60, 47, 120, 109, 112])
|
|
504
714
|
// `</xmp`
|
|
505
715
|
};
|
|
506
|
-
class
|
|
716
|
+
class Ne {
|
|
507
717
|
constructor({ xmlMode: u = !1, decodeEntities: t = !0 }, a) {
|
|
508
|
-
this.cbs = a, this.state =
|
|
718
|
+
this.cbs = a, this.state = d.Text, this.buffer = "", this.sectionStart = 0, this.index = 0, this.entityStart = 0, this.baseState = d.Text, this.isSpecial = !1, this.running = !0, this.offset = 0, this.currentSequence = void 0, this.sequenceIndex = 0, this.xmlMode = u, this.decodeEntities = t, this.entityDecoder = new we(u ? xe : me, (i, s) => this.emitCodePoint(i, s));
|
|
509
719
|
}
|
|
510
720
|
reset() {
|
|
511
|
-
this.state =
|
|
721
|
+
this.state = d.Text, this.buffer = "", this.sectionStart = 0, this.index = 0, this.baseState = d.Text, this.currentSequence = void 0, this.running = !0, this.offset = 0;
|
|
512
722
|
}
|
|
513
723
|
write(u) {
|
|
514
724
|
this.offset += this.buffer.length, this.buffer = u, this.parse();
|
|
@@ -523,13 +733,13 @@ class Ee {
|
|
|
523
733
|
this.running = !0, this.index < this.buffer.length + this.offset && this.parse();
|
|
524
734
|
}
|
|
525
735
|
stateText(u) {
|
|
526
|
-
u ===
|
|
736
|
+
u === h.Lt || !this.decodeEntities && this.fastForwardTo(h.Lt) ? (this.index > this.sectionStart && this.cbs.ontext(this.sectionStart, this.index), this.state = d.BeforeTagName, this.sectionStart = this.index) : this.decodeEntities && u === h.Amp && this.startEntity();
|
|
527
737
|
}
|
|
528
738
|
stateSpecialStartSequence(u) {
|
|
529
739
|
const t = this.sequenceIndex === this.currentSequence.length;
|
|
530
740
|
if (!(t ? (
|
|
531
741
|
// If we are at the end of the sequence, make sure the tag name has ended
|
|
532
|
-
|
|
742
|
+
Z(u)
|
|
533
743
|
) : (
|
|
534
744
|
// Otherwise, do a case-insensitive comparison
|
|
535
745
|
(u | 32) === this.currentSequence[this.sequenceIndex]
|
|
@@ -539,12 +749,12 @@ class Ee {
|
|
|
539
749
|
this.sequenceIndex++;
|
|
540
750
|
return;
|
|
541
751
|
}
|
|
542
|
-
this.sequenceIndex = 0, this.state =
|
|
752
|
+
this.sequenceIndex = 0, this.state = d.InTagName, this.stateInTagName(u);
|
|
543
753
|
}
|
|
544
754
|
/** Look for an end tag. For <title> tags, also decode entities. */
|
|
545
755
|
stateInSpecialTag(u) {
|
|
546
756
|
if (this.sequenceIndex === this.currentSequence.length) {
|
|
547
|
-
if (u ===
|
|
757
|
+
if (u === h.Gt || _(u)) {
|
|
548
758
|
const t = this.index - this.currentSequence.length;
|
|
549
759
|
if (this.sectionStart < t) {
|
|
550
760
|
const a = this.index;
|
|
@@ -555,10 +765,10 @@ class Ee {
|
|
|
555
765
|
}
|
|
556
766
|
this.sequenceIndex = 0;
|
|
557
767
|
}
|
|
558
|
-
(u | 32) === this.currentSequence[this.sequenceIndex] ? this.sequenceIndex += 1 : this.sequenceIndex === 0 ? this.currentSequence ===
|
|
768
|
+
(u | 32) === this.currentSequence[this.sequenceIndex] ? this.sequenceIndex += 1 : this.sequenceIndex === 0 ? this.currentSequence === T.TitleEnd ? this.decodeEntities && u === h.Amp && this.startEntity() : this.fastForwardTo(h.Lt) && (this.sequenceIndex = 1) : this.sequenceIndex = +(u === h.Lt);
|
|
559
769
|
}
|
|
560
770
|
stateCDATASequence(u) {
|
|
561
|
-
u ===
|
|
771
|
+
u === T.Cdata[this.sequenceIndex] ? ++this.sequenceIndex === T.Cdata.length && (this.state = d.InCommentLike, this.currentSequence = T.CdataEnd, this.sequenceIndex = 0, this.sectionStart = this.index + 1) : (this.sequenceIndex = 0, this.state = d.InDeclaration, this.stateInDeclaration(u));
|
|
562
772
|
}
|
|
563
773
|
/**
|
|
564
774
|
* When we wait for one specific character, we can speed things up
|
|
@@ -581,7 +791,7 @@ class Ee {
|
|
|
581
791
|
* - All characters but the start character of the sequence can be skipped.
|
|
582
792
|
*/
|
|
583
793
|
stateInCommentLike(u) {
|
|
584
|
-
u === this.currentSequence[this.sequenceIndex] ? ++this.sequenceIndex === this.currentSequence.length && (this.currentSequence ===
|
|
794
|
+
u === this.currentSequence[this.sequenceIndex] ? ++this.sequenceIndex === this.currentSequence.length && (this.currentSequence === T.CdataEnd ? this.cbs.oncdata(this.sectionStart, this.index, 2) : this.cbs.oncomment(this.sectionStart, this.index, 2), this.sequenceIndex = 0, this.sectionStart = this.index + 1, this.state = d.Text) : this.sequenceIndex === 0 ? this.fastForwardTo(this.currentSequence[0]) && (this.sequenceIndex = 1) : u !== this.currentSequence[this.sequenceIndex - 1] && (this.sequenceIndex = 0);
|
|
585
795
|
}
|
|
586
796
|
/**
|
|
587
797
|
* HTML only allows ASCII alpha characters (a-z and A-Z) at the beginning of a tag name.
|
|
@@ -590,99 +800,99 @@ class Ee {
|
|
|
590
800
|
* We allow anything that wouldn't end the tag.
|
|
591
801
|
*/
|
|
592
802
|
isTagStartChar(u) {
|
|
593
|
-
return this.xmlMode ? !
|
|
803
|
+
return this.xmlMode ? !Z(u) : Te(u);
|
|
594
804
|
}
|
|
595
805
|
startSpecial(u, t) {
|
|
596
|
-
this.isSpecial = !0, this.currentSequence = u, this.sequenceIndex = t, this.state =
|
|
806
|
+
this.isSpecial = !0, this.currentSequence = u, this.sequenceIndex = t, this.state = d.SpecialStartSequence;
|
|
597
807
|
}
|
|
598
808
|
stateBeforeTagName(u) {
|
|
599
|
-
if (u ===
|
|
600
|
-
this.state =
|
|
601
|
-
else if (u ===
|
|
602
|
-
this.state =
|
|
809
|
+
if (u === h.ExclamationMark)
|
|
810
|
+
this.state = d.BeforeDeclaration, this.sectionStart = this.index + 1;
|
|
811
|
+
else if (u === h.Questionmark)
|
|
812
|
+
this.state = d.InProcessingInstruction, this.sectionStart = this.index + 1;
|
|
603
813
|
else if (this.isTagStartChar(u)) {
|
|
604
814
|
const t = u | 32;
|
|
605
|
-
this.sectionStart = this.index, this.xmlMode ? this.state =
|
|
606
|
-
} else u ===
|
|
815
|
+
this.sectionStart = this.index, this.xmlMode ? this.state = d.InTagName : t === T.ScriptEnd[2] ? this.state = d.BeforeSpecialS : t === T.TitleEnd[2] || t === T.XmpEnd[2] ? this.state = d.BeforeSpecialT : this.state = d.InTagName;
|
|
816
|
+
} else u === h.Slash ? this.state = d.BeforeClosingTagName : (this.state = d.Text, this.stateText(u));
|
|
607
817
|
}
|
|
608
818
|
stateInTagName(u) {
|
|
609
|
-
|
|
819
|
+
Z(u) && (this.cbs.onopentagname(this.sectionStart, this.index), this.sectionStart = -1, this.state = d.BeforeAttributeName, this.stateBeforeAttributeName(u));
|
|
610
820
|
}
|
|
611
821
|
stateBeforeClosingTagName(u) {
|
|
612
|
-
_(u) || (u ===
|
|
822
|
+
_(u) || (u === h.Gt ? this.state = d.Text : (this.state = this.isTagStartChar(u) ? d.InClosingTagName : d.InSpecialComment, this.sectionStart = this.index));
|
|
613
823
|
}
|
|
614
824
|
stateInClosingTagName(u) {
|
|
615
|
-
(u ===
|
|
825
|
+
(u === h.Gt || _(u)) && (this.cbs.onclosetag(this.sectionStart, this.index), this.sectionStart = -1, this.state = d.AfterClosingTagName, this.stateAfterClosingTagName(u));
|
|
616
826
|
}
|
|
617
827
|
stateAfterClosingTagName(u) {
|
|
618
|
-
(u ===
|
|
828
|
+
(u === h.Gt || this.fastForwardTo(h.Gt)) && (this.state = d.Text, this.sectionStart = this.index + 1);
|
|
619
829
|
}
|
|
620
830
|
stateBeforeAttributeName(u) {
|
|
621
|
-
u ===
|
|
831
|
+
u === h.Gt ? (this.cbs.onopentagend(this.index), this.isSpecial ? (this.state = d.InSpecialTag, this.sequenceIndex = 0) : this.state = d.Text, this.sectionStart = this.index + 1) : u === h.Slash ? this.state = d.InSelfClosingTag : _(u) || (this.state = d.InAttributeName, this.sectionStart = this.index);
|
|
622
832
|
}
|
|
623
833
|
stateInSelfClosingTag(u) {
|
|
624
|
-
u ===
|
|
834
|
+
u === h.Gt ? (this.cbs.onselfclosingtag(this.index), this.state = d.Text, this.sectionStart = this.index + 1, this.isSpecial = !1) : _(u) || (this.state = d.BeforeAttributeName, this.stateBeforeAttributeName(u));
|
|
625
835
|
}
|
|
626
836
|
stateInAttributeName(u) {
|
|
627
|
-
(u ===
|
|
837
|
+
(u === h.Eq || Z(u)) && (this.cbs.onattribname(this.sectionStart, this.index), this.sectionStart = this.index, this.state = d.AfterAttributeName, this.stateAfterAttributeName(u));
|
|
628
838
|
}
|
|
629
839
|
stateAfterAttributeName(u) {
|
|
630
|
-
u ===
|
|
840
|
+
u === h.Eq ? this.state = d.BeforeAttributeValue : u === h.Slash || u === h.Gt ? (this.cbs.onattribend(L.NoValue, this.sectionStart), this.sectionStart = -1, this.state = d.BeforeAttributeName, this.stateBeforeAttributeName(u)) : _(u) || (this.cbs.onattribend(L.NoValue, this.sectionStart), this.state = d.InAttributeName, this.sectionStart = this.index);
|
|
631
841
|
}
|
|
632
842
|
stateBeforeAttributeValue(u) {
|
|
633
|
-
u ===
|
|
843
|
+
u === h.DoubleQuote ? (this.state = d.InAttributeValueDq, this.sectionStart = this.index + 1) : u === h.SingleQuote ? (this.state = d.InAttributeValueSq, this.sectionStart = this.index + 1) : _(u) || (this.sectionStart = this.index, this.state = d.InAttributeValueNq, this.stateInAttributeValueNoQuotes(u));
|
|
634
844
|
}
|
|
635
845
|
handleInAttributeValue(u, t) {
|
|
636
|
-
u === t || !this.decodeEntities && this.fastForwardTo(t) ? (this.cbs.onattribdata(this.sectionStart, this.index), this.sectionStart = -1, this.cbs.onattribend(t ===
|
|
846
|
+
u === t || !this.decodeEntities && this.fastForwardTo(t) ? (this.cbs.onattribdata(this.sectionStart, this.index), this.sectionStart = -1, this.cbs.onattribend(t === h.DoubleQuote ? L.Double : L.Single, this.index + 1), this.state = d.BeforeAttributeName) : this.decodeEntities && u === h.Amp && this.startEntity();
|
|
637
847
|
}
|
|
638
848
|
stateInAttributeValueDoubleQuotes(u) {
|
|
639
|
-
this.handleInAttributeValue(u,
|
|
849
|
+
this.handleInAttributeValue(u, h.DoubleQuote);
|
|
640
850
|
}
|
|
641
851
|
stateInAttributeValueSingleQuotes(u) {
|
|
642
|
-
this.handleInAttributeValue(u,
|
|
852
|
+
this.handleInAttributeValue(u, h.SingleQuote);
|
|
643
853
|
}
|
|
644
854
|
stateInAttributeValueNoQuotes(u) {
|
|
645
|
-
_(u) || u ===
|
|
855
|
+
_(u) || u === h.Gt ? (this.cbs.onattribdata(this.sectionStart, this.index), this.sectionStart = -1, this.cbs.onattribend(L.Unquoted, this.index), this.state = d.BeforeAttributeName, this.stateBeforeAttributeName(u)) : this.decodeEntities && u === h.Amp && this.startEntity();
|
|
646
856
|
}
|
|
647
857
|
stateBeforeDeclaration(u) {
|
|
648
|
-
u ===
|
|
858
|
+
u === h.OpeningSquareBracket ? (this.state = d.CDATASequence, this.sequenceIndex = 0) : this.state = u === h.Dash ? d.BeforeComment : d.InDeclaration;
|
|
649
859
|
}
|
|
650
860
|
stateInDeclaration(u) {
|
|
651
|
-
(u ===
|
|
861
|
+
(u === h.Gt || this.fastForwardTo(h.Gt)) && (this.cbs.ondeclaration(this.sectionStart, this.index), this.state = d.Text, this.sectionStart = this.index + 1);
|
|
652
862
|
}
|
|
653
863
|
stateInProcessingInstruction(u) {
|
|
654
|
-
(u ===
|
|
864
|
+
(u === h.Gt || this.fastForwardTo(h.Gt)) && (this.cbs.onprocessinginstruction(this.sectionStart, this.index), this.state = d.Text, this.sectionStart = this.index + 1);
|
|
655
865
|
}
|
|
656
866
|
stateBeforeComment(u) {
|
|
657
|
-
u ===
|
|
867
|
+
u === h.Dash ? (this.state = d.InCommentLike, this.currentSequence = T.CommentEnd, this.sequenceIndex = 2, this.sectionStart = this.index + 1) : this.state = d.InDeclaration;
|
|
658
868
|
}
|
|
659
869
|
stateInSpecialComment(u) {
|
|
660
|
-
(u ===
|
|
870
|
+
(u === h.Gt || this.fastForwardTo(h.Gt)) && (this.cbs.oncomment(this.sectionStart, this.index, 0), this.state = d.Text, this.sectionStart = this.index + 1);
|
|
661
871
|
}
|
|
662
872
|
stateBeforeSpecialS(u) {
|
|
663
873
|
const t = u | 32;
|
|
664
|
-
t ===
|
|
874
|
+
t === T.ScriptEnd[3] ? this.startSpecial(T.ScriptEnd, 4) : t === T.StyleEnd[3] ? this.startSpecial(T.StyleEnd, 4) : (this.state = d.InTagName, this.stateInTagName(u));
|
|
665
875
|
}
|
|
666
876
|
stateBeforeSpecialT(u) {
|
|
667
877
|
switch (u | 32) {
|
|
668
|
-
case
|
|
669
|
-
this.startSpecial(
|
|
878
|
+
case T.TitleEnd[3]: {
|
|
879
|
+
this.startSpecial(T.TitleEnd, 4);
|
|
670
880
|
break;
|
|
671
881
|
}
|
|
672
|
-
case
|
|
673
|
-
this.startSpecial(
|
|
882
|
+
case T.TextareaEnd[3]: {
|
|
883
|
+
this.startSpecial(T.TextareaEnd, 4);
|
|
674
884
|
break;
|
|
675
885
|
}
|
|
676
|
-
case
|
|
677
|
-
this.startSpecial(
|
|
886
|
+
case T.XmpEnd[3]: {
|
|
887
|
+
this.startSpecial(T.XmpEnd, 4);
|
|
678
888
|
break;
|
|
679
889
|
}
|
|
680
890
|
default:
|
|
681
|
-
this.state =
|
|
891
|
+
this.state = d.InTagName, this.stateInTagName(u);
|
|
682
892
|
}
|
|
683
893
|
}
|
|
684
894
|
startEntity() {
|
|
685
|
-
this.baseState = this.state, this.state =
|
|
895
|
+
this.baseState = this.state, this.state = d.InEntity, this.entityStart = this.index, this.entityDecoder.startEntity(this.xmlMode ? C.Strict : this.baseState === d.Text || this.baseState === d.InSpecialTag ? C.Legacy : C.Attribute);
|
|
686
896
|
}
|
|
687
897
|
stateInEntity() {
|
|
688
898
|
const u = this.entityDecoder.write(this.buffer, this.index - this.offset);
|
|
@@ -692,7 +902,7 @@ class Ee {
|
|
|
692
902
|
* Remove data that has already been consumed from the buffer.
|
|
693
903
|
*/
|
|
694
904
|
cleanup() {
|
|
695
|
-
this.running && this.sectionStart !== this.index && (this.state ===
|
|
905
|
+
this.running && this.sectionStart !== this.index && (this.state === d.Text || this.state === d.InSpecialTag && this.sequenceIndex === 0 ? (this.cbs.ontext(this.sectionStart, this.index), this.sectionStart = this.index) : (this.state === d.InAttributeValueDq || this.state === d.InAttributeValueSq || this.state === d.InAttributeValueNq) && (this.cbs.onattribdata(this.sectionStart, this.index), this.sectionStart = this.index));
|
|
696
906
|
}
|
|
697
907
|
shouldContinue() {
|
|
698
908
|
return this.index < this.buffer.length + this.offset && this.running;
|
|
@@ -706,107 +916,107 @@ class Ee {
|
|
|
706
916
|
for (; this.shouldContinue(); ) {
|
|
707
917
|
const u = this.buffer.charCodeAt(this.index - this.offset);
|
|
708
918
|
switch (this.state) {
|
|
709
|
-
case
|
|
919
|
+
case d.Text: {
|
|
710
920
|
this.stateText(u);
|
|
711
921
|
break;
|
|
712
922
|
}
|
|
713
|
-
case
|
|
923
|
+
case d.SpecialStartSequence: {
|
|
714
924
|
this.stateSpecialStartSequence(u);
|
|
715
925
|
break;
|
|
716
926
|
}
|
|
717
|
-
case
|
|
927
|
+
case d.InSpecialTag: {
|
|
718
928
|
this.stateInSpecialTag(u);
|
|
719
929
|
break;
|
|
720
930
|
}
|
|
721
|
-
case
|
|
931
|
+
case d.CDATASequence: {
|
|
722
932
|
this.stateCDATASequence(u);
|
|
723
933
|
break;
|
|
724
934
|
}
|
|
725
|
-
case
|
|
935
|
+
case d.InAttributeValueDq: {
|
|
726
936
|
this.stateInAttributeValueDoubleQuotes(u);
|
|
727
937
|
break;
|
|
728
938
|
}
|
|
729
|
-
case
|
|
939
|
+
case d.InAttributeName: {
|
|
730
940
|
this.stateInAttributeName(u);
|
|
731
941
|
break;
|
|
732
942
|
}
|
|
733
|
-
case
|
|
943
|
+
case d.InCommentLike: {
|
|
734
944
|
this.stateInCommentLike(u);
|
|
735
945
|
break;
|
|
736
946
|
}
|
|
737
|
-
case
|
|
947
|
+
case d.InSpecialComment: {
|
|
738
948
|
this.stateInSpecialComment(u);
|
|
739
949
|
break;
|
|
740
950
|
}
|
|
741
|
-
case
|
|
951
|
+
case d.BeforeAttributeName: {
|
|
742
952
|
this.stateBeforeAttributeName(u);
|
|
743
953
|
break;
|
|
744
954
|
}
|
|
745
|
-
case
|
|
955
|
+
case d.InTagName: {
|
|
746
956
|
this.stateInTagName(u);
|
|
747
957
|
break;
|
|
748
958
|
}
|
|
749
|
-
case
|
|
959
|
+
case d.InClosingTagName: {
|
|
750
960
|
this.stateInClosingTagName(u);
|
|
751
961
|
break;
|
|
752
962
|
}
|
|
753
|
-
case
|
|
963
|
+
case d.BeforeTagName: {
|
|
754
964
|
this.stateBeforeTagName(u);
|
|
755
965
|
break;
|
|
756
966
|
}
|
|
757
|
-
case
|
|
967
|
+
case d.AfterAttributeName: {
|
|
758
968
|
this.stateAfterAttributeName(u);
|
|
759
969
|
break;
|
|
760
970
|
}
|
|
761
|
-
case
|
|
971
|
+
case d.InAttributeValueSq: {
|
|
762
972
|
this.stateInAttributeValueSingleQuotes(u);
|
|
763
973
|
break;
|
|
764
974
|
}
|
|
765
|
-
case
|
|
975
|
+
case d.BeforeAttributeValue: {
|
|
766
976
|
this.stateBeforeAttributeValue(u);
|
|
767
977
|
break;
|
|
768
978
|
}
|
|
769
|
-
case
|
|
979
|
+
case d.BeforeClosingTagName: {
|
|
770
980
|
this.stateBeforeClosingTagName(u);
|
|
771
981
|
break;
|
|
772
982
|
}
|
|
773
|
-
case
|
|
983
|
+
case d.AfterClosingTagName: {
|
|
774
984
|
this.stateAfterClosingTagName(u);
|
|
775
985
|
break;
|
|
776
986
|
}
|
|
777
|
-
case
|
|
987
|
+
case d.BeforeSpecialS: {
|
|
778
988
|
this.stateBeforeSpecialS(u);
|
|
779
989
|
break;
|
|
780
990
|
}
|
|
781
|
-
case
|
|
991
|
+
case d.BeforeSpecialT: {
|
|
782
992
|
this.stateBeforeSpecialT(u);
|
|
783
993
|
break;
|
|
784
994
|
}
|
|
785
|
-
case
|
|
995
|
+
case d.InAttributeValueNq: {
|
|
786
996
|
this.stateInAttributeValueNoQuotes(u);
|
|
787
997
|
break;
|
|
788
998
|
}
|
|
789
|
-
case
|
|
999
|
+
case d.InSelfClosingTag: {
|
|
790
1000
|
this.stateInSelfClosingTag(u);
|
|
791
1001
|
break;
|
|
792
1002
|
}
|
|
793
|
-
case
|
|
1003
|
+
case d.InDeclaration: {
|
|
794
1004
|
this.stateInDeclaration(u);
|
|
795
1005
|
break;
|
|
796
1006
|
}
|
|
797
|
-
case
|
|
1007
|
+
case d.BeforeDeclaration: {
|
|
798
1008
|
this.stateBeforeDeclaration(u);
|
|
799
1009
|
break;
|
|
800
1010
|
}
|
|
801
|
-
case
|
|
1011
|
+
case d.BeforeComment: {
|
|
802
1012
|
this.stateBeforeComment(u);
|
|
803
1013
|
break;
|
|
804
1014
|
}
|
|
805
|
-
case
|
|
1015
|
+
case d.InProcessingInstruction: {
|
|
806
1016
|
this.stateInProcessingInstruction(u);
|
|
807
1017
|
break;
|
|
808
1018
|
}
|
|
809
|
-
case
|
|
1019
|
+
case d.InEntity: {
|
|
810
1020
|
this.stateInEntity();
|
|
811
1021
|
break;
|
|
812
1022
|
}
|
|
@@ -816,18 +1026,18 @@ class Ee {
|
|
|
816
1026
|
this.cleanup();
|
|
817
1027
|
}
|
|
818
1028
|
finish() {
|
|
819
|
-
this.state ===
|
|
1029
|
+
this.state === d.InEntity && (this.entityDecoder.end(), this.state = this.baseState), this.handleTrailingData(), this.cbs.onend();
|
|
820
1030
|
}
|
|
821
1031
|
/** Handle any trailing data. */
|
|
822
1032
|
handleTrailingData() {
|
|
823
1033
|
const u = this.buffer.length + this.offset;
|
|
824
|
-
this.sectionStart >= u || (this.state ===
|
|
1034
|
+
this.sectionStart >= u || (this.state === d.InCommentLike ? this.currentSequence === T.CdataEnd ? this.cbs.oncdata(this.sectionStart, u, 0) : this.cbs.oncomment(this.sectionStart, u, 0) : this.state === d.InTagName || this.state === d.BeforeAttributeName || this.state === d.BeforeAttributeValue || this.state === d.AfterAttributeName || this.state === d.InAttributeName || this.state === d.InAttributeValueSq || this.state === d.InAttributeValueDq || this.state === d.InAttributeValueNq || this.state === d.InClosingTagName || this.cbs.ontext(this.sectionStart, u));
|
|
825
1035
|
}
|
|
826
1036
|
emitCodePoint(u, t) {
|
|
827
|
-
this.baseState !==
|
|
1037
|
+
this.baseState !== d.Text && this.baseState !== d.InSpecialTag ? (this.sectionStart < this.entityStart && this.cbs.onattribdata(this.sectionStart, this.entityStart), this.sectionStart = this.entityStart + t, this.index = this.sectionStart - 1, this.cbs.onattribentity(u)) : (this.sectionStart < this.entityStart && this.cbs.ontext(this.sectionStart, this.entityStart), this.sectionStart = this.entityStart + t, this.index = this.sectionStart - 1, this.cbs.ontextentity(u, this.sectionStart));
|
|
828
1038
|
}
|
|
829
1039
|
}
|
|
830
|
-
const
|
|
1040
|
+
const H = /* @__PURE__ */ new Set([
|
|
831
1041
|
"input",
|
|
832
1042
|
"option",
|
|
833
1043
|
"optgroup",
|
|
@@ -835,55 +1045,55 @@ const U = /* @__PURE__ */ new Set([
|
|
|
835
1045
|
"button",
|
|
836
1046
|
"datalist",
|
|
837
1047
|
"textarea"
|
|
838
|
-
]),
|
|
1048
|
+
]), E = /* @__PURE__ */ new Set(["p"]), Su = /* @__PURE__ */ new Set(["thead", "tbody"]), Iu = /* @__PURE__ */ new Set(["dd", "dt"]), Eu = /* @__PURE__ */ new Set(["rt", "rp"]), ke = /* @__PURE__ */ new Map([
|
|
839
1049
|
["tr", /* @__PURE__ */ new Set(["tr", "th", "td"])],
|
|
840
1050
|
["th", /* @__PURE__ */ new Set(["th"])],
|
|
841
1051
|
["td", /* @__PURE__ */ new Set(["thead", "th", "td"])],
|
|
842
1052
|
["body", /* @__PURE__ */ new Set(["head", "link", "script"])],
|
|
843
1053
|
["li", /* @__PURE__ */ new Set(["li"])],
|
|
844
|
-
["p",
|
|
845
|
-
["h1",
|
|
846
|
-
["h2",
|
|
847
|
-
["h3",
|
|
848
|
-
["h4",
|
|
849
|
-
["h5",
|
|
850
|
-
["h6",
|
|
851
|
-
["select",
|
|
852
|
-
["input",
|
|
853
|
-
["output",
|
|
854
|
-
["button",
|
|
855
|
-
["datalist",
|
|
856
|
-
["textarea",
|
|
1054
|
+
["p", E],
|
|
1055
|
+
["h1", E],
|
|
1056
|
+
["h2", E],
|
|
1057
|
+
["h3", E],
|
|
1058
|
+
["h4", E],
|
|
1059
|
+
["h5", E],
|
|
1060
|
+
["h6", E],
|
|
1061
|
+
["select", H],
|
|
1062
|
+
["input", H],
|
|
1063
|
+
["output", H],
|
|
1064
|
+
["button", H],
|
|
1065
|
+
["datalist", H],
|
|
1066
|
+
["textarea", H],
|
|
857
1067
|
["option", /* @__PURE__ */ new Set(["option"])],
|
|
858
1068
|
["optgroup", /* @__PURE__ */ new Set(["optgroup", "option"])],
|
|
859
1069
|
["dd", Iu],
|
|
860
1070
|
["dt", Iu],
|
|
861
|
-
["address",
|
|
862
|
-
["article",
|
|
863
|
-
["aside",
|
|
864
|
-
["blockquote",
|
|
865
|
-
["details",
|
|
866
|
-
["div",
|
|
867
|
-
["dl",
|
|
868
|
-
["fieldset",
|
|
869
|
-
["figcaption",
|
|
870
|
-
["figure",
|
|
871
|
-
["footer",
|
|
872
|
-
["form",
|
|
873
|
-
["header",
|
|
874
|
-
["hr",
|
|
875
|
-
["main",
|
|
876
|
-
["nav",
|
|
877
|
-
["ol",
|
|
878
|
-
["pre",
|
|
879
|
-
["section",
|
|
880
|
-
["table",
|
|
881
|
-
["ul",
|
|
1071
|
+
["address", E],
|
|
1072
|
+
["article", E],
|
|
1073
|
+
["aside", E],
|
|
1074
|
+
["blockquote", E],
|
|
1075
|
+
["details", E],
|
|
1076
|
+
["div", E],
|
|
1077
|
+
["dl", E],
|
|
1078
|
+
["fieldset", E],
|
|
1079
|
+
["figcaption", E],
|
|
1080
|
+
["figure", E],
|
|
1081
|
+
["footer", E],
|
|
1082
|
+
["form", E],
|
|
1083
|
+
["header", E],
|
|
1084
|
+
["hr", E],
|
|
1085
|
+
["main", E],
|
|
1086
|
+
["nav", E],
|
|
1087
|
+
["ol", E],
|
|
1088
|
+
["pre", E],
|
|
1089
|
+
["section", E],
|
|
1090
|
+
["table", E],
|
|
1091
|
+
["ul", E],
|
|
882
1092
|
["rt", Eu],
|
|
883
1093
|
["rp", Eu],
|
|
884
1094
|
["tbody", Su],
|
|
885
1095
|
["tfoot", Su]
|
|
886
|
-
]),
|
|
1096
|
+
]), Ve = /* @__PURE__ */ new Set([
|
|
887
1097
|
"area",
|
|
888
1098
|
"base",
|
|
889
1099
|
"basefont",
|
|
@@ -903,7 +1113,7 @@ const U = /* @__PURE__ */ new Set([
|
|
|
903
1113
|
"source",
|
|
904
1114
|
"track",
|
|
905
1115
|
"wbr"
|
|
906
|
-
]),
|
|
1116
|
+
]), vu = /* @__PURE__ */ new Set(["math", "svg"]), wu = /* @__PURE__ */ new Set([
|
|
907
1117
|
"mi",
|
|
908
1118
|
"mo",
|
|
909
1119
|
"mn",
|
|
@@ -913,18 +1123,18 @@ const U = /* @__PURE__ */ new Set([
|
|
|
913
1123
|
"foreignobject",
|
|
914
1124
|
"desc",
|
|
915
1125
|
"title"
|
|
916
|
-
]),
|
|
917
|
-
class
|
|
1126
|
+
]), qe = /\s|\//;
|
|
1127
|
+
class Re {
|
|
918
1128
|
constructor(u, t = {}) {
|
|
919
|
-
var a, i,
|
|
920
|
-
this.options = t, this.startIndex = 0, this.endIndex = 0, this.openTagStart = 0, this.tagname = "", this.attribname = "", this.attribvalue = "", this.attribs = null, this.stack = [], this.buffers = [], this.bufferOffset = 0, this.writeIndex = 0, this.ended = !1, this.cbs = u ?? {}, this.htmlMode = !this.options.xmlMode, this.lowerCaseTagNames = (a = t.lowerCaseTags) !== null && a !== void 0 ? a : this.htmlMode, this.lowerCaseAttributeNames = (i = t.lowerCaseAttributeNames) !== null && i !== void 0 ? i : this.htmlMode, this.recognizeSelfClosing = (
|
|
1129
|
+
var a, i, s, r, n, o;
|
|
1130
|
+
this.options = t, this.startIndex = 0, this.endIndex = 0, this.openTagStart = 0, this.tagname = "", this.attribname = "", this.attribvalue = "", this.attribs = null, this.stack = [], this.buffers = [], this.bufferOffset = 0, this.writeIndex = 0, this.ended = !1, this.cbs = u ?? {}, this.htmlMode = !this.options.xmlMode, this.lowerCaseTagNames = (a = t.lowerCaseTags) !== null && a !== void 0 ? a : this.htmlMode, this.lowerCaseAttributeNames = (i = t.lowerCaseAttributeNames) !== null && i !== void 0 ? i : this.htmlMode, this.recognizeSelfClosing = (s = t.recognizeSelfClosing) !== null && s !== void 0 ? s : !this.htmlMode, this.tokenizer = new ((r = t.Tokenizer) !== null && r !== void 0 ? r : Ne)(this.options, this), this.foreignContext = [!this.htmlMode], (o = (n = this.cbs).onparserinit) === null || o === void 0 || o.call(n, this);
|
|
921
1131
|
}
|
|
922
1132
|
// Tokenizer event handlers
|
|
923
1133
|
/** @internal */
|
|
924
1134
|
ontext(u, t) {
|
|
925
1135
|
var a, i;
|
|
926
|
-
const
|
|
927
|
-
this.endIndex = t - 1, (i = (a = this.cbs).ontext) === null || i === void 0 || i.call(a,
|
|
1136
|
+
const s = this.getSlice(u, t);
|
|
1137
|
+
this.endIndex = t - 1, (i = (a = this.cbs).ontext) === null || i === void 0 || i.call(a, s), this.startIndex = t;
|
|
928
1138
|
}
|
|
929
1139
|
/** @internal */
|
|
930
1140
|
ontextentity(u, t) {
|
|
@@ -936,7 +1146,7 @@ class Te {
|
|
|
936
1146
|
* to specify your own additional void elements.
|
|
937
1147
|
*/
|
|
938
1148
|
isVoidElement(u) {
|
|
939
|
-
return this.htmlMode &&
|
|
1149
|
+
return this.htmlMode && Ve.has(u);
|
|
940
1150
|
}
|
|
941
1151
|
/** @internal */
|
|
942
1152
|
onopentagname(u, t) {
|
|
@@ -945,15 +1155,15 @@ class Te {
|
|
|
945
1155
|
this.lowerCaseTagNames && (a = a.toLowerCase()), this.emitOpenTag(a);
|
|
946
1156
|
}
|
|
947
1157
|
emitOpenTag(u) {
|
|
948
|
-
var t, a, i,
|
|
1158
|
+
var t, a, i, s;
|
|
949
1159
|
this.openTagStart = this.startIndex, this.tagname = u;
|
|
950
|
-
const
|
|
951
|
-
if (
|
|
952
|
-
for (; this.stack.length > 0 &&
|
|
1160
|
+
const r = this.htmlMode && ke.get(u);
|
|
1161
|
+
if (r)
|
|
1162
|
+
for (; this.stack.length > 0 && r.has(this.stack[0]); ) {
|
|
953
1163
|
const n = this.stack.shift();
|
|
954
1164
|
(a = (t = this.cbs).onclosetag) === null || a === void 0 || a.call(t, n, !0);
|
|
955
1165
|
}
|
|
956
|
-
this.isVoidElement(u) || (this.stack.unshift(u), this.htmlMode && (
|
|
1166
|
+
this.isVoidElement(u) || (this.stack.unshift(u), this.htmlMode && (vu.has(u) ? this.foreignContext.unshift(!0) : wu.has(u) && this.foreignContext.unshift(!1))), (s = (i = this.cbs).onopentagname) === null || s === void 0 || s.call(i, u), this.cbs.onopentag && (this.attribs = {});
|
|
957
1167
|
}
|
|
958
1168
|
endOpenTag(u) {
|
|
959
1169
|
var t, a;
|
|
@@ -965,17 +1175,17 @@ class Te {
|
|
|
965
1175
|
}
|
|
966
1176
|
/** @internal */
|
|
967
1177
|
onclosetag(u, t) {
|
|
968
|
-
var a, i,
|
|
1178
|
+
var a, i, s, r, n, o, c, l;
|
|
969
1179
|
this.endIndex = t;
|
|
970
1180
|
let f = this.getSlice(u, t);
|
|
971
|
-
if (this.lowerCaseTagNames && (f = f.toLowerCase()), this.htmlMode && (
|
|
972
|
-
this.htmlMode && f === "br" && ((
|
|
1181
|
+
if (this.lowerCaseTagNames && (f = f.toLowerCase()), this.htmlMode && (vu.has(f) || wu.has(f)) && this.foreignContext.shift(), this.isVoidElement(f))
|
|
1182
|
+
this.htmlMode && f === "br" && ((r = (s = this.cbs).onopentagname) === null || r === void 0 || r.call(s, "br"), (o = (n = this.cbs).onopentag) === null || o === void 0 || o.call(n, "br", {}, !0), (l = (c = this.cbs).onclosetag) === null || l === void 0 || l.call(c, "br", !1));
|
|
973
1183
|
else {
|
|
974
|
-
const
|
|
975
|
-
if (
|
|
976
|
-
for (let
|
|
977
|
-
const
|
|
978
|
-
(i = (a = this.cbs).onclosetag) === null || i === void 0 || i.call(a,
|
|
1184
|
+
const m = this.stack.indexOf(f);
|
|
1185
|
+
if (m !== -1)
|
|
1186
|
+
for (let p = 0; p <= m; p++) {
|
|
1187
|
+
const v = this.stack.shift();
|
|
1188
|
+
(i = (a = this.cbs).onclosetag) === null || i === void 0 || i.call(a, v, p !== m);
|
|
979
1189
|
}
|
|
980
1190
|
else this.htmlMode && f === "p" && (this.emitOpenTag("p"), this.closeCurrentTag(!0));
|
|
981
1191
|
}
|
|
@@ -1010,7 +1220,7 @@ class Te {
|
|
|
1010
1220
|
this.endIndex = t, (i = (a = this.cbs).onattribute) === null || i === void 0 || i.call(a, this.attribname, this.attribvalue, u === L.Double ? '"' : u === L.Single ? "'" : u === L.NoValue ? void 0 : null), this.attribs && !Object.prototype.hasOwnProperty.call(this.attribs, this.attribname) && (this.attribs[this.attribname] = this.attribvalue), this.attribvalue = "";
|
|
1011
1221
|
}
|
|
1012
1222
|
getInstructionName(u) {
|
|
1013
|
-
const t = u.search(
|
|
1223
|
+
const t = u.search(qe);
|
|
1014
1224
|
let a = t < 0 ? u : u.substr(0, t);
|
|
1015
1225
|
return this.lowerCaseTagNames && (a = a.toLowerCase()), a;
|
|
1016
1226
|
}
|
|
@@ -1036,15 +1246,15 @@ class Te {
|
|
|
1036
1246
|
}
|
|
1037
1247
|
/** @internal */
|
|
1038
1248
|
oncomment(u, t, a) {
|
|
1039
|
-
var i,
|
|
1040
|
-
this.endIndex = t, (
|
|
1249
|
+
var i, s, r, n;
|
|
1250
|
+
this.endIndex = t, (s = (i = this.cbs).oncomment) === null || s === void 0 || s.call(i, this.getSlice(u, t - a)), (n = (r = this.cbs).oncommentend) === null || n === void 0 || n.call(r), this.startIndex = t + 1;
|
|
1041
1251
|
}
|
|
1042
1252
|
/** @internal */
|
|
1043
1253
|
oncdata(u, t, a) {
|
|
1044
|
-
var i,
|
|
1254
|
+
var i, s, r, n, o, c, l, f, m, p;
|
|
1045
1255
|
this.endIndex = t;
|
|
1046
|
-
const
|
|
1047
|
-
!this.htmlMode || this.options.recognizeCDATA ? ((
|
|
1256
|
+
const v = this.getSlice(u, t - a);
|
|
1257
|
+
!this.htmlMode || this.options.recognizeCDATA ? ((s = (i = this.cbs).oncdatastart) === null || s === void 0 || s.call(i), (n = (r = this.cbs).ontext) === null || n === void 0 || n.call(r, v), (c = (o = this.cbs).oncdataend) === null || c === void 0 || c.call(o)) : ((f = (l = this.cbs).oncomment) === null || f === void 0 || f.call(l, `[CDATA[${v}]]`), (p = (m = this.cbs).oncommentend) === null || p === void 0 || p.call(m)), this.startIndex = t + 1;
|
|
1048
1258
|
}
|
|
1049
1259
|
/** @internal */
|
|
1050
1260
|
onend() {
|
|
@@ -1145,134 +1355,137 @@ class Te {
|
|
|
1145
1355
|
function Au(e, u = "web") {
|
|
1146
1356
|
const t = { name: "", children: [] }, a = [t];
|
|
1147
1357
|
let i = "";
|
|
1148
|
-
const
|
|
1358
|
+
const s = new Re(
|
|
1149
1359
|
{
|
|
1150
|
-
onopentag: (
|
|
1151
|
-
const
|
|
1152
|
-
i.trim() && (Array.isArray(
|
|
1360
|
+
onopentag: (r, n, o) => {
|
|
1361
|
+
const c = a[a.length - 1];
|
|
1362
|
+
i.trim() && (Array.isArray(c.children) ? c.children.push({
|
|
1153
1363
|
name: "span",
|
|
1154
1364
|
children: i.trim()
|
|
1155
|
-
}) :
|
|
1156
|
-
const
|
|
1157
|
-
(
|
|
1158
|
-
let [
|
|
1159
|
-
return
|
|
1365
|
+
}) : c.children = i.trim(), i = "");
|
|
1366
|
+
const l = Object.entries(n || {}).reduce(
|
|
1367
|
+
(m, p) => {
|
|
1368
|
+
let [v = "", A = ""] = p;
|
|
1369
|
+
return v && (m[v] = A), m;
|
|
1160
1370
|
},
|
|
1161
1371
|
{}
|
|
1162
1372
|
);
|
|
1163
|
-
|
|
1373
|
+
l.style && (l.style = ju(l.style));
|
|
1164
1374
|
const f = {
|
|
1165
|
-
name:
|
|
1166
|
-
props:
|
|
1375
|
+
name: Ru(r, u),
|
|
1376
|
+
props: l
|
|
1167
1377
|
};
|
|
1168
|
-
Array.isArray(
|
|
1378
|
+
Array.isArray(c.children) ? c.children.push(f) : c.children ? c.children = [
|
|
1169
1379
|
{
|
|
1170
1380
|
name: "span",
|
|
1171
|
-
children:
|
|
1381
|
+
children: c.children
|
|
1172
1382
|
},
|
|
1173
1383
|
f
|
|
1174
|
-
] :
|
|
1384
|
+
] : c.children = [f], o || a.push(f);
|
|
1175
1385
|
},
|
|
1176
|
-
ontext: (
|
|
1177
|
-
const n =
|
|
1386
|
+
ontext: (r) => {
|
|
1387
|
+
const n = r.trim();
|
|
1178
1388
|
n && n !== '"' && (i += n);
|
|
1179
1389
|
},
|
|
1180
1390
|
onclosetag: () => {
|
|
1181
|
-
const
|
|
1182
|
-
i.trim() && (Array.isArray(
|
|
1391
|
+
const r = a.pop();
|
|
1392
|
+
i.trim() && (Array.isArray(r?.children) ? r.children.push({
|
|
1183
1393
|
name: "span",
|
|
1184
1394
|
children: i.trim()
|
|
1185
|
-
}) :
|
|
1395
|
+
}) : r && (r.children = i.trim()), i = "");
|
|
1186
1396
|
}
|
|
1187
1397
|
},
|
|
1188
1398
|
{ decodeEntities: !0 }
|
|
1189
1399
|
);
|
|
1190
|
-
return
|
|
1400
|
+
return s.write(e.replace(/\\"/g, '"')), s.end(), t.children || [];
|
|
1191
1401
|
}
|
|
1192
|
-
function
|
|
1402
|
+
function je(e, u) {
|
|
1193
1403
|
const a = {
|
|
1194
|
-
imports:
|
|
1404
|
+
imports: De(e),
|
|
1195
1405
|
emits: [],
|
|
1196
1406
|
errors: []
|
|
1197
|
-
}, i =
|
|
1198
|
-
return
|
|
1199
|
-
ExportDefaultDeclaration(
|
|
1200
|
-
const
|
|
1201
|
-
if (
|
|
1202
|
-
const n =
|
|
1407
|
+
}, i = W(e);
|
|
1408
|
+
return Y(i, {
|
|
1409
|
+
ExportDefaultDeclaration(s) {
|
|
1410
|
+
const r = s.node.declaration;
|
|
1411
|
+
if (r.type !== "CallExpression") return;
|
|
1412
|
+
const n = r.arguments[0];
|
|
1203
1413
|
if (n?.type !== "ObjectExpression") return;
|
|
1204
|
-
const
|
|
1414
|
+
const o = n.properties.filter(
|
|
1205
1415
|
(f) => f.type === "ObjectProperty"
|
|
1206
|
-
),
|
|
1416
|
+
), c = n.properties.filter(
|
|
1207
1417
|
(f) => f.type == "ObjectMethod"
|
|
1208
|
-
),
|
|
1418
|
+
), l = o.find(
|
|
1209
1419
|
(f) => f.key.name === "computed"
|
|
1210
1420
|
);
|
|
1211
|
-
|
|
1212
|
-
for (const f of
|
|
1421
|
+
l && (a.computed = Du(l.value), a.watchers = $e(l.value));
|
|
1422
|
+
for (const f of o)
|
|
1213
1423
|
switch (f.key.name) {
|
|
1214
1424
|
case "name":
|
|
1215
1425
|
a.name = f.value.value;
|
|
1216
1426
|
break;
|
|
1217
1427
|
case "methods":
|
|
1218
|
-
a.handlers =
|
|
1428
|
+
a.handlers = Fe(f.value), a.methods = Be(f.value), a.dataSources = _e(
|
|
1219
1429
|
f.value,
|
|
1220
1430
|
u
|
|
1221
1431
|
);
|
|
1222
1432
|
break;
|
|
1223
1433
|
case "watch":
|
|
1224
|
-
a.watch =
|
|
1434
|
+
a.watch = Oe(
|
|
1225
1435
|
f.value,
|
|
1226
1436
|
a.watchers
|
|
1227
1437
|
);
|
|
1228
1438
|
break;
|
|
1229
1439
|
case "props":
|
|
1230
|
-
a.props =
|
|
1440
|
+
a.props = Ue(f.value);
|
|
1231
1441
|
break;
|
|
1232
1442
|
case "inject":
|
|
1233
|
-
a.inject =
|
|
1443
|
+
a.inject = Ge(f.value);
|
|
1234
1444
|
break;
|
|
1235
1445
|
case "expose":
|
|
1236
|
-
a.expose =
|
|
1446
|
+
a.expose = We(f.value);
|
|
1447
|
+
break;
|
|
1448
|
+
case "directives":
|
|
1449
|
+
a.directives = Je(f.value);
|
|
1237
1450
|
break;
|
|
1238
1451
|
}
|
|
1239
|
-
for (const f of
|
|
1452
|
+
for (const f of c)
|
|
1240
1453
|
switch (f.key.name) {
|
|
1241
1454
|
case "setup":
|
|
1242
|
-
a.state =
|
|
1455
|
+
a.state = Le(f.body);
|
|
1243
1456
|
break;
|
|
1244
1457
|
}
|
|
1245
|
-
a.lifeCycles =
|
|
1458
|
+
a.lifeCycles = Me(c);
|
|
1246
1459
|
},
|
|
1247
|
-
CallExpression(
|
|
1248
|
-
const
|
|
1249
|
-
if (
|
|
1250
|
-
for (let n of
|
|
1251
|
-
a.emits?.find((
|
|
1460
|
+
CallExpression(s) {
|
|
1461
|
+
const r = He(s.node);
|
|
1462
|
+
if (r.length)
|
|
1463
|
+
for (let n of r)
|
|
1464
|
+
a.emits?.find((c) => c.name === n.name) || a.emits?.push(n);
|
|
1252
1465
|
}
|
|
1253
1466
|
}), a;
|
|
1254
1467
|
}
|
|
1255
|
-
function
|
|
1468
|
+
function De(e) {
|
|
1256
1469
|
const u = /import\s+{(.+?)}\s+from\s+['"](.+?)['"]/g, t = /import\s+(.+?)\s+from\s+['"](.+?)['"]/g, a = /^{(.+?)}$/, i = [];
|
|
1257
|
-
let
|
|
1258
|
-
const
|
|
1259
|
-
for (; (
|
|
1260
|
-
const n =
|
|
1470
|
+
let s;
|
|
1471
|
+
const r = e.replace(/\n/g, " ");
|
|
1472
|
+
for (; (s = u.exec(r)) !== null; ) {
|
|
1473
|
+
const n = s[2] === "@element-plus/icons-vue" ? "@vtj/icons" : s[2];
|
|
1261
1474
|
i.push({
|
|
1262
1475
|
from: n,
|
|
1263
|
-
imports:
|
|
1476
|
+
imports: s[1].split(",").map((o) => o.trim())
|
|
1264
1477
|
});
|
|
1265
1478
|
}
|
|
1266
|
-
for (; (
|
|
1267
|
-
const n =
|
|
1479
|
+
for (; (s = t.exec(r)) !== null; ) {
|
|
1480
|
+
const n = s[1], o = s[2];
|
|
1268
1481
|
n && !a.test(n) && i.push({
|
|
1269
|
-
from:
|
|
1482
|
+
from: o,
|
|
1270
1483
|
imports: n
|
|
1271
1484
|
});
|
|
1272
1485
|
}
|
|
1273
1486
|
return i;
|
|
1274
1487
|
}
|
|
1275
|
-
function
|
|
1488
|
+
function Ce(e) {
|
|
1276
1489
|
for (const u of e.body)
|
|
1277
1490
|
if (u.type === "VariableDeclaration" && u.kind == "const") {
|
|
1278
1491
|
const { id: t, init: a } = u.declarations[0];
|
|
@@ -1281,114 +1494,114 @@ function Ve(e) {
|
|
|
1281
1494
|
}
|
|
1282
1495
|
return null;
|
|
1283
1496
|
}
|
|
1284
|
-
function
|
|
1285
|
-
const u =
|
|
1497
|
+
function Le(e) {
|
|
1498
|
+
const u = Ce(e);
|
|
1286
1499
|
if (!u) return {};
|
|
1287
1500
|
const t = {};
|
|
1288
1501
|
for (const a of u.properties) {
|
|
1289
|
-
const { key: i, value:
|
|
1502
|
+
const { key: i, value: s } = a;
|
|
1290
1503
|
if (i.type === "Identifier") {
|
|
1291
|
-
const
|
|
1292
|
-
t[i.name] =
|
|
1504
|
+
const r = O(s);
|
|
1505
|
+
t[i.name] = q(r);
|
|
1293
1506
|
}
|
|
1294
1507
|
}
|
|
1295
1508
|
return t;
|
|
1296
1509
|
}
|
|
1297
|
-
function
|
|
1298
|
-
const { key: u, async: t, params: a, body: i } = e,
|
|
1510
|
+
function P(e) {
|
|
1511
|
+
const { key: u, async: t, params: a, body: i } = e, s = a?.map((r) => r.type === "ObjectPattern" ? `{${r.properties.map((o) => o.key?.name || o.name).join(",")}}` : r.type === "AssignmentPattern" ? r.left.name + "=" + (r.right?.extra?.raw || "null") : r.name).join(", ");
|
|
1299
1512
|
if (u.type === "Identifier") {
|
|
1300
|
-
const
|
|
1513
|
+
const r = u.name;
|
|
1301
1514
|
let n = "{}";
|
|
1302
|
-
i && (n =
|
|
1303
|
-
const
|
|
1304
|
-
if (
|
|
1305
|
-
let
|
|
1306
|
-
|
|
1515
|
+
i && (n = O(i) || "{}");
|
|
1516
|
+
const o = e.value;
|
|
1517
|
+
if (o && o.type === "CallExpression") {
|
|
1518
|
+
let p = O(o) || "";
|
|
1519
|
+
p = p.replace("function () {", "() => {"), n = `{ return (${p})}`;
|
|
1307
1520
|
}
|
|
1308
|
-
const
|
|
1521
|
+
const l = `${t ? "async " : ""}(${s}) => ${n}`, f = r.startsWith("watcher_");
|
|
1309
1522
|
return {
|
|
1310
|
-
id: f ?
|
|
1311
|
-
name:
|
|
1523
|
+
id: f ? r.replace("watcher_", "") : "",
|
|
1524
|
+
name: r,
|
|
1312
1525
|
watcher: f,
|
|
1313
|
-
exp: du(
|
|
1526
|
+
exp: du(l)
|
|
1314
1527
|
};
|
|
1315
1528
|
}
|
|
1316
1529
|
}
|
|
1317
|
-
function
|
|
1530
|
+
function Du(e) {
|
|
1318
1531
|
if (!e) return {};
|
|
1319
1532
|
const u = {};
|
|
1320
1533
|
for (const t of e.properties) {
|
|
1321
|
-
const a =
|
|
1534
|
+
const a = P(t);
|
|
1322
1535
|
a && !a.watcher && !a.exp.value.includes("this.provider.createMock") && !a.exp.value.includes("this.provider.apis") && (u[a.name] = a.exp);
|
|
1323
1536
|
}
|
|
1324
1537
|
return u;
|
|
1325
1538
|
}
|
|
1326
|
-
function
|
|
1539
|
+
function _e(e, u) {
|
|
1327
1540
|
if (!e) return {};
|
|
1328
1541
|
const t = {}, a = /apis\[\'([\w]*)\'\]/, i = /\.then\(([\w\W]*)\)/;
|
|
1329
|
-
for (const
|
|
1330
|
-
const
|
|
1331
|
-
if (
|
|
1332
|
-
const f = (
|
|
1542
|
+
for (const s of e.properties) {
|
|
1543
|
+
const r = P(s), n = s.body.body?.[0], o = (n?.leadingComments?.[0].value || "").trim(), c = pe(o);
|
|
1544
|
+
if (r && r.exp.value.includes("this.provider.apis")) {
|
|
1545
|
+
const f = (r.exp.value.match(a) || [])[1];
|
|
1333
1546
|
if (!f) continue;
|
|
1334
|
-
const
|
|
1335
|
-
if (!
|
|
1336
|
-
const
|
|
1337
|
-
t[
|
|
1547
|
+
const m = ze(u, f);
|
|
1548
|
+
if (!m) continue;
|
|
1549
|
+
const p = r.exp.value.match(i)?.[1];
|
|
1550
|
+
t[r.name] = {
|
|
1338
1551
|
ref: f,
|
|
1339
|
-
name:
|
|
1340
|
-
test:
|
|
1552
|
+
name: r.name,
|
|
1553
|
+
test: c?.test || {
|
|
1341
1554
|
type: "JSFunction",
|
|
1342
1555
|
value: `() => this.runApi({
|
|
1343
1556
|
/* 在这里可输入接口参数 */
|
|
1344
1557
|
})`
|
|
1345
1558
|
},
|
|
1346
1559
|
type: "api",
|
|
1347
|
-
label:
|
|
1560
|
+
label: m.label,
|
|
1348
1561
|
transform: {
|
|
1349
1562
|
type: "JSFunction",
|
|
1350
|
-
value:
|
|
1563
|
+
value: p || `(res) => {
|
|
1351
1564
|
return res;
|
|
1352
1565
|
}`
|
|
1353
1566
|
},
|
|
1354
|
-
mockTemplate:
|
|
1567
|
+
mockTemplate: m.mockTemplate
|
|
1355
1568
|
};
|
|
1356
1569
|
}
|
|
1357
|
-
if (
|
|
1358
|
-
const
|
|
1359
|
-
t[
|
|
1570
|
+
if (r && r.exp.value.includes("this.provider.createMock")) {
|
|
1571
|
+
const l = n?.declarations?.[0]?.init?.arguments?.[0], f = r.exp.value.match(i)?.[1];
|
|
1572
|
+
t[r.name] = {
|
|
1360
1573
|
ref: "",
|
|
1361
|
-
name:
|
|
1362
|
-
test:
|
|
1574
|
+
name: r.name,
|
|
1575
|
+
test: c?.test || {
|
|
1363
1576
|
type: "JSFunction",
|
|
1364
1577
|
value: `() => this.runApi({
|
|
1365
1578
|
/* 在这里可输入接口参数 */
|
|
1366
1579
|
})`
|
|
1367
1580
|
},
|
|
1368
1581
|
type: "mock",
|
|
1369
|
-
label:
|
|
1370
|
-
transform:
|
|
1582
|
+
label: c?.label || "",
|
|
1583
|
+
transform: c?.transform || {
|
|
1371
1584
|
type: "JSFunction",
|
|
1372
1585
|
value: f || `(res) => {
|
|
1373
1586
|
return res;
|
|
1374
1587
|
}`
|
|
1375
1588
|
},
|
|
1376
|
-
mockTemplate:
|
|
1589
|
+
mockTemplate: c?.mockTemplate || {
|
|
1377
1590
|
type: "JSFunction",
|
|
1378
|
-
value:
|
|
1591
|
+
value: l ? O(l) : ""
|
|
1379
1592
|
}
|
|
1380
1593
|
};
|
|
1381
1594
|
}
|
|
1382
1595
|
}
|
|
1383
1596
|
return t;
|
|
1384
1597
|
}
|
|
1385
|
-
function
|
|
1386
|
-
const u =
|
|
1598
|
+
function Be(e) {
|
|
1599
|
+
const u = Du(e), t = /\_([\w]{5,})$/, a = {};
|
|
1387
1600
|
for (const i of Object.keys(u))
|
|
1388
1601
|
t.test(i) || (a[i] = u[i]);
|
|
1389
1602
|
return a;
|
|
1390
1603
|
}
|
|
1391
|
-
function
|
|
1604
|
+
function Fe(e) {
|
|
1392
1605
|
if (!e) return {};
|
|
1393
1606
|
const u = {}, t = /\_([\w]{5,})$/;
|
|
1394
1607
|
for (const a of e.properties) {
|
|
@@ -1396,31 +1609,31 @@ function De(e) {
|
|
|
1396
1609
|
if (t.test(i))
|
|
1397
1610
|
try {
|
|
1398
1611
|
if (a.body.body[0]?.argument) {
|
|
1399
|
-
const
|
|
1612
|
+
const s = O(
|
|
1400
1613
|
a.body.body[0].argument.callee.object
|
|
1401
1614
|
);
|
|
1402
|
-
u[i] = du(
|
|
1615
|
+
u[i] = du(s);
|
|
1403
1616
|
} else
|
|
1404
|
-
u[i] =
|
|
1405
|
-
} catch (
|
|
1406
|
-
console.warn(
|
|
1617
|
+
u[i] = P(a)?.exp;
|
|
1618
|
+
} catch (s) {
|
|
1619
|
+
console.warn(s);
|
|
1407
1620
|
}
|
|
1408
1621
|
}
|
|
1409
1622
|
return u;
|
|
1410
1623
|
}
|
|
1411
|
-
function
|
|
1624
|
+
function $e(e) {
|
|
1412
1625
|
if (!e) return {};
|
|
1413
1626
|
const u = {};
|
|
1414
1627
|
for (const t of e.properties) {
|
|
1415
|
-
const a =
|
|
1628
|
+
const a = P(t);
|
|
1416
1629
|
a && a.watcher && (u[a.name] = a.exp);
|
|
1417
1630
|
}
|
|
1418
1631
|
return u;
|
|
1419
1632
|
}
|
|
1420
|
-
function
|
|
1421
|
-
return !!
|
|
1633
|
+
function X(e, u) {
|
|
1634
|
+
return !!Cu(e, u);
|
|
1422
1635
|
}
|
|
1423
|
-
function
|
|
1636
|
+
function Cu(e, u) {
|
|
1424
1637
|
return e.find(
|
|
1425
1638
|
(a) => a.key?.name === u
|
|
1426
1639
|
)?.value?.value;
|
|
@@ -1430,264 +1643,289 @@ function Tu(e, u) {
|
|
|
1430
1643
|
(a) => a.key?.name === u
|
|
1431
1644
|
);
|
|
1432
1645
|
if (t)
|
|
1433
|
-
return
|
|
1646
|
+
return P(t)?.exp;
|
|
1434
1647
|
}
|
|
1435
|
-
function
|
|
1648
|
+
function Oe(e, u = {}) {
|
|
1436
1649
|
const t = [];
|
|
1437
1650
|
for (const a of e.properties) {
|
|
1438
|
-
const { key: i, value:
|
|
1439
|
-
if (u[
|
|
1440
|
-
const n =
|
|
1651
|
+
const { key: i, value: s } = a, r = i.value || i.name || "";
|
|
1652
|
+
if (u[r]) {
|
|
1653
|
+
const n = s.properties;
|
|
1441
1654
|
t.push({
|
|
1442
|
-
id:
|
|
1443
|
-
source: u[
|
|
1444
|
-
deep:
|
|
1445
|
-
immediate:
|
|
1655
|
+
id: r.replace("watcher_", ""),
|
|
1656
|
+
source: u[r],
|
|
1657
|
+
deep: X(n, "deep"),
|
|
1658
|
+
immediate: X(n, "immediate"),
|
|
1446
1659
|
handler: Tu(n, "handler")
|
|
1447
1660
|
});
|
|
1448
1661
|
} else if (a.type === "ObjectMethod" && t.push({
|
|
1449
1662
|
id: iu(),
|
|
1450
1663
|
source: {
|
|
1451
1664
|
type: "JSFunction",
|
|
1452
|
-
value: `() => { return this.${
|
|
1665
|
+
value: `() => { return this.${r}; }`
|
|
1453
1666
|
},
|
|
1454
1667
|
deep: !1,
|
|
1455
1668
|
immediate: !1,
|
|
1456
|
-
handler:
|
|
1669
|
+
handler: P(a)?.exp
|
|
1457
1670
|
}), a.type === "ObjectProperty") {
|
|
1458
|
-
const n =
|
|
1671
|
+
const n = s.properties;
|
|
1459
1672
|
t.push({
|
|
1460
1673
|
id: iu(),
|
|
1461
1674
|
source: {
|
|
1462
1675
|
type: "JSFunction",
|
|
1463
|
-
value: `() => { return this.${
|
|
1676
|
+
value: `() => { return this.${r}; }`
|
|
1464
1677
|
},
|
|
1465
|
-
deep:
|
|
1466
|
-
immediate:
|
|
1678
|
+
deep: X(n, "deep"),
|
|
1679
|
+
immediate: X(n, "immediate"),
|
|
1467
1680
|
handler: Tu(n, "handler")
|
|
1468
1681
|
});
|
|
1469
1682
|
}
|
|
1470
1683
|
}
|
|
1471
1684
|
return t;
|
|
1472
1685
|
}
|
|
1473
|
-
function
|
|
1686
|
+
function Me(e) {
|
|
1474
1687
|
const u = {};
|
|
1475
1688
|
for (const t of e) {
|
|
1476
1689
|
const a = t.key.name;
|
|
1477
|
-
if (
|
|
1478
|
-
const i =
|
|
1690
|
+
if (oe.includes(a)) {
|
|
1691
|
+
const i = P(t);
|
|
1479
1692
|
i && (u[i.name] = i.exp);
|
|
1480
1693
|
}
|
|
1481
1694
|
}
|
|
1482
1695
|
return u;
|
|
1483
1696
|
}
|
|
1484
|
-
function
|
|
1697
|
+
function Pe(e) {
|
|
1485
1698
|
const u = e.find(
|
|
1486
1699
|
(t) => t.key?.name === "type"
|
|
1487
1700
|
);
|
|
1488
1701
|
if (u)
|
|
1489
1702
|
return u.value.type === "ArrayExpression" ? u.value.elements.map((t) => t.name) : u.value.name;
|
|
1490
1703
|
}
|
|
1491
|
-
function
|
|
1704
|
+
function Lu(e) {
|
|
1492
1705
|
const u = e.find(
|
|
1493
1706
|
(t) => t.key?.name === "default"
|
|
1494
1707
|
);
|
|
1495
1708
|
if (u)
|
|
1496
|
-
return
|
|
1709
|
+
return q(O(u.value));
|
|
1497
1710
|
}
|
|
1498
|
-
function
|
|
1711
|
+
function Ue(e) {
|
|
1499
1712
|
if (!e) return [];
|
|
1500
1713
|
let u = [];
|
|
1501
1714
|
return e.type === "ArrayExpression" ? u = e.elements.map((t) => t.value) : e.type === "ObjectExpression" && (u = e.properties.map((t) => {
|
|
1502
|
-
const { key: a, value: i } = t,
|
|
1715
|
+
const { key: a, value: i } = t, s = i.properties || [];
|
|
1503
1716
|
return {
|
|
1504
1717
|
name: a.name,
|
|
1505
|
-
required:
|
|
1506
|
-
type:
|
|
1507
|
-
default:
|
|
1718
|
+
required: X(s, "required"),
|
|
1719
|
+
type: Pe(s),
|
|
1720
|
+
default: Lu(s)
|
|
1508
1721
|
};
|
|
1509
1722
|
})), u;
|
|
1510
1723
|
}
|
|
1511
|
-
function
|
|
1724
|
+
function He(e) {
|
|
1512
1725
|
const u = [];
|
|
1513
1726
|
if (e.callee.type === "MemberExpression" && e.callee.property?.name === "$emit") {
|
|
1514
1727
|
const [a, ...i] = (e.arguments || []).map(
|
|
1515
|
-
(
|
|
1728
|
+
(s) => s.value || s.name
|
|
1516
1729
|
);
|
|
1517
1730
|
a && u.push({
|
|
1518
1731
|
name: a,
|
|
1519
|
-
params: i.filter((
|
|
1732
|
+
params: i.filter((s) => !!s)
|
|
1520
1733
|
});
|
|
1521
1734
|
}
|
|
1522
1735
|
return u;
|
|
1523
1736
|
}
|
|
1524
|
-
function
|
|
1737
|
+
function Ge(e) {
|
|
1525
1738
|
let u = [];
|
|
1526
1739
|
return e.type === "ObjectExpression" && (u = e.properties.map((t) => {
|
|
1527
|
-
const { key: a, value: i } = t,
|
|
1740
|
+
const { key: a, value: i } = t, s = i.properties, r = a.name, n = Cu(s, "from"), o = Lu(s);
|
|
1528
1741
|
return {
|
|
1529
|
-
name:
|
|
1530
|
-
from: n ||
|
|
1531
|
-
default:
|
|
1742
|
+
name: r,
|
|
1743
|
+
from: n || r,
|
|
1744
|
+
default: o
|
|
1532
1745
|
};
|
|
1533
1746
|
})), u;
|
|
1534
1747
|
}
|
|
1535
|
-
function
|
|
1748
|
+
function We(e) {
|
|
1536
1749
|
return e && e.elements ? e.elements.map((u) => u?.type === "StringLiteral" ? u.value : "").filter((u) => !!u) : [];
|
|
1537
1750
|
}
|
|
1538
|
-
function
|
|
1751
|
+
function ze(e, u) {
|
|
1539
1752
|
return (e.apis || []).find((t) => t.id === u);
|
|
1540
1753
|
}
|
|
1541
|
-
|
|
1542
|
-
|
|
1543
|
-
|
|
1544
|
-
|
|
1754
|
+
function Je(e) {
|
|
1755
|
+
if (!e?.properties) return {};
|
|
1756
|
+
const u = {};
|
|
1757
|
+
for (const t of e.properties) {
|
|
1758
|
+
const { key: a, value: i } = t;
|
|
1759
|
+
a?.name && i?.name && (u[a.name] = u[a.name.toLowerCase()] = {
|
|
1760
|
+
type: "JSExpression",
|
|
1761
|
+
value: i.name
|
|
1762
|
+
});
|
|
1763
|
+
}
|
|
1764
|
+
return u;
|
|
1765
|
+
}
|
|
1766
|
+
let ru = [], Q = {}, _u = {}, Bu = {}, Fu = {}, K = "web", $u = [];
|
|
1767
|
+
function Xe(e, u, t = "", a) {
|
|
1768
|
+
return ru = [], Q = {}, _u = a?.handlers || {}, Fu = a?.styles || {}, K = a?.platform || "web", $u = a?.imports || [], Bu = a?.directives || {}, {
|
|
1769
|
+
nodes: (Vu({
|
|
1545
1770
|
id: e,
|
|
1546
1771
|
filename: u,
|
|
1547
1772
|
source: t,
|
|
1548
1773
|
isProd: !0,
|
|
1549
1774
|
slotted: !0
|
|
1550
|
-
}).ast?.children || []).map((n) =>
|
|
1551
|
-
slots:
|
|
1775
|
+
}).ast?.children || []).map((n) => G(n)).filter((n) => !!n),
|
|
1776
|
+
slots: ru,
|
|
1552
1777
|
context: Q
|
|
1553
1778
|
};
|
|
1554
1779
|
}
|
|
1555
|
-
function
|
|
1780
|
+
function Ze(e) {
|
|
1556
1781
|
if (e.name === "slot") {
|
|
1557
1782
|
let u = "default";
|
|
1558
1783
|
const t = [];
|
|
1559
1784
|
for (const [a, i] of Object.entries(e.props || {}))
|
|
1560
1785
|
a === "name" ? u = i : t.push(a);
|
|
1561
|
-
|
|
1786
|
+
ru.push({
|
|
1562
1787
|
name: u,
|
|
1563
1788
|
params: t
|
|
1564
1789
|
});
|
|
1565
1790
|
}
|
|
1566
1791
|
}
|
|
1567
|
-
function
|
|
1792
|
+
function Qe(e) {
|
|
1568
1793
|
const u = {};
|
|
1569
1794
|
for (const t of e) {
|
|
1570
|
-
if (t.type ===
|
|
1795
|
+
if (t.type === g.ATTRIBUTE)
|
|
1571
1796
|
if (t.name === "class") {
|
|
1572
|
-
const a = t.value?.content || "", i = /[\w]+_[\w]{5,}/,
|
|
1573
|
-
n && (u.style = n),
|
|
1797
|
+
const a = t.value?.content || "", i = /[\w]+_[\w]{5,}/, s = a.match(i)?.[0] || "", r = a.split(" ").filter((o) => o !== s), n = Fu[`.${s}`];
|
|
1798
|
+
n && (u.style = n), r.length && (u.class = r.join(" "));
|
|
1574
1799
|
} else if (t.name === "style") {
|
|
1575
1800
|
const a = t.value?.content || "";
|
|
1576
|
-
a && (u.style =
|
|
1801
|
+
a && (u.style = ju(a));
|
|
1577
1802
|
} else
|
|
1578
1803
|
u[t.name] = t.value?.content || "";
|
|
1579
|
-
if (t.type ===
|
|
1804
|
+
if (t.type === g.DIRECTIVE && t.name === "bind" && (t.exp?.type === g.SIMPLE_EXPRESSION && t.arg?.type === g.SIMPLE_EXPRESSION && (u[t.arg.content] = q(`(${t.exp.content})`)), t.exp?.type === g.COMPOUND_EXPRESSION && t.arg?.type === g.SIMPLE_EXPRESSION))
|
|
1580
1805
|
if (t.arg.content === "class" && u.class) {
|
|
1581
|
-
const a = t.exp.ast.type, i =
|
|
1806
|
+
const a = t.exp.ast.type, i = he(
|
|
1582
1807
|
u.class,
|
|
1583
1808
|
t.exp.loc.source,
|
|
1584
1809
|
a
|
|
1585
1810
|
);
|
|
1586
|
-
i && (u[t.arg.content] =
|
|
1811
|
+
i && (u[t.arg.content] = q(i));
|
|
1587
1812
|
} else
|
|
1588
|
-
u[t.arg.content] =
|
|
1813
|
+
u[t.arg.content] = q(
|
|
1589
1814
|
`(${t.exp.loc.source})`
|
|
1590
1815
|
);
|
|
1591
1816
|
}
|
|
1592
1817
|
return u;
|
|
1593
1818
|
}
|
|
1594
|
-
function
|
|
1819
|
+
function Ke(e, u = {}) {
|
|
1595
1820
|
const t = {};
|
|
1596
1821
|
for (const a of e)
|
|
1597
|
-
if (a.type ===
|
|
1822
|
+
if (a.type === g.DIRECTIVE && a.name === "on" && a.arg?.type === g.SIMPLE_EXPRESSION) {
|
|
1598
1823
|
const i = a.modifiers.reduce(
|
|
1599
|
-
(
|
|
1824
|
+
(l, f) => (l[f.content] = !0, l),
|
|
1600
1825
|
{}
|
|
1601
1826
|
);
|
|
1602
|
-
let
|
|
1603
|
-
/\)$/.test(
|
|
1604
|
-
const n = new RegExp(`${a.arg.content}_[\\w]{5,}`),
|
|
1605
|
-
if (
|
|
1827
|
+
let s = a.exp?.loc.source || "";
|
|
1828
|
+
/\)$/.test(s) && (s = `($event) => { ${s} } `);
|
|
1829
|
+
const n = new RegExp(`${a.arg.content}_[\\w]{5,}`), o = s.match(n)?.[0] || "", c = u[o];
|
|
1830
|
+
if (o && c)
|
|
1606
1831
|
t[a.arg.content] = {
|
|
1607
1832
|
name: a.arg.content,
|
|
1608
|
-
handler:
|
|
1833
|
+
handler: c,
|
|
1609
1834
|
modifiers: i
|
|
1610
1835
|
};
|
|
1611
1836
|
else {
|
|
1612
|
-
const
|
|
1837
|
+
const l = a.exp?.ast?.type === "AssignmentExpression";
|
|
1613
1838
|
t[a.arg.content] = {
|
|
1614
1839
|
name: a.arg.content,
|
|
1615
|
-
handler: du(
|
|
1840
|
+
handler: du(l ? `()=> {${s}}` : `(${s})`),
|
|
1616
1841
|
modifiers: i
|
|
1617
1842
|
};
|
|
1618
1843
|
}
|
|
1619
1844
|
}
|
|
1620
1845
|
return t;
|
|
1621
1846
|
}
|
|
1622
|
-
function
|
|
1623
|
-
const t = [];
|
|
1624
|
-
if (u && (e.type ===
|
|
1625
|
-
if (e ===
|
|
1626
|
-
const
|
|
1847
|
+
function uu(e, u) {
|
|
1848
|
+
const t = [], a = ["if", "for", "model", "show", "bind", "html"];
|
|
1849
|
+
if (u && (e.type === g.IF_BRANCH || e.type === g.IF) && u.forEach((i, s) => {
|
|
1850
|
+
if (e === i) {
|
|
1851
|
+
const r = s === 0 ? "vIf" : i.condition ? "vElseIf" : "vElse", n = i.condition?.loc.source || "";
|
|
1627
1852
|
t.push({
|
|
1628
|
-
name:
|
|
1629
|
-
value:
|
|
1853
|
+
name: r,
|
|
1854
|
+
value: r === "vElse" ? !0 : q(n)
|
|
1630
1855
|
});
|
|
1631
|
-
const
|
|
1632
|
-
if (
|
|
1633
|
-
const
|
|
1634
|
-
t.push(...
|
|
1856
|
+
const o = e.children?.[0];
|
|
1857
|
+
if (o) {
|
|
1858
|
+
const c = uu(o);
|
|
1859
|
+
t.push(...c);
|
|
1635
1860
|
}
|
|
1636
1861
|
}
|
|
1637
|
-
}), e.type ===
|
|
1862
|
+
}), e.type === g.FOR && t.push({
|
|
1638
1863
|
name: "vFor",
|
|
1639
|
-
value:
|
|
1864
|
+
value: q(e.source.loc.source),
|
|
1640
1865
|
iterator: {
|
|
1641
1866
|
item: e.valueAlias?.loc.source || "item",
|
|
1642
1867
|
index: e.keyAlias?.loc.source || "index"
|
|
1643
1868
|
}
|
|
1644
|
-
}), e.type ===
|
|
1645
|
-
const
|
|
1646
|
-
(
|
|
1647
|
-
),
|
|
1648
|
-
|
|
1869
|
+
}), e.type === g.ELEMENT) {
|
|
1870
|
+
const i = e.props.filter(
|
|
1871
|
+
(l) => l.type === g.DIRECTIVE
|
|
1872
|
+
), s = i.filter((l) => l.name === "model");
|
|
1873
|
+
s.length && s.forEach((l) => {
|
|
1649
1874
|
t.push({
|
|
1650
1875
|
name: "vModel",
|
|
1651
|
-
arg:
|
|
1652
|
-
value:
|
|
1876
|
+
arg: l.arg?.content,
|
|
1877
|
+
value: q(l.exp?.loc.source || "")
|
|
1653
1878
|
});
|
|
1654
1879
|
});
|
|
1655
|
-
const
|
|
1656
|
-
|
|
1880
|
+
const r = i.find((l) => l.name === "show");
|
|
1881
|
+
r && t.push({
|
|
1657
1882
|
name: "vShow",
|
|
1658
|
-
value:
|
|
1883
|
+
value: q(r.exp?.loc.source || "")
|
|
1659
1884
|
});
|
|
1660
|
-
const
|
|
1661
|
-
|
|
1885
|
+
const n = i.find((l) => l.name === "bind" && !l.arg);
|
|
1886
|
+
n && t.push({
|
|
1662
1887
|
name: "vBind",
|
|
1663
|
-
value:
|
|
1888
|
+
value: q(n.exp?.loc.source || "")
|
|
1664
1889
|
});
|
|
1665
|
-
const
|
|
1666
|
-
|
|
1890
|
+
const o = i.find((l) => l.name === "html");
|
|
1891
|
+
o && t.push({
|
|
1667
1892
|
name: "vHtml",
|
|
1668
|
-
value:
|
|
1893
|
+
value: q(o.exp?.loc.source || "")
|
|
1669
1894
|
});
|
|
1895
|
+
const c = i.filter((l) => !a.includes(l.name));
|
|
1896
|
+
for (const l of c) {
|
|
1897
|
+
const f = (l.modifiers || []).reduce(
|
|
1898
|
+
(v, A) => (v[A.content] = !0, v),
|
|
1899
|
+
{}
|
|
1900
|
+
), m = l.arg?.content || void 0, p = Bu[l.name];
|
|
1901
|
+
p && t.push({
|
|
1902
|
+
name: p,
|
|
1903
|
+
value: q(l.exp?.loc.source || ""),
|
|
1904
|
+
arg: m,
|
|
1905
|
+
modifiers: f
|
|
1906
|
+
});
|
|
1907
|
+
}
|
|
1670
1908
|
}
|
|
1671
1909
|
return t;
|
|
1672
1910
|
}
|
|
1673
|
-
function
|
|
1911
|
+
function Ou(e) {
|
|
1674
1912
|
let u = "";
|
|
1675
|
-
if (e.type ===
|
|
1913
|
+
if (e.type === g.ELEMENT) {
|
|
1676
1914
|
const { props: t = [], tag: a } = e;
|
|
1677
1915
|
for (const i of t)
|
|
1678
1916
|
if (i.name === "class") {
|
|
1679
|
-
const
|
|
1680
|
-
u =
|
|
1681
|
-
} else if (i.type ===
|
|
1682
|
-
const
|
|
1683
|
-
u =
|
|
1917
|
+
const s = i.value?.content || "", r = new RegExp(`${a}_([\\w]+)`);
|
|
1918
|
+
u = s.match(r)?.[1] || "";
|
|
1919
|
+
} else if (i.type === g.DIRECTIVE && i.name === "on") {
|
|
1920
|
+
const s = i.arg?.loc?.source || "", r = i.exp?.loc?.source || "", n = new RegExp(`${s}_([\\w]+)`);
|
|
1921
|
+
u = r.match(n)?.[1] || "";
|
|
1684
1922
|
}
|
|
1685
1923
|
}
|
|
1686
1924
|
return u || iu();
|
|
1687
1925
|
}
|
|
1688
|
-
function
|
|
1926
|
+
function Ye(e) {
|
|
1689
1927
|
const u = /\.\/(.+?)\.vue/;
|
|
1690
|
-
for (const { from: t, imports: a } of
|
|
1928
|
+
for (const { from: t, imports: a } of $u) {
|
|
1691
1929
|
if (Array.isArray(a) && a.includes(e))
|
|
1692
1930
|
return t;
|
|
1693
1931
|
if (a === e) {
|
|
@@ -1700,73 +1938,73 @@ function Je(e) {
|
|
|
1700
1938
|
}
|
|
1701
1939
|
}
|
|
1702
1940
|
}
|
|
1703
|
-
function
|
|
1704
|
-
const t = new Set(u?.id ? Q[u.id] : []), a = (e.directives || []).find((
|
|
1941
|
+
function cu(e, u) {
|
|
1942
|
+
const t = new Set(u?.id ? Q[u.id] : []), a = (e.directives || []).find((r) => r.name === "vFor");
|
|
1705
1943
|
let i = new Set(Array.from(t));
|
|
1706
1944
|
if (a) {
|
|
1707
|
-
const { item:
|
|
1708
|
-
i = /* @__PURE__ */ new Set([
|
|
1945
|
+
const { item: r = "item", index: n = "index" } = a.iterator || {};
|
|
1946
|
+
i = /* @__PURE__ */ new Set([r, n, ...Array.from(i)]);
|
|
1709
1947
|
}
|
|
1710
|
-
const
|
|
1711
|
-
if (
|
|
1712
|
-
const
|
|
1948
|
+
const s = e.slot;
|
|
1949
|
+
if (s) {
|
|
1950
|
+
const r = typeof s == "string" ? [] : s.params || [], n = r.length ? r : [`scope_${u?.id}`];
|
|
1713
1951
|
i = /* @__PURE__ */ new Set([...n, ...Array.from(i)]);
|
|
1714
1952
|
}
|
|
1715
1953
|
Q[e.id] = i;
|
|
1716
1954
|
}
|
|
1717
1955
|
function au(e, u, t, a) {
|
|
1718
1956
|
const i = {
|
|
1719
|
-
name:
|
|
1720
|
-
from:
|
|
1721
|
-
props:
|
|
1722
|
-
events:
|
|
1723
|
-
directives:
|
|
1957
|
+
name: Ru(e.tag, K),
|
|
1958
|
+
from: Ye(e.tag),
|
|
1959
|
+
props: Qe(e.props),
|
|
1960
|
+
events: Ke(e.props, _u),
|
|
1961
|
+
directives: uu(t || e, a)
|
|
1724
1962
|
};
|
|
1725
|
-
i.id =
|
|
1726
|
-
const
|
|
1727
|
-
return
|
|
1963
|
+
i.id = Ou(e), cu(i, u);
|
|
1964
|
+
const s = fu(i, e.children);
|
|
1965
|
+
return cu(i, u), Ze(s), s;
|
|
1728
1966
|
}
|
|
1729
|
-
function
|
|
1730
|
-
return e.map((t) =>
|
|
1967
|
+
function u0(e, u) {
|
|
1968
|
+
return e.map((t) => G(t, u, e));
|
|
1731
1969
|
}
|
|
1732
|
-
function
|
|
1733
|
-
if (e.type ===
|
|
1970
|
+
function G(e, u, t) {
|
|
1971
|
+
if (e.type === g.ELEMENT)
|
|
1734
1972
|
return au(e, u);
|
|
1735
|
-
if (e.type ===
|
|
1736
|
-
return
|
|
1737
|
-
if (t && e.type ===
|
|
1738
|
-
const a = e.children.find((i) => i.type ===
|
|
1739
|
-
if (a && a.type ===
|
|
1973
|
+
if (e.type === g.IF)
|
|
1974
|
+
return e0(e);
|
|
1975
|
+
if (t && e.type === g.IF_BRANCH) {
|
|
1976
|
+
const a = e.children.find((i) => i.type === g.ELEMENT);
|
|
1977
|
+
if (a && a.type === g.ELEMENT)
|
|
1740
1978
|
return au(a, u, e, t);
|
|
1741
1979
|
}
|
|
1742
|
-
if (e.type ===
|
|
1980
|
+
if (e.type === g.FOR) {
|
|
1743
1981
|
const a = e.children[0];
|
|
1744
|
-
if (e.children.length > 1 || a.type !==
|
|
1745
|
-
const
|
|
1746
|
-
return fu(
|
|
1982
|
+
if (e.children.length > 1 || a.type !== g.ELEMENT) {
|
|
1983
|
+
const s = { name: "span", directives: uu(e) };
|
|
1984
|
+
return fu(s, e.children);
|
|
1747
1985
|
} else
|
|
1748
1986
|
return au(a, u, e);
|
|
1749
1987
|
}
|
|
1750
|
-
if (e.type ===
|
|
1751
|
-
return e.content.type ==
|
|
1988
|
+
if (e.type === g.TEXT_CALL)
|
|
1989
|
+
return e.content.type == g.TEXT ? e.content.content : e.content.type === g.INTERPOLATION ? q(e.content.content.loc.source) : e.content.type === g.COMPOUND_EXPRESSION ? Nu(
|
|
1752
1990
|
e.content.children
|
|
1753
1991
|
) : "";
|
|
1754
|
-
if (e.type ===
|
|
1992
|
+
if (e.type === g.TEXT)
|
|
1755
1993
|
return e.content;
|
|
1756
|
-
if (e.type ===
|
|
1757
|
-
return
|
|
1758
|
-
if (e.type ===
|
|
1994
|
+
if (e.type === g.INTERPOLATION && (e.content.type === g.SIMPLE_EXPRESSION || e.content.type === g.COMPOUND_EXPRESSION))
|
|
1995
|
+
return q(e.content.loc.source);
|
|
1996
|
+
if (e.type === g.COMPOUND_EXPRESSION)
|
|
1759
1997
|
return Nu(
|
|
1760
1998
|
e.children
|
|
1761
1999
|
);
|
|
1762
|
-
e.type !==
|
|
2000
|
+
e.type !== g.COMMENT && console.warn("未处理", e.type);
|
|
1763
2001
|
}
|
|
1764
2002
|
function Nu(e = []) {
|
|
1765
2003
|
const u = e.filter((a) => typeof a != "string"), t = [];
|
|
1766
2004
|
for (const a of u)
|
|
1767
2005
|
t.push({
|
|
1768
2006
|
name: "span",
|
|
1769
|
-
children: a.type ===
|
|
2007
|
+
children: a.type === g.TEXT ? a.loc.source : q(a.content?.loc.source)
|
|
1770
2008
|
});
|
|
1771
2009
|
return {
|
|
1772
2010
|
name: "span",
|
|
@@ -1776,38 +2014,38 @@ function Nu(e = []) {
|
|
|
1776
2014
|
function fu(e, u = []) {
|
|
1777
2015
|
const t = [];
|
|
1778
2016
|
for (const a of u)
|
|
1779
|
-
if (a.type ===
|
|
2017
|
+
if (a.type === g.ELEMENT && a.codegenNode?.value?.arguments) {
|
|
1780
2018
|
const i = a.codegenNode.value.arguments[0];
|
|
1781
2019
|
if (i) {
|
|
1782
|
-
const
|
|
1783
|
-
t.push(...
|
|
2020
|
+
const s = Au(i, K);
|
|
2021
|
+
t.push(...s);
|
|
1784
2022
|
}
|
|
1785
|
-
} else if (a.type ===
|
|
1786
|
-
const i = a.props.find((
|
|
1787
|
-
for (const
|
|
1788
|
-
const
|
|
2023
|
+
} else if (a.type === g.ELEMENT && a.tag === "template") {
|
|
2024
|
+
const i = a.props.find((s) => s.name === "slot");
|
|
2025
|
+
for (const s of a.children) {
|
|
2026
|
+
const r = s.type === g.TEXT || s.type === g.TEXT_CALL ? {
|
|
1789
2027
|
name: "span",
|
|
1790
|
-
children:
|
|
1791
|
-
} :
|
|
1792
|
-
|
|
1793
|
-
|
|
2028
|
+
children: G(s, e)
|
|
2029
|
+
} : G(s, e);
|
|
2030
|
+
r && (Array.isArray(r) ? r : [r]).forEach((o) => {
|
|
2031
|
+
re(o) && i?.type === g.DIRECTIVE && (o.id = Ou(s), o.slot = {
|
|
1794
2032
|
name: i.arg?.content || "default",
|
|
1795
2033
|
params: i.exp?.identifiers || [],
|
|
1796
|
-
scope: i.exp?.type ===
|
|
1797
|
-
},
|
|
2034
|
+
scope: i.exp?.type === g.SIMPLE_EXPRESSION ? i.exp.content : ""
|
|
2035
|
+
}, cu(o, e)), t.push(o);
|
|
1798
2036
|
});
|
|
1799
2037
|
}
|
|
1800
|
-
} else if (a.type ===
|
|
2038
|
+
} else if (a.type === g.JS_CALL_EXPRESSION) {
|
|
1801
2039
|
const i = a.arguments?.[0];
|
|
1802
2040
|
if (i) {
|
|
1803
|
-
const
|
|
1804
|
-
t.push(...
|
|
2041
|
+
const s = Au(i, K);
|
|
2042
|
+
t.push(...s);
|
|
1805
2043
|
}
|
|
1806
|
-
} else if (a.type ===
|
|
1807
|
-
const i =
|
|
2044
|
+
} else if (a.type === g.TEXT_CALL) {
|
|
2045
|
+
const i = G(a, e);
|
|
1808
2046
|
i && (Array.isArray(i) ? t.push(...i) : t.push(i));
|
|
1809
2047
|
} else {
|
|
1810
|
-
const i =
|
|
2048
|
+
const i = G(a, e);
|
|
1811
2049
|
i && (Array.isArray(i) ? t.push(...i) : t.push(i));
|
|
1812
2050
|
}
|
|
1813
2051
|
if (t.length === 1) {
|
|
@@ -1817,24 +2055,24 @@ function fu(e, u = []) {
|
|
|
1817
2055
|
e.children = t.map((a) => typeof a == "string" ? { name: "span", children: a } : a);
|
|
1818
2056
|
return e;
|
|
1819
2057
|
}
|
|
1820
|
-
function
|
|
2058
|
+
function e0(e) {
|
|
1821
2059
|
const u = e.branches || [], t = u[0], a = t.children || [];
|
|
1822
|
-
if (t?.isTemplateIf || a.length > 1 || a[0].type !==
|
|
1823
|
-
const
|
|
1824
|
-
return fu(
|
|
2060
|
+
if (t?.isTemplateIf || a.length > 1 || a[0].type !== g.ELEMENT) {
|
|
2061
|
+
const s = { name: "span", directives: uu(t, u) };
|
|
2062
|
+
return fu(s, t.children);
|
|
1825
2063
|
} else
|
|
1826
|
-
return
|
|
2064
|
+
return u0(u);
|
|
1827
2065
|
}
|
|
1828
|
-
function
|
|
2066
|
+
function t0(e) {
|
|
1829
2067
|
const u = [], t = {}, a = [];
|
|
1830
2068
|
try {
|
|
1831
|
-
const i =
|
|
1832
|
-
for (const n of
|
|
2069
|
+
const i = ie.compileString(e, { charset: !1 })?.css || "", s = ae.parse(i), r = /^.[\w]+_[\w]{5,}/;
|
|
2070
|
+
for (const n of s.nodes)
|
|
1833
2071
|
if (n.type === "rule") {
|
|
1834
|
-
const
|
|
1835
|
-
|
|
1836
|
-
|
|
1837
|
-
}), t[n.selector] =
|
|
2072
|
+
const o = {};
|
|
2073
|
+
r.test(n.selector) ? (n.nodes.forEach((c) => {
|
|
2074
|
+
c.type === "decl" && (o[c.prop] = c.value);
|
|
2075
|
+
}), t[n.selector] = o) : a.push(n.toString());
|
|
1838
2076
|
} else
|
|
1839
2077
|
a.push(n.toString());
|
|
1840
2078
|
} catch (i) {
|
|
@@ -1848,12 +2086,12 @@ function Qe(e) {
|
|
|
1848
2086
|
`)
|
|
1849
2087
|
};
|
|
1850
2088
|
}
|
|
1851
|
-
const
|
|
2089
|
+
const Mu = "arrow-double-left, arrow-double-right, contact, notes, records, cash-back-record, newspaper, discount, completed, user, description, list-switch, list-switching, link-o, miniprogram-o, qq, wechat-moments, weibo, cash-o, guide-o, invitation, shield-o, exchange, eye, enlarge, expand-o, eye-o, expand, filter-o, fire, fail, failure, fire-o, flag-o, font, font-o, gem-o, flower-o, gem, gift-card, friends, friends-o, gold-coin, gold-coin-o, good-job-o, gift, gift-o, gift-card-o, good-job, home-o, goods-collect, graphic, goods-collect-o, hot-o, info, hotel-o, info-o, hot-sale-o, hot, like, idcard, like-o, hot-sale, location-o, location, label, lock, label-o, map-marked, logistics, manager, more, live, manager-o, medal, more-o, music-o, music, new-arrival-o, medal-o, new-o, free-postage, newspaper-o, new-arrival, minus, orders-o, new, paid, notes-o, other-pay, pause-circle, pause, pause-circle-o, peer-pay, pending-payment, passed, plus, phone-circle-o, phone-o, printer, photo-fail, phone, photo-o, play-circle, play, phone-circle, point-gift-o, point-gift, play-circle-o, shrink, photo, qr, qr-invalid, question-o, revoke, replay, service, question, search, refund-o, service-o, scan, share, send-gift-o, share-o, setting, points, photograph, shop, shop-o, shop-collect-o, shop-collect, smile, shopping-cart-o, sign, sort, star-o, smile-comment-o, stop, stop-circle-o, smile-o, star, success, stop-circle, records-o, shopping-cart, tosend, todo-list, thumb-circle-o, thumb-circle, umbrella-circle, underway, upgrade, todo-list-o, tv-o, underway-o, user-o, vip-card-o, vip-card, send-gift, wap-home, wap-nav, volume-o, video, wap-home-o, volume, warning, weapp-nav, wechat-pay, wechat, setting-o, youzan-shield, warn-o, smile-comment, user-circle-o, video-o, add-square, add, arrow-down, arrow-up, arrow, after-sale, add-o, alipay, ascending, apps-o, aim, award, arrow-left, award-o, audio, bag-o, balance-list, back-top, bag, balance-pay, balance-o, bar-chart-o, bars, balance-list-o, birthday-cake-o, bookmark, bill, bell, browsing-history-o, browsing-history, bookmark-o, bulb-o, bullhorn-o, bill-o, calendar-o, brush-o, card, cart-o, cart-circle, cart-circle-o, cart, cash-on-deliver, cash-back-record-o, cashier-o, chart-trending-o, certificate, chat, clear, chat-o, checked, clock, clock-o, close, closed-eye, circle, cluster-o, column, comment-circle-o, cluster, comment, comment-o, comment-circle, completed-o, credit-pay, coupon, debit-pay, coupon-o, contact-o, descending, desktop-o, diamond-o, description-o, delete, diamond, delete-o, cross, edit, ellipsis, down, discount-o, ecard-pay, envelop-o".split(
|
|
1852
2090
|
", "
|
|
1853
|
-
),
|
|
2091
|
+
), a0 = "AddLocation, Aim, AlarmClock, Apple, ArrowDownBold, ArrowDown, ArrowLeftBold, ArrowLeft, ArrowRightBold, ArrowRight, ArrowUpBold, ArrowUp, Avatar, Back, Baseball, Basketball, BellFilled, Bell, Bicycle, BottomLeft, BottomRight, Bottom, Bowl, Box, Briefcase, BrushFilled, Brush, Burger, Calendar, CameraFilled, Camera, CaretBottom, CaretLeft, CaretRight, CaretTop, Cellphone, ChatDotRound, ChatDotSquare, ChatLineRound, ChatLineSquare, ChatRound, ChatSquare, Check, Checked, Cherry, Chicken, ChromeFilled, CircleCheckFilled, CircleCheck, CircleCloseFilled, CircleClose, CirclePlusFilled, CirclePlus, Clock, CloseBold, Close, Cloudy, CoffeeCup, Coffee, Coin, ColdDrink, CollectionTag, Collection, Comment, Compass, Connection, Coordinate, CopyDocument, Cpu, CreditCard, Crop, DArrowLeft, DArrowRight, DCaret, DataAnalysis, DataBoard, DataLine, DeleteFilled, DeleteLocation, Delete, Dessert, Discount, DishDot, Dish, DocumentAdd, DocumentChecked, DocumentCopy, DocumentDelete, DocumentRemove, Document, Download, Drizzling, EditPen, Edit, ElemeFilled, Eleme, ElementPlus, Expand, Failed, Female, Files, Film, Filter, Finished, FirstAidKit, Flag, Fold, FolderAdd, FolderChecked, FolderDelete, FolderOpened, FolderRemove, Folder, Food, Football, ForkSpoon, Fries, FullScreen, GobletFull, GobletSquareFull, GobletSquare, Goblet, GoldMedal, GoodsFilled, Goods, Grape, Grid, Guide, Handbag, Headset, HelpFilled, Help, Hide, Histogram, HomeFilled, HotWater, House, IceCreamRound, IceCreamSquare, IceCream, IceDrink, IceTea, InfoFilled, Iphone, Key, KnifeFork, Lightning, Link, List, Loading, LocationFilled, LocationInformation, Location, Lock, Lollipop, MagicStick, Magnet, Male, Management, MapLocation, Medal, Memo, Menu, MessageBox, Message, Mic, Microphone, MilkTea, Minus, Money, Monitor, MoonNight, Moon, MoreFilled, More, MostlyCloudy, Mouse, Mug, MuteNotification, Mute, NoSmoking, Notebook, Notification, Odometer, OfficeBuilding, Open, Operation, Opportunity, Orange, Paperclip, PartlyCloudy, Pear, PhoneFilled, Phone, PictureFilled, PictureRounded, Picture, PieChart, Place, Platform, Plus, Pointer, Position, Postcard, Pouring, Present, PriceTag, Printer, Promotion, QuartzWatch, QuestionFilled, Rank, ReadingLamp, Reading, RefreshLeft, RefreshRight, Refresh, Refrigerator, RemoveFilled, Remove, Right, ScaleToOriginal, School, Scissor, Search, Select, Sell, SemiSelect, Service, SetUp, Setting, Share, Ship, Shop, ShoppingBag, ShoppingCartFull, ShoppingCart, ShoppingTrolley, Smoking, Soccer, SoldOut, SortDown, SortUp, Sort, Stamp, StarFilled, Star, Stopwatch, SuccessFilled, Sugar, SuitcaseLine, Suitcase, Sunny, Sunrise, Sunset, SwitchButton, SwitchFilled, Switch, TakeawayBox, Ticket, Tickets, Timer, ToiletPaper, Tools, TopLeft, TopRight, Top, TrendCharts, TrophyBase, Trophy, TurnOff, Umbrella, Unlock, UploadFilled, Upload, UserFilled, User, Van, VideoCameraFilled, VideoCamera, VideoPause, VideoPlay, View, WalletFilled, Wallet, WarnTriangleFilled, WarningFilled, Warning, Watch, Watermelon, WindPower, ZoomIn, ZoomOut, VtjIconChatRecord, VtjIconNewChat, VtjIconAi, VtjIconUniapp, VtjIconWindowMax, VtjIconWindowMin, VtjIconWindowClose, VtjIconWindowNormal, VtjIconWindowDown, VtjIconWindowUp, VtjIconNpSave, VtjIconNpFile, VtjIconNpEdit, VtjIconNpShare, VtjIconNpSearch, VtjIconNpExport, VtjIconNpImport, VtjIconNpList, VtjIconNpPrint, VtjIconNpCancel, VtjIconNpConfirm, VtjIconNpReset, VtjIconNpReturnAll, VtjIconNpReturn, VtjIconNpRemove, VtjIconNpRemoveRow, VtjIconNpDelete, VtjIconNpExit, VtjIconNpRefresh, VtjIconNpAdd, VtjIconNpSelect, VtjIconNpAddRow, VtjIconNpExtend, VtjIconNpClose, VtjIconNpSubmit, VtjIconDeps, VtjIconBack, VtjIconHome, VtjIconApi, VtjIconExport, VtjIconImport, VtjIconGreater, VtjIconSmaller, VtjIconCheck, VtjIconSwitch, VtjIconCopy, VtjIconLock, VtjIconUnlock, VtjIconLayers, VtjIconConsole, VtjIconTeam, VtjIconPublish, VtjIconPreview, VtjIconSave, VtjIconPc, VtjIconPhone, VtjIconPad, VtjIconRedo, VtjIconRefresh, VtjIconUndo, VtjIconCategory, VtjIconProject, VtjIconNotice, VtjIconFav, VtjIconBug, VtjIconFile, VtjIconFolder, VtjIconUpload, VtjIconDownload, VtjIconUser, VtjIconSetting, VtjIconArrowRight, VtjIconArrowLeft, VtjIconArrowDown, VtjIconArrowUp, VtjIconShare, VtjIconData, VtjIconTemplate, VtjIconExitFullscreen, VtjIconFullscreen, VtjIconEdit, VtjIconRemove, VtjIconJs, VtjIconDatabase, VtjIconInfo, VtjIconPlus, VtjIconMinus, VtjIconHelp, VtjIconVars, VtjIconOutline, VtjIconVisible, VtjIconInvisible, VtjIconDocument, VtjIconHistory, VtjIconFixed, VtjIconUnfixed, VtjIconSearch, VtjIconMore, VtjIconClose, VtjIconComponents, VtjIconBlock".split(
|
|
1854
2092
|
", "
|
|
1855
|
-
),
|
|
1856
|
-
class
|
|
2093
|
+
), i0 = "user", j = "User";
|
|
2094
|
+
class s0 {
|
|
1857
2095
|
validate(u) {
|
|
1858
2096
|
const t = {
|
|
1859
2097
|
valid: !0,
|
|
@@ -1867,7 +2105,7 @@ class Ye {
|
|
|
1867
2105
|
}
|
|
1868
2106
|
isCompleteSFC(u) {
|
|
1869
2107
|
try {
|
|
1870
|
-
const t =
|
|
2108
|
+
const t = D(u);
|
|
1871
2109
|
return !!(t.template && t.script && t.styles);
|
|
1872
2110
|
} catch {
|
|
1873
2111
|
return !1;
|
|
@@ -1876,45 +2114,45 @@ class Ye {
|
|
|
1876
2114
|
checkSyntax(u) {
|
|
1877
2115
|
let t = "";
|
|
1878
2116
|
try {
|
|
1879
|
-
const a =
|
|
1880
|
-
|
|
2117
|
+
const a = D(u);
|
|
2118
|
+
W(a.script);
|
|
1881
2119
|
} catch (a) {
|
|
1882
2120
|
a instanceof SyntaxError && (t = a.message);
|
|
1883
2121
|
}
|
|
1884
2122
|
return t;
|
|
1885
2123
|
}
|
|
1886
2124
|
checkSetup(u) {
|
|
1887
|
-
const t =
|
|
2125
|
+
const t = D(u);
|
|
1888
2126
|
let a = 0;
|
|
1889
|
-
return
|
|
2127
|
+
return qu(t.script, {
|
|
1890
2128
|
ObjectMethod(i) {
|
|
1891
2129
|
i.node.key.name === "setup" && (a = i.node.body.body.filter(
|
|
1892
|
-
(
|
|
2130
|
+
(r) => !V.isEmptyStatement(r)
|
|
1893
2131
|
).length);
|
|
1894
2132
|
}
|
|
1895
2133
|
}), a === 3;
|
|
1896
2134
|
}
|
|
1897
2135
|
findVantIcons(u) {
|
|
1898
|
-
const t =
|
|
1899
|
-
return i.forEach((
|
|
1900
|
-
const n =
|
|
1901
|
-
n &&
|
|
1902
|
-
}), [...new Set(
|
|
2136
|
+
const t = D(u), a = /<(?:VanIcon|van-icon)\b[^>]*>/g, i = t.template.match(a) || [], s = [];
|
|
2137
|
+
return i.forEach((r) => {
|
|
2138
|
+
const n = r.match(/\bname="([^"]+)"/);
|
|
2139
|
+
n && s.push(n[1]);
|
|
2140
|
+
}), [...new Set(s)];
|
|
1903
2141
|
}
|
|
1904
2142
|
checkVantIcons(u) {
|
|
1905
2143
|
const t = this.findVantIcons(u), a = [];
|
|
1906
2144
|
for (const i of t)
|
|
1907
|
-
|
|
2145
|
+
Mu.includes(i) || a.push(i);
|
|
1908
2146
|
return a;
|
|
1909
2147
|
}
|
|
1910
2148
|
findVtjIcons(u) {
|
|
1911
|
-
const t =
|
|
1912
|
-
return !i || !i[1] ? [] : i[1].split(",").map((
|
|
2149
|
+
const t = D(u), a = /import\s*{([^}]+)}\s*from\s*['"]\@vtj\/icons['"]/, i = t.script.match(a);
|
|
2150
|
+
return !i || !i[1] ? [] : i[1].split(",").map((s) => s.trim()).filter(Boolean);
|
|
1913
2151
|
}
|
|
1914
2152
|
checkVtjIcons(u) {
|
|
1915
2153
|
const t = this.findVtjIcons(u), a = [];
|
|
1916
2154
|
for (const i of t)
|
|
1917
|
-
|
|
2155
|
+
a0.includes(i) || a.push(i);
|
|
1918
2156
|
return a;
|
|
1919
2157
|
}
|
|
1920
2158
|
hasUnchangedComment(u) {
|
|
@@ -1924,15 +2162,15 @@ class Ye {
|
|
|
1924
2162
|
...u.match(a) || [],
|
|
1925
2163
|
...u.match(i) || []
|
|
1926
2164
|
].some(
|
|
1927
|
-
(
|
|
2165
|
+
(r) => /不变/.test(r.replace(/\*/g, ""))
|
|
1928
2166
|
// 移除多行注释的星号避免干扰
|
|
1929
2167
|
);
|
|
1930
2168
|
}
|
|
1931
2169
|
}
|
|
1932
|
-
function
|
|
2170
|
+
function r0(e) {
|
|
1933
2171
|
const u = [];
|
|
1934
2172
|
let t = e;
|
|
1935
|
-
const a =
|
|
2173
|
+
const a = D(e);
|
|
1936
2174
|
if (!a.template || !a.script)
|
|
1937
2175
|
return {
|
|
1938
2176
|
fixed: !1,
|
|
@@ -1940,190 +2178,190 @@ function u0(e) {
|
|
|
1940
2178
|
fixedCode: e,
|
|
1941
2179
|
changes: []
|
|
1942
2180
|
};
|
|
1943
|
-
const i =
|
|
1944
|
-
let
|
|
1945
|
-
const n = [],
|
|
1946
|
-
let
|
|
1947
|
-
for (; (
|
|
1948
|
-
const
|
|
1949
|
-
if (
|
|
1950
|
-
const
|
|
2181
|
+
const i = c0(a.script), s = a.template;
|
|
2182
|
+
let r = s;
|
|
2183
|
+
const n = [], o = /\{\{([^}]+)\}\}/g;
|
|
2184
|
+
let c;
|
|
2185
|
+
for (; (c = o.exec(s)) !== null; ) {
|
|
2186
|
+
const b = c[0], S = c[1], I = F(S, i);
|
|
2187
|
+
if (I !== S) {
|
|
2188
|
+
const x = B(s, c.index);
|
|
1951
2189
|
n.push({
|
|
1952
|
-
start:
|
|
1953
|
-
end:
|
|
1954
|
-
original:
|
|
1955
|
-
replacement: `{{${
|
|
1956
|
-
line:
|
|
1957
|
-
column:
|
|
2190
|
+
start: c.index,
|
|
2191
|
+
end: c.index + b.length,
|
|
2192
|
+
original: b,
|
|
2193
|
+
replacement: `{{${I}}}`,
|
|
2194
|
+
line: x.line,
|
|
2195
|
+
column: x.column
|
|
1958
2196
|
}), u.push({
|
|
1959
|
-
line:
|
|
1960
|
-
column:
|
|
1961
|
-
original:
|
|
1962
|
-
fixed:
|
|
2197
|
+
line: x.line + 1,
|
|
2198
|
+
column: x.column,
|
|
2199
|
+
original: S.trim(),
|
|
2200
|
+
fixed: I.trim(),
|
|
1963
2201
|
message: "修复插值表达式:添加 state. 前缀"
|
|
1964
2202
|
});
|
|
1965
2203
|
}
|
|
1966
2204
|
}
|
|
1967
|
-
const
|
|
1968
|
-
for (; (
|
|
1969
|
-
const
|
|
1970
|
-
if (
|
|
1971
|
-
const
|
|
2205
|
+
const l = /:(\w+)="([^"]+)"/g;
|
|
2206
|
+
for (; (c = l.exec(s)) !== null; ) {
|
|
2207
|
+
const b = c[0], S = c[1], I = c[2], x = F(I, i);
|
|
2208
|
+
if (x !== I) {
|
|
2209
|
+
const w = B(s, c.index);
|
|
1972
2210
|
n.push({
|
|
1973
|
-
start:
|
|
1974
|
-
end:
|
|
1975
|
-
original:
|
|
1976
|
-
replacement: `:${
|
|
1977
|
-
line:
|
|
1978
|
-
column:
|
|
2211
|
+
start: c.index,
|
|
2212
|
+
end: c.index + b.length,
|
|
2213
|
+
original: b,
|
|
2214
|
+
replacement: `:${S}="${x}"`,
|
|
2215
|
+
line: w.line,
|
|
2216
|
+
column: w.column
|
|
1979
2217
|
}), u.push({
|
|
1980
|
-
line:
|
|
1981
|
-
column:
|
|
1982
|
-
original:
|
|
1983
|
-
fixed:
|
|
2218
|
+
line: w.line + 1,
|
|
2219
|
+
column: w.column,
|
|
2220
|
+
original: I,
|
|
2221
|
+
fixed: x,
|
|
1984
2222
|
message: "修复绑定属性:添加 state. 前缀"
|
|
1985
2223
|
});
|
|
1986
2224
|
}
|
|
1987
2225
|
}
|
|
1988
2226
|
const f = /v-(if|else-if|show)="([^"]+)"/g;
|
|
1989
|
-
for (; (
|
|
1990
|
-
const
|
|
1991
|
-
if (
|
|
1992
|
-
const
|
|
2227
|
+
for (; (c = f.exec(s)) !== null; ) {
|
|
2228
|
+
const b = c[0], S = c[1], I = c[2], x = F(I, i);
|
|
2229
|
+
if (x !== I) {
|
|
2230
|
+
const w = B(s, c.index);
|
|
1993
2231
|
n.push({
|
|
1994
|
-
start:
|
|
1995
|
-
end:
|
|
1996
|
-
original:
|
|
1997
|
-
replacement: `v-${
|
|
1998
|
-
line:
|
|
1999
|
-
column:
|
|
2232
|
+
start: c.index,
|
|
2233
|
+
end: c.index + b.length,
|
|
2234
|
+
original: b,
|
|
2235
|
+
replacement: `v-${S}="${x}"`,
|
|
2236
|
+
line: w.line,
|
|
2237
|
+
column: w.column
|
|
2000
2238
|
}), u.push({
|
|
2001
|
-
line:
|
|
2002
|
-
column:
|
|
2003
|
-
original:
|
|
2004
|
-
fixed:
|
|
2005
|
-
message: `修复 v-${
|
|
2239
|
+
line: w.line + 1,
|
|
2240
|
+
column: w.column,
|
|
2241
|
+
original: I,
|
|
2242
|
+
fixed: x,
|
|
2243
|
+
message: `修复 v-${S} 指令:添加 state. 前缀`
|
|
2006
2244
|
});
|
|
2007
2245
|
}
|
|
2008
2246
|
}
|
|
2009
|
-
const
|
|
2010
|
-
for (; (
|
|
2011
|
-
const
|
|
2012
|
-
if (
|
|
2013
|
-
const [,
|
|
2014
|
-
|
|
2247
|
+
const m = /v-for="([^"]+)"/g;
|
|
2248
|
+
for (; (c = m.exec(s)) !== null; ) {
|
|
2249
|
+
const b = c[0], I = c[1].match(/^(.+)\s+in\s+(.+)$/);
|
|
2250
|
+
if (I) {
|
|
2251
|
+
const [, x, w] = I, R = F(
|
|
2252
|
+
w,
|
|
2015
2253
|
i
|
|
2016
2254
|
);
|
|
2017
|
-
if (
|
|
2018
|
-
const
|
|
2255
|
+
if (R !== w) {
|
|
2256
|
+
const U = B(s, c.index), eu = `v-for="${x} in ${R}"`;
|
|
2019
2257
|
n.push({
|
|
2020
|
-
start:
|
|
2021
|
-
end:
|
|
2022
|
-
original:
|
|
2258
|
+
start: c.index,
|
|
2259
|
+
end: c.index + b.length,
|
|
2260
|
+
original: b,
|
|
2023
2261
|
replacement: eu,
|
|
2024
|
-
line:
|
|
2025
|
-
column:
|
|
2262
|
+
line: U.line,
|
|
2263
|
+
column: U.column
|
|
2026
2264
|
}), u.push({
|
|
2027
|
-
line:
|
|
2028
|
-
column:
|
|
2029
|
-
original:
|
|
2030
|
-
fixed:
|
|
2265
|
+
line: U.line + 1,
|
|
2266
|
+
column: U.column,
|
|
2267
|
+
original: w,
|
|
2268
|
+
fixed: R,
|
|
2031
2269
|
message: "修复 v-for 指令:添加 state. 前缀"
|
|
2032
2270
|
});
|
|
2033
2271
|
}
|
|
2034
2272
|
}
|
|
2035
2273
|
}
|
|
2036
|
-
const
|
|
2037
|
-
for (; (
|
|
2038
|
-
const
|
|
2039
|
-
if (
|
|
2040
|
-
const
|
|
2274
|
+
const p = /v-model="([^"]+)"/g;
|
|
2275
|
+
for (; (c = p.exec(s)) !== null; ) {
|
|
2276
|
+
const b = c[0], S = c[1], I = F(S, i);
|
|
2277
|
+
if (I !== S) {
|
|
2278
|
+
const x = B(s, c.index);
|
|
2041
2279
|
n.push({
|
|
2042
|
-
start:
|
|
2043
|
-
end:
|
|
2044
|
-
original:
|
|
2045
|
-
replacement: `v-model="${
|
|
2046
|
-
line:
|
|
2047
|
-
column:
|
|
2280
|
+
start: c.index,
|
|
2281
|
+
end: c.index + b.length,
|
|
2282
|
+
original: b,
|
|
2283
|
+
replacement: `v-model="${I}"`,
|
|
2284
|
+
line: x.line,
|
|
2285
|
+
column: x.column
|
|
2048
2286
|
}), u.push({
|
|
2049
|
-
line:
|
|
2050
|
-
column:
|
|
2051
|
-
original:
|
|
2052
|
-
fixed:
|
|
2287
|
+
line: x.line + 1,
|
|
2288
|
+
column: x.column,
|
|
2289
|
+
original: S,
|
|
2290
|
+
fixed: I,
|
|
2053
2291
|
message: "修复 v-model 指令:添加 state. 前缀"
|
|
2054
2292
|
});
|
|
2055
2293
|
}
|
|
2056
2294
|
}
|
|
2057
|
-
const
|
|
2058
|
-
for (; (
|
|
2059
|
-
const
|
|
2060
|
-
if (
|
|
2061
|
-
const
|
|
2295
|
+
const v = /v-bind="([^"]+)"/g;
|
|
2296
|
+
for (; (c = v.exec(s)) !== null; ) {
|
|
2297
|
+
const b = c[0], S = c[1], I = F(S, i);
|
|
2298
|
+
if (I !== S) {
|
|
2299
|
+
const x = B(s, c.index);
|
|
2062
2300
|
n.push({
|
|
2063
|
-
start:
|
|
2064
|
-
end:
|
|
2065
|
-
original:
|
|
2066
|
-
replacement: `v-bind="${
|
|
2067
|
-
line:
|
|
2068
|
-
column:
|
|
2301
|
+
start: c.index,
|
|
2302
|
+
end: c.index + b.length,
|
|
2303
|
+
original: b,
|
|
2304
|
+
replacement: `v-bind="${I}"`,
|
|
2305
|
+
line: x.line,
|
|
2306
|
+
column: x.column
|
|
2069
2307
|
}), u.push({
|
|
2070
|
-
line:
|
|
2071
|
-
column:
|
|
2072
|
-
original:
|
|
2073
|
-
fixed:
|
|
2308
|
+
line: x.line + 1,
|
|
2309
|
+
column: x.column,
|
|
2310
|
+
original: S,
|
|
2311
|
+
fixed: I,
|
|
2074
2312
|
message: "修复 v-bind 指令:添加 state. 前缀"
|
|
2075
2313
|
});
|
|
2076
2314
|
}
|
|
2077
2315
|
}
|
|
2078
|
-
const
|
|
2079
|
-
for (; (
|
|
2080
|
-
const
|
|
2081
|
-
if (
|
|
2082
|
-
const
|
|
2316
|
+
const A = /v-(text|html)="([^"]+)"/g;
|
|
2317
|
+
for (; (c = A.exec(s)) !== null; ) {
|
|
2318
|
+
const b = c[0], S = c[1], I = c[2], x = F(I, i);
|
|
2319
|
+
if (x !== I) {
|
|
2320
|
+
const w = B(s, c.index);
|
|
2083
2321
|
n.push({
|
|
2084
|
-
start:
|
|
2085
|
-
end:
|
|
2086
|
-
original:
|
|
2087
|
-
replacement: `v-${
|
|
2088
|
-
line:
|
|
2089
|
-
column:
|
|
2322
|
+
start: c.index,
|
|
2323
|
+
end: c.index + b.length,
|
|
2324
|
+
original: b,
|
|
2325
|
+
replacement: `v-${S}="${x}"`,
|
|
2326
|
+
line: w.line,
|
|
2327
|
+
column: w.column
|
|
2090
2328
|
}), u.push({
|
|
2091
|
-
line:
|
|
2092
|
-
column:
|
|
2093
|
-
original:
|
|
2094
|
-
fixed:
|
|
2095
|
-
message: `修复 v-${
|
|
2329
|
+
line: w.line + 1,
|
|
2330
|
+
column: w.column,
|
|
2331
|
+
original: I,
|
|
2332
|
+
fixed: x,
|
|
2333
|
+
message: `修复 v-${S} 指令:添加 state. 前缀`
|
|
2096
2334
|
});
|
|
2097
2335
|
}
|
|
2098
2336
|
}
|
|
2099
|
-
const
|
|
2100
|
-
for (; (
|
|
2101
|
-
const
|
|
2102
|
-
if (
|
|
2103
|
-
const
|
|
2337
|
+
const y = /(@|v-on:)(\w+)="([^"]+)"/g;
|
|
2338
|
+
for (; (c = y.exec(s)) !== null; ) {
|
|
2339
|
+
const b = c[0], S = c[1], I = c[2], x = c[3], w = n0(x, i);
|
|
2340
|
+
if (w !== x) {
|
|
2341
|
+
const R = B(s, c.index);
|
|
2104
2342
|
n.push({
|
|
2105
|
-
start:
|
|
2106
|
-
end:
|
|
2107
|
-
original:
|
|
2108
|
-
replacement: `${
|
|
2109
|
-
line:
|
|
2110
|
-
column:
|
|
2343
|
+
start: c.index,
|
|
2344
|
+
end: c.index + b.length,
|
|
2345
|
+
original: b,
|
|
2346
|
+
replacement: `${S}${I}="${w}"`,
|
|
2347
|
+
line: R.line,
|
|
2348
|
+
column: R.column
|
|
2111
2349
|
}), u.push({
|
|
2112
|
-
line:
|
|
2113
|
-
column:
|
|
2114
|
-
original:
|
|
2115
|
-
fixed:
|
|
2350
|
+
line: R.line + 1,
|
|
2351
|
+
column: R.column,
|
|
2352
|
+
original: x,
|
|
2353
|
+
fixed: w,
|
|
2116
2354
|
message: "修复事件处理器:添加 state. 前缀"
|
|
2117
2355
|
});
|
|
2118
2356
|
}
|
|
2119
2357
|
}
|
|
2120
|
-
if (n.sort((
|
|
2121
|
-
|
|
2358
|
+
if (n.sort((b, S) => S.start - b.start), n.forEach((b) => {
|
|
2359
|
+
r = r.substring(0, b.start) + b.replacement + r.substring(b.end);
|
|
2122
2360
|
}), n.length > 0) {
|
|
2123
|
-
const
|
|
2124
|
-
t = e.substring(0,
|
|
2125
|
-
` +
|
|
2126
|
-
</template>` + e.substring(
|
|
2361
|
+
const b = e.indexOf("<template>"), S = e.lastIndexOf("</template>") + 11;
|
|
2362
|
+
t = e.substring(0, b) + `<template>
|
|
2363
|
+
` + r + `
|
|
2364
|
+
</template>` + e.substring(S);
|
|
2127
2365
|
}
|
|
2128
2366
|
return {
|
|
2129
2367
|
fixed: n.length > 0,
|
|
@@ -2132,16 +2370,16 @@ function u0(e) {
|
|
|
2132
2370
|
changes: u
|
|
2133
2371
|
};
|
|
2134
2372
|
}
|
|
2135
|
-
function
|
|
2373
|
+
function c0(e) {
|
|
2136
2374
|
const u = /* @__PURE__ */ new Set();
|
|
2137
2375
|
try {
|
|
2138
|
-
const t =
|
|
2139
|
-
|
|
2376
|
+
const t = W(e);
|
|
2377
|
+
Y(t, {
|
|
2140
2378
|
CallExpression(a) {
|
|
2141
2379
|
if (a.node.callee.type === "Identifier" && a.node.callee.name === "reactive" && a.node.arguments.length > 0 && a.node.arguments[0].type === "ObjectExpression") {
|
|
2142
2380
|
const i = a.parent;
|
|
2143
|
-
i.type === "VariableDeclarator" && i.id.type === "Identifier" && i.id.name === "state" && a.node.arguments[0].properties.forEach((
|
|
2144
|
-
|
|
2381
|
+
i.type === "VariableDeclarator" && i.id.type === "Identifier" && i.id.name === "state" && a.node.arguments[0].properties.forEach((r) => {
|
|
2382
|
+
r.type === "ObjectProperty" && r.key.type === "Identifier" && u.add(r.key.name);
|
|
2145
2383
|
});
|
|
2146
2384
|
}
|
|
2147
2385
|
}
|
|
@@ -2151,25 +2389,25 @@ function e0(e) {
|
|
|
2151
2389
|
}
|
|
2152
2390
|
return u;
|
|
2153
2391
|
}
|
|
2154
|
-
function
|
|
2392
|
+
function F(e, u) {
|
|
2155
2393
|
let t = e.trim();
|
|
2156
2394
|
return u.forEach((a) => {
|
|
2157
2395
|
const i = new RegExp(`(?<![\\w.])${a}(?![\\w])`, "g");
|
|
2158
2396
|
i.test(t) && !t.includes(`state.${a}`) && (t = t.replace(i, `state.${a}`));
|
|
2159
2397
|
}), t;
|
|
2160
2398
|
}
|
|
2161
|
-
function
|
|
2399
|
+
function n0(e, u) {
|
|
2162
2400
|
let t = e.trim();
|
|
2163
2401
|
return u.forEach((a) => {
|
|
2164
2402
|
const i = new RegExp(
|
|
2165
2403
|
`(?<![\\w.])${a}(\\+\\+|--|\\s*[+\\-*/]=)`,
|
|
2166
2404
|
"g"
|
|
2167
|
-
),
|
|
2405
|
+
), s = new RegExp(
|
|
2168
2406
|
`(\\+\\+|--)?(?<![\\w.])${a}(?![\\w])`,
|
|
2169
2407
|
"g"
|
|
2170
2408
|
);
|
|
2171
|
-
t.includes(`state.${a}`) || (t = t.replace(i, `state.${a}$1`), t = t.replace(
|
|
2172
|
-
}),
|
|
2409
|
+
t.includes(`state.${a}`) || (t = t.replace(i, `state.${a}$1`), t = t.replace(s, (r, n) => n ? `${n}state.${a}` : r.includes(a) && !r.includes("state.") ? `state.${a}` : r));
|
|
2410
|
+
}), F(t, u);
|
|
2173
2411
|
}
|
|
2174
2412
|
function B(e, u) {
|
|
2175
2413
|
const t = e.substring(0, u).split(`
|
|
@@ -2179,51 +2417,51 @@ function B(e, u) {
|
|
|
2179
2417
|
column: t[t.length - 1].length
|
|
2180
2418
|
};
|
|
2181
2419
|
}
|
|
2182
|
-
class
|
|
2420
|
+
class o0 {
|
|
2183
2421
|
fixBasedOnValidation(u, t) {
|
|
2184
2422
|
let a = u;
|
|
2185
|
-
return t.illegalVantIcons.length && (a = this.fixVantIcons(a)), t.illegalVtjIcons.length && (a = this.fixVtjIcons(a, t.illegalVtjIcons)),
|
|
2423
|
+
return t.illegalVantIcons.length && (a = this.fixVantIcons(a)), t.illegalVtjIcons.length && (a = this.fixVtjIcons(a, t.illegalVtjIcons)), r0(a).fixedCode;
|
|
2186
2424
|
}
|
|
2187
2425
|
fixVantIcons(u) {
|
|
2188
|
-
const t =
|
|
2426
|
+
const t = D(u), a = t.template.replace(
|
|
2189
2427
|
/<(?:VanIcon|van-icon)\s+[^>]*name="([^"]+)"[^>]*>/g,
|
|
2190
|
-
(i,
|
|
2428
|
+
(i, s) => Mu.includes(s) ? i : i.replace(s, i0)
|
|
2191
2429
|
);
|
|
2192
2430
|
return this.reconstructSFC(t, a, t.script);
|
|
2193
2431
|
}
|
|
2194
2432
|
fixVtjIcons(u, t = []) {
|
|
2195
|
-
const a =
|
|
2196
|
-
a.script =
|
|
2197
|
-
ImportDeclaration(
|
|
2198
|
-
if (
|
|
2199
|
-
const n =
|
|
2200
|
-
let
|
|
2201
|
-
for (const
|
|
2202
|
-
const f =
|
|
2203
|
-
f === j && (
|
|
2204
|
-
|
|
2433
|
+
const a = D(u);
|
|
2434
|
+
a.script = qu(a.script, {
|
|
2435
|
+
ImportDeclaration(r) {
|
|
2436
|
+
if (r.node.source.value === "@vtj/icons") {
|
|
2437
|
+
const n = r.node.specifiers, o = [];
|
|
2438
|
+
let c = !1;
|
|
2439
|
+
for (const l of n) {
|
|
2440
|
+
const f = l.imported?.name;
|
|
2441
|
+
f === j && (c = !0), t.includes(f) || o.push(
|
|
2442
|
+
V.importSpecifier(l.local, l.imported)
|
|
2205
2443
|
);
|
|
2206
2444
|
}
|
|
2207
|
-
|
|
2208
|
-
|
|
2209
|
-
|
|
2210
|
-
|
|
2445
|
+
c || o.push(
|
|
2446
|
+
V.importSpecifier(
|
|
2447
|
+
V.identifier(j),
|
|
2448
|
+
V.identifier(j)
|
|
2211
2449
|
)
|
|
2212
|
-
),
|
|
2450
|
+
), r.node.specifiers = o;
|
|
2213
2451
|
}
|
|
2214
2452
|
},
|
|
2215
|
-
ObjectMethod(
|
|
2216
|
-
if (
|
|
2217
|
-
const n =
|
|
2218
|
-
for (const
|
|
2219
|
-
if (
|
|
2220
|
-
const
|
|
2221
|
-
|
|
2222
|
-
(
|
|
2223
|
-
),
|
|
2224
|
-
|
|
2225
|
-
|
|
2226
|
-
|
|
2453
|
+
ObjectMethod(r) {
|
|
2454
|
+
if (r.node.key.name === "setup") {
|
|
2455
|
+
const n = r.node.body.body;
|
|
2456
|
+
for (const o of n)
|
|
2457
|
+
if (V.isReturnStatement(o) && V.isObjectExpression(o.argument)) {
|
|
2458
|
+
const c = o.argument.properties || [];
|
|
2459
|
+
o.argument.properties = c.filter(
|
|
2460
|
+
(l) => !t.includes(l.key.name)
|
|
2461
|
+
), o.argument.properties.push(
|
|
2462
|
+
V.objectProperty(
|
|
2463
|
+
V.identifier(j),
|
|
2464
|
+
V.identifier(j),
|
|
2227
2465
|
!1,
|
|
2228
2466
|
!0
|
|
2229
2467
|
)
|
|
@@ -2231,27 +2469,27 @@ class a0 {
|
|
|
2231
2469
|
}
|
|
2232
2470
|
}
|
|
2233
2471
|
},
|
|
2234
|
-
ObjectProperty(
|
|
2235
|
-
if (
|
|
2236
|
-
const n =
|
|
2237
|
-
|
|
2472
|
+
ObjectProperty(r) {
|
|
2473
|
+
if (V.isIdentifier(r.node.value) && t.includes(r.node.value.name) && (r.node.value = V.identifier(j)), V.isArrayExpression(r.node.value)) {
|
|
2474
|
+
const n = r.node.value.elements;
|
|
2475
|
+
r.node.value.elements = n.map((o) => V.isIdentifier(o) && t.includes(o.name) ? V.identifier(j) : o);
|
|
2238
2476
|
}
|
|
2239
2477
|
},
|
|
2240
|
-
AssignmentExpression(
|
|
2241
|
-
|
|
2478
|
+
AssignmentExpression(r) {
|
|
2479
|
+
V.isIdentifier(r.node.right) && t.includes(r.node.right.name) && (r.node.right = V.identifier(j));
|
|
2242
2480
|
}
|
|
2243
2481
|
});
|
|
2244
|
-
const i = /:icon\s*=\s*["']([^"']+)["']/g,
|
|
2245
|
-
if (
|
|
2246
|
-
for (const
|
|
2247
|
-
let n =
|
|
2248
|
-
for (const
|
|
2249
|
-
n = n.replace(new RegExp(
|
|
2250
|
-
a.template = a.template.replace(
|
|
2482
|
+
const i = /:icon\s*=\s*["']([^"']+)["']/g, s = a.template.match(i);
|
|
2483
|
+
if (s)
|
|
2484
|
+
for (const r of s) {
|
|
2485
|
+
let n = r;
|
|
2486
|
+
for (const o of t)
|
|
2487
|
+
n = n.replace(new RegExp(o, "g"), j);
|
|
2488
|
+
a.template = a.template.replace(r, n);
|
|
2251
2489
|
}
|
|
2252
|
-
for (const
|
|
2490
|
+
for (const r of t)
|
|
2253
2491
|
a.template = a.template.replace(
|
|
2254
|
-
new RegExp(`:icon="${
|
|
2492
|
+
new RegExp(`:icon="${r}"`, "g"),
|
|
2255
2493
|
`:icon="${j}"`
|
|
2256
2494
|
);
|
|
2257
2495
|
return this.reconstructSFC(a, a.template, a.script);
|
|
@@ -2266,63 +2504,68 @@ ${t}
|
|
|
2266
2504
|
${a}
|
|
2267
2505
|
<\/script>
|
|
2268
2506
|
|
|
2269
|
-
`), u.styles.forEach((
|
|
2507
|
+
`), u.styles.forEach((s) => {
|
|
2270
2508
|
i += `<style lang="scss" scoped>
|
|
2271
|
-
`, i += `${
|
|
2509
|
+
`, i += `${s}
|
|
2272
2510
|
`, i += `</style>
|
|
2273
2511
|
|
|
2274
2512
|
`;
|
|
2275
2513
|
}), i;
|
|
2276
2514
|
}
|
|
2277
2515
|
}
|
|
2278
|
-
async function
|
|
2279
|
-
const { id: u, name: t, source: a, project: i } = e,
|
|
2280
|
-
|
|
2281
|
-
|
|
2282
|
-
|
|
2283
|
-
|
|
2284
|
-
|
|
2285
|
-
|
|
2286
|
-
|
|
2287
|
-
|
|
2516
|
+
async function A0(e) {
|
|
2517
|
+
const { id: u, name: t, source: a, project: i } = e, s = ce(a, t);
|
|
2518
|
+
if (s)
|
|
2519
|
+
return Promise.reject(s);
|
|
2520
|
+
const { dependencies: r = [], platform: n = "web" } = i || {}, o = new s0(), c = new o0(), l = o.validate(a);
|
|
2521
|
+
let f = [];
|
|
2522
|
+
if (!l.valid)
|
|
2523
|
+
return f = l.errors, Promise.reject(f);
|
|
2524
|
+
const m = c.fixBasedOnValidation(a, l), p = D(m), {
|
|
2525
|
+
styles: v,
|
|
2526
|
+
css: A,
|
|
2527
|
+
errors: y
|
|
2528
|
+
} = t0(p.styles.join(`
|
|
2288
2529
|
`));
|
|
2289
|
-
if (
|
|
2290
|
-
return Promise.reject(
|
|
2530
|
+
if (f.push(...y), f.length)
|
|
2531
|
+
return Promise.reject(f);
|
|
2291
2532
|
const {
|
|
2292
|
-
state:
|
|
2293
|
-
watch:
|
|
2294
|
-
lifeCycles:
|
|
2295
|
-
computed:
|
|
2296
|
-
methods:
|
|
2297
|
-
props:
|
|
2298
|
-
emits:
|
|
2299
|
-
expose:
|
|
2300
|
-
inject:
|
|
2301
|
-
handlers:
|
|
2533
|
+
state: b,
|
|
2534
|
+
watch: S,
|
|
2535
|
+
lifeCycles: I,
|
|
2536
|
+
computed: x,
|
|
2537
|
+
methods: w,
|
|
2538
|
+
props: R,
|
|
2539
|
+
emits: U,
|
|
2540
|
+
expose: eu,
|
|
2541
|
+
inject: Pu,
|
|
2542
|
+
handlers: Uu,
|
|
2543
|
+
imports: lu,
|
|
2544
|
+
dataSources: Hu,
|
|
2545
|
+
directives: Gu
|
|
2546
|
+
} = je(p.script, i), { nodes: Wu, slots: zu, context: Ju } = Xe(u, t, p.template, {
|
|
2547
|
+
platform: n,
|
|
2548
|
+
handlers: Uu,
|
|
2549
|
+
styles: v,
|
|
2302
2550
|
imports: lu,
|
|
2303
|
-
|
|
2304
|
-
} = Ne(I.script, i), { nodes: Ou, slots: $u, context: Uu } = Ue(u, t, I.template, {
|
|
2305
|
-
platform: s,
|
|
2306
|
-
handlers: Mu,
|
|
2307
|
-
styles: x,
|
|
2308
|
-
imports: lu
|
|
2551
|
+
directives: Gu
|
|
2309
2552
|
}), bu = {
|
|
2310
2553
|
id: u,
|
|
2311
2554
|
name: t,
|
|
2312
|
-
inject:
|
|
2313
|
-
props:
|
|
2314
|
-
state:
|
|
2315
|
-
watch:
|
|
2316
|
-
lifeCycles:
|
|
2317
|
-
computed:
|
|
2318
|
-
methods:
|
|
2319
|
-
dataSources:
|
|
2320
|
-
slots:
|
|
2321
|
-
emits:
|
|
2322
|
-
expose:
|
|
2323
|
-
nodes:
|
|
2324
|
-
css:
|
|
2325
|
-
},
|
|
2555
|
+
inject: Pu,
|
|
2556
|
+
props: R,
|
|
2557
|
+
state: b,
|
|
2558
|
+
watch: S,
|
|
2559
|
+
lifeCycles: I,
|
|
2560
|
+
computed: x,
|
|
2561
|
+
methods: w,
|
|
2562
|
+
dataSources: Hu,
|
|
2563
|
+
slots: zu,
|
|
2564
|
+
emits: U,
|
|
2565
|
+
expose: eu,
|
|
2566
|
+
nodes: Wu,
|
|
2567
|
+
css: A
|
|
2568
|
+
}, Xu = Object.keys(x || {}), Zu = [
|
|
2326
2569
|
"$el",
|
|
2327
2570
|
"$emit",
|
|
2328
2571
|
"$nextTick",
|
|
@@ -2338,74 +2581,74 @@ async function y0(e) {
|
|
|
2338
2581
|
"state",
|
|
2339
2582
|
"$props",
|
|
2340
2583
|
"props",
|
|
2341
|
-
...Object.keys(
|
|
2342
|
-
], { libs:
|
|
2343
|
-
platform:
|
|
2344
|
-
context:
|
|
2345
|
-
computed:
|
|
2346
|
-
libs:
|
|
2347
|
-
members:
|
|
2584
|
+
...Object.keys(w || {})
|
|
2585
|
+
], { libs: Qu } = l0(lu, r), hu = {
|
|
2586
|
+
platform: n,
|
|
2587
|
+
context: Ju,
|
|
2588
|
+
computed: Xu,
|
|
2589
|
+
libs: Qu,
|
|
2590
|
+
members: Zu
|
|
2348
2591
|
};
|
|
2349
|
-
return await
|
|
2592
|
+
return await d0(
|
|
2350
2593
|
bu,
|
|
2351
|
-
async (
|
|
2352
|
-
await
|
|
2353
|
-
if (ou(
|
|
2354
|
-
const
|
|
2355
|
-
|
|
2594
|
+
async (z) => {
|
|
2595
|
+
await f0(z, async (J) => {
|
|
2596
|
+
if (ou(J)) {
|
|
2597
|
+
const Ku = await xu(J.value);
|
|
2598
|
+
J.value = gu(Ku, z.id, hu);
|
|
2356
2599
|
}
|
|
2357
2600
|
});
|
|
2358
2601
|
},
|
|
2359
|
-
async (
|
|
2360
|
-
const
|
|
2361
|
-
|
|
2602
|
+
async (z) => {
|
|
2603
|
+
const J = await xu(z.value);
|
|
2604
|
+
z.value = gu(J, "", hu);
|
|
2362
2605
|
}
|
|
2363
|
-
), new
|
|
2364
|
-
}
|
|
2365
|
-
async function
|
|
2366
|
-
const a = async (
|
|
2367
|
-
if (await u(
|
|
2368
|
-
for (const
|
|
2369
|
-
await a(
|
|
2370
|
-
}, i = async (
|
|
2371
|
-
if (!
|
|
2372
|
-
if (Array.isArray(
|
|
2373
|
-
for (let
|
|
2374
|
-
await i(
|
|
2606
|
+
), new ue(bu).toDsl();
|
|
2607
|
+
}
|
|
2608
|
+
async function d0(e, u, t) {
|
|
2609
|
+
const a = async (p, v) => {
|
|
2610
|
+
if (await u(p, v), Array.isArray(p.children))
|
|
2611
|
+
for (const A of p.children)
|
|
2612
|
+
await a(A, p);
|
|
2613
|
+
}, i = async (p) => {
|
|
2614
|
+
if (!p || typeof p != "object") return;
|
|
2615
|
+
if (Array.isArray(p)) {
|
|
2616
|
+
for (let A of p)
|
|
2617
|
+
await i(A);
|
|
2375
2618
|
return;
|
|
2376
2619
|
}
|
|
2377
|
-
const
|
|
2378
|
-
for (const
|
|
2379
|
-
ou(
|
|
2620
|
+
const v = Object.values(p);
|
|
2621
|
+
for (const A of v)
|
|
2622
|
+
ou(A) ? await t(A) : await i(A);
|
|
2380
2623
|
}, {
|
|
2381
|
-
state:
|
|
2382
|
-
watch:
|
|
2624
|
+
state: s,
|
|
2625
|
+
watch: r,
|
|
2383
2626
|
computed: n,
|
|
2384
|
-
props:
|
|
2385
|
-
dataSources:
|
|
2386
|
-
methods:
|
|
2627
|
+
props: o,
|
|
2628
|
+
dataSources: c,
|
|
2629
|
+
methods: l,
|
|
2387
2630
|
lifeCycles: f,
|
|
2388
|
-
inject:
|
|
2631
|
+
inject: m
|
|
2389
2632
|
} = e;
|
|
2390
2633
|
if (await i({
|
|
2391
|
-
state:
|
|
2392
|
-
watch:
|
|
2634
|
+
state: s,
|
|
2635
|
+
watch: r,
|
|
2393
2636
|
computed: n,
|
|
2394
|
-
props:
|
|
2395
|
-
dataSources:
|
|
2396
|
-
methods:
|
|
2637
|
+
props: o,
|
|
2638
|
+
dataSources: c,
|
|
2639
|
+
methods: l,
|
|
2397
2640
|
lifeCycles: f,
|
|
2398
|
-
inject:
|
|
2641
|
+
inject: m
|
|
2399
2642
|
}), Array.isArray(e.nodes))
|
|
2400
|
-
for (const
|
|
2401
|
-
await a(
|
|
2643
|
+
for (const p of e.nodes)
|
|
2644
|
+
await a(p);
|
|
2402
2645
|
}
|
|
2403
|
-
async function
|
|
2646
|
+
async function f0(e, u) {
|
|
2404
2647
|
const t = async (a) => {
|
|
2405
2648
|
if (!a || typeof a != "object") return;
|
|
2406
2649
|
if (Array.isArray(a)) {
|
|
2407
|
-
for (let
|
|
2408
|
-
await u(
|
|
2650
|
+
for (let s of a)
|
|
2651
|
+
await u(s), await t(s);
|
|
2409
2652
|
return;
|
|
2410
2653
|
}
|
|
2411
2654
|
if (ou(a)) {
|
|
@@ -2413,37 +2656,37 @@ async function c0(e, u) {
|
|
|
2413
2656
|
return;
|
|
2414
2657
|
}
|
|
2415
2658
|
const i = Object.values(a);
|
|
2416
|
-
for (const
|
|
2417
|
-
await u(
|
|
2659
|
+
for (const s of i)
|
|
2660
|
+
await u(s), await t(s);
|
|
2418
2661
|
};
|
|
2419
2662
|
await t(e);
|
|
2420
2663
|
}
|
|
2421
|
-
function
|
|
2664
|
+
function l0(e = [], u = []) {
|
|
2422
2665
|
const t = {}, a = u.reduce(
|
|
2423
|
-
(i,
|
|
2666
|
+
(i, s) => (i[s.package] = s.library, i),
|
|
2424
2667
|
{}
|
|
2425
2668
|
);
|
|
2426
|
-
for (const { from: i, imports:
|
|
2427
|
-
if (Array.isArray(
|
|
2428
|
-
|
|
2669
|
+
for (const { from: i, imports: s } of e)
|
|
2670
|
+
if (Array.isArray(s))
|
|
2671
|
+
s.forEach((r) => {
|
|
2429
2672
|
const n = a[i];
|
|
2430
|
-
n && (t[
|
|
2673
|
+
n && (t[r] = n);
|
|
2431
2674
|
});
|
|
2432
2675
|
else {
|
|
2433
|
-
const
|
|
2434
|
-
|
|
2676
|
+
const r = a[i];
|
|
2677
|
+
r && (t[s] = r);
|
|
2435
2678
|
}
|
|
2436
2679
|
return {
|
|
2437
2680
|
libs: t
|
|
2438
2681
|
};
|
|
2439
2682
|
}
|
|
2440
2683
|
export {
|
|
2441
|
-
|
|
2442
|
-
|
|
2443
|
-
|
|
2684
|
+
o0 as AutoFixer,
|
|
2685
|
+
s0 as ComponentValidator,
|
|
2686
|
+
v0 as VTJ_PARSER_VERSION,
|
|
2444
2687
|
Au as htmlToNodes,
|
|
2445
|
-
|
|
2446
|
-
|
|
2688
|
+
w0 as parseUniApp,
|
|
2689
|
+
A0 as parseVue,
|
|
2447
2690
|
gu as patchCode,
|
|
2448
|
-
|
|
2691
|
+
M as replacer
|
|
2449
2692
|
};
|