xmmath 1.0.5 โ 1.0.7
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/xmmath.es.js +519 -480
- package/dist/xmmath.es.js.map +1 -1
- package/dist/xmmath.umd.js +4 -2
- package/dist/xmmath.umd.js.map +1 -1
- package/package.json +1 -1
- package/readme.md +39 -0
- package/src/main.ts +85 -27
- package/src/symbols.json +2 -0
package/dist/xmmath.es.js
CHANGED
|
@@ -1,97 +1,97 @@
|
|
|
1
|
-
function
|
|
1
|
+
function h0(n) {
|
|
2
2
|
return n && n.__esModule && Object.prototype.hasOwnProperty.call(n, "default") ? n.default : n;
|
|
3
3
|
}
|
|
4
4
|
var B0 = { exports: {} };
|
|
5
5
|
(function(n) {
|
|
6
6
|
function l() {
|
|
7
|
-
var t = 0, r = 1,
|
|
8
|
-
function
|
|
9
|
-
return 55296 <= x.charCodeAt(
|
|
7
|
+
var t = 0, r = 1, C = 2, B = 3, a = 4, p = 5, F = 6, h = 7, b = 8, v = 9, i = 10, s = 11, f = 12, u = 13, D = 14, m = 15, O = 16, $ = 17, z = 0, U = 1, X = 2, A0 = 3, F0 = 4;
|
|
8
|
+
function p0(x, g) {
|
|
9
|
+
return 55296 <= x.charCodeAt(g) && x.charCodeAt(g) <= 56319 && 56320 <= x.charCodeAt(g + 1) && x.charCodeAt(g + 1) <= 57343;
|
|
10
10
|
}
|
|
11
|
-
function
|
|
12
|
-
|
|
13
|
-
var
|
|
14
|
-
if (55296 <=
|
|
15
|
-
var
|
|
16
|
-
return 56320 <=
|
|
11
|
+
function o(x, g) {
|
|
12
|
+
g === void 0 && (g = 0);
|
|
13
|
+
var q = x.charCodeAt(g);
|
|
14
|
+
if (55296 <= q && q <= 56319 && g < x.length - 1) {
|
|
15
|
+
var y = q, k = x.charCodeAt(g + 1);
|
|
16
|
+
return 56320 <= k && k <= 57343 ? (y - 55296) * 1024 + (k - 56320) + 65536 : y;
|
|
17
17
|
}
|
|
18
|
-
if (56320 <=
|
|
19
|
-
var
|
|
20
|
-
return 55296 <=
|
|
18
|
+
if (56320 <= q && q <= 57343 && g >= 1) {
|
|
19
|
+
var y = x.charCodeAt(g - 1), k = q;
|
|
20
|
+
return 55296 <= y && y <= 56319 ? (y - 55296) * 1024 + (k - 56320) + 65536 : k;
|
|
21
21
|
}
|
|
22
|
-
return
|
|
22
|
+
return q;
|
|
23
23
|
}
|
|
24
|
-
function
|
|
25
|
-
var
|
|
26
|
-
if (
|
|
27
|
-
return
|
|
28
|
-
}) && [B,
|
|
29
|
-
return
|
|
30
|
-
var
|
|
31
|
-
if (
|
|
32
|
-
return
|
|
33
|
-
}) && [
|
|
34
|
-
return
|
|
35
|
-
return
|
|
36
|
-
}).length % 2 == 1 ?
|
|
37
|
-
if (
|
|
38
|
-
return
|
|
39
|
-
if (
|
|
40
|
-
return
|
|
41
|
-
return
|
|
42
|
-
}) ?
|
|
43
|
-
if (
|
|
44
|
-
return
|
|
45
|
-
if (
|
|
46
|
-
return
|
|
47
|
-
if ((
|
|
48
|
-
return
|
|
49
|
-
if ((
|
|
50
|
-
return
|
|
51
|
-
if (
|
|
52
|
-
return
|
|
53
|
-
if (
|
|
54
|
-
return
|
|
55
|
-
if (
|
|
56
|
-
return
|
|
57
|
-
var
|
|
58
|
-
return [
|
|
59
|
-
return
|
|
60
|
-
}) &&
|
|
24
|
+
function f0(x, g, q) {
|
|
25
|
+
var y = [x].concat(g).concat([q]), k = y[y.length - 2], w = q, c = y.lastIndexOf(D);
|
|
26
|
+
if (c > 1 && y.slice(1, c).every(function(M) {
|
|
27
|
+
return M == B;
|
|
28
|
+
}) && [B, u, $].indexOf(x) == -1)
|
|
29
|
+
return X;
|
|
30
|
+
var x0 = y.lastIndexOf(a);
|
|
31
|
+
if (x0 > 0 && y.slice(1, x0).every(function(M) {
|
|
32
|
+
return M == a;
|
|
33
|
+
}) && [f, a].indexOf(k) == -1)
|
|
34
|
+
return y.filter(function(M) {
|
|
35
|
+
return M == a;
|
|
36
|
+
}).length % 2 == 1 ? A0 : F0;
|
|
37
|
+
if (k == t && w == r)
|
|
38
|
+
return z;
|
|
39
|
+
if (k == C || k == t || k == r)
|
|
40
|
+
return w == D && g.every(function(M) {
|
|
41
|
+
return M == B;
|
|
42
|
+
}) ? X : U;
|
|
43
|
+
if (w == C || w == t || w == r)
|
|
44
|
+
return U;
|
|
45
|
+
if (k == F && (w == F || w == h || w == v || w == i))
|
|
46
|
+
return z;
|
|
47
|
+
if ((k == v || k == h) && (w == h || w == b))
|
|
48
|
+
return z;
|
|
49
|
+
if ((k == i || k == b) && w == b)
|
|
50
|
+
return z;
|
|
51
|
+
if (w == B || w == m)
|
|
52
|
+
return z;
|
|
53
|
+
if (w == p)
|
|
54
|
+
return z;
|
|
55
|
+
if (k == f)
|
|
56
|
+
return z;
|
|
57
|
+
var n0 = y.indexOf(B) != -1 ? y.lastIndexOf(B) - 1 : y.length - 2;
|
|
58
|
+
return [u, $].indexOf(y[n0]) != -1 && y.slice(n0 + 1, -1).every(function(M) {
|
|
59
|
+
return M == B;
|
|
60
|
+
}) && w == D || k == m && [O, $].indexOf(w) != -1 ? z : g.indexOf(a) != -1 ? X : k == a && w == a ? z : U;
|
|
61
61
|
}
|
|
62
|
-
this.nextBreak = function(x,
|
|
63
|
-
if (
|
|
62
|
+
this.nextBreak = function(x, g) {
|
|
63
|
+
if (g === void 0 && (g = 0), g < 0)
|
|
64
64
|
return 0;
|
|
65
|
-
if (
|
|
65
|
+
if (g >= x.length - 1)
|
|
66
66
|
return x.length;
|
|
67
|
-
for (var
|
|
68
|
-
if (!
|
|
69
|
-
var
|
|
70
|
-
if (
|
|
71
|
-
return
|
|
72
|
-
|
|
67
|
+
for (var q = d(o(x, g)), y = [], k = g + 1; k < x.length; k++)
|
|
68
|
+
if (!p0(x, k - 1)) {
|
|
69
|
+
var w = d(o(x, k));
|
|
70
|
+
if (f0(q, y, w))
|
|
71
|
+
return k;
|
|
72
|
+
y.push(w);
|
|
73
73
|
}
|
|
74
74
|
return x.length;
|
|
75
75
|
}, this.splitGraphemes = function(x) {
|
|
76
|
-
for (var
|
|
77
|
-
|
|
78
|
-
return
|
|
76
|
+
for (var g = [], q = 0, y; (y = this.nextBreak(x, q)) < x.length; )
|
|
77
|
+
g.push(x.slice(q, y)), q = y;
|
|
78
|
+
return q < x.length && g.push(x.slice(q)), g;
|
|
79
79
|
}, this.iterateGraphemes = function(x) {
|
|
80
|
-
var
|
|
80
|
+
var g = 0, q = {
|
|
81
81
|
next: function() {
|
|
82
|
-
var
|
|
83
|
-
return (
|
|
82
|
+
var y, k;
|
|
83
|
+
return (k = this.nextBreak(x, g)) < x.length ? (y = x.slice(g, k), g = k, { value: y, done: !1 }) : g < x.length ? (y = x.slice(g), g = x.length, { value: y, done: !1 }) : { value: void 0, done: !0 };
|
|
84
84
|
}.bind(this)
|
|
85
85
|
};
|
|
86
|
-
return typeof Symbol < "u" && Symbol.iterator && (
|
|
87
|
-
return
|
|
88
|
-
}),
|
|
86
|
+
return typeof Symbol < "u" && Symbol.iterator && (q[Symbol.iterator] = function() {
|
|
87
|
+
return q;
|
|
88
|
+
}), q;
|
|
89
89
|
}, this.countGraphemes = function(x) {
|
|
90
|
-
for (var
|
|
91
|
-
|
|
92
|
-
return
|
|
90
|
+
for (var g = 0, q = 0, y; (y = this.nextBreak(x, q)) < x.length; )
|
|
91
|
+
q = y, g++;
|
|
92
|
+
return q < x.length && g++, g;
|
|
93
93
|
};
|
|
94
|
-
function
|
|
94
|
+
function d(x) {
|
|
95
95
|
return 1536 <= x && x <= 1541 || // Cf [6] ARABIC NUMBER SIGN..ARABIC NUMBER MARK ABOVE
|
|
96
96
|
x == 1757 || // Cf ARABIC END OF AYAH
|
|
97
97
|
x == 1807 || // Cf SYRIAC ABBREVIATION MARK
|
|
@@ -101,7 +101,7 @@ var B0 = { exports: {} };
|
|
|
101
101
|
70082 <= x && x <= 70083 || // Lo [2] SHARADA SIGN JIHVAMULIYA..SHARADA SIGN UPADHMANIYA
|
|
102
102
|
x == 72250 || // Lo ZANABAZAR SQUARE CLUSTER-INITIAL LETTER RA
|
|
103
103
|
72326 <= x && x <= 72329 || // Lo [4] SOYOMBO CLUSTER-INITIAL LETTER RA..SOYOMBO CLUSTER-INITIAL LETTER SA
|
|
104
|
-
x == 73030 ?
|
|
104
|
+
x == 73030 ? f : x == 13 ? t : x == 10 ? r : 0 <= x && x <= 9 || // Cc [10] <control-0000>..<control-0009>
|
|
105
105
|
11 <= x && x <= 12 || // Cc [2] <control-000B>..<control-000C>
|
|
106
106
|
14 <= x && x <= 31 || // Cc [18] <control-000E>..<control-001F>
|
|
107
107
|
127 <= x && x <= 159 || // Cc [33] <control-007F>..<control-009F>
|
|
@@ -126,7 +126,7 @@ var B0 = { exports: {} };
|
|
|
126
126
|
x == 917505 || // Cf LANGUAGE TAG
|
|
127
127
|
917506 <= x && x <= 917535 || // Cn [30] <reserved-E0002>..<reserved-E001F>
|
|
128
128
|
917632 <= x && x <= 917759 || // Cn [128] <reserved-E0080>..<reserved-E00FF>
|
|
129
|
-
918e3 <= x && x <= 921599 ?
|
|
129
|
+
918e3 <= x && x <= 921599 ? C : 768 <= x && x <= 879 || // Mn [112] COMBINING GRAVE ACCENT..COMBINING LATIN SMALL LETTER X
|
|
130
130
|
1155 <= x && x <= 1159 || // Mn [5] COMBINING CYRILLIC TITLO..COMBINING CYRILLIC POKRYTIE
|
|
131
131
|
1160 <= x && x <= 1161 || // Me [2] COMBINING CYRILLIC HUNDRED THOUSANDS SIGN..COMBINING CYRILLIC MILLIONS SIGN
|
|
132
132
|
1425 <= x && x <= 1469 || // Mn [45] HEBREW ACCENT ETNAHTA..HEBREW POINT METEG
|
|
@@ -598,10 +598,10 @@ var B0 = { exports: {} };
|
|
|
598
598
|
x == 72884 || // Mc MARCHEN VOWEL SIGN O
|
|
599
599
|
94033 <= x && x <= 94078 || // Mc [46] MIAO SIGN ASPIRATION..MIAO VOWEL SIGN NG
|
|
600
600
|
x == 119142 || // Mc MUSICAL SYMBOL COMBINING SPRECHGESANG STEM
|
|
601
|
-
x == 119149 ?
|
|
602
|
-
43360 <= x && x <= 43388 ?
|
|
603
|
-
55216 <= x && x <= 55238 ?
|
|
604
|
-
55243 <= x && x <= 55291 ?
|
|
601
|
+
x == 119149 ? p : 4352 <= x && x <= 4447 || // Lo [96] HANGUL CHOSEONG KIYEOK..HANGUL CHOSEONG FILLER
|
|
602
|
+
43360 <= x && x <= 43388 ? F : 4448 <= x && x <= 4519 || // Lo [72] HANGUL JUNGSEONG FILLER..HANGUL JUNGSEONG O-YAE
|
|
603
|
+
55216 <= x && x <= 55238 ? h : 4520 <= x && x <= 4607 || // Lo [88] HANGUL JONGSEONG KIYEOK..HANGUL JONGSEONG SSANGNIEUN
|
|
604
|
+
55243 <= x && x <= 55291 ? b : x == 44032 || // Lo HANGUL SYLLABLE GA
|
|
605
605
|
x == 44060 || // Lo HANGUL SYLLABLE GAE
|
|
606
606
|
x == 44088 || // Lo HANGUL SYLLABLE GYA
|
|
607
607
|
x == 44116 || // Lo HANGUL SYLLABLE GYAE
|
|
@@ -1397,7 +1397,7 @@ var B0 = { exports: {} };
|
|
|
1397
1397
|
55093 <= x && x <= 55119 || // Lo [27] HANGUL SYLLABLE HYUG..HANGUL SYLLABLE HYUH
|
|
1398
1398
|
55121 <= x && x <= 55147 || // Lo [27] HANGUL SYLLABLE HEUG..HANGUL SYLLABLE HEUH
|
|
1399
1399
|
55149 <= x && x <= 55175 || // Lo [27] HANGUL SYLLABLE HYIG..HANGUL SYLLABLE HYIH
|
|
1400
|
-
55177 <= x && x <= 55203 ?
|
|
1400
|
+
55177 <= x && x <= 55203 ? i : x == 9757 || // So WHITE UP POINTING INDEX
|
|
1401
1401
|
x == 9977 || // So PERSON WITH BALL
|
|
1402
1402
|
9994 <= x && x <= 9997 || // So [4] RAISED FIST..WRITING HAND
|
|
1403
1403
|
x == 127877 || // So FATHER CHRISTMAS
|
|
@@ -1427,7 +1427,7 @@ var B0 = { exports: {} };
|
|
|
1427
1427
|
x == 129318 || // So FACE PALM
|
|
1428
1428
|
129328 <= x && x <= 129337 || // So [10] PREGNANT WOMAN..JUGGLING
|
|
1429
1429
|
129341 <= x && x <= 129342 || // So [2] WATER POLO..HANDBALL
|
|
1430
|
-
129489 <= x && x <= 129501 ?
|
|
1430
|
+
129489 <= x && x <= 129501 ? u : 127995 <= x && x <= 127999 ? D : x == 8205 ? m : x == 9792 || // So FEMALE SIGN
|
|
1431
1431
|
x == 9794 || // So MALE SIGN
|
|
1432
1432
|
9877 <= x && x <= 9878 || // So [2] STAFF OF AESCULAPIUS..SCALES
|
|
1433
1433
|
x == 9992 || // So AIRPLANE
|
|
@@ -1446,14 +1446,14 @@ var B0 = { exports: {} };
|
|
|
1446
1446
|
x == 128300 || // So MICROSCOPE
|
|
1447
1447
|
x == 128488 || // So LEFT SPEECH BUBBLE
|
|
1448
1448
|
x == 128640 || // So ROCKET
|
|
1449
|
-
x == 128658 ?
|
|
1449
|
+
x == 128658 ? O : 128102 <= x && x <= 128105 ? $ : s;
|
|
1450
1450
|
}
|
|
1451
1451
|
return this;
|
|
1452
1452
|
}
|
|
1453
1453
|
n.exports && (n.exports = l);
|
|
1454
1454
|
})(B0);
|
|
1455
|
-
var
|
|
1456
|
-
const
|
|
1455
|
+
var b0 = B0.exports;
|
|
1456
|
+
const E0 = /* @__PURE__ */ h0(b0), m0 = `{
|
|
1457
1457
|
"wj": "โ ",
|
|
1458
1458
|
"zwj": "โ",
|
|
1459
1459
|
"zwnj": "โ",
|
|
@@ -1640,6 +1640,7 @@ const p0 = /* @__PURE__ */ s0(F0), f0 = `{
|
|
|
1640
1640
|
"dot": "โ",
|
|
1641
1641
|
"double": "โซ",
|
|
1642
1642
|
"eq": "โฅ",
|
|
1643
|
+
"eq.slant": "โฉพ",
|
|
1643
1644
|
"eq.lt": "โ",
|
|
1644
1645
|
"eq.not": "โฑ",
|
|
1645
1646
|
"eqq": "โง",
|
|
@@ -1666,6 +1667,7 @@ const p0 = /* @__PURE__ */ s0(F0), f0 = `{
|
|
|
1666
1667
|
"dot": "โ",
|
|
1667
1668
|
"double": "โช",
|
|
1668
1669
|
"eq": "โค",
|
|
1670
|
+
"eq.slant": "โฉฝ",
|
|
1669
1671
|
"eq.gt": "โ",
|
|
1670
1672
|
"eq.not": "โฐ",
|
|
1671
1673
|
"eqq": "โฆ",
|
|
@@ -2226,87 +2228,87 @@ const p0 = /* @__PURE__ */ s0(F0), f0 = `{
|
|
|
2226
2228
|
"dotless": [{ "i": "๐ค", "j": "๐ฅ" }]
|
|
2227
2229
|
}
|
|
2228
2230
|
`;
|
|
2229
|
-
function
|
|
2231
|
+
function A(n, l, t) {
|
|
2230
2232
|
let r = document.createElementNS("http://www.w3.org/1998/Math/MathML", n);
|
|
2231
2233
|
if (l && (r.textContent = l), t)
|
|
2232
|
-
for (let
|
|
2233
|
-
r.setAttribute(
|
|
2234
|
+
for (let C in t)
|
|
2235
|
+
r.setAttribute(C, t[C]);
|
|
2234
2236
|
return r;
|
|
2235
2237
|
}
|
|
2236
|
-
const
|
|
2237
|
-
var
|
|
2238
|
-
function
|
|
2239
|
-
let l = /[a-zA-Z]/, t = /[\(\)]/, r = /[ \t\n\r]+/,
|
|
2238
|
+
const Z = "mathvariant";
|
|
2239
|
+
var v0 = new E0();
|
|
2240
|
+
function g0(n) {
|
|
2241
|
+
let l = /[a-zA-Z]/, t = /[\(\)]/, r = /[ \t\n\r]+/, C = "", B = [], a = [], p = B, F = "";
|
|
2240
2242
|
n = n.replace(/(\\u\{[\dA-Fa-f]+\})/g, (v) => {
|
|
2241
|
-
const
|
|
2242
|
-
return String.fromCodePoint(
|
|
2243
|
+
const i = parseInt(v.slice(3, -1), 16);
|
|
2244
|
+
return String.fromCodePoint(i);
|
|
2243
2245
|
});
|
|
2244
|
-
let
|
|
2246
|
+
let h = [];
|
|
2245
2247
|
for (let v = 0; v < n.length; v++) {
|
|
2246
|
-
const
|
|
2247
|
-
if (
|
|
2248
|
-
|
|
2248
|
+
const i = n[v];
|
|
2249
|
+
if (i == '"' && n[v - 1] != "\\") {
|
|
2250
|
+
C != "str" ? C = "str" : C = "";
|
|
2249
2251
|
continue;
|
|
2250
2252
|
}
|
|
2251
|
-
|
|
2253
|
+
C != "str" && (i == "(" && h.push(v), i == ")" && (h.length == 0 || n[v - 1] != "\\" && h.pop()));
|
|
2252
2254
|
}
|
|
2253
|
-
let
|
|
2254
|
-
for (let v = 0; v <
|
|
2255
|
-
const
|
|
2256
|
-
if (
|
|
2257
|
-
|
|
2255
|
+
let b = e.emoji ? v0.splitGraphemes(n) : [...n];
|
|
2256
|
+
for (let v = 0; v < b.length; v++) {
|
|
2257
|
+
const i = b[v];
|
|
2258
|
+
if (i == '"' && b[v - 1] != "\\") {
|
|
2259
|
+
C != "str" ? C = "str" : (p.push({ type: C, value: F }), C = "", F = "");
|
|
2258
2260
|
continue;
|
|
2259
2261
|
}
|
|
2260
|
-
if (
|
|
2261
|
-
|
|
2262
|
+
if (C == "str") {
|
|
2263
|
+
F += i;
|
|
2262
2264
|
continue;
|
|
2263
2265
|
}
|
|
2264
|
-
if (
|
|
2265
|
-
|
|
2266
|
+
if (i.match(r) && (C = "blank"), C == "blank" && !i.match(r) && (p.push({ type: C, value: "" }), C = ""), C == "" && (!b[v - 1] || !b[v - 1].match(l)) && (!b[v + 1] || !b[v + 1].match(l)) && !i.match(t)) {
|
|
2267
|
+
p.push({ type: "v", value: i });
|
|
2266
2268
|
continue;
|
|
2267
2269
|
}
|
|
2268
|
-
if (
|
|
2269
|
-
|
|
2270
|
+
if (C == "" && !i.match(l) && !i.match(t)) {
|
|
2271
|
+
p.push({ type: "v", value: i });
|
|
2270
2272
|
continue;
|
|
2271
2273
|
}
|
|
2272
|
-
if ((
|
|
2273
|
-
if (
|
|
2274
|
-
|
|
2274
|
+
if ((b[v - 1] && b[v - 1].match(l) || b[v + 1] && b[v + 1].match(l)) && i.match(l) && (C = "f"), C == "f" && (F += i), C == "f" && (!b[v + 1] || !b[v + 1].match(l)) && (p.push({ type: C, value: F }), C = "", F = ""), i == "(")
|
|
2275
|
+
if (h.includes(v) || b[v - 1] == "\\")
|
|
2276
|
+
p.push({ type: "v", value: i });
|
|
2275
2277
|
else {
|
|
2276
|
-
a.push({ tree:
|
|
2278
|
+
a.push({ tree: p, close: !1 }), p.push({ type: "group", value: F, children: [] }), p = p.at(-1).children, F = "";
|
|
2277
2279
|
continue;
|
|
2278
2280
|
}
|
|
2279
|
-
if (
|
|
2281
|
+
if (i == ")")
|
|
2280
2282
|
if (a.at(-1)) {
|
|
2281
2283
|
if (a.at(-1).close == !1) {
|
|
2282
|
-
a.at(-1).close = !0,
|
|
2284
|
+
a.at(-1).close = !0, p = a.at(-1).tree, a.pop();
|
|
2283
2285
|
continue;
|
|
2284
2286
|
}
|
|
2285
2287
|
} else
|
|
2286
|
-
|
|
2288
|
+
p.push({ type: "v", value: i });
|
|
2287
2289
|
}
|
|
2288
2290
|
return B;
|
|
2289
2291
|
}
|
|
2290
|
-
let
|
|
2291
|
-
for (let n in
|
|
2292
|
-
if (typeof
|
|
2293
|
-
|
|
2292
|
+
let K = JSON.parse(m0), _ = {};
|
|
2293
|
+
for (let n in K)
|
|
2294
|
+
if (typeof K[n] == "string")
|
|
2295
|
+
_[n] = K[n];
|
|
2294
2296
|
else
|
|
2295
|
-
for (let l of
|
|
2297
|
+
for (let l of K[n])
|
|
2296
2298
|
if (typeof l == "string")
|
|
2297
|
-
|
|
2299
|
+
_[n] = l;
|
|
2298
2300
|
else {
|
|
2299
|
-
|
|
2301
|
+
_[n] || (_[n] = l[Object.keys(l)[0]]);
|
|
2300
2302
|
for (let t in l) {
|
|
2301
|
-
|
|
2303
|
+
_[`${n}.${t}`] = l[t];
|
|
2302
2304
|
let r = t.split(".");
|
|
2303
|
-
for (let
|
|
2304
|
-
let B = r.slice(0,
|
|
2305
|
-
l[B] || (
|
|
2305
|
+
for (let C = 1; C < r.length; C++) {
|
|
2306
|
+
let B = r.slice(0, C).join(".");
|
|
2307
|
+
l[B] || (_[`${n}.${B}`] = l[t]);
|
|
2306
2308
|
}
|
|
2307
2309
|
}
|
|
2308
2310
|
}
|
|
2309
|
-
let
|
|
2311
|
+
let W = {
|
|
2310
2312
|
"->": "arrow.r",
|
|
2311
2313
|
"|->": "arrow.r.bar",
|
|
2312
2314
|
"=>": "arrow.r.double",
|
|
@@ -2349,200 +2351,200 @@ let o = {
|
|
|
2349
2351
|
"-": "minus",
|
|
2350
2352
|
"'": "prime",
|
|
2351
2353
|
"~": "space.nobreak"
|
|
2352
|
-
},
|
|
2353
|
-
for (let n in
|
|
2354
|
-
n.length >
|
|
2355
|
-
let
|
|
2354
|
+
}, Q = 0;
|
|
2355
|
+
for (let n in W)
|
|
2356
|
+
n.length > Q && (Q = n.length);
|
|
2357
|
+
let j = {
|
|
2356
2358
|
accent: (n, l) => {
|
|
2357
|
-
let t =
|
|
2358
|
-
t.append(
|
|
2359
|
-
let r =
|
|
2360
|
-
r.append(
|
|
2361
|
-
let
|
|
2362
|
-
return
|
|
2359
|
+
let t = A("mrow");
|
|
2360
|
+
t.append(E(n[0]));
|
|
2361
|
+
let r = A("mrow");
|
|
2362
|
+
r.append(E(n[1]));
|
|
2363
|
+
let C = A("mover");
|
|
2364
|
+
return C.setAttribute("accent", "true"), C.append(t, r), C;
|
|
2363
2365
|
},
|
|
2364
2366
|
attach: (n, l) => {
|
|
2365
|
-
let t =
|
|
2366
|
-
t.append(
|
|
2367
|
-
let r,
|
|
2368
|
-
l.tl &&
|
|
2369
|
-
let B =
|
|
2370
|
-
l.bl && B.append(
|
|
2371
|
-
let a =
|
|
2372
|
-
l.tr && a.append(
|
|
2373
|
-
let
|
|
2374
|
-
if (l.br &&
|
|
2375
|
-
let
|
|
2376
|
-
r ?
|
|
2377
|
-
let
|
|
2378
|
-
l.t &&
|
|
2379
|
-
let
|
|
2380
|
-
l.b &&
|
|
2367
|
+
let t = A("mrow");
|
|
2368
|
+
t.append(E(n[0]));
|
|
2369
|
+
let r, C = A("mrow");
|
|
2370
|
+
l.tl && C.append(E(l.tl));
|
|
2371
|
+
let B = A("mrow");
|
|
2372
|
+
l.bl && B.append(E(l.bl));
|
|
2373
|
+
let a = A("mrow");
|
|
2374
|
+
l.tr && a.append(E(l.tr));
|
|
2375
|
+
let p = A("mrow");
|
|
2376
|
+
if (l.br && p.append(E(l.br)), (l.tl || l.bl || l.tr || l.br) && (l.tl || l.bl ? (r = A("mmultiscripts"), r.append(t, p, a, A("mprescripts"), B, C)) : l.tr && l.br ? (r = A("msubsup"), r.append(t, p, a)) : l.tr ? (r = A("msup"), r.append(t, a)) : (r = A("msub"), r.append(t, p))), l.t || l.b) {
|
|
2377
|
+
let F = A("munderover");
|
|
2378
|
+
r ? F.append(r) : F.append(t);
|
|
2379
|
+
let h = A("mrow");
|
|
2380
|
+
l.t && h.append(E(l.t));
|
|
2381
|
+
let b = A("mrow");
|
|
2382
|
+
l.b && b.append(E(l.b)), F.append(b, h), r = F;
|
|
2381
2383
|
}
|
|
2382
2384
|
return r;
|
|
2383
2385
|
},
|
|
2384
|
-
scripts: (n, l) =>
|
|
2385
|
-
limits: (n, l) =>
|
|
2386
|
+
scripts: (n, l) => E(n[0]),
|
|
2387
|
+
limits: (n, l) => E(n[0]),
|
|
2386
2388
|
binom: (n, l) => {
|
|
2387
|
-
let t =
|
|
2388
|
-
r.append(
|
|
2389
|
-
let
|
|
2390
|
-
|
|
2391
|
-
let B =
|
|
2392
|
-
B.append(r,
|
|
2393
|
-
let a =
|
|
2394
|
-
return t.append(a, B,
|
|
2389
|
+
let t = A("mrow"), r = A("mrow");
|
|
2390
|
+
r.append(E(n[0]));
|
|
2391
|
+
let C = A("mrow");
|
|
2392
|
+
C.append(E(n[1]));
|
|
2393
|
+
let B = A("mfrac", null, { linethickness: "0" });
|
|
2394
|
+
B.append(r, C);
|
|
2395
|
+
let a = A("mo", "("), p = A("mo", ")");
|
|
2396
|
+
return t.append(a, B, p), t;
|
|
2395
2397
|
},
|
|
2396
2398
|
cancel: (n, l) => {
|
|
2397
|
-
let t =
|
|
2399
|
+
let t = A("mrow");
|
|
2398
2400
|
const r = (B) => `linear-gradient(to ${B ? "left" : "right"} top, transparent 47.75%, currentColor 49.5%, currentColor 50.5%, transparent 52.25%)`;
|
|
2399
|
-
let
|
|
2400
|
-
return r0(l.cross) ?
|
|
2401
|
+
let C = "";
|
|
2402
|
+
return r0(l.cross) ? C = r(!0) + "," + r(!1) : r0(l.inverted) ? C = r(!1) : C = r(!0), t.style.backgroundImage = C, t.append(E(n[0])), t;
|
|
2401
2403
|
},
|
|
2402
2404
|
cases: (n, l) => {
|
|
2403
2405
|
var B, a;
|
|
2404
|
-
let t =
|
|
2405
|
-
return t.append(r,
|
|
2406
|
+
let t = A("mrow"), r = A("mo", ((a = (B = l == null ? void 0 : l.delim) == null ? void 0 : B[0]) == null ? void 0 : a.value) || "{"), C = j.x_table(n, { cases: [] });
|
|
2407
|
+
return t.append(r, C), t;
|
|
2406
2408
|
},
|
|
2407
2409
|
frac: (n, l) => {
|
|
2408
2410
|
console.log(n);
|
|
2409
|
-
let t =
|
|
2410
|
-
t.append(
|
|
2411
|
-
let r =
|
|
2412
|
-
r.append(
|
|
2413
|
-
let
|
|
2414
|
-
return
|
|
2411
|
+
let t = A("mrow");
|
|
2412
|
+
t.append(E(n[0]));
|
|
2413
|
+
let r = A("mrow");
|
|
2414
|
+
r.append(E(n[1]));
|
|
2415
|
+
let C = A("mfrac");
|
|
2416
|
+
return C.append(t, r), C;
|
|
2415
2417
|
},
|
|
2416
2418
|
lr: (n, l) => {
|
|
2417
|
-
let t = n[0], r,
|
|
2418
|
-
for (let
|
|
2419
|
-
const
|
|
2420
|
-
if (
|
|
2421
|
-
r = { c: [
|
|
2419
|
+
let t = n[0], r, C;
|
|
2420
|
+
for (let h = 0; h < t.length; h++) {
|
|
2421
|
+
const b = t[h];
|
|
2422
|
+
if (b.type != "blank") {
|
|
2423
|
+
r = { c: [b], n: h };
|
|
2422
2424
|
break;
|
|
2423
2425
|
}
|
|
2424
2426
|
}
|
|
2425
|
-
for (let
|
|
2426
|
-
const
|
|
2427
|
-
if (
|
|
2428
|
-
|
|
2427
|
+
for (let h = t.length - 1; h >= 0; h--) {
|
|
2428
|
+
const b = t[h];
|
|
2429
|
+
if (b.type != "blank") {
|
|
2430
|
+
C = { c: [b], n: h };
|
|
2429
2431
|
break;
|
|
2430
2432
|
}
|
|
2431
2433
|
}
|
|
2432
2434
|
let B = document.createDocumentFragment();
|
|
2433
|
-
B.append(
|
|
2435
|
+
B.append(E(r.c));
|
|
2434
2436
|
let a = document.createDocumentFragment();
|
|
2435
|
-
a.append(
|
|
2436
|
-
let
|
|
2437
|
-
|
|
2438
|
-
let
|
|
2439
|
-
return
|
|
2437
|
+
a.append(E(C.c));
|
|
2438
|
+
let p = document.createDocumentFragment();
|
|
2439
|
+
p.append(E(t.slice(r.n + 1, C.n)));
|
|
2440
|
+
let F = A("mrow");
|
|
2441
|
+
return F.append(B, p, a), F;
|
|
2440
2442
|
},
|
|
2441
2443
|
mat: (n, l, t) => {
|
|
2442
|
-
var
|
|
2443
|
-
let r = ((
|
|
2444
|
+
var h, b;
|
|
2445
|
+
let r = ((b = (h = l == null ? void 0 : l.delim) == null ? void 0 : h[0]) == null ? void 0 : b.value) || "(", C = { "(": ["(", ")"], "[": ["[", "]"], "{": ["{", "}"], "|": ["|", "|"], "||": ["โ", "โ"] }, B = A("mrow"), a = A("mo", C[r][0]), p = A("mo", C[r][1]), F = A("mtable");
|
|
2444
2446
|
for (let v of t) {
|
|
2445
|
-
let
|
|
2446
|
-
for (let
|
|
2447
|
-
let
|
|
2448
|
-
|
|
2447
|
+
let i = A("mtr");
|
|
2448
|
+
for (let s of v) {
|
|
2449
|
+
let f = A("mtd");
|
|
2450
|
+
f.append(E(s)), i.append(f);
|
|
2449
2451
|
}
|
|
2450
|
-
|
|
2452
|
+
F.append(i);
|
|
2451
2453
|
}
|
|
2452
|
-
return B.append(a,
|
|
2454
|
+
return B.append(a, F, p), B;
|
|
2453
2455
|
},
|
|
2454
2456
|
root: (n, l) => {
|
|
2455
|
-
let t =
|
|
2456
|
-
t.append(
|
|
2457
|
-
let r =
|
|
2458
|
-
r.append(
|
|
2459
|
-
let
|
|
2460
|
-
return
|
|
2457
|
+
let t = A("mrow");
|
|
2458
|
+
t.append(E(n[0]));
|
|
2459
|
+
let r = A("mrow");
|
|
2460
|
+
r.append(E(n[1]));
|
|
2461
|
+
let C = A("mroot");
|
|
2462
|
+
return C.append(r, t), C;
|
|
2461
2463
|
},
|
|
2462
|
-
sqrt: (n, l) =>
|
|
2464
|
+
sqrt: (n, l) => j.root([[], n[0]], null),
|
|
2463
2465
|
display: (n, l) => {
|
|
2464
|
-
let t =
|
|
2465
|
-
return t.append(
|
|
2466
|
+
let t = A("mrow", null, { displaystyle: "true" });
|
|
2467
|
+
return t.append(E(n[0])), t;
|
|
2466
2468
|
},
|
|
2467
2469
|
inline: (n, l) => {
|
|
2468
|
-
let t =
|
|
2469
|
-
return t.append(
|
|
2470
|
+
let t = A("mrow", null, { displaystyle: "false", scriptlevel: "0" });
|
|
2471
|
+
return t.append(E(n[0])), t;
|
|
2470
2472
|
},
|
|
2471
2473
|
script: (n, l) => {
|
|
2472
|
-
let t =
|
|
2473
|
-
return t.append(
|
|
2474
|
+
let t = A("mrow", null, { displaystyle: "false", scriptlevel: "1" });
|
|
2475
|
+
return t.append(E(n[0])), t;
|
|
2474
2476
|
},
|
|
2475
2477
|
sscript: (n, l) => {
|
|
2476
|
-
let t =
|
|
2477
|
-
return t.append(
|
|
2478
|
+
let t = A("mrow", null, { displaystyle: "false", scriptlevel: "2" });
|
|
2479
|
+
return t.append(E(n[0])), t;
|
|
2478
2480
|
},
|
|
2479
2481
|
upright: (n, l) => {
|
|
2480
|
-
let t =
|
|
2481
|
-
return t.append(
|
|
2482
|
-
r.getAttribute(
|
|
2482
|
+
let t = A("mrow");
|
|
2483
|
+
return t.append(E(n[0])), t.querySelectorAll("mi").forEach((r) => {
|
|
2484
|
+
r.getAttribute(Z) || r.setAttribute(Z, "normal");
|
|
2483
2485
|
}), t.querySelectorAll("ms").forEach((r) => {
|
|
2484
|
-
r.getAttribute(
|
|
2486
|
+
r.getAttribute(Z) || r.setAttribute(Z, "normal");
|
|
2485
2487
|
}), t;
|
|
2486
2488
|
},
|
|
2487
2489
|
italic: (n, l) => {
|
|
2488
|
-
let t =
|
|
2490
|
+
let t = A("mrow");
|
|
2489
2491
|
return t.querySelectorAll("mi").forEach((r) => {
|
|
2490
|
-
r.getAttribute(
|
|
2492
|
+
r.getAttribute(Z) || r.setAttribute(Z, "italic");
|
|
2491
2493
|
}), t.querySelectorAll("ms").forEach((r) => {
|
|
2492
|
-
r.getAttribute(
|
|
2493
|
-
}), t.append(
|
|
2494
|
+
r.getAttribute(Z) || r.setAttribute(Z, "italic");
|
|
2495
|
+
}), t.append(E(n[0])), t;
|
|
2494
2496
|
},
|
|
2495
2497
|
bold: (n, l) => {
|
|
2496
|
-
let t =
|
|
2497
|
-
return t.style.fontWeight = "bold", t.append(
|
|
2498
|
+
let t = A("mrow");
|
|
2499
|
+
return t.style.fontWeight = "bold", t.append(E(n[0])), t;
|
|
2498
2500
|
},
|
|
2499
2501
|
op: (n, l, t, r) => {
|
|
2500
|
-
let
|
|
2501
|
-
return
|
|
2502
|
+
let C = A("mrow"), B = A("ms", Y(n[0][0].value, r));
|
|
2503
|
+
return C.append(B), C;
|
|
2502
2504
|
},
|
|
2503
|
-
underline: (n, l) =>
|
|
2504
|
-
overline: (n, l) =>
|
|
2505
|
-
underbrace: (n, l) =>
|
|
2506
|
-
overbrace: (n, l) =>
|
|
2507
|
-
underbracket: (n, l) =>
|
|
2508
|
-
overbracket: (n, l) =>
|
|
2509
|
-
serif: (n, l) =>
|
|
2510
|
-
sans: (n, l) =>
|
|
2511
|
-
frak: (n, l) =>
|
|
2512
|
-
mono: (n, l) =>
|
|
2513
|
-
bb: (n, l) =>
|
|
2514
|
-
cal: (n, l) =>
|
|
2505
|
+
underline: (n, l) => R("under", n[0], "_", n == null ? void 0 : n[1]),
|
|
2506
|
+
overline: (n, l) => R("over", n[0], "โพ", n == null ? void 0 : n[1]),
|
|
2507
|
+
underbrace: (n, l) => R("under", n[0], "โ", n == null ? void 0 : n[1]),
|
|
2508
|
+
overbrace: (n, l) => R("over", n[0], "โ", n == null ? void 0 : n[1]),
|
|
2509
|
+
underbracket: (n, l) => R("under", n[0], "โต", n == null ? void 0 : n[1]),
|
|
2510
|
+
overbracket: (n, l) => R("over", n[0], "โด", n == null ? void 0 : n[1]),
|
|
2511
|
+
serif: (n, l) => E(n[0], "serif"),
|
|
2512
|
+
sans: (n, l) => E(n[0], "sans"),
|
|
2513
|
+
frak: (n, l) => E(n[0], "frak"),
|
|
2514
|
+
mono: (n, l) => E(n[0], "mono"),
|
|
2515
|
+
bb: (n, l) => E(n[0], "bb"),
|
|
2516
|
+
cal: (n, l) => E(n[0], "cal"),
|
|
2515
2517
|
vec: (n, l) => {
|
|
2516
|
-
var
|
|
2517
|
-
let t = ((
|
|
2518
|
-
for (let
|
|
2519
|
-
let v =
|
|
2520
|
-
v.append(
|
|
2518
|
+
var F, h;
|
|
2519
|
+
let t = ((h = (F = l == null ? void 0 : l.delim) == null ? void 0 : F[0]) == null ? void 0 : h.value) || "(", r = { "(": ["(", ")"], "[": ["[", "]"], "{": ["{", "}"], "|": ["|", "|"], "||": ["โ", "โ"] }, C = A("mrow"), B = A("mo", r[t][0]), a = A("mo", r[t][1]), p = A("mtable");
|
|
2520
|
+
for (let b of n) {
|
|
2521
|
+
let v = A("mtr");
|
|
2522
|
+
v.append(E(b)), p.append(v);
|
|
2521
2523
|
}
|
|
2522
|
-
return
|
|
2524
|
+
return C.append(B, p, a), C;
|
|
2523
2525
|
},
|
|
2524
2526
|
// ้ขๅค
|
|
2525
2527
|
//
|
|
2526
2528
|
x_table: (n, l) => {
|
|
2527
|
-
let t = 0, r =
|
|
2529
|
+
let t = 0, r = A("mtable");
|
|
2528
2530
|
for (let B of n) {
|
|
2529
|
-
let a =
|
|
2530
|
-
for (let
|
|
2531
|
-
!B[
|
|
2532
|
-
|
|
2533
|
-
for (let
|
|
2534
|
-
let
|
|
2535
|
-
a.append(
|
|
2531
|
+
let a = A("mtr"), p = [], F = [];
|
|
2532
|
+
for (let h = 0; h < B.length; h++)
|
|
2533
|
+
!B[h].esc && B[h].value == "&" ? F.length > 0 && (p.push(F), F = []) : F.push(B[h]);
|
|
2534
|
+
F.length > 0 && p.push(F), p.length > t && (t = p.length);
|
|
2535
|
+
for (let h of p) {
|
|
2536
|
+
let b = A("mtd");
|
|
2537
|
+
a.append(b), b.append(E(h));
|
|
2536
2538
|
}
|
|
2537
2539
|
r.append(a);
|
|
2538
2540
|
}
|
|
2539
|
-
let
|
|
2541
|
+
let C = [];
|
|
2540
2542
|
if (l.cases)
|
|
2541
|
-
|
|
2543
|
+
C.push("left");
|
|
2542
2544
|
else
|
|
2543
2545
|
for (let B = 0; B < t; B++)
|
|
2544
|
-
B % 2 == 0 ?
|
|
2545
|
-
return r.setAttribute("columnalign",
|
|
2546
|
+
B % 2 == 0 ? C.push("right") : C.push("left");
|
|
2547
|
+
return r.setAttribute("columnalign", C.join(" ")), r;
|
|
2546
2548
|
}
|
|
2547
2549
|
}, i0 = [
|
|
2548
2550
|
{ id: "arccos" },
|
|
@@ -2582,10 +2584,10 @@ let O = {
|
|
|
2582
2584
|
{ id: "liminf", str: "limโinf", limits: !0 },
|
|
2583
2585
|
{ id: "limsup", str: "limโsup", limits: !0 }
|
|
2584
2586
|
];
|
|
2585
|
-
function
|
|
2587
|
+
function y0() {
|
|
2586
2588
|
for (let n of i0)
|
|
2587
|
-
|
|
2588
|
-
let B =
|
|
2589
|
+
j[n.id] = (l, t, r, C) => {
|
|
2590
|
+
let B = j.op([[{ type: "str", value: n.str || n.id }]], {}, null, C);
|
|
2589
2591
|
if (l) {
|
|
2590
2592
|
let a = document.createDocumentFragment();
|
|
2591
2593
|
return a.append(B, D0(l[0])), a;
|
|
@@ -2593,12 +2595,12 @@ function h0() {
|
|
|
2593
2595
|
return B;
|
|
2594
2596
|
};
|
|
2595
2597
|
}
|
|
2596
|
-
|
|
2598
|
+
y0();
|
|
2597
2599
|
let a0 = [], u0 = ["โ", "โ", "โ", "โ", "โ", "โ", "โ", "โจ", "โจ", "โจ", "โจ", "โจ", "โจ
", "โจ"];
|
|
2598
|
-
for (let n in
|
|
2600
|
+
for (let n in _)
|
|
2599
2601
|
for (let l of u0)
|
|
2600
|
-
|
|
2601
|
-
function
|
|
2602
|
+
_[n] == l && a0.push(n);
|
|
2603
|
+
function k0() {
|
|
2602
2604
|
const n = [
|
|
2603
2605
|
"grave",
|
|
2604
2606
|
"acute",
|
|
@@ -2617,53 +2619,59 @@ function m0() {
|
|
|
2617
2619
|
"arrow.l"
|
|
2618
2620
|
];
|
|
2619
2621
|
for (let l of n)
|
|
2620
|
-
|
|
2622
|
+
j[l] = (t) => j.accent([t[0], [{ type: "f", value: l }]], {});
|
|
2621
2623
|
}
|
|
2622
|
-
|
|
2623
|
-
function
|
|
2624
|
+
k0();
|
|
2625
|
+
function q0() {
|
|
2624
2626
|
let n = [
|
|
2625
|
-
{ name: "abs", l:
|
|
2626
|
-
{ name: "norm", l:
|
|
2627
|
-
{ name: "floor", l:
|
|
2628
|
-
{ name: "ceil", l:
|
|
2629
|
-
{ name: "round", l:
|
|
2627
|
+
{ name: "abs", l: S("|"), r: S("|") },
|
|
2628
|
+
{ name: "norm", l: S("โ"), r: S("โ") },
|
|
2629
|
+
{ name: "floor", l: S("โ"), r: S("โ") },
|
|
2630
|
+
{ name: "ceil", l: S("โ"), r: S("โ") },
|
|
2631
|
+
{ name: "round", l: S("โ"), r: S("โ") }
|
|
2630
2632
|
];
|
|
2631
2633
|
for (let l of n)
|
|
2632
|
-
|
|
2634
|
+
j[l.name] = (t) => j.lr([[l.l, ...t[0], l.r]], {});
|
|
2633
2635
|
}
|
|
2634
|
-
|
|
2635
|
-
function
|
|
2636
|
-
let
|
|
2637
|
-
if (B.append(
|
|
2638
|
-
let a =
|
|
2639
|
-
a.append(
|
|
2640
|
-
let
|
|
2641
|
-
|
|
2636
|
+
q0();
|
|
2637
|
+
function R(n, l, t, r) {
|
|
2638
|
+
let C = n == "under" ? A("munder", null, { accentunder: "true" }) : A("mover", null, { accent: "true" }), B = A("mrow");
|
|
2639
|
+
if (B.append(E(l)), r) {
|
|
2640
|
+
let a = A("mrow");
|
|
2641
|
+
a.append(E(r));
|
|
2642
|
+
let p = n == "under" ? A("munder") : A("mover"), F = A("mo", t);
|
|
2643
|
+
p.append(F, a), C.append(B, p);
|
|
2642
2644
|
} else {
|
|
2643
|
-
let a =
|
|
2644
|
-
|
|
2645
|
+
let a = A("mo", t);
|
|
2646
|
+
C.append(B, a);
|
|
2645
2647
|
}
|
|
2646
|
-
return
|
|
2648
|
+
return C;
|
|
2647
2649
|
}
|
|
2648
2650
|
function D0(n) {
|
|
2649
|
-
let l =
|
|
2651
|
+
let l = A("mrow"), t = A("mo");
|
|
2650
2652
|
t.textContent = "(";
|
|
2651
|
-
let r =
|
|
2652
|
-
return
|
|
2653
|
+
let r = E(n), C = A("mo");
|
|
2654
|
+
return C.textContent = ")", l.append(t, r, C), l;
|
|
2653
2655
|
}
|
|
2654
|
-
function
|
|
2656
|
+
function N(n) {
|
|
2655
2657
|
return n.type == "group" ? n.children : [n];
|
|
2656
2658
|
}
|
|
2657
|
-
function
|
|
2659
|
+
function w0(n) {
|
|
2658
2660
|
return [{ type: "group", value: "", children: n }];
|
|
2659
2661
|
}
|
|
2660
|
-
function
|
|
2661
|
-
return n
|
|
2662
|
+
function I(n) {
|
|
2663
|
+
return n && n.type == "v" && n.value == "^" && !n.esc;
|
|
2662
2664
|
}
|
|
2663
|
-
function
|
|
2664
|
-
return n
|
|
2665
|
+
function L(n) {
|
|
2666
|
+
return n && n.type == "v" && n.value == "_" && !n.esc;
|
|
2667
|
+
}
|
|
2668
|
+
function P(n) {
|
|
2669
|
+
return n && n.type == "v" && n.value == "/" && !n.esc;
|
|
2670
|
+
}
|
|
2671
|
+
function l0(n) {
|
|
2672
|
+
return n && n.value == "br" && n.esc;
|
|
2665
2673
|
}
|
|
2666
|
-
function
|
|
2674
|
+
function V(n) {
|
|
2667
2675
|
if (n.length == 1) {
|
|
2668
2676
|
let l = n[0];
|
|
2669
2677
|
if (l.type == "f") {
|
|
@@ -2675,10 +2683,10 @@ function Q(n) {
|
|
|
2675
2683
|
if (l.value == "scripts")
|
|
2676
2684
|
return !1;
|
|
2677
2685
|
if (l.value == "op") {
|
|
2678
|
-
let { dic: t } =
|
|
2686
|
+
let { dic: t } = s0(l), r = "";
|
|
2679
2687
|
if (t.limits)
|
|
2680
|
-
for (let
|
|
2681
|
-
r +=
|
|
2688
|
+
for (let C of t.limits)
|
|
2689
|
+
r += C.value;
|
|
2682
2690
|
return r == "#true";
|
|
2683
2691
|
}
|
|
2684
2692
|
}
|
|
@@ -2687,23 +2695,29 @@ function Q(n) {
|
|
|
2687
2695
|
} else
|
|
2688
2696
|
return !1;
|
|
2689
2697
|
}
|
|
2690
|
-
function
|
|
2698
|
+
function T(n, l) {
|
|
2691
2699
|
return n.value == l && n.type == "v" && !n.esc;
|
|
2692
2700
|
}
|
|
2693
|
-
function
|
|
2701
|
+
function H(n) {
|
|
2694
2702
|
return n && n.type == "v" && n.value == ".";
|
|
2695
2703
|
}
|
|
2696
|
-
|
|
2697
|
-
|
|
2704
|
+
function t0(n) {
|
|
2705
|
+
return n && (n.type == "f" || n.type == "v" && n.value.match(/[a-z]/));
|
|
2706
|
+
}
|
|
2707
|
+
function _0(n) {
|
|
2708
|
+
return n && n.type == "v" && n.value == "!" && !n.esc;
|
|
2709
|
+
}
|
|
2710
|
+
let G = { type: "v", value: "," };
|
|
2711
|
+
function S(n) {
|
|
2698
2712
|
return { type: "v", value: n };
|
|
2699
2713
|
}
|
|
2700
|
-
function
|
|
2714
|
+
function J(n) {
|
|
2701
2715
|
let l = [];
|
|
2702
2716
|
for (let t in n) {
|
|
2703
2717
|
l.push({ type: "f", value: t }), l.push({ type: "v", value: ":" });
|
|
2704
2718
|
for (let r of n[t])
|
|
2705
2719
|
r.type == "v" && r.value == "," && (r.esc = !0);
|
|
2706
|
-
l.push(...n[t]), Number(t) + 1 != Object.keys(n).length && l.push(
|
|
2720
|
+
l.push(...n[t]), Number(t) + 1 != Object.keys(n).length && l.push(G);
|
|
2707
2721
|
}
|
|
2708
2722
|
return l;
|
|
2709
2723
|
}
|
|
@@ -2712,211 +2726,222 @@ function r0(n) {
|
|
|
2712
2726
|
return !!(n && (n[0].type == "blank" && l++, n[l] && n[l].type == "v" && n[l].value == "#" && n[l + 1] && n[l + 1].type == "f" && n[l + 1].value == "true"));
|
|
2713
2727
|
}
|
|
2714
2728
|
function C0(n) {
|
|
2715
|
-
var l, t, r,
|
|
2729
|
+
var l, t, r, C, B, a, p, F, h, b, v;
|
|
2716
2730
|
{
|
|
2717
|
-
let
|
|
2718
|
-
for (let
|
|
2719
|
-
let
|
|
2720
|
-
|
|
2731
|
+
let i = [], s = /[0-9]/, f = "";
|
|
2732
|
+
for (let u = 0; u < n.length; u++) {
|
|
2733
|
+
let D = n[u];
|
|
2734
|
+
D.value.match(s) || (l = n[u - 1]) != null && l.value.match(s) && H(D) && ((t = n[u + 1]) != null && t.value.match(s)) ? f += D.value : i.push(D), D.value.match(s) && (!n[u + 1] || !n[u + 1].value.match(s)) && !(H(n[u + 1]) && ((r = n[u + 2]) != null && r.value.match(s))) && (i.push({ type: "v", value: f }), f = "");
|
|
2721
2735
|
}
|
|
2722
|
-
n =
|
|
2736
|
+
n = i;
|
|
2723
2737
|
}
|
|
2724
2738
|
{
|
|
2725
|
-
let
|
|
2726
|
-
for (let
|
|
2727
|
-
let
|
|
2728
|
-
if (((
|
|
2729
|
-
if (
|
|
2730
|
-
let
|
|
2731
|
-
for (
|
|
2732
|
-
|
|
2733
|
-
if (
|
|
2734
|
-
let
|
|
2735
|
-
|
|
2739
|
+
let i = [];
|
|
2740
|
+
for (let s = 0; s < n.length; s++) {
|
|
2741
|
+
let f = n[s];
|
|
2742
|
+
if (((C = n == null ? void 0 : n[s - 1]) == null ? void 0 : C.value) != "\\")
|
|
2743
|
+
if (f.type == "v") {
|
|
2744
|
+
let u = s, D = f.value, m = [];
|
|
2745
|
+
for (W[D] && m.push(D); ((B = n == null ? void 0 : n[u + 1]) == null ? void 0 : B.type) == "v" && D.length <= Q; )
|
|
2746
|
+
D += n[u + 1].value, W[D] && m.push(D), u++;
|
|
2747
|
+
if (m.length) {
|
|
2748
|
+
let O = { type: "f", value: W[m.at(-1)] };
|
|
2749
|
+
i.push(O), s += m.at(-1).length - 1;
|
|
2736
2750
|
} else
|
|
2737
|
-
|
|
2751
|
+
i.push(f);
|
|
2738
2752
|
} else
|
|
2739
|
-
|
|
2753
|
+
i.push(f);
|
|
2740
2754
|
else
|
|
2741
|
-
|
|
2755
|
+
i.push(f);
|
|
2742
2756
|
}
|
|
2743
|
-
n =
|
|
2757
|
+
n = i;
|
|
2744
2758
|
}
|
|
2745
2759
|
{
|
|
2746
|
-
let
|
|
2747
|
-
for (let
|
|
2748
|
-
let
|
|
2749
|
-
if (
|
|
2750
|
-
if (n != null && n[
|
|
2751
|
-
let
|
|
2752
|
-
if (
|
|
2753
|
-
|
|
2754
|
-
else if (
|
|
2755
|
-
|
|
2756
|
-
else if (
|
|
2757
|
-
let
|
|
2758
|
-
|
|
2760
|
+
let i = [];
|
|
2761
|
+
for (let s = 0; s < n.length; s++) {
|
|
2762
|
+
let f = n[s];
|
|
2763
|
+
if (f.value == "\\" && f.type == "v") {
|
|
2764
|
+
if (n != null && n[s + 1]) {
|
|
2765
|
+
let u = n[s + 1];
|
|
2766
|
+
if (u.value == "\\" && u.type == "v")
|
|
2767
|
+
i.push({ type: "v", value: "\\" }), s++;
|
|
2768
|
+
else if (u.type == "blank")
|
|
2769
|
+
i.push({ type: "v", value: "br", esc: !0 }), s++;
|
|
2770
|
+
else if (u.type == "f") {
|
|
2771
|
+
let D = u.value;
|
|
2772
|
+
i.push({ type: "v", value: D[0] }), i.push({ type: D.length == 2 ? "v" : "f", value: D.slice(1) }), s++;
|
|
2759
2773
|
} else {
|
|
2760
|
-
let
|
|
2761
|
-
|
|
2774
|
+
let D = u;
|
|
2775
|
+
D.esc = !0, i.push(D), s++;
|
|
2762
2776
|
}
|
|
2763
2777
|
}
|
|
2764
2778
|
} else
|
|
2765
|
-
|
|
2779
|
+
i.push(f);
|
|
2766
2780
|
}
|
|
2767
|
-
n =
|
|
2781
|
+
n = i;
|
|
2768
2782
|
}
|
|
2769
2783
|
{
|
|
2770
|
-
let
|
|
2771
|
-
for (let
|
|
2772
|
-
let
|
|
2773
|
-
|
|
2784
|
+
let i = [];
|
|
2785
|
+
for (let s = 0; s < n.length; s++) {
|
|
2786
|
+
let f = n[s];
|
|
2787
|
+
f.type == "v" && ((a = n == null ? void 0 : n[s + 1]) == null ? void 0 : a.type) == "blank" && ((p = n == null ? void 0 : n[s + 2]) == null ? void 0 : p.type) == "str" ? (i.push(f), i.push({ type: "f", value: "space" })) : f.type == "str" && ((F = n == null ? void 0 : n[s + 1]) == null ? void 0 : F.type) == "blank" && ((h = n == null ? void 0 : n[s + 2]) == null ? void 0 : h.type) == "v" ? (i.push(f), i.push({ type: "f", value: "space" })) : i.push(f);
|
|
2774
2788
|
}
|
|
2775
|
-
n =
|
|
2789
|
+
n = i;
|
|
2776
2790
|
}
|
|
2777
2791
|
{
|
|
2778
|
-
let
|
|
2779
|
-
for (let
|
|
2780
|
-
let
|
|
2781
|
-
|
|
2782
|
-
p += C.value + ".", x++;
|
|
2783
|
-
continue;
|
|
2784
|
-
} else
|
|
2785
|
-
p && C.type == "f" ? (p += C.value, Y(n[x + 1]) || (f.push({ type: "f", value: p }), p = "")) : f.push(C);
|
|
2792
|
+
let i = [], s = [];
|
|
2793
|
+
for (let f = 0; f < n.length; f++) {
|
|
2794
|
+
let u = n[f];
|
|
2795
|
+
_0(n == null ? void 0 : n[f + 1]) && !I(u) && !L(u) && !P(u) ? s.push(u) : s.length ? (s.push(u), i.push({ type: "group1", value: "", children: s }), s = []) : i.push(u);
|
|
2786
2796
|
}
|
|
2787
|
-
n =
|
|
2797
|
+
n = i;
|
|
2788
2798
|
}
|
|
2789
2799
|
{
|
|
2790
|
-
let
|
|
2791
|
-
for (let
|
|
2792
|
-
let
|
|
2793
|
-
if (
|
|
2794
|
-
|
|
2795
|
-
|
|
2796
|
-
|
|
2797
|
-
|
|
2800
|
+
let i = [], s = "";
|
|
2801
|
+
for (let f = 0; f < n.length; f++) {
|
|
2802
|
+
let u = n[f];
|
|
2803
|
+
if (t0(u) && H(n[f + 1]))
|
|
2804
|
+
if (s || !s && u.type == "f") {
|
|
2805
|
+
s += u.value + ".", f++;
|
|
2806
|
+
continue;
|
|
2807
|
+
} else
|
|
2808
|
+
i.push(u);
|
|
2809
|
+
else
|
|
2810
|
+
s && t0(u) ? (s += u.value, H(n[f + 1]) || (i.push({ type: "f", value: s }), s = "")) : i.push(u);
|
|
2811
|
+
}
|
|
2812
|
+
n = i;
|
|
2813
|
+
}
|
|
2814
|
+
{
|
|
2815
|
+
let i = [];
|
|
2816
|
+
for (let s = 0; s < n.length; s++) {
|
|
2817
|
+
let f = n[s];
|
|
2818
|
+
if (f.type == "f" && n[s + 1] && n[s + 1].type == "group") {
|
|
2819
|
+
f.children = n[s + 1].children;
|
|
2820
|
+
for (let u in f.children)
|
|
2821
|
+
f.children[u].value == "\\" && f.children[u].type == "v" && f.children[Number(u) + 1] && (f.children[Number(u) + 1].esc = !0);
|
|
2822
|
+
i.push(f), s++;
|
|
2798
2823
|
continue;
|
|
2799
2824
|
} else
|
|
2800
|
-
|
|
2825
|
+
i.push(f);
|
|
2801
2826
|
}
|
|
2802
|
-
n =
|
|
2827
|
+
n = i;
|
|
2803
2828
|
}
|
|
2804
2829
|
{
|
|
2805
|
-
let
|
|
2806
|
-
for (let
|
|
2807
|
-
|
|
2808
|
-
n =
|
|
2830
|
+
let i = [];
|
|
2831
|
+
for (let s of n)
|
|
2832
|
+
s.type != "blank" && i.push(s);
|
|
2833
|
+
n = i;
|
|
2809
2834
|
}
|
|
2810
2835
|
{
|
|
2811
|
-
let
|
|
2812
|
-
for (let
|
|
2813
|
-
const
|
|
2814
|
-
|
|
2836
|
+
let i = [], s = NaN;
|
|
2837
|
+
for (let u = 0; u < n.length; u++) {
|
|
2838
|
+
const D = n[u];
|
|
2839
|
+
!I(D) && !L(D) && ((I(n[u + 1]) || L(n[u + 1])) && !(I(n[u - 1]) || L(n[u - 1])) && (s || (s = u)), (I(n[u - 1]) || L(n[u - 1])) && !(I(n[u + 1]) || L(n[u + 1])) && (i.push([s, u]), s = NaN));
|
|
2815
2840
|
}
|
|
2816
|
-
let
|
|
2817
|
-
for (let
|
|
2818
|
-
if (
|
|
2841
|
+
let f = [];
|
|
2842
|
+
for (let u = 0; u < n.length; u++) {
|
|
2843
|
+
if (u == ((b = i == null ? void 0 : i[0]) == null ? void 0 : b[0])) {
|
|
2819
2844
|
{
|
|
2820
|
-
let
|
|
2821
|
-
for (let
|
|
2822
|
-
if ((
|
|
2823
|
-
let
|
|
2824
|
-
|
|
2845
|
+
let D = n[i[0][1]];
|
|
2846
|
+
for (let m = i[0][1]; m >= i[0][0]; m--) {
|
|
2847
|
+
if (I(n[m - 1]) && L(n[m - 3])) {
|
|
2848
|
+
let O = V([n[m - 4]]) ? { t: N(D), b: N(n[m - 2]) } : { tr: N(D), br: N(n[m - 2]) };
|
|
2849
|
+
D = {
|
|
2825
2850
|
type: "f",
|
|
2826
2851
|
value: "attach",
|
|
2827
|
-
children: [n[
|
|
2828
|
-
},
|
|
2852
|
+
children: [n[m - 4], G, ...J(O)]
|
|
2853
|
+
}, m -= 4 - 1;
|
|
2829
2854
|
continue;
|
|
2830
2855
|
}
|
|
2831
|
-
if ((
|
|
2832
|
-
let
|
|
2833
|
-
|
|
2856
|
+
if (L(n[m - 1]) && I(n[m - 3])) {
|
|
2857
|
+
let O = V([n[m - 4]]) ? { t: N(n[m - 2]), b: N(D) } : { tr: N(n[m - 2]), br: N(D) };
|
|
2858
|
+
D = {
|
|
2834
2859
|
type: "f",
|
|
2835
2860
|
value: "attach",
|
|
2836
|
-
children: [n[
|
|
2837
|
-
},
|
|
2861
|
+
children: [n[m - 4], G, ...J(O)]
|
|
2862
|
+
}, m -= 4 - 1;
|
|
2838
2863
|
continue;
|
|
2839
2864
|
}
|
|
2840
|
-
if ((
|
|
2841
|
-
let
|
|
2842
|
-
|
|
2865
|
+
if (I(n[m - 1])) {
|
|
2866
|
+
let O = V([n[m - 2]]) ? { t: N(D) } : { tr: N(D) };
|
|
2867
|
+
D = {
|
|
2843
2868
|
type: "f",
|
|
2844
2869
|
value: "attach",
|
|
2845
|
-
children: [n[
|
|
2846
|
-
},
|
|
2870
|
+
children: [n[m - 2], G, ...J(O)]
|
|
2871
|
+
}, m -= 2 - 1;
|
|
2847
2872
|
continue;
|
|
2848
2873
|
}
|
|
2849
|
-
if ((
|
|
2850
|
-
let
|
|
2851
|
-
|
|
2874
|
+
if (L(n[m - 1])) {
|
|
2875
|
+
let O = V([n[m - 2]]) ? { b: N(D) } : { br: N(D) };
|
|
2876
|
+
D = {
|
|
2852
2877
|
type: "f",
|
|
2853
2878
|
value: "attach",
|
|
2854
|
-
children: [n[
|
|
2855
|
-
},
|
|
2879
|
+
children: [n[m - 2], G, ...J(O)]
|
|
2880
|
+
}, m -= 2 - 1;
|
|
2856
2881
|
continue;
|
|
2857
2882
|
}
|
|
2858
2883
|
}
|
|
2859
|
-
|
|
2884
|
+
f.push(D);
|
|
2860
2885
|
}
|
|
2861
|
-
|
|
2886
|
+
u += i[0][1] - i[0][0], i = i.slice(1);
|
|
2862
2887
|
continue;
|
|
2863
2888
|
}
|
|
2864
|
-
|
|
2889
|
+
f.push(n[u]);
|
|
2865
2890
|
}
|
|
2866
|
-
n =
|
|
2891
|
+
n = f;
|
|
2867
2892
|
}
|
|
2868
2893
|
{
|
|
2869
|
-
let
|
|
2870
|
-
for (let
|
|
2871
|
-
const
|
|
2872
|
-
|
|
2894
|
+
let i = [], s = NaN;
|
|
2895
|
+
for (let u = 0; u < n.length; u++) {
|
|
2896
|
+
const D = n[u];
|
|
2897
|
+
P(D) || (P(n[u + 1]) && !P(n[u - 1]) && (s || (s = u)), P(n[u - 1]) && !P(n[u + 1]) && (i.push([s, u]), s = NaN));
|
|
2873
2898
|
}
|
|
2874
|
-
let
|
|
2875
|
-
for (let
|
|
2876
|
-
if (
|
|
2899
|
+
let f = [];
|
|
2900
|
+
for (let u = 0; u < n.length; u++) {
|
|
2901
|
+
if (u == ((v = i == null ? void 0 : i[0]) == null ? void 0 : v[0])) {
|
|
2877
2902
|
{
|
|
2878
|
-
let
|
|
2879
|
-
for (let
|
|
2880
|
-
if ((
|
|
2881
|
-
|
|
2903
|
+
let D = n[i[0][0]];
|
|
2904
|
+
for (let m = i[0][0]; m <= i[0][1]; m++)
|
|
2905
|
+
if (P(n[m + 1])) {
|
|
2906
|
+
D = {
|
|
2882
2907
|
type: "f",
|
|
2883
2908
|
value: "frac",
|
|
2884
|
-
children: [...
|
|
2885
|
-
},
|
|
2909
|
+
children: [...N(D), G, ...N(n[m + 2])]
|
|
2910
|
+
}, m += 2 - 1;
|
|
2886
2911
|
continue;
|
|
2887
2912
|
}
|
|
2888
|
-
console.log(1,
|
|
2913
|
+
console.log(1, D), f.push(D);
|
|
2889
2914
|
}
|
|
2890
|
-
|
|
2915
|
+
u += i[0][1] - i[0][0], i.splice(0, 1);
|
|
2891
2916
|
continue;
|
|
2892
2917
|
}
|
|
2893
|
-
|
|
2918
|
+
f.push(n[u]);
|
|
2894
2919
|
}
|
|
2895
|
-
n =
|
|
2920
|
+
n = f;
|
|
2896
2921
|
}
|
|
2897
2922
|
return n;
|
|
2898
2923
|
}
|
|
2899
|
-
function
|
|
2900
|
-
let l = "array", t = [], r = [],
|
|
2901
|
-
for (let
|
|
2902
|
-
const
|
|
2903
|
-
if (Number(
|
|
2904
|
-
if (
|
|
2924
|
+
function s0(n) {
|
|
2925
|
+
let l = "array", t = [], r = [], C = [], B = [];
|
|
2926
|
+
for (let p in n.children) {
|
|
2927
|
+
const F = n.children[p];
|
|
2928
|
+
if (Number(p) + 1 == n.children.length) {
|
|
2929
|
+
if (F.type == "blank" && n.children[Number(p) - 1].value.match(/[,;]/))
|
|
2905
2930
|
break;
|
|
2906
|
-
!
|
|
2931
|
+
!T(F, ",") && !T(F, ";") && B.push(F), l == "dic" ? (r.push(B), B = []) : t.push(B), C.length && (C.push(t), t = []), B = [];
|
|
2907
2932
|
} else
|
|
2908
|
-
|
|
2933
|
+
T(F, ",") ? (l == "dic" ? (r.push(B), l = "array") : t.push(B), B = []) : T(F, ";") ? (t.push(B), B = [], C.push(t), t = []) : (B.push(F), T(F, ":") && (l = "dic"));
|
|
2909
2934
|
}
|
|
2910
2935
|
let a = {};
|
|
2911
|
-
for (let
|
|
2912
|
-
let
|
|
2913
|
-
for (let
|
|
2914
|
-
|
|
2915
|
-
a[
|
|
2936
|
+
for (let p of r) {
|
|
2937
|
+
let F = "", h = [];
|
|
2938
|
+
for (let b of p)
|
|
2939
|
+
F ? b.value != ":" && h.push(b) : F = b.value;
|
|
2940
|
+
a[F] = h;
|
|
2916
2941
|
}
|
|
2917
|
-
return { attr: t, dic: a, array:
|
|
2942
|
+
return { attr: t, dic: a, array: C };
|
|
2918
2943
|
}
|
|
2919
|
-
function
|
|
2944
|
+
function Y(n, l = "serif") {
|
|
2920
2945
|
function t(r) {
|
|
2921
2946
|
return "abcdefghijklmnopqrstuvwxyz".indexOf(r.toLowerCase());
|
|
2922
2947
|
}
|
|
@@ -2924,47 +2949,47 @@ function c(n, l = "serif") {
|
|
|
2924
2949
|
case "serif":
|
|
2925
2950
|
return n;
|
|
2926
2951
|
case "sans":
|
|
2927
|
-
const r = [..."๐ข๐ฃ๐ค๐ฅ๐ฆ๐ง๐จ๐ฉ๐ช๐ซ"],
|
|
2928
|
-
return n = n.replace(/[0-9]+/g, (
|
|
2952
|
+
const r = [..."๐ข๐ฃ๐ค๐ฅ๐ฆ๐ง๐จ๐ฉ๐ช๐ซ"], C = [..."๐บ๐ป๐ผ๐ฝ๐พ๐ฟ๐๐๐๐๐๐
๐๐๐๐๐๐๐๐๐๐๐๐๐๐"], B = [..."๐ ๐ก๐ข๐ฃ๐ค๐ฅ๐ฆ๐ง๐จ๐ฉ๐ช๐ซ๐ฌ๐ญ๐ฎ๐ฏ๐ฐ๐ฑ๐ฒ๐ณ๐ด๐ต๐ถ๐ท๐ธ๐น"];
|
|
2953
|
+
return n = n.replace(/[0-9]+/g, (D) => r[D]), n = n.replace(/[a-z]/g, (D) => C[t(D)]), n = n.replace(/[A-Z]/g, (D) => B[t(D)]), n;
|
|
2929
2954
|
case "frak":
|
|
2930
|
-
const a = [..."๐๐๐ ๐ก๐ข๐ฃ๐ค๐ฅ๐ฆ๐ง๐จ๐ฉ๐ช๐ซ๐ฌ๐ญ๐ฎ๐ฏ๐ฐ๐ฑ๐ฒ๐ณ๐ด๐ต๐ถ๐ท"],
|
|
2931
|
-
return n = n.replace(/[a-z]/g, (
|
|
2955
|
+
const a = [..."๐๐๐ ๐ก๐ข๐ฃ๐ค๐ฅ๐ฆ๐ง๐จ๐ฉ๐ช๐ซ๐ฌ๐ญ๐ฎ๐ฏ๐ฐ๐ฑ๐ฒ๐ณ๐ด๐ต๐ถ๐ท"], p = [..."๐๐
โญ๐๐๐๐โโ๐๐๐๐๐๐๐๐โ๐๐๐๐๐๐๐โจ"];
|
|
2956
|
+
return n = n.replace(/[a-z]/g, (D) => a[t(D)]), n = n.replace(/[A-Z]/g, (D) => p[t(D)]), n;
|
|
2932
2957
|
case "mono":
|
|
2933
|
-
const
|
|
2934
|
-
return n = n.replace(/[0-9]+/g, (
|
|
2958
|
+
const F = [..."0๐ท๐ธ๐น๐บ๐ป๐ผ๐ฝ๐พ๐ฟ"], h = [..."๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐ ๐ก๐ข๐ฃ"], b = [..."๐ฐ๐ฑ๐ฒ๐ณ๐ด๐ต๐ถ๐ท๐ธ๐น๐บ๐ป๐ผ๐ฝ๐พ๐ฟ๐๐๐๐๐๐
๐๐๐๐"];
|
|
2959
|
+
return n = n.replace(/[0-9]+/g, (D) => F[D]), n = n.replace(/[a-z]/g, (D) => h[t(D)]), n = n.replace(/[A-Z]/g, (D) => b[t(D)]), n;
|
|
2935
2960
|
case "bb":
|
|
2936
|
-
const v = [..."๐๐๐๐๐๐๐๐๐ ๐ก"],
|
|
2937
|
-
return n = n.replace(/[0-9]+/g, (
|
|
2961
|
+
const v = [..."๐๐๐๐๐๐๐๐๐ ๐ก"], i = [..."๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐ ๐ก๐ข๐ฃ๐ค๐ฅ๐ฆ๐ง๐จ๐ฉ๐ช๐ซ"], s = [..."๐ธ๐นโ๐ป๐ผ๐ฝ๐พโ๐๐๐๐๐โ๐โโโ๐๐๐๐๐๐๐โค"];
|
|
2962
|
+
return n = n.replace(/[0-9]+/g, (D) => v[D]), n = n.replace(/[a-z]/g, (D) => i[t(D)]), n = n.replace(/[A-Z]/g, (D) => s[t(D)]), n;
|
|
2938
2963
|
case "cal":
|
|
2939
|
-
const
|
|
2940
|
-
return n = n.replace(/[a-z]/g, (
|
|
2964
|
+
const f = [..."๐ถ๐ท๐ธ๐นโฏ๐ปโ๐ฝ๐พ๐ฟ๐๐๐๐โด๐
๐๐๐๐๐๐๐๐๐๐"], u = [..."๐โฌ๐๐โฐโฑ๐ขโโ๐ฅ๐ฆโโณ๐ฉ๐ช๐ซ๐ฌโ๐ฎ๐ฏ๐ฐ๐ฑ๐ฒ๐ณ๐ด๐ต"];
|
|
2965
|
+
return n = n.replace(/[a-z]/g, (D) => f[t(D)]), n = n.replace(/[A-Z]/g, (D) => u[t(D)]), n;
|
|
2941
2966
|
}
|
|
2942
2967
|
}
|
|
2943
|
-
function
|
|
2968
|
+
function E(n, l) {
|
|
2944
2969
|
let t = document.createDocumentFragment();
|
|
2945
2970
|
n = C0(n);
|
|
2946
2971
|
{
|
|
2947
|
-
let r = !1,
|
|
2972
|
+
let r = !1, C = (B) => {
|
|
2948
2973
|
for (let a of B) {
|
|
2949
|
-
if (
|
|
2974
|
+
if (l0(a)) {
|
|
2950
2975
|
r = !0;
|
|
2951
2976
|
return;
|
|
2952
2977
|
}
|
|
2953
|
-
a.type == "group" &&
|
|
2978
|
+
a.type == "group" && C(a.children);
|
|
2954
2979
|
}
|
|
2955
2980
|
};
|
|
2956
|
-
if (
|
|
2981
|
+
if (C(n), r) {
|
|
2957
2982
|
{
|
|
2958
2983
|
let a = [];
|
|
2959
|
-
for (let
|
|
2960
|
-
let
|
|
2961
|
-
|
|
2984
|
+
for (let p in n) {
|
|
2985
|
+
let F = n[p];
|
|
2986
|
+
F.type == "group" ? (a.push(S("(")), a.push(...C0(F.children)), a.push(S(")"))) : a.push(F);
|
|
2962
2987
|
}
|
|
2963
2988
|
n = a;
|
|
2964
2989
|
}
|
|
2965
2990
|
for (let a = 0; a < n.length; a++) {
|
|
2966
|
-
const
|
|
2967
|
-
|
|
2991
|
+
const p = n[a];
|
|
2992
|
+
l0(p) && (n[a] = G);
|
|
2968
2993
|
}
|
|
2969
2994
|
let B = [];
|
|
2970
2995
|
B.push({ type: "f", value: "x_table", children: n }), n = B;
|
|
@@ -2975,23 +3000,29 @@ function h(n, l) {
|
|
|
2975
3000
|
n = B;
|
|
2976
3001
|
}
|
|
2977
3002
|
}
|
|
3003
|
+
{
|
|
3004
|
+
let r = [];
|
|
3005
|
+
for (let C of n)
|
|
3006
|
+
C.type == "group1" ? r.push(...C.children) : r.push(C);
|
|
3007
|
+
n = r;
|
|
3008
|
+
}
|
|
2978
3009
|
for (let r in n) {
|
|
2979
|
-
let
|
|
3010
|
+
let C = Number(r), B = n[C];
|
|
2980
3011
|
if (B.type == "f" && B.children) {
|
|
2981
|
-
let { attr: a, dic:
|
|
2982
|
-
if (
|
|
2983
|
-
console.log(a,
|
|
2984
|
-
let
|
|
2985
|
-
t.append(
|
|
2986
|
-
} else if (
|
|
2987
|
-
let
|
|
2988
|
-
t.append(
|
|
3012
|
+
let { attr: a, dic: p, array: F } = s0(B);
|
|
3013
|
+
if (j[B.value]) {
|
|
3014
|
+
console.log(a, p, F);
|
|
3015
|
+
let h = j[B.value](a, p, F, l);
|
|
3016
|
+
t.append(h);
|
|
3017
|
+
} else if (_[B.value]) {
|
|
3018
|
+
let h = A("mo", _[B.value]);
|
|
3019
|
+
t.append(h, E(w0(B.children)));
|
|
2989
3020
|
}
|
|
2990
3021
|
}
|
|
2991
3022
|
if (B.type == "f" && !B.children) {
|
|
2992
|
-
if (
|
|
2993
|
-
let a,
|
|
2994
|
-
const
|
|
3023
|
+
if (_[B.value]) {
|
|
3024
|
+
let a, p = null;
|
|
3025
|
+
const F = {
|
|
2995
3026
|
" ": "0.36em",
|
|
2996
3027
|
"โ": "0.5em",
|
|
2997
3028
|
"โ": "3.75em",
|
|
@@ -3004,41 +3035,49 @@ function h(n, l) {
|
|
|
3004
3035
|
"โ": "0.2em",
|
|
3005
3036
|
"โ": "0.09em"
|
|
3006
3037
|
};
|
|
3007
|
-
|
|
3008
|
-
let
|
|
3009
|
-
t.append(
|
|
3010
|
-
} else if (
|
|
3011
|
-
let a =
|
|
3038
|
+
_[B.value].match(/[a-zA-Z\u0391-\u03C9]/) ? a = "mi" : F[_[B.value]] ? (a = "mspace", p = { width: F[_[B.value]] }) : a = "mo";
|
|
3039
|
+
let h = A(a, _[B.value], p);
|
|
3040
|
+
t.append(h);
|
|
3041
|
+
} else if (j[B.value]) {
|
|
3042
|
+
let a = j[B.value](null, null, null, l);
|
|
3012
3043
|
t.append(a);
|
|
3013
3044
|
}
|
|
3014
3045
|
}
|
|
3015
3046
|
if (B.type == "str") {
|
|
3016
|
-
let a =
|
|
3047
|
+
let a = A("ms", Y(B.value, l));
|
|
3017
3048
|
t.append(a);
|
|
3018
3049
|
}
|
|
3019
3050
|
if (B.type == "v") {
|
|
3020
3051
|
let a;
|
|
3021
3052
|
B.value.match(/[0-9.]+/) ? a = "mn" : B.value.match(/[a-zA-Z\u0391-\u03C9]/) ? a = "mi" : a = "mo";
|
|
3022
|
-
let
|
|
3023
|
-
t.append(
|
|
3053
|
+
let p = A(a, Y(B.value, l));
|
|
3054
|
+
t.append(p);
|
|
3024
3055
|
}
|
|
3025
3056
|
B.type == "group" && t.append(D0(B.children));
|
|
3026
3057
|
}
|
|
3027
3058
|
return t;
|
|
3028
3059
|
}
|
|
3029
|
-
|
|
3030
|
-
|
|
3060
|
+
var e = {
|
|
3061
|
+
emoji: !1
|
|
3062
|
+
};
|
|
3063
|
+
function O0(n) {
|
|
3064
|
+
for (let l in n)
|
|
3065
|
+
e[l] && (e[l] = n[l]);
|
|
3066
|
+
}
|
|
3067
|
+
function N0(n) {
|
|
3068
|
+
let l = g0(n);
|
|
3031
3069
|
console.log(l);
|
|
3032
|
-
let t =
|
|
3070
|
+
let t = A("math");
|
|
3033
3071
|
t.setAttribute("display", "block");
|
|
3034
|
-
let r =
|
|
3072
|
+
let r = E(l);
|
|
3035
3073
|
return t.append(r), t;
|
|
3036
3074
|
}
|
|
3037
|
-
function
|
|
3038
|
-
return
|
|
3075
|
+
function S0(n) {
|
|
3076
|
+
return N0(n).outerHTML;
|
|
3039
3077
|
}
|
|
3040
3078
|
export {
|
|
3041
|
-
|
|
3042
|
-
|
|
3079
|
+
O0 as init,
|
|
3080
|
+
N0 as toMML,
|
|
3081
|
+
S0 as toMMLHTML
|
|
3043
3082
|
};
|
|
3044
3083
|
//# sourceMappingURL=xmmath.es.js.map
|