mathpix-markdown-it 2.0.38 → 2.0.40

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 (97) hide show
  1. package/README.md +3 -0
  2. package/doc/changelog.md +128 -0
  3. package/es5/browser/auto-render.js +1 -1
  4. package/es5/bundle.js +4 -4
  5. package/es5/index.js +4 -4
  6. package/lib/components/mathpix-markdown/index.js +2 -1
  7. package/lib/components/mathpix-markdown/index.js.map +1 -1
  8. package/lib/index.d.ts +2 -1
  9. package/lib/index.js +3 -1
  10. package/lib/index.js.map +1 -1
  11. package/lib/markdown/common/consts.d.ts +5 -0
  12. package/lib/markdown/common/consts.js +17 -5
  13. package/lib/markdown/common/consts.js.map +1 -1
  14. package/lib/markdown/common/convert-math-to-html.d.ts +10 -0
  15. package/lib/markdown/common/convert-math-to-html.js +163 -41
  16. package/lib/markdown/common/convert-math-to-html.js.map +1 -1
  17. package/lib/markdown/common/labels.d.ts +9 -1
  18. package/lib/markdown/common/labels.js +82 -37
  19. package/lib/markdown/common/labels.js.map +1 -1
  20. package/lib/markdown/common/reset-mmd-state.d.ts +4 -0
  21. package/lib/markdown/common/reset-mmd-state.js +30 -0
  22. package/lib/markdown/common/reset-mmd-state.js.map +1 -0
  23. package/lib/markdown/common.d.ts +3 -0
  24. package/lib/markdown/common.js +34 -23
  25. package/lib/markdown/common.js.map +1 -1
  26. package/lib/markdown/highlight/highlight-math-token.js +1 -0
  27. package/lib/markdown/highlight/highlight-math-token.js.map +1 -1
  28. package/lib/markdown/index.js +22 -8
  29. package/lib/markdown/index.js.map +1 -1
  30. package/lib/markdown/mathpix-markdown-plugins.js +21 -1
  31. package/lib/markdown/mathpix-markdown-plugins.js.map +1 -1
  32. package/lib/markdown/md-block-rule/begin-tabular/common.d.ts +15 -1
  33. package/lib/markdown/md-block-rule/begin-tabular/common.js +57 -11
  34. package/lib/markdown/md-block-rule/begin-tabular/common.js.map +1 -1
  35. package/lib/markdown/md-block-rule/begin-tabular/index.d.ts +3 -0
  36. package/lib/markdown/md-block-rule/begin-tabular/index.js +79 -20
  37. package/lib/markdown/md-block-rule/begin-tabular/index.js.map +1 -1
  38. package/lib/markdown/md-block-rule/begin-tabular/multi-column-row.d.ts +3 -1
  39. package/lib/markdown/md-block-rule/begin-tabular/multi-column-row.js +15 -9
  40. package/lib/markdown/md-block-rule/begin-tabular/multi-column-row.js.map +1 -1
  41. package/lib/markdown/md-block-rule/begin-tabular/parse-tabular.d.ts +2 -1
  42. package/lib/markdown/md-block-rule/begin-tabular/parse-tabular.js +177 -73
  43. package/lib/markdown/md-block-rule/begin-tabular/parse-tabular.js.map +1 -1
  44. package/lib/markdown/md-block-rule/begin-tabular/sub-cell.d.ts +1 -0
  45. package/lib/markdown/md-block-rule/begin-tabular/sub-cell.js +11 -23
  46. package/lib/markdown/md-block-rule/begin-tabular/sub-cell.js.map +1 -1
  47. package/lib/markdown/md-block-rule/begin-tabular/sub-code.d.ts +0 -6
  48. package/lib/markdown/md-block-rule/begin-tabular/sub-code.js +10 -21
  49. package/lib/markdown/md-block-rule/begin-tabular/sub-code.js.map +1 -1
  50. package/lib/markdown/md-block-rule/begin-tabular/sub-math.d.ts +13 -5
  51. package/lib/markdown/md-block-rule/begin-tabular/sub-math.js +132 -93
  52. package/lib/markdown/md-block-rule/begin-tabular/sub-math.js.map +1 -1
  53. package/lib/markdown/md-block-rule/begin-tabular/sub-tabular.d.ts +3 -1
  54. package/lib/markdown/md-block-rule/begin-tabular/sub-tabular.js +44 -36
  55. package/lib/markdown/md-block-rule/begin-tabular/sub-tabular.js.map +1 -1
  56. package/lib/markdown/md-block-rule/begin-tabular/tabular-td.d.ts +11 -3
  57. package/lib/markdown/md-block-rule/begin-tabular/tabular-td.js +207 -57
  58. package/lib/markdown/md-block-rule/begin-tabular/tabular-td.js.map +1 -1
  59. package/lib/markdown/md-block-rule/mmd-html-block.js +11 -2
  60. package/lib/markdown/md-block-rule/mmd-html-block.js.map +1 -1
  61. package/lib/markdown/md-core-rules/set-positions.js +90 -15
  62. package/lib/markdown/md-core-rules/set-positions.js.map +1 -1
  63. package/lib/markdown/md-inline-rule/core-inline.js +41 -9
  64. package/lib/markdown/md-inline-rule/core-inline.js.map +1 -1
  65. package/lib/markdown/md-inline-rule/tabular.js +5 -2
  66. package/lib/markdown/md-inline-rule/tabular.js.map +1 -1
  67. package/lib/markdown/md-latex-footnotes/block-rule.js +72 -3
  68. package/lib/markdown/md-latex-footnotes/block-rule.js.map +1 -1
  69. package/lib/markdown/md-latex-lists-env/re-level.js +39 -22
  70. package/lib/markdown/md-latex-lists-env/re-level.js.map +1 -1
  71. package/lib/markdown/md-renderer-rules/render-tabular.js +115 -36
  72. package/lib/markdown/md-renderer-rules/render-tabular.js.map +1 -1
  73. package/lib/markdown/md-svg-to-base64/base64.js +8 -8
  74. package/lib/markdown/md-svg-to-base64/base64.js.map +1 -1
  75. package/lib/markdown/md-theorem/block-rule.js +10 -6
  76. package/lib/markdown/md-theorem/block-rule.js.map +1 -1
  77. package/lib/markdown/mdPluginRaw.js +24 -3
  78. package/lib/markdown/mdPluginRaw.js.map +1 -1
  79. package/lib/markdown/mdPluginTOC.js +30 -4
  80. package/lib/markdown/mdPluginTOC.js.map +1 -1
  81. package/lib/markdown/mdPluginTableTabular.js +46 -1
  82. package/lib/markdown/mdPluginTableTabular.js.map +1 -1
  83. package/lib/markdown/utils.js +3 -0
  84. package/lib/markdown/utils.js.map +1 -1
  85. package/lib/mathjax/index.js +3 -3
  86. package/lib/mathjax/index.js.map +1 -1
  87. package/lib/mathpix-markdown-model/index.d.ts +4 -0
  88. package/lib/mathpix-markdown-model/index.js +2 -1
  89. package/lib/mathpix-markdown-model/index.js.map +1 -1
  90. package/package.json +1 -1
  91. package/pr-specs/2026-04-global-state-cleanup-and-perf.md +212 -0
  92. package/pr-specs/2026-04-optimize-tabular-parsing.md +211 -0
  93. package/pr-specs/2026-05-footnote-perf-and-parser-invariants.md +246 -0
  94. package/pr-specs/2026-05-tabular-vertical-align-bracket.md +270 -0
  95. package/lib/markdown/mdPluginSeparateForBlock.d.ts +0 -2
  96. package/lib/markdown/mdPluginSeparateForBlock.js +0 -209
  97. package/lib/markdown/mdPluginSeparateForBlock.js.map +0 -1
