@opentiny/tiny-robot 0.2.13 → 0.3.0-alpha.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/action-group/index.js +39 -42
- package/dist/bubble/index.js +2003 -1229
- package/dist/container/index.js +4 -4
- package/dist/dropdown-menu/index.js +62 -77
- package/dist/feedback/index.js +42 -42
- package/dist/flow-layout-buttons/index.js +31 -34
- package/dist/history/index.js +42 -42
- package/dist/index.d.ts +350 -437
- package/dist/index.js +64 -57
- package/dist/index2.js +290 -358
- package/dist/loading.js +4 -0
- package/dist/question/index.js +54 -54
- package/dist/sender/index.js +1128 -935
- package/dist/style.css +1 -1
- package/dist/suggestion/index.js +74 -74
- package/dist/suggestion-pills/index.js +129 -179
- package/dist/suggestion-popover/index.js +177 -189
- package/dist/tiny-robot-svgs.js +197 -148
- package/dist/utils.js +15 -4
- package/package.json +4 -3
- package/dist/base-popper/index.js +0 -108
package/dist/bubble/index.js
CHANGED
|
@@ -1,13 +1,856 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
import {
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
1
|
+
var bn = Object.defineProperty;
|
|
2
|
+
var _n = (u, e, t) => e in u ? bn(u, e, { enumerable: !0, configurable: !0, writable: !0, value: t }) : u[e] = t;
|
|
3
|
+
var xe = (u, e, t) => _n(u, typeof e != "symbol" ? e + "" : e, t);
|
|
4
|
+
import { defineComponent as ku, ref as we, createElementBlock as M, openBlock as T, createElementVNode as I, createVNode as ue, toDisplayString as xu, unref as nu, normalizeClass as mu, withDirectives as At, vShow as Ct, computed as Lu, useCssModule as mn, createCommentVNode as Ou, createTextVNode as xn, inject as j0, useAttrs as gn, createBlock as ru, resolveDynamicComponent as Cu, normalizeProps as ye, mergeProps as Nu, useCssVars as kn, useSlots as En, renderSlot as Ce, Fragment as ee, renderList as Ku, watch as An, createSlots as G0, withCtx as W0, guardReactiveProps as Cn, h as Z0, provide as V0 } from "vue";
|
|
5
|
+
import { _ as Dn } from "../loading.js";
|
|
6
|
+
import { t as yn } from "../utils.js";
|
|
7
|
+
import { f as Dt, T as Fn, A as Tn, y as Sn } from "../tiny-robot-svgs.js";
|
|
8
|
+
import { _ as qu } from "../_plugin-vue_export-helper.js";
|
|
9
|
+
import { u as wn } from "../index2.js";
|
|
10
|
+
class s0 {
|
|
11
|
+
}
|
|
12
|
+
const vn = { class: "tr-bubble__step-text" }, Rn = { class: "tr-bubble__step-text-title" }, Mn = { class: "tr-bubble__step-text-content-wrapper" }, In = /* @__PURE__ */ ku({
|
|
13
|
+
__name: "collapsible-text",
|
|
14
|
+
props: {
|
|
15
|
+
title: {},
|
|
16
|
+
content: {}
|
|
17
|
+
},
|
|
18
|
+
setup(u) {
|
|
19
|
+
const e = u, t = we(!1);
|
|
20
|
+
return (n, r) => (T(), M("div", vn, [
|
|
21
|
+
I("div", Rn, [
|
|
22
|
+
I("span", null, xu(e.title), 1),
|
|
23
|
+
ue(nu(Dt), {
|
|
24
|
+
class: mu(["expand-icon", { "rotate-180": t.value }]),
|
|
25
|
+
onClick: r[0] || (r[0] = (c) => t.value = !t.value)
|
|
26
|
+
}, null, 8, ["class"])
|
|
27
|
+
]),
|
|
28
|
+
I("div", Mn, [
|
|
29
|
+
At(I("div", { class: "tr-bubble__step-text-content" }, xu(e.content), 513), [
|
|
30
|
+
[Ct, !t.value]
|
|
31
|
+
])
|
|
32
|
+
])
|
|
33
|
+
]));
|
|
34
|
+
}
|
|
35
|
+
}), Ln = /* @__PURE__ */ qu(In, [["__scopeId", "data-v-08a61852"]]), On = Ln, Nn = { class: "tr-bubble__text" }, Bn = /* @__PURE__ */ ku({
|
|
36
|
+
__name: "text",
|
|
37
|
+
props: {
|
|
38
|
+
content: {}
|
|
39
|
+
},
|
|
40
|
+
setup(u) {
|
|
41
|
+
const e = u;
|
|
42
|
+
return (t, n) => (T(), M("span", Nn, xu(e.content), 1));
|
|
43
|
+
}
|
|
44
|
+
}), Pn = /* @__PURE__ */ qu(Bn, [["__scopeId", "data-v-48128fbb"]]), l0 = Pn, zn = { class: "tr-bubble__step-tool" }, qn = { class: "tr-bubble__step-tool-header" }, Un = { class: "tr-bubble__step-tool-left" }, Hn = { class: "tr-bubble__step-tool-title" }, $n = { class: "tr-bubble__step-tool-name" }, jn = { class: "tr-bubble__step-tool-expand" }, Gn = {
|
|
45
|
+
key: 0,
|
|
46
|
+
class: "tr-bubble__step-tool-params"
|
|
47
|
+
}, Wn = ["innerHTML"], Zn = /* @__PURE__ */ ku({
|
|
48
|
+
__name: "tool",
|
|
49
|
+
props: {
|
|
50
|
+
name: {},
|
|
51
|
+
status: {},
|
|
52
|
+
params: {},
|
|
53
|
+
formatPretty: { type: Boolean }
|
|
54
|
+
},
|
|
55
|
+
setup(u) {
|
|
56
|
+
const e = u, t = we(!1), n = Lu(() => e.status === "running" ? "正在调用" : e.status === "success" ? "已调用" : e.status === "failed" ? "调用失败" : "已取消"), r = mn(), c = (i) => {
|
|
57
|
+
if (!i)
|
|
58
|
+
return "";
|
|
59
|
+
let o = "";
|
|
60
|
+
const a = e.formatPretty ? 2 : 0;
|
|
61
|
+
try {
|
|
62
|
+
typeof i == "string" ? o = JSON.stringify(JSON.parse(i), null, a) : o = JSON.stringify(i, null, a);
|
|
63
|
+
} catch (s) {
|
|
64
|
+
console.warn(s);
|
|
65
|
+
}
|
|
66
|
+
return o = o.replace(
|
|
67
|
+
/("(\\u[a-zA-Z0-9]{4}|\\[^u]|[^\\"])*"(\s*:)?|\b(true|false|null)\b|-?\d+(?:\.\d+)?(?:[eE][+-]?\d+)?)/g,
|
|
68
|
+
(s) => {
|
|
69
|
+
let f = "number";
|
|
70
|
+
return /^"/.test(s) ? f = /:$/.test(s) ? "key" : "string" : /true|false/.test(s) ? f = "boolean" : /null/.test(s) && (f = "null"), `<span class="${r[f]}">${s}</span>`;
|
|
71
|
+
}
|
|
72
|
+
), o;
|
|
73
|
+
};
|
|
74
|
+
return (i, o) => (T(), M("div", zn, [
|
|
75
|
+
I("div", qn, [
|
|
76
|
+
I("div", Un, [
|
|
77
|
+
ue(nu(Fn), { class: "tr-bubble__step-tool-icon" }),
|
|
78
|
+
I("span", Hn, [
|
|
79
|
+
xn(xu(n.value) + " ", 1),
|
|
80
|
+
I("span", $n, xu(e.name), 1)
|
|
81
|
+
])
|
|
82
|
+
]),
|
|
83
|
+
I("div", jn, [
|
|
84
|
+
ue(nu(Tn), {
|
|
85
|
+
class: mu(["expand-icon", { "-rotate-90": t.value }]),
|
|
86
|
+
onClick: o[0] || (o[0] = (a) => t.value = !t.value)
|
|
87
|
+
}, null, 8, ["class"])
|
|
88
|
+
])
|
|
89
|
+
]),
|
|
90
|
+
t.value ? Ou("", !0) : (T(), M("div", Gn, [
|
|
91
|
+
o[1] || (o[1] = I("hr", { class: "tr-bubble__step-tool-hr" }, null, -1)),
|
|
92
|
+
I("div", {
|
|
93
|
+
class: "tr-bubble__step-tool-params-content",
|
|
94
|
+
innerHTML: c(e.params)
|
|
95
|
+
}, null, 8, Wn)
|
|
96
|
+
]))
|
|
97
|
+
]));
|
|
98
|
+
}
|
|
99
|
+
}), Vn = "_number_jtifp_2", Yn = "_key_jtifp_6", Xn = "_string_jtifp_10", Jn = "_boolean_jtifp_14", Qn = {
|
|
100
|
+
number: Vn,
|
|
101
|
+
key: Yn,
|
|
102
|
+
string: Xn,
|
|
103
|
+
boolean: Jn,
|
|
104
|
+
null: "_null_jtifp_18"
|
|
105
|
+
}, Kn = {
|
|
106
|
+
$style: Qn
|
|
107
|
+
}, ur = /* @__PURE__ */ qu(Zn, [["__cssModules", Kn], ["__scopeId", "data-v-95e13117"]]), er = ur, yt = /* @__PURE__ */ new Map([
|
|
108
|
+
["text", l0],
|
|
109
|
+
["tool", er],
|
|
110
|
+
["collapsible-text", On]
|
|
111
|
+
]), Ft = Symbol("bubbleMessageRendererMap"), Tt = Symbol("bubbleMessageFallbackRenderer"), tr = /* @__PURE__ */ ku({
|
|
112
|
+
inheritAttrs: !1,
|
|
113
|
+
__name: "Message",
|
|
114
|
+
props: {
|
|
115
|
+
type: {}
|
|
116
|
+
},
|
|
117
|
+
setup(u) {
|
|
118
|
+
const e = j0(Ft, yt), t = j0(Tt, l0), n = u, r = gn(), c = (a) => {
|
|
119
|
+
const s = { ...r, ...n }, f = e.get(a) || t;
|
|
120
|
+
return typeof f == "function" ? { isComponent: !1, vNodeOrComponent: f(s) } : f instanceof s0 ? { isComponent: !1, vNodeOrComponent: f.render(s) } : { isComponent: !0, vNodeOrComponent: f };
|
|
121
|
+
}, { isComponent: i, vNodeOrComponent: o } = c(n.type);
|
|
122
|
+
return (a, s) => nu(i) ? (T(), ru(Cu(nu(o)), ye(Nu({ key: 0 }, { ...n, ...nu(r) })), null, 16)) : (T(), ru(Cu(nu(o)), { key: 1 }));
|
|
123
|
+
}
|
|
124
|
+
}), nr = {
|
|
125
|
+
key: 0,
|
|
126
|
+
class: "tr-bubble__avatar"
|
|
127
|
+
}, rr = { class: "tr-bubble__content-wrapper" }, cr = {
|
|
128
|
+
key: 0,
|
|
129
|
+
class: "tr-bubble__content-messages"
|
|
130
|
+
}, or = {
|
|
131
|
+
key: 1,
|
|
132
|
+
class: "tr-bubble__body-text"
|
|
133
|
+
}, ir = {
|
|
134
|
+
key: 2,
|
|
135
|
+
class: "tr-bubble__aborted"
|
|
136
|
+
}, ar = {
|
|
137
|
+
key: 3,
|
|
138
|
+
class: "tr-bubble__footer"
|
|
139
|
+
}, sr = /* @__PURE__ */ ku({
|
|
140
|
+
__name: "Bubble",
|
|
141
|
+
props: {
|
|
142
|
+
content: { default: "" },
|
|
143
|
+
messages: {},
|
|
144
|
+
id: {},
|
|
145
|
+
role: {},
|
|
146
|
+
loading: { type: Boolean },
|
|
147
|
+
aborted: { type: Boolean },
|
|
148
|
+
placement: { default: "start" },
|
|
149
|
+
avatar: {},
|
|
150
|
+
shape: { default: "corner" },
|
|
151
|
+
contentRenderer: {},
|
|
152
|
+
hidden: { type: Boolean },
|
|
153
|
+
maxWidth: { default: "80%" }
|
|
154
|
+
},
|
|
155
|
+
setup(u) {
|
|
156
|
+
kn((i) => ({
|
|
157
|
+
"79ca620e": nu(yn)(e.maxWidth)
|
|
158
|
+
}));
|
|
159
|
+
const e = u, t = En(), n = Lu(() => {
|
|
160
|
+
const i = e.contentRenderer;
|
|
161
|
+
return i ? typeof i == "function" ? { isComponent: !1, vNodeOrComponent: i(e) } : i instanceof s0 ? { isComponent: !1, vNodeOrComponent: i.render(e) } : { isComponent: !0, vNodeOrComponent: i } : null;
|
|
162
|
+
}), r = Lu(() => e.content), c = Lu(() => e.placement === "start");
|
|
163
|
+
return (i, o) => {
|
|
164
|
+
var a;
|
|
165
|
+
return T(), M("div", {
|
|
166
|
+
class: mu([
|
|
167
|
+
"tr-bubble",
|
|
168
|
+
{
|
|
169
|
+
"placement-start": c.value,
|
|
170
|
+
"placement-end": !c.value
|
|
171
|
+
}
|
|
172
|
+
])
|
|
173
|
+
}, [
|
|
174
|
+
e.avatar ? (T(), M("div", nr, [
|
|
175
|
+
(T(), ru(Cu(e.avatar)))
|
|
176
|
+
])) : Ou("", !0),
|
|
177
|
+
I("div", rr, [
|
|
178
|
+
e.loading ? Ce(i.$slots, "loading", {
|
|
179
|
+
key: 0,
|
|
180
|
+
bubbleProps: e
|
|
181
|
+
}, () => [
|
|
182
|
+
I("div", {
|
|
183
|
+
class: mu(["tr-bubble__content", { "border-corner": e.shape === "corner" }])
|
|
184
|
+
}, o[0] || (o[0] = [
|
|
185
|
+
I("img", {
|
|
186
|
+
src: Dn,
|
|
187
|
+
alt: "loading",
|
|
188
|
+
class: "tr-bubble__loading"
|
|
189
|
+
}, null, -1)
|
|
190
|
+
]), 2)
|
|
191
|
+
], !0) : (T(), M("div", {
|
|
192
|
+
key: 1,
|
|
193
|
+
class: mu(["tr-bubble__content", { "border-corner": e.shape === "corner" }])
|
|
194
|
+
}, [
|
|
195
|
+
(a = e.messages) != null && a.length ? (T(), M("div", cr, [
|
|
196
|
+
(T(!0), M(ee, null, Ku(e.messages, (s, f) => (T(), ru(tr, Nu({ key: f }, { ref_for: !0 }, s), null, 16))), 128))
|
|
197
|
+
])) : Ce(i.$slots, "default", {
|
|
198
|
+
key: 1,
|
|
199
|
+
bubbleProps: e
|
|
200
|
+
}, () => [
|
|
201
|
+
n.value ? (T(), M(ee, { key: 0 }, [
|
|
202
|
+
n.value.isComponent ? (T(), ru(Cu(n.value.vNodeOrComponent), ye(Nu({ key: 0 }, e)), null, 16)) : (T(), ru(Cu(n.value.vNodeOrComponent), { key: 1 }))
|
|
203
|
+
], 64)) : (T(), M("span", or, xu(r.value), 1))
|
|
204
|
+
], !0),
|
|
205
|
+
e.aborted ? (T(), M("span", ir, "(用户停止)")) : Ou("", !0),
|
|
206
|
+
t.footer ? (T(), M("div", ar, [
|
|
207
|
+
Ce(i.$slots, "footer", { bubbleProps: e }, void 0, !0)
|
|
208
|
+
])) : Ou("", !0)
|
|
209
|
+
], 2))
|
|
210
|
+
])
|
|
211
|
+
], 2);
|
|
212
|
+
};
|
|
213
|
+
}
|
|
214
|
+
}), Du = /* @__PURE__ */ qu(sr, [["__scopeId", "data-v-1dbe68e6"]]), lr = /* @__PURE__ */ ku({
|
|
215
|
+
__name: "BubbleList",
|
|
216
|
+
props: {
|
|
217
|
+
items: {},
|
|
218
|
+
roles: {},
|
|
219
|
+
loading: { type: Boolean },
|
|
220
|
+
loadingRole: {},
|
|
221
|
+
autoScroll: { type: Boolean }
|
|
222
|
+
},
|
|
223
|
+
setup(u) {
|
|
224
|
+
const e = u, t = we(null), { y: n } = wn(t, {
|
|
225
|
+
behavior: "smooth",
|
|
226
|
+
throttle: 100
|
|
227
|
+
}), r = Lu(() => e.items.at(-1));
|
|
228
|
+
An([() => e.items.length, () => {
|
|
229
|
+
var a;
|
|
230
|
+
return (a = r.value) == null ? void 0 : a.content;
|
|
231
|
+
}], () => {
|
|
232
|
+
!e.autoScroll || !t.value || (n.value = t.value.scrollHeight);
|
|
233
|
+
});
|
|
234
|
+
const c = (a) => {
|
|
235
|
+
var d;
|
|
236
|
+
const s = a.role ? ((d = e.roles) == null ? void 0 : d[a.role]) || {} : {}, { slots: f, ...h } = s, { slots: _, ...p } = a;
|
|
237
|
+
return { ...h, ...p };
|
|
238
|
+
}, i = (a) => {
|
|
239
|
+
var f;
|
|
240
|
+
return { ...(a.role ? ((f = e.roles) == null ? void 0 : f[a.role]) || {} : {}).slots, ...a.slots };
|
|
241
|
+
}, o = Lu(() => {
|
|
242
|
+
var f;
|
|
243
|
+
if (!(e.loading && e.loadingRole && ((f = e.roles) != null && f[e.loadingRole])))
|
|
244
|
+
return null;
|
|
245
|
+
const { slots: a, ...s } = e.roles[e.loadingRole];
|
|
246
|
+
return { props: { ...s, loading: !0 }, slots: a };
|
|
247
|
+
});
|
|
248
|
+
return (a, s) => (T(), M("div", {
|
|
249
|
+
class: "tr-bubble-list",
|
|
250
|
+
ref_key: "scrollContainerRef",
|
|
251
|
+
ref: t
|
|
252
|
+
}, [
|
|
253
|
+
(T(!0), M(ee, null, Ku(e.items, (f, h) => (T(), M(ee, {
|
|
254
|
+
key: f.id || h
|
|
255
|
+
}, [
|
|
256
|
+
f.hidden ? Ou("", !0) : (T(), ru(Du, Nu({
|
|
257
|
+
key: 0,
|
|
258
|
+
ref_for: !0
|
|
259
|
+
}, c(f)), G0({ _: 2 }, [
|
|
260
|
+
Ku(i(f), (_, p) => ({
|
|
261
|
+
name: p,
|
|
262
|
+
fn: W0((d) => [
|
|
263
|
+
(T(), ru(Cu(_), Nu({ ref_for: !0 }, d), null, 16))
|
|
264
|
+
])
|
|
265
|
+
}))
|
|
266
|
+
]), 1040))
|
|
267
|
+
], 64))), 128)),
|
|
268
|
+
o.value ? (T(), ru(Du, ye(Nu({ key: 0 }, o.value.props)), G0({ _: 2 }, [
|
|
269
|
+
Ku(o.value.slots, (f, h) => ({
|
|
270
|
+
name: h,
|
|
271
|
+
fn: W0((_) => [
|
|
272
|
+
(T(), ru(Cu(f), ye(Cn(_)), null, 16))
|
|
273
|
+
])
|
|
274
|
+
}))
|
|
275
|
+
]), 1040)) : Ou("", !0)
|
|
276
|
+
], 512));
|
|
277
|
+
}
|
|
278
|
+
}), te = /* @__PURE__ */ qu(lr, [["__scopeId", "data-v-24c3a7d6"]]), fr = { class: "tr-chain-list" }, dr = { class: "tr-chain-item__header" }, hr = { class: "tr-chain-item__icon" }, pr = { class: "tr-chain-item__title" }, br = { class: "tr-chain-item__body" }, _r = ["innerHTML"], mr = /* @__PURE__ */ ku({
|
|
279
|
+
__name: "chain",
|
|
280
|
+
props: {
|
|
281
|
+
items: {},
|
|
282
|
+
html: { type: Boolean, default: !0 },
|
|
283
|
+
contentClass: {}
|
|
284
|
+
},
|
|
285
|
+
setup(u) {
|
|
286
|
+
const e = u, t = we({}), n = (r) => {
|
|
287
|
+
t.value[r] = !t.value[r];
|
|
288
|
+
};
|
|
289
|
+
return (r, c) => (T(), M("div", fr, [
|
|
290
|
+
(T(!0), M(ee, null, Ku(e.items, (i, o) => (T(), M("div", {
|
|
291
|
+
class: "tr-chain-item",
|
|
292
|
+
key: o
|
|
293
|
+
}, [
|
|
294
|
+
I("div", dr, [
|
|
295
|
+
I("div", hr, [
|
|
296
|
+
ue(nu(Sn))
|
|
297
|
+
]),
|
|
298
|
+
I("div", pr, xu(i.title), 1),
|
|
299
|
+
ue(nu(Dt), {
|
|
300
|
+
class: mu(["expand-icon", { "rotate-180": t.value[o] }]),
|
|
301
|
+
onClick: (a) => n(o)
|
|
302
|
+
}, null, 8, ["class", "onClick"])
|
|
303
|
+
]),
|
|
304
|
+
At(I("div", br, [
|
|
305
|
+
c[0] || (c[0] = I("div", { class: "tr-chain-item__chain-line-wrapper" }, [
|
|
306
|
+
I("div", { class: "tr-chain-item__chain-line" })
|
|
307
|
+
], -1)),
|
|
308
|
+
e.html ? (T(), M("div", {
|
|
309
|
+
key: 1,
|
|
310
|
+
class: mu(["tr-chain-item__content", e.contentClass]),
|
|
311
|
+
innerHTML: i.content
|
|
312
|
+
}, null, 10, _r)) : (T(), M("div", {
|
|
313
|
+
key: 0,
|
|
314
|
+
class: mu(["tr-chain-item__content", e.contentClass])
|
|
315
|
+
}, xu(i.content), 3))
|
|
316
|
+
], 512), [
|
|
317
|
+
[Ct, !t.value[o]]
|
|
318
|
+
])
|
|
319
|
+
]))), 128))
|
|
320
|
+
]));
|
|
321
|
+
}
|
|
322
|
+
}), xr = /* @__PURE__ */ qu(mr, [["__scopeId", "data-v-2842a305"]]), Bi = xr;
|
|
323
|
+
/*! @license DOMPurify 3.2.6 | (c) Cure53 and other contributors | Released under the Apache license 2.0 and Mozilla Public License 2.0 | github.com/cure53/DOMPurify/blob/3.2.6/LICENSE */
|
|
324
|
+
const {
|
|
325
|
+
entries: St,
|
|
326
|
+
setPrototypeOf: Y0,
|
|
327
|
+
isFrozen: gr,
|
|
328
|
+
getPrototypeOf: kr,
|
|
329
|
+
getOwnPropertyDescriptor: Er
|
|
330
|
+
} = Object;
|
|
331
|
+
let {
|
|
332
|
+
freeze: G,
|
|
333
|
+
seal: J,
|
|
334
|
+
create: wt
|
|
335
|
+
} = Object, {
|
|
336
|
+
apply: r0,
|
|
337
|
+
construct: c0
|
|
338
|
+
} = typeof Reflect < "u" && Reflect;
|
|
339
|
+
G || (G = function(e) {
|
|
340
|
+
return e;
|
|
341
|
+
});
|
|
342
|
+
J || (J = function(e) {
|
|
343
|
+
return e;
|
|
344
|
+
});
|
|
345
|
+
r0 || (r0 = function(e, t, n) {
|
|
346
|
+
return e.apply(t, n);
|
|
347
|
+
});
|
|
348
|
+
c0 || (c0 = function(e, t) {
|
|
349
|
+
return new e(...t);
|
|
350
|
+
});
|
|
351
|
+
const ge = W(Array.prototype.forEach), Ar = W(Array.prototype.lastIndexOf), X0 = W(Array.prototype.pop), Vu = W(Array.prototype.push), Cr = W(Array.prototype.splice), De = W(String.prototype.toLowerCase), We = W(String.prototype.toString), J0 = W(String.prototype.match), Yu = W(String.prototype.replace), Dr = W(String.prototype.indexOf), yr = W(String.prototype.trim), K = W(Object.prototype.hasOwnProperty), j = W(RegExp.prototype.test), Xu = Fr(TypeError);
|
|
352
|
+
function W(u) {
|
|
353
|
+
return function(e) {
|
|
354
|
+
e instanceof RegExp && (e.lastIndex = 0);
|
|
355
|
+
for (var t = arguments.length, n = new Array(t > 1 ? t - 1 : 0), r = 1; r < t; r++)
|
|
356
|
+
n[r - 1] = arguments[r];
|
|
357
|
+
return r0(u, e, n);
|
|
358
|
+
};
|
|
359
|
+
}
|
|
360
|
+
function Fr(u) {
|
|
361
|
+
return function() {
|
|
362
|
+
for (var e = arguments.length, t = new Array(e), n = 0; n < e; n++)
|
|
363
|
+
t[n] = arguments[n];
|
|
364
|
+
return c0(u, t);
|
|
365
|
+
};
|
|
366
|
+
}
|
|
367
|
+
function F(u, e) {
|
|
368
|
+
let t = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : De;
|
|
369
|
+
Y0 && Y0(u, null);
|
|
370
|
+
let n = e.length;
|
|
371
|
+
for (; n--; ) {
|
|
372
|
+
let r = e[n];
|
|
373
|
+
if (typeof r == "string") {
|
|
374
|
+
const c = t(r);
|
|
375
|
+
c !== r && (gr(e) || (e[n] = c), r = c);
|
|
376
|
+
}
|
|
377
|
+
u[r] = !0;
|
|
378
|
+
}
|
|
379
|
+
return u;
|
|
380
|
+
}
|
|
381
|
+
function Tr(u) {
|
|
382
|
+
for (let e = 0; e < u.length; e++)
|
|
383
|
+
K(u, e) || (u[e] = null);
|
|
384
|
+
return u;
|
|
385
|
+
}
|
|
386
|
+
function du(u) {
|
|
387
|
+
const e = wt(null);
|
|
388
|
+
for (const [t, n] of St(u))
|
|
389
|
+
K(u, t) && (Array.isArray(n) ? e[t] = Tr(n) : n && typeof n == "object" && n.constructor === Object ? e[t] = du(n) : e[t] = n);
|
|
390
|
+
return e;
|
|
391
|
+
}
|
|
392
|
+
function Ju(u, e) {
|
|
393
|
+
for (; u !== null; ) {
|
|
394
|
+
const n = Er(u, e);
|
|
395
|
+
if (n) {
|
|
396
|
+
if (n.get)
|
|
397
|
+
return W(n.get);
|
|
398
|
+
if (typeof n.value == "function")
|
|
399
|
+
return W(n.value);
|
|
400
|
+
}
|
|
401
|
+
u = kr(u);
|
|
402
|
+
}
|
|
403
|
+
function t() {
|
|
404
|
+
return null;
|
|
405
|
+
}
|
|
406
|
+
return t;
|
|
407
|
+
}
|
|
408
|
+
const Q0 = G(["a", "abbr", "acronym", "address", "area", "article", "aside", "audio", "b", "bdi", "bdo", "big", "blink", "blockquote", "body", "br", "button", "canvas", "caption", "center", "cite", "code", "col", "colgroup", "content", "data", "datalist", "dd", "decorator", "del", "details", "dfn", "dialog", "dir", "div", "dl", "dt", "element", "em", "fieldset", "figcaption", "figure", "font", "footer", "form", "h1", "h2", "h3", "h4", "h5", "h6", "head", "header", "hgroup", "hr", "html", "i", "img", "input", "ins", "kbd", "label", "legend", "li", "main", "map", "mark", "marquee", "menu", "menuitem", "meter", "nav", "nobr", "ol", "optgroup", "option", "output", "p", "picture", "pre", "progress", "q", "rp", "rt", "ruby", "s", "samp", "section", "select", "shadow", "small", "source", "spacer", "span", "strike", "strong", "style", "sub", "summary", "sup", "table", "tbody", "td", "template", "textarea", "tfoot", "th", "thead", "time", "tr", "track", "tt", "u", "ul", "var", "video", "wbr"]), Ze = G(["svg", "a", "altglyph", "altglyphdef", "altglyphitem", "animatecolor", "animatemotion", "animatetransform", "circle", "clippath", "defs", "desc", "ellipse", "filter", "font", "g", "glyph", "glyphref", "hkern", "image", "line", "lineargradient", "marker", "mask", "metadata", "mpath", "path", "pattern", "polygon", "polyline", "radialgradient", "rect", "stop", "style", "switch", "symbol", "text", "textpath", "title", "tref", "tspan", "view", "vkern"]), Ve = G(["feBlend", "feColorMatrix", "feComponentTransfer", "feComposite", "feConvolveMatrix", "feDiffuseLighting", "feDisplacementMap", "feDistantLight", "feDropShadow", "feFlood", "feFuncA", "feFuncB", "feFuncG", "feFuncR", "feGaussianBlur", "feImage", "feMerge", "feMergeNode", "feMorphology", "feOffset", "fePointLight", "feSpecularLighting", "feSpotLight", "feTile", "feTurbulence"]), Sr = G(["animate", "color-profile", "cursor", "discard", "font-face", "font-face-format", "font-face-name", "font-face-src", "font-face-uri", "foreignobject", "hatch", "hatchpath", "mesh", "meshgradient", "meshpatch", "meshrow", "missing-glyph", "script", "set", "solidcolor", "unknown", "use"]), Ye = G(["math", "menclose", "merror", "mfenced", "mfrac", "mglyph", "mi", "mlabeledtr", "mmultiscripts", "mn", "mo", "mover", "mpadded", "mphantom", "mroot", "mrow", "ms", "mspace", "msqrt", "mstyle", "msub", "msup", "msubsup", "mtable", "mtd", "mtext", "mtr", "munder", "munderover", "mprescripts"]), wr = G(["maction", "maligngroup", "malignmark", "mlongdiv", "mscarries", "mscarry", "msgroup", "mstack", "msline", "msrow", "semantics", "annotation", "annotation-xml", "mprescripts", "none"]), K0 = G(["#text"]), ut = G(["accept", "action", "align", "alt", "autocapitalize", "autocomplete", "autopictureinpicture", "autoplay", "background", "bgcolor", "border", "capture", "cellpadding", "cellspacing", "checked", "cite", "class", "clear", "color", "cols", "colspan", "controls", "controlslist", "coords", "crossorigin", "datetime", "decoding", "default", "dir", "disabled", "disablepictureinpicture", "disableremoteplayback", "download", "draggable", "enctype", "enterkeyhint", "face", "for", "headers", "height", "hidden", "high", "href", "hreflang", "id", "inputmode", "integrity", "ismap", "kind", "label", "lang", "list", "loading", "loop", "low", "max", "maxlength", "media", "method", "min", "minlength", "multiple", "muted", "name", "nonce", "noshade", "novalidate", "nowrap", "open", "optimum", "pattern", "placeholder", "playsinline", "popover", "popovertarget", "popovertargetaction", "poster", "preload", "pubdate", "radiogroup", "readonly", "rel", "required", "rev", "reversed", "role", "rows", "rowspan", "spellcheck", "scope", "selected", "shape", "size", "sizes", "span", "srclang", "start", "src", "srcset", "step", "style", "summary", "tabindex", "title", "translate", "type", "usemap", "valign", "value", "width", "wrap", "xmlns", "slot"]), Xe = G(["accent-height", "accumulate", "additive", "alignment-baseline", "amplitude", "ascent", "attributename", "attributetype", "azimuth", "basefrequency", "baseline-shift", "begin", "bias", "by", "class", "clip", "clippathunits", "clip-path", "clip-rule", "color", "color-interpolation", "color-interpolation-filters", "color-profile", "color-rendering", "cx", "cy", "d", "dx", "dy", "diffuseconstant", "direction", "display", "divisor", "dur", "edgemode", "elevation", "end", "exponent", "fill", "fill-opacity", "fill-rule", "filter", "filterunits", "flood-color", "flood-opacity", "font-family", "font-size", "font-size-adjust", "font-stretch", "font-style", "font-variant", "font-weight", "fx", "fy", "g1", "g2", "glyph-name", "glyphref", "gradientunits", "gradienttransform", "height", "href", "id", "image-rendering", "in", "in2", "intercept", "k", "k1", "k2", "k3", "k4", "kerning", "keypoints", "keysplines", "keytimes", "lang", "lengthadjust", "letter-spacing", "kernelmatrix", "kernelunitlength", "lighting-color", "local", "marker-end", "marker-mid", "marker-start", "markerheight", "markerunits", "markerwidth", "maskcontentunits", "maskunits", "max", "mask", "media", "method", "mode", "min", "name", "numoctaves", "offset", "operator", "opacity", "order", "orient", "orientation", "origin", "overflow", "paint-order", "path", "pathlength", "patterncontentunits", "patterntransform", "patternunits", "points", "preservealpha", "preserveaspectratio", "primitiveunits", "r", "rx", "ry", "radius", "refx", "refy", "repeatcount", "repeatdur", "restart", "result", "rotate", "scale", "seed", "shape-rendering", "slope", "specularconstant", "specularexponent", "spreadmethod", "startoffset", "stddeviation", "stitchtiles", "stop-color", "stop-opacity", "stroke-dasharray", "stroke-dashoffset", "stroke-linecap", "stroke-linejoin", "stroke-miterlimit", "stroke-opacity", "stroke", "stroke-width", "style", "surfacescale", "systemlanguage", "tabindex", "tablevalues", "targetx", "targety", "transform", "transform-origin", "text-anchor", "text-decoration", "text-rendering", "textlength", "type", "u1", "u2", "unicode", "values", "viewbox", "visibility", "version", "vert-adv-y", "vert-origin-x", "vert-origin-y", "width", "word-spacing", "wrap", "writing-mode", "xchannelselector", "ychannelselector", "x", "x1", "x2", "xmlns", "y", "y1", "y2", "z", "zoomandpan"]), et = G(["accent", "accentunder", "align", "bevelled", "close", "columnsalign", "columnlines", "columnspan", "denomalign", "depth", "dir", "display", "displaystyle", "encoding", "fence", "frame", "height", "href", "id", "largeop", "length", "linethickness", "lspace", "lquote", "mathbackground", "mathcolor", "mathsize", "mathvariant", "maxsize", "minsize", "movablelimits", "notation", "numalign", "open", "rowalign", "rowlines", "rowspacing", "rowspan", "rspace", "rquote", "scriptlevel", "scriptminsize", "scriptsizemultiplier", "selection", "separator", "separators", "stretchy", "subscriptshift", "supscriptshift", "symmetric", "voffset", "width", "xmlns"]), ke = G(["xlink:href", "xml:id", "xlink:title", "xml:space", "xmlns:xlink"]), vr = J(/\{\{[\w\W]*|[\w\W]*\}\}/gm), Rr = J(/<%[\w\W]*|[\w\W]*%>/gm), Mr = J(/\$\{[\w\W]*/gm), Ir = J(/^data-[\-\w.\u00B7-\uFFFF]+$/), Lr = J(/^aria-[\-\w]+$/), vt = J(
|
|
409
|
+
/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|matrix):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i
|
|
410
|
+
// eslint-disable-line no-useless-escape
|
|
411
|
+
), Or = J(/^(?:\w+script|data):/i), Nr = J(
|
|
412
|
+
/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g
|
|
413
|
+
// eslint-disable-line no-control-regex
|
|
414
|
+
), Rt = J(/^html$/i), Br = J(/^[a-z][.\w]*(-[.\w]+)+$/i);
|
|
415
|
+
var tt = /* @__PURE__ */ Object.freeze({
|
|
416
|
+
__proto__: null,
|
|
417
|
+
ARIA_ATTR: Lr,
|
|
418
|
+
ATTR_WHITESPACE: Nr,
|
|
419
|
+
CUSTOM_ELEMENT: Br,
|
|
420
|
+
DATA_ATTR: Ir,
|
|
421
|
+
DOCTYPE_NAME: Rt,
|
|
422
|
+
ERB_EXPR: Rr,
|
|
423
|
+
IS_ALLOWED_URI: vt,
|
|
424
|
+
IS_SCRIPT_OR_DATA: Or,
|
|
425
|
+
MUSTACHE_EXPR: vr,
|
|
426
|
+
TMPLIT_EXPR: Mr
|
|
427
|
+
});
|
|
428
|
+
const Qu = {
|
|
429
|
+
element: 1,
|
|
430
|
+
text: 3,
|
|
431
|
+
// Deprecated
|
|
432
|
+
progressingInstruction: 7,
|
|
433
|
+
comment: 8,
|
|
434
|
+
document: 9
|
|
435
|
+
}, Pr = function() {
|
|
436
|
+
return typeof window > "u" ? null : window;
|
|
437
|
+
}, zr = function(e, t) {
|
|
438
|
+
if (typeof e != "object" || typeof e.createPolicy != "function")
|
|
439
|
+
return null;
|
|
440
|
+
let n = null;
|
|
441
|
+
const r = "data-tt-policy-suffix";
|
|
442
|
+
t && t.hasAttribute(r) && (n = t.getAttribute(r));
|
|
443
|
+
const c = "dompurify" + (n ? "#" + n : "");
|
|
444
|
+
try {
|
|
445
|
+
return e.createPolicy(c, {
|
|
446
|
+
createHTML(i) {
|
|
447
|
+
return i;
|
|
448
|
+
},
|
|
449
|
+
createScriptURL(i) {
|
|
450
|
+
return i;
|
|
451
|
+
}
|
|
452
|
+
});
|
|
453
|
+
} catch {
|
|
454
|
+
return console.warn("TrustedTypes policy " + c + " could not be created."), null;
|
|
455
|
+
}
|
|
456
|
+
}, nt = function() {
|
|
457
|
+
return {
|
|
458
|
+
afterSanitizeAttributes: [],
|
|
459
|
+
afterSanitizeElements: [],
|
|
460
|
+
afterSanitizeShadowDOM: [],
|
|
461
|
+
beforeSanitizeAttributes: [],
|
|
462
|
+
beforeSanitizeElements: [],
|
|
463
|
+
beforeSanitizeShadowDOM: [],
|
|
464
|
+
uponSanitizeAttribute: [],
|
|
465
|
+
uponSanitizeElement: [],
|
|
466
|
+
uponSanitizeShadowNode: []
|
|
467
|
+
};
|
|
468
|
+
};
|
|
469
|
+
function Mt() {
|
|
470
|
+
let u = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : Pr();
|
|
471
|
+
const e = (g) => Mt(g);
|
|
472
|
+
if (e.version = "3.2.6", e.removed = [], !u || !u.document || u.document.nodeType !== Qu.document || !u.Element)
|
|
473
|
+
return e.isSupported = !1, e;
|
|
474
|
+
let {
|
|
475
|
+
document: t
|
|
476
|
+
} = u;
|
|
477
|
+
const n = t, r = n.currentScript, {
|
|
478
|
+
DocumentFragment: c,
|
|
479
|
+
HTMLTemplateElement: i,
|
|
480
|
+
Node: o,
|
|
481
|
+
Element: a,
|
|
482
|
+
NodeFilter: s,
|
|
483
|
+
NamedNodeMap: f = u.NamedNodeMap || u.MozNamedAttrMap,
|
|
484
|
+
HTMLFormElement: h,
|
|
485
|
+
DOMParser: _,
|
|
486
|
+
trustedTypes: p
|
|
487
|
+
} = u, d = a.prototype, C = Ju(d, "cloneNode"), D = Ju(d, "remove"), S = Ju(d, "nextSibling"), E = Ju(d, "childNodes"), k = Ju(d, "parentNode");
|
|
488
|
+
if (typeof i == "function") {
|
|
489
|
+
const g = t.createElement("template");
|
|
490
|
+
g.content && g.content.ownerDocument && (t = g.content.ownerDocument);
|
|
491
|
+
}
|
|
492
|
+
let m, A = "";
|
|
493
|
+
const {
|
|
494
|
+
implementation: y,
|
|
495
|
+
createNodeIterator: L,
|
|
496
|
+
createDocumentFragment: Y,
|
|
497
|
+
getElementsByTagName: eu
|
|
498
|
+
} = t, {
|
|
499
|
+
importNode: Eu
|
|
500
|
+
} = n;
|
|
501
|
+
let O = nt();
|
|
502
|
+
e.isSupported = typeof St == "function" && typeof k == "function" && y && y.createHTMLDocument !== void 0;
|
|
503
|
+
const {
|
|
504
|
+
MUSTACHE_EXPR: Hu,
|
|
505
|
+
ERB_EXPR: $u,
|
|
506
|
+
TMPLIT_EXPR: yu,
|
|
507
|
+
DATA_ATTR: hu,
|
|
508
|
+
ARIA_ATTR: Le,
|
|
509
|
+
IS_SCRIPT_OR_DATA: rn,
|
|
510
|
+
ATTR_WHITESPACE: g0,
|
|
511
|
+
CUSTOM_ELEMENT: cn
|
|
512
|
+
} = tt;
|
|
513
|
+
let {
|
|
514
|
+
IS_ALLOWED_URI: k0
|
|
515
|
+
} = tt, B = null;
|
|
516
|
+
const E0 = F({}, [...Q0, ...Ze, ...Ve, ...Ye, ...K0]);
|
|
517
|
+
let U = null;
|
|
518
|
+
const A0 = F({}, [...ut, ...Xe, ...et, ...ke]);
|
|
519
|
+
let R = Object.seal(wt(null, {
|
|
520
|
+
tagNameCheck: {
|
|
521
|
+
writable: !0,
|
|
522
|
+
configurable: !1,
|
|
523
|
+
enumerable: !0,
|
|
524
|
+
value: null
|
|
525
|
+
},
|
|
526
|
+
attributeNameCheck: {
|
|
527
|
+
writable: !0,
|
|
528
|
+
configurable: !1,
|
|
529
|
+
enumerable: !0,
|
|
530
|
+
value: null
|
|
531
|
+
},
|
|
532
|
+
allowCustomizedBuiltInElements: {
|
|
533
|
+
writable: !0,
|
|
534
|
+
configurable: !1,
|
|
535
|
+
enumerable: !0,
|
|
536
|
+
value: !1
|
|
537
|
+
}
|
|
538
|
+
})), ju = null, Oe = null, C0 = !0, Ne = !0, D0 = !1, y0 = !0, Fu = !1, fe = !0, Au = !1, Be = !1, Pe = !1, Tu = !1, de = !1, he = !1, F0 = !0, T0 = !1;
|
|
539
|
+
const on = "user-content-";
|
|
540
|
+
let ze = !0, Gu = !1, Su = {}, wu = null;
|
|
541
|
+
const S0 = F({}, ["annotation-xml", "audio", "colgroup", "desc", "foreignobject", "head", "iframe", "math", "mi", "mn", "mo", "ms", "mtext", "noembed", "noframes", "noscript", "plaintext", "script", "style", "svg", "template", "thead", "title", "video", "xmp"]);
|
|
542
|
+
let w0 = null;
|
|
543
|
+
const v0 = F({}, ["audio", "video", "img", "source", "image", "track"]);
|
|
544
|
+
let qe = null;
|
|
545
|
+
const R0 = F({}, ["alt", "class", "for", "id", "label", "name", "pattern", "placeholder", "role", "summary", "title", "value", "style", "xmlns"]), pe = "http://www.w3.org/1998/Math/MathML", be = "http://www.w3.org/2000/svg", su = "http://www.w3.org/1999/xhtml";
|
|
546
|
+
let vu = su, Ue = !1, He = null;
|
|
547
|
+
const an = F({}, [pe, be, su], We);
|
|
548
|
+
let _e = F({}, ["mi", "mo", "mn", "ms", "mtext"]), me = F({}, ["annotation-xml"]);
|
|
549
|
+
const sn = F({}, ["title", "style", "font", "a", "script"]);
|
|
550
|
+
let Wu = null;
|
|
551
|
+
const ln = ["application/xhtml+xml", "text/html"], fn = "text/html";
|
|
552
|
+
let P = null, Ru = null;
|
|
553
|
+
const dn = t.createElement("form"), M0 = function(l) {
|
|
554
|
+
return l instanceof RegExp || l instanceof Function;
|
|
555
|
+
}, $e = function() {
|
|
556
|
+
let l = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
|
|
557
|
+
if (!(Ru && Ru === l)) {
|
|
558
|
+
if ((!l || typeof l != "object") && (l = {}), l = du(l), Wu = // eslint-disable-next-line unicorn/prefer-includes
|
|
559
|
+
ln.indexOf(l.PARSER_MEDIA_TYPE) === -1 ? fn : l.PARSER_MEDIA_TYPE, P = Wu === "application/xhtml+xml" ? We : De, B = K(l, "ALLOWED_TAGS") ? F({}, l.ALLOWED_TAGS, P) : E0, U = K(l, "ALLOWED_ATTR") ? F({}, l.ALLOWED_ATTR, P) : A0, He = K(l, "ALLOWED_NAMESPACES") ? F({}, l.ALLOWED_NAMESPACES, We) : an, qe = K(l, "ADD_URI_SAFE_ATTR") ? F(du(R0), l.ADD_URI_SAFE_ATTR, P) : R0, w0 = K(l, "ADD_DATA_URI_TAGS") ? F(du(v0), l.ADD_DATA_URI_TAGS, P) : v0, wu = K(l, "FORBID_CONTENTS") ? F({}, l.FORBID_CONTENTS, P) : S0, ju = K(l, "FORBID_TAGS") ? F({}, l.FORBID_TAGS, P) : du({}), Oe = K(l, "FORBID_ATTR") ? F({}, l.FORBID_ATTR, P) : du({}), Su = K(l, "USE_PROFILES") ? l.USE_PROFILES : !1, C0 = l.ALLOW_ARIA_ATTR !== !1, Ne = l.ALLOW_DATA_ATTR !== !1, D0 = l.ALLOW_UNKNOWN_PROTOCOLS || !1, y0 = l.ALLOW_SELF_CLOSE_IN_ATTR !== !1, Fu = l.SAFE_FOR_TEMPLATES || !1, fe = l.SAFE_FOR_XML !== !1, Au = l.WHOLE_DOCUMENT || !1, Tu = l.RETURN_DOM || !1, de = l.RETURN_DOM_FRAGMENT || !1, he = l.RETURN_TRUSTED_TYPE || !1, Pe = l.FORCE_BODY || !1, F0 = l.SANITIZE_DOM !== !1, T0 = l.SANITIZE_NAMED_PROPS || !1, ze = l.KEEP_CONTENT !== !1, Gu = l.IN_PLACE || !1, k0 = l.ALLOWED_URI_REGEXP || vt, vu = l.NAMESPACE || su, _e = l.MATHML_TEXT_INTEGRATION_POINTS || _e, me = l.HTML_INTEGRATION_POINTS || me, R = l.CUSTOM_ELEMENT_HANDLING || {}, l.CUSTOM_ELEMENT_HANDLING && M0(l.CUSTOM_ELEMENT_HANDLING.tagNameCheck) && (R.tagNameCheck = l.CUSTOM_ELEMENT_HANDLING.tagNameCheck), l.CUSTOM_ELEMENT_HANDLING && M0(l.CUSTOM_ELEMENT_HANDLING.attributeNameCheck) && (R.attributeNameCheck = l.CUSTOM_ELEMENT_HANDLING.attributeNameCheck), l.CUSTOM_ELEMENT_HANDLING && typeof l.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements == "boolean" && (R.allowCustomizedBuiltInElements = l.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements), Fu && (Ne = !1), de && (Tu = !0), Su && (B = F({}, K0), U = [], Su.html === !0 && (F(B, Q0), F(U, ut)), Su.svg === !0 && (F(B, Ze), F(U, Xe), F(U, ke)), Su.svgFilters === !0 && (F(B, Ve), F(U, Xe), F(U, ke)), Su.mathMl === !0 && (F(B, Ye), F(U, et), F(U, ke))), l.ADD_TAGS && (B === E0 && (B = du(B)), F(B, l.ADD_TAGS, P)), l.ADD_ATTR && (U === A0 && (U = du(U)), F(U, l.ADD_ATTR, P)), l.ADD_URI_SAFE_ATTR && F(qe, l.ADD_URI_SAFE_ATTR, P), l.FORBID_CONTENTS && (wu === S0 && (wu = du(wu)), F(wu, l.FORBID_CONTENTS, P)), ze && (B["#text"] = !0), Au && F(B, ["html", "head", "body"]), B.table && (F(B, ["tbody"]), delete ju.tbody), l.TRUSTED_TYPES_POLICY) {
|
|
560
|
+
if (typeof l.TRUSTED_TYPES_POLICY.createHTML != "function")
|
|
561
|
+
throw Xu('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');
|
|
562
|
+
if (typeof l.TRUSTED_TYPES_POLICY.createScriptURL != "function")
|
|
563
|
+
throw Xu('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');
|
|
564
|
+
m = l.TRUSTED_TYPES_POLICY, A = m.createHTML("");
|
|
565
|
+
} else
|
|
566
|
+
m === void 0 && (m = zr(p, r)), m !== null && typeof A == "string" && (A = m.createHTML(""));
|
|
567
|
+
G && G(l), Ru = l;
|
|
568
|
+
}
|
|
569
|
+
}, I0 = F({}, [...Ze, ...Ve, ...Sr]), L0 = F({}, [...Ye, ...wr]), hn = function(l) {
|
|
570
|
+
let b = k(l);
|
|
571
|
+
(!b || !b.tagName) && (b = {
|
|
572
|
+
namespaceURI: vu,
|
|
573
|
+
tagName: "template"
|
|
574
|
+
});
|
|
575
|
+
const x = De(l.tagName), v = De(b.tagName);
|
|
576
|
+
return He[l.namespaceURI] ? l.namespaceURI === be ? b.namespaceURI === su ? x === "svg" : b.namespaceURI === pe ? x === "svg" && (v === "annotation-xml" || _e[v]) : !!I0[x] : l.namespaceURI === pe ? b.namespaceURI === su ? x === "math" : b.namespaceURI === be ? x === "math" && me[v] : !!L0[x] : l.namespaceURI === su ? b.namespaceURI === be && !me[v] || b.namespaceURI === pe && !_e[v] ? !1 : !L0[x] && (sn[x] || !I0[x]) : !!(Wu === "application/xhtml+xml" && He[l.namespaceURI]) : !1;
|
|
577
|
+
}, tu = function(l) {
|
|
578
|
+
Vu(e.removed, {
|
|
579
|
+
element: l
|
|
580
|
+
});
|
|
581
|
+
try {
|
|
582
|
+
k(l).removeChild(l);
|
|
583
|
+
} catch {
|
|
584
|
+
D(l);
|
|
585
|
+
}
|
|
586
|
+
}, Mu = function(l, b) {
|
|
587
|
+
try {
|
|
588
|
+
Vu(e.removed, {
|
|
589
|
+
attribute: b.getAttributeNode(l),
|
|
590
|
+
from: b
|
|
591
|
+
});
|
|
592
|
+
} catch {
|
|
593
|
+
Vu(e.removed, {
|
|
594
|
+
attribute: null,
|
|
595
|
+
from: b
|
|
596
|
+
});
|
|
597
|
+
}
|
|
598
|
+
if (b.removeAttribute(l), l === "is")
|
|
599
|
+
if (Tu || de)
|
|
600
|
+
try {
|
|
601
|
+
tu(b);
|
|
602
|
+
} catch {
|
|
603
|
+
}
|
|
604
|
+
else
|
|
605
|
+
try {
|
|
606
|
+
b.setAttribute(l, "");
|
|
607
|
+
} catch {
|
|
608
|
+
}
|
|
609
|
+
}, O0 = function(l) {
|
|
610
|
+
let b = null, x = null;
|
|
611
|
+
if (Pe)
|
|
612
|
+
l = "<remove></remove>" + l;
|
|
613
|
+
else {
|
|
614
|
+
const N = J0(l, /^[\r\n\t ]+/);
|
|
615
|
+
x = N && N[0];
|
|
616
|
+
}
|
|
617
|
+
Wu === "application/xhtml+xml" && vu === su && (l = '<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body>' + l + "</body></html>");
|
|
618
|
+
const v = m ? m.createHTML(l) : l;
|
|
619
|
+
if (vu === su)
|
|
620
|
+
try {
|
|
621
|
+
b = new _().parseFromString(v, Wu);
|
|
622
|
+
} catch {
|
|
623
|
+
}
|
|
624
|
+
if (!b || !b.documentElement) {
|
|
625
|
+
b = y.createDocument(vu, "template", null);
|
|
626
|
+
try {
|
|
627
|
+
b.documentElement.innerHTML = Ue ? A : v;
|
|
628
|
+
} catch {
|
|
629
|
+
}
|
|
630
|
+
}
|
|
631
|
+
const H = b.body || b.documentElement;
|
|
632
|
+
return l && x && H.insertBefore(t.createTextNode(x), H.childNodes[0] || null), vu === su ? eu.call(b, Au ? "html" : "body")[0] : Au ? b.documentElement : H;
|
|
633
|
+
}, N0 = function(l) {
|
|
634
|
+
return L.call(
|
|
635
|
+
l.ownerDocument || l,
|
|
636
|
+
l,
|
|
637
|
+
// eslint-disable-next-line no-bitwise
|
|
638
|
+
s.SHOW_ELEMENT | s.SHOW_COMMENT | s.SHOW_TEXT | s.SHOW_PROCESSING_INSTRUCTION | s.SHOW_CDATA_SECTION,
|
|
639
|
+
null
|
|
640
|
+
);
|
|
641
|
+
}, je = function(l) {
|
|
642
|
+
return l instanceof h && (typeof l.nodeName != "string" || typeof l.textContent != "string" || typeof l.removeChild != "function" || !(l.attributes instanceof f) || typeof l.removeAttribute != "function" || typeof l.setAttribute != "function" || typeof l.namespaceURI != "string" || typeof l.insertBefore != "function" || typeof l.hasChildNodes != "function");
|
|
643
|
+
}, B0 = function(l) {
|
|
644
|
+
return typeof o == "function" && l instanceof o;
|
|
645
|
+
};
|
|
646
|
+
function lu(g, l, b) {
|
|
647
|
+
ge(g, (x) => {
|
|
648
|
+
x.call(e, l, b, Ru);
|
|
649
|
+
});
|
|
650
|
+
}
|
|
651
|
+
const P0 = function(l) {
|
|
652
|
+
let b = null;
|
|
653
|
+
if (lu(O.beforeSanitizeElements, l, null), je(l))
|
|
654
|
+
return tu(l), !0;
|
|
655
|
+
const x = P(l.nodeName);
|
|
656
|
+
if (lu(O.uponSanitizeElement, l, {
|
|
657
|
+
tagName: x,
|
|
658
|
+
allowedTags: B
|
|
659
|
+
}), fe && l.hasChildNodes() && !B0(l.firstElementChild) && j(/<[/\w!]/g, l.innerHTML) && j(/<[/\w!]/g, l.textContent) || l.nodeType === Qu.progressingInstruction || fe && l.nodeType === Qu.comment && j(/<[/\w]/g, l.data))
|
|
660
|
+
return tu(l), !0;
|
|
661
|
+
if (!B[x] || ju[x]) {
|
|
662
|
+
if (!ju[x] && q0(x) && (R.tagNameCheck instanceof RegExp && j(R.tagNameCheck, x) || R.tagNameCheck instanceof Function && R.tagNameCheck(x)))
|
|
663
|
+
return !1;
|
|
664
|
+
if (ze && !wu[x]) {
|
|
665
|
+
const v = k(l) || l.parentNode, H = E(l) || l.childNodes;
|
|
666
|
+
if (H && v) {
|
|
667
|
+
const N = H.length;
|
|
668
|
+
for (let Z = N - 1; Z >= 0; --Z) {
|
|
669
|
+
const fu = C(H[Z], !0);
|
|
670
|
+
fu.__removalCount = (l.__removalCount || 0) + 1, v.insertBefore(fu, S(l));
|
|
671
|
+
}
|
|
672
|
+
}
|
|
673
|
+
}
|
|
674
|
+
return tu(l), !0;
|
|
675
|
+
}
|
|
676
|
+
return l instanceof a && !hn(l) || (x === "noscript" || x === "noembed" || x === "noframes") && j(/<\/no(script|embed|frames)/i, l.innerHTML) ? (tu(l), !0) : (Fu && l.nodeType === Qu.text && (b = l.textContent, ge([Hu, $u, yu], (v) => {
|
|
677
|
+
b = Yu(b, v, " ");
|
|
678
|
+
}), l.textContent !== b && (Vu(e.removed, {
|
|
679
|
+
element: l.cloneNode()
|
|
680
|
+
}), l.textContent = b)), lu(O.afterSanitizeElements, l, null), !1);
|
|
681
|
+
}, z0 = function(l, b, x) {
|
|
682
|
+
if (F0 && (b === "id" || b === "name") && (x in t || x in dn))
|
|
683
|
+
return !1;
|
|
684
|
+
if (!(Ne && !Oe[b] && j(hu, b))) {
|
|
685
|
+
if (!(C0 && j(Le, b))) {
|
|
686
|
+
if (!U[b] || Oe[b]) {
|
|
687
|
+
if (
|
|
688
|
+
// First condition does a very basic check if a) it's basically a valid custom element tagname AND
|
|
689
|
+
// b) if the tagName passes whatever the user has configured for CUSTOM_ELEMENT_HANDLING.tagNameCheck
|
|
690
|
+
// and c) if the attribute name passes whatever the user has configured for CUSTOM_ELEMENT_HANDLING.attributeNameCheck
|
|
691
|
+
!(q0(l) && (R.tagNameCheck instanceof RegExp && j(R.tagNameCheck, l) || R.tagNameCheck instanceof Function && R.tagNameCheck(l)) && (R.attributeNameCheck instanceof RegExp && j(R.attributeNameCheck, b) || R.attributeNameCheck instanceof Function && R.attributeNameCheck(b)) || // Alternative, second condition checks if it's an `is`-attribute, AND
|
|
692
|
+
// the value passes whatever the user has configured for CUSTOM_ELEMENT_HANDLING.tagNameCheck
|
|
693
|
+
b === "is" && R.allowCustomizedBuiltInElements && (R.tagNameCheck instanceof RegExp && j(R.tagNameCheck, x) || R.tagNameCheck instanceof Function && R.tagNameCheck(x)))
|
|
694
|
+
) return !1;
|
|
695
|
+
} else if (!qe[b]) {
|
|
696
|
+
if (!j(k0, Yu(x, g0, ""))) {
|
|
697
|
+
if (!((b === "src" || b === "xlink:href" || b === "href") && l !== "script" && Dr(x, "data:") === 0 && w0[l])) {
|
|
698
|
+
if (!(D0 && !j(rn, Yu(x, g0, "")))) {
|
|
699
|
+
if (x)
|
|
700
|
+
return !1;
|
|
701
|
+
}
|
|
702
|
+
}
|
|
703
|
+
}
|
|
704
|
+
}
|
|
705
|
+
}
|
|
706
|
+
}
|
|
707
|
+
return !0;
|
|
708
|
+
}, q0 = function(l) {
|
|
709
|
+
return l !== "annotation-xml" && J0(l, cn);
|
|
710
|
+
}, U0 = function(l) {
|
|
711
|
+
lu(O.beforeSanitizeAttributes, l, null);
|
|
712
|
+
const {
|
|
713
|
+
attributes: b
|
|
714
|
+
} = l;
|
|
715
|
+
if (!b || je(l))
|
|
716
|
+
return;
|
|
717
|
+
const x = {
|
|
718
|
+
attrName: "",
|
|
719
|
+
attrValue: "",
|
|
720
|
+
keepAttr: !0,
|
|
721
|
+
allowedAttributes: U,
|
|
722
|
+
forceKeepAttr: void 0
|
|
723
|
+
};
|
|
724
|
+
let v = b.length;
|
|
725
|
+
for (; v--; ) {
|
|
726
|
+
const H = b[v], {
|
|
727
|
+
name: N,
|
|
728
|
+
namespaceURI: Z,
|
|
729
|
+
value: fu
|
|
730
|
+
} = H, Zu = P(N), Ge = fu;
|
|
731
|
+
let $ = N === "value" ? Ge : yr(Ge);
|
|
732
|
+
if (x.attrName = Zu, x.attrValue = $, x.keepAttr = !0, x.forceKeepAttr = void 0, lu(O.uponSanitizeAttribute, l, x), $ = x.attrValue, T0 && (Zu === "id" || Zu === "name") && (Mu(N, l), $ = on + $), fe && j(/((--!?|])>)|<\/(style|title)/i, $)) {
|
|
733
|
+
Mu(N, l);
|
|
734
|
+
continue;
|
|
735
|
+
}
|
|
736
|
+
if (x.forceKeepAttr)
|
|
737
|
+
continue;
|
|
738
|
+
if (!x.keepAttr) {
|
|
739
|
+
Mu(N, l);
|
|
740
|
+
continue;
|
|
741
|
+
}
|
|
742
|
+
if (!y0 && j(/\/>/i, $)) {
|
|
743
|
+
Mu(N, l);
|
|
744
|
+
continue;
|
|
745
|
+
}
|
|
746
|
+
Fu && ge([Hu, $u, yu], ($0) => {
|
|
747
|
+
$ = Yu($, $0, " ");
|
|
748
|
+
});
|
|
749
|
+
const H0 = P(l.nodeName);
|
|
750
|
+
if (!z0(H0, Zu, $)) {
|
|
751
|
+
Mu(N, l);
|
|
752
|
+
continue;
|
|
753
|
+
}
|
|
754
|
+
if (m && typeof p == "object" && typeof p.getAttributeType == "function" && !Z)
|
|
755
|
+
switch (p.getAttributeType(H0, Zu)) {
|
|
756
|
+
case "TrustedHTML": {
|
|
757
|
+
$ = m.createHTML($);
|
|
758
|
+
break;
|
|
759
|
+
}
|
|
760
|
+
case "TrustedScriptURL": {
|
|
761
|
+
$ = m.createScriptURL($);
|
|
762
|
+
break;
|
|
763
|
+
}
|
|
764
|
+
}
|
|
765
|
+
if ($ !== Ge)
|
|
766
|
+
try {
|
|
767
|
+
Z ? l.setAttributeNS(Z, N, $) : l.setAttribute(N, $), je(l) ? tu(l) : X0(e.removed);
|
|
768
|
+
} catch {
|
|
769
|
+
Mu(N, l);
|
|
770
|
+
}
|
|
771
|
+
}
|
|
772
|
+
lu(O.afterSanitizeAttributes, l, null);
|
|
773
|
+
}, pn = function g(l) {
|
|
774
|
+
let b = null;
|
|
775
|
+
const x = N0(l);
|
|
776
|
+
for (lu(O.beforeSanitizeShadowDOM, l, null); b = x.nextNode(); )
|
|
777
|
+
lu(O.uponSanitizeShadowNode, b, null), P0(b), U0(b), b.content instanceof c && g(b.content);
|
|
778
|
+
lu(O.afterSanitizeShadowDOM, l, null);
|
|
779
|
+
};
|
|
780
|
+
return e.sanitize = function(g) {
|
|
781
|
+
let l = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}, b = null, x = null, v = null, H = null;
|
|
782
|
+
if (Ue = !g, Ue && (g = "<!-->"), typeof g != "string" && !B0(g))
|
|
783
|
+
if (typeof g.toString == "function") {
|
|
784
|
+
if (g = g.toString(), typeof g != "string")
|
|
785
|
+
throw Xu("dirty is not a string, aborting");
|
|
786
|
+
} else
|
|
787
|
+
throw Xu("toString is not a function");
|
|
788
|
+
if (!e.isSupported)
|
|
789
|
+
return g;
|
|
790
|
+
if (Be || $e(l), e.removed = [], typeof g == "string" && (Gu = !1), Gu) {
|
|
791
|
+
if (g.nodeName) {
|
|
792
|
+
const fu = P(g.nodeName);
|
|
793
|
+
if (!B[fu] || ju[fu])
|
|
794
|
+
throw Xu("root node is forbidden and cannot be sanitized in-place");
|
|
795
|
+
}
|
|
796
|
+
} else if (g instanceof o)
|
|
797
|
+
b = O0("<!---->"), x = b.ownerDocument.importNode(g, !0), x.nodeType === Qu.element && x.nodeName === "BODY" || x.nodeName === "HTML" ? b = x : b.appendChild(x);
|
|
798
|
+
else {
|
|
799
|
+
if (!Tu && !Fu && !Au && // eslint-disable-next-line unicorn/prefer-includes
|
|
800
|
+
g.indexOf("<") === -1)
|
|
801
|
+
return m && he ? m.createHTML(g) : g;
|
|
802
|
+
if (b = O0(g), !b)
|
|
803
|
+
return Tu ? null : he ? A : "";
|
|
804
|
+
}
|
|
805
|
+
b && Pe && tu(b.firstChild);
|
|
806
|
+
const N = N0(Gu ? g : b);
|
|
807
|
+
for (; v = N.nextNode(); )
|
|
808
|
+
P0(v), U0(v), v.content instanceof c && pn(v.content);
|
|
809
|
+
if (Gu)
|
|
810
|
+
return g;
|
|
811
|
+
if (Tu) {
|
|
812
|
+
if (de)
|
|
813
|
+
for (H = Y.call(b.ownerDocument); b.firstChild; )
|
|
814
|
+
H.appendChild(b.firstChild);
|
|
815
|
+
else
|
|
816
|
+
H = b;
|
|
817
|
+
return (U.shadowroot || U.shadowrootmode) && (H = Eu.call(n, H, !0)), H;
|
|
818
|
+
}
|
|
819
|
+
let Z = Au ? b.outerHTML : b.innerHTML;
|
|
820
|
+
return Au && B["!doctype"] && b.ownerDocument && b.ownerDocument.doctype && b.ownerDocument.doctype.name && j(Rt, b.ownerDocument.doctype.name) && (Z = "<!DOCTYPE " + b.ownerDocument.doctype.name + `>
|
|
821
|
+
` + Z), Fu && ge([Hu, $u, yu], (fu) => {
|
|
822
|
+
Z = Yu(Z, fu, " ");
|
|
823
|
+
}), m && he ? m.createHTML(Z) : Z;
|
|
824
|
+
}, e.setConfig = function() {
|
|
825
|
+
let g = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
|
|
826
|
+
$e(g), Be = !0;
|
|
827
|
+
}, e.clearConfig = function() {
|
|
828
|
+
Ru = null, Be = !1;
|
|
829
|
+
}, e.isValidAttribute = function(g, l, b) {
|
|
830
|
+
Ru || $e({});
|
|
831
|
+
const x = P(g), v = P(l);
|
|
832
|
+
return z0(x, v, b);
|
|
833
|
+
}, e.addHook = function(g, l) {
|
|
834
|
+
typeof l == "function" && Vu(O[g], l);
|
|
835
|
+
}, e.removeHook = function(g, l) {
|
|
836
|
+
if (l !== void 0) {
|
|
837
|
+
const b = Ar(O[g], l);
|
|
838
|
+
return b === -1 ? void 0 : Cr(O[g], b, 1)[0];
|
|
839
|
+
}
|
|
840
|
+
return X0(O[g]);
|
|
841
|
+
}, e.removeHooks = function(g) {
|
|
842
|
+
O[g] = [];
|
|
843
|
+
}, e.removeAllHooks = function() {
|
|
844
|
+
O = nt();
|
|
845
|
+
}, e;
|
|
846
|
+
}
|
|
847
|
+
var qr = Mt();
|
|
848
|
+
const rt = {};
|
|
849
|
+
function Ur(u) {
|
|
850
|
+
let e = rt[u];
|
|
8
851
|
if (e)
|
|
9
852
|
return e;
|
|
10
|
-
e =
|
|
853
|
+
e = rt[u] = [];
|
|
11
854
|
for (let t = 0; t < 128; t++) {
|
|
12
855
|
const n = String.fromCharCode(t);
|
|
13
856
|
e.push(n);
|
|
@@ -18,38 +861,38 @@ function W0(u) {
|
|
|
18
861
|
}
|
|
19
862
|
return e;
|
|
20
863
|
}
|
|
21
|
-
function
|
|
22
|
-
typeof e != "string" && (e =
|
|
23
|
-
const t =
|
|
864
|
+
function Pu(u, e) {
|
|
865
|
+
typeof e != "string" && (e = Pu.defaultChars);
|
|
866
|
+
const t = Ur(e);
|
|
24
867
|
return u.replace(/(%[a-f0-9]{2})+/gi, function(n) {
|
|
25
868
|
let r = "";
|
|
26
|
-
for (let c = 0,
|
|
27
|
-
const
|
|
28
|
-
if (
|
|
29
|
-
r += t[
|
|
869
|
+
for (let c = 0, i = n.length; c < i; c += 3) {
|
|
870
|
+
const o = parseInt(n.slice(c + 1, c + 3), 16);
|
|
871
|
+
if (o < 128) {
|
|
872
|
+
r += t[o];
|
|
30
873
|
continue;
|
|
31
874
|
}
|
|
32
|
-
if ((
|
|
875
|
+
if ((o & 224) === 192 && c + 3 < i) {
|
|
33
876
|
const a = parseInt(n.slice(c + 4, c + 6), 16);
|
|
34
877
|
if ((a & 192) === 128) {
|
|
35
|
-
const s =
|
|
878
|
+
const s = o << 6 & 1984 | a & 63;
|
|
36
879
|
s < 128 ? r += "��" : r += String.fromCharCode(s), c += 3;
|
|
37
880
|
continue;
|
|
38
881
|
}
|
|
39
882
|
}
|
|
40
|
-
if ((
|
|
883
|
+
if ((o & 240) === 224 && c + 6 < i) {
|
|
41
884
|
const a = parseInt(n.slice(c + 4, c + 6), 16), s = parseInt(n.slice(c + 7, c + 9), 16);
|
|
42
885
|
if ((a & 192) === 128 && (s & 192) === 128) {
|
|
43
|
-
const f =
|
|
886
|
+
const f = o << 12 & 61440 | a << 6 & 4032 | s & 63;
|
|
44
887
|
f < 2048 || f >= 55296 && f <= 57343 ? r += "���" : r += String.fromCharCode(f), c += 6;
|
|
45
888
|
continue;
|
|
46
889
|
}
|
|
47
890
|
}
|
|
48
|
-
if ((
|
|
891
|
+
if ((o & 248) === 240 && c + 9 < i) {
|
|
49
892
|
const a = parseInt(n.slice(c + 4, c + 6), 16), s = parseInt(n.slice(c + 7, c + 9), 16), f = parseInt(n.slice(c + 10, c + 12), 16);
|
|
50
893
|
if ((a & 192) === 128 && (s & 192) === 128 && (f & 192) === 128) {
|
|
51
|
-
let
|
|
52
|
-
|
|
894
|
+
let h = o << 18 & 1835008 | a << 12 & 258048 | s << 6 & 4032 | f & 63;
|
|
895
|
+
h < 65536 || h > 1114111 ? r += "����" : (h -= 65536, r += String.fromCharCode(55296 + (h >> 10), 56320 + (h & 1023))), c += 9;
|
|
53
896
|
continue;
|
|
54
897
|
}
|
|
55
898
|
}
|
|
@@ -58,14 +901,14 @@ function G(u, e) {
|
|
|
58
901
|
return r;
|
|
59
902
|
});
|
|
60
903
|
}
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
const
|
|
64
|
-
function
|
|
65
|
-
let e =
|
|
904
|
+
Pu.defaultChars = ";/?:@&=+$,#";
|
|
905
|
+
Pu.componentChars = "";
|
|
906
|
+
const ct = {};
|
|
907
|
+
function Hr(u) {
|
|
908
|
+
let e = ct[u];
|
|
66
909
|
if (e)
|
|
67
910
|
return e;
|
|
68
|
-
e =
|
|
911
|
+
e = ct[u] = [];
|
|
69
912
|
for (let t = 0; t < 128; t++) {
|
|
70
913
|
const n = String.fromCharCode(t);
|
|
71
914
|
/^[0-9a-z]$/i.test(n) ? e.push(n) : e.push("%" + ("0" + t.toString(16).toUpperCase()).slice(-2));
|
|
@@ -74,22 +917,22 @@ function J0(u) {
|
|
|
74
917
|
e[u.charCodeAt(t)] = u[t];
|
|
75
918
|
return e;
|
|
76
919
|
}
|
|
77
|
-
function
|
|
78
|
-
typeof e != "string" && (t = e, e =
|
|
79
|
-
const n =
|
|
920
|
+
function ae(u, e, t) {
|
|
921
|
+
typeof e != "string" && (t = e, e = ae.defaultChars), typeof t > "u" && (t = !0);
|
|
922
|
+
const n = Hr(e);
|
|
80
923
|
let r = "";
|
|
81
|
-
for (let c = 0,
|
|
82
|
-
const
|
|
83
|
-
if (t &&
|
|
924
|
+
for (let c = 0, i = u.length; c < i; c++) {
|
|
925
|
+
const o = u.charCodeAt(c);
|
|
926
|
+
if (t && o === 37 && c + 2 < i && /^[0-9a-f]{2}$/i.test(u.slice(c + 1, c + 3))) {
|
|
84
927
|
r += u.slice(c, c + 3), c += 2;
|
|
85
928
|
continue;
|
|
86
929
|
}
|
|
87
|
-
if (
|
|
88
|
-
r += n[
|
|
930
|
+
if (o < 128) {
|
|
931
|
+
r += n[o];
|
|
89
932
|
continue;
|
|
90
933
|
}
|
|
91
|
-
if (
|
|
92
|
-
if (
|
|
934
|
+
if (o >= 55296 && o <= 57343) {
|
|
935
|
+
if (o >= 55296 && o <= 56319 && c + 1 < i) {
|
|
93
936
|
const a = u.charCodeAt(c + 1);
|
|
94
937
|
if (a >= 56320 && a <= 57343) {
|
|
95
938
|
r += encodeURIComponent(u[c] + u[c + 1]), c++;
|
|
@@ -103,20 +946,20 @@ function ru(u, e, t) {
|
|
|
103
946
|
}
|
|
104
947
|
return r;
|
|
105
948
|
}
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
function
|
|
949
|
+
ae.defaultChars = ";/?:@&=+$,-_.!~*'()#";
|
|
950
|
+
ae.componentChars = "-_.!~*'()";
|
|
951
|
+
function f0(u) {
|
|
109
952
|
let e = "";
|
|
110
953
|
return e += u.protocol || "", e += u.slashes ? "//" : "", e += u.auth ? u.auth + "@" : "", u.hostname && u.hostname.indexOf(":") !== -1 ? e += "[" + u.hostname + "]" : e += u.hostname || "", e += u.port ? ":" + u.port : "", e += u.pathname || "", e += u.search || "", e += u.hash || "", e;
|
|
111
954
|
}
|
|
112
|
-
function
|
|
955
|
+
function Fe() {
|
|
113
956
|
this.protocol = null, this.slashes = null, this.auth = null, this.port = null, this.hostname = null, this.hash = null, this.search = null, this.pathname = null;
|
|
114
957
|
}
|
|
115
|
-
const
|
|
116
|
-
`, " "],
|
|
958
|
+
const $r = /^([a-z0-9.+-]+:)/i, jr = /:[0-9]*$/, Gr = /^(\/\/?(?!\/)[^\?\s]*)(\?[^\s]*)?$/, Wr = ["<", ">", '"', "`", " ", "\r", `
|
|
959
|
+
`, " "], Zr = ["{", "}", "|", "\\", "^", "`"].concat(Wr), Vr = ["'"].concat(Zr), ot = ["%", "/", "?", ";", "#"].concat(Vr), it = ["/", "?", "#"], Yr = 255, at = /^[+a-z0-9A-Z_-]{0,63}$/, Xr = /^([+a-z0-9A-Z_-]{0,63})(.*)$/, st = {
|
|
117
960
|
javascript: !0,
|
|
118
961
|
"javascript:": !0
|
|
119
|
-
},
|
|
962
|
+
}, lt = {
|
|
120
963
|
http: !0,
|
|
121
964
|
https: !0,
|
|
122
965
|
ftp: !0,
|
|
@@ -128,81 +971,81 @@ const Q0 = /^([a-z0-9.+-]+:)/i, X0 = /:[0-9]*$/, Y0 = /^(\/\/?(?!\/)[^\?\s]*)(\?
|
|
|
128
971
|
"gopher:": !0,
|
|
129
972
|
"file:": !0
|
|
130
973
|
};
|
|
131
|
-
function
|
|
132
|
-
if (u && u instanceof
|
|
133
|
-
const t = new
|
|
974
|
+
function d0(u, e) {
|
|
975
|
+
if (u && u instanceof Fe) return u;
|
|
976
|
+
const t = new Fe();
|
|
134
977
|
return t.parse(u, e), t;
|
|
135
978
|
}
|
|
136
|
-
|
|
979
|
+
Fe.prototype.parse = function(u, e) {
|
|
137
980
|
let t, n, r, c = u;
|
|
138
981
|
if (c = c.trim(), !e && u.split("#").length === 1) {
|
|
139
|
-
const s =
|
|
982
|
+
const s = Gr.exec(c);
|
|
140
983
|
if (s)
|
|
141
984
|
return this.pathname = s[1], s[2] && (this.search = s[2]), this;
|
|
142
985
|
}
|
|
143
|
-
let
|
|
144
|
-
if (
|
|
986
|
+
let i = $r.exec(c);
|
|
987
|
+
if (i && (i = i[0], t = i.toLowerCase(), this.protocol = i, c = c.substr(i.length)), (e || i || c.match(/^\/\/[^@\/]+@[^@\/]+/)) && (r = c.substr(0, 2) === "//", r && !(i && st[i]) && (c = c.substr(2), this.slashes = !0)), !st[i] && (r || i && !lt[i])) {
|
|
145
988
|
let s = -1;
|
|
146
|
-
for (let
|
|
147
|
-
n = c.indexOf(
|
|
148
|
-
let f,
|
|
149
|
-
s === -1 ?
|
|
150
|
-
for (let
|
|
151
|
-
n = c.indexOf(
|
|
989
|
+
for (let d = 0; d < it.length; d++)
|
|
990
|
+
n = c.indexOf(it[d]), n !== -1 && (s === -1 || n < s) && (s = n);
|
|
991
|
+
let f, h;
|
|
992
|
+
s === -1 ? h = c.lastIndexOf("@") : h = c.lastIndexOf("@", s), h !== -1 && (f = c.slice(0, h), c = c.slice(h + 1), this.auth = f), s = -1;
|
|
993
|
+
for (let d = 0; d < ot.length; d++)
|
|
994
|
+
n = c.indexOf(ot[d]), n !== -1 && (s === -1 || n < s) && (s = n);
|
|
152
995
|
s === -1 && (s = c.length), c[s - 1] === ":" && s--;
|
|
153
|
-
const
|
|
154
|
-
c = c.slice(s), this.parseHost(
|
|
155
|
-
const
|
|
156
|
-
if (!
|
|
157
|
-
const
|
|
158
|
-
for (let
|
|
159
|
-
const
|
|
160
|
-
if (
|
|
161
|
-
let
|
|
162
|
-
for (let
|
|
163
|
-
|
|
164
|
-
if (!
|
|
165
|
-
const
|
|
166
|
-
|
|
996
|
+
const _ = c.slice(0, s);
|
|
997
|
+
c = c.slice(s), this.parseHost(_), this.hostname = this.hostname || "";
|
|
998
|
+
const p = this.hostname[0] === "[" && this.hostname[this.hostname.length - 1] === "]";
|
|
999
|
+
if (!p) {
|
|
1000
|
+
const d = this.hostname.split(/\./);
|
|
1001
|
+
for (let C = 0, D = d.length; C < D; C++) {
|
|
1002
|
+
const S = d[C];
|
|
1003
|
+
if (S && !S.match(at)) {
|
|
1004
|
+
let E = "";
|
|
1005
|
+
for (let k = 0, m = S.length; k < m; k++)
|
|
1006
|
+
S.charCodeAt(k) > 127 ? E += "x" : E += S[k];
|
|
1007
|
+
if (!E.match(at)) {
|
|
1008
|
+
const k = d.slice(0, C), m = d.slice(C + 1), A = S.match(Xr);
|
|
1009
|
+
A && (k.push(A[1]), m.unshift(A[2])), m.length && (c = m.join(".") + c), this.hostname = k.join(".");
|
|
167
1010
|
break;
|
|
168
1011
|
}
|
|
169
1012
|
}
|
|
170
1013
|
}
|
|
171
1014
|
}
|
|
172
|
-
this.hostname.length >
|
|
1015
|
+
this.hostname.length > Yr && (this.hostname = ""), p && (this.hostname = this.hostname.substr(1, this.hostname.length - 2));
|
|
173
1016
|
}
|
|
174
|
-
const
|
|
175
|
-
|
|
1017
|
+
const o = c.indexOf("#");
|
|
1018
|
+
o !== -1 && (this.hash = c.substr(o), c = c.slice(0, o));
|
|
176
1019
|
const a = c.indexOf("?");
|
|
177
|
-
return a !== -1 && (this.search = c.substr(a), c = c.slice(0, a)), c && (this.pathname = c),
|
|
1020
|
+
return a !== -1 && (this.search = c.substr(a), c = c.slice(0, a)), c && (this.pathname = c), lt[t] && this.hostname && !this.pathname && (this.pathname = ""), this;
|
|
178
1021
|
};
|
|
179
|
-
|
|
180
|
-
let e =
|
|
1022
|
+
Fe.prototype.parseHost = function(u) {
|
|
1023
|
+
let e = jr.exec(u);
|
|
181
1024
|
e && (e = e[0], e !== ":" && (this.port = e.substr(1)), u = u.substr(0, u.length - e.length)), u && (this.hostname = u);
|
|
182
1025
|
};
|
|
183
|
-
const
|
|
1026
|
+
const Jr = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
184
1027
|
__proto__: null,
|
|
185
|
-
decode:
|
|
186
|
-
encode:
|
|
187
|
-
format:
|
|
188
|
-
parse:
|
|
189
|
-
}, Symbol.toStringTag, { value: "Module" })),
|
|
1028
|
+
decode: Pu,
|
|
1029
|
+
encode: ae,
|
|
1030
|
+
format: f0,
|
|
1031
|
+
parse: d0
|
|
1032
|
+
}, Symbol.toStringTag, { value: "Module" })), It = /[\0-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/, Lt = /[\0-\x1F\x7F-\x9F]/, Qr = /[\xAD\u0600-\u0605\u061C\u06DD\u070F\u0890\u0891\u08E2\u180E\u200B-\u200F\u202A-\u202E\u2060-\u2064\u2066-\u206F\uFEFF\uFFF9-\uFFFB]|\uD804[\uDCBD\uDCCD]|\uD80D[\uDC30-\uDC3F]|\uD82F[\uDCA0-\uDCA3]|\uD834[\uDD73-\uDD7A]|\uDB40[\uDC01\uDC20-\uDC7F]/, h0 = /[!-#%-\*,-\/:;\?@\[-\]_\{\}\xA1\xA7\xAB\xB6\xB7\xBB\xBF\u037E\u0387\u055A-\u055F\u0589\u058A\u05BE\u05C0\u05C3\u05C6\u05F3\u05F4\u0609\u060A\u060C\u060D\u061B\u061D-\u061F\u066A-\u066D\u06D4\u0700-\u070D\u07F7-\u07F9\u0830-\u083E\u085E\u0964\u0965\u0970\u09FD\u0A76\u0AF0\u0C77\u0C84\u0DF4\u0E4F\u0E5A\u0E5B\u0F04-\u0F12\u0F14\u0F3A-\u0F3D\u0F85\u0FD0-\u0FD4\u0FD9\u0FDA\u104A-\u104F\u10FB\u1360-\u1368\u1400\u166E\u169B\u169C\u16EB-\u16ED\u1735\u1736\u17D4-\u17D6\u17D8-\u17DA\u1800-\u180A\u1944\u1945\u1A1E\u1A1F\u1AA0-\u1AA6\u1AA8-\u1AAD\u1B5A-\u1B60\u1B7D\u1B7E\u1BFC-\u1BFF\u1C3B-\u1C3F\u1C7E\u1C7F\u1CC0-\u1CC7\u1CD3\u2010-\u2027\u2030-\u2043\u2045-\u2051\u2053-\u205E\u207D\u207E\u208D\u208E\u2308-\u230B\u2329\u232A\u2768-\u2775\u27C5\u27C6\u27E6-\u27EF\u2983-\u2998\u29D8-\u29DB\u29FC\u29FD\u2CF9-\u2CFC\u2CFE\u2CFF\u2D70\u2E00-\u2E2E\u2E30-\u2E4F\u2E52-\u2E5D\u3001-\u3003\u3008-\u3011\u3014-\u301F\u3030\u303D\u30A0\u30FB\uA4FE\uA4FF\uA60D-\uA60F\uA673\uA67E\uA6F2-\uA6F7\uA874-\uA877\uA8CE\uA8CF\uA8F8-\uA8FA\uA8FC\uA92E\uA92F\uA95F\uA9C1-\uA9CD\uA9DE\uA9DF\uAA5C-\uAA5F\uAADE\uAADF\uAAF0\uAAF1\uABEB\uFD3E\uFD3F\uFE10-\uFE19\uFE30-\uFE52\uFE54-\uFE61\uFE63\uFE68\uFE6A\uFE6B\uFF01-\uFF03\uFF05-\uFF0A\uFF0C-\uFF0F\uFF1A\uFF1B\uFF1F\uFF20\uFF3B-\uFF3D\uFF3F\uFF5B\uFF5D\uFF5F-\uFF65]|\uD800[\uDD00-\uDD02\uDF9F\uDFD0]|\uD801\uDD6F|\uD802[\uDC57\uDD1F\uDD3F\uDE50-\uDE58\uDE7F\uDEF0-\uDEF6\uDF39-\uDF3F\uDF99-\uDF9C]|\uD803[\uDEAD\uDF55-\uDF59\uDF86-\uDF89]|\uD804[\uDC47-\uDC4D\uDCBB\uDCBC\uDCBE-\uDCC1\uDD40-\uDD43\uDD74\uDD75\uDDC5-\uDDC8\uDDCD\uDDDB\uDDDD-\uDDDF\uDE38-\uDE3D\uDEA9]|\uD805[\uDC4B-\uDC4F\uDC5A\uDC5B\uDC5D\uDCC6\uDDC1-\uDDD7\uDE41-\uDE43\uDE60-\uDE6C\uDEB9\uDF3C-\uDF3E]|\uD806[\uDC3B\uDD44-\uDD46\uDDE2\uDE3F-\uDE46\uDE9A-\uDE9C\uDE9E-\uDEA2\uDF00-\uDF09]|\uD807[\uDC41-\uDC45\uDC70\uDC71\uDEF7\uDEF8\uDF43-\uDF4F\uDFFF]|\uD809[\uDC70-\uDC74]|\uD80B[\uDFF1\uDFF2]|\uD81A[\uDE6E\uDE6F\uDEF5\uDF37-\uDF3B\uDF44]|\uD81B[\uDE97-\uDE9A\uDFE2]|\uD82F\uDC9F|\uD836[\uDE87-\uDE8B]|\uD83A[\uDD5E\uDD5F]/, Ot = /[\$\+<->\^`\|~\xA2-\xA6\xA8\xA9\xAC\xAE-\xB1\xB4\xB8\xD7\xF7\u02C2-\u02C5\u02D2-\u02DF\u02E5-\u02EB\u02ED\u02EF-\u02FF\u0375\u0384\u0385\u03F6\u0482\u058D-\u058F\u0606-\u0608\u060B\u060E\u060F\u06DE\u06E9\u06FD\u06FE\u07F6\u07FE\u07FF\u0888\u09F2\u09F3\u09FA\u09FB\u0AF1\u0B70\u0BF3-\u0BFA\u0C7F\u0D4F\u0D79\u0E3F\u0F01-\u0F03\u0F13\u0F15-\u0F17\u0F1A-\u0F1F\u0F34\u0F36\u0F38\u0FBE-\u0FC5\u0FC7-\u0FCC\u0FCE\u0FCF\u0FD5-\u0FD8\u109E\u109F\u1390-\u1399\u166D\u17DB\u1940\u19DE-\u19FF\u1B61-\u1B6A\u1B74-\u1B7C\u1FBD\u1FBF-\u1FC1\u1FCD-\u1FCF\u1FDD-\u1FDF\u1FED-\u1FEF\u1FFD\u1FFE\u2044\u2052\u207A-\u207C\u208A-\u208C\u20A0-\u20C0\u2100\u2101\u2103-\u2106\u2108\u2109\u2114\u2116-\u2118\u211E-\u2123\u2125\u2127\u2129\u212E\u213A\u213B\u2140-\u2144\u214A-\u214D\u214F\u218A\u218B\u2190-\u2307\u230C-\u2328\u232B-\u2426\u2440-\u244A\u249C-\u24E9\u2500-\u2767\u2794-\u27C4\u27C7-\u27E5\u27F0-\u2982\u2999-\u29D7\u29DC-\u29FB\u29FE-\u2B73\u2B76-\u2B95\u2B97-\u2BFF\u2CE5-\u2CEA\u2E50\u2E51\u2E80-\u2E99\u2E9B-\u2EF3\u2F00-\u2FD5\u2FF0-\u2FFF\u3004\u3012\u3013\u3020\u3036\u3037\u303E\u303F\u309B\u309C\u3190\u3191\u3196-\u319F\u31C0-\u31E3\u31EF\u3200-\u321E\u322A-\u3247\u3250\u3260-\u327F\u328A-\u32B0\u32C0-\u33FF\u4DC0-\u4DFF\uA490-\uA4C6\uA700-\uA716\uA720\uA721\uA789\uA78A\uA828-\uA82B\uA836-\uA839\uAA77-\uAA79\uAB5B\uAB6A\uAB6B\uFB29\uFBB2-\uFBC2\uFD40-\uFD4F\uFDCF\uFDFC-\uFDFF\uFE62\uFE64-\uFE66\uFE69\uFF04\uFF0B\uFF1C-\uFF1E\uFF3E\uFF40\uFF5C\uFF5E\uFFE0-\uFFE6\uFFE8-\uFFEE\uFFFC\uFFFD]|\uD800[\uDD37-\uDD3F\uDD79-\uDD89\uDD8C-\uDD8E\uDD90-\uDD9C\uDDA0\uDDD0-\uDDFC]|\uD802[\uDC77\uDC78\uDEC8]|\uD805\uDF3F|\uD807[\uDFD5-\uDFF1]|\uD81A[\uDF3C-\uDF3F\uDF45]|\uD82F\uDC9C|\uD833[\uDF50-\uDFC3]|\uD834[\uDC00-\uDCF5\uDD00-\uDD26\uDD29-\uDD64\uDD6A-\uDD6C\uDD83\uDD84\uDD8C-\uDDA9\uDDAE-\uDDEA\uDE00-\uDE41\uDE45\uDF00-\uDF56]|\uD835[\uDEC1\uDEDB\uDEFB\uDF15\uDF35\uDF4F\uDF6F\uDF89\uDFA9\uDFC3]|\uD836[\uDC00-\uDDFF\uDE37-\uDE3A\uDE6D-\uDE74\uDE76-\uDE83\uDE85\uDE86]|\uD838[\uDD4F\uDEFF]|\uD83B[\uDCAC\uDCB0\uDD2E\uDEF0\uDEF1]|\uD83C[\uDC00-\uDC2B\uDC30-\uDC93\uDCA0-\uDCAE\uDCB1-\uDCBF\uDCC1-\uDCCF\uDCD1-\uDCF5\uDD0D-\uDDAD\uDDE6-\uDE02\uDE10-\uDE3B\uDE40-\uDE48\uDE50\uDE51\uDE60-\uDE65\uDF00-\uDFFF]|\uD83D[\uDC00-\uDED7\uDEDC-\uDEEC\uDEF0-\uDEFC\uDF00-\uDF76\uDF7B-\uDFD9\uDFE0-\uDFEB\uDFF0]|\uD83E[\uDC00-\uDC0B\uDC10-\uDC47\uDC50-\uDC59\uDC60-\uDC87\uDC90-\uDCAD\uDCB0\uDCB1\uDD00-\uDE53\uDE60-\uDE6D\uDE70-\uDE7C\uDE80-\uDE88\uDE90-\uDEBD\uDEBF-\uDEC5\uDECE-\uDEDB\uDEE0-\uDEE8\uDEF0-\uDEF8\uDF00-\uDF92\uDF94-\uDFCA]/, Nt = /[ \xA0\u1680\u2000-\u200A\u2028\u2029\u202F\u205F\u3000]/, Kr = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
190
1033
|
__proto__: null,
|
|
191
|
-
Any:
|
|
192
|
-
Cc:
|
|
193
|
-
Cf:
|
|
194
|
-
P:
|
|
195
|
-
S:
|
|
196
|
-
Z:
|
|
197
|
-
}, Symbol.toStringTag, { value: "Module" })),
|
|
1034
|
+
Any: It,
|
|
1035
|
+
Cc: Lt,
|
|
1036
|
+
Cf: Qr,
|
|
1037
|
+
P: h0,
|
|
1038
|
+
S: Ot,
|
|
1039
|
+
Z: Nt
|
|
1040
|
+
}, Symbol.toStringTag, { value: "Module" })), uc = new Uint16Array(
|
|
198
1041
|
// prettier-ignore
|
|
199
1042
|
'ᵁ<Õıʊҝջאٵ۞ޢߖࠏઑඡ༉༦ረዡᐕᒝᓃᓟᔥ\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((u) => u.charCodeAt(0))
|
|
200
|
-
),
|
|
1043
|
+
), ec = new Uint16Array(
|
|
201
1044
|
// prettier-ignore
|
|
202
1045
|
"Ȁaglq \x1Bɭ\0\0p;䀦os;䀧t;䀾t;䀼uot;䀢".split("").map((u) => u.charCodeAt(0))
|
|
203
1046
|
);
|
|
204
|
-
var
|
|
205
|
-
const
|
|
1047
|
+
var Je;
|
|
1048
|
+
const tc = /* @__PURE__ */ new Map([
|
|
206
1049
|
[0, 65533],
|
|
207
1050
|
// C1 Unicode control character reference replacements
|
|
208
1051
|
[128, 8364],
|
|
@@ -232,53 +1075,53 @@ const se = /* @__PURE__ */ new Map([
|
|
|
232
1075
|
[156, 339],
|
|
233
1076
|
[158, 382],
|
|
234
1077
|
[159, 376]
|
|
235
|
-
]),
|
|
1078
|
+
]), nc = (
|
|
236
1079
|
// eslint-disable-next-line @typescript-eslint/no-unnecessary-condition, node/no-unsupported-features/es-builtins
|
|
237
|
-
(
|
|
1080
|
+
(Je = String.fromCodePoint) !== null && Je !== void 0 ? Je : function(u) {
|
|
238
1081
|
let e = "";
|
|
239
1082
|
return u > 65535 && (u -= 65536, e += String.fromCharCode(u >>> 10 & 1023 | 55296), u = 56320 | u & 1023), e += String.fromCharCode(u), e;
|
|
240
1083
|
}
|
|
241
1084
|
);
|
|
242
|
-
function
|
|
1085
|
+
function rc(u) {
|
|
243
1086
|
var e;
|
|
244
|
-
return u >= 55296 && u <= 57343 || u > 1114111 ? 65533 : (e =
|
|
1087
|
+
return u >= 55296 && u <= 57343 || u > 1114111 ? 65533 : (e = tc.get(u)) !== null && e !== void 0 ? e : u;
|
|
245
1088
|
}
|
|
246
|
-
var
|
|
1089
|
+
var q;
|
|
247
1090
|
(function(u) {
|
|
248
1091
|
u[u.NUM = 35] = "NUM", u[u.SEMI = 59] = "SEMI", u[u.EQUALS = 61] = "EQUALS", u[u.ZERO = 48] = "ZERO", u[u.NINE = 57] = "NINE", u[u.LOWER_A = 97] = "LOWER_A", u[u.LOWER_F = 102] = "LOWER_F", u[u.LOWER_X = 120] = "LOWER_X", u[u.LOWER_Z = 122] = "LOWER_Z", u[u.UPPER_A = 65] = "UPPER_A", u[u.UPPER_F = 70] = "UPPER_F", u[u.UPPER_Z = 90] = "UPPER_Z";
|
|
249
|
-
})(
|
|
250
|
-
const
|
|
251
|
-
var
|
|
1092
|
+
})(q || (q = {}));
|
|
1093
|
+
const cc = 32;
|
|
1094
|
+
var _u;
|
|
252
1095
|
(function(u) {
|
|
253
1096
|
u[u.VALUE_LENGTH = 49152] = "VALUE_LENGTH", u[u.BRANCH_LENGTH = 16256] = "BRANCH_LENGTH", u[u.JUMP_TABLE = 127] = "JUMP_TABLE";
|
|
254
|
-
})(
|
|
255
|
-
function
|
|
256
|
-
return u >=
|
|
1097
|
+
})(_u || (_u = {}));
|
|
1098
|
+
function o0(u) {
|
|
1099
|
+
return u >= q.ZERO && u <= q.NINE;
|
|
257
1100
|
}
|
|
258
|
-
function
|
|
259
|
-
return u >=
|
|
1101
|
+
function oc(u) {
|
|
1102
|
+
return u >= q.UPPER_A && u <= q.UPPER_F || u >= q.LOWER_A && u <= q.LOWER_F;
|
|
260
1103
|
}
|
|
261
|
-
function
|
|
262
|
-
return u >=
|
|
1104
|
+
function ic(u) {
|
|
1105
|
+
return u >= q.UPPER_A && u <= q.UPPER_Z || u >= q.LOWER_A && u <= q.LOWER_Z || o0(u);
|
|
263
1106
|
}
|
|
264
|
-
function
|
|
265
|
-
return u ===
|
|
1107
|
+
function ac(u) {
|
|
1108
|
+
return u === q.EQUALS || ic(u);
|
|
266
1109
|
}
|
|
267
|
-
var
|
|
1110
|
+
var z;
|
|
268
1111
|
(function(u) {
|
|
269
1112
|
u[u.EntityStart = 0] = "EntityStart", u[u.NumericStart = 1] = "NumericStart", u[u.NumericDecimal = 2] = "NumericDecimal", u[u.NumericHex = 3] = "NumericHex", u[u.NamedEntity = 4] = "NamedEntity";
|
|
270
|
-
})(
|
|
271
|
-
var
|
|
1113
|
+
})(z || (z = {}));
|
|
1114
|
+
var bu;
|
|
272
1115
|
(function(u) {
|
|
273
1116
|
u[u.Legacy = 0] = "Legacy", u[u.Strict = 1] = "Strict", u[u.Attribute = 2] = "Attribute";
|
|
274
|
-
})(
|
|
275
|
-
class
|
|
1117
|
+
})(bu || (bu = {}));
|
|
1118
|
+
class sc {
|
|
276
1119
|
constructor(e, t, n) {
|
|
277
|
-
this.decodeTree = e, this.emitCodePoint = t, this.errors = n, this.state =
|
|
1120
|
+
this.decodeTree = e, this.emitCodePoint = t, this.errors = n, this.state = z.EntityStart, this.consumed = 1, this.result = 0, this.treeIndex = 0, this.excess = 1, this.decodeMode = bu.Strict;
|
|
278
1121
|
}
|
|
279
1122
|
/** Resets the instance to make it reusable. */
|
|
280
1123
|
startEntity(e) {
|
|
281
|
-
this.decodeMode = e, this.state =
|
|
1124
|
+
this.decodeMode = e, this.state = z.EntityStart, this.result = 0, this.treeIndex = 0, this.excess = 1, this.consumed = 1;
|
|
282
1125
|
}
|
|
283
1126
|
/**
|
|
284
1127
|
* Write an entity to the decoder. This can be called multiple times with partial entities.
|
|
@@ -293,15 +1136,15 @@ class xe {
|
|
|
293
1136
|
*/
|
|
294
1137
|
write(e, t) {
|
|
295
1138
|
switch (this.state) {
|
|
296
|
-
case
|
|
297
|
-
return e.charCodeAt(t) ===
|
|
298
|
-
case
|
|
1139
|
+
case z.EntityStart:
|
|
1140
|
+
return e.charCodeAt(t) === q.NUM ? (this.state = z.NumericStart, this.consumed += 1, this.stateNumericStart(e, t + 1)) : (this.state = z.NamedEntity, this.stateNamedEntity(e, t));
|
|
1141
|
+
case z.NumericStart:
|
|
299
1142
|
return this.stateNumericStart(e, t);
|
|
300
|
-
case
|
|
1143
|
+
case z.NumericDecimal:
|
|
301
1144
|
return this.stateNumericDecimal(e, t);
|
|
302
|
-
case
|
|
1145
|
+
case z.NumericHex:
|
|
303
1146
|
return this.stateNumericHex(e, t);
|
|
304
|
-
case
|
|
1147
|
+
case z.NamedEntity:
|
|
305
1148
|
return this.stateNamedEntity(e, t);
|
|
306
1149
|
}
|
|
307
1150
|
}
|
|
@@ -315,7 +1158,7 @@ class xe {
|
|
|
315
1158
|
* @returns The number of characters that were consumed, or -1 if the entity is incomplete.
|
|
316
1159
|
*/
|
|
317
1160
|
stateNumericStart(e, t) {
|
|
318
|
-
return t >= e.length ? -1 : (e.charCodeAt(t) |
|
|
1161
|
+
return t >= e.length ? -1 : (e.charCodeAt(t) | cc) === q.LOWER_X ? (this.state = z.NumericHex, this.consumed += 1, this.stateNumericHex(e, t + 1)) : (this.state = z.NumericDecimal, this.stateNumericDecimal(e, t));
|
|
319
1162
|
}
|
|
320
1163
|
addToNumericResult(e, t, n, r) {
|
|
321
1164
|
if (t !== n) {
|
|
@@ -336,7 +1179,7 @@ class xe {
|
|
|
336
1179
|
const n = t;
|
|
337
1180
|
for (; t < e.length; ) {
|
|
338
1181
|
const r = e.charCodeAt(t);
|
|
339
|
-
if (
|
|
1182
|
+
if (o0(r) || oc(r))
|
|
340
1183
|
t += 1;
|
|
341
1184
|
else
|
|
342
1185
|
return this.addToNumericResult(e, n, t, 16), this.emitNumericEntity(r, 3);
|
|
@@ -356,7 +1199,7 @@ class xe {
|
|
|
356
1199
|
const n = t;
|
|
357
1200
|
for (; t < e.length; ) {
|
|
358
1201
|
const r = e.charCodeAt(t);
|
|
359
|
-
if (
|
|
1202
|
+
if (o0(r))
|
|
360
1203
|
t += 1;
|
|
361
1204
|
else
|
|
362
1205
|
return this.addToNumericResult(e, n, t, 10), this.emitNumericEntity(r, 2);
|
|
@@ -380,11 +1223,11 @@ class xe {
|
|
|
380
1223
|
var n;
|
|
381
1224
|
if (this.consumed <= t)
|
|
382
1225
|
return (n = this.errors) === null || n === void 0 || n.absenceOfDigitsInNumericCharacterReference(this.consumed), 0;
|
|
383
|
-
if (e ===
|
|
1226
|
+
if (e === q.SEMI)
|
|
384
1227
|
this.consumed += 1;
|
|
385
|
-
else if (this.decodeMode ===
|
|
1228
|
+
else if (this.decodeMode === bu.Strict)
|
|
386
1229
|
return 0;
|
|
387
|
-
return this.emitCodePoint(
|
|
1230
|
+
return this.emitCodePoint(rc(this.result), this.consumed), this.errors && (e !== q.SEMI && this.errors.missingSemicolonAfterCharacterReference(), this.errors.validateNumericCharacterReference(this.result)), this.consumed;
|
|
388
1231
|
}
|
|
389
1232
|
/**
|
|
390
1233
|
* Parses a named entity.
|
|
@@ -397,18 +1240,18 @@ class xe {
|
|
|
397
1240
|
*/
|
|
398
1241
|
stateNamedEntity(e, t) {
|
|
399
1242
|
const { decodeTree: n } = this;
|
|
400
|
-
let r = n[this.treeIndex], c = (r &
|
|
1243
|
+
let r = n[this.treeIndex], c = (r & _u.VALUE_LENGTH) >> 14;
|
|
401
1244
|
for (; t < e.length; t++, this.excess++) {
|
|
402
|
-
const
|
|
403
|
-
if (this.treeIndex =
|
|
1245
|
+
const i = e.charCodeAt(t);
|
|
1246
|
+
if (this.treeIndex = lc(n, r, this.treeIndex + Math.max(1, c), i), this.treeIndex < 0)
|
|
404
1247
|
return this.result === 0 || // If we are parsing an attribute
|
|
405
|
-
this.decodeMode ===
|
|
1248
|
+
this.decodeMode === bu.Attribute && // We shouldn't have consumed any characters after the entity,
|
|
406
1249
|
(c === 0 || // And there should be no invalid characters.
|
|
407
|
-
|
|
408
|
-
if (r = n[this.treeIndex], c = (r &
|
|
409
|
-
if (
|
|
1250
|
+
ac(i)) ? 0 : this.emitNotTerminatedNamedEntity();
|
|
1251
|
+
if (r = n[this.treeIndex], c = (r & _u.VALUE_LENGTH) >> 14, c !== 0) {
|
|
1252
|
+
if (i === q.SEMI)
|
|
410
1253
|
return this.emitNamedEntityData(this.treeIndex, c, this.consumed + this.excess);
|
|
411
|
-
this.decodeMode !==
|
|
1254
|
+
this.decodeMode !== bu.Strict && (this.result = this.treeIndex, this.consumed += this.excess, this.excess = 0);
|
|
412
1255
|
}
|
|
413
1256
|
}
|
|
414
1257
|
return -1;
|
|
@@ -420,7 +1263,7 @@ class xe {
|
|
|
420
1263
|
*/
|
|
421
1264
|
emitNotTerminatedNamedEntity() {
|
|
422
1265
|
var e;
|
|
423
|
-
const { result: t, decodeTree: n } = this, r = (n[t] &
|
|
1266
|
+
const { result: t, decodeTree: n } = this, r = (n[t] & _u.VALUE_LENGTH) >> 14;
|
|
424
1267
|
return this.emitNamedEntityData(t, r, this.consumed), (e = this.errors) === null || e === void 0 || e.missingSemicolonAfterCharacterReference(), this.consumed;
|
|
425
1268
|
}
|
|
426
1269
|
/**
|
|
@@ -434,7 +1277,7 @@ class xe {
|
|
|
434
1277
|
*/
|
|
435
1278
|
emitNamedEntityData(e, t, n) {
|
|
436
1279
|
const { decodeTree: r } = this;
|
|
437
|
-
return this.emitCodePoint(t === 1 ? r[e] &
|
|
1280
|
+
return this.emitCodePoint(t === 1 ? r[e] & ~_u.VALUE_LENGTH : r[e + 1], n), t === 3 && this.emitCodePoint(r[e + 2], n), n;
|
|
438
1281
|
}
|
|
439
1282
|
/**
|
|
440
1283
|
* Signal to the parser that the end of the input was reached.
|
|
@@ -446,77 +1289,77 @@ class xe {
|
|
|
446
1289
|
end() {
|
|
447
1290
|
var e;
|
|
448
1291
|
switch (this.state) {
|
|
449
|
-
case
|
|
450
|
-
return this.result !== 0 && (this.decodeMode !==
|
|
451
|
-
case
|
|
1292
|
+
case z.NamedEntity:
|
|
1293
|
+
return this.result !== 0 && (this.decodeMode !== bu.Attribute || this.result === this.treeIndex) ? this.emitNotTerminatedNamedEntity() : 0;
|
|
1294
|
+
case z.NumericDecimal:
|
|
452
1295
|
return this.emitNumericEntity(0, 2);
|
|
453
|
-
case
|
|
1296
|
+
case z.NumericHex:
|
|
454
1297
|
return this.emitNumericEntity(0, 3);
|
|
455
|
-
case
|
|
1298
|
+
case z.NumericStart:
|
|
456
1299
|
return (e = this.errors) === null || e === void 0 || e.absenceOfDigitsInNumericCharacterReference(this.consumed), 0;
|
|
457
|
-
case
|
|
1300
|
+
case z.EntityStart:
|
|
458
1301
|
return 0;
|
|
459
1302
|
}
|
|
460
1303
|
}
|
|
461
1304
|
}
|
|
462
|
-
function
|
|
1305
|
+
function Bt(u) {
|
|
463
1306
|
let e = "";
|
|
464
|
-
const t = new
|
|
1307
|
+
const t = new sc(u, (n) => e += nc(n));
|
|
465
1308
|
return function(r, c) {
|
|
466
|
-
let
|
|
467
|
-
for (; (
|
|
468
|
-
e += r.slice(
|
|
1309
|
+
let i = 0, o = 0;
|
|
1310
|
+
for (; (o = r.indexOf("&", o)) >= 0; ) {
|
|
1311
|
+
e += r.slice(i, o), t.startEntity(c);
|
|
469
1312
|
const s = t.write(
|
|
470
1313
|
r,
|
|
471
1314
|
// Skip the "&"
|
|
472
|
-
|
|
1315
|
+
o + 1
|
|
473
1316
|
);
|
|
474
1317
|
if (s < 0) {
|
|
475
|
-
|
|
1318
|
+
i = o + t.end();
|
|
476
1319
|
break;
|
|
477
1320
|
}
|
|
478
|
-
|
|
1321
|
+
i = o + s, o = s === 0 ? i + 1 : i;
|
|
479
1322
|
}
|
|
480
|
-
const a = e + r.slice(
|
|
1323
|
+
const a = e + r.slice(i);
|
|
481
1324
|
return e = "", a;
|
|
482
1325
|
};
|
|
483
1326
|
}
|
|
484
|
-
function
|
|
485
|
-
const r = (e &
|
|
1327
|
+
function lc(u, e, t, n) {
|
|
1328
|
+
const r = (e & _u.BRANCH_LENGTH) >> 7, c = e & _u.JUMP_TABLE;
|
|
486
1329
|
if (r === 0)
|
|
487
1330
|
return c !== 0 && n === c ? t : -1;
|
|
488
1331
|
if (c) {
|
|
489
1332
|
const a = n - c;
|
|
490
1333
|
return a < 0 || a >= r ? -1 : u[t + a] - 1;
|
|
491
1334
|
}
|
|
492
|
-
let
|
|
493
|
-
for (;
|
|
494
|
-
const a =
|
|
1335
|
+
let i = t, o = i + r - 1;
|
|
1336
|
+
for (; i <= o; ) {
|
|
1337
|
+
const a = i + o >>> 1, s = u[a];
|
|
495
1338
|
if (s < n)
|
|
496
|
-
|
|
1339
|
+
i = a + 1;
|
|
497
1340
|
else if (s > n)
|
|
498
|
-
|
|
1341
|
+
o = a - 1;
|
|
499
1342
|
else
|
|
500
1343
|
return u[a + r];
|
|
501
1344
|
}
|
|
502
1345
|
return -1;
|
|
503
1346
|
}
|
|
504
|
-
const
|
|
505
|
-
|
|
506
|
-
function
|
|
507
|
-
return
|
|
1347
|
+
const fc = Bt(uc);
|
|
1348
|
+
Bt(ec);
|
|
1349
|
+
function Pt(u, e = bu.Legacy) {
|
|
1350
|
+
return fc(u, e);
|
|
508
1351
|
}
|
|
509
|
-
function
|
|
1352
|
+
function dc(u) {
|
|
510
1353
|
return Object.prototype.toString.call(u);
|
|
511
1354
|
}
|
|
512
|
-
function
|
|
513
|
-
return
|
|
1355
|
+
function p0(u) {
|
|
1356
|
+
return dc(u) === "[object String]";
|
|
514
1357
|
}
|
|
515
|
-
const
|
|
516
|
-
function
|
|
517
|
-
return
|
|
1358
|
+
const hc = Object.prototype.hasOwnProperty;
|
|
1359
|
+
function pc(u, e) {
|
|
1360
|
+
return hc.call(u, e);
|
|
518
1361
|
}
|
|
519
|
-
function
|
|
1362
|
+
function ve(u) {
|
|
520
1363
|
return Array.prototype.slice.call(arguments, 1).forEach(function(t) {
|
|
521
1364
|
if (t) {
|
|
522
1365
|
if (typeof t != "object")
|
|
@@ -527,13 +1370,13 @@ function du(u) {
|
|
|
527
1370
|
}
|
|
528
1371
|
}), u;
|
|
529
1372
|
}
|
|
530
|
-
function
|
|
1373
|
+
function zt(u, e, t) {
|
|
531
1374
|
return [].concat(u.slice(0, e), t, u.slice(e + 1));
|
|
532
1375
|
}
|
|
533
|
-
function
|
|
1376
|
+
function b0(u) {
|
|
534
1377
|
return !(u >= 55296 && u <= 57343 || u >= 64976 && u <= 65007 || (u & 65535) === 65535 || (u & 65535) === 65534 || u >= 0 && u <= 8 || u === 11 || u >= 14 && u <= 31 || u >= 127 && u <= 159 || u > 1114111);
|
|
535
1378
|
}
|
|
536
|
-
function
|
|
1379
|
+
function Te(u) {
|
|
537
1380
|
if (u > 65535) {
|
|
538
1381
|
u -= 65536;
|
|
539
1382
|
const e = 55296 + (u >> 10), t = 56320 + (u & 1023);
|
|
@@ -541,40 +1384,40 @@ function fu(u) {
|
|
|
541
1384
|
}
|
|
542
1385
|
return String.fromCharCode(u);
|
|
543
1386
|
}
|
|
544
|
-
const
|
|
545
|
-
function
|
|
546
|
-
if (e.charCodeAt(0) === 35 &&
|
|
1387
|
+
const qt = /\\([!"#$%&'()*+,\-./:;<=>?@[\\\]^_`{|}~])/g, bc = /&([a-z#][a-z0-9]{1,31});/gi, _c = new RegExp(qt.source + "|" + bc.source, "gi"), mc = /^#((?:x[a-f0-9]{1,8}|[0-9]{1,8}))$/i;
|
|
1388
|
+
function xc(u, e) {
|
|
1389
|
+
if (e.charCodeAt(0) === 35 && mc.test(e)) {
|
|
547
1390
|
const n = e[1].toLowerCase() === "x" ? parseInt(e.slice(2), 16) : parseInt(e.slice(1), 10);
|
|
548
|
-
return
|
|
1391
|
+
return b0(n) ? Te(n) : u;
|
|
549
1392
|
}
|
|
550
|
-
const t =
|
|
1393
|
+
const t = Pt(u);
|
|
551
1394
|
return t !== u ? t : u;
|
|
552
1395
|
}
|
|
553
|
-
function
|
|
554
|
-
return u.indexOf("\\") < 0 ? u : u.replace(
|
|
1396
|
+
function gc(u) {
|
|
1397
|
+
return u.indexOf("\\") < 0 ? u : u.replace(qt, "$1");
|
|
555
1398
|
}
|
|
556
|
-
function
|
|
557
|
-
return u.indexOf("\\") < 0 && u.indexOf("&") < 0 ? u : u.replace(
|
|
558
|
-
return t ||
|
|
1399
|
+
function zu(u) {
|
|
1400
|
+
return u.indexOf("\\") < 0 && u.indexOf("&") < 0 ? u : u.replace(_c, function(e, t, n) {
|
|
1401
|
+
return t || xc(e, n);
|
|
559
1402
|
});
|
|
560
1403
|
}
|
|
561
|
-
const
|
|
1404
|
+
const kc = /[&<>"]/, Ec = /[&<>"]/g, Ac = {
|
|
562
1405
|
"&": "&",
|
|
563
1406
|
"<": "<",
|
|
564
1407
|
">": ">",
|
|
565
1408
|
'"': """
|
|
566
1409
|
};
|
|
567
|
-
function
|
|
568
|
-
return
|
|
1410
|
+
function Cc(u) {
|
|
1411
|
+
return Ac[u];
|
|
569
1412
|
}
|
|
570
|
-
function
|
|
571
|
-
return
|
|
1413
|
+
function gu(u) {
|
|
1414
|
+
return kc.test(u) ? u.replace(Ec, Cc) : u;
|
|
572
1415
|
}
|
|
573
|
-
const
|
|
574
|
-
function
|
|
575
|
-
return u.replace(
|
|
1416
|
+
const Dc = /[.?*+^$[\]\\(){}|-]/g;
|
|
1417
|
+
function yc(u) {
|
|
1418
|
+
return u.replace(Dc, "\\$&");
|
|
576
1419
|
}
|
|
577
|
-
function
|
|
1420
|
+
function w(u) {
|
|
578
1421
|
switch (u) {
|
|
579
1422
|
case 9:
|
|
580
1423
|
case 32:
|
|
@@ -582,7 +1425,7 @@ function E(u) {
|
|
|
582
1425
|
}
|
|
583
1426
|
return !1;
|
|
584
1427
|
}
|
|
585
|
-
function
|
|
1428
|
+
function ne(u) {
|
|
586
1429
|
if (u >= 8192 && u <= 8202)
|
|
587
1430
|
return !0;
|
|
588
1431
|
switch (u) {
|
|
@@ -601,10 +1444,10 @@ function Y(u) {
|
|
|
601
1444
|
}
|
|
602
1445
|
return !1;
|
|
603
1446
|
}
|
|
604
|
-
function
|
|
605
|
-
return
|
|
1447
|
+
function re(u) {
|
|
1448
|
+
return h0.test(u) || Ot.test(u);
|
|
606
1449
|
}
|
|
607
|
-
function
|
|
1450
|
+
function ce(u) {
|
|
608
1451
|
switch (u) {
|
|
609
1452
|
case 33:
|
|
610
1453
|
case 34:
|
|
@@ -643,38 +1486,38 @@ function uu(u) {
|
|
|
643
1486
|
return !1;
|
|
644
1487
|
}
|
|
645
1488
|
}
|
|
646
|
-
function
|
|
1489
|
+
function Re(u) {
|
|
647
1490
|
return u = u.trim().replace(/\s+/g, " "), "ẞ".toLowerCase() === "Ṿ" && (u = u.replace(/ẞ/g, "ß")), u.toLowerCase().toUpperCase();
|
|
648
1491
|
}
|
|
649
|
-
const
|
|
1492
|
+
const Fc = { mdurl: Jr, ucmicro: Kr }, Tc = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
650
1493
|
__proto__: null,
|
|
651
|
-
arrayReplaceAt:
|
|
652
|
-
assign:
|
|
653
|
-
escapeHtml:
|
|
654
|
-
escapeRE:
|
|
655
|
-
fromCodePoint:
|
|
656
|
-
has:
|
|
657
|
-
isMdAsciiPunct:
|
|
658
|
-
isPunctChar:
|
|
659
|
-
isSpace:
|
|
660
|
-
isString:
|
|
661
|
-
isValidEntityCode:
|
|
662
|
-
isWhiteSpace:
|
|
663
|
-
lib:
|
|
664
|
-
normalizeReference:
|
|
665
|
-
unescapeAll:
|
|
666
|
-
unescapeMd:
|
|
1494
|
+
arrayReplaceAt: zt,
|
|
1495
|
+
assign: ve,
|
|
1496
|
+
escapeHtml: gu,
|
|
1497
|
+
escapeRE: yc,
|
|
1498
|
+
fromCodePoint: Te,
|
|
1499
|
+
has: pc,
|
|
1500
|
+
isMdAsciiPunct: ce,
|
|
1501
|
+
isPunctChar: re,
|
|
1502
|
+
isSpace: w,
|
|
1503
|
+
isString: p0,
|
|
1504
|
+
isValidEntityCode: b0,
|
|
1505
|
+
isWhiteSpace: ne,
|
|
1506
|
+
lib: Fc,
|
|
1507
|
+
normalizeReference: Re,
|
|
1508
|
+
unescapeAll: zu,
|
|
1509
|
+
unescapeMd: gc
|
|
667
1510
|
}, Symbol.toStringTag, { value: "Module" }));
|
|
668
|
-
function
|
|
669
|
-
let n, r, c,
|
|
670
|
-
const
|
|
671
|
-
for (u.pos = e + 1, n = 1; u.pos <
|
|
1511
|
+
function Sc(u, e, t) {
|
|
1512
|
+
let n, r, c, i;
|
|
1513
|
+
const o = u.posMax, a = u.pos;
|
|
1514
|
+
for (u.pos = e + 1, n = 1; u.pos < o; ) {
|
|
672
1515
|
if (c = u.src.charCodeAt(u.pos), c === 93 && (n--, n === 0)) {
|
|
673
1516
|
r = !0;
|
|
674
1517
|
break;
|
|
675
1518
|
}
|
|
676
|
-
if (
|
|
677
|
-
if (
|
|
1519
|
+
if (i = u.pos, u.md.inline.skipToken(u), c === 91) {
|
|
1520
|
+
if (i === u.pos - 1)
|
|
678
1521
|
n++;
|
|
679
1522
|
else if (t)
|
|
680
1523
|
return u.pos = a, -1;
|
|
@@ -683,7 +1526,7 @@ function qe(u, e, t) {
|
|
|
683
1526
|
let s = -1;
|
|
684
1527
|
return r && (s = u.pos), u.pos = a, s;
|
|
685
1528
|
}
|
|
686
|
-
function
|
|
1529
|
+
function wc(u, e, t) {
|
|
687
1530
|
let n, r = e;
|
|
688
1531
|
const c = {
|
|
689
1532
|
ok: !1,
|
|
@@ -695,7 +1538,7 @@ function Re(u, e, t) {
|
|
|
695
1538
|
if (n = u.charCodeAt(r), n === 10 || n === 60)
|
|
696
1539
|
return c;
|
|
697
1540
|
if (n === 62)
|
|
698
|
-
return c.pos = r + 1, c.str =
|
|
1541
|
+
return c.pos = r + 1, c.str = zu(u.slice(e + 1, r)), c.ok = !0, c;
|
|
699
1542
|
if (n === 92 && r + 1 < t) {
|
|
700
1543
|
r += 2;
|
|
701
1544
|
continue;
|
|
@@ -704,7 +1547,7 @@ function Re(u, e, t) {
|
|
|
704
1547
|
}
|
|
705
1548
|
return c;
|
|
706
1549
|
}
|
|
707
|
-
let
|
|
1550
|
+
let i = 0;
|
|
708
1551
|
for (; r < t && (n = u.charCodeAt(r), !(n === 32 || n < 32 || n === 127)); ) {
|
|
709
1552
|
if (n === 92 && r + 1 < t) {
|
|
710
1553
|
if (u.charCodeAt(r + 1) === 32)
|
|
@@ -712,20 +1555,20 @@ function Re(u, e, t) {
|
|
|
712
1555
|
r += 2;
|
|
713
1556
|
continue;
|
|
714
1557
|
}
|
|
715
|
-
if (n === 40 && (
|
|
1558
|
+
if (n === 40 && (i++, i > 32))
|
|
716
1559
|
return c;
|
|
717
1560
|
if (n === 41) {
|
|
718
|
-
if (
|
|
1561
|
+
if (i === 0)
|
|
719
1562
|
break;
|
|
720
|
-
|
|
1563
|
+
i--;
|
|
721
1564
|
}
|
|
722
1565
|
r++;
|
|
723
1566
|
}
|
|
724
|
-
return e === r ||
|
|
1567
|
+
return e === r || i !== 0 || (c.str = zu(u.slice(e, r)), c.pos = r, c.ok = !0), c;
|
|
725
1568
|
}
|
|
726
|
-
function
|
|
1569
|
+
function vc(u, e, t, n) {
|
|
727
1570
|
let r, c = e;
|
|
728
|
-
const
|
|
1571
|
+
const i = {
|
|
729
1572
|
// if `true`, this is a valid link title
|
|
730
1573
|
ok: !1,
|
|
731
1574
|
// if `true`, this link can be continued on the next line
|
|
@@ -738,122 +1581,122 @@ function Le(u, e, t, n) {
|
|
|
738
1581
|
marker: 0
|
|
739
1582
|
};
|
|
740
1583
|
if (n)
|
|
741
|
-
|
|
1584
|
+
i.str = n.str, i.marker = n.marker;
|
|
742
1585
|
else {
|
|
743
1586
|
if (c >= t)
|
|
744
|
-
return
|
|
745
|
-
let
|
|
746
|
-
if (
|
|
747
|
-
return
|
|
748
|
-
e++, c++,
|
|
1587
|
+
return i;
|
|
1588
|
+
let o = u.charCodeAt(c);
|
|
1589
|
+
if (o !== 34 && o !== 39 && o !== 40)
|
|
1590
|
+
return i;
|
|
1591
|
+
e++, c++, o === 40 && (o = 41), i.marker = o;
|
|
749
1592
|
}
|
|
750
1593
|
for (; c < t; ) {
|
|
751
|
-
if (r = u.charCodeAt(c), r ===
|
|
752
|
-
return
|
|
753
|
-
if (r === 40 &&
|
|
754
|
-
return
|
|
1594
|
+
if (r = u.charCodeAt(c), r === i.marker)
|
|
1595
|
+
return i.pos = c + 1, i.str += zu(u.slice(e, c)), i.ok = !0, i;
|
|
1596
|
+
if (r === 40 && i.marker === 41)
|
|
1597
|
+
return i;
|
|
755
1598
|
r === 92 && c + 1 < t && c++, c++;
|
|
756
1599
|
}
|
|
757
|
-
return
|
|
1600
|
+
return i.can_continue = !0, i.str += zu(u.slice(e, c)), i;
|
|
758
1601
|
}
|
|
759
|
-
const
|
|
1602
|
+
const Rc = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
760
1603
|
__proto__: null,
|
|
761
|
-
parseLinkDestination:
|
|
762
|
-
parseLinkLabel:
|
|
763
|
-
parseLinkTitle:
|
|
764
|
-
}, Symbol.toStringTag, { value: "Module" })),
|
|
765
|
-
|
|
1604
|
+
parseLinkDestination: wc,
|
|
1605
|
+
parseLinkLabel: Sc,
|
|
1606
|
+
parseLinkTitle: vc
|
|
1607
|
+
}, Symbol.toStringTag, { value: "Module" })), iu = {};
|
|
1608
|
+
iu.code_inline = function(u, e, t, n, r) {
|
|
766
1609
|
const c = u[e];
|
|
767
|
-
return "<code" + r.renderAttrs(c) + ">" +
|
|
1610
|
+
return "<code" + r.renderAttrs(c) + ">" + gu(c.content) + "</code>";
|
|
768
1611
|
};
|
|
769
|
-
|
|
1612
|
+
iu.code_block = function(u, e, t, n, r) {
|
|
770
1613
|
const c = u[e];
|
|
771
|
-
return "<pre" + r.renderAttrs(c) + "><code>" +
|
|
1614
|
+
return "<pre" + r.renderAttrs(c) + "><code>" + gu(u[e].content) + `</code></pre>
|
|
772
1615
|
`;
|
|
773
1616
|
};
|
|
774
|
-
|
|
775
|
-
const c = u[e],
|
|
776
|
-
let
|
|
777
|
-
if (
|
|
778
|
-
const f =
|
|
779
|
-
|
|
1617
|
+
iu.fence = function(u, e, t, n, r) {
|
|
1618
|
+
const c = u[e], i = c.info ? zu(c.info).trim() : "";
|
|
1619
|
+
let o = "", a = "";
|
|
1620
|
+
if (i) {
|
|
1621
|
+
const f = i.split(/(\s+)/g);
|
|
1622
|
+
o = f[0], a = f.slice(2).join("");
|
|
780
1623
|
}
|
|
781
1624
|
let s;
|
|
782
|
-
if (t.highlight ? s = t.highlight(c.content,
|
|
1625
|
+
if (t.highlight ? s = t.highlight(c.content, o, a) || gu(c.content) : s = gu(c.content), s.indexOf("<pre") === 0)
|
|
783
1626
|
return s + `
|
|
784
1627
|
`;
|
|
785
|
-
if (
|
|
786
|
-
const f = c.attrIndex("class"),
|
|
787
|
-
f < 0 ?
|
|
788
|
-
const
|
|
789
|
-
attrs:
|
|
1628
|
+
if (i) {
|
|
1629
|
+
const f = c.attrIndex("class"), h = c.attrs ? c.attrs.slice() : [];
|
|
1630
|
+
f < 0 ? h.push(["class", t.langPrefix + o]) : (h[f] = h[f].slice(), h[f][1] += " " + t.langPrefix + o);
|
|
1631
|
+
const _ = {
|
|
1632
|
+
attrs: h
|
|
790
1633
|
};
|
|
791
|
-
return `<pre><code${r.renderAttrs(
|
|
1634
|
+
return `<pre><code${r.renderAttrs(_)}>${s}</code></pre>
|
|
792
1635
|
`;
|
|
793
1636
|
}
|
|
794
1637
|
return `<pre><code${r.renderAttrs(c)}>${s}</code></pre>
|
|
795
1638
|
`;
|
|
796
1639
|
};
|
|
797
|
-
|
|
1640
|
+
iu.image = function(u, e, t, n, r) {
|
|
798
1641
|
const c = u[e];
|
|
799
1642
|
return c.attrs[c.attrIndex("alt")][1] = r.renderInlineAsText(c.children, t, n), r.renderToken(u, e, t);
|
|
800
1643
|
};
|
|
801
|
-
|
|
1644
|
+
iu.hardbreak = function(u, e, t) {
|
|
802
1645
|
return t.xhtmlOut ? `<br />
|
|
803
1646
|
` : `<br>
|
|
804
1647
|
`;
|
|
805
1648
|
};
|
|
806
|
-
|
|
1649
|
+
iu.softbreak = function(u, e, t) {
|
|
807
1650
|
return t.breaks ? t.xhtmlOut ? `<br />
|
|
808
1651
|
` : `<br>
|
|
809
1652
|
` : `
|
|
810
1653
|
`;
|
|
811
1654
|
};
|
|
812
|
-
|
|
813
|
-
return
|
|
1655
|
+
iu.text = function(u, e) {
|
|
1656
|
+
return gu(u[e].content);
|
|
814
1657
|
};
|
|
815
|
-
|
|
1658
|
+
iu.html_block = function(u, e) {
|
|
816
1659
|
return u[e].content;
|
|
817
1660
|
};
|
|
818
|
-
|
|
1661
|
+
iu.html_inline = function(u, e) {
|
|
819
1662
|
return u[e].content;
|
|
820
1663
|
};
|
|
821
|
-
function
|
|
822
|
-
this.rules =
|
|
1664
|
+
function Uu() {
|
|
1665
|
+
this.rules = ve({}, iu);
|
|
823
1666
|
}
|
|
824
|
-
|
|
1667
|
+
Uu.prototype.renderAttrs = function(e) {
|
|
825
1668
|
let t, n, r;
|
|
826
1669
|
if (!e.attrs)
|
|
827
1670
|
return "";
|
|
828
1671
|
for (r = "", t = 0, n = e.attrs.length; t < n; t++)
|
|
829
|
-
r += " " +
|
|
1672
|
+
r += " " + gu(e.attrs[t][0]) + '="' + gu(e.attrs[t][1]) + '"';
|
|
830
1673
|
return r;
|
|
831
1674
|
};
|
|
832
|
-
|
|
1675
|
+
Uu.prototype.renderToken = function(e, t, n) {
|
|
833
1676
|
const r = e[t];
|
|
834
1677
|
let c = "";
|
|
835
1678
|
if (r.hidden)
|
|
836
1679
|
return "";
|
|
837
1680
|
r.block && r.nesting !== -1 && t && e[t - 1].hidden && (c += `
|
|
838
1681
|
`), c += (r.nesting === -1 ? "</" : "<") + r.tag, c += this.renderAttrs(r), r.nesting === 0 && n.xhtmlOut && (c += " /");
|
|
839
|
-
let
|
|
840
|
-
if (r.block && (
|
|
841
|
-
const
|
|
842
|
-
(
|
|
1682
|
+
let i = !1;
|
|
1683
|
+
if (r.block && (i = !0, r.nesting === 1 && t + 1 < e.length)) {
|
|
1684
|
+
const o = e[t + 1];
|
|
1685
|
+
(o.type === "inline" || o.hidden || o.nesting === -1 && o.tag === r.tag) && (i = !1);
|
|
843
1686
|
}
|
|
844
|
-
return c +=
|
|
1687
|
+
return c += i ? `>
|
|
845
1688
|
` : ">", c;
|
|
846
1689
|
};
|
|
847
|
-
|
|
1690
|
+
Uu.prototype.renderInline = function(u, e, t) {
|
|
848
1691
|
let n = "";
|
|
849
1692
|
const r = this.rules;
|
|
850
|
-
for (let c = 0,
|
|
851
|
-
const
|
|
852
|
-
typeof r[
|
|
1693
|
+
for (let c = 0, i = u.length; c < i; c++) {
|
|
1694
|
+
const o = u[c].type;
|
|
1695
|
+
typeof r[o] < "u" ? n += r[o](u, c, e, t, this) : n += this.renderToken(u, c, e);
|
|
853
1696
|
}
|
|
854
1697
|
return n;
|
|
855
1698
|
};
|
|
856
|
-
|
|
1699
|
+
Uu.prototype.renderInlineAsText = function(u, e, t) {
|
|
857
1700
|
let n = "";
|
|
858
1701
|
for (let r = 0, c = u.length; r < c; r++)
|
|
859
1702
|
switch (u[r].type) {
|
|
@@ -875,25 +1718,25 @@ Q.prototype.renderInlineAsText = function(u, e, t) {
|
|
|
875
1718
|
}
|
|
876
1719
|
return n;
|
|
877
1720
|
};
|
|
878
|
-
|
|
1721
|
+
Uu.prototype.render = function(u, e, t) {
|
|
879
1722
|
let n = "";
|
|
880
1723
|
const r = this.rules;
|
|
881
|
-
for (let c = 0,
|
|
882
|
-
const
|
|
883
|
-
|
|
1724
|
+
for (let c = 0, i = u.length; c < i; c++) {
|
|
1725
|
+
const o = u[c].type;
|
|
1726
|
+
o === "inline" ? n += this.renderInline(u[c].children, e, t) : typeof r[o] < "u" ? n += r[o](u, c, e, t, this) : n += this.renderToken(u, c, e, t);
|
|
884
1727
|
}
|
|
885
1728
|
return n;
|
|
886
1729
|
};
|
|
887
|
-
function
|
|
1730
|
+
function V() {
|
|
888
1731
|
this.__rules__ = [], this.__cache__ = null;
|
|
889
1732
|
}
|
|
890
|
-
|
|
1733
|
+
V.prototype.__find__ = function(u) {
|
|
891
1734
|
for (let e = 0; e < this.__rules__.length; e++)
|
|
892
1735
|
if (this.__rules__[e].name === u)
|
|
893
1736
|
return e;
|
|
894
1737
|
return -1;
|
|
895
1738
|
};
|
|
896
|
-
|
|
1739
|
+
V.prototype.__compile__ = function() {
|
|
897
1740
|
const u = this, e = [""];
|
|
898
1741
|
u.__rules__.forEach(function(t) {
|
|
899
1742
|
t.enabled && t.alt.forEach(function(n) {
|
|
@@ -905,13 +1748,13 @@ w.prototype.__compile__ = function() {
|
|
|
905
1748
|
});
|
|
906
1749
|
});
|
|
907
1750
|
};
|
|
908
|
-
|
|
1751
|
+
V.prototype.at = function(u, e, t) {
|
|
909
1752
|
const n = this.__find__(u), r = t || {};
|
|
910
1753
|
if (n === -1)
|
|
911
1754
|
throw new Error("Parser rule not found: " + u);
|
|
912
1755
|
this.__rules__[n].fn = e, this.__rules__[n].alt = r.alt || [], this.__cache__ = null;
|
|
913
1756
|
};
|
|
914
|
-
|
|
1757
|
+
V.prototype.before = function(u, e, t, n) {
|
|
915
1758
|
const r = this.__find__(u), c = n || {};
|
|
916
1759
|
if (r === -1)
|
|
917
1760
|
throw new Error("Parser rule not found: " + u);
|
|
@@ -922,7 +1765,7 @@ w.prototype.before = function(u, e, t, n) {
|
|
|
922
1765
|
alt: c.alt || []
|
|
923
1766
|
}), this.__cache__ = null;
|
|
924
1767
|
};
|
|
925
|
-
|
|
1768
|
+
V.prototype.after = function(u, e, t, n) {
|
|
926
1769
|
const r = this.__find__(u), c = n || {};
|
|
927
1770
|
if (r === -1)
|
|
928
1771
|
throw new Error("Parser rule not found: " + u);
|
|
@@ -933,7 +1776,7 @@ w.prototype.after = function(u, e, t, n) {
|
|
|
933
1776
|
alt: c.alt || []
|
|
934
1777
|
}), this.__cache__ = null;
|
|
935
1778
|
};
|
|
936
|
-
|
|
1779
|
+
V.prototype.push = function(u, e, t) {
|
|
937
1780
|
const n = t || {};
|
|
938
1781
|
this.__rules__.push({
|
|
939
1782
|
name: u,
|
|
@@ -942,7 +1785,7 @@ w.prototype.push = function(u, e, t) {
|
|
|
942
1785
|
alt: n.alt || []
|
|
943
1786
|
}), this.__cache__ = null;
|
|
944
1787
|
};
|
|
945
|
-
|
|
1788
|
+
V.prototype.enable = function(u, e) {
|
|
946
1789
|
Array.isArray(u) || (u = [u]);
|
|
947
1790
|
const t = [];
|
|
948
1791
|
return u.forEach(function(n) {
|
|
@@ -955,12 +1798,12 @@ w.prototype.enable = function(u, e) {
|
|
|
955
1798
|
this.__rules__[r].enabled = !0, t.push(n);
|
|
956
1799
|
}, this), this.__cache__ = null, t;
|
|
957
1800
|
};
|
|
958
|
-
|
|
1801
|
+
V.prototype.enableOnly = function(u, e) {
|
|
959
1802
|
Array.isArray(u) || (u = [u]), this.__rules__.forEach(function(t) {
|
|
960
1803
|
t.enabled = !1;
|
|
961
1804
|
}), this.enable(u, e);
|
|
962
1805
|
};
|
|
963
|
-
|
|
1806
|
+
V.prototype.disable = function(u, e) {
|
|
964
1807
|
Array.isArray(u) || (u = [u]);
|
|
965
1808
|
const t = [];
|
|
966
1809
|
return u.forEach(function(n) {
|
|
@@ -973,13 +1816,13 @@ w.prototype.disable = function(u, e) {
|
|
|
973
1816
|
this.__rules__[r].enabled = !1, t.push(n);
|
|
974
1817
|
}, this), this.__cache__ = null, t;
|
|
975
1818
|
};
|
|
976
|
-
|
|
1819
|
+
V.prototype.getRules = function(u) {
|
|
977
1820
|
return this.__cache__ === null && this.__compile__(), this.__cache__[u] || [];
|
|
978
1821
|
};
|
|
979
|
-
function
|
|
1822
|
+
function uu(u, e, t) {
|
|
980
1823
|
this.type = u, this.tag = e, this.attrs = null, this.map = null, this.nesting = t, this.level = 0, this.children = null, this.content = "", this.markup = "", this.info = "", this.meta = null, this.block = !1, this.hidden = !1;
|
|
981
1824
|
}
|
|
982
|
-
|
|
1825
|
+
uu.prototype.attrIndex = function(e) {
|
|
983
1826
|
if (!this.attrs)
|
|
984
1827
|
return -1;
|
|
985
1828
|
const t = this.attrs;
|
|
@@ -988,284 +1831,284 @@ z.prototype.attrIndex = function(e) {
|
|
|
988
1831
|
return n;
|
|
989
1832
|
return -1;
|
|
990
1833
|
};
|
|
991
|
-
|
|
1834
|
+
uu.prototype.attrPush = function(e) {
|
|
992
1835
|
this.attrs ? this.attrs.push(e) : this.attrs = [e];
|
|
993
1836
|
};
|
|
994
|
-
|
|
1837
|
+
uu.prototype.attrSet = function(e, t) {
|
|
995
1838
|
const n = this.attrIndex(e), r = [e, t];
|
|
996
1839
|
n < 0 ? this.attrPush(r) : this.attrs[n] = r;
|
|
997
1840
|
};
|
|
998
|
-
|
|
1841
|
+
uu.prototype.attrGet = function(e) {
|
|
999
1842
|
const t = this.attrIndex(e);
|
|
1000
1843
|
let n = null;
|
|
1001
1844
|
return t >= 0 && (n = this.attrs[t][1]), n;
|
|
1002
1845
|
};
|
|
1003
|
-
|
|
1846
|
+
uu.prototype.attrJoin = function(e, t) {
|
|
1004
1847
|
const n = this.attrIndex(e);
|
|
1005
1848
|
n < 0 ? this.attrPush([e, t]) : this.attrs[n][1] = this.attrs[n][1] + " " + t;
|
|
1006
1849
|
};
|
|
1007
|
-
function
|
|
1850
|
+
function Ut(u, e, t) {
|
|
1008
1851
|
this.src = u, this.env = t, this.tokens = [], this.inlineMode = !1, this.md = e;
|
|
1009
1852
|
}
|
|
1010
|
-
|
|
1011
|
-
const
|
|
1012
|
-
function
|
|
1853
|
+
Ut.prototype.Token = uu;
|
|
1854
|
+
const Mc = /\r\n?|\n/g, Ic = /\0/g;
|
|
1855
|
+
function Lc(u) {
|
|
1013
1856
|
let e;
|
|
1014
|
-
e = u.src.replace(
|
|
1015
|
-
`), e = e.replace(
|
|
1857
|
+
e = u.src.replace(Mc, `
|
|
1858
|
+
`), e = e.replace(Ic, "�"), u.src = e;
|
|
1016
1859
|
}
|
|
1017
|
-
function
|
|
1860
|
+
function Oc(u) {
|
|
1018
1861
|
let e;
|
|
1019
1862
|
u.inlineMode ? (e = new u.Token("inline", "", 0), e.content = u.src, e.map = [0, 1], e.children = [], u.tokens.push(e)) : u.md.block.parse(u.src, u.md, u.env, u.tokens);
|
|
1020
1863
|
}
|
|
1021
|
-
function
|
|
1864
|
+
function Nc(u) {
|
|
1022
1865
|
const e = u.tokens;
|
|
1023
1866
|
for (let t = 0, n = e.length; t < n; t++) {
|
|
1024
1867
|
const r = e[t];
|
|
1025
1868
|
r.type === "inline" && u.md.inline.parse(r.content, u.md, u.env, r.children);
|
|
1026
1869
|
}
|
|
1027
1870
|
}
|
|
1028
|
-
function
|
|
1871
|
+
function Bc(u) {
|
|
1029
1872
|
return /^<a[>\s]/i.test(u);
|
|
1030
1873
|
}
|
|
1031
|
-
function
|
|
1874
|
+
function Pc(u) {
|
|
1032
1875
|
return /^<\/a\s*>/i.test(u);
|
|
1033
1876
|
}
|
|
1034
|
-
function
|
|
1877
|
+
function zc(u) {
|
|
1035
1878
|
const e = u.tokens;
|
|
1036
1879
|
if (u.md.options.linkify)
|
|
1037
1880
|
for (let t = 0, n = e.length; t < n; t++) {
|
|
1038
1881
|
if (e[t].type !== "inline" || !u.md.linkify.pretest(e[t].content))
|
|
1039
1882
|
continue;
|
|
1040
1883
|
let r = e[t].children, c = 0;
|
|
1041
|
-
for (let
|
|
1042
|
-
const
|
|
1043
|
-
if (
|
|
1044
|
-
for (
|
|
1045
|
-
|
|
1884
|
+
for (let i = r.length - 1; i >= 0; i--) {
|
|
1885
|
+
const o = r[i];
|
|
1886
|
+
if (o.type === "link_close") {
|
|
1887
|
+
for (i--; r[i].level !== o.level && r[i].type !== "link_open"; )
|
|
1888
|
+
i--;
|
|
1046
1889
|
continue;
|
|
1047
1890
|
}
|
|
1048
|
-
if (
|
|
1049
|
-
const a =
|
|
1891
|
+
if (o.type === "html_inline" && (Bc(o.content) && c > 0 && c--, Pc(o.content) && c++), !(c > 0) && o.type === "text" && u.md.linkify.test(o.content)) {
|
|
1892
|
+
const a = o.content;
|
|
1050
1893
|
let s = u.md.linkify.match(a);
|
|
1051
1894
|
const f = [];
|
|
1052
|
-
let
|
|
1053
|
-
s.length > 0 && s[0].index === 0 &&
|
|
1054
|
-
for (let
|
|
1055
|
-
const
|
|
1056
|
-
if (!u.md.validateLink(
|
|
1895
|
+
let h = o.level, _ = 0;
|
|
1896
|
+
s.length > 0 && s[0].index === 0 && i > 0 && r[i - 1].type === "text_special" && (s = s.slice(1));
|
|
1897
|
+
for (let p = 0; p < s.length; p++) {
|
|
1898
|
+
const d = s[p].url, C = u.md.normalizeLink(d);
|
|
1899
|
+
if (!u.md.validateLink(C))
|
|
1057
1900
|
continue;
|
|
1058
|
-
let
|
|
1059
|
-
s[
|
|
1060
|
-
const
|
|
1061
|
-
if (
|
|
1062
|
-
const
|
|
1063
|
-
|
|
1901
|
+
let D = s[p].text;
|
|
1902
|
+
s[p].schema ? s[p].schema === "mailto:" && !/^mailto:/i.test(D) ? D = u.md.normalizeLinkText("mailto:" + D).replace(/^mailto:/, "") : D = u.md.normalizeLinkText(D) : D = u.md.normalizeLinkText("http://" + D).replace(/^http:\/\//, "");
|
|
1903
|
+
const S = s[p].index;
|
|
1904
|
+
if (S > _) {
|
|
1905
|
+
const A = new u.Token("text", "", 0);
|
|
1906
|
+
A.content = a.slice(_, S), A.level = h, f.push(A);
|
|
1064
1907
|
}
|
|
1065
|
-
const
|
|
1066
|
-
|
|
1067
|
-
const
|
|
1068
|
-
|
|
1069
|
-
const
|
|
1070
|
-
|
|
1908
|
+
const E = new u.Token("link_open", "a", 1);
|
|
1909
|
+
E.attrs = [["href", C]], E.level = h++, E.markup = "linkify", E.info = "auto", f.push(E);
|
|
1910
|
+
const k = new u.Token("text", "", 0);
|
|
1911
|
+
k.content = D, k.level = h, f.push(k);
|
|
1912
|
+
const m = new u.Token("link_close", "a", -1);
|
|
1913
|
+
m.level = --h, m.markup = "linkify", m.info = "auto", f.push(m), _ = s[p].lastIndex;
|
|
1071
1914
|
}
|
|
1072
|
-
if (
|
|
1073
|
-
const
|
|
1074
|
-
|
|
1915
|
+
if (_ < a.length) {
|
|
1916
|
+
const p = new u.Token("text", "", 0);
|
|
1917
|
+
p.content = a.slice(_), p.level = h, f.push(p);
|
|
1075
1918
|
}
|
|
1076
|
-
e[t].children = r =
|
|
1919
|
+
e[t].children = r = zt(r, i, f);
|
|
1077
1920
|
}
|
|
1078
1921
|
}
|
|
1079
1922
|
}
|
|
1080
1923
|
}
|
|
1081
|
-
const
|
|
1924
|
+
const Ht = /\+-|\.\.|\?\?\?\?|!!!!|,,|--/, qc = /\((c|tm|r)\)/i, Uc = /\((c|tm|r)\)/ig, Hc = {
|
|
1082
1925
|
c: "©",
|
|
1083
1926
|
r: "®",
|
|
1084
1927
|
tm: "™"
|
|
1085
1928
|
};
|
|
1086
|
-
function
|
|
1087
|
-
return
|
|
1929
|
+
function $c(u, e) {
|
|
1930
|
+
return Hc[e.toLowerCase()];
|
|
1088
1931
|
}
|
|
1089
|
-
function
|
|
1932
|
+
function jc(u) {
|
|
1090
1933
|
let e = 0;
|
|
1091
1934
|
for (let t = u.length - 1; t >= 0; t--) {
|
|
1092
1935
|
const n = u[t];
|
|
1093
|
-
n.type === "text" && !e && (n.content = n.content.replace(
|
|
1936
|
+
n.type === "text" && !e && (n.content = n.content.replace(Uc, $c)), n.type === "link_open" && n.info === "auto" && e--, n.type === "link_close" && n.info === "auto" && e++;
|
|
1094
1937
|
}
|
|
1095
1938
|
}
|
|
1096
|
-
function
|
|
1939
|
+
function Gc(u) {
|
|
1097
1940
|
let e = 0;
|
|
1098
1941
|
for (let t = u.length - 1; t >= 0; t--) {
|
|
1099
1942
|
const n = u[t];
|
|
1100
|
-
n.type === "text" && !e &&
|
|
1943
|
+
n.type === "text" && !e && Ht.test(n.content) && (n.content = n.content.replace(/\+-/g, "±").replace(/\.{2,}/g, "…").replace(/([?!])…/g, "$1..").replace(/([?!]){4,}/g, "$1$1$1").replace(/,{2,}/g, ",").replace(/(^|[^-])---(?=[^-]|$)/mg, "$1—").replace(/(^|\s)--(?=\s|$)/mg, "$1–").replace(/(^|[^-\s])--(?=[^-\s]|$)/mg, "$1–")), n.type === "link_open" && n.info === "auto" && e--, n.type === "link_close" && n.info === "auto" && e++;
|
|
1101
1944
|
}
|
|
1102
1945
|
}
|
|
1103
|
-
function
|
|
1946
|
+
function Wc(u) {
|
|
1104
1947
|
let e;
|
|
1105
1948
|
if (u.md.options.typographer)
|
|
1106
1949
|
for (e = u.tokens.length - 1; e >= 0; e--)
|
|
1107
|
-
u.tokens[e].type === "inline" && (
|
|
1950
|
+
u.tokens[e].type === "inline" && (qc.test(u.tokens[e].content) && jc(u.tokens[e].children), Ht.test(u.tokens[e].content) && Gc(u.tokens[e].children));
|
|
1108
1951
|
}
|
|
1109
|
-
const
|
|
1110
|
-
function
|
|
1952
|
+
const Zc = /['"]/, ft = /['"]/g, dt = "’";
|
|
1953
|
+
function Ee(u, e, t) {
|
|
1111
1954
|
return u.slice(0, e) + t + u.slice(e + 1);
|
|
1112
1955
|
}
|
|
1113
|
-
function
|
|
1956
|
+
function Vc(u, e) {
|
|
1114
1957
|
let t;
|
|
1115
1958
|
const n = [];
|
|
1116
1959
|
for (let r = 0; r < u.length; r++) {
|
|
1117
|
-
const c = u[r],
|
|
1118
|
-
for (t = n.length - 1; t >= 0 && !(n[t].level <=
|
|
1960
|
+
const c = u[r], i = u[r].level;
|
|
1961
|
+
for (t = n.length - 1; t >= 0 && !(n[t].level <= i); t--)
|
|
1119
1962
|
;
|
|
1120
1963
|
if (n.length = t + 1, c.type !== "text")
|
|
1121
1964
|
continue;
|
|
1122
|
-
let
|
|
1965
|
+
let o = c.content, a = 0, s = o.length;
|
|
1123
1966
|
u:
|
|
1124
1967
|
for (; a < s; ) {
|
|
1125
|
-
|
|
1126
|
-
const f =
|
|
1968
|
+
ft.lastIndex = a;
|
|
1969
|
+
const f = ft.exec(o);
|
|
1127
1970
|
if (!f)
|
|
1128
1971
|
break;
|
|
1129
|
-
let
|
|
1972
|
+
let h = !0, _ = !0;
|
|
1130
1973
|
a = f.index + 1;
|
|
1131
|
-
const
|
|
1132
|
-
let
|
|
1974
|
+
const p = f[0] === "'";
|
|
1975
|
+
let d = 32;
|
|
1133
1976
|
if (f.index - 1 >= 0)
|
|
1134
|
-
|
|
1977
|
+
d = o.charCodeAt(f.index - 1);
|
|
1135
1978
|
else
|
|
1136
1979
|
for (t = r - 1; t >= 0 && !(u[t].type === "softbreak" || u[t].type === "hardbreak"); t--)
|
|
1137
1980
|
if (u[t].content) {
|
|
1138
|
-
|
|
1981
|
+
d = u[t].content.charCodeAt(u[t].content.length - 1);
|
|
1139
1982
|
break;
|
|
1140
1983
|
}
|
|
1141
|
-
let
|
|
1984
|
+
let C = 32;
|
|
1142
1985
|
if (a < s)
|
|
1143
|
-
|
|
1986
|
+
C = o.charCodeAt(a);
|
|
1144
1987
|
else
|
|
1145
1988
|
for (t = r + 1; t < u.length && !(u[t].type === "softbreak" || u[t].type === "hardbreak"); t++)
|
|
1146
1989
|
if (u[t].content) {
|
|
1147
|
-
|
|
1990
|
+
C = u[t].content.charCodeAt(0);
|
|
1148
1991
|
break;
|
|
1149
1992
|
}
|
|
1150
|
-
const
|
|
1151
|
-
if (
|
|
1152
|
-
|
|
1993
|
+
const D = ce(d) || re(String.fromCharCode(d)), S = ce(C) || re(String.fromCharCode(C)), E = ne(d), k = ne(C);
|
|
1994
|
+
if (k ? h = !1 : S && (E || D || (h = !1)), E ? _ = !1 : D && (k || S || (_ = !1)), C === 34 && f[0] === '"' && d >= 48 && d <= 57 && (_ = h = !1), h && _ && (h = D, _ = S), !h && !_) {
|
|
1995
|
+
p && (c.content = Ee(c.content, f.index, dt));
|
|
1153
1996
|
continue;
|
|
1154
1997
|
}
|
|
1155
|
-
if (
|
|
1998
|
+
if (_)
|
|
1156
1999
|
for (t = n.length - 1; t >= 0; t--) {
|
|
1157
|
-
let
|
|
1158
|
-
if (n[t].level <
|
|
2000
|
+
let m = n[t];
|
|
2001
|
+
if (n[t].level < i)
|
|
1159
2002
|
break;
|
|
1160
|
-
if (
|
|
1161
|
-
|
|
1162
|
-
let
|
|
1163
|
-
|
|
1164
|
-
u[
|
|
1165
|
-
|
|
1166
|
-
|
|
1167
|
-
), a +=
|
|
2003
|
+
if (m.single === p && n[t].level === i) {
|
|
2004
|
+
m = n[t];
|
|
2005
|
+
let A, y;
|
|
2006
|
+
p ? (A = e.md.options.quotes[2], y = e.md.options.quotes[3]) : (A = e.md.options.quotes[0], y = e.md.options.quotes[1]), c.content = Ee(c.content, f.index, y), u[m.token].content = Ee(
|
|
2007
|
+
u[m.token].content,
|
|
2008
|
+
m.pos,
|
|
2009
|
+
A
|
|
2010
|
+
), a += y.length - 1, m.token === r && (a += A.length - 1), o = c.content, s = o.length, n.length = t;
|
|
1168
2011
|
continue u;
|
|
1169
2012
|
}
|
|
1170
2013
|
}
|
|
1171
|
-
|
|
2014
|
+
h ? n.push({
|
|
1172
2015
|
token: r,
|
|
1173
2016
|
pos: f.index,
|
|
1174
|
-
single:
|
|
1175
|
-
level:
|
|
1176
|
-
}) :
|
|
2017
|
+
single: p,
|
|
2018
|
+
level: i
|
|
2019
|
+
}) : _ && p && (c.content = Ee(c.content, f.index, dt));
|
|
1177
2020
|
}
|
|
1178
2021
|
}
|
|
1179
2022
|
}
|
|
1180
|
-
function
|
|
2023
|
+
function Yc(u) {
|
|
1181
2024
|
if (u.md.options.typographer)
|
|
1182
2025
|
for (let e = u.tokens.length - 1; e >= 0; e--)
|
|
1183
|
-
u.tokens[e].type !== "inline" || !
|
|
2026
|
+
u.tokens[e].type !== "inline" || !Zc.test(u.tokens[e].content) || Vc(u.tokens[e].children, u);
|
|
1184
2027
|
}
|
|
1185
|
-
function
|
|
2028
|
+
function Xc(u) {
|
|
1186
2029
|
let e, t;
|
|
1187
2030
|
const n = u.tokens, r = n.length;
|
|
1188
2031
|
for (let c = 0; c < r; c++) {
|
|
1189
2032
|
if (n[c].type !== "inline") continue;
|
|
1190
|
-
const
|
|
1191
|
-
for (e = 0; e <
|
|
1192
|
-
|
|
1193
|
-
for (e = t = 0; e <
|
|
1194
|
-
|
|
1195
|
-
e !== t && (
|
|
1196
|
-
}
|
|
1197
|
-
}
|
|
1198
|
-
const
|
|
1199
|
-
["normalize",
|
|
1200
|
-
["block",
|
|
1201
|
-
["inline",
|
|
1202
|
-
["linkify",
|
|
1203
|
-
["replacements",
|
|
1204
|
-
["smartquotes",
|
|
2033
|
+
const i = n[c].children, o = i.length;
|
|
2034
|
+
for (e = 0; e < o; e++)
|
|
2035
|
+
i[e].type === "text_special" && (i[e].type = "text");
|
|
2036
|
+
for (e = t = 0; e < o; e++)
|
|
2037
|
+
i[e].type === "text" && e + 1 < o && i[e + 1].type === "text" ? i[e + 1].content = i[e].content + i[e + 1].content : (e !== t && (i[t] = i[e]), t++);
|
|
2038
|
+
e !== t && (i.length = t);
|
|
2039
|
+
}
|
|
2040
|
+
}
|
|
2041
|
+
const Qe = [
|
|
2042
|
+
["normalize", Lc],
|
|
2043
|
+
["block", Oc],
|
|
2044
|
+
["inline", Nc],
|
|
2045
|
+
["linkify", zc],
|
|
2046
|
+
["replacements", Wc],
|
|
2047
|
+
["smartquotes", Yc],
|
|
1205
2048
|
// `text_join` finds `text_special` tokens (for escape sequences)
|
|
1206
2049
|
// and joins them with the rest of the text
|
|
1207
|
-
["text_join",
|
|
2050
|
+
["text_join", Xc]
|
|
1208
2051
|
];
|
|
1209
|
-
function
|
|
1210
|
-
this.ruler = new
|
|
1211
|
-
for (let u = 0; u <
|
|
1212
|
-
this.ruler.push(
|
|
2052
|
+
function _0() {
|
|
2053
|
+
this.ruler = new V();
|
|
2054
|
+
for (let u = 0; u < Qe.length; u++)
|
|
2055
|
+
this.ruler.push(Qe[u][0], Qe[u][1]);
|
|
1213
2056
|
}
|
|
1214
|
-
|
|
2057
|
+
_0.prototype.process = function(u) {
|
|
1215
2058
|
const e = this.ruler.getRules("");
|
|
1216
2059
|
for (let t = 0, n = e.length; t < n; t++)
|
|
1217
2060
|
e[t](u);
|
|
1218
2061
|
};
|
|
1219
|
-
|
|
1220
|
-
function
|
|
2062
|
+
_0.prototype.State = Ut;
|
|
2063
|
+
function au(u, e, t, n) {
|
|
1221
2064
|
this.src = u, this.md = e, this.env = t, this.tokens = n, this.bMarks = [], this.eMarks = [], this.tShift = [], this.sCount = [], this.bsCount = [], this.blkIndent = 0, this.line = 0, this.lineMax = 0, this.tight = !1, this.ddIndent = -1, this.listIndent = -1, this.parentType = "root", this.level = 0;
|
|
1222
2065
|
const r = this.src;
|
|
1223
|
-
for (let c = 0,
|
|
1224
|
-
const
|
|
2066
|
+
for (let c = 0, i = 0, o = 0, a = 0, s = r.length, f = !1; i < s; i++) {
|
|
2067
|
+
const h = r.charCodeAt(i);
|
|
1225
2068
|
if (!f)
|
|
1226
|
-
if (
|
|
1227
|
-
|
|
2069
|
+
if (w(h)) {
|
|
2070
|
+
o++, h === 9 ? a += 4 - a % 4 : a++;
|
|
1228
2071
|
continue;
|
|
1229
2072
|
} else
|
|
1230
2073
|
f = !0;
|
|
1231
|
-
(
|
|
2074
|
+
(h === 10 || i === s - 1) && (h !== 10 && i++, this.bMarks.push(c), this.eMarks.push(i), this.tShift.push(o), this.sCount.push(a), this.bsCount.push(0), f = !1, o = 0, a = 0, c = i + 1);
|
|
1232
2075
|
}
|
|
1233
2076
|
this.bMarks.push(r.length), this.eMarks.push(r.length), this.tShift.push(0), this.sCount.push(0), this.bsCount.push(0), this.lineMax = this.bMarks.length - 1;
|
|
1234
2077
|
}
|
|
1235
|
-
|
|
1236
|
-
const n = new
|
|
2078
|
+
au.prototype.push = function(u, e, t) {
|
|
2079
|
+
const n = new uu(u, e, t);
|
|
1237
2080
|
return n.block = !0, t < 0 && this.level--, n.level = this.level, t > 0 && this.level++, this.tokens.push(n), n;
|
|
1238
2081
|
};
|
|
1239
|
-
|
|
2082
|
+
au.prototype.isEmpty = function(e) {
|
|
1240
2083
|
return this.bMarks[e] + this.tShift[e] >= this.eMarks[e];
|
|
1241
2084
|
};
|
|
1242
|
-
|
|
2085
|
+
au.prototype.skipEmptyLines = function(e) {
|
|
1243
2086
|
for (let t = this.lineMax; e < t && !(this.bMarks[e] + this.tShift[e] < this.eMarks[e]); e++)
|
|
1244
2087
|
;
|
|
1245
2088
|
return e;
|
|
1246
2089
|
};
|
|
1247
|
-
|
|
2090
|
+
au.prototype.skipSpaces = function(e) {
|
|
1248
2091
|
for (let t = this.src.length; e < t; e++) {
|
|
1249
2092
|
const n = this.src.charCodeAt(e);
|
|
1250
|
-
if (!
|
|
2093
|
+
if (!w(n))
|
|
1251
2094
|
break;
|
|
1252
2095
|
}
|
|
1253
2096
|
return e;
|
|
1254
2097
|
};
|
|
1255
|
-
|
|
2098
|
+
au.prototype.skipSpacesBack = function(e, t) {
|
|
1256
2099
|
if (e <= t)
|
|
1257
2100
|
return e;
|
|
1258
2101
|
for (; e > t; )
|
|
1259
|
-
if (!
|
|
2102
|
+
if (!w(this.src.charCodeAt(--e)))
|
|
1260
2103
|
return e + 1;
|
|
1261
2104
|
return e;
|
|
1262
2105
|
};
|
|
1263
|
-
|
|
2106
|
+
au.prototype.skipChars = function(e, t) {
|
|
1264
2107
|
for (let n = this.src.length; e < n && this.src.charCodeAt(e) === t; e++)
|
|
1265
2108
|
;
|
|
1266
2109
|
return e;
|
|
1267
2110
|
};
|
|
1268
|
-
|
|
2111
|
+
au.prototype.skipCharsBack = function(e, t, n) {
|
|
1269
2112
|
if (e <= n)
|
|
1270
2113
|
return e;
|
|
1271
2114
|
for (; e > n; )
|
|
@@ -1273,42 +2116,42 @@ R.prototype.skipCharsBack = function(e, t, n) {
|
|
|
1273
2116
|
return e + 1;
|
|
1274
2117
|
return e;
|
|
1275
2118
|
};
|
|
1276
|
-
|
|
2119
|
+
au.prototype.getLines = function(e, t, n, r) {
|
|
1277
2120
|
if (e >= t)
|
|
1278
2121
|
return "";
|
|
1279
2122
|
const c = new Array(t - e);
|
|
1280
|
-
for (let
|
|
2123
|
+
for (let i = 0, o = e; o < t; o++, i++) {
|
|
1281
2124
|
let a = 0;
|
|
1282
|
-
const s = this.bMarks[
|
|
1283
|
-
let f = s,
|
|
1284
|
-
for (
|
|
1285
|
-
const
|
|
1286
|
-
if (
|
|
1287
|
-
|
|
1288
|
-
else if (f - s < this.tShift[
|
|
2125
|
+
const s = this.bMarks[o];
|
|
2126
|
+
let f = s, h;
|
|
2127
|
+
for (o + 1 < t || r ? h = this.eMarks[o] + 1 : h = this.eMarks[o]; f < h && a < n; ) {
|
|
2128
|
+
const _ = this.src.charCodeAt(f);
|
|
2129
|
+
if (w(_))
|
|
2130
|
+
_ === 9 ? a += 4 - (a + this.bsCount[o]) % 4 : a++;
|
|
2131
|
+
else if (f - s < this.tShift[o])
|
|
1289
2132
|
a++;
|
|
1290
2133
|
else
|
|
1291
2134
|
break;
|
|
1292
2135
|
f++;
|
|
1293
2136
|
}
|
|
1294
|
-
a > n ? c[
|
|
2137
|
+
a > n ? c[i] = new Array(a - n + 1).join(" ") + this.src.slice(f, h) : c[i] = this.src.slice(f, h);
|
|
1295
2138
|
}
|
|
1296
2139
|
return c.join("");
|
|
1297
2140
|
};
|
|
1298
|
-
|
|
1299
|
-
const
|
|
1300
|
-
function
|
|
2141
|
+
au.prototype.Token = uu;
|
|
2142
|
+
const Jc = 65536;
|
|
2143
|
+
function Ke(u, e) {
|
|
1301
2144
|
const t = u.bMarks[e] + u.tShift[e], n = u.eMarks[e];
|
|
1302
2145
|
return u.src.slice(t, n);
|
|
1303
2146
|
}
|
|
1304
|
-
function
|
|
2147
|
+
function ht(u) {
|
|
1305
2148
|
const e = [], t = u.length;
|
|
1306
|
-
let n = 0, r = u.charCodeAt(n), c = !1,
|
|
2149
|
+
let n = 0, r = u.charCodeAt(n), c = !1, i = 0, o = "";
|
|
1307
2150
|
for (; n < t; )
|
|
1308
|
-
r === 124 && (c ? (
|
|
1309
|
-
return e.push(
|
|
2151
|
+
r === 124 && (c ? (o += u.substring(i, n - 1), i = n) : (e.push(o + u.substring(i, n)), o = "", i = n + 1)), c = r === 92, n++, r = u.charCodeAt(n);
|
|
2152
|
+
return e.push(o + u.substring(i)), e;
|
|
1310
2153
|
}
|
|
1311
|
-
function
|
|
2154
|
+
function Qc(u, e, t, n) {
|
|
1312
2155
|
if (e + 2 > t)
|
|
1313
2156
|
return !1;
|
|
1314
2157
|
let r = e + 1;
|
|
@@ -1317,81 +2160,81 @@ function ct(u, e, t, n) {
|
|
|
1317
2160
|
let c = u.bMarks[r] + u.tShift[r];
|
|
1318
2161
|
if (c >= u.eMarks[r])
|
|
1319
2162
|
return !1;
|
|
1320
|
-
const o = u.src.charCodeAt(c++);
|
|
1321
|
-
if (o !== 124 && o !== 45 && o !== 58 || c >= u.eMarks[r])
|
|
1322
|
-
return !1;
|
|
1323
2163
|
const i = u.src.charCodeAt(c++);
|
|
1324
|
-
if (i !== 124 && i !== 45 && i !== 58
|
|
2164
|
+
if (i !== 124 && i !== 45 && i !== 58 || c >= u.eMarks[r])
|
|
2165
|
+
return !1;
|
|
2166
|
+
const o = u.src.charCodeAt(c++);
|
|
2167
|
+
if (o !== 124 && o !== 45 && o !== 58 && !w(o) || i === 45 && w(o))
|
|
1325
2168
|
return !1;
|
|
1326
2169
|
for (; c < u.eMarks[r]; ) {
|
|
1327
|
-
const
|
|
1328
|
-
if (
|
|
2170
|
+
const m = u.src.charCodeAt(c);
|
|
2171
|
+
if (m !== 124 && m !== 45 && m !== 58 && !w(m))
|
|
1329
2172
|
return !1;
|
|
1330
2173
|
c++;
|
|
1331
2174
|
}
|
|
1332
|
-
let a =
|
|
2175
|
+
let a = Ke(u, e + 1), s = a.split("|");
|
|
1333
2176
|
const f = [];
|
|
1334
|
-
for (let
|
|
1335
|
-
const
|
|
1336
|
-
if (!
|
|
1337
|
-
if (
|
|
2177
|
+
for (let m = 0; m < s.length; m++) {
|
|
2178
|
+
const A = s[m].trim();
|
|
2179
|
+
if (!A) {
|
|
2180
|
+
if (m === 0 || m === s.length - 1)
|
|
1338
2181
|
continue;
|
|
1339
2182
|
return !1;
|
|
1340
2183
|
}
|
|
1341
|
-
if (!/^:?-+:?$/.test(
|
|
2184
|
+
if (!/^:?-+:?$/.test(A))
|
|
1342
2185
|
return !1;
|
|
1343
|
-
|
|
2186
|
+
A.charCodeAt(A.length - 1) === 58 ? f.push(A.charCodeAt(0) === 58 ? "center" : "right") : A.charCodeAt(0) === 58 ? f.push("left") : f.push("");
|
|
1344
2187
|
}
|
|
1345
|
-
if (a =
|
|
2188
|
+
if (a = Ke(u, e).trim(), a.indexOf("|") === -1 || u.sCount[e] - u.blkIndent >= 4)
|
|
1346
2189
|
return !1;
|
|
1347
|
-
s =
|
|
1348
|
-
const
|
|
1349
|
-
if (
|
|
2190
|
+
s = ht(a), s.length && s[0] === "" && s.shift(), s.length && s[s.length - 1] === "" && s.pop();
|
|
2191
|
+
const h = s.length;
|
|
2192
|
+
if (h === 0 || h !== f.length)
|
|
1350
2193
|
return !1;
|
|
1351
2194
|
if (n)
|
|
1352
2195
|
return !0;
|
|
1353
|
-
const
|
|
2196
|
+
const _ = u.parentType;
|
|
1354
2197
|
u.parentType = "table";
|
|
1355
|
-
const
|
|
1356
|
-
|
|
1357
|
-
const
|
|
1358
|
-
|
|
1359
|
-
const
|
|
1360
|
-
|
|
1361
|
-
for (let
|
|
1362
|
-
const
|
|
1363
|
-
f[
|
|
1364
|
-
const
|
|
1365
|
-
|
|
2198
|
+
const p = u.md.block.ruler.getRules("blockquote"), d = u.push("table_open", "table", 1), C = [e, 0];
|
|
2199
|
+
d.map = C;
|
|
2200
|
+
const D = u.push("thead_open", "thead", 1);
|
|
2201
|
+
D.map = [e, e + 1];
|
|
2202
|
+
const S = u.push("tr_open", "tr", 1);
|
|
2203
|
+
S.map = [e, e + 1];
|
|
2204
|
+
for (let m = 0; m < s.length; m++) {
|
|
2205
|
+
const A = u.push("th_open", "th", 1);
|
|
2206
|
+
f[m] && (A.attrs = [["style", "text-align:" + f[m]]]);
|
|
2207
|
+
const y = u.push("inline", "", 0);
|
|
2208
|
+
y.content = s[m].trim(), y.children = [], u.push("th_close", "th", -1);
|
|
1366
2209
|
}
|
|
1367
2210
|
u.push("tr_close", "tr", -1), u.push("thead_close", "thead", -1);
|
|
1368
|
-
let
|
|
2211
|
+
let E, k = 0;
|
|
1369
2212
|
for (r = e + 2; r < t && !(u.sCount[r] < u.blkIndent); r++) {
|
|
1370
|
-
let
|
|
1371
|
-
for (let
|
|
1372
|
-
if (
|
|
1373
|
-
|
|
2213
|
+
let m = !1;
|
|
2214
|
+
for (let y = 0, L = p.length; y < L; y++)
|
|
2215
|
+
if (p[y](u, r, t, !0)) {
|
|
2216
|
+
m = !0;
|
|
1374
2217
|
break;
|
|
1375
2218
|
}
|
|
1376
|
-
if (
|
|
2219
|
+
if (m || (a = Ke(u, r).trim(), !a) || u.sCount[r] - u.blkIndent >= 4 || (s = ht(a), s.length && s[0] === "" && s.shift(), s.length && s[s.length - 1] === "" && s.pop(), k += h - s.length, k > Jc))
|
|
1377
2220
|
break;
|
|
1378
2221
|
if (r === e + 2) {
|
|
1379
|
-
const
|
|
1380
|
-
|
|
2222
|
+
const y = u.push("tbody_open", "tbody", 1);
|
|
2223
|
+
y.map = E = [e + 2, 0];
|
|
1381
2224
|
}
|
|
1382
|
-
const
|
|
1383
|
-
|
|
1384
|
-
for (let
|
|
1385
|
-
const
|
|
1386
|
-
f[
|
|
1387
|
-
const
|
|
1388
|
-
|
|
2225
|
+
const A = u.push("tr_open", "tr", 1);
|
|
2226
|
+
A.map = [r, r + 1];
|
|
2227
|
+
for (let y = 0; y < h; y++) {
|
|
2228
|
+
const L = u.push("td_open", "td", 1);
|
|
2229
|
+
f[y] && (L.attrs = [["style", "text-align:" + f[y]]]);
|
|
2230
|
+
const Y = u.push("inline", "", 0);
|
|
2231
|
+
Y.content = s[y] ? s[y].trim() : "", Y.children = [], u.push("td_close", "td", -1);
|
|
1389
2232
|
}
|
|
1390
2233
|
u.push("tr_close", "tr", -1);
|
|
1391
2234
|
}
|
|
1392
|
-
return
|
|
2235
|
+
return E && (u.push("tbody_close", "tbody", -1), E[1] = r), u.push("table_close", "table", -1), C[1] = r, u.parentType = _, u.line = r, !0;
|
|
1393
2236
|
}
|
|
1394
|
-
function
|
|
2237
|
+
function Kc(u, e, t) {
|
|
1395
2238
|
if (u.sCount[e] - u.blkIndent < 4)
|
|
1396
2239
|
return !1;
|
|
1397
2240
|
let n = e + 1, r = n;
|
|
@@ -1411,112 +2254,112 @@ function it(u, e, t) {
|
|
|
1411
2254
|
return c.content = u.getLines(e, r, 4 + u.blkIndent, !1) + `
|
|
1412
2255
|
`, c.map = [e, u.line], !0;
|
|
1413
2256
|
}
|
|
1414
|
-
function
|
|
2257
|
+
function uo(u, e, t, n) {
|
|
1415
2258
|
let r = u.bMarks[e] + u.tShift[e], c = u.eMarks[e];
|
|
1416
2259
|
if (u.sCount[e] - u.blkIndent >= 4 || r + 3 > c)
|
|
1417
2260
|
return !1;
|
|
1418
|
-
const
|
|
1419
|
-
if (
|
|
2261
|
+
const i = u.src.charCodeAt(r);
|
|
2262
|
+
if (i !== 126 && i !== 96)
|
|
1420
2263
|
return !1;
|
|
1421
|
-
let
|
|
1422
|
-
r = u.skipChars(r,
|
|
1423
|
-
let a = r -
|
|
2264
|
+
let o = r;
|
|
2265
|
+
r = u.skipChars(r, i);
|
|
2266
|
+
let a = r - o;
|
|
1424
2267
|
if (a < 3)
|
|
1425
2268
|
return !1;
|
|
1426
|
-
const s = u.src.slice(
|
|
1427
|
-
if (
|
|
2269
|
+
const s = u.src.slice(o, r), f = u.src.slice(r, c);
|
|
2270
|
+
if (i === 96 && f.indexOf(String.fromCharCode(i)) >= 0)
|
|
1428
2271
|
return !1;
|
|
1429
2272
|
if (n)
|
|
1430
2273
|
return !0;
|
|
1431
|
-
let
|
|
1432
|
-
for (;
|
|
1433
|
-
if (u.src.charCodeAt(r) ===
|
|
1434
|
-
|
|
2274
|
+
let h = e, _ = !1;
|
|
2275
|
+
for (; h++, !(h >= t || (r = o = u.bMarks[h] + u.tShift[h], c = u.eMarks[h], r < c && u.sCount[h] < u.blkIndent)); )
|
|
2276
|
+
if (u.src.charCodeAt(r) === i && !(u.sCount[h] - u.blkIndent >= 4) && (r = u.skipChars(r, i), !(r - o < a) && (r = u.skipSpaces(r), !(r < c)))) {
|
|
2277
|
+
_ = !0;
|
|
1435
2278
|
break;
|
|
1436
2279
|
}
|
|
1437
|
-
a = u.sCount[e], u.line =
|
|
1438
|
-
const
|
|
1439
|
-
return
|
|
2280
|
+
a = u.sCount[e], u.line = h + (_ ? 1 : 0);
|
|
2281
|
+
const p = u.push("fence", "code", 0);
|
|
2282
|
+
return p.info = f, p.content = u.getLines(e + 1, h, a, !0), p.markup = s, p.map = [e, u.line], !0;
|
|
1440
2283
|
}
|
|
1441
|
-
function
|
|
2284
|
+
function eo(u, e, t, n) {
|
|
1442
2285
|
let r = u.bMarks[e] + u.tShift[e], c = u.eMarks[e];
|
|
1443
|
-
const
|
|
2286
|
+
const i = u.lineMax;
|
|
1444
2287
|
if (u.sCount[e] - u.blkIndent >= 4 || u.src.charCodeAt(r) !== 62)
|
|
1445
2288
|
return !1;
|
|
1446
2289
|
if (n)
|
|
1447
2290
|
return !0;
|
|
1448
|
-
const
|
|
2291
|
+
const o = [], a = [], s = [], f = [], h = u.md.block.ruler.getRules("blockquote"), _ = u.parentType;
|
|
1449
2292
|
u.parentType = "blockquote";
|
|
1450
|
-
let
|
|
1451
|
-
for (
|
|
1452
|
-
const
|
|
1453
|
-
if (r = u.bMarks[
|
|
2293
|
+
let p = !1, d;
|
|
2294
|
+
for (d = e; d < t; d++) {
|
|
2295
|
+
const k = u.sCount[d] < u.blkIndent;
|
|
2296
|
+
if (r = u.bMarks[d] + u.tShift[d], c = u.eMarks[d], r >= c)
|
|
1454
2297
|
break;
|
|
1455
|
-
if (u.src.charCodeAt(r++) === 62 && !
|
|
1456
|
-
let
|
|
1457
|
-
u.src.charCodeAt(r) === 32 ? (r++,
|
|
1458
|
-
let
|
|
1459
|
-
for (
|
|
1460
|
-
const
|
|
1461
|
-
if (
|
|
1462
|
-
|
|
2298
|
+
if (u.src.charCodeAt(r++) === 62 && !k) {
|
|
2299
|
+
let A = u.sCount[d] + 1, y, L;
|
|
2300
|
+
u.src.charCodeAt(r) === 32 ? (r++, A++, L = !1, y = !0) : u.src.charCodeAt(r) === 9 ? (y = !0, (u.bsCount[d] + A) % 4 === 3 ? (r++, A++, L = !1) : L = !0) : y = !1;
|
|
2301
|
+
let Y = A;
|
|
2302
|
+
for (o.push(u.bMarks[d]), u.bMarks[d] = r; r < c; ) {
|
|
2303
|
+
const eu = u.src.charCodeAt(r);
|
|
2304
|
+
if (w(eu))
|
|
2305
|
+
eu === 9 ? Y += 4 - (Y + u.bsCount[d] + (L ? 1 : 0)) % 4 : Y++;
|
|
1463
2306
|
else
|
|
1464
2307
|
break;
|
|
1465
2308
|
r++;
|
|
1466
2309
|
}
|
|
1467
|
-
|
|
2310
|
+
p = r >= c, a.push(u.bsCount[d]), u.bsCount[d] = u.sCount[d] + 1 + (y ? 1 : 0), s.push(u.sCount[d]), u.sCount[d] = Y - A, f.push(u.tShift[d]), u.tShift[d] = r - u.bMarks[d];
|
|
1468
2311
|
continue;
|
|
1469
2312
|
}
|
|
1470
|
-
if (
|
|
2313
|
+
if (p)
|
|
1471
2314
|
break;
|
|
1472
|
-
let
|
|
1473
|
-
for (let
|
|
1474
|
-
if (
|
|
1475
|
-
|
|
2315
|
+
let m = !1;
|
|
2316
|
+
for (let A = 0, y = h.length; A < y; A++)
|
|
2317
|
+
if (h[A](u, d, t, !0)) {
|
|
2318
|
+
m = !0;
|
|
1476
2319
|
break;
|
|
1477
2320
|
}
|
|
1478
|
-
if (
|
|
1479
|
-
u.lineMax =
|
|
2321
|
+
if (m) {
|
|
2322
|
+
u.lineMax = d, u.blkIndent !== 0 && (o.push(u.bMarks[d]), a.push(u.bsCount[d]), f.push(u.tShift[d]), s.push(u.sCount[d]), u.sCount[d] -= u.blkIndent);
|
|
1480
2323
|
break;
|
|
1481
2324
|
}
|
|
1482
|
-
|
|
2325
|
+
o.push(u.bMarks[d]), a.push(u.bsCount[d]), f.push(u.tShift[d]), s.push(u.sCount[d]), u.sCount[d] = -1;
|
|
1483
2326
|
}
|
|
1484
|
-
const
|
|
2327
|
+
const C = u.blkIndent;
|
|
1485
2328
|
u.blkIndent = 0;
|
|
1486
|
-
const
|
|
1487
|
-
|
|
1488
|
-
const
|
|
1489
|
-
|
|
1490
|
-
const
|
|
1491
|
-
|
|
1492
|
-
for (let
|
|
1493
|
-
u.bMarks[
|
|
1494
|
-
return u.blkIndent =
|
|
1495
|
-
}
|
|
1496
|
-
function
|
|
2329
|
+
const D = u.push("blockquote_open", "blockquote", 1);
|
|
2330
|
+
D.markup = ">";
|
|
2331
|
+
const S = [e, 0];
|
|
2332
|
+
D.map = S, u.md.block.tokenize(u, e, d);
|
|
2333
|
+
const E = u.push("blockquote_close", "blockquote", -1);
|
|
2334
|
+
E.markup = ">", u.lineMax = i, u.parentType = _, S[1] = u.line;
|
|
2335
|
+
for (let k = 0; k < f.length; k++)
|
|
2336
|
+
u.bMarks[k + e] = o[k], u.tShift[k + e] = f[k], u.sCount[k + e] = s[k], u.bsCount[k + e] = a[k];
|
|
2337
|
+
return u.blkIndent = C, !0;
|
|
2338
|
+
}
|
|
2339
|
+
function to(u, e, t, n) {
|
|
1497
2340
|
const r = u.eMarks[e];
|
|
1498
2341
|
if (u.sCount[e] - u.blkIndent >= 4)
|
|
1499
2342
|
return !1;
|
|
1500
2343
|
let c = u.bMarks[e] + u.tShift[e];
|
|
1501
|
-
const
|
|
1502
|
-
if (
|
|
2344
|
+
const i = u.src.charCodeAt(c++);
|
|
2345
|
+
if (i !== 42 && i !== 45 && i !== 95)
|
|
1503
2346
|
return !1;
|
|
1504
|
-
let
|
|
2347
|
+
let o = 1;
|
|
1505
2348
|
for (; c < r; ) {
|
|
1506
2349
|
const s = u.src.charCodeAt(c++);
|
|
1507
|
-
if (s !==
|
|
2350
|
+
if (s !== i && !w(s))
|
|
1508
2351
|
return !1;
|
|
1509
|
-
s ===
|
|
2352
|
+
s === i && o++;
|
|
1510
2353
|
}
|
|
1511
|
-
if (
|
|
2354
|
+
if (o < 3)
|
|
1512
2355
|
return !1;
|
|
1513
2356
|
if (n)
|
|
1514
2357
|
return !0;
|
|
1515
2358
|
u.line = e + 1;
|
|
1516
2359
|
const a = u.push("hr", "hr", 0);
|
|
1517
|
-
return a.map = [e, u.line], a.markup = Array(
|
|
2360
|
+
return a.map = [e, u.line], a.markup = Array(o + 1).join(String.fromCharCode(i)), !0;
|
|
1518
2361
|
}
|
|
1519
|
-
function
|
|
2362
|
+
function pt(u, e) {
|
|
1520
2363
|
const t = u.eMarks[e];
|
|
1521
2364
|
let n = u.bMarks[e] + u.tShift[e];
|
|
1522
2365
|
const r = u.src.charCodeAt(n++);
|
|
@@ -1524,12 +2367,12 @@ function Xu(u, e) {
|
|
|
1524
2367
|
return -1;
|
|
1525
2368
|
if (n < t) {
|
|
1526
2369
|
const c = u.src.charCodeAt(n);
|
|
1527
|
-
if (!
|
|
2370
|
+
if (!w(c))
|
|
1528
2371
|
return -1;
|
|
1529
2372
|
}
|
|
1530
2373
|
return n;
|
|
1531
2374
|
}
|
|
1532
|
-
function
|
|
2375
|
+
function bt(u, e) {
|
|
1533
2376
|
const t = u.bMarks[e] + u.tShift[e], n = u.eMarks[e];
|
|
1534
2377
|
let r = t;
|
|
1535
2378
|
if (r + 1 >= n)
|
|
@@ -1549,171 +2392,171 @@ function Yu(u, e) {
|
|
|
1549
2392
|
break;
|
|
1550
2393
|
return -1;
|
|
1551
2394
|
}
|
|
1552
|
-
return r < n && (c = u.src.charCodeAt(r), !
|
|
2395
|
+
return r < n && (c = u.src.charCodeAt(r), !w(c)) ? -1 : r;
|
|
1553
2396
|
}
|
|
1554
|
-
function
|
|
2397
|
+
function no(u, e) {
|
|
1555
2398
|
const t = u.level + 2;
|
|
1556
2399
|
for (let n = e + 2, r = u.tokens.length - 2; n < r; n++)
|
|
1557
2400
|
u.tokens[n].level === t && u.tokens[n].type === "paragraph_open" && (u.tokens[n + 2].hidden = !0, u.tokens[n].hidden = !0, n += 2);
|
|
1558
2401
|
}
|
|
1559
|
-
function
|
|
1560
|
-
let r, c,
|
|
2402
|
+
function ro(u, e, t, n) {
|
|
2403
|
+
let r, c, i, o, a = e, s = !0;
|
|
1561
2404
|
if (u.sCount[a] - u.blkIndent >= 4 || u.listIndent >= 0 && u.sCount[a] - u.listIndent >= 4 && u.sCount[a] < u.blkIndent)
|
|
1562
2405
|
return !1;
|
|
1563
2406
|
let f = !1;
|
|
1564
2407
|
n && u.parentType === "paragraph" && u.sCount[a] >= u.blkIndent && (f = !0);
|
|
1565
|
-
let
|
|
1566
|
-
if ((
|
|
1567
|
-
if (
|
|
1568
|
-
} else if ((
|
|
1569
|
-
|
|
2408
|
+
let h, _, p;
|
|
2409
|
+
if ((p = bt(u, a)) >= 0) {
|
|
2410
|
+
if (h = !0, i = u.bMarks[a] + u.tShift[a], _ = Number(u.src.slice(i, p - 1)), f && _ !== 1) return !1;
|
|
2411
|
+
} else if ((p = pt(u, a)) >= 0)
|
|
2412
|
+
h = !1;
|
|
1570
2413
|
else
|
|
1571
2414
|
return !1;
|
|
1572
|
-
if (f && u.skipSpaces(
|
|
2415
|
+
if (f && u.skipSpaces(p) >= u.eMarks[a])
|
|
1573
2416
|
return !1;
|
|
1574
2417
|
if (n)
|
|
1575
2418
|
return !0;
|
|
1576
|
-
const
|
|
1577
|
-
|
|
1578
|
-
const
|
|
1579
|
-
|
|
1580
|
-
let
|
|
1581
|
-
const
|
|
2419
|
+
const d = u.src.charCodeAt(p - 1), C = u.tokens.length;
|
|
2420
|
+
h ? (o = u.push("ordered_list_open", "ol", 1), _ !== 1 && (o.attrs = [["start", _]])) : o = u.push("bullet_list_open", "ul", 1);
|
|
2421
|
+
const D = [a, 0];
|
|
2422
|
+
o.map = D, o.markup = String.fromCharCode(d);
|
|
2423
|
+
let S = !1;
|
|
2424
|
+
const E = u.md.block.ruler.getRules("list"), k = u.parentType;
|
|
1582
2425
|
for (u.parentType = "list"; a < t; ) {
|
|
1583
|
-
c =
|
|
1584
|
-
const
|
|
1585
|
-
let
|
|
2426
|
+
c = p, r = u.eMarks[a];
|
|
2427
|
+
const m = u.sCount[a] + p - (u.bMarks[a] + u.tShift[a]);
|
|
2428
|
+
let A = m;
|
|
1586
2429
|
for (; c < r; ) {
|
|
1587
|
-
const
|
|
1588
|
-
if (
|
|
1589
|
-
|
|
1590
|
-
else if (
|
|
1591
|
-
|
|
2430
|
+
const hu = u.src.charCodeAt(c);
|
|
2431
|
+
if (hu === 9)
|
|
2432
|
+
A += 4 - (A + u.bsCount[a]) % 4;
|
|
2433
|
+
else if (hu === 32)
|
|
2434
|
+
A++;
|
|
1592
2435
|
else
|
|
1593
2436
|
break;
|
|
1594
2437
|
c++;
|
|
1595
2438
|
}
|
|
1596
|
-
const
|
|
1597
|
-
let
|
|
1598
|
-
|
|
1599
|
-
const
|
|
1600
|
-
|
|
1601
|
-
const
|
|
1602
|
-
|
|
1603
|
-
const
|
|
1604
|
-
if (u.listIndent = u.blkIndent, u.blkIndent =
|
|
2439
|
+
const y = c;
|
|
2440
|
+
let L;
|
|
2441
|
+
y >= r ? L = 1 : L = A - m, L > 4 && (L = 1);
|
|
2442
|
+
const Y = m + L;
|
|
2443
|
+
o = u.push("list_item_open", "li", 1), o.markup = String.fromCharCode(d);
|
|
2444
|
+
const eu = [a, 0];
|
|
2445
|
+
o.map = eu, h && (o.info = u.src.slice(i, p - 1));
|
|
2446
|
+
const Eu = u.tight, O = u.tShift[a], Hu = u.sCount[a], $u = u.listIndent;
|
|
2447
|
+
if (u.listIndent = u.blkIndent, u.blkIndent = Y, u.tight = !0, u.tShift[a] = y - u.bMarks[a], u.sCount[a] = A, y >= r && u.isEmpty(a + 1) ? u.line = Math.min(u.line + 2, t) : u.md.block.tokenize(u, a, t, !0), (!u.tight || S) && (s = !1), S = u.line - a > 1 && u.isEmpty(u.line - 1), u.blkIndent = u.listIndent, u.listIndent = $u, u.tShift[a] = O, u.sCount[a] = Hu, u.tight = Eu, o = u.push("list_item_close", "li", -1), o.markup = String.fromCharCode(d), a = u.line, eu[1] = a, a >= t || u.sCount[a] < u.blkIndent || u.sCount[a] - u.blkIndent >= 4)
|
|
1605
2448
|
break;
|
|
1606
|
-
let
|
|
1607
|
-
for (let
|
|
1608
|
-
if (
|
|
1609
|
-
|
|
2449
|
+
let yu = !1;
|
|
2450
|
+
for (let hu = 0, Le = E.length; hu < Le; hu++)
|
|
2451
|
+
if (E[hu](u, a, t, !0)) {
|
|
2452
|
+
yu = !0;
|
|
1610
2453
|
break;
|
|
1611
2454
|
}
|
|
1612
|
-
if (
|
|
2455
|
+
if (yu)
|
|
1613
2456
|
break;
|
|
1614
|
-
if (
|
|
1615
|
-
if (
|
|
2457
|
+
if (h) {
|
|
2458
|
+
if (p = bt(u, a), p < 0)
|
|
1616
2459
|
break;
|
|
1617
|
-
|
|
1618
|
-
} else if (
|
|
2460
|
+
i = u.bMarks[a] + u.tShift[a];
|
|
2461
|
+
} else if (p = pt(u, a), p < 0)
|
|
1619
2462
|
break;
|
|
1620
|
-
if (
|
|
2463
|
+
if (d !== u.src.charCodeAt(p - 1))
|
|
1621
2464
|
break;
|
|
1622
2465
|
}
|
|
1623
|
-
return
|
|
2466
|
+
return h ? o = u.push("ordered_list_close", "ol", -1) : o = u.push("bullet_list_close", "ul", -1), o.markup = String.fromCharCode(d), D[1] = a, u.line = a, u.parentType = k, s && no(u, C), !0;
|
|
1624
2467
|
}
|
|
1625
|
-
function
|
|
1626
|
-
let r = u.bMarks[e] + u.tShift[e], c = u.eMarks[e],
|
|
2468
|
+
function co(u, e, t, n) {
|
|
2469
|
+
let r = u.bMarks[e] + u.tShift[e], c = u.eMarks[e], i = e + 1;
|
|
1627
2470
|
if (u.sCount[e] - u.blkIndent >= 4 || u.src.charCodeAt(r) !== 91)
|
|
1628
2471
|
return !1;
|
|
1629
|
-
function
|
|
1630
|
-
const
|
|
1631
|
-
if (
|
|
2472
|
+
function o(E) {
|
|
2473
|
+
const k = u.lineMax;
|
|
2474
|
+
if (E >= k || u.isEmpty(E))
|
|
1632
2475
|
return null;
|
|
1633
|
-
let
|
|
1634
|
-
if (u.sCount[
|
|
1635
|
-
const
|
|
2476
|
+
let m = !1;
|
|
2477
|
+
if (u.sCount[E] - u.blkIndent > 3 && (m = !0), u.sCount[E] < 0 && (m = !0), !m) {
|
|
2478
|
+
const L = u.md.block.ruler.getRules("reference"), Y = u.parentType;
|
|
1636
2479
|
u.parentType = "reference";
|
|
1637
|
-
let
|
|
1638
|
-
for (let
|
|
1639
|
-
if (
|
|
1640
|
-
|
|
2480
|
+
let eu = !1;
|
|
2481
|
+
for (let Eu = 0, O = L.length; Eu < O; Eu++)
|
|
2482
|
+
if (L[Eu](u, E, k, !0)) {
|
|
2483
|
+
eu = !0;
|
|
1641
2484
|
break;
|
|
1642
2485
|
}
|
|
1643
|
-
if (u.parentType =
|
|
2486
|
+
if (u.parentType = Y, eu)
|
|
1644
2487
|
return null;
|
|
1645
2488
|
}
|
|
1646
|
-
const
|
|
1647
|
-
return u.src.slice(
|
|
2489
|
+
const A = u.bMarks[E] + u.tShift[E], y = u.eMarks[E];
|
|
2490
|
+
return u.src.slice(A, y + 1);
|
|
1648
2491
|
}
|
|
1649
2492
|
let a = u.src.slice(r, c + 1);
|
|
1650
2493
|
c = a.length;
|
|
1651
2494
|
let s = -1;
|
|
1652
2495
|
for (r = 1; r < c; r++) {
|
|
1653
|
-
const
|
|
1654
|
-
if (
|
|
2496
|
+
const E = a.charCodeAt(r);
|
|
2497
|
+
if (E === 91)
|
|
1655
2498
|
return !1;
|
|
1656
|
-
if (
|
|
2499
|
+
if (E === 93) {
|
|
1657
2500
|
s = r;
|
|
1658
2501
|
break;
|
|
1659
|
-
} else if (
|
|
1660
|
-
const
|
|
1661
|
-
|
|
1662
|
-
} else if (
|
|
1663
|
-
const
|
|
1664
|
-
|
|
2502
|
+
} else if (E === 10) {
|
|
2503
|
+
const k = o(i);
|
|
2504
|
+
k !== null && (a += k, c = a.length, i++);
|
|
2505
|
+
} else if (E === 92 && (r++, r < c && a.charCodeAt(r) === 10)) {
|
|
2506
|
+
const k = o(i);
|
|
2507
|
+
k !== null && (a += k, c = a.length, i++);
|
|
1665
2508
|
}
|
|
1666
2509
|
}
|
|
1667
2510
|
if (s < 0 || a.charCodeAt(s + 1) !== 58)
|
|
1668
2511
|
return !1;
|
|
1669
2512
|
for (r = s + 2; r < c; r++) {
|
|
1670
|
-
const
|
|
1671
|
-
if (
|
|
1672
|
-
const
|
|
1673
|
-
|
|
1674
|
-
} else if (!E
|
|
2513
|
+
const E = a.charCodeAt(r);
|
|
2514
|
+
if (E === 10) {
|
|
2515
|
+
const k = o(i);
|
|
2516
|
+
k !== null && (a += k, c = a.length, i++);
|
|
2517
|
+
} else if (!w(E)) break;
|
|
1675
2518
|
}
|
|
1676
2519
|
const f = u.md.helpers.parseLinkDestination(a, r, c);
|
|
1677
2520
|
if (!f.ok)
|
|
1678
2521
|
return !1;
|
|
1679
|
-
const
|
|
1680
|
-
if (!u.md.validateLink(
|
|
2522
|
+
const h = u.md.normalizeLink(f.str);
|
|
2523
|
+
if (!u.md.validateLink(h))
|
|
1681
2524
|
return !1;
|
|
1682
2525
|
r = f.pos;
|
|
1683
|
-
const
|
|
2526
|
+
const _ = r, p = i, d = r;
|
|
1684
2527
|
for (; r < c; r++) {
|
|
1685
|
-
const
|
|
1686
|
-
if (
|
|
1687
|
-
const
|
|
1688
|
-
|
|
1689
|
-
} else if (!E
|
|
1690
|
-
}
|
|
1691
|
-
let
|
|
1692
|
-
for (;
|
|
1693
|
-
const
|
|
1694
|
-
if (
|
|
1695
|
-
a +=
|
|
1696
|
-
}
|
|
1697
|
-
let
|
|
1698
|
-
for (r < c &&
|
|
1699
|
-
const
|
|
1700
|
-
if (!E
|
|
2528
|
+
const E = a.charCodeAt(r);
|
|
2529
|
+
if (E === 10) {
|
|
2530
|
+
const k = o(i);
|
|
2531
|
+
k !== null && (a += k, c = a.length, i++);
|
|
2532
|
+
} else if (!w(E)) break;
|
|
2533
|
+
}
|
|
2534
|
+
let C = u.md.helpers.parseLinkTitle(a, r, c);
|
|
2535
|
+
for (; C.can_continue; ) {
|
|
2536
|
+
const E = o(i);
|
|
2537
|
+
if (E === null) break;
|
|
2538
|
+
a += E, r = c, c = a.length, i++, C = u.md.helpers.parseLinkTitle(a, r, c, C);
|
|
2539
|
+
}
|
|
2540
|
+
let D;
|
|
2541
|
+
for (r < c && d !== r && C.ok ? (D = C.str, r = C.pos) : (D = "", r = _, i = p); r < c; ) {
|
|
2542
|
+
const E = a.charCodeAt(r);
|
|
2543
|
+
if (!w(E))
|
|
1701
2544
|
break;
|
|
1702
2545
|
r++;
|
|
1703
2546
|
}
|
|
1704
|
-
if (r < c && a.charCodeAt(r) !== 10 &&
|
|
1705
|
-
for (
|
|
1706
|
-
const
|
|
1707
|
-
if (!E
|
|
2547
|
+
if (r < c && a.charCodeAt(r) !== 10 && D)
|
|
2548
|
+
for (D = "", r = _, i = p; r < c; ) {
|
|
2549
|
+
const E = a.charCodeAt(r);
|
|
2550
|
+
if (!w(E))
|
|
1708
2551
|
break;
|
|
1709
2552
|
r++;
|
|
1710
2553
|
}
|
|
1711
2554
|
if (r < c && a.charCodeAt(r) !== 10)
|
|
1712
2555
|
return !1;
|
|
1713
|
-
const
|
|
1714
|
-
return
|
|
2556
|
+
const S = Re(a.slice(1, s));
|
|
2557
|
+
return S ? (n || (typeof u.env.references > "u" && (u.env.references = {}), typeof u.env.references[S] > "u" && (u.env.references[S] = { title: D, href: h }), u.line = i), !0) : !1;
|
|
1715
2558
|
}
|
|
1716
|
-
const
|
|
2559
|
+
const oo = [
|
|
1717
2560
|
"address",
|
|
1718
2561
|
"article",
|
|
1719
2562
|
"aside",
|
|
@@ -1776,31 +2619,31 @@ const bt = [
|
|
|
1776
2619
|
"tr",
|
|
1777
2620
|
"track",
|
|
1778
2621
|
"ul"
|
|
1779
|
-
],
|
|
2622
|
+
], io = "[a-zA-Z_:][a-zA-Z0-9:._-]*", ao = "[^\"'=<>`\\x00-\\x20]+", so = "'[^']*'", lo = '"[^"]*"', fo = "(?:" + ao + "|" + so + "|" + lo + ")", ho = "(?:\\s+" + io + "(?:\\s*=\\s*" + fo + ")?)", $t = "<[A-Za-z][A-Za-z0-9\\-]*" + ho + "*\\s*\\/?>", jt = "<\\/[A-Za-z][A-Za-z0-9\\-]*\\s*>", po = "<!---?>|<!--(?:[^-]|-[^-]|--[^>])*-->", bo = "<[?][\\s\\S]*?[?]>", _o = "<![A-Za-z][^>]*>", mo = "<!\\[CDATA\\[[\\s\\S]*?\\]\\]>", xo = new RegExp("^(?:" + $t + "|" + jt + "|" + po + "|" + bo + "|" + _o + "|" + mo + ")"), go = new RegExp("^(?:" + $t + "|" + jt + ")"), Iu = [
|
|
1780
2623
|
[/^<(script|pre|style|textarea)(?=(\s|>|$))/i, /<\/(script|pre|style|textarea)>/i, !0],
|
|
1781
2624
|
[/^<!--/, /-->/, !0],
|
|
1782
2625
|
[/^<\?/, /\?>/, !0],
|
|
1783
2626
|
[/^<![A-Z]/, />/, !0],
|
|
1784
2627
|
[/^<!\[CDATA\[/, /\]\]>/, !0],
|
|
1785
|
-
[new RegExp("^</?(" +
|
|
1786
|
-
[new RegExp(
|
|
2628
|
+
[new RegExp("^</?(" + oo.join("|") + ")(?=(\\s|/?>|$))", "i"), /^$/, !0],
|
|
2629
|
+
[new RegExp(go.source + "\\s*$"), /^$/, !1]
|
|
1787
2630
|
];
|
|
1788
|
-
function
|
|
2631
|
+
function ko(u, e, t, n) {
|
|
1789
2632
|
let r = u.bMarks[e] + u.tShift[e], c = u.eMarks[e];
|
|
1790
2633
|
if (u.sCount[e] - u.blkIndent >= 4 || !u.md.options.html || u.src.charCodeAt(r) !== 60)
|
|
1791
2634
|
return !1;
|
|
1792
|
-
let
|
|
1793
|
-
for (;
|
|
2635
|
+
let i = u.src.slice(r, c), o = 0;
|
|
2636
|
+
for (; o < Iu.length && !Iu[o][0].test(i); o++)
|
|
1794
2637
|
;
|
|
1795
|
-
if (
|
|
2638
|
+
if (o === Iu.length)
|
|
1796
2639
|
return !1;
|
|
1797
2640
|
if (n)
|
|
1798
|
-
return
|
|
2641
|
+
return Iu[o][2];
|
|
1799
2642
|
let a = e + 1;
|
|
1800
|
-
if (!
|
|
2643
|
+
if (!Iu[o][1].test(i)) {
|
|
1801
2644
|
for (; a < t && !(u.sCount[a] < u.blkIndent); a++)
|
|
1802
|
-
if (r = u.bMarks[a] + u.tShift[a], c = u.eMarks[a],
|
|
1803
|
-
|
|
2645
|
+
if (r = u.bMarks[a] + u.tShift[a], c = u.eMarks[a], i = u.src.slice(r, c), Iu[o][1].test(i)) {
|
|
2646
|
+
i.length !== 0 && a++;
|
|
1804
2647
|
break;
|
|
1805
2648
|
}
|
|
1806
2649
|
}
|
|
@@ -1808,78 +2651,78 @@ function yt(u, e, t, n) {
|
|
|
1808
2651
|
const s = u.push("html_block", "", 0);
|
|
1809
2652
|
return s.map = [e, a], s.content = u.getLines(e, a, u.blkIndent, !0), !0;
|
|
1810
2653
|
}
|
|
1811
|
-
function
|
|
2654
|
+
function Eo(u, e, t, n) {
|
|
1812
2655
|
let r = u.bMarks[e] + u.tShift[e], c = u.eMarks[e];
|
|
1813
2656
|
if (u.sCount[e] - u.blkIndent >= 4)
|
|
1814
2657
|
return !1;
|
|
1815
|
-
let
|
|
1816
|
-
if (
|
|
2658
|
+
let i = u.src.charCodeAt(r);
|
|
2659
|
+
if (i !== 35 || r >= c)
|
|
1817
2660
|
return !1;
|
|
1818
|
-
let
|
|
1819
|
-
for (
|
|
1820
|
-
|
|
1821
|
-
if (
|
|
2661
|
+
let o = 1;
|
|
2662
|
+
for (i = u.src.charCodeAt(++r); i === 35 && r < c && o <= 6; )
|
|
2663
|
+
o++, i = u.src.charCodeAt(++r);
|
|
2664
|
+
if (o > 6 || r < c && !w(i))
|
|
1822
2665
|
return !1;
|
|
1823
2666
|
if (n)
|
|
1824
2667
|
return !0;
|
|
1825
2668
|
c = u.skipSpacesBack(c, r);
|
|
1826
2669
|
const a = u.skipCharsBack(c, 35, r);
|
|
1827
|
-
a > r &&
|
|
1828
|
-
const s = u.push("heading_open", "h" + String(
|
|
1829
|
-
s.markup = "########".slice(0,
|
|
2670
|
+
a > r && w(u.src.charCodeAt(a - 1)) && (c = a), u.line = e + 1;
|
|
2671
|
+
const s = u.push("heading_open", "h" + String(o), 1);
|
|
2672
|
+
s.markup = "########".slice(0, o), s.map = [e, u.line];
|
|
1830
2673
|
const f = u.push("inline", "", 0);
|
|
1831
2674
|
f.content = u.src.slice(r, c).trim(), f.map = [e, u.line], f.children = [];
|
|
1832
|
-
const
|
|
1833
|
-
return
|
|
2675
|
+
const h = u.push("heading_close", "h" + String(o), -1);
|
|
2676
|
+
return h.markup = "########".slice(0, o), !0;
|
|
1834
2677
|
}
|
|
1835
|
-
function
|
|
2678
|
+
function Ao(u, e, t) {
|
|
1836
2679
|
const n = u.md.block.ruler.getRules("paragraph");
|
|
1837
2680
|
if (u.sCount[e] - u.blkIndent >= 4)
|
|
1838
2681
|
return !1;
|
|
1839
2682
|
const r = u.parentType;
|
|
1840
2683
|
u.parentType = "paragraph";
|
|
1841
|
-
let c = 0,
|
|
1842
|
-
for (;
|
|
1843
|
-
if (u.sCount[
|
|
2684
|
+
let c = 0, i, o = e + 1;
|
|
2685
|
+
for (; o < t && !u.isEmpty(o); o++) {
|
|
2686
|
+
if (u.sCount[o] - u.blkIndent > 3)
|
|
1844
2687
|
continue;
|
|
1845
|
-
if (u.sCount[
|
|
1846
|
-
let
|
|
1847
|
-
const
|
|
1848
|
-
if (
|
|
1849
|
-
c =
|
|
2688
|
+
if (u.sCount[o] >= u.blkIndent) {
|
|
2689
|
+
let p = u.bMarks[o] + u.tShift[o];
|
|
2690
|
+
const d = u.eMarks[o];
|
|
2691
|
+
if (p < d && (i = u.src.charCodeAt(p), (i === 45 || i === 61) && (p = u.skipChars(p, i), p = u.skipSpaces(p), p >= d))) {
|
|
2692
|
+
c = i === 61 ? 1 : 2;
|
|
1850
2693
|
break;
|
|
1851
2694
|
}
|
|
1852
2695
|
}
|
|
1853
|
-
if (u.sCount[
|
|
2696
|
+
if (u.sCount[o] < 0)
|
|
1854
2697
|
continue;
|
|
1855
|
-
let
|
|
1856
|
-
for (let
|
|
1857
|
-
if (n[
|
|
1858
|
-
|
|
2698
|
+
let _ = !1;
|
|
2699
|
+
for (let p = 0, d = n.length; p < d; p++)
|
|
2700
|
+
if (n[p](u, o, t, !0)) {
|
|
2701
|
+
_ = !0;
|
|
1859
2702
|
break;
|
|
1860
2703
|
}
|
|
1861
|
-
if (
|
|
2704
|
+
if (_)
|
|
1862
2705
|
break;
|
|
1863
2706
|
}
|
|
1864
2707
|
if (!c)
|
|
1865
2708
|
return !1;
|
|
1866
|
-
const a = u.getLines(e,
|
|
1867
|
-
u.line =
|
|
2709
|
+
const a = u.getLines(e, o, u.blkIndent, !1).trim();
|
|
2710
|
+
u.line = o + 1;
|
|
1868
2711
|
const s = u.push("heading_open", "h" + String(c), 1);
|
|
1869
|
-
s.markup = String.fromCharCode(
|
|
2712
|
+
s.markup = String.fromCharCode(i), s.map = [e, u.line];
|
|
1870
2713
|
const f = u.push("inline", "", 0);
|
|
1871
2714
|
f.content = a, f.map = [e, u.line - 1], f.children = [];
|
|
1872
|
-
const
|
|
1873
|
-
return
|
|
2715
|
+
const h = u.push("heading_close", "h" + String(c), -1);
|
|
2716
|
+
return h.markup = String.fromCharCode(i), u.parentType = r, !0;
|
|
1874
2717
|
}
|
|
1875
|
-
function
|
|
2718
|
+
function Co(u, e, t) {
|
|
1876
2719
|
const n = u.md.block.ruler.getRules("paragraph"), r = u.parentType;
|
|
1877
2720
|
let c = e + 1;
|
|
1878
2721
|
for (u.parentType = "paragraph"; c < t && !u.isEmpty(c); c++) {
|
|
1879
2722
|
if (u.sCount[c] - u.blkIndent > 3 || u.sCount[c] < 0)
|
|
1880
2723
|
continue;
|
|
1881
2724
|
let s = !1;
|
|
1882
|
-
for (let f = 0,
|
|
2725
|
+
for (let f = 0, h = n.length; f < h; f++)
|
|
1883
2726
|
if (n[f](u, c, t, !0)) {
|
|
1884
2727
|
s = !0;
|
|
1885
2728
|
break;
|
|
@@ -1887,37 +2730,37 @@ function St(u, e, t) {
|
|
|
1887
2730
|
if (s)
|
|
1888
2731
|
break;
|
|
1889
2732
|
}
|
|
1890
|
-
const
|
|
2733
|
+
const i = u.getLines(e, c, u.blkIndent, !1).trim();
|
|
1891
2734
|
u.line = c;
|
|
1892
|
-
const
|
|
1893
|
-
|
|
2735
|
+
const o = u.push("paragraph_open", "p", 1);
|
|
2736
|
+
o.map = [e, u.line];
|
|
1894
2737
|
const a = u.push("inline", "", 0);
|
|
1895
|
-
return a.content =
|
|
2738
|
+
return a.content = i, a.map = [e, u.line], a.children = [], u.push("paragraph_close", "p", -1), u.parentType = r, !0;
|
|
1896
2739
|
}
|
|
1897
|
-
const
|
|
2740
|
+
const Ae = [
|
|
1898
2741
|
// First 2 params - rule name & source. Secondary array - list of rules,
|
|
1899
2742
|
// which can be terminated by this one.
|
|
1900
|
-
["table",
|
|
1901
|
-
["code",
|
|
1902
|
-
["fence",
|
|
1903
|
-
["blockquote",
|
|
1904
|
-
["hr",
|
|
1905
|
-
["list",
|
|
1906
|
-
["reference",
|
|
1907
|
-
["html_block",
|
|
1908
|
-
["heading",
|
|
1909
|
-
["lheading",
|
|
1910
|
-
["paragraph",
|
|
2743
|
+
["table", Qc, ["paragraph", "reference"]],
|
|
2744
|
+
["code", Kc],
|
|
2745
|
+
["fence", uo, ["paragraph", "reference", "blockquote", "list"]],
|
|
2746
|
+
["blockquote", eo, ["paragraph", "reference", "blockquote", "list"]],
|
|
2747
|
+
["hr", to, ["paragraph", "reference", "blockquote", "list"]],
|
|
2748
|
+
["list", ro, ["paragraph", "reference", "blockquote"]],
|
|
2749
|
+
["reference", co],
|
|
2750
|
+
["html_block", ko, ["paragraph", "reference", "blockquote"]],
|
|
2751
|
+
["heading", Eo, ["paragraph", "reference", "blockquote"]],
|
|
2752
|
+
["lheading", Ao],
|
|
2753
|
+
["paragraph", Co]
|
|
1911
2754
|
];
|
|
1912
|
-
function
|
|
1913
|
-
this.ruler = new
|
|
1914
|
-
for (let u = 0; u <
|
|
1915
|
-
this.ruler.push(
|
|
2755
|
+
function Me() {
|
|
2756
|
+
this.ruler = new V();
|
|
2757
|
+
for (let u = 0; u < Ae.length; u++)
|
|
2758
|
+
this.ruler.push(Ae[u][0], Ae[u][1], { alt: (Ae[u][2] || []).slice() });
|
|
1916
2759
|
}
|
|
1917
|
-
|
|
2760
|
+
Me.prototype.tokenize = function(u, e, t) {
|
|
1918
2761
|
const n = this.ruler.getRules(""), r = n.length, c = u.md.options.maxNesting;
|
|
1919
|
-
let
|
|
1920
|
-
for (;
|
|
2762
|
+
let i = e, o = !1;
|
|
2763
|
+
for (; i < t && (u.line = i = u.skipEmptyLines(i), !(i >= t || u.sCount[i] < u.blkIndent)); ) {
|
|
1921
2764
|
if (u.level >= c) {
|
|
1922
2765
|
u.line = t;
|
|
1923
2766
|
break;
|
|
@@ -1925,45 +2768,45 @@ hu.prototype.tokenize = function(u, e, t) {
|
|
|
1925
2768
|
const a = u.line;
|
|
1926
2769
|
let s = !1;
|
|
1927
2770
|
for (let f = 0; f < r; f++)
|
|
1928
|
-
if (s = n[f](u,
|
|
2771
|
+
if (s = n[f](u, i, t, !1), s) {
|
|
1929
2772
|
if (a >= u.line)
|
|
1930
2773
|
throw new Error("block rule didn't increment state.line");
|
|
1931
2774
|
break;
|
|
1932
2775
|
}
|
|
1933
2776
|
if (!s) throw new Error("none of the block rules matched");
|
|
1934
|
-
u.tight = !
|
|
2777
|
+
u.tight = !o, u.isEmpty(u.line - 1) && (o = !0), i = u.line, i < t && u.isEmpty(i) && (o = !0, i++, u.line = i);
|
|
1935
2778
|
}
|
|
1936
2779
|
};
|
|
1937
|
-
|
|
2780
|
+
Me.prototype.parse = function(u, e, t, n) {
|
|
1938
2781
|
if (!u)
|
|
1939
2782
|
return;
|
|
1940
2783
|
const r = new this.State(u, e, t, n);
|
|
1941
2784
|
this.tokenize(r, r.line, r.lineMax);
|
|
1942
2785
|
};
|
|
1943
|
-
|
|
1944
|
-
function
|
|
2786
|
+
Me.prototype.State = au;
|
|
2787
|
+
function se(u, e, t, n) {
|
|
1945
2788
|
this.src = u, this.env = t, this.md = e, this.tokens = n, this.tokens_meta = Array(n.length), this.pos = 0, this.posMax = this.src.length, this.level = 0, this.pending = "", this.pendingLevel = 0, this.cache = {}, this.delimiters = [], this._prev_delimiters = [], this.backticks = {}, this.backticksScanned = !1, this.linkLevel = 0;
|
|
1946
2789
|
}
|
|
1947
|
-
|
|
1948
|
-
const u = new
|
|
2790
|
+
se.prototype.pushPending = function() {
|
|
2791
|
+
const u = new uu("text", "", 0);
|
|
1949
2792
|
return u.content = this.pending, u.level = this.pendingLevel, this.tokens.push(u), this.pending = "", u;
|
|
1950
2793
|
};
|
|
1951
|
-
|
|
2794
|
+
se.prototype.push = function(u, e, t) {
|
|
1952
2795
|
this.pending && this.pushPending();
|
|
1953
|
-
const n = new
|
|
2796
|
+
const n = new uu(u, e, t);
|
|
1954
2797
|
let r = null;
|
|
1955
2798
|
return t < 0 && (this.level--, this.delimiters = this._prev_delimiters.pop()), n.level = this.level, t > 0 && (this.level++, this._prev_delimiters.push(this.delimiters), this.delimiters = [], r = { delimiters: this.delimiters }), this.pendingLevel = this.level, this.tokens.push(n), this.tokens_meta.push(r), n;
|
|
1956
2799
|
};
|
|
1957
|
-
|
|
2800
|
+
se.prototype.scanDelims = function(u, e) {
|
|
1958
2801
|
const t = this.posMax, n = this.src.charCodeAt(u), r = u > 0 ? this.src.charCodeAt(u - 1) : 32;
|
|
1959
2802
|
let c = u;
|
|
1960
2803
|
for (; c < t && this.src.charCodeAt(c) === n; )
|
|
1961
2804
|
c++;
|
|
1962
|
-
const
|
|
1963
|
-
return { can_open:
|
|
2805
|
+
const i = c - u, o = c < t ? this.src.charCodeAt(c) : 32, a = ce(r) || re(String.fromCharCode(r)), s = ce(o) || re(String.fromCharCode(o)), f = ne(r), h = ne(o), _ = !h && (!s || f || a), p = !f && (!a || h || s);
|
|
2806
|
+
return { can_open: _ && (e || !p || a), can_close: p && (e || !_ || s), length: i };
|
|
1964
2807
|
};
|
|
1965
|
-
|
|
1966
|
-
function
|
|
2808
|
+
se.prototype.Token = uu;
|
|
2809
|
+
function Do(u) {
|
|
1967
2810
|
switch (u) {
|
|
1968
2811
|
case 10:
|
|
1969
2812
|
case 33:
|
|
@@ -1993,38 +2836,38 @@ function Bt(u) {
|
|
|
1993
2836
|
return !1;
|
|
1994
2837
|
}
|
|
1995
2838
|
}
|
|
1996
|
-
function
|
|
2839
|
+
function yo(u, e) {
|
|
1997
2840
|
let t = u.pos;
|
|
1998
|
-
for (; t < u.posMax && !
|
|
2841
|
+
for (; t < u.posMax && !Do(u.src.charCodeAt(t)); )
|
|
1999
2842
|
t++;
|
|
2000
2843
|
return t === u.pos ? !1 : (e || (u.pending += u.src.slice(u.pos, t)), u.pos = t, !0);
|
|
2001
2844
|
}
|
|
2002
|
-
const
|
|
2003
|
-
function
|
|
2845
|
+
const Fo = /(?:^|[^a-z0-9.+-])([a-z][a-z0-9.+-]*)$/i;
|
|
2846
|
+
function To(u, e) {
|
|
2004
2847
|
if (!u.md.options.linkify || u.linkLevel > 0) return !1;
|
|
2005
2848
|
const t = u.pos, n = u.posMax;
|
|
2006
2849
|
if (t + 3 > n || u.src.charCodeAt(t) !== 58 || u.src.charCodeAt(t + 1) !== 47 || u.src.charCodeAt(t + 2) !== 47) return !1;
|
|
2007
|
-
const r = u.pending.match(
|
|
2850
|
+
const r = u.pending.match(Fo);
|
|
2008
2851
|
if (!r) return !1;
|
|
2009
|
-
const c = r[1],
|
|
2010
|
-
if (!
|
|
2011
|
-
let
|
|
2012
|
-
if (
|
|
2013
|
-
|
|
2014
|
-
const a = u.md.normalizeLink(
|
|
2852
|
+
const c = r[1], i = u.md.linkify.matchAtStart(u.src.slice(t - c.length));
|
|
2853
|
+
if (!i) return !1;
|
|
2854
|
+
let o = i.url;
|
|
2855
|
+
if (o.length <= c.length) return !1;
|
|
2856
|
+
o = o.replace(/\*+$/, "");
|
|
2857
|
+
const a = u.md.normalizeLink(o);
|
|
2015
2858
|
if (!u.md.validateLink(a)) return !1;
|
|
2016
2859
|
if (!e) {
|
|
2017
2860
|
u.pending = u.pending.slice(0, -c.length);
|
|
2018
2861
|
const s = u.push("link_open", "a", 1);
|
|
2019
2862
|
s.attrs = [["href", a]], s.markup = "linkify", s.info = "auto";
|
|
2020
2863
|
const f = u.push("text", "", 0);
|
|
2021
|
-
f.content = u.md.normalizeLinkText(
|
|
2022
|
-
const
|
|
2023
|
-
|
|
2864
|
+
f.content = u.md.normalizeLinkText(o);
|
|
2865
|
+
const h = u.push("link_close", "a", -1);
|
|
2866
|
+
h.markup = "linkify", h.info = "auto";
|
|
2024
2867
|
}
|
|
2025
|
-
return u.pos +=
|
|
2868
|
+
return u.pos += o.length - c.length, !0;
|
|
2026
2869
|
}
|
|
2027
|
-
function
|
|
2870
|
+
function So(u, e) {
|
|
2028
2871
|
let t = u.pos;
|
|
2029
2872
|
if (u.src.charCodeAt(t) !== 10)
|
|
2030
2873
|
return !1;
|
|
@@ -2039,39 +2882,39 @@ function Mt(u, e) {
|
|
|
2039
2882
|
u.pending = u.pending.slice(0, -1), u.push("softbreak", "br", 0);
|
|
2040
2883
|
else
|
|
2041
2884
|
u.push("softbreak", "br", 0);
|
|
2042
|
-
for (t++; t < r &&
|
|
2885
|
+
for (t++; t < r && w(u.src.charCodeAt(t)); )
|
|
2043
2886
|
t++;
|
|
2044
2887
|
return u.pos = t, !0;
|
|
2045
2888
|
}
|
|
2046
|
-
const
|
|
2889
|
+
const m0 = [];
|
|
2047
2890
|
for (let u = 0; u < 256; u++)
|
|
2048
|
-
|
|
2891
|
+
m0.push(0);
|
|
2049
2892
|
"\\!\"#$%&'()*+,./:;<=>?@[]^_`{|}~-".split("").forEach(function(u) {
|
|
2050
|
-
|
|
2893
|
+
m0[u.charCodeAt(0)] = 1;
|
|
2051
2894
|
});
|
|
2052
|
-
function
|
|
2895
|
+
function wo(u, e) {
|
|
2053
2896
|
let t = u.pos;
|
|
2054
2897
|
const n = u.posMax;
|
|
2055
2898
|
if (u.src.charCodeAt(t) !== 92 || (t++, t >= n)) return !1;
|
|
2056
2899
|
let r = u.src.charCodeAt(t);
|
|
2057
2900
|
if (r === 10) {
|
|
2058
|
-
for (e || u.push("hardbreak", "br", 0), t++; t < n && (r = u.src.charCodeAt(t), !!
|
|
2901
|
+
for (e || u.push("hardbreak", "br", 0), t++; t < n && (r = u.src.charCodeAt(t), !!w(r)); )
|
|
2059
2902
|
t++;
|
|
2060
2903
|
return u.pos = t, !0;
|
|
2061
2904
|
}
|
|
2062
2905
|
let c = u.src[t];
|
|
2063
2906
|
if (r >= 55296 && r <= 56319 && t + 1 < n) {
|
|
2064
|
-
const
|
|
2065
|
-
|
|
2907
|
+
const o = u.src.charCodeAt(t + 1);
|
|
2908
|
+
o >= 56320 && o <= 57343 && (c += u.src[t + 1], t++);
|
|
2066
2909
|
}
|
|
2067
|
-
const
|
|
2910
|
+
const i = "\\" + c;
|
|
2068
2911
|
if (!e) {
|
|
2069
|
-
const
|
|
2070
|
-
r < 256 &&
|
|
2912
|
+
const o = u.push("text_special", "", 0);
|
|
2913
|
+
r < 256 && m0[r] !== 0 ? o.content = c : o.content = i, o.markup = i, o.info = "escape";
|
|
2071
2914
|
}
|
|
2072
2915
|
return u.pos = t + 1, !0;
|
|
2073
2916
|
}
|
|
2074
|
-
function
|
|
2917
|
+
function vo(u, e) {
|
|
2075
2918
|
let t = u.pos;
|
|
2076
2919
|
if (u.src.charCodeAt(t) !== 96)
|
|
2077
2920
|
return !1;
|
|
@@ -2080,38 +2923,38 @@ function Rt(u, e) {
|
|
|
2080
2923
|
const c = u.posMax;
|
|
2081
2924
|
for (; t < c && u.src.charCodeAt(t) === 96; )
|
|
2082
2925
|
t++;
|
|
2083
|
-
const
|
|
2084
|
-
if (u.backticksScanned && (u.backticks[
|
|
2085
|
-
return e || (u.pending +=
|
|
2926
|
+
const i = u.src.slice(r, t), o = i.length;
|
|
2927
|
+
if (u.backticksScanned && (u.backticks[o] || 0) <= r)
|
|
2928
|
+
return e || (u.pending += i), u.pos += o, !0;
|
|
2086
2929
|
let a = t, s;
|
|
2087
2930
|
for (; (s = u.src.indexOf("`", a)) !== -1; ) {
|
|
2088
2931
|
for (a = s + 1; a < c && u.src.charCodeAt(a) === 96; )
|
|
2089
2932
|
a++;
|
|
2090
2933
|
const f = a - s;
|
|
2091
|
-
if (f ===
|
|
2934
|
+
if (f === o) {
|
|
2092
2935
|
if (!e) {
|
|
2093
|
-
const
|
|
2094
|
-
|
|
2936
|
+
const h = u.push("code_inline", "code", 0);
|
|
2937
|
+
h.markup = i, h.content = u.src.slice(t, s).replace(/\n/g, " ").replace(/^ (.+) $/, "$1");
|
|
2095
2938
|
}
|
|
2096
2939
|
return u.pos = a, !0;
|
|
2097
2940
|
}
|
|
2098
2941
|
u.backticks[f] = s;
|
|
2099
2942
|
}
|
|
2100
|
-
return u.backticksScanned = !0, e || (u.pending +=
|
|
2943
|
+
return u.backticksScanned = !0, e || (u.pending += i), u.pos += o, !0;
|
|
2101
2944
|
}
|
|
2102
|
-
function
|
|
2945
|
+
function Ro(u, e) {
|
|
2103
2946
|
const t = u.pos, n = u.src.charCodeAt(t);
|
|
2104
2947
|
if (e || n !== 126)
|
|
2105
2948
|
return !1;
|
|
2106
2949
|
const r = u.scanDelims(u.pos, !0);
|
|
2107
2950
|
let c = r.length;
|
|
2108
|
-
const
|
|
2951
|
+
const i = String.fromCharCode(n);
|
|
2109
2952
|
if (c < 2)
|
|
2110
2953
|
return !1;
|
|
2111
|
-
let
|
|
2112
|
-
c % 2 && (
|
|
2954
|
+
let o;
|
|
2955
|
+
c % 2 && (o = u.push("text", "", 0), o.content = i, c--);
|
|
2113
2956
|
for (let a = 0; a < c; a += 2)
|
|
2114
|
-
|
|
2957
|
+
o = u.push("text", "", 0), o.content = i + i, u.delimiters.push({
|
|
2115
2958
|
marker: n,
|
|
2116
2959
|
length: 0,
|
|
2117
2960
|
// disable "rule of 3" length checks meant for emphasis
|
|
@@ -2122,42 +2965,42 @@ function Lt(u, e) {
|
|
|
2122
2965
|
});
|
|
2123
2966
|
return u.pos += r.length, !0;
|
|
2124
2967
|
}
|
|
2125
|
-
function
|
|
2968
|
+
function _t(u, e) {
|
|
2126
2969
|
let t;
|
|
2127
2970
|
const n = [], r = e.length;
|
|
2128
2971
|
for (let c = 0; c < r; c++) {
|
|
2129
|
-
const
|
|
2130
|
-
if (
|
|
2972
|
+
const i = e[c];
|
|
2973
|
+
if (i.marker !== 126 || i.end === -1)
|
|
2131
2974
|
continue;
|
|
2132
|
-
const
|
|
2133
|
-
t = u.tokens[
|
|
2975
|
+
const o = e[i.end];
|
|
2976
|
+
t = u.tokens[i.token], t.type = "s_open", t.tag = "s", t.nesting = 1, t.markup = "~~", t.content = "", t = u.tokens[o.token], t.type = "s_close", t.tag = "s", t.nesting = -1, t.markup = "~~", t.content = "", u.tokens[o.token - 1].type === "text" && u.tokens[o.token - 1].content === "~" && n.push(o.token - 1);
|
|
2134
2977
|
}
|
|
2135
2978
|
for (; n.length; ) {
|
|
2136
2979
|
const c = n.pop();
|
|
2137
|
-
let
|
|
2138
|
-
for (;
|
|
2139
|
-
|
|
2140
|
-
|
|
2980
|
+
let i = c + 1;
|
|
2981
|
+
for (; i < u.tokens.length && u.tokens[i].type === "s_close"; )
|
|
2982
|
+
i++;
|
|
2983
|
+
i--, c !== i && (t = u.tokens[i], u.tokens[i] = u.tokens[c], u.tokens[c] = t);
|
|
2141
2984
|
}
|
|
2142
2985
|
}
|
|
2143
|
-
function
|
|
2986
|
+
function Mo(u) {
|
|
2144
2987
|
const e = u.tokens_meta, t = u.tokens_meta.length;
|
|
2145
|
-
|
|
2988
|
+
_t(u, u.delimiters);
|
|
2146
2989
|
for (let n = 0; n < t; n++)
|
|
2147
|
-
e[n] && e[n].delimiters &&
|
|
2990
|
+
e[n] && e[n].delimiters && _t(u, e[n].delimiters);
|
|
2148
2991
|
}
|
|
2149
|
-
const
|
|
2150
|
-
tokenize:
|
|
2151
|
-
postProcess:
|
|
2992
|
+
const Gt = {
|
|
2993
|
+
tokenize: Ro,
|
|
2994
|
+
postProcess: Mo
|
|
2152
2995
|
};
|
|
2153
|
-
function
|
|
2996
|
+
function Io(u, e) {
|
|
2154
2997
|
const t = u.pos, n = u.src.charCodeAt(t);
|
|
2155
2998
|
if (e || n !== 95 && n !== 42)
|
|
2156
2999
|
return !1;
|
|
2157
3000
|
const r = u.scanDelims(u.pos, n === 42);
|
|
2158
3001
|
for (let c = 0; c < r.length; c++) {
|
|
2159
|
-
const
|
|
2160
|
-
|
|
3002
|
+
const i = u.push("text", "", 0);
|
|
3003
|
+
i.content = String.fromCharCode(n), u.delimiters.push({
|
|
2161
3004
|
// Char code of the starting marker (number).
|
|
2162
3005
|
//
|
|
2163
3006
|
marker: n,
|
|
@@ -2180,130 +3023,130 @@ function Ot(u, e) {
|
|
|
2180
3023
|
}
|
|
2181
3024
|
return u.pos += r.length, !0;
|
|
2182
3025
|
}
|
|
2183
|
-
function
|
|
3026
|
+
function mt(u, e) {
|
|
2184
3027
|
const t = e.length;
|
|
2185
3028
|
for (let n = t - 1; n >= 0; n--) {
|
|
2186
3029
|
const r = e[n];
|
|
2187
3030
|
if (r.marker !== 95 && r.marker !== 42 || r.end === -1)
|
|
2188
3031
|
continue;
|
|
2189
|
-
const c = e[r.end],
|
|
3032
|
+
const c = e[r.end], i = n > 0 && e[n - 1].end === r.end + 1 && // check that first two markers match and adjacent
|
|
2190
3033
|
e[n - 1].marker === r.marker && e[n - 1].token === r.token - 1 && // check that last two markers are adjacent (we can safely assume they match)
|
|
2191
|
-
e[r.end + 1].token === c.token + 1,
|
|
2192
|
-
a.type =
|
|
3034
|
+
e[r.end + 1].token === c.token + 1, o = String.fromCharCode(r.marker), a = u.tokens[r.token];
|
|
3035
|
+
a.type = i ? "strong_open" : "em_open", a.tag = i ? "strong" : "em", a.nesting = 1, a.markup = i ? o + o : o, a.content = "";
|
|
2193
3036
|
const s = u.tokens[c.token];
|
|
2194
|
-
s.type =
|
|
3037
|
+
s.type = i ? "strong_close" : "em_close", s.tag = i ? "strong" : "em", s.nesting = -1, s.markup = i ? o + o : o, s.content = "", i && (u.tokens[e[n - 1].token].content = "", u.tokens[e[r.end + 1].token].content = "", n--);
|
|
2195
3038
|
}
|
|
2196
3039
|
}
|
|
2197
|
-
function
|
|
3040
|
+
function Lo(u) {
|
|
2198
3041
|
const e = u.tokens_meta, t = u.tokens_meta.length;
|
|
2199
|
-
|
|
3042
|
+
mt(u, u.delimiters);
|
|
2200
3043
|
for (let n = 0; n < t; n++)
|
|
2201
|
-
e[n] && e[n].delimiters &&
|
|
3044
|
+
e[n] && e[n].delimiters && mt(u, e[n].delimiters);
|
|
2202
3045
|
}
|
|
2203
|
-
const
|
|
2204
|
-
tokenize:
|
|
2205
|
-
postProcess:
|
|
3046
|
+
const Wt = {
|
|
3047
|
+
tokenize: Io,
|
|
3048
|
+
postProcess: Lo
|
|
2206
3049
|
};
|
|
2207
|
-
function
|
|
2208
|
-
let t, n, r, c,
|
|
3050
|
+
function Oo(u, e) {
|
|
3051
|
+
let t, n, r, c, i = "", o = "", a = u.pos, s = !0;
|
|
2209
3052
|
if (u.src.charCodeAt(u.pos) !== 91)
|
|
2210
3053
|
return !1;
|
|
2211
|
-
const f = u.pos,
|
|
2212
|
-
if (
|
|
3054
|
+
const f = u.pos, h = u.posMax, _ = u.pos + 1, p = u.md.helpers.parseLinkLabel(u, u.pos, !0);
|
|
3055
|
+
if (p < 0)
|
|
2213
3056
|
return !1;
|
|
2214
|
-
let
|
|
2215
|
-
if (
|
|
2216
|
-
for (s = !1,
|
|
3057
|
+
let d = p + 1;
|
|
3058
|
+
if (d < h && u.src.charCodeAt(d) === 40) {
|
|
3059
|
+
for (s = !1, d++; d < h && (t = u.src.charCodeAt(d), !(!w(t) && t !== 10)); d++)
|
|
2217
3060
|
;
|
|
2218
|
-
if (
|
|
3061
|
+
if (d >= h)
|
|
2219
3062
|
return !1;
|
|
2220
|
-
if (a =
|
|
2221
|
-
for (
|
|
3063
|
+
if (a = d, r = u.md.helpers.parseLinkDestination(u.src, d, u.posMax), r.ok) {
|
|
3064
|
+
for (i = u.md.normalizeLink(r.str), u.md.validateLink(i) ? d = r.pos : i = "", a = d; d < h && (t = u.src.charCodeAt(d), !(!w(t) && t !== 10)); d++)
|
|
2222
3065
|
;
|
|
2223
|
-
if (r = u.md.helpers.parseLinkTitle(u.src,
|
|
2224
|
-
for (
|
|
3066
|
+
if (r = u.md.helpers.parseLinkTitle(u.src, d, u.posMax), d < h && a !== d && r.ok)
|
|
3067
|
+
for (o = r.str, d = r.pos; d < h && (t = u.src.charCodeAt(d), !(!w(t) && t !== 10)); d++)
|
|
2225
3068
|
;
|
|
2226
3069
|
}
|
|
2227
|
-
(
|
|
3070
|
+
(d >= h || u.src.charCodeAt(d) !== 41) && (s = !0), d++;
|
|
2228
3071
|
}
|
|
2229
3072
|
if (s) {
|
|
2230
3073
|
if (typeof u.env.references > "u")
|
|
2231
3074
|
return !1;
|
|
2232
|
-
if (
|
|
3075
|
+
if (d < h && u.src.charCodeAt(d) === 91 ? (a = d + 1, d = u.md.helpers.parseLinkLabel(u, d), d >= 0 ? n = u.src.slice(a, d++) : d = p + 1) : d = p + 1, n || (n = u.src.slice(_, p)), c = u.env.references[Re(n)], !c)
|
|
2233
3076
|
return u.pos = f, !1;
|
|
2234
|
-
|
|
3077
|
+
i = c.href, o = c.title;
|
|
2235
3078
|
}
|
|
2236
3079
|
if (!e) {
|
|
2237
|
-
u.pos =
|
|
2238
|
-
const
|
|
2239
|
-
|
|
3080
|
+
u.pos = _, u.posMax = p;
|
|
3081
|
+
const C = u.push("link_open", "a", 1), D = [["href", i]];
|
|
3082
|
+
C.attrs = D, o && D.push(["title", o]), u.linkLevel++, u.md.inline.tokenize(u), u.linkLevel--, u.push("link_close", "a", -1);
|
|
2240
3083
|
}
|
|
2241
|
-
return u.pos =
|
|
3084
|
+
return u.pos = d, u.posMax = h, !0;
|
|
2242
3085
|
}
|
|
2243
|
-
function
|
|
2244
|
-
let t, n, r, c,
|
|
2245
|
-
const
|
|
3086
|
+
function No(u, e) {
|
|
3087
|
+
let t, n, r, c, i, o, a, s, f = "";
|
|
3088
|
+
const h = u.pos, _ = u.posMax;
|
|
2246
3089
|
if (u.src.charCodeAt(u.pos) !== 33 || u.src.charCodeAt(u.pos + 1) !== 91)
|
|
2247
3090
|
return !1;
|
|
2248
|
-
const
|
|
2249
|
-
if (
|
|
3091
|
+
const p = u.pos + 2, d = u.md.helpers.parseLinkLabel(u, u.pos + 1, !1);
|
|
3092
|
+
if (d < 0)
|
|
2250
3093
|
return !1;
|
|
2251
|
-
if (c =
|
|
2252
|
-
for (c++; c <
|
|
3094
|
+
if (c = d + 1, c < _ && u.src.charCodeAt(c) === 40) {
|
|
3095
|
+
for (c++; c < _ && (t = u.src.charCodeAt(c), !(!w(t) && t !== 10)); c++)
|
|
2253
3096
|
;
|
|
2254
|
-
if (c >=
|
|
3097
|
+
if (c >= _)
|
|
2255
3098
|
return !1;
|
|
2256
|
-
for (s = c,
|
|
3099
|
+
for (s = c, o = u.md.helpers.parseLinkDestination(u.src, c, u.posMax), o.ok && (f = u.md.normalizeLink(o.str), u.md.validateLink(f) ? c = o.pos : f = ""), s = c; c < _ && (t = u.src.charCodeAt(c), !(!w(t) && t !== 10)); c++)
|
|
2257
3100
|
;
|
|
2258
|
-
if (
|
|
2259
|
-
for (a =
|
|
3101
|
+
if (o = u.md.helpers.parseLinkTitle(u.src, c, u.posMax), c < _ && s !== c && o.ok)
|
|
3102
|
+
for (a = o.str, c = o.pos; c < _ && (t = u.src.charCodeAt(c), !(!w(t) && t !== 10)); c++)
|
|
2260
3103
|
;
|
|
2261
3104
|
else
|
|
2262
3105
|
a = "";
|
|
2263
|
-
if (c >=
|
|
2264
|
-
return u.pos =
|
|
3106
|
+
if (c >= _ || u.src.charCodeAt(c) !== 41)
|
|
3107
|
+
return u.pos = h, !1;
|
|
2265
3108
|
c++;
|
|
2266
3109
|
} else {
|
|
2267
3110
|
if (typeof u.env.references > "u")
|
|
2268
3111
|
return !1;
|
|
2269
|
-
if (c <
|
|
2270
|
-
return u.pos =
|
|
2271
|
-
f =
|
|
3112
|
+
if (c < _ && u.src.charCodeAt(c) === 91 ? (s = c + 1, c = u.md.helpers.parseLinkLabel(u, c), c >= 0 ? r = u.src.slice(s, c++) : c = d + 1) : c = d + 1, r || (r = u.src.slice(p, d)), i = u.env.references[Re(r)], !i)
|
|
3113
|
+
return u.pos = h, !1;
|
|
3114
|
+
f = i.href, a = i.title;
|
|
2272
3115
|
}
|
|
2273
3116
|
if (!e) {
|
|
2274
|
-
n = u.src.slice(
|
|
2275
|
-
const
|
|
3117
|
+
n = u.src.slice(p, d);
|
|
3118
|
+
const C = [];
|
|
2276
3119
|
u.md.inline.parse(
|
|
2277
3120
|
n,
|
|
2278
3121
|
u.md,
|
|
2279
3122
|
u.env,
|
|
2280
|
-
|
|
3123
|
+
C
|
|
2281
3124
|
);
|
|
2282
|
-
const
|
|
2283
|
-
|
|
3125
|
+
const D = u.push("image", "img", 0), S = [["src", f], ["alt", ""]];
|
|
3126
|
+
D.attrs = S, D.children = C, D.content = n, a && S.push(["title", a]);
|
|
2284
3127
|
}
|
|
2285
|
-
return u.pos = c, u.posMax =
|
|
3128
|
+
return u.pos = c, u.posMax = _, !0;
|
|
2286
3129
|
}
|
|
2287
|
-
const
|
|
2288
|
-
function
|
|
3130
|
+
const Bo = /^([a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*)$/, Po = /^([a-zA-Z][a-zA-Z0-9+.-]{1,31}):([^<>\x00-\x20]*)$/;
|
|
3131
|
+
function zo(u, e) {
|
|
2289
3132
|
let t = u.pos;
|
|
2290
3133
|
if (u.src.charCodeAt(t) !== 60)
|
|
2291
3134
|
return !1;
|
|
2292
3135
|
const n = u.pos, r = u.posMax;
|
|
2293
3136
|
for (; ; ) {
|
|
2294
3137
|
if (++t >= r) return !1;
|
|
2295
|
-
const
|
|
2296
|
-
if (
|
|
2297
|
-
if (
|
|
3138
|
+
const i = u.src.charCodeAt(t);
|
|
3139
|
+
if (i === 60) return !1;
|
|
3140
|
+
if (i === 62) break;
|
|
2298
3141
|
}
|
|
2299
3142
|
const c = u.src.slice(n + 1, t);
|
|
2300
|
-
if (
|
|
2301
|
-
const
|
|
2302
|
-
if (!u.md.validateLink(
|
|
3143
|
+
if (Po.test(c)) {
|
|
3144
|
+
const i = u.md.normalizeLink(c);
|
|
3145
|
+
if (!u.md.validateLink(i))
|
|
2303
3146
|
return !1;
|
|
2304
3147
|
if (!e) {
|
|
2305
|
-
const
|
|
2306
|
-
|
|
3148
|
+
const o = u.push("link_open", "a", 1);
|
|
3149
|
+
o.attrs = [["href", i]], o.markup = "autolink", o.info = "auto";
|
|
2307
3150
|
const a = u.push("text", "", 0);
|
|
2308
3151
|
a.content = u.md.normalizeLinkText(c);
|
|
2309
3152
|
const s = u.push("link_close", "a", -1);
|
|
@@ -2311,13 +3154,13 @@ function Ht(u, e) {
|
|
|
2311
3154
|
}
|
|
2312
3155
|
return u.pos += c.length + 2, !0;
|
|
2313
3156
|
}
|
|
2314
|
-
if (
|
|
2315
|
-
const
|
|
2316
|
-
if (!u.md.validateLink(
|
|
3157
|
+
if (Bo.test(c)) {
|
|
3158
|
+
const i = u.md.normalizeLink("mailto:" + c);
|
|
3159
|
+
if (!u.md.validateLink(i))
|
|
2317
3160
|
return !1;
|
|
2318
3161
|
if (!e) {
|
|
2319
|
-
const
|
|
2320
|
-
|
|
3162
|
+
const o = u.push("link_open", "a", 1);
|
|
3163
|
+
o.attrs = [["href", i]], o.markup = "autolink", o.info = "auto";
|
|
2321
3164
|
const a = u.push("text", "", 0);
|
|
2322
3165
|
a.content = u.md.normalizeLinkText(c);
|
|
2323
3166
|
const s = u.push("link_close", "a", -1);
|
|
@@ -2327,55 +3170,55 @@ function Ht(u, e) {
|
|
|
2327
3170
|
}
|
|
2328
3171
|
return !1;
|
|
2329
3172
|
}
|
|
2330
|
-
function
|
|
3173
|
+
function qo(u) {
|
|
2331
3174
|
return /^<a[>\s]/i.test(u);
|
|
2332
3175
|
}
|
|
2333
|
-
function
|
|
3176
|
+
function Uo(u) {
|
|
2334
3177
|
return /^<\/a\s*>/i.test(u);
|
|
2335
3178
|
}
|
|
2336
|
-
function
|
|
3179
|
+
function Ho(u) {
|
|
2337
3180
|
const e = u | 32;
|
|
2338
3181
|
return e >= 97 && e <= 122;
|
|
2339
3182
|
}
|
|
2340
|
-
function
|
|
3183
|
+
function $o(u, e) {
|
|
2341
3184
|
if (!u.md.options.html)
|
|
2342
3185
|
return !1;
|
|
2343
3186
|
const t = u.posMax, n = u.pos;
|
|
2344
3187
|
if (u.src.charCodeAt(n) !== 60 || n + 2 >= t)
|
|
2345
3188
|
return !1;
|
|
2346
3189
|
const r = u.src.charCodeAt(n + 1);
|
|
2347
|
-
if (r !== 33 && r !== 63 && r !== 47 && !
|
|
3190
|
+
if (r !== 33 && r !== 63 && r !== 47 && !Ho(r))
|
|
2348
3191
|
return !1;
|
|
2349
|
-
const c = u.src.slice(n).match(
|
|
3192
|
+
const c = u.src.slice(n).match(xo);
|
|
2350
3193
|
if (!c)
|
|
2351
3194
|
return !1;
|
|
2352
3195
|
if (!e) {
|
|
2353
|
-
const
|
|
2354
|
-
|
|
3196
|
+
const i = u.push("html_inline", "", 0);
|
|
3197
|
+
i.content = c[0], qo(i.content) && u.linkLevel++, Uo(i.content) && u.linkLevel--;
|
|
2355
3198
|
}
|
|
2356
3199
|
return u.pos += c[0].length, !0;
|
|
2357
3200
|
}
|
|
2358
|
-
const
|
|
2359
|
-
function
|
|
3201
|
+
const jo = /^&#((?:x[a-f0-9]{1,6}|[0-9]{1,7}));/i, Go = /^&([a-z][a-z0-9]{1,31});/i;
|
|
3202
|
+
function Wo(u, e) {
|
|
2360
3203
|
const t = u.pos, n = u.posMax;
|
|
2361
3204
|
if (u.src.charCodeAt(t) !== 38 || t + 1 >= n) return !1;
|
|
2362
3205
|
if (u.src.charCodeAt(t + 1) === 35) {
|
|
2363
|
-
const c = u.src.slice(t).match(
|
|
3206
|
+
const c = u.src.slice(t).match(jo);
|
|
2364
3207
|
if (c) {
|
|
2365
3208
|
if (!e) {
|
|
2366
|
-
const
|
|
2367
|
-
|
|
3209
|
+
const i = c[1][0].toLowerCase() === "x" ? parseInt(c[1].slice(1), 16) : parseInt(c[1], 10), o = u.push("text_special", "", 0);
|
|
3210
|
+
o.content = b0(i) ? Te(i) : Te(65533), o.markup = c[0], o.info = "entity";
|
|
2368
3211
|
}
|
|
2369
3212
|
return u.pos += c[0].length, !0;
|
|
2370
3213
|
}
|
|
2371
3214
|
} else {
|
|
2372
|
-
const c = u.src.slice(t).match(
|
|
3215
|
+
const c = u.src.slice(t).match(Go);
|
|
2373
3216
|
if (c) {
|
|
2374
|
-
const
|
|
2375
|
-
if (
|
|
3217
|
+
const i = Pt(c[0]);
|
|
3218
|
+
if (i !== c[0]) {
|
|
2376
3219
|
if (!e) {
|
|
2377
|
-
const
|
|
2378
|
-
|
|
3220
|
+
const o = u.push("text_special", "", 0);
|
|
3221
|
+
o.content = i, o.markup = c[0], o.info = "entity";
|
|
2379
3222
|
}
|
|
2380
3223
|
return u.pos += c[0].length, !0;
|
|
2381
3224
|
}
|
|
@@ -2383,105 +3226,105 @@ function Yt(u, e) {
|
|
|
2383
3226
|
}
|
|
2384
3227
|
return !1;
|
|
2385
3228
|
}
|
|
2386
|
-
function
|
|
3229
|
+
function xt(u) {
|
|
2387
3230
|
const e = {}, t = u.length;
|
|
2388
3231
|
if (!t) return;
|
|
2389
3232
|
let n = 0, r = -2;
|
|
2390
3233
|
const c = [];
|
|
2391
|
-
for (let
|
|
2392
|
-
const
|
|
2393
|
-
if (c.push(0), (u[n].marker !==
|
|
2394
|
-
e.hasOwnProperty(
|
|
2395
|
-
const a = e[
|
|
3234
|
+
for (let i = 0; i < t; i++) {
|
|
3235
|
+
const o = u[i];
|
|
3236
|
+
if (c.push(0), (u[n].marker !== o.marker || r !== o.token - 1) && (n = i), r = o.token, o.length = o.length || 0, !o.close) continue;
|
|
3237
|
+
e.hasOwnProperty(o.marker) || (e[o.marker] = [-1, -1, -1, -1, -1, -1]);
|
|
3238
|
+
const a = e[o.marker][(o.open ? 3 : 0) + o.length % 3];
|
|
2396
3239
|
let s = n - c[n] - 1, f = s;
|
|
2397
3240
|
for (; s > a; s -= c[s] + 1) {
|
|
2398
|
-
const
|
|
2399
|
-
if (
|
|
2400
|
-
let
|
|
2401
|
-
if ((
|
|
2402
|
-
const
|
|
2403
|
-
c[
|
|
3241
|
+
const h = u[s];
|
|
3242
|
+
if (h.marker === o.marker && h.open && h.end < 0) {
|
|
3243
|
+
let _ = !1;
|
|
3244
|
+
if ((h.close || o.open) && (h.length + o.length) % 3 === 0 && (h.length % 3 !== 0 || o.length % 3 !== 0) && (_ = !0), !_) {
|
|
3245
|
+
const p = s > 0 && !u[s - 1].open ? c[s - 1] + 1 : 0;
|
|
3246
|
+
c[i] = i - s + p, c[s] = p, o.open = !1, h.end = i, h.close = !1, f = -1, r = -2;
|
|
2404
3247
|
break;
|
|
2405
3248
|
}
|
|
2406
3249
|
}
|
|
2407
3250
|
}
|
|
2408
|
-
f !== -1 && (e[
|
|
3251
|
+
f !== -1 && (e[o.marker][(o.open ? 3 : 0) + (o.length || 0) % 3] = f);
|
|
2409
3252
|
}
|
|
2410
3253
|
}
|
|
2411
|
-
function
|
|
3254
|
+
function Zo(u) {
|
|
2412
3255
|
const e = u.tokens_meta, t = u.tokens_meta.length;
|
|
2413
|
-
|
|
3256
|
+
xt(u.delimiters);
|
|
2414
3257
|
for (let n = 0; n < t; n++)
|
|
2415
|
-
e[n] && e[n].delimiters &&
|
|
3258
|
+
e[n] && e[n].delimiters && xt(e[n].delimiters);
|
|
2416
3259
|
}
|
|
2417
|
-
function
|
|
3260
|
+
function Vo(u) {
|
|
2418
3261
|
let e, t, n = 0;
|
|
2419
3262
|
const r = u.tokens, c = u.tokens.length;
|
|
2420
3263
|
for (e = t = 0; e < c; e++)
|
|
2421
3264
|
r[e].nesting < 0 && n--, r[e].level = n, r[e].nesting > 0 && n++, r[e].type === "text" && e + 1 < c && r[e + 1].type === "text" ? r[e + 1].content = r[e].content + r[e + 1].content : (e !== t && (r[t] = r[e]), t++);
|
|
2422
3265
|
e !== t && (r.length = t);
|
|
2423
3266
|
}
|
|
2424
|
-
const
|
|
2425
|
-
["text",
|
|
2426
|
-
["linkify",
|
|
2427
|
-
["newline",
|
|
2428
|
-
["escape",
|
|
2429
|
-
["backticks",
|
|
2430
|
-
["strikethrough",
|
|
2431
|
-
["emphasis",
|
|
2432
|
-
["link",
|
|
2433
|
-
["image",
|
|
2434
|
-
["autolink",
|
|
2435
|
-
["html_inline",
|
|
2436
|
-
["entity",
|
|
2437
|
-
],
|
|
2438
|
-
["balance_pairs",
|
|
2439
|
-
["strikethrough",
|
|
2440
|
-
["emphasis",
|
|
3267
|
+
const u0 = [
|
|
3268
|
+
["text", yo],
|
|
3269
|
+
["linkify", To],
|
|
3270
|
+
["newline", So],
|
|
3271
|
+
["escape", wo],
|
|
3272
|
+
["backticks", vo],
|
|
3273
|
+
["strikethrough", Gt.tokenize],
|
|
3274
|
+
["emphasis", Wt.tokenize],
|
|
3275
|
+
["link", Oo],
|
|
3276
|
+
["image", No],
|
|
3277
|
+
["autolink", zo],
|
|
3278
|
+
["html_inline", $o],
|
|
3279
|
+
["entity", Wo]
|
|
3280
|
+
], e0 = [
|
|
3281
|
+
["balance_pairs", Zo],
|
|
3282
|
+
["strikethrough", Gt.postProcess],
|
|
3283
|
+
["emphasis", Wt.postProcess],
|
|
2441
3284
|
// rules for pairs separate '**' into its own text tokens, which may be left unused,
|
|
2442
3285
|
// rule below merges unused segments back with the rest of the text
|
|
2443
|
-
["fragments_join",
|
|
3286
|
+
["fragments_join", Vo]
|
|
2444
3287
|
];
|
|
2445
|
-
function
|
|
2446
|
-
this.ruler = new
|
|
2447
|
-
for (let u = 0; u <
|
|
2448
|
-
this.ruler.push(
|
|
2449
|
-
this.ruler2 = new
|
|
2450
|
-
for (let u = 0; u <
|
|
2451
|
-
this.ruler2.push(
|
|
2452
|
-
}
|
|
2453
|
-
|
|
3288
|
+
function le() {
|
|
3289
|
+
this.ruler = new V();
|
|
3290
|
+
for (let u = 0; u < u0.length; u++)
|
|
3291
|
+
this.ruler.push(u0[u][0], u0[u][1]);
|
|
3292
|
+
this.ruler2 = new V();
|
|
3293
|
+
for (let u = 0; u < e0.length; u++)
|
|
3294
|
+
this.ruler2.push(e0[u][0], e0[u][1]);
|
|
3295
|
+
}
|
|
3296
|
+
le.prototype.skipToken = function(u) {
|
|
2454
3297
|
const e = u.pos, t = this.ruler.getRules(""), n = t.length, r = u.md.options.maxNesting, c = u.cache;
|
|
2455
3298
|
if (typeof c[e] < "u") {
|
|
2456
3299
|
u.pos = c[e];
|
|
2457
3300
|
return;
|
|
2458
3301
|
}
|
|
2459
|
-
let
|
|
3302
|
+
let i = !1;
|
|
2460
3303
|
if (u.level < r) {
|
|
2461
|
-
for (let
|
|
2462
|
-
if (u.level++,
|
|
3304
|
+
for (let o = 0; o < n; o++)
|
|
3305
|
+
if (u.level++, i = t[o](u, !0), u.level--, i) {
|
|
2463
3306
|
if (e >= u.pos)
|
|
2464
3307
|
throw new Error("inline rule didn't increment state.pos");
|
|
2465
3308
|
break;
|
|
2466
3309
|
}
|
|
2467
3310
|
} else
|
|
2468
3311
|
u.pos = u.posMax;
|
|
2469
|
-
|
|
3312
|
+
i || u.pos++, c[e] = u.pos;
|
|
2470
3313
|
};
|
|
2471
|
-
|
|
3314
|
+
le.prototype.tokenize = function(u) {
|
|
2472
3315
|
const e = this.ruler.getRules(""), t = e.length, n = u.posMax, r = u.md.options.maxNesting;
|
|
2473
3316
|
for (; u.pos < n; ) {
|
|
2474
3317
|
const c = u.pos;
|
|
2475
|
-
let
|
|
3318
|
+
let i = !1;
|
|
2476
3319
|
if (u.level < r) {
|
|
2477
|
-
for (let
|
|
2478
|
-
if (
|
|
3320
|
+
for (let o = 0; o < t; o++)
|
|
3321
|
+
if (i = e[o](u, !1), i) {
|
|
2479
3322
|
if (c >= u.pos)
|
|
2480
3323
|
throw new Error("inline rule didn't increment state.pos");
|
|
2481
3324
|
break;
|
|
2482
3325
|
}
|
|
2483
3326
|
}
|
|
2484
|
-
if (
|
|
3327
|
+
if (i) {
|
|
2485
3328
|
if (u.pos >= n)
|
|
2486
3329
|
break;
|
|
2487
3330
|
continue;
|
|
@@ -2490,17 +3333,17 @@ cu.prototype.tokenize = function(u) {
|
|
|
2490
3333
|
}
|
|
2491
3334
|
u.pending && u.pushPending();
|
|
2492
3335
|
};
|
|
2493
|
-
|
|
3336
|
+
le.prototype.parse = function(u, e, t, n) {
|
|
2494
3337
|
const r = new this.State(u, e, t, n);
|
|
2495
3338
|
this.tokenize(r);
|
|
2496
|
-
const c = this.ruler2.getRules(""),
|
|
2497
|
-
for (let
|
|
2498
|
-
c[
|
|
3339
|
+
const c = this.ruler2.getRules(""), i = c.length;
|
|
3340
|
+
for (let o = 0; o < i; o++)
|
|
3341
|
+
c[o](r);
|
|
2499
3342
|
};
|
|
2500
|
-
|
|
2501
|
-
function
|
|
3343
|
+
le.prototype.State = se;
|
|
3344
|
+
function Yo(u) {
|
|
2502
3345
|
const e = {};
|
|
2503
|
-
u = u || {}, e.src_Any =
|
|
3346
|
+
u = u || {}, e.src_Any = It.source, e.src_Cc = Lt.source, e.src_Z = Nt.source, e.src_P = h0.source, e.src_ZPCc = [e.src_Z, e.src_P, e.src_Cc].join("|"), e.src_ZCc = [e.src_Z, e.src_Cc].join("|");
|
|
2504
3347
|
const t = "[><|]";
|
|
2505
3348
|
return e.src_pseudo_letter = "(?:(?!" + t + "|" + e.src_ZPCc + ")" + e.src_Any + ")", e.src_ip4 = "(?:(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)", e.src_auth = "(?:(?:(?!" + e.src_ZCc + "|[@/\\[\\]()]).)+@)?", e.src_port = "(?::(?:6(?:[0-4]\\d{3}|5(?:[0-4]\\d{2}|5(?:[0-2]\\d|3[0-5])))|[1-5]?\\d{1,4}))?", e.src_host_terminator = "(?=$|" + t + "|" + e.src_ZPCc + ")(?!" + (u["---"] ? "-(?!--)|" : "-|") + "_|:\\d|\\.-|\\.(?!$|" + e.src_ZPCc + "))", e.src_path = "(?:[/?#](?:(?!" + e.src_ZCc + "|" + t + `|[()[\\]{}.,"'?!\\-;]).|\\[(?:(?!` + e.src_ZCc + "|\\]).)*\\]|\\((?:(?!" + e.src_ZCc + "|[)]).)*\\)|\\{(?:(?!" + e.src_ZCc + '|[}]).)*\\}|\\"(?:(?!' + e.src_ZCc + `|["]).)+\\"|\\'(?:(?!` + e.src_ZCc + "|[']).)+\\'|\\'(?=" + e.src_pseudo_letter + "|[-])|\\.{2,}[a-zA-Z0-9%/&]|\\.(?!" + e.src_ZCc + "|[.]|$)|" + (u["---"] ? "\\-(?!--(?:[^-]|$))(?:-*)|" : "\\-+|") + // allow `,,,` in paths
|
|
2506
3349
|
",(?!" + e.src_ZCc + "|$)|;(?!" + e.src_ZCc + "|$)|\\!+(?!" + e.src_ZCc + "|[!]|$)|\\?(?!" + e.src_ZCc + "|[?]|$))+|\\/)?", e.src_email_name = '[\\-;:&=\\+\\$,\\.a-zA-Z0-9_][\\-;:&=\\+\\$,\\"\\.a-zA-Z0-9_]*', e.src_xn = "xn--[a-z0-9\\-]{1,59}", e.src_domain_root = // Allow letters & digits (http://test1)
|
|
@@ -2510,42 +3353,42 @@ function er(u) {
|
|
|
2510
3353
|
// but can start with > (markdown blockquote)
|
|
2511
3354
|
"(^|(?![.:/\\-_@])(?:[$+<=>^`||]|" + e.src_ZPCc + "))((?![$+<=>^`||])" + e.tpl_host_port_no_ip_fuzzy_strict + e.src_path + ")", e;
|
|
2512
3355
|
}
|
|
2513
|
-
function
|
|
3356
|
+
function i0(u) {
|
|
2514
3357
|
return Array.prototype.slice.call(arguments, 1).forEach(function(t) {
|
|
2515
3358
|
t && Object.keys(t).forEach(function(n) {
|
|
2516
3359
|
u[n] = t[n];
|
|
2517
3360
|
});
|
|
2518
3361
|
}), u;
|
|
2519
3362
|
}
|
|
2520
|
-
function
|
|
3363
|
+
function Ie(u) {
|
|
2521
3364
|
return Object.prototype.toString.call(u);
|
|
2522
3365
|
}
|
|
2523
|
-
function
|
|
2524
|
-
return
|
|
3366
|
+
function Xo(u) {
|
|
3367
|
+
return Ie(u) === "[object String]";
|
|
2525
3368
|
}
|
|
2526
|
-
function
|
|
2527
|
-
return
|
|
3369
|
+
function Jo(u) {
|
|
3370
|
+
return Ie(u) === "[object Object]";
|
|
2528
3371
|
}
|
|
2529
|
-
function
|
|
2530
|
-
return
|
|
3372
|
+
function Qo(u) {
|
|
3373
|
+
return Ie(u) === "[object RegExp]";
|
|
2531
3374
|
}
|
|
2532
|
-
function
|
|
2533
|
-
return
|
|
3375
|
+
function gt(u) {
|
|
3376
|
+
return Ie(u) === "[object Function]";
|
|
2534
3377
|
}
|
|
2535
|
-
function
|
|
3378
|
+
function Ko(u) {
|
|
2536
3379
|
return u.replace(/[.?*+^$[\]\\(){}|-]/g, "\\$&");
|
|
2537
3380
|
}
|
|
2538
|
-
const
|
|
3381
|
+
const Zt = {
|
|
2539
3382
|
fuzzyLink: !0,
|
|
2540
3383
|
fuzzyEmail: !0,
|
|
2541
3384
|
fuzzyIP: !1
|
|
2542
3385
|
};
|
|
2543
|
-
function
|
|
3386
|
+
function ui(u) {
|
|
2544
3387
|
return Object.keys(u || {}).reduce(function(e, t) {
|
|
2545
|
-
return e ||
|
|
3388
|
+
return e || Zt.hasOwnProperty(t);
|
|
2546
3389
|
}, !1);
|
|
2547
3390
|
}
|
|
2548
|
-
const
|
|
3391
|
+
const ei = {
|
|
2549
3392
|
"http:": {
|
|
2550
3393
|
validate: function(u, e, t) {
|
|
2551
3394
|
const n = u.slice(e);
|
|
@@ -2577,81 +3420,81 @@ const or = {
|
|
|
2577
3420
|
)), t.re.mailto.test(n) ? n.match(t.re.mailto)[0].length : 0;
|
|
2578
3421
|
}
|
|
2579
3422
|
}
|
|
2580
|
-
},
|
|
2581
|
-
function
|
|
3423
|
+
}, ti = "a[cdefgilmnoqrstuwxz]|b[abdefghijmnorstvwyz]|c[acdfghiklmnoruvwxyz]|d[ejkmoz]|e[cegrstu]|f[ijkmor]|g[abdefghilmnpqrstuwy]|h[kmnrtu]|i[delmnoqrst]|j[emop]|k[eghimnprwyz]|l[abcikrstuvy]|m[acdeghklmnopqrstuvwxyz]|n[acefgilopruz]|om|p[aefghklmnrstwy]|qa|r[eosuw]|s[abcdeghijklmnortuvxyz]|t[cdfghjklmnortvwz]|u[agksyz]|v[aceginu]|w[fs]|y[et]|z[amw]", ni = "biz|com|edu|gov|net|org|pro|web|xxx|aero|asia|coop|info|museum|name|shop|рф".split("|");
|
|
3424
|
+
function ri(u) {
|
|
2582
3425
|
u.__index__ = -1, u.__text_cache__ = "";
|
|
2583
3426
|
}
|
|
2584
|
-
function
|
|
3427
|
+
function ci(u) {
|
|
2585
3428
|
return function(e, t) {
|
|
2586
3429
|
const n = e.slice(t);
|
|
2587
3430
|
return u.test(n) ? n.match(u)[0].length : 0;
|
|
2588
3431
|
};
|
|
2589
3432
|
}
|
|
2590
|
-
function
|
|
3433
|
+
function kt() {
|
|
2591
3434
|
return function(u, e) {
|
|
2592
3435
|
e.normalize(u);
|
|
2593
3436
|
};
|
|
2594
3437
|
}
|
|
2595
|
-
function
|
|
2596
|
-
const e = u.re =
|
|
2597
|
-
u.onCompile(), u.__tlds_replaced__ || t.push(
|
|
2598
|
-
function n(
|
|
2599
|
-
return
|
|
3438
|
+
function Se(u) {
|
|
3439
|
+
const e = u.re = Yo(u.__opts__), t = u.__tlds__.slice();
|
|
3440
|
+
u.onCompile(), u.__tlds_replaced__ || t.push(ti), t.push(e.src_xn), e.src_tlds = t.join("|");
|
|
3441
|
+
function n(o) {
|
|
3442
|
+
return o.replace("%TLDS%", e.src_tlds);
|
|
2600
3443
|
}
|
|
2601
3444
|
e.email_fuzzy = RegExp(n(e.tpl_email_fuzzy), "i"), e.link_fuzzy = RegExp(n(e.tpl_link_fuzzy), "i"), e.link_no_ip_fuzzy = RegExp(n(e.tpl_link_no_ip_fuzzy), "i"), e.host_fuzzy_test = RegExp(n(e.tpl_host_fuzzy_test), "i");
|
|
2602
3445
|
const r = [];
|
|
2603
3446
|
u.__compiled__ = {};
|
|
2604
|
-
function c(
|
|
2605
|
-
throw new Error('(LinkifyIt) Invalid schema "' +
|
|
3447
|
+
function c(o, a) {
|
|
3448
|
+
throw new Error('(LinkifyIt) Invalid schema "' + o + '": ' + a);
|
|
2606
3449
|
}
|
|
2607
|
-
Object.keys(u.__schemas__).forEach(function(
|
|
2608
|
-
const a = u.__schemas__[
|
|
3450
|
+
Object.keys(u.__schemas__).forEach(function(o) {
|
|
3451
|
+
const a = u.__schemas__[o];
|
|
2609
3452
|
if (a === null)
|
|
2610
3453
|
return;
|
|
2611
3454
|
const s = { validate: null, link: null };
|
|
2612
|
-
if (u.__compiled__[
|
|
2613
|
-
|
|
3455
|
+
if (u.__compiled__[o] = s, Jo(a)) {
|
|
3456
|
+
Qo(a.validate) ? s.validate = ci(a.validate) : gt(a.validate) ? s.validate = a.validate : c(o, a), gt(a.normalize) ? s.normalize = a.normalize : a.normalize ? c(o, a) : s.normalize = kt();
|
|
2614
3457
|
return;
|
|
2615
3458
|
}
|
|
2616
|
-
if (
|
|
2617
|
-
r.push(
|
|
3459
|
+
if (Xo(a)) {
|
|
3460
|
+
r.push(o);
|
|
2618
3461
|
return;
|
|
2619
3462
|
}
|
|
2620
|
-
c(
|
|
2621
|
-
}), r.forEach(function(
|
|
2622
|
-
u.__compiled__[u.__schemas__[
|
|
2623
|
-
}), u.__compiled__[""] = { validate: null, normalize:
|
|
2624
|
-
const
|
|
2625
|
-
return
|
|
2626
|
-
}).map(
|
|
2627
|
-
u.re.schema_test = RegExp("(^|(?!_)(?:[><|]|" + e.src_ZPCc + "))(" +
|
|
3463
|
+
c(o, a);
|
|
3464
|
+
}), r.forEach(function(o) {
|
|
3465
|
+
u.__compiled__[u.__schemas__[o]] && (u.__compiled__[o].validate = u.__compiled__[u.__schemas__[o]].validate, u.__compiled__[o].normalize = u.__compiled__[u.__schemas__[o]].normalize);
|
|
3466
|
+
}), u.__compiled__[""] = { validate: null, normalize: kt() };
|
|
3467
|
+
const i = Object.keys(u.__compiled__).filter(function(o) {
|
|
3468
|
+
return o.length > 0 && u.__compiled__[o];
|
|
3469
|
+
}).map(Ko).join("|");
|
|
3470
|
+
u.re.schema_test = RegExp("(^|(?!_)(?:[><|]|" + e.src_ZPCc + "))(" + i + ")", "i"), u.re.schema_search = RegExp("(^|(?!_)(?:[><|]|" + e.src_ZPCc + "))(" + i + ")", "ig"), u.re.schema_at_start = RegExp("^" + u.re.schema_search.source, "i"), u.re.pretest = RegExp(
|
|
2628
3471
|
"(" + u.re.schema_test.source + ")|(" + u.re.host_fuzzy_test.source + ")|@",
|
|
2629
3472
|
"i"
|
|
2630
|
-
),
|
|
3473
|
+
), ri(u);
|
|
2631
3474
|
}
|
|
2632
|
-
function
|
|
3475
|
+
function oi(u, e) {
|
|
2633
3476
|
const t = u.__index__, n = u.__last_index__, r = u.__text_cache__.slice(t, n);
|
|
2634
3477
|
this.schema = u.__schema__.toLowerCase(), this.index = t + e, this.lastIndex = n + e, this.raw = r, this.text = r, this.url = r;
|
|
2635
3478
|
}
|
|
2636
|
-
function
|
|
2637
|
-
const t = new
|
|
3479
|
+
function a0(u, e) {
|
|
3480
|
+
const t = new oi(u, e);
|
|
2638
3481
|
return u.__compiled__[t.schema].normalize(t, u), t;
|
|
2639
3482
|
}
|
|
2640
|
-
function
|
|
2641
|
-
if (!(this instanceof
|
|
2642
|
-
return new
|
|
2643
|
-
e ||
|
|
3483
|
+
function X(u, e) {
|
|
3484
|
+
if (!(this instanceof X))
|
|
3485
|
+
return new X(u, e);
|
|
3486
|
+
e || ui(u) && (e = u, u = {}), this.__opts__ = i0({}, Zt, e), this.__index__ = -1, this.__last_index__ = -1, this.__schema__ = "", this.__text_cache__ = "", this.__schemas__ = i0({}, ei, u), this.__compiled__ = {}, this.__tlds__ = ni, this.__tlds_replaced__ = !1, this.re = {}, Se(this);
|
|
2644
3487
|
}
|
|
2645
|
-
|
|
2646
|
-
return this.__schemas__[e] = t,
|
|
3488
|
+
X.prototype.add = function(e, t) {
|
|
3489
|
+
return this.__schemas__[e] = t, Se(this), this;
|
|
2647
3490
|
};
|
|
2648
|
-
|
|
2649
|
-
return this.__opts__ =
|
|
3491
|
+
X.prototype.set = function(e) {
|
|
3492
|
+
return this.__opts__ = i0(this.__opts__, e), this;
|
|
2650
3493
|
};
|
|
2651
|
-
|
|
3494
|
+
X.prototype.test = function(e) {
|
|
2652
3495
|
if (this.__text_cache__ = e, this.__index__ = -1, !e.length)
|
|
2653
3496
|
return !1;
|
|
2654
|
-
let t, n, r, c,
|
|
3497
|
+
let t, n, r, c, i, o, a, s, f;
|
|
2655
3498
|
if (this.re.schema_test.test(e)) {
|
|
2656
3499
|
for (a = this.re.schema_search, a.lastIndex = 0; (t = a.exec(e)) !== null; )
|
|
2657
3500
|
if (c = this.testSchemaAt(e, t[2], a.lastIndex), c) {
|
|
@@ -2659,63 +3502,63 @@ v.prototype.test = function(e) {
|
|
|
2659
3502
|
break;
|
|
2660
3503
|
}
|
|
2661
3504
|
}
|
|
2662
|
-
return this.__opts__.fuzzyLink && this.__compiled__["http:"] && (s = e.search(this.re.host_fuzzy_test), s >= 0 && (this.__index__ < 0 || s < this.__index__) && (n = e.match(this.__opts__.fuzzyIP ? this.re.link_fuzzy : this.re.link_no_ip_fuzzy)) !== null && (
|
|
3505
|
+
return this.__opts__.fuzzyLink && this.__compiled__["http:"] && (s = e.search(this.re.host_fuzzy_test), s >= 0 && (this.__index__ < 0 || s < this.__index__) && (n = e.match(this.__opts__.fuzzyIP ? this.re.link_fuzzy : this.re.link_no_ip_fuzzy)) !== null && (i = n.index + n[1].length, (this.__index__ < 0 || i < this.__index__) && (this.__schema__ = "", this.__index__ = i, this.__last_index__ = n.index + n[0].length))), this.__opts__.fuzzyEmail && this.__compiled__["mailto:"] && (f = e.indexOf("@"), f >= 0 && (r = e.match(this.re.email_fuzzy)) !== null && (i = r.index + r[1].length, o = r.index + r[0].length, (this.__index__ < 0 || i < this.__index__ || i === this.__index__ && o > this.__last_index__) && (this.__schema__ = "mailto:", this.__index__ = i, this.__last_index__ = o))), this.__index__ >= 0;
|
|
2663
3506
|
};
|
|
2664
|
-
|
|
3507
|
+
X.prototype.pretest = function(e) {
|
|
2665
3508
|
return this.re.pretest.test(e);
|
|
2666
3509
|
};
|
|
2667
|
-
|
|
3510
|
+
X.prototype.testSchemaAt = function(e, t, n) {
|
|
2668
3511
|
return this.__compiled__[t.toLowerCase()] ? this.__compiled__[t.toLowerCase()].validate(e, n, this) : 0;
|
|
2669
3512
|
};
|
|
2670
|
-
|
|
3513
|
+
X.prototype.match = function(e) {
|
|
2671
3514
|
const t = [];
|
|
2672
3515
|
let n = 0;
|
|
2673
|
-
this.__index__ >= 0 && this.__text_cache__ === e && (t.push(
|
|
3516
|
+
this.__index__ >= 0 && this.__text_cache__ === e && (t.push(a0(this, n)), n = this.__last_index__);
|
|
2674
3517
|
let r = n ? e.slice(n) : e;
|
|
2675
3518
|
for (; this.test(r); )
|
|
2676
|
-
t.push(
|
|
3519
|
+
t.push(a0(this, n)), r = r.slice(this.__last_index__), n += this.__last_index__;
|
|
2677
3520
|
return t.length ? t : null;
|
|
2678
3521
|
};
|
|
2679
|
-
|
|
3522
|
+
X.prototype.matchAtStart = function(e) {
|
|
2680
3523
|
if (this.__text_cache__ = e, this.__index__ = -1, !e.length) return null;
|
|
2681
3524
|
const t = this.re.schema_at_start.exec(e);
|
|
2682
3525
|
if (!t) return null;
|
|
2683
3526
|
const n = this.testSchemaAt(e, t[2], t[0].length);
|
|
2684
|
-
return n ? (this.__schema__ = t[2], this.__index__ = t.index + t[1].length, this.__last_index__ = t.index + t[0].length + n,
|
|
3527
|
+
return n ? (this.__schema__ = t[2], this.__index__ = t.index + t[1].length, this.__last_index__ = t.index + t[0].length + n, a0(this, 0)) : null;
|
|
2685
3528
|
};
|
|
2686
|
-
|
|
3529
|
+
X.prototype.tlds = function(e, t) {
|
|
2687
3530
|
return e = Array.isArray(e) ? e : [e], t ? (this.__tlds__ = this.__tlds__.concat(e).sort().filter(function(n, r, c) {
|
|
2688
3531
|
return n !== c[r - 1];
|
|
2689
|
-
}).reverse(),
|
|
3532
|
+
}).reverse(), Se(this), this) : (this.__tlds__ = e.slice(), this.__tlds_replaced__ = !0, Se(this), this);
|
|
2690
3533
|
};
|
|
2691
|
-
|
|
3534
|
+
X.prototype.normalize = function(e) {
|
|
2692
3535
|
e.schema || (e.url = "http://" + e.url), e.schema === "mailto:" && !/^mailto:/i.test(e.url) && (e.url = "mailto:" + e.url);
|
|
2693
3536
|
};
|
|
2694
|
-
|
|
3537
|
+
X.prototype.onCompile = function() {
|
|
2695
3538
|
};
|
|
2696
|
-
const
|
|
3539
|
+
const Bu = 2147483647, cu = 36, x0 = 1, oe = 26, ii = 38, ai = 700, Vt = 72, Yt = 128, Xt = "-", si = /^xn--/, li = /[^\0-\x7F]/, fi = /[\x2E\u3002\uFF0E\uFF61]/g, di = {
|
|
2697
3540
|
overflow: "Overflow: input needs wider integers to process",
|
|
2698
3541
|
"not-basic": "Illegal input >= 0x80 (not a basic code point)",
|
|
2699
3542
|
"invalid-input": "Invalid input"
|
|
2700
|
-
},
|
|
2701
|
-
function
|
|
2702
|
-
throw new RangeError(
|
|
3543
|
+
}, t0 = cu - x0, ou = Math.floor, n0 = String.fromCharCode;
|
|
3544
|
+
function pu(u) {
|
|
3545
|
+
throw new RangeError(di[u]);
|
|
2703
3546
|
}
|
|
2704
|
-
function
|
|
3547
|
+
function hi(u, e) {
|
|
2705
3548
|
const t = [];
|
|
2706
3549
|
let n = u.length;
|
|
2707
3550
|
for (; n--; )
|
|
2708
3551
|
t[n] = e(u[n]);
|
|
2709
3552
|
return t;
|
|
2710
3553
|
}
|
|
2711
|
-
function
|
|
3554
|
+
function Jt(u, e) {
|
|
2712
3555
|
const t = u.split("@");
|
|
2713
3556
|
let n = "";
|
|
2714
|
-
t.length > 1 && (n = t[0] + "@", u = t[1]), u = u.replace(
|
|
2715
|
-
const r = u.split("."), c =
|
|
3557
|
+
t.length > 1 && (n = t[0] + "@", u = t[1]), u = u.replace(fi, ".");
|
|
3558
|
+
const r = u.split("."), c = hi(r, e).join(".");
|
|
2716
3559
|
return n + c;
|
|
2717
3560
|
}
|
|
2718
|
-
function
|
|
3561
|
+
function Qt(u) {
|
|
2719
3562
|
const e = [];
|
|
2720
3563
|
let t = 0;
|
|
2721
3564
|
const n = u.length;
|
|
@@ -2729,78 +3572,78 @@ function v0(u) {
|
|
|
2729
3572
|
}
|
|
2730
3573
|
return e;
|
|
2731
3574
|
}
|
|
2732
|
-
const
|
|
2733
|
-
return u >= 48 && u < 58 ? 26 + (u - 48) : u >= 65 && u < 91 ? u - 65 : u >= 97 && u < 123 ? u - 97 :
|
|
2734
|
-
},
|
|
3575
|
+
const pi = (u) => String.fromCodePoint(...u), bi = function(u) {
|
|
3576
|
+
return u >= 48 && u < 58 ? 26 + (u - 48) : u >= 65 && u < 91 ? u - 65 : u >= 97 && u < 123 ? u - 97 : cu;
|
|
3577
|
+
}, Et = function(u, e) {
|
|
2735
3578
|
return u + 22 + 75 * (u < 26) - ((e != 0) << 5);
|
|
2736
|
-
},
|
|
3579
|
+
}, Kt = function(u, e, t) {
|
|
2737
3580
|
let n = 0;
|
|
2738
|
-
for (u = t ?
|
|
2739
|
-
u =
|
|
2740
|
-
return
|
|
2741
|
-
},
|
|
3581
|
+
for (u = t ? ou(u / ai) : u >> 1, u += ou(u / e); u > t0 * oe >> 1; n += cu)
|
|
3582
|
+
u = ou(u / t0);
|
|
3583
|
+
return ou(n + (t0 + 1) * u / (u + ii));
|
|
3584
|
+
}, un = function(u) {
|
|
2742
3585
|
const e = [], t = u.length;
|
|
2743
|
-
let n = 0, r =
|
|
2744
|
-
|
|
2745
|
-
for (let
|
|
2746
|
-
u.charCodeAt(
|
|
2747
|
-
for (let
|
|
3586
|
+
let n = 0, r = Yt, c = Vt, i = u.lastIndexOf(Xt);
|
|
3587
|
+
i < 0 && (i = 0);
|
|
3588
|
+
for (let o = 0; o < i; ++o)
|
|
3589
|
+
u.charCodeAt(o) >= 128 && pu("not-basic"), e.push(u.charCodeAt(o));
|
|
3590
|
+
for (let o = i > 0 ? i + 1 : 0; o < t; ) {
|
|
2748
3591
|
const a = n;
|
|
2749
|
-
for (let f = 1,
|
|
2750
|
-
|
|
2751
|
-
const
|
|
2752
|
-
|
|
2753
|
-
const
|
|
2754
|
-
if (
|
|
3592
|
+
for (let f = 1, h = cu; ; h += cu) {
|
|
3593
|
+
o >= t && pu("invalid-input");
|
|
3594
|
+
const _ = bi(u.charCodeAt(o++));
|
|
3595
|
+
_ >= cu && pu("invalid-input"), _ > ou((Bu - n) / f) && pu("overflow"), n += _ * f;
|
|
3596
|
+
const p = h <= c ? x0 : h >= c + oe ? oe : h - c;
|
|
3597
|
+
if (_ < p)
|
|
2755
3598
|
break;
|
|
2756
|
-
const
|
|
2757
|
-
f >
|
|
3599
|
+
const d = cu - p;
|
|
3600
|
+
f > ou(Bu / d) && pu("overflow"), f *= d;
|
|
2758
3601
|
}
|
|
2759
3602
|
const s = e.length + 1;
|
|
2760
|
-
c =
|
|
3603
|
+
c = Kt(n - a, s, a == 0), ou(n / s) > Bu - r && pu("overflow"), r += ou(n / s), n %= s, e.splice(n++, 0, r);
|
|
2761
3604
|
}
|
|
2762
3605
|
return String.fromCodePoint(...e);
|
|
2763
|
-
},
|
|
3606
|
+
}, en = function(u) {
|
|
2764
3607
|
const e = [];
|
|
2765
|
-
u =
|
|
3608
|
+
u = Qt(u);
|
|
2766
3609
|
const t = u.length;
|
|
2767
|
-
let n =
|
|
3610
|
+
let n = Yt, r = 0, c = Vt;
|
|
2768
3611
|
for (const a of u)
|
|
2769
|
-
a < 128 && e.push(
|
|
2770
|
-
const
|
|
2771
|
-
let
|
|
2772
|
-
for (
|
|
2773
|
-
let a =
|
|
3612
|
+
a < 128 && e.push(n0(a));
|
|
3613
|
+
const i = e.length;
|
|
3614
|
+
let o = i;
|
|
3615
|
+
for (i && e.push(Xt); o < t; ) {
|
|
3616
|
+
let a = Bu;
|
|
2774
3617
|
for (const f of u)
|
|
2775
3618
|
f >= n && f < a && (a = f);
|
|
2776
|
-
const s =
|
|
2777
|
-
a - n >
|
|
3619
|
+
const s = o + 1;
|
|
3620
|
+
a - n > ou((Bu - r) / s) && pu("overflow"), r += (a - n) * s, n = a;
|
|
2778
3621
|
for (const f of u)
|
|
2779
|
-
if (f < n && ++r >
|
|
2780
|
-
let
|
|
2781
|
-
for (let
|
|
2782
|
-
const
|
|
2783
|
-
if (
|
|
3622
|
+
if (f < n && ++r > Bu && pu("overflow"), f === n) {
|
|
3623
|
+
let h = r;
|
|
3624
|
+
for (let _ = cu; ; _ += cu) {
|
|
3625
|
+
const p = _ <= c ? x0 : _ >= c + oe ? oe : _ - c;
|
|
3626
|
+
if (h < p)
|
|
2784
3627
|
break;
|
|
2785
|
-
const
|
|
3628
|
+
const d = h - p, C = cu - p;
|
|
2786
3629
|
e.push(
|
|
2787
|
-
|
|
2788
|
-
),
|
|
3630
|
+
n0(Et(p + d % C, 0))
|
|
3631
|
+
), h = ou(d / C);
|
|
2789
3632
|
}
|
|
2790
|
-
e.push(
|
|
3633
|
+
e.push(n0(Et(h, 0))), c = Kt(r, s, o === i), r = 0, ++o;
|
|
2791
3634
|
}
|
|
2792
3635
|
++r, ++n;
|
|
2793
3636
|
}
|
|
2794
3637
|
return e.join("");
|
|
2795
|
-
},
|
|
2796
|
-
return
|
|
2797
|
-
return
|
|
3638
|
+
}, _i = function(u) {
|
|
3639
|
+
return Jt(u, function(e) {
|
|
3640
|
+
return si.test(e) ? un(e.slice(4).toLowerCase()) : e;
|
|
2798
3641
|
});
|
|
2799
|
-
},
|
|
2800
|
-
return
|
|
2801
|
-
return
|
|
3642
|
+
}, mi = function(u) {
|
|
3643
|
+
return Jt(u, function(e) {
|
|
3644
|
+
return li.test(e) ? "xn--" + en(e) : e;
|
|
2802
3645
|
});
|
|
2803
|
-
},
|
|
3646
|
+
}, tn = {
|
|
2804
3647
|
/**
|
|
2805
3648
|
* A string representing the current Punycode.js version number.
|
|
2806
3649
|
* @memberOf punycode
|
|
@@ -2815,14 +3658,14 @@ const gr = (u) => String.fromCodePoint(...u), Dr = function(u) {
|
|
|
2815
3658
|
* @type Object
|
|
2816
3659
|
*/
|
|
2817
3660
|
ucs2: {
|
|
2818
|
-
decode:
|
|
2819
|
-
encode:
|
|
3661
|
+
decode: Qt,
|
|
3662
|
+
encode: pi
|
|
2820
3663
|
},
|
|
2821
|
-
decode:
|
|
2822
|
-
encode:
|
|
2823
|
-
toASCII:
|
|
2824
|
-
toUnicode:
|
|
2825
|
-
},
|
|
3664
|
+
decode: un,
|
|
3665
|
+
encode: en,
|
|
3666
|
+
toASCII: mi,
|
|
3667
|
+
toUnicode: _i
|
|
3668
|
+
}, xi = {
|
|
2826
3669
|
options: {
|
|
2827
3670
|
// Enable HTML tags in source
|
|
2828
3671
|
html: !1,
|
|
@@ -2858,7 +3701,7 @@ const gr = (u) => String.fromCodePoint(...u), Dr = function(u) {
|
|
|
2858
3701
|
block: {},
|
|
2859
3702
|
inline: {}
|
|
2860
3703
|
}
|
|
2861
|
-
},
|
|
3704
|
+
}, gi = {
|
|
2862
3705
|
options: {
|
|
2863
3706
|
// Enable HTML tags in source
|
|
2864
3707
|
html: !1,
|
|
@@ -2913,7 +3756,7 @@ const gr = (u) => String.fromCodePoint(...u), Dr = function(u) {
|
|
|
2913
3756
|
]
|
|
2914
3757
|
}
|
|
2915
3758
|
}
|
|
2916
|
-
},
|
|
3759
|
+
}, ki = {
|
|
2917
3760
|
options: {
|
|
2918
3761
|
// Enable HTML tags in source
|
|
2919
3762
|
html: !0,
|
|
@@ -2987,47 +3830,47 @@ const gr = (u) => String.fromCodePoint(...u), Dr = function(u) {
|
|
|
2987
3830
|
]
|
|
2988
3831
|
}
|
|
2989
3832
|
}
|
|
2990
|
-
},
|
|
2991
|
-
default:
|
|
2992
|
-
zero:
|
|
2993
|
-
commonmark:
|
|
2994
|
-
},
|
|
2995
|
-
function
|
|
3833
|
+
}, Ei = {
|
|
3834
|
+
default: xi,
|
|
3835
|
+
zero: gi,
|
|
3836
|
+
commonmark: ki
|
|
3837
|
+
}, Ai = /^(vbscript|javascript|file|data):/, Ci = /^data:image\/(gif|png|jpeg|webp);/;
|
|
3838
|
+
function Di(u) {
|
|
2996
3839
|
const e = u.trim().toLowerCase();
|
|
2997
|
-
return
|
|
3840
|
+
return Ai.test(e) ? Ci.test(e) : !0;
|
|
2998
3841
|
}
|
|
2999
|
-
const
|
|
3000
|
-
function
|
|
3001
|
-
const e =
|
|
3002
|
-
if (e.hostname && (!e.protocol ||
|
|
3842
|
+
const nn = ["http:", "https:", "mailto:"];
|
|
3843
|
+
function yi(u) {
|
|
3844
|
+
const e = d0(u, !0);
|
|
3845
|
+
if (e.hostname && (!e.protocol || nn.indexOf(e.protocol) >= 0))
|
|
3003
3846
|
try {
|
|
3004
|
-
e.hostname =
|
|
3847
|
+
e.hostname = tn.toASCII(e.hostname);
|
|
3005
3848
|
} catch {
|
|
3006
3849
|
}
|
|
3007
|
-
return
|
|
3850
|
+
return ae(f0(e));
|
|
3008
3851
|
}
|
|
3009
|
-
function
|
|
3010
|
-
const e =
|
|
3011
|
-
if (e.hostname && (!e.protocol ||
|
|
3852
|
+
function Fi(u) {
|
|
3853
|
+
const e = d0(u, !0);
|
|
3854
|
+
if (e.hostname && (!e.protocol || nn.indexOf(e.protocol) >= 0))
|
|
3012
3855
|
try {
|
|
3013
|
-
e.hostname =
|
|
3856
|
+
e.hostname = tn.toUnicode(e.hostname);
|
|
3014
3857
|
} catch {
|
|
3015
3858
|
}
|
|
3016
|
-
return
|
|
3859
|
+
return Pu(f0(e), Pu.defaultChars + "%");
|
|
3017
3860
|
}
|
|
3018
|
-
function
|
|
3019
|
-
if (!(this instanceof
|
|
3020
|
-
return new
|
|
3021
|
-
e ||
|
|
3861
|
+
function Q(u, e) {
|
|
3862
|
+
if (!(this instanceof Q))
|
|
3863
|
+
return new Q(u, e);
|
|
3864
|
+
e || p0(u) || (e = u || {}, u = "default"), this.inline = new le(), this.block = new Me(), this.core = new _0(), this.renderer = new Uu(), this.linkify = new X(), this.validateLink = Di, this.normalizeLink = yi, this.normalizeLinkText = Fi, this.utils = Tc, this.helpers = ve({}, Rc), this.options = {}, this.configure(u), e && this.set(e);
|
|
3022
3865
|
}
|
|
3023
|
-
|
|
3024
|
-
return
|
|
3866
|
+
Q.prototype.set = function(u) {
|
|
3867
|
+
return ve(this.options, u), this;
|
|
3025
3868
|
};
|
|
3026
|
-
|
|
3869
|
+
Q.prototype.configure = function(u) {
|
|
3027
3870
|
const e = this;
|
|
3028
|
-
if (
|
|
3871
|
+
if (p0(u)) {
|
|
3029
3872
|
const t = u;
|
|
3030
|
-
if (u =
|
|
3873
|
+
if (u = Ei[t], !u)
|
|
3031
3874
|
throw new Error('Wrong `markdown-it` preset "' + t + '", check name');
|
|
3032
3875
|
}
|
|
3033
3876
|
if (!u)
|
|
@@ -3036,7 +3879,7 @@ B.prototype.configure = function(u) {
|
|
|
3036
3879
|
u.components[t].rules && e[t].ruler.enableOnly(u.components[t].rules), u.components[t].rules2 && e[t].ruler2.enableOnly(u.components[t].rules2);
|
|
3037
3880
|
}), this;
|
|
3038
3881
|
};
|
|
3039
|
-
|
|
3882
|
+
Q.prototype.enable = function(u, e) {
|
|
3040
3883
|
let t = [];
|
|
3041
3884
|
Array.isArray(u) || (u = [u]), ["core", "block", "inline"].forEach(function(r) {
|
|
3042
3885
|
t = t.concat(this[r].ruler.enable(u, !0));
|
|
@@ -3048,7 +3891,7 @@ B.prototype.enable = function(u, e) {
|
|
|
3048
3891
|
throw new Error("MarkdownIt. Failed to enable unknown rule(s): " + n);
|
|
3049
3892
|
return this;
|
|
3050
3893
|
};
|
|
3051
|
-
|
|
3894
|
+
Q.prototype.disable = function(u, e) {
|
|
3052
3895
|
let t = [];
|
|
3053
3896
|
Array.isArray(u) || (u = [u]), ["core", "block", "inline"].forEach(function(r) {
|
|
3054
3897
|
t = t.concat(this[r].ruler.disable(u, !0));
|
|
@@ -3060,153 +3903,84 @@ B.prototype.disable = function(u, e) {
|
|
|
3060
3903
|
throw new Error("MarkdownIt. Failed to disable unknown rule(s): " + n);
|
|
3061
3904
|
return this;
|
|
3062
3905
|
};
|
|
3063
|
-
|
|
3906
|
+
Q.prototype.use = function(u) {
|
|
3064
3907
|
const e = [this].concat(Array.prototype.slice.call(arguments, 1));
|
|
3065
3908
|
return u.apply(u, e), this;
|
|
3066
3909
|
};
|
|
3067
|
-
|
|
3910
|
+
Q.prototype.parse = function(u, e) {
|
|
3068
3911
|
if (typeof u != "string")
|
|
3069
3912
|
throw new Error("Input data should be a String");
|
|
3070
3913
|
const t = new this.core.State(u, this, e);
|
|
3071
3914
|
return this.core.process(t), t.tokens;
|
|
3072
3915
|
};
|
|
3073
|
-
|
|
3916
|
+
Q.prototype.render = function(u, e) {
|
|
3074
3917
|
return e = e || {}, this.renderer.render(this.parse(u, e), this.options, e);
|
|
3075
3918
|
};
|
|
3076
|
-
|
|
3919
|
+
Q.prototype.parseInline = function(u, e) {
|
|
3077
3920
|
const t = new this.core.State(u, this, e);
|
|
3078
3921
|
return t.inlineMode = !0, this.core.process(t), t.tokens;
|
|
3079
3922
|
};
|
|
3080
|
-
|
|
3923
|
+
Q.prototype.renderInline = function(u, e) {
|
|
3081
3924
|
return e = e || {}, this.renderer.render(this.parseInline(u, e), this.options, e);
|
|
3082
3925
|
};
|
|
3083
|
-
|
|
3084
|
-
|
|
3085
|
-
|
|
3086
|
-
|
|
3087
|
-
|
|
3088
|
-
|
|
3089
|
-
|
|
3090
|
-
key: 2,
|
|
3091
|
-
class: "tr-bubbule__aborted"
|
|
3092
|
-
}, Nr = {
|
|
3093
|
-
key: 0,
|
|
3094
|
-
class: "tr-bubbule__footer"
|
|
3095
|
-
}, $r = /* @__PURE__ */ c0({
|
|
3096
|
-
__name: "Bubble",
|
|
3097
|
-
props: {
|
|
3098
|
-
content: { default: "" },
|
|
3099
|
-
id: {},
|
|
3100
|
-
placement: { default: "start" },
|
|
3101
|
-
avatar: {},
|
|
3102
|
-
role: {},
|
|
3103
|
-
type: { default: "text" },
|
|
3104
|
-
loading: { type: Boolean },
|
|
3105
|
-
aborted: { type: Boolean },
|
|
3106
|
-
mdConfig: {},
|
|
3107
|
-
maxWidth: { default: "80%" }
|
|
3108
|
-
},
|
|
3109
|
-
setup(u) {
|
|
3110
|
-
L0((o) => ({
|
|
3111
|
-
"2f6c8c8c": P0(V0)(e.maxWidth)
|
|
3112
|
-
}));
|
|
3113
|
-
const e = u, t = O0(), n = au(() => B(e.mdConfig || {})), r = au(() => e.type === "markdown" ? n.value.render(e.content) : e.content), c = au(() => e.placement === "start");
|
|
3114
|
-
return (o, i) => (S(), L("div", {
|
|
3115
|
-
class: i0([
|
|
3116
|
-
"tr-bubble",
|
|
3117
|
-
{
|
|
3118
|
-
"placement-start": c.value,
|
|
3119
|
-
"placement-end": !c.value
|
|
3120
|
-
}
|
|
3121
|
-
])
|
|
3122
|
-
}, [
|
|
3123
|
-
e.avatar ? (S(), L("div", Ir, [
|
|
3124
|
-
(S(), yu(o0(e.avatar)))
|
|
3125
|
-
])) : _u("", !0),
|
|
3126
|
-
Z("div", Mr, [
|
|
3127
|
-
e.loading ? mu(o.$slots, "loading", {
|
|
3128
|
-
key: 0,
|
|
3129
|
-
bubbleProps: e
|
|
3130
|
-
}, () => [
|
|
3131
|
-
i[0] || (i[0] = Z("div", { class: "tr-bubble__loading" }, [
|
|
3132
|
-
Z("span"),
|
|
3133
|
-
Z("span"),
|
|
3134
|
-
Z("span")
|
|
3135
|
-
], -1))
|
|
3136
|
-
], !0) : (S(), L("div", qr, [
|
|
3137
|
-
Z("div", Rr, [
|
|
3138
|
-
mu(o.$slots, "default", { bubbleProps: e }, () => [
|
|
3139
|
-
e.type === "markdown" ? (S(), L("span", {
|
|
3140
|
-
key: 0,
|
|
3141
|
-
innerHTML: r.value
|
|
3142
|
-
}, null, 8, Lr)) : (S(), L("span", Pr, N0(r.value), 1)),
|
|
3143
|
-
e.aborted ? (S(), L("span", Or, "(用户停止)")) : _u("", !0)
|
|
3144
|
-
], !0)
|
|
3145
|
-
]),
|
|
3146
|
-
t.footer ? (S(), L("div", Nr, [
|
|
3147
|
-
mu(o.$slots, "footer", { bubbleProps: e }, void 0, !0)
|
|
3148
|
-
])) : _u("", !0)
|
|
3149
|
-
]))
|
|
3150
|
-
])
|
|
3151
|
-
], 2));
|
|
3926
|
+
class Pi extends s0 {
|
|
3927
|
+
constructor(t, n) {
|
|
3928
|
+
super();
|
|
3929
|
+
xe(this, "mdConfig");
|
|
3930
|
+
xe(this, "dompurifyConfig");
|
|
3931
|
+
xe(this, "md");
|
|
3932
|
+
this.mdConfig = t || {}, this.dompurifyConfig = n || {}, this.md = Q(this.mdConfig);
|
|
3152
3933
|
}
|
|
3153
|
-
|
|
3154
|
-
|
|
3934
|
+
render(t) {
|
|
3935
|
+
let n = "";
|
|
3936
|
+
try {
|
|
3937
|
+
n = this.md.render(t.content ?? "");
|
|
3938
|
+
} catch (c) {
|
|
3939
|
+
console.error("Error rendering markdown:", c), n = t.content ?? "";
|
|
3940
|
+
}
|
|
3941
|
+
if (this.dompurifyConfig.disable)
|
|
3942
|
+
return console.warn("HTML sanitization is disabled, potential XSS risk"), Z0("div", { innerHTML: n });
|
|
3943
|
+
const r = qr.sanitize(n, this.dompurifyConfig);
|
|
3944
|
+
return Z0("div", { innerHTML: r });
|
|
3945
|
+
}
|
|
3946
|
+
}
|
|
3947
|
+
const ie = /* @__PURE__ */ ku({
|
|
3948
|
+
__name: "BubbleProvider",
|
|
3155
3949
|
props: {
|
|
3156
|
-
|
|
3157
|
-
roles: {},
|
|
3158
|
-
autoScroll: { type: Boolean }
|
|
3950
|
+
messageRenderers: { default: () => ({}) }
|
|
3159
3951
|
},
|
|
3160
3952
|
setup(u) {
|
|
3161
|
-
const e = u, t =
|
|
3162
|
-
|
|
3163
|
-
|
|
3164
|
-
|
|
3165
|
-
|
|
3166
|
-
|
|
3167
|
-
return (i = r.value) == null ? void 0 : i.content;
|
|
3168
|
-
}], () => {
|
|
3169
|
-
!e.autoScroll || !t.value || (n.value = t.value.scrollHeight);
|
|
3170
|
-
});
|
|
3171
|
-
const c = (i) => {
|
|
3172
|
-
var b;
|
|
3173
|
-
const a = i.role ? ((b = e.roles) == null ? void 0 : b[i.role]) || {} : {}, { slots: s, ...f } = a, { slots: d, ...h } = i;
|
|
3174
|
-
return { ...f, ...h };
|
|
3175
|
-
}, o = (i) => {
|
|
3176
|
-
var s;
|
|
3177
|
-
return { ...(i.role ? ((s = e.roles) == null ? void 0 : s[i.role]) || {} : {}).slots, ...i.slots };
|
|
3178
|
-
};
|
|
3179
|
-
return (i, a) => (S(), L("div", {
|
|
3180
|
-
class: "tr-bubble-list",
|
|
3181
|
-
ref_key: "scrollContainerRef",
|
|
3182
|
-
ref: t
|
|
3183
|
-
}, [
|
|
3184
|
-
(S(!0), L(U0, null, Ou(e.items, (s, f) => (S(), yu(J, Nu({
|
|
3185
|
-
key: s.id || f
|
|
3186
|
-
}, { ref_for: !0 }, c(s)), Z0({ _: 2 }, [
|
|
3187
|
-
Ou(o(s), (d, h) => ({
|
|
3188
|
-
name: h,
|
|
3189
|
-
fn: H0((b) => [
|
|
3190
|
-
(S(), yu(o0(o(s)[h]), Nu({ ref_for: !0 }, b), null, 16))
|
|
3191
|
-
])
|
|
3192
|
-
}))
|
|
3193
|
-
]), 1040))), 128))
|
|
3194
|
-
], 512));
|
|
3953
|
+
const e = u, t = /* @__PURE__ */ new Map();
|
|
3954
|
+
for (const [n, r] of yt.entries())
|
|
3955
|
+
t.set(n, r);
|
|
3956
|
+
for (const [n, r] of Object.entries(e.messageRenderers))
|
|
3957
|
+
t.set(n, r);
|
|
3958
|
+
return V0(Ft, t), V0(Tt, l0), (n, r) => Ce(n.$slots, "default");
|
|
3195
3959
|
}
|
|
3196
|
-
})
|
|
3197
|
-
|
|
3198
|
-
const
|
|
3199
|
-
u.component(
|
|
3200
|
-
};
|
|
3201
|
-
|
|
3202
|
-
const
|
|
3203
|
-
|
|
3204
|
-
const
|
|
3205
|
-
u.component(
|
|
3206
|
-
};
|
|
3207
|
-
|
|
3208
|
-
const
|
|
3960
|
+
});
|
|
3961
|
+
Du.name = "TrBubble";
|
|
3962
|
+
const Ti = function(u) {
|
|
3963
|
+
u.component(Du.name, Du);
|
|
3964
|
+
};
|
|
3965
|
+
Du.install = Ti;
|
|
3966
|
+
const zi = Du;
|
|
3967
|
+
te.name = "TrBubbleList";
|
|
3968
|
+
const Si = function(u) {
|
|
3969
|
+
u.component(te.name, te);
|
|
3970
|
+
};
|
|
3971
|
+
te.install = Si;
|
|
3972
|
+
const qi = te;
|
|
3973
|
+
ie.name = "TrBubbleProvider";
|
|
3974
|
+
const wi = function(u) {
|
|
3975
|
+
u.component(ie.name, ie);
|
|
3976
|
+
};
|
|
3977
|
+
ie.install = wi;
|
|
3978
|
+
const Ui = ie;
|
|
3209
3979
|
export {
|
|
3210
|
-
|
|
3211
|
-
|
|
3980
|
+
zi as Bubble,
|
|
3981
|
+
Bi as BubbleChainMessageRenderer,
|
|
3982
|
+
qi as BubbleList,
|
|
3983
|
+
Pi as BubbleMarkdownMessageRenderer,
|
|
3984
|
+
s0 as BubbleMessageClassRenderer,
|
|
3985
|
+
Ui as BubbleProvider
|
|
3212
3986
|
};
|