mathpix-markdown-it 2.0.38 → 2.0.39
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/README.md +1 -0
- package/doc/changelog.md +101 -0
- package/es5/browser/auto-render.js +1 -1
- package/es5/bundle.js +1 -1
- package/es5/index.js +4 -4
- package/lib/index.d.ts +2 -1
- package/lib/index.js +3 -1
- package/lib/index.js.map +1 -1
- package/lib/markdown/common/consts.d.ts +1 -0
- package/lib/markdown/common/consts.js +4 -2
- package/lib/markdown/common/consts.js.map +1 -1
- package/lib/markdown/common/convert-math-to-html.d.ts +10 -0
- package/lib/markdown/common/convert-math-to-html.js +163 -41
- package/lib/markdown/common/convert-math-to-html.js.map +1 -1
- package/lib/markdown/common/labels.d.ts +9 -1
- package/lib/markdown/common/labels.js +82 -37
- package/lib/markdown/common/labels.js.map +1 -1
- package/lib/markdown/common/reset-mmd-state.d.ts +4 -0
- package/lib/markdown/common/reset-mmd-state.js +30 -0
- package/lib/markdown/common/reset-mmd-state.js.map +1 -0
- package/lib/markdown/common.d.ts +3 -0
- package/lib/markdown/common.js +34 -23
- package/lib/markdown/common.js.map +1 -1
- package/lib/markdown/highlight/highlight-math-token.js +1 -0
- package/lib/markdown/highlight/highlight-math-token.js.map +1 -1
- package/lib/markdown/index.js +20 -7
- package/lib/markdown/index.js.map +1 -1
- package/lib/markdown/mathpix-markdown-plugins.js +19 -0
- package/lib/markdown/mathpix-markdown-plugins.js.map +1 -1
- package/lib/markdown/md-block-rule/begin-tabular/common.js +2 -2
- package/lib/markdown/md-block-rule/begin-tabular/common.js.map +1 -1
- package/lib/markdown/md-block-rule/begin-tabular/index.js +73 -15
- package/lib/markdown/md-block-rule/begin-tabular/index.js.map +1 -1
- package/lib/markdown/md-block-rule/begin-tabular/multi-column-row.d.ts +1 -1
- package/lib/markdown/md-block-rule/begin-tabular/multi-column-row.js +10 -7
- package/lib/markdown/md-block-rule/begin-tabular/multi-column-row.js.map +1 -1
- package/lib/markdown/md-block-rule/begin-tabular/parse-tabular.js +126 -49
- package/lib/markdown/md-block-rule/begin-tabular/parse-tabular.js.map +1 -1
- package/lib/markdown/md-block-rule/begin-tabular/sub-cell.d.ts +1 -0
- package/lib/markdown/md-block-rule/begin-tabular/sub-cell.js +11 -23
- package/lib/markdown/md-block-rule/begin-tabular/sub-cell.js.map +1 -1
- package/lib/markdown/md-block-rule/begin-tabular/sub-code.d.ts +0 -6
- package/lib/markdown/md-block-rule/begin-tabular/sub-code.js +10 -21
- package/lib/markdown/md-block-rule/begin-tabular/sub-code.js.map +1 -1
- package/lib/markdown/md-block-rule/begin-tabular/sub-math.d.ts +13 -5
- package/lib/markdown/md-block-rule/begin-tabular/sub-math.js +132 -93
- package/lib/markdown/md-block-rule/begin-tabular/sub-math.js.map +1 -1
- package/lib/markdown/md-block-rule/begin-tabular/sub-tabular.js +25 -31
- package/lib/markdown/md-block-rule/begin-tabular/sub-tabular.js.map +1 -1
- package/lib/markdown/md-block-rule/begin-tabular/tabular-td.d.ts +10 -2
- package/lib/markdown/md-block-rule/begin-tabular/tabular-td.js +199 -55
- package/lib/markdown/md-block-rule/begin-tabular/tabular-td.js.map +1 -1
- package/lib/markdown/md-block-rule/mmd-html-block.js +11 -2
- package/lib/markdown/md-block-rule/mmd-html-block.js.map +1 -1
- package/lib/markdown/md-inline-rule/core-inline.js +41 -9
- package/lib/markdown/md-inline-rule/core-inline.js.map +1 -1
- package/lib/markdown/md-inline-rule/tabular.js +3 -1
- package/lib/markdown/md-inline-rule/tabular.js.map +1 -1
- package/lib/markdown/md-latex-lists-env/re-level.js +39 -22
- package/lib/markdown/md-latex-lists-env/re-level.js.map +1 -1
- package/lib/markdown/md-renderer-rules/render-tabular.js +112 -34
- package/lib/markdown/md-renderer-rules/render-tabular.js.map +1 -1
- package/lib/markdown/md-svg-to-base64/base64.js +8 -8
- package/lib/markdown/md-svg-to-base64/base64.js.map +1 -1
- package/lib/markdown/mdPluginRaw.js +24 -3
- package/lib/markdown/mdPluginRaw.js.map +1 -1
- package/lib/markdown/mdPluginTOC.js +30 -4
- package/lib/markdown/mdPluginTOC.js.map +1 -1
- package/lib/markdown/mdPluginTableTabular.js +46 -1
- package/lib/markdown/mdPluginTableTabular.js.map +1 -1
- package/lib/markdown/utils.js +3 -0
- package/lib/markdown/utils.js.map +1 -1
- package/lib/mathjax/index.js +3 -3
- package/lib/mathjax/index.js.map +1 -1
- package/lib/mathpix-markdown-model/index.d.ts +2 -0
- package/lib/mathpix-markdown-model/index.js.map +1 -1
- package/package.json +1 -1
- package/pr-specs/2026-04-global-state-cleanup-and-perf.md +212 -0
- package/pr-specs/2026-04-optimize-tabular-parsing.md +211 -0
- package/lib/markdown/mdPluginSeparateForBlock.d.ts +0 -2
- package/lib/markdown/mdPluginSeparateForBlock.js +0 -209
- package/lib/markdown/mdPluginSeparateForBlock.js.map +0 -1
|
@@ -1,9 +1,17 @@
|
|
|
1
|
-
|
|
1
|
+
export declare const ClearSubMathLists: () => void;
|
|
2
|
+
export declare const mathTablePush: (idOrItem: string | {
|
|
2
3
|
id: string;
|
|
3
4
|
content: string;
|
|
4
|
-
};
|
|
5
|
-
|
|
6
|
-
|
|
5
|
+
}, content?: string) => void;
|
|
6
|
+
/** Replace UUID placeholders with original math content.
|
|
7
|
+
* Uses trimmed string for regex matching (consistent with getSubMath),
|
|
8
|
+
* but untrimmed sub for slicing to preserve original whitespace. */
|
|
7
9
|
export declare const getMathTableContent: (sub: string, i: number) => string;
|
|
10
|
+
/**
|
|
11
|
+
* Extract math expressions from a string, replacing them with placeholders.
|
|
12
|
+
* Iterative single-pass: scans the original string once, collects non-math
|
|
13
|
+
* segments and placeholders into an array, joins at the end.
|
|
14
|
+
*
|
|
15
|
+
* `startPos` is a seek offset applied via `re.lastIndex` before scanning.
|
|
16
|
+
*/
|
|
8
17
|
export declare const getSubMath: (str: string, startPos?: number) => string;
|
|
9
|
-
export {};
|
|
@@ -6,135 +6,174 @@ var mdPluginRaw_1 = require("../../mdPluginRaw");
|
|
|
6
6
|
var utils_1 = require("../../utils");
|
|
7
7
|
var sub_code_1 = require("./sub-code");
|
|
8
8
|
var consts_1 = require("../../common/consts");
|
|
9
|
-
var
|
|
9
|
+
var RE_MATH_OPEN = /\\\\\[|\\\[|\\\\\(|\\\(|\$\$|\$|\\begin\{([^}]*)\}|eqref\{([^}]*)\}|ref\{([^}]*)\}/;
|
|
10
|
+
// Shared `/g`-flag scanner reused across calls — getSubMath is not reentrant
|
|
11
|
+
// (no recursion, no callbacks out), so we just reset lastIndex on entry.
|
|
12
|
+
var RE_MATH_OPEN_G = new RegExp(RE_MATH_OPEN.source, 'g');
|
|
13
|
+
var mathTable = new Map();
|
|
10
14
|
var ClearSubMathLists = function () {
|
|
11
|
-
mathTable
|
|
15
|
+
mathTable.clear();
|
|
12
16
|
};
|
|
13
17
|
exports.ClearSubMathLists = ClearSubMathLists;
|
|
14
|
-
var mathTablePush = function (
|
|
15
|
-
|
|
18
|
+
var mathTablePush = function (idOrItem, content) {
|
|
19
|
+
if (typeof idOrItem === 'string') {
|
|
20
|
+
mathTable.set(idOrItem, content);
|
|
21
|
+
}
|
|
22
|
+
else {
|
|
23
|
+
mathTable.set(idOrItem.id, idOrItem.content);
|
|
24
|
+
}
|
|
16
25
|
};
|
|
17
26
|
exports.mathTablePush = mathTablePush;
|
|
27
|
+
/** Replace UUID placeholders with original math content.
|
|
28
|
+
* Uses trimmed string for regex matching (consistent with getSubMath),
|
|
29
|
+
* but untrimmed sub for slicing to preserve original whitespace. */
|
|
18
30
|
var getMathTableContent = function (sub, i) {
|
|
19
|
-
var
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
cellM = cellM ? cellM : sub.slice(i).match(consts_1.singleCurlyBracketPattern);
|
|
31
|
+
var tail = sub.trim().slice(i);
|
|
32
|
+
var cellM = tail.match(consts_1.doubleCurlyBracketUuidPattern);
|
|
33
|
+
cellM = cellM ? cellM : tail.match(consts_1.singleCurlyBracketPattern);
|
|
23
34
|
if (!cellM) {
|
|
24
35
|
return '';
|
|
25
36
|
}
|
|
26
|
-
var
|
|
27
|
-
|
|
28
|
-
var index = mathTable.findIndex(function (item) { return item.id === content; });
|
|
29
|
-
if (index >= 0) {
|
|
30
|
-
var iB = resContent.indexOf(cellM[j]);
|
|
31
|
-
resContent = resContent.slice(0, iB) + mathTable[index].content + resContent.slice(iB + cellM[j].length);
|
|
32
|
-
}
|
|
33
|
-
};
|
|
37
|
+
var parts = [];
|
|
38
|
+
var lastIdx = 0;
|
|
34
39
|
for (var j = 0; j < cellM.length; j++) {
|
|
35
|
-
|
|
40
|
+
var id = cellM[j].replace(/\{/g, '').replace(/\}/g, '');
|
|
41
|
+
var mathContent = mathTable.get(id);
|
|
42
|
+
if (mathContent !== undefined) {
|
|
43
|
+
var iB = sub.indexOf(cellM[j], lastIdx);
|
|
44
|
+
if (iB >= 0) {
|
|
45
|
+
parts.push(sub.slice(lastIdx, iB));
|
|
46
|
+
parts.push(mathContent);
|
|
47
|
+
lastIdx = iB + cellM[j].length;
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
if (parts.length === 0) {
|
|
52
|
+
return (0, common_1.getContent)(sub);
|
|
36
53
|
}
|
|
37
|
-
|
|
38
|
-
return
|
|
54
|
+
parts.push(sub.slice(lastIdx));
|
|
55
|
+
return (0, common_1.getContent)(parts.join(''));
|
|
39
56
|
};
|
|
40
57
|
exports.getMathTableContent = getMathTableContent;
|
|
58
|
+
/**
|
|
59
|
+
* Returns the end marker for a matched opening marker.
|
|
60
|
+
* - string: end marker to search for (e.g. "\\]", "$")
|
|
61
|
+
* - null: self-closing match (eqref/ref) — no end marker needed, content = match itself
|
|
62
|
+
* - undefined: \begin{env} — caller must resolve via balanced tag search
|
|
63
|
+
*/
|
|
64
|
+
var getEndMarker = function (matchStr, envGroup, eqrefGroup, refGroup) {
|
|
65
|
+
if (matchStr === "\\\\[")
|
|
66
|
+
return "\\\\]";
|
|
67
|
+
if (matchStr === "\\[")
|
|
68
|
+
return "\\]";
|
|
69
|
+
if (matchStr === "\\\\(")
|
|
70
|
+
return "\\\\)";
|
|
71
|
+
if (matchStr === "\\(")
|
|
72
|
+
return "\\)";
|
|
73
|
+
if (eqrefGroup !== undefined || refGroup !== undefined)
|
|
74
|
+
return null;
|
|
75
|
+
if (matchStr === "$$")
|
|
76
|
+
return "$$";
|
|
77
|
+
if (matchStr === "$")
|
|
78
|
+
return "$";
|
|
79
|
+
return undefined;
|
|
80
|
+
};
|
|
81
|
+
var shouldSkipDollar = function (str, marker, beginMarkerPos, endMarkerPos) {
|
|
82
|
+
var beforeEnd = str.charCodeAt(endMarkerPos - 1);
|
|
83
|
+
if (beforeEnd === 0x5c ||
|
|
84
|
+
(beginMarkerPos > 0 && str.charCodeAt(beginMarkerPos - 1) === 0x5c)) {
|
|
85
|
+
return true;
|
|
86
|
+
}
|
|
87
|
+
if (marker === "$") {
|
|
88
|
+
var afterStart = str.charCodeAt(beginMarkerPos + 1);
|
|
89
|
+
if (beforeEnd === 0x20 || beforeEnd === 0x09 || beforeEnd === 0x0a ||
|
|
90
|
+
afterStart === 0x20 || afterStart === 0x09 || afterStart === 0x0a) {
|
|
91
|
+
return true;
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
var suffix = str.charCodeAt(endMarkerPos + 1);
|
|
95
|
+
if (suffix >= 0x30 && suffix < 0x3a) {
|
|
96
|
+
return true;
|
|
97
|
+
}
|
|
98
|
+
return false;
|
|
99
|
+
};
|
|
100
|
+
/**
|
|
101
|
+
* Extract math expressions from a string, replacing them with placeholders.
|
|
102
|
+
* Iterative single-pass: scans the original string once, collects non-math
|
|
103
|
+
* segments and placeholders into an array, joins at the end.
|
|
104
|
+
*
|
|
105
|
+
* `startPos` is a seek offset applied via `re.lastIndex` before scanning.
|
|
106
|
+
*/
|
|
41
107
|
var getSubMath = function (str, startPos) {
|
|
42
|
-
var _a
|
|
108
|
+
var _a;
|
|
43
109
|
if (startPos === void 0) { startPos = 0; }
|
|
44
|
-
var
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
var
|
|
48
|
-
|
|
49
|
-
|
|
110
|
+
var re = RE_MATH_OPEN_G;
|
|
111
|
+
re.lastIndex = startPos > 0 ? startPos : 0;
|
|
112
|
+
var parts = [];
|
|
113
|
+
var lastCopied = 0;
|
|
114
|
+
var match;
|
|
115
|
+
while ((match = re.exec(str)) !== null) {
|
|
116
|
+
var beginMarkerPos = match.index;
|
|
50
117
|
var startMathPos = beginMarkerPos + match[0].length;
|
|
51
|
-
var
|
|
52
|
-
|
|
53
|
-
|
|
118
|
+
var envGroup = match[1];
|
|
119
|
+
var endMarker = getEndMarker(match[0], envGroup, match[2], match[3]);
|
|
120
|
+
var endMarkerPos = -1;
|
|
121
|
+
if (endMarker === null) {
|
|
122
|
+
endMarkerPos = startMathPos;
|
|
123
|
+
endMarker = '';
|
|
54
124
|
}
|
|
55
|
-
else if (
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
else if (match[0].includes("ref")) {
|
|
68
|
-
endMarker = "";
|
|
69
|
-
}
|
|
70
|
-
else if (match[1] && match[1] !== 'abstract' && match[1] !== 'tabular') {
|
|
71
|
-
var environment = match[1].trim();
|
|
72
|
-
var openTag = (0, utils_1.beginTag)(environment, true);
|
|
73
|
-
var closeTag = (0, utils_1.endTag)(environment, true);
|
|
74
|
-
if (closeTag && openTag) {
|
|
75
|
-
var data = (0, utils_1.findOpenCloseTagsMathEnvironment)(str.slice(startPos), openTag, closeTag);
|
|
76
|
-
if ((_a = data === null || data === void 0 ? void 0 : data.arrClose) === null || _a === void 0 ? void 0 : _a.length) {
|
|
77
|
-
endMarkerPos = startPos + ((_b = data.arrClose[data.arrClose.length - 1]) === null || _b === void 0 ? void 0 : _b.posStart);
|
|
125
|
+
else if (endMarker === undefined) {
|
|
126
|
+
if (envGroup && envGroup !== 'abstract' && envGroup !== 'tabular') {
|
|
127
|
+
var environment = envGroup.trim();
|
|
128
|
+
var openTag = (0, utils_1.beginTag)(environment, true);
|
|
129
|
+
var closeTag = (0, utils_1.endTag)(environment, true);
|
|
130
|
+
if (closeTag && openTag) {
|
|
131
|
+
var data = (0, utils_1.findOpenCloseTagsMathEnvironment)(str.slice(beginMarkerPos), openTag, closeTag);
|
|
132
|
+
var lastClose = ((_a = data === null || data === void 0 ? void 0 : data.arrClose) === null || _a === void 0 ? void 0 : _a.length) ? data.arrClose[data.arrClose.length - 1] : null;
|
|
133
|
+
if (lastClose && typeof lastClose.posStart === 'number') {
|
|
134
|
+
endMarkerPos = beginMarkerPos + lastClose.posStart;
|
|
135
|
+
}
|
|
136
|
+
endMarker = "\\end{".concat(envGroup, "}");
|
|
78
137
|
}
|
|
79
|
-
|
|
138
|
+
}
|
|
139
|
+
if (endMarker === undefined) {
|
|
140
|
+
continue;
|
|
80
141
|
}
|
|
81
142
|
}
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
}
|
|
85
|
-
else if (match[0] === "$") {
|
|
86
|
-
endMarker = match[0];
|
|
143
|
+
if (endMarkerPos === -1) {
|
|
144
|
+
endMarkerPos = (0, mdPluginRaw_1.findEndMarkerPos)(str, endMarker, startMathPos);
|
|
87
145
|
}
|
|
88
|
-
endMarkerPos = endMarkerPos !== -1
|
|
89
|
-
? endMarkerPos
|
|
90
|
-
: (0, mdPluginRaw_1.findEndMarkerPos)(str, endMarker, startMathPos);
|
|
91
146
|
if (endMarkerPos === -1) {
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
return str;
|
|
147
|
+
re.lastIndex = startMathPos;
|
|
148
|
+
continue;
|
|
95
149
|
}
|
|
96
150
|
if (match[0] === "$" || match[0] === "$$") {
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
/** If the marker is shielded, it is necessary to search further, excluding the current marker. */
|
|
101
|
-
str = (0, exports.getSubMath)(str, startMathPos);
|
|
102
|
-
return str;
|
|
103
|
-
}
|
|
104
|
-
if (match[0] === "$") {
|
|
105
|
-
var afterStartMarker = str.charCodeAt(beginMarkerPos + 1);
|
|
106
|
-
if (beforeEndMarker === 0x20 /* space */ ||
|
|
107
|
-
beforeEndMarker === 0x09 /* \t */ ||
|
|
108
|
-
beforeEndMarker === 0x0a /* \n */ ||
|
|
109
|
-
afterStartMarker === 0x20 /* space */ ||
|
|
110
|
-
afterStartMarker === 0x09 /* \t */ ||
|
|
111
|
-
afterStartMarker === 0x0a /* \n */) {
|
|
112
|
-
str = (0, exports.getSubMath)(str, startMathPos);
|
|
113
|
-
return str;
|
|
114
|
-
}
|
|
115
|
-
}
|
|
116
|
-
// Skip if closing $ is succeeded by a digit (eg $5 $10 ...)
|
|
117
|
-
var suffix = str.charCodeAt(endMarkerPos + 1);
|
|
118
|
-
if (suffix >= 0x30 && suffix < 0x3a) {
|
|
119
|
-
str = (0, exports.getSubMath)(str, startMathPos);
|
|
120
|
-
return str;
|
|
151
|
+
if (shouldSkipDollar(str, match[0], beginMarkerPos, endMarkerPos)) {
|
|
152
|
+
re.lastIndex = startMathPos;
|
|
153
|
+
continue;
|
|
121
154
|
}
|
|
122
155
|
}
|
|
123
156
|
var nextPos = endMarkerPos + endMarker.length;
|
|
124
157
|
var content = str.slice(beginMarkerPos, nextPos);
|
|
125
158
|
var id = (0, common_1.generateUniqueId)();
|
|
126
|
-
var isCodeEnv =
|
|
159
|
+
var isCodeEnv = !!(envGroup && consts_1.LATEX_BLOCK_ENV.has(envGroup));
|
|
127
160
|
if (isCodeEnv) {
|
|
128
161
|
(0, sub_code_1.addExtractedCodeBlock)({ id: id, content: content });
|
|
129
162
|
}
|
|
130
163
|
else {
|
|
131
|
-
|
|
164
|
+
(0, exports.mathTablePush)(id, content);
|
|
132
165
|
}
|
|
133
166
|
var placeholder = isCodeEnv ? "<<".concat(id, ">>") : "{".concat(id, "}");
|
|
134
|
-
|
|
135
|
-
|
|
167
|
+
parts.push(str.slice(lastCopied, beginMarkerPos));
|
|
168
|
+
parts.push(placeholder);
|
|
169
|
+
lastCopied = nextPos;
|
|
170
|
+
re.lastIndex = nextPos;
|
|
171
|
+
}
|
|
172
|
+
if (parts.length === 0) {
|
|
173
|
+
return str;
|
|
136
174
|
}
|
|
137
|
-
|
|
175
|
+
parts.push(str.slice(lastCopied));
|
|
176
|
+
return parts.join('');
|
|
138
177
|
};
|
|
139
178
|
exports.getSubMath = getSubMath;
|
|
140
179
|
//# sourceMappingURL=sub-math.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sub-math.js","sourceRoot":"","sources":["../../../../src/markdown/md-block-rule/begin-tabular/sub-math.ts"],"names":[],"mappings":";;;AAAA,mCAAwD;AACxD,iDAAmD;AACnD,qCAAiF;AACjF,uCAAmD;AACnD,8CAI6B;
|
|
1
|
+
{"version":3,"file":"sub-math.js","sourceRoot":"","sources":["../../../../src/markdown/md-block-rule/begin-tabular/sub-math.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,9 +7,11 @@ var consts_1 = require("../../common/consts");
|
|
|
7
7
|
var sub_cell_1 = require("./sub-cell");
|
|
8
8
|
var sub_code_1 = require("./sub-code");
|
|
9
9
|
var placeholder_utils_1 = require("./placeholder-utils");
|
|
10
|
-
var subTabular =
|
|
10
|
+
var subTabular = new Map();
|
|
11
|
+
// Guards direct lookup: keys are generateUniqueId() UUIDs, cell text should match exactly.
|
|
12
|
+
var SUB_TABULAR_KEY_RE = new RegExp("^".concat(consts_1.uuidPatternNoCapture, "$"));
|
|
11
13
|
var ClearSubTableLists = function () {
|
|
12
|
-
subTabular
|
|
14
|
+
subTabular.clear();
|
|
13
15
|
};
|
|
14
16
|
exports.ClearSubTableLists = ClearSubTableLists;
|
|
15
17
|
/**
|
|
@@ -26,23 +28,19 @@ var extractChildIds = function (content) {
|
|
|
26
28
|
var pushSubTabular = function (str, subTabularContent, subRes, posBegin, posEnd, i, level) {
|
|
27
29
|
var e_1, _a;
|
|
28
30
|
var _b;
|
|
29
|
-
var _c;
|
|
30
31
|
if (subRes === void 0) { subRes = []; }
|
|
31
32
|
if (posBegin === void 0) { posBegin = 0; }
|
|
32
33
|
if (i === void 0) { i = 0; }
|
|
33
34
|
if (level === void 0) { level = 0; }
|
|
34
35
|
var id = (0, common_1.generateUniqueId)();
|
|
35
36
|
var childIds = extractChildIds(subTabularContent);
|
|
36
|
-
var _loop_1 = function (childId) {
|
|
37
|
-
var cIdx = subTabular.findIndex(function (item) { return item.id === childId; });
|
|
38
|
-
if (cIdx >= 0) {
|
|
39
|
-
((_b = (_c = subTabular[cIdx]).parents) !== null && _b !== void 0 ? _b : (_c.parents = [])).push(id);
|
|
40
|
-
}
|
|
41
|
-
};
|
|
42
37
|
try {
|
|
43
38
|
for (var childIds_1 = tslib_1.__values(childIds), childIds_1_1 = childIds_1.next(); !childIds_1_1.done; childIds_1_1 = childIds_1.next()) {
|
|
44
39
|
var childId = childIds_1_1.value;
|
|
45
|
-
|
|
40
|
+
var child = subTabular.get(childId);
|
|
41
|
+
if (child) {
|
|
42
|
+
((_b = child.parents) !== null && _b !== void 0 ? _b : (child.parents = [])).push(id);
|
|
43
|
+
}
|
|
46
44
|
}
|
|
47
45
|
}
|
|
48
46
|
catch (e_1_1) { e_1 = { error: e_1_1 }; }
|
|
@@ -54,11 +52,10 @@ var pushSubTabular = function (str, subTabularContent, subRes, posBegin, posEnd,
|
|
|
54
52
|
}
|
|
55
53
|
var isBlockLocal = (0, common_1.detectLocalBlock)(subTabularContent);
|
|
56
54
|
var childBlock = childIds.some(function (cid) {
|
|
57
|
-
var
|
|
58
|
-
return
|
|
55
|
+
var child = subTabular.get(cid);
|
|
56
|
+
return child ? !!child.isBlock : false;
|
|
59
57
|
});
|
|
60
|
-
subTabular.
|
|
61
|
-
id: id,
|
|
58
|
+
subTabular.set(id, {
|
|
62
59
|
content: subTabularContent,
|
|
63
60
|
parsed: subRes,
|
|
64
61
|
children: childIds,
|
|
@@ -87,10 +84,11 @@ var getSubTabular = function (sub, i, isCell, forLatex) {
|
|
|
87
84
|
if (isCell) {
|
|
88
85
|
sub = (0, common_1.getContent)(sub);
|
|
89
86
|
}
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
87
|
+
if (SUB_TABULAR_KEY_RE.test(sub)) {
|
|
88
|
+
var directEntry = subTabular.get(sub);
|
|
89
|
+
if ((_a = directEntry === null || directEntry === void 0 ? void 0 : directEntry.parsed) === null || _a === void 0 ? void 0 : _a.length) {
|
|
90
|
+
return directEntry.parsed;
|
|
91
|
+
}
|
|
94
92
|
}
|
|
95
93
|
// find placeholders
|
|
96
94
|
var cellM = (0, placeholder_utils_1.findPlaceholders)(sub, i);
|
|
@@ -100,25 +98,24 @@ var getSubTabular = function (sub, i, isCell, forLatex) {
|
|
|
100
98
|
var parents = null;
|
|
101
99
|
var cursor = 0;
|
|
102
100
|
var contentFragments = [];
|
|
103
|
-
var
|
|
101
|
+
for (var j = 0; j < cellM.length; j++) {
|
|
104
102
|
var placeholder = cellM[j];
|
|
105
103
|
var id = (0, placeholder_utils_1.placeholderToId)(placeholder);
|
|
106
104
|
if (!id) {
|
|
107
|
-
|
|
105
|
+
continue;
|
|
108
106
|
}
|
|
109
107
|
var start = sub.indexOf(placeholder, cursor);
|
|
110
108
|
if (start === -1) {
|
|
111
|
-
|
|
109
|
+
continue;
|
|
112
110
|
}
|
|
113
111
|
var end = start + placeholder.length;
|
|
114
112
|
// prefix text between placeholders
|
|
115
113
|
var prefix = sub.slice(cursor, start);
|
|
116
114
|
// Avoid trimming around list-begin tokens to keep `\begin{itemize}` detectable.
|
|
117
|
-
var
|
|
115
|
+
var entry = subTabular.get(id);
|
|
118
116
|
var isBlockRule = false;
|
|
119
|
-
if (
|
|
120
|
-
|
|
121
|
-
isBlockRule = !!subTabular[idx].isBlock || (0, common_1.detectLocalBlock)(prefix) || (0, common_1.detectLocalBlock)(content);
|
|
117
|
+
if (entry) {
|
|
118
|
+
isBlockRule = !!entry.isBlock || (0, common_1.detectLocalBlock)(prefix) || (0, common_1.detectLocalBlock)(entry.content);
|
|
122
119
|
if (!isBlockRule || prefix.trim() === "") {
|
|
123
120
|
prefix = prefix.trim();
|
|
124
121
|
}
|
|
@@ -130,9 +127,9 @@ var getSubTabular = function (sub, i, isCell, forLatex) {
|
|
|
130
127
|
}
|
|
131
128
|
}
|
|
132
129
|
var injected = "";
|
|
133
|
-
if (
|
|
134
|
-
parents =
|
|
135
|
-
injected = (_b =
|
|
130
|
+
if (entry) {
|
|
131
|
+
parents = entry.parents;
|
|
132
|
+
injected = (_b = entry.content) !== null && _b !== void 0 ? _b : "";
|
|
136
133
|
}
|
|
137
134
|
else {
|
|
138
135
|
injected = (_c = (0, sub_cell_1.findInDiagboxTable)(id)) !== null && _c !== void 0 ? _c : "";
|
|
@@ -146,9 +143,6 @@ var getSubTabular = function (sub, i, isCell, forLatex) {
|
|
|
146
143
|
var st = prefix + injected;
|
|
147
144
|
contentFragments.push(st);
|
|
148
145
|
cursor = end;
|
|
149
|
-
};
|
|
150
|
-
for (var j = 0; j < cellM.length; j++) {
|
|
151
|
-
_loop_2(j);
|
|
152
146
|
}
|
|
153
147
|
if (cursor < sub.length) {
|
|
154
148
|
contentFragments.push(sub.slice(cursor));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sub-tabular.js","sourceRoot":"","sources":["../../../../src/markdown/md-block-rule/begin-tabular/sub-tabular.ts"],"names":[],"mappings":";;;;AACA,mCAA0E;AAC1E,
|
|
1
|
+
{"version":3,"file":"sub-tabular.js","sourceRoot":"","sources":["../../../../src/markdown/md-block-rule/begin-tabular/sub-tabular.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,12 +11,20 @@ type TAligns = {
|
|
|
11
11
|
v?: string;
|
|
12
12
|
w?: string;
|
|
13
13
|
};
|
|
14
|
+
export declare const clearColumnStyleCache: () => void;
|
|
15
|
+
export declare const getSharedTableOpenAttrs: (extraClass?: string, skipVisual?: boolean) => TAttrs[] | undefined;
|
|
16
|
+
export declare const getSharedTbodyOpenAttrs: (numCol: number) => TAttrs[];
|
|
17
|
+
export declare const getSharedTrOpenAttrs: (skipVisual?: boolean) => TAttrs[] | undefined;
|
|
18
|
+
export declare const SHARED_TD_CLOSE: TTokenTabular;
|
|
19
|
+
export declare const SHARED_TR_CLOSE: TTokenTabular;
|
|
20
|
+
export declare const SHARED_TABLE_CLOSE: TTokenTabular;
|
|
21
|
+
export declare const SHARED_TBODY_CLOSE: TTokenTabular;
|
|
14
22
|
export declare const setColumnLines: (aligns: TAligns | null, lines: TLines) => string[];
|
|
15
23
|
export declare const addStyle: (attrs: any[], style: string) => Array<TAttrs>;
|
|
16
24
|
export declare const addHLineIntoStyle: (attrs: any[], line?: string, pos?: string) => Array<TAttrs>;
|
|
17
|
-
export declare const AddTd: (content: string, aligns: TAligns | null, lines: TLines, space: string, decimal?: TDecimal | null) => {
|
|
25
|
+
export declare const AddTd: (content: string, aligns: TAligns | null, lines: TLines, space: string, decimal?: TDecimal | null, skipVisual?: boolean) => {
|
|
18
26
|
res: Array<TTokenTabular>;
|
|
19
27
|
content: string;
|
|
20
28
|
};
|
|
21
|
-
export declare const AddTdSubTable: (subTable: Array<TTokenTabular>, aligns: TAligns, lines: TLines) => Array<TTokenTabular>;
|
|
29
|
+
export declare const AddTdSubTable: (subTable: Array<TTokenTabular>, aligns: TAligns, lines: TLines, skipVisual?: boolean) => Array<TTokenTabular>;
|
|
22
30
|
export {};
|