katex 0.12.0 → 0.13.3
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/CHANGELOG.md +112 -0
- package/LICENSE +1 -1
- package/README.md +8 -7
- package/contrib/auto-render/auto-render.js +12 -19
- package/contrib/auto-render/index.html +9 -3
- package/contrib/auto-render/splitAtDelimiters.js +44 -61
- package/contrib/auto-render/test/auto-render-spec.js +88 -52
- package/contrib/copy-tex/README.md +5 -9
- package/contrib/copy-tex/copy-tex.css +0 -3
- package/contrib/mathtex-script-type/README.md +5 -5
- package/contrib/mhchem/README.md +4 -2
- package/contrib/render-a11y-string/render-a11y-string.js +31 -2
- package/contrib/render-a11y-string/test/render-a11y-string-spec.js +23 -0
- package/dist/README.md +8 -7
- package/dist/contrib/auto-render.js +148 -171
- package/dist/contrib/auto-render.min.js +1 -1
- package/dist/contrib/auto-render.mjs +91 -95
- package/dist/contrib/copy-tex.css +3 -3
- package/dist/contrib/copy-tex.js +11 -108
- package/dist/contrib/copy-tex.min.css +1 -1
- package/dist/contrib/copy-tex.min.js +1 -1
- package/dist/contrib/copy-tex.mjs +21 -20
- package/dist/contrib/mathtex-script-type.js +66 -91
- package/dist/contrib/mathtex-script-type.min.js +1 -1
- package/dist/contrib/mathtex-script-type.mjs +3 -3
- package/dist/contrib/mhchem.js +70 -95
- package/dist/contrib/mhchem.min.js +1 -1
- package/dist/contrib/mhchem.mjs +2 -2
- package/dist/contrib/render-a11y-string.js +97 -92
- package/dist/contrib/render-a11y-string.min.js +1 -1
- package/dist/contrib/render-a11y-string.mjs +86 -45
- package/dist/fonts/KaTeX_AMS-Regular.ttf +0 -0
- package/dist/fonts/KaTeX_AMS-Regular.woff +0 -0
- package/dist/fonts/KaTeX_AMS-Regular.woff2 +0 -0
- package/dist/fonts/KaTeX_Caligraphic-Bold.ttf +0 -0
- package/dist/fonts/KaTeX_Caligraphic-Bold.woff +0 -0
- package/dist/fonts/KaTeX_Caligraphic-Bold.woff2 +0 -0
- package/dist/fonts/KaTeX_Caligraphic-Regular.ttf +0 -0
- package/dist/fonts/KaTeX_Caligraphic-Regular.woff +0 -0
- package/dist/fonts/KaTeX_Caligraphic-Regular.woff2 +0 -0
- package/dist/fonts/KaTeX_Fraktur-Bold.ttf +0 -0
- package/dist/fonts/KaTeX_Fraktur-Bold.woff +0 -0
- package/dist/fonts/KaTeX_Fraktur-Bold.woff2 +0 -0
- package/dist/fonts/KaTeX_Fraktur-Regular.ttf +0 -0
- package/dist/fonts/KaTeX_Fraktur-Regular.woff +0 -0
- package/dist/fonts/KaTeX_Fraktur-Regular.woff2 +0 -0
- package/dist/fonts/KaTeX_Main-Bold.ttf +0 -0
- package/dist/fonts/KaTeX_Main-Bold.woff +0 -0
- package/dist/fonts/KaTeX_Main-Bold.woff2 +0 -0
- package/dist/fonts/KaTeX_Main-BoldItalic.ttf +0 -0
- package/dist/fonts/KaTeX_Main-BoldItalic.woff +0 -0
- package/dist/fonts/KaTeX_Main-BoldItalic.woff2 +0 -0
- package/dist/fonts/KaTeX_Main-Italic.ttf +0 -0
- package/dist/fonts/KaTeX_Main-Italic.woff +0 -0
- package/dist/fonts/KaTeX_Main-Italic.woff2 +0 -0
- package/dist/fonts/KaTeX_Main-Regular.ttf +0 -0
- package/dist/fonts/KaTeX_Main-Regular.woff +0 -0
- package/dist/fonts/KaTeX_Main-Regular.woff2 +0 -0
- package/dist/fonts/KaTeX_Math-BoldItalic.ttf +0 -0
- package/dist/fonts/KaTeX_Math-BoldItalic.woff +0 -0
- package/dist/fonts/KaTeX_Math-BoldItalic.woff2 +0 -0
- package/dist/fonts/KaTeX_Math-Italic.ttf +0 -0
- package/dist/fonts/KaTeX_Math-Italic.woff +0 -0
- package/dist/fonts/KaTeX_Math-Italic.woff2 +0 -0
- package/dist/fonts/KaTeX_SansSerif-Bold.ttf +0 -0
- package/dist/fonts/KaTeX_SansSerif-Bold.woff +0 -0
- package/dist/fonts/KaTeX_SansSerif-Bold.woff2 +0 -0
- package/dist/fonts/KaTeX_SansSerif-Italic.ttf +0 -0
- package/dist/fonts/KaTeX_SansSerif-Italic.woff +0 -0
- package/dist/fonts/KaTeX_SansSerif-Italic.woff2 +0 -0
- package/dist/fonts/KaTeX_SansSerif-Regular.ttf +0 -0
- package/dist/fonts/KaTeX_SansSerif-Regular.woff +0 -0
- package/dist/fonts/KaTeX_SansSerif-Regular.woff2 +0 -0
- package/dist/fonts/KaTeX_Script-Regular.ttf +0 -0
- package/dist/fonts/KaTeX_Script-Regular.woff +0 -0
- package/dist/fonts/KaTeX_Script-Regular.woff2 +0 -0
- package/dist/fonts/KaTeX_Size1-Regular.ttf +0 -0
- package/dist/fonts/KaTeX_Size1-Regular.woff +0 -0
- package/dist/fonts/KaTeX_Size1-Regular.woff2 +0 -0
- package/dist/fonts/KaTeX_Size2-Regular.ttf +0 -0
- package/dist/fonts/KaTeX_Size2-Regular.woff +0 -0
- package/dist/fonts/KaTeX_Size2-Regular.woff2 +0 -0
- package/dist/fonts/KaTeX_Size3-Regular.ttf +0 -0
- package/dist/fonts/KaTeX_Size3-Regular.woff +0 -0
- package/dist/fonts/KaTeX_Size3-Regular.woff2 +0 -0
- package/dist/fonts/KaTeX_Size4-Regular.ttf +0 -0
- package/dist/fonts/KaTeX_Size4-Regular.woff +0 -0
- package/dist/fonts/KaTeX_Size4-Regular.woff2 +0 -0
- package/dist/fonts/KaTeX_Typewriter-Regular.ttf +0 -0
- package/dist/fonts/KaTeX_Typewriter-Regular.woff +0 -0
- package/dist/fonts/KaTeX_Typewriter-Regular.woff2 +0 -0
- package/dist/katex.css +66 -10
- package/dist/katex.js +2714 -1950
- package/dist/katex.min.css +1 -1
- package/dist/katex.min.js +1 -1
- package/dist/katex.mjs +3162 -2372
- package/katex.js +4 -3
- package/package.json +69 -59
- package/src/Lexer.js +4 -2
- package/src/MacroExpander.js +117 -37
- package/src/Options.js +2 -2
- package/src/ParseError.js +1 -1
- package/src/Parser.js +100 -159
- package/src/Settings.js +2 -2
- package/src/Style.js +4 -4
- package/src/Token.js +1 -1
- package/src/buildCommon.js +12 -5
- package/src/buildHTML.js +11 -0
- package/src/buildMathML.js +6 -0
- package/src/defineEnvironment.js +0 -3
- package/src/defineFunction.js +15 -22
- package/src/delimiter.js +61 -57
- package/src/domTree.js +1 -1
- package/src/environments/array.js +223 -35
- package/src/environments/cd.js +312 -0
- package/src/fontMetrics.js +1 -1
- package/src/fontMetricsData.js +2076 -0
- package/src/fonts/.gitignore +9 -0
- package/src/fonts/Makefile +139 -0
- package/src/fonts/default.cfg +20 -0
- package/src/fonts/generate_fonts.py +61 -0
- package/src/fonts/lib/Extra.otf +0 -0
- package/src/fonts/lib/Space.ttx +234 -0
- package/src/fonts/makeBlacker +49 -0
- package/src/fonts/makeFF +2003 -0
- package/src/fonts/xbbold.mf +182 -0
- package/src/fonts.less +64 -0
- package/src/functions/accent.js +3 -2
- package/src/functions/arrow.js +8 -2
- package/src/functions/color.js +4 -4
- package/src/functions/cr.js +7 -25
- package/src/functions/def.js +50 -24
- package/src/functions/delimsizing.js +8 -0
- package/src/functions/enclose.js +80 -12
- package/src/functions/environment.js +1 -1
- package/src/functions/font.js +3 -4
- package/src/functions/genfrac.js +36 -11
- package/src/functions/hbox.js +39 -0
- package/src/functions/kern.js +1 -0
- package/src/functions/mathchoice.js +1 -0
- package/src/functions/mclass.js +2 -1
- package/src/functions/op.js +3 -7
- package/src/functions/operatorname.js +1 -1
- package/src/functions/raisebox.js +0 -1
- package/src/functions/styling.js +1 -0
- package/src/functions/supsub.js +1 -3
- package/src/functions/symbolsOrd.js +0 -2
- package/src/functions/text.js +2 -3
- package/src/functions/vcenter.js +44 -0
- package/src/functions.js +3 -0
- package/src/katex.less +69 -16
- package/src/macros.js +42 -6
- package/src/mathMLTree.js +16 -1
- package/src/metrics/.gitignore +1 -0
- package/src/metrics/README.md +23 -0
- package/src/metrics/extract_tfms.py +114 -0
- package/src/metrics/extract_ttfs.py +119 -0
- package/src/metrics/format_json.py +28 -0
- package/src/metrics/mapping.pl +1224 -0
- package/src/metrics/parse_tfm.py +211 -0
- package/src/parseNode.js +29 -1
- package/src/parseTree.js +6 -0
- package/src/stretchy.js +12 -5
- package/src/svgGeometry.js +33 -4
- package/src/symbols.js +5 -3
- package/src/types.js +3 -2
- package/src/unicodeScripts.js +5 -0
|
@@ -11,7 +11,7 @@ included in the page, in addition to KaTeX.
|
|
|
11
11
|
Load the extension by adding the following line to your HTML file.
|
|
12
12
|
|
|
13
13
|
```html
|
|
14
|
-
<script defer src="https://cdn.jsdelivr.net/npm/katex@0.
|
|
14
|
+
<script defer src="https://cdn.jsdelivr.net/npm/katex@0.13.3/dist/contrib/mathtex-script-type.min.js" integrity="sha384-lfASb0Jhxn21qr4pih+Mx6uK2+JEKTtnpMnsCo+PTmb3n/iSUhox6v7eGkBfi47O" crossorigin="anonymous"></script>
|
|
15
15
|
```
|
|
16
16
|
You can download the script and use it locally, or from a local KaTeX installation instead.
|
|
17
17
|
|
|
@@ -23,9 +23,9 @@ Then, in the body, we use a `math/tex` script to typeset the equation `x+\sqrt{1
|
|
|
23
23
|
<!DOCTYPE html>
|
|
24
24
|
<html>
|
|
25
25
|
<head>
|
|
26
|
-
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/katex@0.
|
|
27
|
-
<script src="https://cdn.jsdelivr.net/npm/katex@0.
|
|
28
|
-
<script defer src="https://cdn.jsdelivr.net/npm/katex@0.
|
|
26
|
+
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/katex@0.13.3/dist/katex.min.css" integrity="sha384-ThssJ7YtjywV52Gj4JE/1SQEDoMEckXyhkFVwaf4nDSm5OBlXeedVYjuuUd0Yua+" crossorigin="anonymous">
|
|
27
|
+
<script src="https://cdn.jsdelivr.net/npm/katex@0.13.3/dist/katex.min.js" integrity="sha384-Bi8OWqMXO1ta+a4EPkZv7bYGIes7C3krGSZoTGNTAnAn5eYQc7IIXrJ/7ck1drAi" crossorigin="anonymous"></script>
|
|
28
|
+
<script defer src="https://cdn.jsdelivr.net/npm/katex@0.13.3/dist/contrib/mathtex-script-type.min.js" integrity="sha384-lfASb0Jhxn21qr4pih+Mx6uK2+JEKTtnpMnsCo+PTmb3n/iSUhox6v7eGkBfi47O" crossorigin="anonymous"></script>
|
|
29
29
|
</head>
|
|
30
30
|
<body>
|
|
31
31
|
<script type="math/tex">x+\sqrt{1-x^2}</script>
|
|
@@ -35,4 +35,4 @@ Then, in the body, we use a `math/tex` script to typeset the equation `x+\sqrt{1
|
|
|
35
35
|
|
|
36
36
|
ECMAScript module is also available:
|
|
37
37
|
```html
|
|
38
|
-
<script type="module" src="https://cdn.jsdelivr.net/npm/katex@0.
|
|
38
|
+
<script type="module" src="https://cdn.jsdelivr.net/npm/katex@0.13.3/dist/contrib/mathtex-script-type.mjs" integrity="sha384-4EJvC5tvqq9XJxXvdD4JutBokuFw/dCe2AB4gZ9sRpwFFXECpL3qT43tmE0PkpVg" crossorigin="anonymous"></script>
|
package/contrib/mhchem/README.md
CHANGED
|
@@ -4,12 +4,14 @@ This extension adds to KaTeX the `\ce` and `\pu` functions from the [mhchem](htt
|
|
|
4
4
|
|
|
5
5
|
### Usage
|
|
6
6
|
|
|
7
|
-
This extension isn't part of core KaTeX, so the script should be separately included. Write the following line into the HTML page's `<head>`. Place it *after* the line that calls `katex.js`.
|
|
7
|
+
This extension isn't part of core KaTeX, so the script should be separately included. Write the following line into the HTML page's `<head>`. Place it *after* the line that calls `katex.js`, and if you make use of the [auto-render](https://katex.org/docs/autorender.html) extension, place it *before* the line that calls `auto-render.js`.
|
|
8
8
|
|
|
9
9
|
```html
|
|
10
|
-
<script src="https://cdn.jsdelivr.net/npm/katex@0.
|
|
10
|
+
<script defer src="https://cdn.jsdelivr.net/npm/katex@0.13.3/dist/contrib/mhchem.min.js" integrity="sha384-LIgAiYlGSAdpNC9+YDjDPF6JeS/RRIumtNo0CmyQERZ/+g0h9MbuYQwf/5pQ4Y4M" crossorigin="anonymous"></script>
|
|
11
11
|
```
|
|
12
12
|
|
|
13
|
+
If you remove the `defer` attribute from this tag, then you must also remove the `defer` attribute from the `<script src="https://../katex.min.js">` tag.
|
|
14
|
+
|
|
13
15
|
### Syntax
|
|
14
16
|
|
|
15
17
|
See the [mhchem Manual](https://mhchem.github.io/MathJax-mhchem/) for a full explanation of the input syntax, with working examples. The manual also includes a demonstration box.
|
|
@@ -188,7 +188,8 @@ const buildString = (
|
|
|
188
188
|
a11yStrings.length > 0 &&
|
|
189
189
|
// TODO(kevinb): check that the last item in a11yStrings is a string
|
|
190
190
|
// I think we might be able to drop the nested arrays, which would make
|
|
191
|
-
// this easier to type
|
|
191
|
+
// this easier to type
|
|
192
|
+
// $FlowFixMe
|
|
192
193
|
/^\d+$/.test(a11yStrings[a11yStrings.length - 1])
|
|
193
194
|
) {
|
|
194
195
|
a11yStrings[a11yStrings.length - 1] += ret;
|
|
@@ -326,6 +327,11 @@ const handleObject = (
|
|
|
326
327
|
break;
|
|
327
328
|
}
|
|
328
329
|
|
|
330
|
+
case "hbox": {
|
|
331
|
+
buildA11yStrings(tree.body, a11yStrings, atomType);
|
|
332
|
+
break;
|
|
333
|
+
}
|
|
334
|
+
|
|
329
335
|
case "kern": {
|
|
330
336
|
// No op: we don't attempt to present kerning information
|
|
331
337
|
// to the screen reader.
|
|
@@ -533,11 +539,23 @@ const handleObject = (
|
|
|
533
539
|
regionStrings.push("end strikeout");
|
|
534
540
|
});
|
|
535
541
|
break;
|
|
542
|
+
} else if (/phase/.test(tree.label)) {
|
|
543
|
+
buildRegion(a11yStrings, function(regionStrings) {
|
|
544
|
+
regionStrings.push("start phase angle");
|
|
545
|
+
buildA11yStrings(tree.body, regionStrings, atomType);
|
|
546
|
+
regionStrings.push("end phase angle");
|
|
547
|
+
});
|
|
548
|
+
break;
|
|
536
549
|
}
|
|
537
550
|
throw new Error(
|
|
538
551
|
`KaTeX-a11y: enclose node with ${tree.label} not supported yet`);
|
|
539
552
|
}
|
|
540
553
|
|
|
554
|
+
case "vcenter": {
|
|
555
|
+
buildA11yStrings(tree.body, a11yStrings, atomType);
|
|
556
|
+
break;
|
|
557
|
+
}
|
|
558
|
+
|
|
541
559
|
case "vphantom": {
|
|
542
560
|
throw new Error("KaTeX-a11y: vphantom not implemented yet");
|
|
543
561
|
}
|
|
@@ -629,6 +647,14 @@ const handleObject = (
|
|
|
629
647
|
throw new Error("KaTeX-a11y: xArrow not implemented yet");
|
|
630
648
|
}
|
|
631
649
|
|
|
650
|
+
case "cdlabel": {
|
|
651
|
+
throw new Error("KaTeX-a11y: cdlabel not implemented yet");
|
|
652
|
+
}
|
|
653
|
+
|
|
654
|
+
case "cdlabelparent": {
|
|
655
|
+
throw new Error("KaTeX-a11y: cdlabelparent not implemented yet");
|
|
656
|
+
}
|
|
657
|
+
|
|
632
658
|
case "mclass": {
|
|
633
659
|
// \neq and \ne are macros so we let "htmlmathml" render the mathmal
|
|
634
660
|
// side of things and extract the text from that.
|
|
@@ -702,7 +728,10 @@ const flatten = function(array) {
|
|
|
702
728
|
return result;
|
|
703
729
|
};
|
|
704
730
|
|
|
705
|
-
const renderA11yString = function(
|
|
731
|
+
const renderA11yString = function(
|
|
732
|
+
text: string,
|
|
733
|
+
settings?: SettingsOptions,
|
|
734
|
+
): string {
|
|
706
735
|
|
|
707
736
|
const tree = katex.__parse(text, settings);
|
|
708
737
|
const a11yStrings = buildA11yStrings(tree, [], "normal");
|
|
@@ -151,6 +151,15 @@ describe("renderA11yString", () => {
|
|
|
151
151
|
});
|
|
152
152
|
});
|
|
153
153
|
|
|
154
|
+
describe("phase", () => {
|
|
155
|
+
test("\\phase", () => {
|
|
156
|
+
const result = renderA11yString("\\phase{a}");
|
|
157
|
+
expect(result).toMatchInlineSnapshot(
|
|
158
|
+
`"start phase angle, a, end phase angle"`,
|
|
159
|
+
);
|
|
160
|
+
});
|
|
161
|
+
});
|
|
162
|
+
|
|
154
163
|
describe("exponents", () => {
|
|
155
164
|
test("simple exponent", () => {
|
|
156
165
|
const result = renderA11yString("e^x");
|
|
@@ -263,6 +272,13 @@ describe("renderA11yString", () => {
|
|
|
263
272
|
});
|
|
264
273
|
});
|
|
265
274
|
|
|
275
|
+
describe("hbox", () => {
|
|
276
|
+
test("\\hbox", () => {
|
|
277
|
+
const result = renderA11yString("x+\\hbox{y}");
|
|
278
|
+
expect(result).toMatchInlineSnapshot(`"x, plus, y"`);
|
|
279
|
+
});
|
|
280
|
+
});
|
|
281
|
+
|
|
266
282
|
describe("inner", () => {
|
|
267
283
|
test("\\ldots", () => {
|
|
268
284
|
const result = renderA11yString("\\ldots");
|
|
@@ -515,6 +531,13 @@ describe("renderA11yString", () => {
|
|
|
515
531
|
});
|
|
516
532
|
});
|
|
517
533
|
|
|
534
|
+
describe("vcenter", () => {
|
|
535
|
+
test("\\vcenter", () => {
|
|
536
|
+
const result = renderA11yString("x+\\vcenter{y}");
|
|
537
|
+
expect(result).toMatchInlineSnapshot(`"x, plus, y"`);
|
|
538
|
+
});
|
|
539
|
+
});
|
|
540
|
+
|
|
518
541
|
describe("verb", () => {
|
|
519
542
|
test("\\verb", () => {
|
|
520
543
|
const result = renderA11yString("\\verb|hello|");
|
package/dist/README.md
CHANGED
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
# [<img src="https://katex.org/img/katex-logo-black.svg" width="130" alt="KaTeX">](https://katex.org/)
|
|
2
2
|
[](https://www.npmjs.com/package/katex)
|
|
3
|
-
[](https://github.com/semantic-release/semantic-release)
|
|
4
|
+
[](https://github.com/KaTeX/KaTeX/actions?query=workflow%3ACI)
|
|
4
5
|
[](https://codecov.io/gh/KaTeX/KaTeX)
|
|
5
|
-
[](https://dependabot.com)
|
|
6
|
+
[](https://github.com/KaTeX/KaTeX/discussions)
|
|
7
7
|
[](https://www.jsdelivr.com/package/npm/katex)
|
|
8
|
-

|
|
9
|
+
[](https://gitpod.io/#https://github.com/KaTeX/KaTeX)
|
|
9
10
|
|
|
10
11
|
KaTeX is a fast, easy-to-use JavaScript library for TeX math rendering on the web.
|
|
11
12
|
|
|
@@ -29,13 +30,13 @@ Try out KaTeX [on the demo page](https://katex.org/#demo)!
|
|
|
29
30
|
<!-- KaTeX requires the use of the HTML5 doctype. Without it, KaTeX may not render properly -->
|
|
30
31
|
<html>
|
|
31
32
|
<head>
|
|
32
|
-
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/katex@0.
|
|
33
|
+
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/katex@0.13.3/dist/katex.min.css" integrity="sha384-ThssJ7YtjywV52Gj4JE/1SQEDoMEckXyhkFVwaf4nDSm5OBlXeedVYjuuUd0Yua+" crossorigin="anonymous">
|
|
33
34
|
|
|
34
35
|
<!-- The loading of KaTeX is deferred to speed up page rendering -->
|
|
35
|
-
<script defer src="https://cdn.jsdelivr.net/npm/katex@0.
|
|
36
|
+
<script defer src="https://cdn.jsdelivr.net/npm/katex@0.13.3/dist/katex.min.js" integrity="sha384-Bi8OWqMXO1ta+a4EPkZv7bYGIes7C3krGSZoTGNTAnAn5eYQc7IIXrJ/7ck1drAi" crossorigin="anonymous"></script>
|
|
36
37
|
|
|
37
38
|
<!-- To automatically render math in text elements, include the auto-render extension: -->
|
|
38
|
-
<script defer src="https://cdn.jsdelivr.net/npm/katex@0.
|
|
39
|
+
<script defer src="https://cdn.jsdelivr.net/npm/katex@0.13.3/dist/contrib/auto-render.min.js" integrity="sha384-vZTG03m+2yp6N6BNi5iM4rW4oIwk5DfcNdFfxkk9ZWpDriOkXX8voJBFrAO7MpVl" crossorigin="anonymous"
|
|
39
40
|
onload="renderMathInElement(document.body);"></script>
|
|
40
41
|
</head>
|
|
41
42
|
...
|
|
@@ -7,111 +7,88 @@
|
|
|
7
7
|
exports["renderMathInElement"] = factory(require("katex"));
|
|
8
8
|
else
|
|
9
9
|
root["renderMathInElement"] = factory(root["katex"]);
|
|
10
|
-
})((typeof self !== 'undefined' ? self : this), function(
|
|
11
|
-
return /******/ (function(
|
|
10
|
+
})((typeof self !== 'undefined' ? self : this), function(__WEBPACK_EXTERNAL_MODULE__974__) {
|
|
11
|
+
return /******/ (function() { // webpackBootstrap
|
|
12
|
+
/******/ "use strict";
|
|
13
|
+
/******/ var __webpack_modules__ = ({
|
|
14
|
+
|
|
15
|
+
/***/ 974:
|
|
16
|
+
/***/ (function(module) {
|
|
17
|
+
|
|
18
|
+
module.exports = __WEBPACK_EXTERNAL_MODULE__974__;
|
|
19
|
+
|
|
20
|
+
/***/ })
|
|
21
|
+
|
|
22
|
+
/******/ });
|
|
23
|
+
/************************************************************************/
|
|
12
24
|
/******/ // The module cache
|
|
13
|
-
/******/ var
|
|
14
|
-
/******/
|
|
25
|
+
/******/ var __webpack_module_cache__ = {};
|
|
26
|
+
/******/
|
|
15
27
|
/******/ // The require function
|
|
16
28
|
/******/ function __webpack_require__(moduleId) {
|
|
17
|
-
/******/
|
|
18
29
|
/******/ // Check if module is in cache
|
|
19
|
-
/******/
|
|
20
|
-
/******/
|
|
30
|
+
/******/ var cachedModule = __webpack_module_cache__[moduleId];
|
|
31
|
+
/******/ if (cachedModule !== undefined) {
|
|
32
|
+
/******/ return cachedModule.exports;
|
|
21
33
|
/******/ }
|
|
22
34
|
/******/ // Create a new module (and put it into the cache)
|
|
23
|
-
/******/ var module =
|
|
24
|
-
/******/
|
|
25
|
-
/******/
|
|
35
|
+
/******/ var module = __webpack_module_cache__[moduleId] = {
|
|
36
|
+
/******/ // no module.id needed
|
|
37
|
+
/******/ // no module.loaded needed
|
|
26
38
|
/******/ exports: {}
|
|
27
39
|
/******/ };
|
|
28
|
-
/******/
|
|
40
|
+
/******/
|
|
29
41
|
/******/ // Execute the module function
|
|
30
|
-
/******/
|
|
31
|
-
/******/
|
|
32
|
-
/******/ // Flag the module as loaded
|
|
33
|
-
/******/ module.l = true;
|
|
34
|
-
/******/
|
|
42
|
+
/******/ __webpack_modules__[moduleId](module, module.exports, __webpack_require__);
|
|
43
|
+
/******/
|
|
35
44
|
/******/ // Return the exports of the module
|
|
36
45
|
/******/ return module.exports;
|
|
37
46
|
/******/ }
|
|
38
|
-
/******/
|
|
39
|
-
/******/
|
|
40
|
-
/******/ // expose the modules object (__webpack_modules__)
|
|
41
|
-
/******/ __webpack_require__.m = modules;
|
|
42
|
-
/******/
|
|
43
|
-
/******/ // expose the module cache
|
|
44
|
-
/******/ __webpack_require__.c = installedModules;
|
|
45
|
-
/******/
|
|
46
|
-
/******/ // define getter function for harmony exports
|
|
47
|
-
/******/ __webpack_require__.d = function(exports, name, getter) {
|
|
48
|
-
/******/ if(!__webpack_require__.o(exports, name)) {
|
|
49
|
-
/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
|
|
50
|
-
/******/ }
|
|
51
|
-
/******/ };
|
|
52
|
-
/******/
|
|
53
|
-
/******/ // define __esModule on exports
|
|
54
|
-
/******/ __webpack_require__.r = function(exports) {
|
|
55
|
-
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
|
|
56
|
-
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
57
|
-
/******/ }
|
|
58
|
-
/******/ Object.defineProperty(exports, '__esModule', { value: true });
|
|
59
|
-
/******/ };
|
|
60
|
-
/******/
|
|
61
|
-
/******/ // create a fake namespace object
|
|
62
|
-
/******/ // mode & 1: value is a module id, require it
|
|
63
|
-
/******/ // mode & 2: merge all properties of value into the ns
|
|
64
|
-
/******/ // mode & 4: return value when already ns object
|
|
65
|
-
/******/ // mode & 8|1: behave like require
|
|
66
|
-
/******/ __webpack_require__.t = function(value, mode) {
|
|
67
|
-
/******/ if(mode & 1) value = __webpack_require__(value);
|
|
68
|
-
/******/ if(mode & 8) return value;
|
|
69
|
-
/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
|
|
70
|
-
/******/ var ns = Object.create(null);
|
|
71
|
-
/******/ __webpack_require__.r(ns);
|
|
72
|
-
/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
|
|
73
|
-
/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
|
|
74
|
-
/******/ return ns;
|
|
75
|
-
/******/ };
|
|
76
|
-
/******/
|
|
77
|
-
/******/ // getDefaultExport function for compatibility with non-harmony modules
|
|
78
|
-
/******/ __webpack_require__.n = function(module) {
|
|
79
|
-
/******/ var getter = module && module.__esModule ?
|
|
80
|
-
/******/ function getDefault() { return module['default']; } :
|
|
81
|
-
/******/ function getModuleExports() { return module; };
|
|
82
|
-
/******/ __webpack_require__.d(getter, 'a', getter);
|
|
83
|
-
/******/ return getter;
|
|
84
|
-
/******/ };
|
|
85
|
-
/******/
|
|
86
|
-
/******/ // Object.prototype.hasOwnProperty.call
|
|
87
|
-
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
|
|
88
|
-
/******/
|
|
89
|
-
/******/ // __webpack_public_path__
|
|
90
|
-
/******/ __webpack_require__.p = "";
|
|
91
|
-
/******/
|
|
92
|
-
/******/
|
|
93
|
-
/******/ // Load entry module and return exports
|
|
94
|
-
/******/ return __webpack_require__(__webpack_require__.s = 1);
|
|
95
|
-
/******/ })
|
|
47
|
+
/******/
|
|
96
48
|
/************************************************************************/
|
|
97
|
-
/******/
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
module.
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
49
|
+
/******/ /* webpack/runtime/compat get default export */
|
|
50
|
+
/******/ !function() {
|
|
51
|
+
/******/ // getDefaultExport function for compatibility with non-harmony modules
|
|
52
|
+
/******/ __webpack_require__.n = function(module) {
|
|
53
|
+
/******/ var getter = module && module.__esModule ?
|
|
54
|
+
/******/ function() { return module['default']; } :
|
|
55
|
+
/******/ function() { return module; };
|
|
56
|
+
/******/ __webpack_require__.d(getter, { a: getter });
|
|
57
|
+
/******/ return getter;
|
|
58
|
+
/******/ };
|
|
59
|
+
/******/ }();
|
|
60
|
+
/******/
|
|
61
|
+
/******/ /* webpack/runtime/define property getters */
|
|
62
|
+
/******/ !function() {
|
|
63
|
+
/******/ // define getter functions for harmony exports
|
|
64
|
+
/******/ __webpack_require__.d = function(exports, definition) {
|
|
65
|
+
/******/ for(var key in definition) {
|
|
66
|
+
/******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {
|
|
67
|
+
/******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] });
|
|
68
|
+
/******/ }
|
|
69
|
+
/******/ }
|
|
70
|
+
/******/ };
|
|
71
|
+
/******/ }();
|
|
72
|
+
/******/
|
|
73
|
+
/******/ /* webpack/runtime/hasOwnProperty shorthand */
|
|
74
|
+
/******/ !function() {
|
|
75
|
+
/******/ __webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }
|
|
76
|
+
/******/ }();
|
|
77
|
+
/******/
|
|
78
|
+
/************************************************************************/
|
|
79
|
+
var __webpack_exports__ = {};
|
|
80
|
+
// This entry need to be wrapped in an IIFE because it need to be isolated against other modules in the chunk.
|
|
81
|
+
!function() {
|
|
106
82
|
|
|
107
|
-
|
|
108
|
-
__webpack_require__.
|
|
83
|
+
// EXPORTS
|
|
84
|
+
__webpack_require__.d(__webpack_exports__, {
|
|
85
|
+
"default": function() { return /* binding */ auto_render; }
|
|
86
|
+
});
|
|
109
87
|
|
|
110
88
|
// EXTERNAL MODULE: external "katex"
|
|
111
|
-
var external_katex_ = __webpack_require__(
|
|
89
|
+
var external_katex_ = __webpack_require__(974);
|
|
112
90
|
var external_katex_default = /*#__PURE__*/__webpack_require__.n(external_katex_);
|
|
113
|
-
|
|
114
|
-
// CONCATENATED MODULE: ./contrib/auto-render/splitAtDelimiters.js
|
|
91
|
+
;// CONCATENATED MODULE: ./contrib/auto-render/splitAtDelimiters.js
|
|
115
92
|
/* eslint no-constant-condition:0 */
|
|
116
93
|
var findEndOfMath = function findEndOfMath(delimiter, text, startIndex) {
|
|
117
94
|
// Adapted from
|
|
@@ -139,96 +116,76 @@ var findEndOfMath = function findEndOfMath(delimiter, text, startIndex) {
|
|
|
139
116
|
return -1;
|
|
140
117
|
};
|
|
141
118
|
|
|
142
|
-
var
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
for (var i = 0; i < startData.length; i++) {
|
|
146
|
-
if (startData[i].type === "text") {
|
|
147
|
-
var text = startData[i].data;
|
|
148
|
-
var lookingForLeft = true;
|
|
149
|
-
var currIndex = 0;
|
|
150
|
-
var nextIndex = void 0;
|
|
151
|
-
nextIndex = text.indexOf(leftDelim);
|
|
152
|
-
|
|
153
|
-
if (nextIndex !== -1) {
|
|
154
|
-
currIndex = nextIndex;
|
|
155
|
-
finalData.push({
|
|
156
|
-
type: "text",
|
|
157
|
-
data: text.slice(0, currIndex)
|
|
158
|
-
});
|
|
159
|
-
lookingForLeft = false;
|
|
160
|
-
}
|
|
119
|
+
var escapeRegex = function escapeRegex(string) {
|
|
120
|
+
return string.replace(/[-/\\^$*+?.()|[\]{}]/g, "\\$&");
|
|
121
|
+
};
|
|
161
122
|
|
|
162
|
-
|
|
163
|
-
if (lookingForLeft) {
|
|
164
|
-
nextIndex = text.indexOf(leftDelim, currIndex);
|
|
165
|
-
|
|
166
|
-
if (nextIndex === -1) {
|
|
167
|
-
break;
|
|
168
|
-
}
|
|
169
|
-
|
|
170
|
-
finalData.push({
|
|
171
|
-
type: "text",
|
|
172
|
-
data: text.slice(currIndex, nextIndex)
|
|
173
|
-
});
|
|
174
|
-
currIndex = nextIndex;
|
|
175
|
-
} else {
|
|
176
|
-
nextIndex = findEndOfMath(rightDelim, text, currIndex + leftDelim.length);
|
|
177
|
-
|
|
178
|
-
if (nextIndex === -1) {
|
|
179
|
-
break;
|
|
180
|
-
}
|
|
181
|
-
|
|
182
|
-
finalData.push({
|
|
183
|
-
type: "math",
|
|
184
|
-
data: text.slice(currIndex + leftDelim.length, nextIndex),
|
|
185
|
-
rawData: text.slice(currIndex, nextIndex + rightDelim.length),
|
|
186
|
-
display: display
|
|
187
|
-
});
|
|
188
|
-
currIndex = nextIndex + rightDelim.length;
|
|
189
|
-
}
|
|
123
|
+
var amsRegex = /^\\begin{/;
|
|
190
124
|
|
|
191
|
-
|
|
192
|
-
|
|
125
|
+
var splitAtDelimiters = function splitAtDelimiters(text, delimiters) {
|
|
126
|
+
var index;
|
|
127
|
+
var data = [];
|
|
128
|
+
var regexLeft = new RegExp("(" + delimiters.map(function (x) {
|
|
129
|
+
return escapeRegex(x.left);
|
|
130
|
+
}).join("|") + ")");
|
|
193
131
|
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
finalData.push(startData[i]);
|
|
132
|
+
while (true) {
|
|
133
|
+
index = text.search(regexLeft);
|
|
134
|
+
|
|
135
|
+
if (index === -1) {
|
|
136
|
+
break;
|
|
200
137
|
}
|
|
201
|
-
}
|
|
202
138
|
|
|
203
|
-
|
|
204
|
-
|
|
139
|
+
if (index > 0) {
|
|
140
|
+
data.push({
|
|
141
|
+
type: "text",
|
|
142
|
+
data: text.slice(0, index)
|
|
143
|
+
});
|
|
144
|
+
text = text.slice(index); // now text starts with delimiter
|
|
145
|
+
} // ... so this always succeeds:
|
|
205
146
|
|
|
206
|
-
/* harmony default export */ var auto_render_splitAtDelimiters = (splitAtDelimiters);
|
|
207
|
-
// CONCATENATED MODULE: ./contrib/auto-render/auto-render.js
|
|
208
|
-
/* eslint no-console:0 */
|
|
209
147
|
|
|
148
|
+
var i = delimiters.findIndex(function (delim) {
|
|
149
|
+
return text.startsWith(delim.left);
|
|
150
|
+
});
|
|
151
|
+
index = findEndOfMath(delimiters[i].right, text, delimiters[i].left.length);
|
|
210
152
|
|
|
153
|
+
if (index === -1) {
|
|
154
|
+
break;
|
|
155
|
+
}
|
|
211
156
|
|
|
212
|
-
var
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
157
|
+
var rawData = text.slice(0, index + delimiters[i].right.length);
|
|
158
|
+
var math = amsRegex.test(rawData) ? rawData : text.slice(delimiters[i].left.length, index);
|
|
159
|
+
data.push({
|
|
160
|
+
type: "math",
|
|
161
|
+
data: math,
|
|
162
|
+
rawData: rawData,
|
|
163
|
+
display: delimiters[i].display
|
|
164
|
+
});
|
|
165
|
+
text = text.slice(index + delimiters[i].right.length);
|
|
166
|
+
}
|
|
217
167
|
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
168
|
+
if (text !== "") {
|
|
169
|
+
data.push({
|
|
170
|
+
type: "text",
|
|
171
|
+
data: text
|
|
172
|
+
});
|
|
221
173
|
}
|
|
222
174
|
|
|
223
175
|
return data;
|
|
224
176
|
};
|
|
177
|
+
|
|
178
|
+
/* harmony default export */ var auto_render_splitAtDelimiters = (splitAtDelimiters);
|
|
179
|
+
;// CONCATENATED MODULE: ./contrib/auto-render/auto-render.js
|
|
180
|
+
/* eslint no-console:0 */
|
|
181
|
+
|
|
182
|
+
|
|
225
183
|
/* Note: optionsCopy is mutated by this method. If it is ever exposed in the
|
|
226
184
|
* API, we should copy it before mutating.
|
|
227
185
|
*/
|
|
228
186
|
|
|
229
|
-
|
|
230
|
-
var
|
|
231
|
-
var data = auto_render_splitWithDelimiters(text, optionsCopy.delimiters);
|
|
187
|
+
var renderMathInText = function renderMathInText(text, optionsCopy) {
|
|
188
|
+
var data = auto_render_splitAtDelimiters(text, optionsCopy.delimiters);
|
|
232
189
|
|
|
233
190
|
if (data.length === 1 && data[0].type === 'text') {
|
|
234
191
|
// There is no formula in the text.
|
|
@@ -254,9 +211,9 @@ var auto_render_renderMathInText = function renderMathInText(text, optionsCopy)
|
|
|
254
211
|
math = optionsCopy.preProcess(math);
|
|
255
212
|
}
|
|
256
213
|
|
|
257
|
-
external_katex_default.
|
|
214
|
+
external_katex_default().render(math, span, optionsCopy);
|
|
258
215
|
} catch (e) {
|
|
259
|
-
if (!(e instanceof external_katex_default.
|
|
216
|
+
if (!(e instanceof (external_katex_default()).ParseError)) {
|
|
260
217
|
throw e;
|
|
261
218
|
}
|
|
262
219
|
|
|
@@ -278,7 +235,7 @@ var renderElem = function renderElem(elem, optionsCopy) {
|
|
|
278
235
|
|
|
279
236
|
if (childNode.nodeType === 3) {
|
|
280
237
|
// Text node
|
|
281
|
-
var frag =
|
|
238
|
+
var frag = renderMathInText(childNode.textContent, optionsCopy);
|
|
282
239
|
|
|
283
240
|
if (frag) {
|
|
284
241
|
i += frag.childNodes.length - 1;
|
|
@@ -325,11 +282,29 @@ var renderMathInElement = function renderMathInElement(elem, options) {
|
|
|
325
282
|
display: false
|
|
326
283
|
}, // LaTeX uses $…$, but it ruins the display of normal `$` in text:
|
|
327
284
|
// {left: "$", right: "$", display: false},
|
|
328
|
-
//
|
|
329
|
-
//
|
|
330
|
-
// That makes it susceptible to finding a \\[0.3em] row delimiter and
|
|
331
|
-
// treating it as if it were the start of a KaTeX math zone.
|
|
285
|
+
// $ must come after $$
|
|
286
|
+
// Render AMS environments even if outside $$…$$ delimiters.
|
|
332
287
|
{
|
|
288
|
+
left: "\\begin{equation}",
|
|
289
|
+
right: "\\end{equation}",
|
|
290
|
+
display: true
|
|
291
|
+
}, {
|
|
292
|
+
left: "\\begin{align}",
|
|
293
|
+
right: "\\end{align}",
|
|
294
|
+
display: true
|
|
295
|
+
}, {
|
|
296
|
+
left: "\\begin{alignat}",
|
|
297
|
+
right: "\\end{alignat}",
|
|
298
|
+
display: true
|
|
299
|
+
}, {
|
|
300
|
+
left: "\\begin{gather}",
|
|
301
|
+
right: "\\end{gather}",
|
|
302
|
+
display: true
|
|
303
|
+
}, {
|
|
304
|
+
left: "\\begin{CD}",
|
|
305
|
+
right: "\\end{CD}",
|
|
306
|
+
display: true
|
|
307
|
+
}, {
|
|
333
308
|
left: "\\[",
|
|
334
309
|
right: "\\]",
|
|
335
310
|
display: true
|
|
@@ -343,8 +318,10 @@ var renderMathInElement = function renderMathInElement(elem, options) {
|
|
|
343
318
|
renderElem(elem, optionsCopy);
|
|
344
319
|
};
|
|
345
320
|
|
|
346
|
-
/* harmony default export */ var auto_render =
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
/******/
|
|
321
|
+
/* harmony default export */ var auto_render = (renderMathInElement);
|
|
322
|
+
}();
|
|
323
|
+
__webpack_exports__ = __webpack_exports__.default;
|
|
324
|
+
/******/ return __webpack_exports__;
|
|
325
|
+
/******/ })()
|
|
326
|
+
;
|
|
350
327
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("katex")):"function"==typeof define&&define.amd?define(["katex"],t):"object"==typeof exports?exports.renderMathInElement=t(require("katex")):e.renderMathInElement=t(e.katex)}("undefined"!=typeof self?self:this,function(e){return function(
|
|
1
|
+
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("katex")):"function"==typeof define&&define.amd?define(["katex"],t):"object"==typeof exports?exports.renderMathInElement=t(require("katex")):e.renderMathInElement=t(e.katex)}("undefined"!=typeof self?self:this,(function(e){return function(){"use strict";var t={974:function(t){t.exports=e}},r={};function n(e){var a=r[e];if(void 0!==a)return a.exports;var i=r[e]={exports:{}};return t[e](i,i.exports,n),i.exports}n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,{a:t}),t},n.d=function(e,t){for(var r in t)n.o(t,r)&&!n.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)};var a={};return function(){n.d(a,{default:function(){return s}});var e=n(974),t=n.n(e),r=function(e,t,r){for(var n=r,a=0,i=e.length;n<t.length;){var o=t[n];if(a<=0&&t.slice(n,n+i)===e)return n;"\\"===o?n++:"{"===o?a++:"}"===o&&a--,n++}return-1},i=/^\\begin{/,o=function(e,t){for(var n,a=[],o=new RegExp("("+t.map((function(e){return e.left.replace(/[-/\\^$*+?.()|[\]{}]/g,"\\$&")})).join("|")+")");-1!==(n=e.search(o));){n>0&&(a.push({type:"text",data:e.slice(0,n)}),e=e.slice(n));var l=t.findIndex((function(t){return e.startsWith(t.left)}));if(-1===(n=r(t[l].right,e,t[l].left.length)))break;var d=e.slice(0,n+t[l].right.length),s=i.test(d)?d:e.slice(t[l].left.length,n);a.push({type:"math",data:s,rawData:d,display:t[l].display}),e=e.slice(n+t[l].right.length)}return""!==e&&a.push({type:"text",data:e}),a},l=function(e,r){var n=o(e,r.delimiters);if(1===n.length&&"text"===n[0].type)return null;for(var a=document.createDocumentFragment(),i=0;i<n.length;i++)if("text"===n[i].type)a.appendChild(document.createTextNode(n[i].data));else{var l=document.createElement("span"),d=n[i].data;r.displayMode=n[i].display;try{r.preProcess&&(d=r.preProcess(d)),t().render(d,l,r)}catch(e){if(!(e instanceof t().ParseError))throw e;r.errorCallback("KaTeX auto-render: Failed to parse `"+n[i].data+"` with ",e),a.appendChild(document.createTextNode(n[i].rawData));continue}a.appendChild(l)}return a},d=function e(t,r){for(var n=0;n<t.childNodes.length;n++){var a=t.childNodes[n];if(3===a.nodeType){var i=l(a.textContent,r);i&&(n+=i.childNodes.length-1,t.replaceChild(i,a))}else 1===a.nodeType&&function(){var t=" "+a.className+" ";-1===r.ignoredTags.indexOf(a.nodeName.toLowerCase())&&r.ignoredClasses.every((function(e){return-1===t.indexOf(" "+e+" ")}))&&e(a,r)}()}},s=function(e,t){if(!e)throw new Error("No element provided to render");var r={};for(var n in t)t.hasOwnProperty(n)&&(r[n]=t[n]);r.delimiters=r.delimiters||[{left:"$$",right:"$$",display:!0},{left:"\\(",right:"\\)",display:!1},{left:"\\begin{equation}",right:"\\end{equation}",display:!0},{left:"\\begin{align}",right:"\\end{align}",display:!0},{left:"\\begin{alignat}",right:"\\end{alignat}",display:!0},{left:"\\begin{gather}",right:"\\end{gather}",display:!0},{left:"\\begin{CD}",right:"\\end{CD}",display:!0},{left:"\\[",right:"\\]",display:!0}],r.ignoredTags=r.ignoredTags||["script","noscript","style","textarea","pre","code","option"],r.ignoredClasses=r.ignoredClasses||[],r.errorCallback=r.errorCallback||console.error,r.macros=r.macros||{},d(e,r)}}(),a=a.default}()}));
|