@@ -5,6 +5,35 @@ var consts_1 = require("../common/consts");
5
5
  var common_1 = require("../common");
6
6
  var utils_1 = require("../utils");
7
7
  var fence = require("markdown-it/lib/rules_block/fence.js");
8
+ // Symbol keys: collision-free on StateBlock; invisible to JSON.stringify/Object.keys (use `Object.getOwnPropertySymbols` to inspect).
9
+ var FOOTNOTE_POS_KEY = Symbol('mmd.footnoteSrcPositions');
10
+ var FOOTNOTETEXT_POS_KEY = Symbol('mmd.footnotetextSrcPositions');
11
+ // Helper-owned /g sweeps. lastIndex is reset in the helper before each scan; sync-only.
12
+ var FOOTNOTE_TOKEN_SWEEP_G = new RegExp(consts_1.reFootnoteToken.source, 'g');
13
+ var FOOTNOTETEXT_TOKEN_SWEEP_G = new RegExp(consts_1.reFootnotetextToken.source, 'g');
14
+ // Per-state cache of the last match offset (-1 if none). `patternG` MUST be /g.
15
+ // Nested `state.md.block.parse(...)` builds a fresh StateBlock with its own src, so the Symbol-keyed cache on the outer state never leaks into nested parses.
16
+ var getCachedSrcPositions = function (state, key, patternG) {
17
+ var slot = state;
18
+ var cached = slot[key];
19
+ // JS strings are immutable — identity check correctly invalidates on any reassignment of `state.src`.
20
+ if (cached && cached.src === state.src) {
21
+ return cached.lastPos;
22
+ }
23
+ patternG.lastIndex = 0;
24
+ var lastPos = -1;
25
+ var m;
26
+ while ((m = patternG.exec(state.src)) !== null) {
27
+ lastPos = m.index;
28
+ // Empty-match guard for future regex edits.
29
+ if (m.index === patternG.lastIndex) {
30
+ patternG.lastIndex++;
31
+ }
32
+ }
33
+ patternG.lastIndex = 0;
34
+ slot[key] = { src: state.src, lastPos: lastPos };
35
+ return lastPos;
36
+ };
8
37
  var getTerminatorRulesForFootnotes = function (ruler) {
9
38
  var rules = ruler.__rules__;
10
39
  var arr = [
@@ -30,6 +59,11 @@ var latex_footnote_block = function (state, startLine, endLine, silent) {
30
59
  var _a, _b, _c, _d;
31
60
  try {
32
61
  var token = void 0, lineText = void 0, pos = state.bMarks[startLine] + state.tShift[startLine], max = state.eMarks[startLine];
62
+ // Bail when the last `\footnote` literal is strictly before this block's start. Equality keeps the literal in scope (token starts on this block). `-1` from cache means no match anywhere.
63
+ var lastFootnotePos = getCachedSrcPositions(state, FOOTNOTE_POS_KEY, FOOTNOTE_TOKEN_SWEEP_G);
64
+ if (lastFootnotePos < state.bMarks[startLine]) {
65
+ return false;
66
+ }
33
67
  var nextLine = startLine + 1;
34
68
  var startPos = pos;
35
69
  var numbered = void 0;
@@ -38,8 +72,10 @@ var latex_footnote_block = function (state, startLine, endLine, silent) {
38
72
  var hasOpenTag = false;
39
73
  var pending = '';
40
74
  var terminate = false;
41
- if (!consts_1.reOpenTagFootnoteG.test(lineText)) {
42
- // jump line-by-line until empty one or EOF
75
+ // Literal token can't span `\n` — gate the O(fullContent) regex on per-line presence.
76
+ var sawFootnoteToken = consts_1.reFootnoteToken.test(lineText);
77
+ if (!sawFootnoteToken || !consts_1.reOpenTagFootnoteG.test(lineText)) {
78
+ // Only `fence` terminates here; footnotetext uses full terminator list (pre-existing).
43
79
  for (; nextLine < endLine; nextLine++) {
44
80
  if (fence(state, nextLine, endLine, true)) {
45
81
  terminate = true;
@@ -58,6 +94,21 @@ var latex_footnote_block = function (state, startLine, endLine, silent) {
58
94
  }
59
95
  fullContent += fullContent ? '\n' : '';
60
96
  fullContent += lineText;
97
+ // Two cheap gates (token-seen, `{` present) both must hold before we run the heavy O(fullContent) regex; either gate's `continue` shortcuts to the next line.
98
+ if (!sawFootnoteToken) {
99
+ if (!consts_1.reFootnoteToken.test(lineText)) {
100
+ continue;
101
+ }
102
+ sawFootnoteToken = true;
103
+ }
104
+ // Opening tag requires `{` — every alternative of the open-tag regex ends with literal `{`.
105
+ // Lines without `{` cannot complete the pattern, so `continue` defers the heavy regex run
106
+ // until a line with `{` arrives. Soundness: `{` cannot straddle a `\n` (it's a single char),
107
+ // so if the pattern matches in `fullContent` after this iteration appended `lineText`, the
108
+ // closing `{` must be present in `lineText` and the gate doesn't lose a match.
109
+ if (!lineText.includes('{')) {
110
+ continue;
111
+ }
61
112
  if (consts_1.reOpenTagFootnoteG.test(fullContent)) {
62
113
  hasOpenTag = true;
63
114
  nextLine += 1;
@@ -196,6 +247,11 @@ var latex_footnotetext_block = function (state, startLine, endLine, silent) {
196
247
  var _a, _b, _c, _d, _e, _f;
197
248
  try {
198
249
  var token = void 0, lineText = void 0, pos = state.bMarks[startLine] + state.tShift[startLine], max = state.eMarks[startLine];
250
+ // Bail when the last `\footnotetext`/`\blfootnotetext` literal is strictly before this block's start. Equality keeps it in scope. `-1` means no match anywhere.
251
+ var lastFootnotetextPos = getCachedSrcPositions(state, FOOTNOTETEXT_POS_KEY, FOOTNOTETEXT_TOKEN_SWEEP_G);
252
+ if (lastFootnotetextPos < state.bMarks[startLine]) {
253
+ return false;
254
+ }
199
255
  var nextLine = startLine + 1;
200
256
  var startPos = pos;
201
257
  var numbered = void 0;
@@ -205,7 +261,9 @@ var latex_footnotetext_block = function (state, startLine, endLine, silent) {
205
261
  var pending = '';
206
262
  var terminate = false;
207
263
  var terminatorRules = getTerminatorRulesForFootnotes(state.md.block.ruler);
208
- if (!consts_1.reOpenTagFootnotetextG.test(lineText)) {
264
+ // Literal token can't span `\n` — gate the O(fullContent) regex on per-line presence.
265
+ var sawFootnotetextToken = consts_1.reFootnotetextToken.test(lineText);
266
+ if (!sawFootnotetextToken || !consts_1.reOpenTagFootnotetextG.test(lineText)) {
209
267
  // jump line-by-line until empty one or EOF
210
268
  for (; nextLine < endLine; nextLine++) {
211
269
  for (var i = 0; i < terminatorRules.length; i++) {
@@ -228,6 +286,17 @@ var latex_footnotetext_block = function (state, startLine, endLine, silent) {
228
286
  }
229
287
  fullContent += fullContent ? '\n' : '';
230
288
  fullContent += lineText;
289
+ // Two cheap gates (token-seen, `{` present) both must hold before we run the heavy O(fullContent) regex; either gate's `continue` shortcuts to the next line.
290
+ if (!sawFootnotetextToken) {
291
+ if (!consts_1.reFootnotetextToken.test(lineText)) {
292
+ continue;
293
+ }
294
+ sawFootnotetextToken = true;
295
+ }
296
+ // Opening tag requires `{` — skip lines without it (covers `\footnotetext\n…\n{` without rescanning fullContent).
297
+ if (!lineText.includes('{')) {
298
+ continue;
299
+ }
231
300
  if (consts_1.reOpenTagFootnotetextG.test(fullContent)) {
232
301
  hasOpenTag = true;
233
302
  nextLine += 1;
@@ -1 +1 @@
1
- {"version":3,"file":"block-rule.js","sourceRoot":"","sources":["../../../src/markdown/md-latex-footnotes/block-rule.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"block-rule.js","sourceRoot":"","sources":["../../../src/markdown/md-latex-footnotes/block-rule.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.clearItemizeLevelTokens = exports.ChangeLevel = exports.GetItemizeLevelTokensByState = exports.GetItemizeLevelTokens = exports.SetItemizeLevelTokensByIndex = exports.SetItemizeLevelTokens = exports.GetEnumerateLevel = exports.GetItemizeLevel = exports.SetDefaultEnumerateLevel = exports.SetDefaultItemizeLevel = exports.itemizeLevelTokens = exports.enumerateLevel = exports.itemizeLevel = void 0;
4
4
  var tslib_1 = require("tslib");
5
+ var convert_math_to_html_1 = require("../common/convert-math-to-html");
5
6
  var list_markers_1 = require("../common/list-markers");
6
7
  var consts_1 = require("../common/consts");
7
8
  /** Active itemize levels (mutable state) */
@@ -56,19 +57,27 @@ exports.GetEnumerateLevel = GetEnumerateLevel;
56
57
  * Parse bullet tokens for all itemize levels.
57
58
  */
58
59
  var SetItemizeLevelTokens = function (state) {
59
- var originalOptions = tslib_1.__assign({}, state.md.options);
60
- if (state.md.options.forDocx) {
61
- state.md.options = tslib_1.__assign(tslib_1.__assign({}, state.md.options), { outMath: {
62
- include_svg: true,
63
- include_mathml_word: false,
64
- } });
60
+ var originalOutMath = state.md.options.outMath;
61
+ var docxMutation = !!state.md.options.forDocx;
62
+ if (docxMutation) {
63
+ state.md.options.outMath = {
64
+ include_svg: true,
65
+ include_mathml_word: false,
66
+ };
67
+ (0, convert_math_to_html_1.beginCacheBypass)(state);
68
+ }
69
+ try {
70
+ exports.itemizeLevelTokens = exports.itemizeLevel.map(function (level) {
71
+ var children = [];
72
+ state.md.inline.parse(level, state.md, state.env, children);
73
+ return children;
74
+ });
75
+ }
76
+ finally {
77
+ state.md.options.outMath = originalOutMath;
78
+ if (docxMutation)
79
+ (0, convert_math_to_html_1.endCacheBypass)(state);
65
80
  }
66
- exports.itemizeLevelTokens = exports.itemizeLevel.map(function (level) {
67
- var children = [];
68
- state.md.inline.parse(level, state.md, state.env, children);
69
- return children;
70
- });
71
- state.md.options = originalOptions;
72
81
  return {
73
82
  tokens: tslib_1.__spreadArray([], tslib_1.__read(exports.itemizeLevelTokens), false),
74
83
  contents: tslib_1.__spreadArray([], tslib_1.__read(exports.itemizeLevel), false),
@@ -79,17 +88,25 @@ exports.SetItemizeLevelTokens = SetItemizeLevelTokens;
79
88
  * Parse bullet tokens for a specific itemize level index.
80
89
  */
81
90
  var SetItemizeLevelTokensByIndex = function (state, index) {
82
- var originalOptions = tslib_1.__assign({}, state.md.options);
83
- if (state.md.options.forDocx) {
84
- state.md.options = tslib_1.__assign(tslib_1.__assign({}, state.md.options), { outMath: {
85
- include_svg: true,
86
- include_mathml_word: false,
87
- } });
91
+ var originalOutMath = state.md.options.outMath;
92
+ var docxMutation = !!state.md.options.forDocx;
93
+ if (docxMutation) {
94
+ state.md.options.outMath = {
95
+ include_svg: true,
96
+ include_mathml_word: false,
97
+ };
98
+ (0, convert_math_to_html_1.beginCacheBypass)(state);
99
+ }
100
+ try {
101
+ var children = [];
102
+ state.md.inline.parse(exports.itemizeLevel[index], state.md, state.env, children);
103
+ exports.itemizeLevelTokens[index] = children;
104
+ }
105
+ finally {
106
+ state.md.options.outMath = originalOutMath;
107
+ if (docxMutation)
108
+ (0, convert_math_to_html_1.endCacheBypass)(state);
88
109
  }
89
- var children = [];
90
- state.md.inline.parse(exports.itemizeLevel[index], state.md, state.env, children);
91
- exports.itemizeLevelTokens[index] = children;
92
- state.md.options = originalOptions;
93
110
  };
94
111
  exports.SetItemizeLevelTokensByIndex = SetItemizeLevelTokensByIndex;
95
112
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"re-level.js","sourceRoot":"","sources":["../../../src/markdown/md-latex-lists-env/re-level.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"re-level.js","sourceRoot":"","sources":["../../../src/markdown/md-latex-lists-env/re-level.ts"],"names":[],"mappings":"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"}
@@ -9,6 +9,7 @@ var parse_mmd_element_1 = require("../../helpers/parse-mmd-element");
9
9
  var common_1 = require("../highlight/common");
10
10
  var render_table_cell_content_1 = require("../common/render-table-cell-content");
11
11
  var list_markers_1 = require("../common/list-markers");
12
+ var consts_1 = require("../common/consts");
12
13
  var TABLE_TOKENS = new Set([
13
14
  'table_open', 'table_close', 'tbody_open', 'tbody_close', 'tr_open', 'tr_close', 'td_open', 'td_close',
14
15
  ]);
@@ -78,6 +79,13 @@ var formatTsvCell = function (lines, isSubTable) {
78
79
  var formatCsvCell = function (lines) {
79
80
  return (lines !== null && lines !== void 0 ? lines : []).join('\n');
80
81
  };
82
+ /** Clone-on-write: detach shared `token.attrs` before a mutator touches it. */
83
+ var ensureOwnAttrs = function (token) {
84
+ var attrs = token.attrs;
85
+ if (attrs && attrs[consts_1.attrsSharedMarker]) {
86
+ token.attrs = attrs.map(function (pair) { return [pair[0], pair[1]]; });
87
+ }
88
+ };
81
89
  var tokenAttrGet = function (token, name) {
82
90
  if (!name) {
83
91
  return '';
@@ -100,6 +108,7 @@ var tokenAttrSet = function (token, name, value) {
100
108
  token.attrs.push([name, value]);
101
109
  return;
102
110
  }
111
+ ensureOwnAttrs(token);
103
112
  var index = token.attrs.findIndex(function (item) { return item[0] === name; });
104
113
  if (index < 0) {
105
114
  token.attrs.push([name, value]);
@@ -107,6 +116,18 @@ var tokenAttrSet = function (token, name, value) {
107
116
  }
108
117
  token.attrs[index][1] = value;
109
118
  };
119
+ // Shared by renderInlineTokenBlock and renderNonTableTokenIntoCell so gates can't drift.
120
+ var computeOutputGates = function (options) {
121
+ var outMath = (options === null || options === void 0 ? void 0 : options.outMath) || {};
122
+ var forMD = !!(options === null || options === void 0 ? void 0 : options.forMD);
123
+ return {
124
+ needHtml: !forMD && outMath.include_table_html !== false,
125
+ needTsv: !!outMath.include_tsv,
126
+ needCsv: !!outMath.include_csv,
127
+ needMd: forMD || !!outMath.include_table_markdown,
128
+ needSmoothed: !!(options === null || options === void 0 ? void 0 : options.forPptx),
129
+ };
130
+ };
110
131
  /**
111
132
  * Renders a non-table token into the current table-cell accumulators.
112
133
  *
@@ -123,20 +144,23 @@ var tokenAttrSet = function (token, name, value) {
123
144
  var renderNonTableTokenIntoCell = function (token, ctx, acc) {
124
145
  var _a, _b;
125
146
  var options = ctx.options, env = ctx.env, slf = ctx.slf, highlight = ctx.highlight;
147
+ var _c = computeOutputGates(options), needHtml = _c.needHtml, needTsv = _c.needTsv, needCsv = _c.needCsv, needMd = _c.needMd, needSmoothed = _c.needSmoothed;
126
148
  if ((token === null || token === void 0 ? void 0 : token.type) === 'tabular' || (token === null || token === void 0 ? void 0 : token.type) === 'tabular_inline') {
127
149
  var data = (0, exports.renderInlineTokenBlock)(token.children, options, env, slf, true, highlight);
128
- acc.result += data.table;
129
- if (Array.isArray(data.tableMd) && data.tableMd.length) {
150
+ if (needHtml) {
151
+ acc.result += data.table;
152
+ }
153
+ if (needMd && Array.isArray(data.tableMd) && data.tableMd.length) {
130
154
  if ((_a = acc.cellMd) === null || _a === void 0 ? void 0 : _a.trim()) {
131
155
  acc.cellMd += '<br>';
132
156
  }
133
157
  acc.cellMd += data.tableMd.map(function (item) { return (typeof item === 'string' ? item : item.join(' ')); }).join(' <br> ');
134
158
  }
135
- if (data.tsv) {
159
+ if (needTsv && data.tsv) {
136
160
  ensureTrailingEmptyLine(acc.cellTsvLines);
137
161
  appendToLastLine(acc.cellTsvLines, (0, tsv_1.TsvJoin)(data.tsv, options));
138
162
  }
139
- if (data.csv) {
163
+ if (needCsv && data.csv) {
140
164
  ensureTrailingEmptyLine(acc.cellCsvLines);
141
165
  appendToLastLine(acc.cellCsvLines, (0, csv_1.CsvJoin)(data.csv, options, true));
142
166
  }
@@ -144,16 +168,30 @@ var renderNonTableTokenIntoCell = function (token, ctx, acc) {
144
168
  }
145
169
  if ((_b = token === null || token === void 0 ? void 0 : token.children) === null || _b === void 0 ? void 0 : _b.length) {
146
170
  var cellRender = (0, render_table_cell_content_1.renderTableCellContent)(token, true, options, env, slf);
147
- acc.result += cellRender.content;
148
- appendToLastLine(acc.cellTsvLines, cellRender.tsv);
149
- appendToLastLine(acc.cellCsvLines, cellRender.csv);
150
- acc.cellMd += cellRender.tableMd;
151
- acc.cellSmoothed += cellRender.tableSmoothed;
171
+ if (needHtml) {
172
+ acc.result += cellRender.content;
173
+ }
174
+ if (needTsv) {
175
+ appendToLastLine(acc.cellTsvLines, cellRender.tsv);
176
+ }
177
+ if (needCsv) {
178
+ appendToLastLine(acc.cellCsvLines, cellRender.csv);
179
+ }
180
+ if (needSmoothed) {
181
+ acc.cellSmoothed += cellRender.tableSmoothed;
182
+ }
183
+ if (needMd) {
184
+ acc.cellMd += cellRender.tableMd;
185
+ }
152
186
  return;
153
187
  }
154
- // Leaf token
155
- acc.result += slf.renderInline([token], options, env);
156
- // List-related markdown stitching inside table cells
188
+ // renderInline must run even when HTML is skipped: the latex_list_item_open
189
+ // render rule sets `token.meta.itemizeLevel` as a side effect, which
190
+ // handleListTokensForCellMarkdown reads below to emit list markers.
191
+ var rendered = slf.renderInline([token], options, env);
192
+ if (needHtml) {
193
+ acc.result += rendered;
194
+ }
157
195
  handleListTokensForCellMarkdown(token, ctx, acc);
158
196
  };
159
197
  /**
@@ -293,6 +331,7 @@ var renderInlineTokenBlock = function (tokens, options, env, slf, isSubTable, hi
293
331
  var _a, _b, _c;
294
332
  if (isSubTable === void 0) { isSubTable = false; }
295
333
  if (highlight === void 0) { highlight = null; }
334
+ var _d = computeOutputGates(options), needHtml = _d.needHtml, needTsv = _d.needTsv, needCsv = _d.needCsv, needMd = _d.needMd, needSmoothed = _d.needSmoothed;
296
335
  var nextToken, result = '', needLf = false;
297
336
  var arrTsv = [];
298
337
  var arrCsv = [];
@@ -317,7 +356,9 @@ var renderInlineTokenBlock = function (tokens, options, env, slf, isSubTable, hi
317
356
  continue;
318
357
  }
319
358
  if (token.n !== -1 && idx && tokens[idx - 1].hidden) {
320
- result += '\n';
359
+ if (needHtml) {
360
+ result += '\n';
361
+ }
321
362
  }
322
363
  if (token.token === 'table_open' || token.token === 'tbody_open') {
323
364
  arrTsv = [];
@@ -339,10 +380,18 @@ var renderInlineTokenBlock = function (tokens, options, env, slf, isSubTable, hi
339
380
  arrRowSmoothed = [];
340
381
  }
341
382
  if (token.token === 'tr_close') {
342
- arrTsv.push(arrRow);
343
- arrCsv.push(arrRowCsv);
344
- arrMd.push(arrRowMd);
345
- arrSmoothed.push(arrRowSmoothed);
383
+ if (needTsv) {
384
+ arrTsv.push(arrRow);
385
+ }
386
+ if (needCsv) {
387
+ arrCsv.push(arrRowCsv);
388
+ }
389
+ if (needSmoothed) {
390
+ arrSmoothed.push(arrRowSmoothed);
391
+ }
392
+ if (needMd) {
393
+ arrMd.push(arrRowMd);
394
+ }
346
395
  var l = arrRow && arrRow.length > 0 ? arrRow.length : 0;
347
396
  var l2 = rowspan && rowspan.length > 0 ? rowspan.length : 0;
348
397
  if (l < l2) {
@@ -376,9 +425,10 @@ var renderInlineTokenBlock = function (tokens, options, env, slf, isSubTable, hi
376
425
  var diagBoxToken = nextToken_1.children[0];
377
426
  diagBoxToken.meta = tslib_1.__assign(tslib_1.__assign({}, diagBoxToken.meta), { isBlock: true });
378
427
  var dir = diagBoxToken.type === 'backslashbox' ? 'left' : 'right';
379
- var styles = tokenAttrGet(token, 'style');
428
+ var styles = tokenAttrGet(token, 'style') || '';
429
+ if (!/vertical-align:/.test(styles))
430
+ styles += 'vertical-align: middle;';
380
431
  styles += 'background-size: 100% 100%;';
381
- styles += 'vertical-align: middle;';
382
432
  styles += "background-image: linear-gradient(to bottom ".concat(dir, ", transparent calc(50% - 0.5px), black 50%, black 50%, transparent calc(50% + 0.5px));");
383
433
  tokenAttrSet(token, 'style', styles);
384
434
  }
@@ -427,17 +477,20 @@ var renderInlineTokenBlock = function (tokens, options, env, slf, isSubTable, hi
427
477
  }
428
478
  }
429
479
  l = arrRow && arrRow.length > 0 ? arrRow.length : 0;
480
+ var tsvCell = needTsv ? formatTsvCell(cellTsvLines, isSubTable) : '';
481
+ var csvCell = needCsv ? formatCsvCell(cellCsvLines) : '';
482
+ var smoothedVal = needSmoothed ? cellSmoothed : '';
430
483
  if (!mr && rowspan[l] && rowspan[l][0] > 0) {
431
- arrRow.push(formatTsvCell(cellTsvLines, isSubTable));
432
- arrRowCsv.push(formatCsvCell(cellCsvLines));
484
+ arrRow.push(tsvCell);
485
+ arrRowCsv.push(csvCell);
433
486
  arrRowMd.push(cellMd);
434
- arrRowSmoothed.push(cellSmoothed);
487
+ arrRowSmoothed.push(smoothedVal);
435
488
  }
436
489
  else {
437
- arrRow.push(formatTsvCell(cellTsvLines, isSubTable));
438
- arrRowCsv.push(formatCsvCell(cellCsvLines));
490
+ arrRow.push(tsvCell);
491
+ arrRowCsv.push(csvCell);
439
492
  arrRowMd.push(cellMd);
440
- arrRowSmoothed.push(cellSmoothed);
493
+ arrRowSmoothed.push(smoothedVal);
441
494
  if (colspan && colspan > 1) {
442
495
  for (var i = 0; i < colspan - 1; i++) {
443
496
  arrRow.push('');
@@ -456,20 +509,40 @@ var renderInlineTokenBlock = function (tokens, options, env, slf, isSubTable, hi
456
509
  var content = '';
457
510
  if (token.children) {
458
511
  var cellRender = (0, render_table_cell_content_1.renderTableCellContent)(token, true, options, env, slf);
459
- content += cellRender.content;
460
- appendToLastLine(cellTsvLines, cellRender.tsv);
461
- appendToLastLine(cellCsvLines, cellRender.csv);
462
- cellMd += cellRender.tableMd;
463
- cellSmoothed += cellRender.tableSmoothed;
512
+ if (needHtml) {
513
+ content += cellRender.content;
514
+ }
515
+ if (needTsv) {
516
+ appendToLastLine(cellTsvLines, cellRender.tsv);
517
+ }
518
+ if (needCsv) {
519
+ appendToLastLine(cellCsvLines, cellRender.csv);
520
+ }
521
+ if (needSmoothed) {
522
+ cellSmoothed += cellRender.tableSmoothed;
523
+ }
524
+ if (needMd) {
525
+ cellMd += cellRender.tableMd;
526
+ }
464
527
  }
465
528
  else {
466
529
  content = slf.renderInline([{ type: 'text', content: token.content }], options, env);
467
- appendToLastLine(cellTsvLines, content);
468
- appendToLastLine(cellCsvLines, content);
469
- cellMd += content;
470
- cellSmoothed += content;
530
+ if (needTsv) {
531
+ appendToLastLine(cellTsvLines, content);
532
+ }
533
+ if (needCsv) {
534
+ appendToLastLine(cellCsvLines, content);
535
+ }
536
+ if (needSmoothed) {
537
+ cellSmoothed += content;
538
+ }
539
+ if (needMd) {
540
+ cellMd += content;
541
+ }
542
+ }
543
+ if (needHtml) {
544
+ result += content;
471
545
  }
472
- result += content;
473
546
  continue;
474
547
  }
475
548
  if (!TABLE_TOKENS.has(token.token) && !TABLE_TOKENS.has(token.type)) {
@@ -488,6 +561,10 @@ var renderInlineTokenBlock = function (tokens, options, env, slf, isSubTable, hi
488
561
  cellCsvLines = acc.cellCsvLines;
489
562
  continue;
490
563
  }
564
+ if (!needHtml) {
565
+ // Non-HTML outputs (MD / TSV / CSV only) don't need table tag markup.
566
+ continue;
567
+ }
491
568
  var tokenTag = token.tag;
492
569
  var sizerTr = '';
493
570
  if (options === null || options === void 0 ? void 0 : options.forPptx) {
@@ -558,7 +635,9 @@ var renderTabularInline = function (a, token, options, env, slf) {
558
635
  var _a;
559
636
  var _b = options.outMath, _c = _b.include_tsv, include_tsv = _c === void 0 ? false : _c, _d = _b.include_csv, include_csv = _d === void 0 ? false : _d, _e = _b.include_table_markdown, include_table_markdown = _e === void 0 ? false : _e, _f = _b.include_table_html, include_table_html = _f === void 0 ? true : _f;
560
637
  var tabular = '';
561
- if (!include_tsv && !include_csv && !include_table_html && !include_table_markdown) {
638
+ // forMD forces HTML off regardless of include_table_html.
639
+ var needHtml = !(options === null || options === void 0 ? void 0 : options.forMD) && include_table_html;
640
+ if (!needHtml && !include_tsv && !include_csv && !include_table_markdown) {
562
641
  return '';
563
642
  }
564
643
  var highlight = ((_a = token.highlights) === null || _a === void 0 ? void 0 : _a.length) ? token.highlights[0] : null;