mathpix-markdown-it 1.2.8 → 1.2.9

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.
Files changed (51) hide show
  1. package/.idea/workspace.xml +600 -417
  2. package/es5/bundle.js +1 -1
  3. package/es5/index.js +1 -1
  4. package/lib/index.d.ts +2 -2
  5. package/lib/index.js +2 -1
  6. package/lib/index.js.map +1 -1
  7. package/lib/markdown/common/consts.d.ts +8 -0
  8. package/lib/markdown/common/consts.js +10 -1
  9. package/lib/markdown/common/consts.js.map +1 -1
  10. package/lib/markdown/index.js +2 -0
  11. package/lib/markdown/index.js.map +1 -1
  12. package/lib/markdown/mathpix-markdown-plugins.js +2 -1
  13. package/lib/markdown/mathpix-markdown-plugins.js.map +1 -1
  14. package/lib/markdown/md-footnotes/block-rule.d.ts +2 -0
  15. package/lib/markdown/md-footnotes/block-rule.js +10 -0
  16. package/lib/markdown/md-footnotes/block-rule.js.map +1 -0
  17. package/lib/markdown/md-footnotes/core-rule.d.ts +1 -0
  18. package/lib/markdown/md-footnotes/core-rule.js +101 -0
  19. package/lib/markdown/md-footnotes/core-rule.js.map +1 -0
  20. package/lib/markdown/md-footnotes/inline-rule.d.ts +2 -0
  21. package/lib/markdown/md-footnotes/inline-rule.js +124 -0
  22. package/lib/markdown/md-footnotes/inline-rule.js.map +1 -0
  23. package/lib/markdown/md-footnotes/render-rule.d.ts +1 -0
  24. package/lib/markdown/md-footnotes/render-rule.js +15 -0
  25. package/lib/markdown/md-footnotes/render-rule.js.map +1 -0
  26. package/lib/markdown/md-inline-rule/core-inline.js +45 -2
  27. package/lib/markdown/md-inline-rule/core-inline.js.map +1 -1
  28. package/lib/markdown/md-latex-footnotes/block-rule.d.ts +3 -0
  29. package/lib/markdown/md-latex-footnotes/block-rule.js +161 -0
  30. package/lib/markdown/md-latex-footnotes/block-rule.js.map +1 -0
  31. package/lib/markdown/md-latex-footnotes/core-rule.d.ts +1 -0
  32. package/lib/markdown/md-latex-footnotes/core-rule.js +197 -0
  33. package/lib/markdown/md-latex-footnotes/core-rule.js.map +1 -0
  34. package/lib/markdown/md-latex-footnotes/index.d.ts +2 -0
  35. package/lib/markdown/md-latex-footnotes/index.js +38 -0
  36. package/lib/markdown/md-latex-footnotes/index.js.map +1 -0
  37. package/lib/markdown/md-latex-footnotes/inline-rule.d.ts +4 -0
  38. package/lib/markdown/md-latex-footnotes/inline-rule.js +322 -0
  39. package/lib/markdown/md-latex-footnotes/inline-rule.js.map +1 -0
  40. package/lib/markdown/md-latex-footnotes/render-rule.d.ts +9 -0
  41. package/lib/markdown/md-latex-footnotes/render-rule.js +103 -0
  42. package/lib/markdown/md-latex-footnotes/render-rule.js.map +1 -0
  43. package/lib/markdown/md-latex-footnotes/utils.d.ts +2 -0
  44. package/lib/markdown/md-latex-footnotes/utils.js +104 -0
  45. package/lib/markdown/md-latex-footnotes/utils.js.map +1 -0
  46. package/lib/markdown/mdPluginConfigured.d.ts +1 -0
  47. package/lib/markdown/mdPluginConfigured.js +3 -1
  48. package/lib/markdown/mdPluginConfigured.js.map +1 -1
  49. package/lib/mathpix-markdown-model/index.d.ts +2 -0
  50. package/lib/mathpix-markdown-model/index.js.map +1 -1
  51. package/package.json +1 -1
@@ -0,0 +1,161 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.latex_footnotetext_block = exports.latex_footnote_block = void 0;
4
+ var consts_1 = require("../common/consts");
5
+ var common_1 = require("../common");
6
+ var utils_1 = require("../utils");
7
+ var latex_footnote_block = function (state, startLine, endLine, silent) {
8
+ var _a;
9
+ try {
10
+ var token = void 0, lineText = void 0, pos = state.bMarks[startLine] + state.tShift[startLine], max = state.eMarks[startLine];
11
+ var nextLine = startLine + 1;
12
+ var startPos = pos;
13
+ var numbered = void 0;
14
+ lineText = state.src.slice(pos, max);
15
+ if (!consts_1.reOpenTagFootnote.test(lineText)) {
16
+ return false;
17
+ }
18
+ var dataTags = (0, utils_1.findOpenCloseTags)(lineText, consts_1.reOpenTagFootnote, '}');
19
+ if (!((_a = dataTags === null || dataTags === void 0 ? void 0 : dataTags.arrOpen) === null || _a === void 0 ? void 0 : _a.length)) {
20
+ return false;
21
+ }
22
+ var matchNumbered = dataTags.arrOpen[dataTags.arrOpen.length - 1].content
23
+ .match(consts_1.reOpenTagFootnoteNumbered);
24
+ if (matchNumbered) {
25
+ numbered = matchNumbered.groups.number;
26
+ }
27
+ var startFootnote = dataTags.arrOpen[dataTags.arrOpen.length - 1].posStart;
28
+ var startContent = dataTags.arrOpen[dataTags.arrOpen.length - 1].posEnd;
29
+ var content = lineText.slice(startContent);
30
+ var data = (0, common_1.findEndMarker)(content, -1, '{', '}', true);
31
+ if (data === null || data === void 0 ? void 0 : data.res) {
32
+ return false;
33
+ }
34
+ var hasEnd = false;
35
+ for (; nextLine <= endLine; nextLine++) {
36
+ pos = state.bMarks[nextLine];
37
+ max = state.eMarks[nextLine];
38
+ lineText = state.src.slice(pos, max);
39
+ if (hasEnd && (!lineText || !lineText.trim())) {
40
+ break;
41
+ }
42
+ content += '\n';
43
+ content += lineText;
44
+ data = (0, common_1.findEndMarker)(content, -1, '{', '}', true);
45
+ if (data.res) {
46
+ hasEnd = true;
47
+ }
48
+ }
49
+ if (!data || !data.res) {
50
+ return false;
51
+ }
52
+ /** For validation mode we can terminate immediately */
53
+ if (silent) {
54
+ return true;
55
+ }
56
+ content = data.content;
57
+ state.line = nextLine + 1;
58
+ token = state.push('paragraph_open', 'div', 1);
59
+ token.map = [startLine, state.line];
60
+ if (startFootnote > 0) {
61
+ token = state.push('inline', '', 0);
62
+ token.content = state.src.slice(startPos, startPos + startFootnote);
63
+ token.children = [];
64
+ }
65
+ token = state.push('footnote_latex', '', 0);
66
+ token.numbered = numbered;
67
+ var children = [];
68
+ state.md.block.parse(content, state.md, state.env, children);
69
+ token.children = children;
70
+ max = state.eMarks[nextLine];
71
+ if (max > startPos + startContent + data.nextPos) {
72
+ token = state.push('inline', '', 0);
73
+ token.content = state.src.slice(startPos + startContent + data.nextPos, max);
74
+ token.children = [];
75
+ }
76
+ token = state.push('paragraph_close', 'div', -1);
77
+ return true;
78
+ }
79
+ catch (e) {
80
+ return false;
81
+ }
82
+ };
83
+ exports.latex_footnote_block = latex_footnote_block;
84
+ var latex_footnotetext_block = function (state, startLine, endLine, silent) {
85
+ var _a;
86
+ try {
87
+ var token = void 0, lineText = void 0, pos = state.bMarks[startLine] + state.tShift[startLine], max = state.eMarks[startLine];
88
+ var nextLine = startLine + 1;
89
+ var startPos = pos;
90
+ var numbered = void 0;
91
+ lineText = state.src.slice(pos, max);
92
+ if (!consts_1.reOpenTagFootnotetext.test(lineText)) {
93
+ return false;
94
+ }
95
+ var dataTags = (0, utils_1.findOpenCloseTags)(lineText, consts_1.reOpenTagFootnotetext, '}');
96
+ if (!((_a = dataTags === null || dataTags === void 0 ? void 0 : dataTags.arrOpen) === null || _a === void 0 ? void 0 : _a.length)) {
97
+ return false;
98
+ }
99
+ var matchNumbered = dataTags.arrOpen[dataTags.arrOpen.length - 1].content
100
+ .match(consts_1.reOpenTagFootnotetextNumbered);
101
+ if (matchNumbered) {
102
+ numbered = matchNumbered.groups.number;
103
+ }
104
+ var startFootnote = dataTags.arrOpen[dataTags.arrOpen.length - 1].posStart;
105
+ var startContent = dataTags.arrOpen[dataTags.arrOpen.length - 1].posEnd;
106
+ var content = lineText.slice(startContent);
107
+ var data = (0, common_1.findEndMarker)(content, -1, '{', '}', true);
108
+ if (data === null || data === void 0 ? void 0 : data.res) {
109
+ return false;
110
+ }
111
+ var hasEnd = false;
112
+ for (; nextLine <= endLine; nextLine++) {
113
+ pos = state.bMarks[nextLine];
114
+ max = state.eMarks[nextLine];
115
+ lineText = state.src.slice(pos, max);
116
+ if (hasEnd && (!lineText || !lineText.trim())) {
117
+ break;
118
+ }
119
+ content += '\n';
120
+ content += lineText;
121
+ data = (0, common_1.findEndMarker)(content, -1, '{', '}', true);
122
+ if (data.res) {
123
+ hasEnd = true;
124
+ }
125
+ }
126
+ if (!data || !data.res) {
127
+ return false;
128
+ }
129
+ /** For validation mode we can terminate immediately */
130
+ if (silent) {
131
+ return true;
132
+ }
133
+ content = data.content;
134
+ state.line = nextLine + 1;
135
+ token = state.push('paragraph_open', 'div', 1);
136
+ token.map = [startLine, state.line];
137
+ if (startFootnote > 0) {
138
+ token = state.push('inline', '', 0);
139
+ token.content = state.src.slice(startPos, startPos + startFootnote);
140
+ token.children = [];
141
+ }
142
+ token = state.push('footnotetext_latex', '', 0);
143
+ token.numbered = numbered;
144
+ var children = [];
145
+ state.md.block.parse(content, state.md, state.env, children);
146
+ token.children = children;
147
+ max = state.eMarks[nextLine];
148
+ if (max > startPos + startContent + data.nextPos) {
149
+ token = state.push('inline', '', 0);
150
+ token.content = state.src.slice(startPos + startContent + data.nextPos, max);
151
+ token.children = [];
152
+ }
153
+ token = state.push('paragraph_close', 'div', -1);
154
+ return true;
155
+ }
156
+ catch (e) {
157
+ return false;
158
+ }
159
+ };
160
+ exports.latex_footnotetext_block = latex_footnotetext_block;
161
+ //# sourceMappingURL=block-rule.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"block-rule.js","sourceRoot":"","sources":["../../../src/markdown/md-latex-footnotes/block-rule.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export declare const footnote_tail: (state: any) => void;
@@ -0,0 +1,197 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.footnote_tail = void 0;
4
+ var createFootnotesTokens = function (state, stateTokens, refTokens, meta, idx, itemLabel, itemCount, itemTokens, itemContent, isBlock) {
5
+ if (isBlock === void 0) { isBlock = false; }
6
+ var token = new state.Token('footnote_open', '', 1);
7
+ token.meta = meta;
8
+ stateTokens.push(token);
9
+ var tokens = [];
10
+ var lastParagraph;
11
+ if (isBlock) {
12
+ tokens = itemTokens;
13
+ }
14
+ else {
15
+ if (itemTokens) {
16
+ tokens = [];
17
+ token = new state.Token('paragraph_open', 'p', 1);
18
+ token.block = true;
19
+ tokens.push(token);
20
+ token = new state.Token('inline', '', 0);
21
+ token.children = itemTokens;
22
+ token.content = itemContent;
23
+ tokens.push(token);
24
+ token = new state.Token('paragraph_close', 'p', -1);
25
+ token.block = true;
26
+ tokens.push(token);
27
+ }
28
+ else if (itemLabel) {
29
+ tokens = refTokens[':' + itemLabel];
30
+ }
31
+ }
32
+ if (tokens) {
33
+ stateTokens = stateTokens.concat(tokens);
34
+ }
35
+ if (stateTokens[stateTokens.length - 1].type === 'paragraph_close') {
36
+ lastParagraph = stateTokens.pop();
37
+ }
38
+ else {
39
+ lastParagraph = null;
40
+ }
41
+ var t = itemCount > 0 ? itemCount : 1;
42
+ for (var j = 0; j < t; j++) {
43
+ token = new state.Token('footnote_anchor', '', 0);
44
+ token.meta = { id: idx, subId: j, label: itemLabel };
45
+ stateTokens.push(token);
46
+ }
47
+ if (lastParagraph) {
48
+ stateTokens.push(lastParagraph);
49
+ }
50
+ token = new state.Token('footnote_close', '', -1);
51
+ stateTokens.push(token);
52
+ return stateTokens;
53
+ };
54
+ // Glue footnote tokens to end of token stream
55
+ var footnote_tail = function (state) {
56
+ var _a, _b;
57
+ try {
58
+ var i = void 0, l = void 0, list = void 0, current_1, currentLabel_1, insideRef_1 = false, refTokens_1 = {};
59
+ if (!state.env.footnotes) {
60
+ return;
61
+ }
62
+ if ((_b = (_a = state.env.footnotes) === null || _a === void 0 ? void 0 : _a.list) === null || _b === void 0 ? void 0 : _b.length) {
63
+ var lastNumber = 0;
64
+ for (var i_1 = 0; i_1 < state.env.footnotes.list.length; i_1++) {
65
+ var item = state.env.footnotes.list[i_1];
66
+ if (item.hasOwnProperty('lastNumber')) {
67
+ lastNumber = item.numbered
68
+ ? item.lastNumber
69
+ : item.lastNumber + 1;
70
+ continue;
71
+ }
72
+ item.lastNumber = lastNumber;
73
+ lastNumber += 1;
74
+ }
75
+ }
76
+ state.tokens = state.tokens.filter(function (tok) {
77
+ var _a, _b;
78
+ if (tok.type === 'footnote_reference_open') {
79
+ insideRef_1 = true;
80
+ current_1 = [];
81
+ currentLabel_1 = tok.meta.label;
82
+ return Boolean((_a = state.md.options) === null || _a === void 0 ? void 0 : _a.forMD);
83
+ }
84
+ if (tok.type === 'footnote_reference_close') {
85
+ insideRef_1 = false;
86
+ // prepend ':' to avoid conflict with Object.prototype members
87
+ refTokens_1[':' + currentLabel_1] = current_1;
88
+ if (!state.env.footnotes.refsTokens) {
89
+ state.env.footnotes.refsTokens = {};
90
+ }
91
+ state.env.footnotes.refsTokens[':' + currentLabel_1] = current_1;
92
+ return Boolean((_b = state.md.options) === null || _b === void 0 ? void 0 : _b.forMD);
93
+ }
94
+ if (insideRef_1) {
95
+ current_1.push(tok);
96
+ }
97
+ if (state.md.options.forMD)
98
+ return true;
99
+ return !insideRef_1;
100
+ });
101
+ if (!state.env.footnotes.list) {
102
+ return;
103
+ }
104
+ list = state.env.footnotes.list;
105
+ var notIncrementNumber = false;
106
+ var incrementNumber = false;
107
+ var counter_footnote = 0;
108
+ var createFootnoteOpen = true;
109
+ var stateTokens = [];
110
+ for (i = 0, l = list.length; i < l; i++) {
111
+ createFootnoteOpen = true;
112
+ if (list[i].hasOwnProperty('type')) {
113
+ switch (list[i].type) {
114
+ case 'footnotetext':
115
+ break;
116
+ case 'footnotemark':
117
+ if (list[i].numbered === undefined) {
118
+ counter_footnote++;
119
+ }
120
+ if (!list[i].hasContent) {
121
+ if (list[i].numbered === undefined) {
122
+ incrementNumber = true;
123
+ }
124
+ /** If a footnotemark does not have a description, then it is not included in the list of footnotes. */
125
+ createFootnoteOpen = false;
126
+ }
127
+ break;
128
+ case 'footnote':
129
+ if (list[i].numbered === undefined) {
130
+ counter_footnote++;
131
+ }
132
+ if (state.md.options.forLatex) {
133
+ createFootnoteOpen = false;
134
+ }
135
+ break;
136
+ }
137
+ }
138
+ else {
139
+ counter_footnote++;
140
+ }
141
+ list[i].counter_footnote = counter_footnote;
142
+ if (!createFootnoteOpen || state.md.options.forMD) {
143
+ continue;
144
+ }
145
+ var meta = {
146
+ id: i,
147
+ label: list[i].label,
148
+ numbered: list[i].numbered,
149
+ type: list[i].type,
150
+ counter_footnote: counter_footnote
151
+ };
152
+ if (list[i].numbered !== undefined || list[i].type === "footnotetext") {
153
+ notIncrementNumber = true;
154
+ }
155
+ else {
156
+ if (notIncrementNumber) {
157
+ meta.numbered = counter_footnote;
158
+ notIncrementNumber = false;
159
+ }
160
+ }
161
+ if (list[i].numbered === undefined) {
162
+ if (list[i].type === "footnote" || list[i].type === "footnotemark") {
163
+ if (incrementNumber) {
164
+ meta.numbered = counter_footnote;
165
+ incrementNumber = false;
166
+ }
167
+ }
168
+ if (list[i].type === "footnotetext") {
169
+ meta.numbered = counter_footnote;
170
+ }
171
+ }
172
+ if (list[i].hasOwnProperty('arrContents') && list[i].arrContents.length) {
173
+ for (var j = 0; j < list[i].arrContents.length; j++) {
174
+ stateTokens = createFootnotesTokens(state, stateTokens, refTokens_1, meta, i, list[i].label, list[i].count, list[i].arrContents[j].tokens, list[i].arrContents[j].content, list[i].isBlock);
175
+ }
176
+ }
177
+ else {
178
+ stateTokens = createFootnotesTokens(state, stateTokens, refTokens_1, meta, i, list[i].label, list[i].count, list[i].tokens, list[i].content, list[i].isBlock);
179
+ }
180
+ }
181
+ if (stateTokens === null || stateTokens === void 0 ? void 0 : stateTokens.length) {
182
+ var token = new state.Token('footnote_block_open', '', 1);
183
+ state.tokens.push(token);
184
+ stateTokens.map(function (item) {
185
+ state.tokens.push(item);
186
+ });
187
+ token = new state.Token('footnote_block_close', '', -1);
188
+ state.tokens.push(token);
189
+ }
190
+ }
191
+ catch (err) {
192
+ console.log("[MMD][footnote_tail] Error=>", err);
193
+ return;
194
+ }
195
+ };
196
+ exports.footnote_tail = footnote_tail;
197
+ //# sourceMappingURL=core-rule.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"core-rule.js","sourceRoot":"","sources":["../../../src/markdown/md-latex-footnotes/core-rule.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ declare const _default: (md: MarkdownIt, options: any) => void;
2
+ export default _default;
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var core_rule_1 = require("./core-rule");
4
+ var render_rule_1 = require("./render-rule");
5
+ var block_rule_1 = require("./block-rule");
6
+ var inline_rule_1 = require("./inline-rule");
7
+ exports.default = (function (md, options) {
8
+ Object.assign(md.options, options);
9
+ var coreRuler = md.core.ruler;
10
+ var coreRules = coreRuler.getRules('');
11
+ var hasFootnoteRule = (coreRules === null || coreRules === void 0 ? void 0 : coreRules.length)
12
+ ? coreRules.find(function (item) { return item.name === 'footnote_tail'; })
13
+ : null;
14
+ if (hasFootnoteRule) {
15
+ md.core.ruler.at('footnote_tail', core_rule_1.footnote_tail);
16
+ }
17
+ else {
18
+ md.core.ruler.after('inline', 'footnote_tail', core_rule_1.footnote_tail);
19
+ }
20
+ md.block.ruler.before('paragraphDiv', 'latex_footnote_block', block_rule_1.latex_footnote_block, { alt: ['paragraph', 'reference'] });
21
+ md.block.ruler.after('latex_footnote_block', 'latex_footnotetext_block', block_rule_1.latex_footnotetext_block, { alt: ['paragraph', 'reference'] });
22
+ md.inline.ruler.after("multiMath", "latex_footnote", inline_rule_1.latex_footnote);
23
+ md.inline.ruler.after("latex_footnote", "latex_footnotemark", inline_rule_1.latex_footnotemark);
24
+ md.inline.ruler.after("latex_footnotemark", "latex_footnotetext", inline_rule_1.latex_footnotetext);
25
+ md.renderer.rules.footnote_ref = render_rule_1.render_footnote_ref;
26
+ md.renderer.rules.footnote_latex = render_rule_1.render_footnote_ref;
27
+ md.renderer.rules.footnote_block_open = render_rule_1.render_footnote_block_open;
28
+ md.renderer.rules.footnote_block_close = render_rule_1.render_footnote_block_close;
29
+ md.renderer.rules.footnote_open = render_rule_1.render_footnote_open;
30
+ md.renderer.rules.footnote_close = render_rule_1.render_footnote_close;
31
+ md.renderer.rules.footnote_anchor = render_rule_1.render_footnote_anchor;
32
+ md.renderer.rules.footnotetext = render_rule_1.render_footnotetext;
33
+ md.renderer.rules.footnotetext_latex = render_rule_1.render_footnotetext;
34
+ // helpers (only used in other rules, no tokens are attached to those)
35
+ md.renderer.rules.footnote_caption = render_rule_1.render_footnote_caption;
36
+ md.renderer.rules.footnote_anchor_name = render_rule_1.render_footnote_anchor_name;
37
+ });
38
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/markdown/md-latex-footnotes/index.ts"],"names":[],"mappings":";;AACA,yCAA0C;AAC1C,6CAUuB;AACvB,2CAA8E;AAC9E,6CAIuB;AAEvB,mBAAe,UAAC,EAAc,EAAE,OAAO;IACrC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACnC,IAAM,SAAS,GAAU,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC;IACvC,IAAM,SAAS,GAAG,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IACzC,IAAM,eAAe,GAAG,CAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,MAAM;QACvC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,UAAA,IAAI,IAAI,OAAA,IAAI,CAAC,IAAI,KAAK,eAAe,EAA7B,CAA6B,CAAC;QACvD,CAAC,CAAC,IAAI,CAAC;IACT,IAAI,eAAe,EAAE;QACnB,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,eAAe,EAAE,yBAAa,CAAC,CAAC;KAClD;SAAM;QACL,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,EAAE,eAAe,EAAE,yBAAa,CAAC,CAAC;KAC/D;IACD,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,cAAc,EAAE,sBAAsB,EAAE,iCAAoB,EAAE,EAAE,GAAG,EAAE,CAAE,WAAW,EAAE,WAAW,CAAE,EAAE,CAAC,CAAC;IAC3H,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,sBAAsB,EAAE,0BAA0B,EAAE,qCAAwB,EAAE,EAAE,GAAG,EAAE,CAAE,WAAW,EAAE,WAAW,CAAE,EAAE,CAAC,CAAC;IAC1I,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,WAAW,EAAE,gBAAgB,EAAE,4BAAc,CAAC,CAAC;IACrE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,gBAAgB,EAAE,oBAAoB,EAAE,gCAAkB,CAAC,CAAC;IAClF,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,oBAAoB,EAAE,oBAAoB,EAAE,gCAAkB,CAAC,CAAC;IAEtF,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,YAAY,GAAG,iCAAmB,CAAC;IACrD,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,GAAG,iCAAmB,CAAC;IACvD,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,mBAAmB,GAAG,wCAA0B,CAAC;IACnE,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,oBAAoB,GAAG,yCAA2B,CAAC;IACrE,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,aAAa,GAAG,kCAAoB,CAAC;IACvD,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,GAAG,mCAAqB,CAAC;IACzD,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,eAAe,GAAG,oCAAsB,CAAC;IAC3D,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,YAAY,GAAG,iCAAmB,CAAC;IACrD,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,kBAAkB,GAAG,iCAAmB,CAAC;IAE3D,sEAAsE;IACtE,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,gBAAgB,GAAG,qCAAuB,CAAC;IAC7D,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,oBAAoB,GAAG,yCAA2B,CAAC;AACvE,CAAC,EAAA"}
@@ -0,0 +1,4 @@
1
+ import { RuleInline } from 'markdown-it';
2
+ export declare const latex_footnote: RuleInline;
3
+ export declare const latex_footnotemark: RuleInline;
4
+ export declare const latex_footnotetext: RuleInline;