markdown-codec 1.3.31 → 1.4.1

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 (71) hide show
  1. package/dist/ast/ast.cjs +2 -1
  2. package/dist/ast/ast.d.cts +2 -2
  3. package/dist/ast/ast.d.ts +2 -2
  4. package/dist/ast/ast.js +2 -1
  5. package/dist/{ast-BXYwy08e.d.cts → ast-DbjiuYr8.d.cts} +13 -3
  6. package/dist/{ast-BXYwy08e.d.ts → ast-DbjiuYr8.d.ts} +13 -3
  7. package/dist/block/block.cjs +44 -4
  8. package/dist/block/block.d.cts +3 -3
  9. package/dist/block/block.d.ts +3 -3
  10. package/dist/block/block.js +44 -4
  11. package/dist/block/definitions.d.cts +1 -1
  12. package/dist/block/definitions.d.ts +1 -1
  13. package/dist/block/node.cjs +1 -1
  14. package/dist/block/node.d.cts +2 -2
  15. package/dist/block/node.d.ts +2 -2
  16. package/dist/block/node.js +1 -1
  17. package/dist/block/table.d.cts +1 -1
  18. package/dist/block/table.d.ts +1 -1
  19. package/dist/codec.d.cts +68 -5
  20. package/dist/codec.d.ts +68 -5
  21. package/dist/diagnostics/diagnostics.cjs +3 -0
  22. package/dist/diagnostics/diagnostics.d.cts +1 -1
  23. package/dist/diagnostics/diagnostics.d.ts +1 -1
  24. package/dist/diagnostics/diagnostics.js +3 -0
  25. package/dist/{diagnostics-DmuWc7d8.d.cts → diagnostics-B72W0P_E.d.cts} +3 -0
  26. package/dist/{diagnostics-DmuWc7d8.d.ts → diagnostics-B72W0P_E.d.ts} +3 -0
  27. package/dist/emit/emit.cjs +3 -1
  28. package/dist/emit/emit.js +4 -2
  29. package/dist/emit/inline.cjs +2 -3
  30. package/dist/emit/inline.d.cts +1 -1
  31. package/dist/emit/inline.d.ts +1 -1
  32. package/dist/emit/inline.js +2 -3
  33. package/dist/emit/table.d.cts +1 -1
  34. package/dist/emit/table.d.ts +1 -1
  35. package/dist/html/render.cjs +6 -0
  36. package/dist/html/render.d.cts +1 -1
  37. package/dist/html/render.d.ts +1 -1
  38. package/dist/html/render.js +6 -0
  39. package/dist/index.d.cts +1 -1
  40. package/dist/index.d.ts +1 -1
  41. package/dist/inline/inline.cjs +16 -0
  42. package/dist/inline/inline.d.cts +1 -1
  43. package/dist/inline/inline.d.ts +1 -1
  44. package/dist/inline/inline.js +16 -0
  45. package/dist/inline/math.cjs +10 -0
  46. package/dist/inline/math.d.cts +4 -0
  47. package/dist/inline/math.d.ts +4 -0
  48. package/dist/inline/math.js +9 -0
  49. package/dist/inline/node.d.cts +1 -1
  50. package/dist/inline/node.d.ts +1 -1
  51. package/dist/{inline-B50cM6cn.d.ts → inline-TuBQ2TUr.d.ts} +1 -1
  52. package/dist/{inline-C9YEGDV5.d.cts → inline-uVHJ5xzT.d.cts} +1 -1
  53. package/dist/lower/front-matter.d.cts +1 -1
  54. package/dist/lower/front-matter.d.ts +1 -1
  55. package/dist/lower/inline.cjs +7 -0
  56. package/dist/lower/inline.d.cts +2 -2
  57. package/dist/lower/inline.d.ts +2 -2
  58. package/dist/lower/inline.js +8 -1
  59. package/dist/lower/lower.cjs +14 -0
  60. package/dist/lower/lower.js +15 -1
  61. package/dist/lower/table.d.cts +1 -1
  62. package/dist/lower/table.d.ts +1 -1
  63. package/dist/options/options.d.cts +1 -1
  64. package/dist/options/options.d.ts +1 -1
  65. package/dist/read.d.cts +1 -1
  66. package/dist/read.d.ts +1 -1
  67. package/dist/shared/style-constants.cjs +4 -0
  68. package/dist/shared/style-constants.d.cts +3 -1
  69. package/dist/shared/style-constants.d.ts +3 -1
  70. package/dist/shared/style-constants.js +3 -1
  71. package/package.json +2 -2
package/dist/ast/ast.cjs CHANGED
@@ -12,7 +12,8 @@ const BLOCK_NODE_TYPES = /* @__PURE__ */ new Set([
12
12
  "htmlBlock",
13
13
  "table",
14
14
  "tableRow",
15
- "tableCell"
15
+ "tableCell",
16
+ "mathBlock"
16
17
  ]);
17
18
  function isMarkdownBlockNode(node) {
18
19
  return BLOCK_NODE_TYPES.has(node.type);
@@ -1,2 +1,2 @@
1
- import { A as MarkdownTableCellNode, C as MarkdownParagraphNode, D as MarkdownStrikethroughNode, E as MarkdownSoftBreakNode, F as isMarkdownBlockNode, I as isMarkdownInlineNode, M as MarkdownTableRowNode, N as MarkdownTextNode, O as MarkdownStrongNode, P as MarkdownThematicBreakNode, S as MarkdownOrderedListDelimiter, T as MarkdownRawHtmlNode, _ as MarkdownLinkNode, a as MarkdownCodeBlockNode, b as MarkdownListNode, c as MarkdownEmphasisMarker, d as MarkdownHardBreakNode, f as MarkdownHeadingNode, g as MarkdownInlineNode, h as MarkdownImageNode, i as MarkdownBulletMarker, j as MarkdownTableNode, k as MarkdownTableAlignment, l as MarkdownEmphasisNode, m as MarkdownHtmlBlockNode, n as MarkdownBlockNode, o as MarkdownCodeSpanNode, p as MarkdownHeadingStyle, r as MarkdownBlockquoteNode, s as MarkdownDocumentNode, t as MarkdownAutolinkNode, u as MarkdownEntityNode, v as MarkdownListItemNode, w as MarkdownPosition, x as MarkdownNode, y as MarkdownListMarkerType } from "../ast-BXYwy08e.cjs";
2
- export { MarkdownAutolinkNode, MarkdownBlockNode, MarkdownBlockquoteNode, MarkdownBulletMarker, MarkdownCodeBlockNode, MarkdownCodeSpanNode, MarkdownDocumentNode, MarkdownEmphasisMarker, MarkdownEmphasisNode, MarkdownEntityNode, MarkdownHardBreakNode, MarkdownHeadingNode, MarkdownHeadingStyle, MarkdownHtmlBlockNode, MarkdownImageNode, MarkdownInlineNode, MarkdownLinkNode, MarkdownListItemNode, MarkdownListMarkerType, MarkdownListNode, MarkdownNode, MarkdownOrderedListDelimiter, MarkdownParagraphNode, MarkdownPosition, MarkdownRawHtmlNode, MarkdownSoftBreakNode, MarkdownStrikethroughNode, MarkdownStrongNode, MarkdownTableAlignment, MarkdownTableCellNode, MarkdownTableNode, MarkdownTableRowNode, MarkdownTextNode, MarkdownThematicBreakNode, isMarkdownBlockNode, isMarkdownInlineNode };
1
+ import { A as MarkdownStrongNode, C as MarkdownNode, D as MarkdownRawHtmlNode, E as MarkdownPosition, F as MarkdownTextNode, I as MarkdownThematicBreakNode, L as isMarkdownBlockNode, M as MarkdownTableCellNode, N as MarkdownTableNode, O as MarkdownSoftBreakNode, P as MarkdownTableRowNode, R as isMarkdownInlineNode, S as MarkdownMathInlineNode, T as MarkdownParagraphNode, _ as MarkdownLinkNode, a as MarkdownCodeBlockNode, b as MarkdownListNode, c as MarkdownEmphasisMarker, d as MarkdownHardBreakNode, f as MarkdownHeadingNode, g as MarkdownInlineNode, h as MarkdownImageNode, i as MarkdownBulletMarker, j as MarkdownTableAlignment, k as MarkdownStrikethroughNode, l as MarkdownEmphasisNode, m as MarkdownHtmlBlockNode, n as MarkdownBlockNode, o as MarkdownCodeSpanNode, p as MarkdownHeadingStyle, r as MarkdownBlockquoteNode, s as MarkdownDocumentNode, t as MarkdownAutolinkNode, u as MarkdownEntityNode, v as MarkdownListItemNode, w as MarkdownOrderedListDelimiter, x as MarkdownMathBlockNode, y as MarkdownListMarkerType } from "../ast-DbjiuYr8.cjs";
2
+ export { MarkdownAutolinkNode, MarkdownBlockNode, MarkdownBlockquoteNode, MarkdownBulletMarker, MarkdownCodeBlockNode, MarkdownCodeSpanNode, MarkdownDocumentNode, MarkdownEmphasisMarker, MarkdownEmphasisNode, MarkdownEntityNode, MarkdownHardBreakNode, MarkdownHeadingNode, MarkdownHeadingStyle, MarkdownHtmlBlockNode, MarkdownImageNode, MarkdownInlineNode, MarkdownLinkNode, MarkdownListItemNode, MarkdownListMarkerType, MarkdownListNode, MarkdownMathBlockNode, MarkdownMathInlineNode, MarkdownNode, MarkdownOrderedListDelimiter, MarkdownParagraphNode, MarkdownPosition, MarkdownRawHtmlNode, MarkdownSoftBreakNode, MarkdownStrikethroughNode, MarkdownStrongNode, MarkdownTableAlignment, MarkdownTableCellNode, MarkdownTableNode, MarkdownTableRowNode, MarkdownTextNode, MarkdownThematicBreakNode, isMarkdownBlockNode, isMarkdownInlineNode };
package/dist/ast/ast.d.ts CHANGED
@@ -1,2 +1,2 @@
1
- import { A as MarkdownTableCellNode, C as MarkdownParagraphNode, D as MarkdownStrikethroughNode, E as MarkdownSoftBreakNode, F as isMarkdownBlockNode, I as isMarkdownInlineNode, M as MarkdownTableRowNode, N as MarkdownTextNode, O as MarkdownStrongNode, P as MarkdownThematicBreakNode, S as MarkdownOrderedListDelimiter, T as MarkdownRawHtmlNode, _ as MarkdownLinkNode, a as MarkdownCodeBlockNode, b as MarkdownListNode, c as MarkdownEmphasisMarker, d as MarkdownHardBreakNode, f as MarkdownHeadingNode, g as MarkdownInlineNode, h as MarkdownImageNode, i as MarkdownBulletMarker, j as MarkdownTableNode, k as MarkdownTableAlignment, l as MarkdownEmphasisNode, m as MarkdownHtmlBlockNode, n as MarkdownBlockNode, o as MarkdownCodeSpanNode, p as MarkdownHeadingStyle, r as MarkdownBlockquoteNode, s as MarkdownDocumentNode, t as MarkdownAutolinkNode, u as MarkdownEntityNode, v as MarkdownListItemNode, w as MarkdownPosition, x as MarkdownNode, y as MarkdownListMarkerType } from "../ast-BXYwy08e.js";
2
- export { MarkdownAutolinkNode, MarkdownBlockNode, MarkdownBlockquoteNode, MarkdownBulletMarker, MarkdownCodeBlockNode, MarkdownCodeSpanNode, MarkdownDocumentNode, MarkdownEmphasisMarker, MarkdownEmphasisNode, MarkdownEntityNode, MarkdownHardBreakNode, MarkdownHeadingNode, MarkdownHeadingStyle, MarkdownHtmlBlockNode, MarkdownImageNode, MarkdownInlineNode, MarkdownLinkNode, MarkdownListItemNode, MarkdownListMarkerType, MarkdownListNode, MarkdownNode, MarkdownOrderedListDelimiter, MarkdownParagraphNode, MarkdownPosition, MarkdownRawHtmlNode, MarkdownSoftBreakNode, MarkdownStrikethroughNode, MarkdownStrongNode, MarkdownTableAlignment, MarkdownTableCellNode, MarkdownTableNode, MarkdownTableRowNode, MarkdownTextNode, MarkdownThematicBreakNode, isMarkdownBlockNode, isMarkdownInlineNode };
1
+ import { A as MarkdownStrongNode, C as MarkdownNode, D as MarkdownRawHtmlNode, E as MarkdownPosition, F as MarkdownTextNode, I as MarkdownThematicBreakNode, L as isMarkdownBlockNode, M as MarkdownTableCellNode, N as MarkdownTableNode, O as MarkdownSoftBreakNode, P as MarkdownTableRowNode, R as isMarkdownInlineNode, S as MarkdownMathInlineNode, T as MarkdownParagraphNode, _ as MarkdownLinkNode, a as MarkdownCodeBlockNode, b as MarkdownListNode, c as MarkdownEmphasisMarker, d as MarkdownHardBreakNode, f as MarkdownHeadingNode, g as MarkdownInlineNode, h as MarkdownImageNode, i as MarkdownBulletMarker, j as MarkdownTableAlignment, k as MarkdownStrikethroughNode, l as MarkdownEmphasisNode, m as MarkdownHtmlBlockNode, n as MarkdownBlockNode, o as MarkdownCodeSpanNode, p as MarkdownHeadingStyle, r as MarkdownBlockquoteNode, s as MarkdownDocumentNode, t as MarkdownAutolinkNode, u as MarkdownEntityNode, v as MarkdownListItemNode, w as MarkdownOrderedListDelimiter, x as MarkdownMathBlockNode, y as MarkdownListMarkerType } from "../ast-DbjiuYr8.js";
2
+ export { MarkdownAutolinkNode, MarkdownBlockNode, MarkdownBlockquoteNode, MarkdownBulletMarker, MarkdownCodeBlockNode, MarkdownCodeSpanNode, MarkdownDocumentNode, MarkdownEmphasisMarker, MarkdownEmphasisNode, MarkdownEntityNode, MarkdownHardBreakNode, MarkdownHeadingNode, MarkdownHeadingStyle, MarkdownHtmlBlockNode, MarkdownImageNode, MarkdownInlineNode, MarkdownLinkNode, MarkdownListItemNode, MarkdownListMarkerType, MarkdownListNode, MarkdownMathBlockNode, MarkdownMathInlineNode, MarkdownNode, MarkdownOrderedListDelimiter, MarkdownParagraphNode, MarkdownPosition, MarkdownRawHtmlNode, MarkdownSoftBreakNode, MarkdownStrikethroughNode, MarkdownStrongNode, MarkdownTableAlignment, MarkdownTableCellNode, MarkdownTableNode, MarkdownTableRowNode, MarkdownTextNode, MarkdownThematicBreakNode, isMarkdownBlockNode, isMarkdownInlineNode };
package/dist/ast/ast.js CHANGED
@@ -11,7 +11,8 @@ const BLOCK_NODE_TYPES = /* @__PURE__ */ new Set([
11
11
  "htmlBlock",
12
12
  "table",
13
13
  "tableRow",
14
- "tableCell"
14
+ "tableCell",
15
+ "mathBlock"
15
16
  ]);
16
17
  function isMarkdownBlockNode(node) {
17
18
  return BLOCK_NODE_TYPES.has(node.type);
@@ -6,7 +6,7 @@ interface MarkdownPosition {
6
6
  readonly endColumn: number;
7
7
  }
8
8
  type MarkdownNode = MarkdownBlockNode | MarkdownInlineNode;
9
- type MarkdownBlockNode = MarkdownDocumentNode | MarkdownParagraphNode | MarkdownHeadingNode | MarkdownBlockquoteNode | MarkdownListNode | MarkdownListItemNode | MarkdownCodeBlockNode | MarkdownThematicBreakNode | MarkdownHtmlBlockNode | MarkdownTableNode | MarkdownTableRowNode | MarkdownTableCellNode;
9
+ type MarkdownBlockNode = MarkdownDocumentNode | MarkdownParagraphNode | MarkdownHeadingNode | MarkdownBlockquoteNode | MarkdownListNode | MarkdownListItemNode | MarkdownCodeBlockNode | MarkdownThematicBreakNode | MarkdownHtmlBlockNode | MarkdownTableNode | MarkdownTableRowNode | MarkdownTableCellNode | MarkdownMathBlockNode;
10
10
  interface MarkdownDocumentNode {
11
11
  readonly type: 'document';
12
12
  readonly children: MarkdownBlockNode[];
@@ -84,7 +84,12 @@ interface MarkdownTableCellNode {
84
84
  readonly children: MarkdownInlineNode[];
85
85
  readonly position?: MarkdownPosition;
86
86
  }
87
- type MarkdownInlineNode = MarkdownTextNode | MarkdownEmphasisNode | MarkdownStrongNode | MarkdownStrikethroughNode | MarkdownCodeSpanNode | MarkdownLinkNode | MarkdownImageNode | MarkdownAutolinkNode | MarkdownHardBreakNode | MarkdownSoftBreakNode | MarkdownRawHtmlNode | MarkdownEntityNode;
87
+ interface MarkdownMathBlockNode {
88
+ readonly type: 'mathBlock';
89
+ readonly literal: string;
90
+ readonly position?: MarkdownPosition;
91
+ }
92
+ type MarkdownInlineNode = MarkdownTextNode | MarkdownEmphasisNode | MarkdownStrongNode | MarkdownStrikethroughNode | MarkdownCodeSpanNode | MarkdownLinkNode | MarkdownImageNode | MarkdownAutolinkNode | MarkdownHardBreakNode | MarkdownSoftBreakNode | MarkdownRawHtmlNode | MarkdownEntityNode | MarkdownMathInlineNode;
88
93
  type MarkdownEmphasisMarker = '_' | '*';
89
94
  interface MarkdownTextNode {
90
95
  readonly type: 'text';
@@ -154,7 +159,12 @@ interface MarkdownEntityNode {
154
159
  readonly value: string;
155
160
  readonly position?: MarkdownPosition;
156
161
  }
162
+ interface MarkdownMathInlineNode {
163
+ readonly type: 'mathInline';
164
+ readonly literal: string;
165
+ readonly position?: MarkdownPosition;
166
+ }
157
167
  declare function isMarkdownBlockNode(node: MarkdownNode): node is MarkdownBlockNode;
158
168
  declare function isMarkdownInlineNode(node: MarkdownNode): node is MarkdownInlineNode;
159
169
  //#endregion
160
- export { MarkdownTableCellNode as A, MarkdownParagraphNode as C, MarkdownStrikethroughNode as D, MarkdownSoftBreakNode as E, isMarkdownBlockNode as F, isMarkdownInlineNode as I, MarkdownTableRowNode as M, MarkdownTextNode as N, MarkdownStrongNode as O, MarkdownThematicBreakNode as P, MarkdownOrderedListDelimiter as S, MarkdownRawHtmlNode as T, MarkdownLinkNode as _, MarkdownCodeBlockNode as a, MarkdownListNode as b, MarkdownEmphasisMarker as c, MarkdownHardBreakNode as d, MarkdownHeadingNode as f, MarkdownInlineNode as g, MarkdownImageNode as h, MarkdownBulletMarker as i, MarkdownTableNode as j, MarkdownTableAlignment as k, MarkdownEmphasisNode as l, MarkdownHtmlBlockNode as m, MarkdownBlockNode as n, MarkdownCodeSpanNode as o, MarkdownHeadingStyle as p, MarkdownBlockquoteNode as r, MarkdownDocumentNode as s, MarkdownAutolinkNode as t, MarkdownEntityNode as u, MarkdownListItemNode as v, MarkdownPosition as w, MarkdownNode as x, MarkdownListMarkerType as y };
170
+ export { MarkdownStrongNode as A, MarkdownNode as C, MarkdownRawHtmlNode as D, MarkdownPosition as E, MarkdownTextNode as F, MarkdownThematicBreakNode as I, isMarkdownBlockNode as L, MarkdownTableCellNode as M, MarkdownTableNode as N, MarkdownSoftBreakNode as O, MarkdownTableRowNode as P, isMarkdownInlineNode as R, MarkdownMathInlineNode as S, MarkdownParagraphNode as T, MarkdownLinkNode as _, MarkdownCodeBlockNode as a, MarkdownListNode as b, MarkdownEmphasisMarker as c, MarkdownHardBreakNode as d, MarkdownHeadingNode as f, MarkdownInlineNode as g, MarkdownImageNode as h, MarkdownBulletMarker as i, MarkdownTableAlignment as j, MarkdownStrikethroughNode as k, MarkdownEmphasisNode as l, MarkdownHtmlBlockNode as m, MarkdownBlockNode as n, MarkdownCodeSpanNode as o, MarkdownHeadingStyle as p, MarkdownBlockquoteNode as r, MarkdownDocumentNode as s, MarkdownAutolinkNode as t, MarkdownEntityNode as u, MarkdownListItemNode as v, MarkdownOrderedListDelimiter as w, MarkdownMathBlockNode as x, MarkdownListMarkerType as y };
@@ -6,7 +6,7 @@ interface MarkdownPosition {
6
6
  readonly endColumn: number;
7
7
  }
8
8
  type MarkdownNode = MarkdownBlockNode | MarkdownInlineNode;
9
- type MarkdownBlockNode = MarkdownDocumentNode | MarkdownParagraphNode | MarkdownHeadingNode | MarkdownBlockquoteNode | MarkdownListNode | MarkdownListItemNode | MarkdownCodeBlockNode | MarkdownThematicBreakNode | MarkdownHtmlBlockNode | MarkdownTableNode | MarkdownTableRowNode | MarkdownTableCellNode;
9
+ type MarkdownBlockNode = MarkdownDocumentNode | MarkdownParagraphNode | MarkdownHeadingNode | MarkdownBlockquoteNode | MarkdownListNode | MarkdownListItemNode | MarkdownCodeBlockNode | MarkdownThematicBreakNode | MarkdownHtmlBlockNode | MarkdownTableNode | MarkdownTableRowNode | MarkdownTableCellNode | MarkdownMathBlockNode;
10
10
  interface MarkdownDocumentNode {
11
11
  readonly type: 'document';
12
12
  readonly children: MarkdownBlockNode[];
@@ -84,7 +84,12 @@ interface MarkdownTableCellNode {
84
84
  readonly children: MarkdownInlineNode[];
85
85
  readonly position?: MarkdownPosition;
86
86
  }
87
- type MarkdownInlineNode = MarkdownTextNode | MarkdownEmphasisNode | MarkdownStrongNode | MarkdownStrikethroughNode | MarkdownCodeSpanNode | MarkdownLinkNode | MarkdownImageNode | MarkdownAutolinkNode | MarkdownHardBreakNode | MarkdownSoftBreakNode | MarkdownRawHtmlNode | MarkdownEntityNode;
87
+ interface MarkdownMathBlockNode {
88
+ readonly type: 'mathBlock';
89
+ readonly literal: string;
90
+ readonly position?: MarkdownPosition;
91
+ }
92
+ type MarkdownInlineNode = MarkdownTextNode | MarkdownEmphasisNode | MarkdownStrongNode | MarkdownStrikethroughNode | MarkdownCodeSpanNode | MarkdownLinkNode | MarkdownImageNode | MarkdownAutolinkNode | MarkdownHardBreakNode | MarkdownSoftBreakNode | MarkdownRawHtmlNode | MarkdownEntityNode | MarkdownMathInlineNode;
88
93
  type MarkdownEmphasisMarker = '_' | '*';
89
94
  interface MarkdownTextNode {
90
95
  readonly type: 'text';
@@ -154,7 +159,12 @@ interface MarkdownEntityNode {
154
159
  readonly value: string;
155
160
  readonly position?: MarkdownPosition;
156
161
  }
162
+ interface MarkdownMathInlineNode {
163
+ readonly type: 'mathInline';
164
+ readonly literal: string;
165
+ readonly position?: MarkdownPosition;
166
+ }
157
167
  declare function isMarkdownBlockNode(node: MarkdownNode): node is MarkdownBlockNode;
158
168
  declare function isMarkdownInlineNode(node: MarkdownNode): node is MarkdownInlineNode;
159
169
  //#endregion
160
- export { MarkdownTableCellNode as A, MarkdownParagraphNode as C, MarkdownStrikethroughNode as D, MarkdownSoftBreakNode as E, isMarkdownBlockNode as F, isMarkdownInlineNode as I, MarkdownTableRowNode as M, MarkdownTextNode as N, MarkdownStrongNode as O, MarkdownThematicBreakNode as P, MarkdownOrderedListDelimiter as S, MarkdownRawHtmlNode as T, MarkdownLinkNode as _, MarkdownCodeBlockNode as a, MarkdownListNode as b, MarkdownEmphasisMarker as c, MarkdownHardBreakNode as d, MarkdownHeadingNode as f, MarkdownInlineNode as g, MarkdownImageNode as h, MarkdownBulletMarker as i, MarkdownTableNode as j, MarkdownTableAlignment as k, MarkdownEmphasisNode as l, MarkdownHtmlBlockNode as m, MarkdownBlockNode as n, MarkdownCodeSpanNode as o, MarkdownHeadingStyle as p, MarkdownBlockquoteNode as r, MarkdownDocumentNode as s, MarkdownAutolinkNode as t, MarkdownEntityNode as u, MarkdownListItemNode as v, MarkdownPosition as w, MarkdownNode as x, MarkdownListMarkerType as y };
170
+ export { MarkdownStrongNode as A, MarkdownNode as C, MarkdownRawHtmlNode as D, MarkdownPosition as E, MarkdownTextNode as F, MarkdownThematicBreakNode as I, isMarkdownBlockNode as L, MarkdownTableCellNode as M, MarkdownTableNode as N, MarkdownSoftBreakNode as O, MarkdownTableRowNode as P, isMarkdownInlineNode as R, MarkdownMathInlineNode as S, MarkdownParagraphNode as T, MarkdownLinkNode as _, MarkdownCodeBlockNode as a, MarkdownListNode as b, MarkdownEmphasisMarker as c, MarkdownHardBreakNode as d, MarkdownHeadingNode as f, MarkdownInlineNode as g, MarkdownImageNode as h, MarkdownBulletMarker as i, MarkdownTableAlignment as j, MarkdownStrikethroughNode as k, MarkdownEmphasisNode as l, MarkdownHtmlBlockNode as m, MarkdownBlockNode as n, MarkdownCodeSpanNode as o, MarkdownHeadingStyle as p, MarkdownBlockquoteNode as r, MarkdownDocumentNode as s, MarkdownAutolinkNode as t, MarkdownEntityNode as u, MarkdownListItemNode as v, MarkdownOrderedListDelimiter as w, MarkdownMathBlockNode as x, MarkdownListMarkerType as y };
@@ -14,12 +14,14 @@ const TASK_LIST_MARKER_PATTERN = /^\[([ xX])\][ \t]/;
14
14
  const NUL_REPLACEMENT = "�";
15
15
  const NUL_PATTERN = /\0/g;
16
16
  const LINE_ENDING_PATTERN = /\r\n|\n|\r/;
17
- const MAYBE_SPECIAL_PATTERN = /^[#`~*+_=<>0-9|:-]/;
17
+ const MAYBE_SPECIAL_PATTERN = /^[#$`~*+_=<>0-9|:-]/;
18
18
  const ATX_MARKER_PATTERN = /^#{1,6}(?:[ \t]+|$)/;
19
19
  const ATX_ONLY_CLOSING_SEQUENCE_PATTERN = /^[ \t]*#+[ \t]*$/;
20
20
  const ATX_TRAILING_CLOSING_SEQUENCE_PATTERN = /[ \t]+#+[ \t]*$/;
21
21
  const CODE_FENCE_PATTERN = /^`{3,}(?!.*`)|^~{3,}/;
22
22
  const CLOSING_CODE_FENCE_PATTERN = /^(?:`{3,}|~{3,})(?=[ \t]*$)/;
23
+ const MATH_BLOCK_MARKER_PATTERN = /^\$\$[ \t]*$/;
24
+ const MATH_BLOCK_MARKER_LENGTH = 2;
23
25
  const SETEXT_UNDERLINE_PATTERN = /^(?:=+|-+)[ \t]*$/;
24
26
  const THEMATIC_BREAK_PATTERN = /^(?:\*[ \t]*){3,}$|^(?:_[ \t]*){3,}$|^(?:-[ \t]*){3,}$/;
25
27
  const BLANK_CONTENT_PATTERN = /^[ \t\n]*$/;
@@ -83,10 +85,19 @@ var BlockParser = class {
83
85
  });
84
86
  return;
85
87
  }
86
- if (node.kind === "htmlBlock" && !HTML_BLOCK_BLANK_LINE_END_TYPES.includes(node.htmlBlockType)) this.sink({
87
- code: require_diagnostics_diagnostics.MarkdownDiagnosticCodes.UNTERMINATED_HTML_BLOCK,
88
+ if (node.kind === "htmlBlock" && !HTML_BLOCK_BLANK_LINE_END_TYPES.includes(node.htmlBlockType)) {
89
+ this.sink({
90
+ code: require_diagnostics_diagnostics.MarkdownDiagnosticCodes.UNTERMINATED_HTML_BLOCK,
91
+ severity: "warning",
92
+ message: `HTML block (type ${String(node.htmlBlockType)}) starting at line ${String(node.startLine)} never met its own end condition before the end of the document`,
93
+ line: node.startLine
94
+ });
95
+ return;
96
+ }
97
+ if (node.kind === "mathBlock") this.sink({
98
+ code: require_diagnostics_diagnostics.MarkdownDiagnosticCodes.UNCLOSED_MATH_BLOCK,
88
99
  severity: "warning",
89
- message: `HTML block (type ${String(node.htmlBlockType)}) starting at line ${String(node.startLine)} never met its own end condition before the end of the document`,
100
+ message: `math block starting at line ${String(node.startLine)} was never closed by a matching closing $$ before the end of the document`,
90
101
  line: node.startLine
91
102
  });
92
103
  }
@@ -119,6 +130,7 @@ var BlockParser = class {
119
130
  case "blockquote": return this.continueBlockquote();
120
131
  case "listItem": return this.continueListItem(node);
121
132
  case "codeBlock": return this.continueCodeBlock(node);
133
+ case "mathBlock": return this.continueMathBlock(node);
122
134
  case "htmlBlock": return this.line.blank && HTML_BLOCK_BLANK_LINE_END_TYPES.includes(node.htmlBlockType) ? "not-matched" : "matched";
123
135
  case "paragraph":
124
136
  case "table": return this.line.blank ? "not-matched" : "matched";
@@ -172,6 +184,13 @@ var BlockParser = class {
172
184
  for (let remaining = node.fenceOffset; remaining > 0 && this.line.peek() === " "; remaining -= 1) this.line.advance(1);
173
185
  return "matched";
174
186
  }
187
+ continueMathBlock(node) {
188
+ if (!this.line.indented && MATH_BLOCK_MARKER_PATTERN.test(this.line.restFromNextNonspace())) {
189
+ this.finalize(node);
190
+ return "finished";
191
+ }
192
+ return "matched";
193
+ }
175
194
  openNewBlocks(matchedContainer) {
176
195
  let container = matchedContainer;
177
196
  let matchedLeaf = container.kind !== "paragraph" && container.kind !== "table" && require_block_node.acceptsLines(container.kind);
@@ -196,6 +215,7 @@ var BlockParser = class {
196
215
  () => this.tryBlockquoteStart(),
197
216
  () => this.tryAtxHeadingStart(),
198
217
  () => this.tryCodeFenceStart(),
218
+ () => this.tryMathBlockStart(),
199
219
  () => this.tryHtmlBlockStart(container),
200
220
  () => this.tryPromoteParagraph(container),
201
221
  () => this.tryThematicBreakStart(),
@@ -244,6 +264,15 @@ var BlockParser = class {
244
264
  this.line.advance(fence.length);
245
265
  return "leaf";
246
266
  }
267
+ tryMathBlockStart() {
268
+ if (this.line.indented) return "none";
269
+ if (!MATH_BLOCK_MARKER_PATTERN.test(this.line.restFromNextNonspace())) return "none";
270
+ this.closeUnmatchedBlocks();
271
+ this.addChild("mathBlock");
272
+ this.line.advanceToNextNonspace();
273
+ this.line.advance(MATH_BLOCK_MARKER_LENGTH);
274
+ return "leaf";
275
+ }
247
276
  tryHtmlBlockStart(container) {
248
277
  if (this.line.indented || this.line.peekNextNonspace() !== "<") return "none";
249
278
  const interruptsParagraph = container.kind === "paragraph" || !this.allClosed && !this.line.blank && this.tip.kind === "paragraph";
@@ -374,6 +403,9 @@ var BlockParser = class {
374
403
  case "codeBlock":
375
404
  this.finalizeCodeBlock(node);
376
405
  return;
406
+ case "mathBlock":
407
+ this.finalizeMathBlock(node);
408
+ return;
377
409
  case "htmlBlock":
378
410
  node.literal = node.content.replace(TRAILING_HTML_BLANK_LINES_PATTERN, "");
379
411
  return;
@@ -392,6 +424,10 @@ var BlockParser = class {
392
424
  node.infoString = require_inline_entity.unescapeString(node.content.slice(0, breakIndex).trim());
393
425
  node.literal = node.content.slice(breakIndex + 1);
394
426
  }
427
+ finalizeMathBlock(node) {
428
+ const breakIndex = node.content.indexOf("\n");
429
+ node.literal = breakIndex === -1 ? "" : node.content.slice(breakIndex + 1);
430
+ }
395
431
  };
396
432
  function toInlineChildren(content, references, options) {
397
433
  return require_inline_inline.parseInlines(content.trim(), references, options);
@@ -501,6 +537,10 @@ function toAstBlock(node, references, options) {
501
537
  literal: node.literal
502
538
  };
503
539
  case "thematicBreak": return { type: "thematicBreak" };
540
+ case "mathBlock": return {
541
+ type: "mathBlock",
542
+ literal: node.literal
543
+ };
504
544
  case "table": return toTableNode(node, references, options);
505
545
  case "document":
506
546
  case "listItem": return;
@@ -1,7 +1,7 @@
1
- import { s as MarkdownDocumentNode } from "../ast-BXYwy08e.cjs";
2
- import { i as MarkdownDiagnosticSink } from "../diagnostics-DmuWc7d8.cjs";
1
+ import { s as MarkdownDocumentNode } from "../ast-DbjiuYr8.cjs";
2
+ import { i as MarkdownDiagnosticSink } from "../diagnostics-B72W0P_E.cjs";
3
3
  import { n as LinkReferenceMap } from "../link-Dv4kxVjk.cjs";
4
- import { t as InlineParseOptions } from "../inline-C9YEGDV5.cjs";
4
+ import { t as InlineParseOptions } from "../inline-uVHJ5xzT.cjs";
5
5
  //#region src/block/block.d.ts
6
6
  interface MarkdownParseOptions extends InlineParseOptions {
7
7
  readonly gfmTables?: boolean;
@@ -1,7 +1,7 @@
1
- import { s as MarkdownDocumentNode } from "../ast-BXYwy08e.js";
2
- import { i as MarkdownDiagnosticSink } from "../diagnostics-DmuWc7d8.js";
1
+ import { s as MarkdownDocumentNode } from "../ast-DbjiuYr8.js";
2
+ import { i as MarkdownDiagnosticSink } from "../diagnostics-B72W0P_E.js";
3
3
  import { n as LinkReferenceMap } from "../link-Dv4kxVjk.js";
4
- import { t as InlineParseOptions } from "../inline-B50cM6cn.js";
4
+ import { t as InlineParseOptions } from "../inline-TuBQ2TUr.js";
5
5
  //#region src/block/block.d.ts
6
6
  interface MarkdownParseOptions extends InlineParseOptions {
7
7
  readonly gfmTables?: boolean;
@@ -13,12 +13,14 @@ const TASK_LIST_MARKER_PATTERN = /^\[([ xX])\][ \t]/;
13
13
  const NUL_REPLACEMENT = "�";
14
14
  const NUL_PATTERN = /\0/g;
15
15
  const LINE_ENDING_PATTERN = /\r\n|\n|\r/;
16
- const MAYBE_SPECIAL_PATTERN = /^[#`~*+_=<>0-9|:-]/;
16
+ const MAYBE_SPECIAL_PATTERN = /^[#$`~*+_=<>0-9|:-]/;
17
17
  const ATX_MARKER_PATTERN = /^#{1,6}(?:[ \t]+|$)/;
18
18
  const ATX_ONLY_CLOSING_SEQUENCE_PATTERN = /^[ \t]*#+[ \t]*$/;
19
19
  const ATX_TRAILING_CLOSING_SEQUENCE_PATTERN = /[ \t]+#+[ \t]*$/;
20
20
  const CODE_FENCE_PATTERN = /^`{3,}(?!.*`)|^~{3,}/;
21
21
  const CLOSING_CODE_FENCE_PATTERN = /^(?:`{3,}|~{3,})(?=[ \t]*$)/;
22
+ const MATH_BLOCK_MARKER_PATTERN = /^\$\$[ \t]*$/;
23
+ const MATH_BLOCK_MARKER_LENGTH = 2;
22
24
  const SETEXT_UNDERLINE_PATTERN = /^(?:=+|-+)[ \t]*$/;
23
25
  const THEMATIC_BREAK_PATTERN = /^(?:\*[ \t]*){3,}$|^(?:_[ \t]*){3,}$|^(?:-[ \t]*){3,}$/;
24
26
  const BLANK_CONTENT_PATTERN = /^[ \t\n]*$/;
@@ -82,10 +84,19 @@ var BlockParser = class {
82
84
  });
83
85
  return;
84
86
  }
85
- if (node.kind === "htmlBlock" && !HTML_BLOCK_BLANK_LINE_END_TYPES.includes(node.htmlBlockType)) this.sink({
86
- code: MarkdownDiagnosticCodes.UNTERMINATED_HTML_BLOCK,
87
+ if (node.kind === "htmlBlock" && !HTML_BLOCK_BLANK_LINE_END_TYPES.includes(node.htmlBlockType)) {
88
+ this.sink({
89
+ code: MarkdownDiagnosticCodes.UNTERMINATED_HTML_BLOCK,
90
+ severity: "warning",
91
+ message: `HTML block (type ${String(node.htmlBlockType)}) starting at line ${String(node.startLine)} never met its own end condition before the end of the document`,
92
+ line: node.startLine
93
+ });
94
+ return;
95
+ }
96
+ if (node.kind === "mathBlock") this.sink({
97
+ code: MarkdownDiagnosticCodes.UNCLOSED_MATH_BLOCK,
87
98
  severity: "warning",
88
- message: `HTML block (type ${String(node.htmlBlockType)}) starting at line ${String(node.startLine)} never met its own end condition before the end of the document`,
99
+ message: `math block starting at line ${String(node.startLine)} was never closed by a matching closing $$ before the end of the document`,
89
100
  line: node.startLine
90
101
  });
91
102
  }
@@ -118,6 +129,7 @@ var BlockParser = class {
118
129
  case "blockquote": return this.continueBlockquote();
119
130
  case "listItem": return this.continueListItem(node);
120
131
  case "codeBlock": return this.continueCodeBlock(node);
132
+ case "mathBlock": return this.continueMathBlock(node);
121
133
  case "htmlBlock": return this.line.blank && HTML_BLOCK_BLANK_LINE_END_TYPES.includes(node.htmlBlockType) ? "not-matched" : "matched";
122
134
  case "paragraph":
123
135
  case "table": return this.line.blank ? "not-matched" : "matched";
@@ -171,6 +183,13 @@ var BlockParser = class {
171
183
  for (let remaining = node.fenceOffset; remaining > 0 && this.line.peek() === " "; remaining -= 1) this.line.advance(1);
172
184
  return "matched";
173
185
  }
186
+ continueMathBlock(node) {
187
+ if (!this.line.indented && MATH_BLOCK_MARKER_PATTERN.test(this.line.restFromNextNonspace())) {
188
+ this.finalize(node);
189
+ return "finished";
190
+ }
191
+ return "matched";
192
+ }
174
193
  openNewBlocks(matchedContainer) {
175
194
  let container = matchedContainer;
176
195
  let matchedLeaf = container.kind !== "paragraph" && container.kind !== "table" && acceptsLines(container.kind);
@@ -195,6 +214,7 @@ var BlockParser = class {
195
214
  () => this.tryBlockquoteStart(),
196
215
  () => this.tryAtxHeadingStart(),
197
216
  () => this.tryCodeFenceStart(),
217
+ () => this.tryMathBlockStart(),
198
218
  () => this.tryHtmlBlockStart(container),
199
219
  () => this.tryPromoteParagraph(container),
200
220
  () => this.tryThematicBreakStart(),
@@ -243,6 +263,15 @@ var BlockParser = class {
243
263
  this.line.advance(fence.length);
244
264
  return "leaf";
245
265
  }
266
+ tryMathBlockStart() {
267
+ if (this.line.indented) return "none";
268
+ if (!MATH_BLOCK_MARKER_PATTERN.test(this.line.restFromNextNonspace())) return "none";
269
+ this.closeUnmatchedBlocks();
270
+ this.addChild("mathBlock");
271
+ this.line.advanceToNextNonspace();
272
+ this.line.advance(MATH_BLOCK_MARKER_LENGTH);
273
+ return "leaf";
274
+ }
246
275
  tryHtmlBlockStart(container) {
247
276
  if (this.line.indented || this.line.peekNextNonspace() !== "<") return "none";
248
277
  const interruptsParagraph = container.kind === "paragraph" || !this.allClosed && !this.line.blank && this.tip.kind === "paragraph";
@@ -373,6 +402,9 @@ var BlockParser = class {
373
402
  case "codeBlock":
374
403
  this.finalizeCodeBlock(node);
375
404
  return;
405
+ case "mathBlock":
406
+ this.finalizeMathBlock(node);
407
+ return;
376
408
  case "htmlBlock":
377
409
  node.literal = node.content.replace(TRAILING_HTML_BLANK_LINES_PATTERN, "");
378
410
  return;
@@ -391,6 +423,10 @@ var BlockParser = class {
391
423
  node.infoString = unescapeString(node.content.slice(0, breakIndex).trim());
392
424
  node.literal = node.content.slice(breakIndex + 1);
393
425
  }
426
+ finalizeMathBlock(node) {
427
+ const breakIndex = node.content.indexOf("\n");
428
+ node.literal = breakIndex === -1 ? "" : node.content.slice(breakIndex + 1);
429
+ }
394
430
  };
395
431
  function toInlineChildren(content, references, options) {
396
432
  return parseInlines(content.trim(), references, options);
@@ -500,6 +536,10 @@ function toAstBlock(node, references, options) {
500
536
  literal: node.literal
501
537
  };
502
538
  case "thematicBreak": return { type: "thematicBreak" };
539
+ case "mathBlock": return {
540
+ type: "mathBlock",
541
+ literal: node.literal
542
+ };
503
543
  case "table": return toTableNode(node, references, options);
504
544
  case "document":
505
545
  case "listItem": return;
@@ -1,4 +1,4 @@
1
- import { i as MarkdownDiagnosticSink } from "../diagnostics-DmuWc7d8.cjs";
1
+ import { i as MarkdownDiagnosticSink } from "../diagnostics-B72W0P_E.cjs";
2
2
  import { t as LinkReferenceDefinition } from "../link-Dv4kxVjk.cjs";
3
3
  //#region src/block/definitions.d.ts
4
4
  declare function extractDefinitions(content: string, references: Map<string, LinkReferenceDefinition>, sink?: MarkdownDiagnosticSink, startLine?: number): string;
@@ -1,4 +1,4 @@
1
- import { i as MarkdownDiagnosticSink } from "../diagnostics-DmuWc7d8.js";
1
+ import { i as MarkdownDiagnosticSink } from "../diagnostics-B72W0P_E.js";
2
2
  import { t as LinkReferenceDefinition } from "../link-Dv4kxVjk.js";
3
3
  //#region src/block/definitions.d.ts
4
4
  declare function extractDefinitions(content: string, references: Map<string, LinkReferenceDefinition>, sink?: MarkdownDiagnosticSink, startLine?: number): string;
@@ -60,7 +60,7 @@ function canContain(parent, child) {
60
60
  }
61
61
  }
62
62
  function acceptsLines(kind) {
63
- return kind === "paragraph" || kind === "codeBlock" || kind === "htmlBlock" || kind === "table";
63
+ return kind === "paragraph" || kind === "codeBlock" || kind === "htmlBlock" || kind === "table" || kind === "mathBlock";
64
64
  }
65
65
  //#endregion
66
66
  exports.BlockNode = BlockNode;
@@ -1,7 +1,7 @@
1
- import { S as MarkdownOrderedListDelimiter, i as MarkdownBulletMarker, k as MarkdownTableAlignment } from "../ast-BXYwy08e.cjs";
1
+ import { i as MarkdownBulletMarker, j as MarkdownTableAlignment, w as MarkdownOrderedListDelimiter } from "../ast-DbjiuYr8.cjs";
2
2
  import { t as HtmlBlockType } from "../html-bkz2QTuq.cjs";
3
3
  //#region src/block/node.d.ts
4
- type BlockNodeKind = 'document' | 'paragraph' | 'heading' | 'blockquote' | 'list' | 'listItem' | 'codeBlock' | 'htmlBlock' | 'thematicBreak' | 'table';
4
+ type BlockNodeKind = 'document' | 'paragraph' | 'heading' | 'blockquote' | 'list' | 'listItem' | 'codeBlock' | 'htmlBlock' | 'thematicBreak' | 'table' | 'mathBlock';
5
5
  type BlockHeadingLevel = 1 | 2 | 3 | 4 | 5 | 6;
6
6
  interface ListMarkerData {
7
7
  readonly type: 'bullet' | 'ordered';
@@ -1,7 +1,7 @@
1
- import { S as MarkdownOrderedListDelimiter, i as MarkdownBulletMarker, k as MarkdownTableAlignment } from "../ast-BXYwy08e.js";
1
+ import { i as MarkdownBulletMarker, j as MarkdownTableAlignment, w as MarkdownOrderedListDelimiter } from "../ast-DbjiuYr8.js";
2
2
  import { t as HtmlBlockType } from "../html-bkz2QTuq.js";
3
3
  //#region src/block/node.d.ts
4
- type BlockNodeKind = 'document' | 'paragraph' | 'heading' | 'blockquote' | 'list' | 'listItem' | 'codeBlock' | 'htmlBlock' | 'thematicBreak' | 'table';
4
+ type BlockNodeKind = 'document' | 'paragraph' | 'heading' | 'blockquote' | 'list' | 'listItem' | 'codeBlock' | 'htmlBlock' | 'thematicBreak' | 'table' | 'mathBlock';
5
5
  type BlockHeadingLevel = 1 | 2 | 3 | 4 | 5 | 6;
6
6
  interface ListMarkerData {
7
7
  readonly type: 'bullet' | 'ordered';
@@ -59,7 +59,7 @@ function canContain(parent, child) {
59
59
  }
60
60
  }
61
61
  function acceptsLines(kind) {
62
- return kind === "paragraph" || kind === "codeBlock" || kind === "htmlBlock" || kind === "table";
62
+ return kind === "paragraph" || kind === "codeBlock" || kind === "htmlBlock" || kind === "table" || kind === "mathBlock";
63
63
  }
64
64
  //#endregion
65
65
  export { BlockNode, acceptsLines, canContain };
@@ -1,4 +1,4 @@
1
- import { k as MarkdownTableAlignment } from "../ast-BXYwy08e.cjs";
1
+ import { j as MarkdownTableAlignment } from "../ast-DbjiuYr8.cjs";
2
2
  //#region src/block/table.d.ts
3
3
  declare function splitTableRow(line: string): string[];
4
4
  declare function parseTableDelimiterRow(line: string): MarkdownTableAlignment[] | undefined;
@@ -1,4 +1,4 @@
1
- import { k as MarkdownTableAlignment } from "../ast-BXYwy08e.js";
1
+ import { j as MarkdownTableAlignment } from "../ast-DbjiuYr8.js";
2
2
  //#region src/block/table.d.ts
3
3
  declare function splitTableRow(line: string): string[];
4
4
  declare function parseTableDelimiterRow(line: string): MarkdownTableAlignment[] | undefined;
package/dist/codec.d.cts CHANGED
@@ -3,7 +3,7 @@ import { z } from "zod";
3
3
  declare const MarkdownBytesSchema: z.ZodCustom<Uint8Array<ArrayBuffer>, Uint8Array<ArrayBuffer>>;
4
4
  declare const markdownCodec: z.ZodCodec<z.ZodCustom<Uint8Array<ArrayBuffer>, Uint8Array<ArrayBuffer>>, z.ZodDiscriminatedUnion<[z.ZodObject<{
5
5
  kind: z.ZodLiteral<"wordprocessing">;
6
- formatVersion: z.ZodLiteral<2>;
6
+ formatVersion: z.ZodLiteral<3>;
7
7
  metadata: z.ZodObject<{
8
8
  title: z.ZodOptional<z.ZodString>;
9
9
  author: z.ZodOptional<z.ZodString>;
@@ -29,7 +29,7 @@ declare const markdownCodec: z.ZodCodec<z.ZodCustom<Uint8Array<ArrayBuffer>, Uin
29
29
  }, z.core.$strip>>;
30
30
  }, z.core.$strip>, z.ZodObject<{
31
31
  kind: z.ZodLiteral<"presentation">;
32
- formatVersion: z.ZodLiteral<2>;
32
+ formatVersion: z.ZodLiteral<3>;
33
33
  metadata: z.ZodObject<{
34
34
  title: z.ZodOptional<z.ZodString>;
35
35
  author: z.ZodOptional<z.ZodString>;
@@ -62,13 +62,20 @@ declare const markdownCodec: z.ZodCodec<z.ZodCustom<Uint8Array<ArrayBuffer>, Uin
62
62
  lineSpacingReduction: z.ZodOptional<z.ZodNumber>;
63
63
  paintOrder: z.ZodOptional<z.ZodNumber>;
64
64
  sourcePath: z.ZodOptional<z.ZodString>;
65
+ frames: z.ZodOptional<z.ZodArray<z.ZodObject<{
66
+ pageIndex: z.ZodNumber;
67
+ xPt: z.ZodNumber;
68
+ yPt: z.ZodNumber;
69
+ widthPt: z.ZodNumber;
70
+ heightPt: z.ZodNumber;
71
+ }, z.core.$strip>>>;
65
72
  blocks: z.ZodArray<z.ZodCustom<import("document-schema.js").ContentBlock, import("document-schema.js").ContentBlock>>;
66
73
  }, z.core.$strip>>;
67
74
  notes: z.ZodString;
68
75
  }, z.core.$strip>>;
69
76
  }, z.core.$strip>, z.ZodObject<{
70
77
  kind: z.ZodLiteral<"spreadsheet">;
71
- formatVersion: z.ZodLiteral<2>;
78
+ formatVersion: z.ZodLiteral<3>;
72
79
  metadata: z.ZodObject<{
73
80
  title: z.ZodOptional<z.ZodString>;
74
81
  author: z.ZodOptional<z.ZodString>;
@@ -135,6 +142,13 @@ declare const markdownCodec: z.ZodCodec<z.ZodCustom<Uint8Array<ArrayBuffer>, Uin
135
142
  }, z.core.$strip>>;
136
143
  hyperlink: z.ZodOptional<z.ZodString>;
137
144
  sourcePath: z.ZodOptional<z.ZodString>;
145
+ frames: z.ZodOptional<z.ZodArray<z.ZodObject<{
146
+ pageIndex: z.ZodNumber;
147
+ xPt: z.ZodNumber;
148
+ yPt: z.ZodNumber;
149
+ widthPt: z.ZodNumber;
150
+ heightPt: z.ZodNumber;
151
+ }, z.core.$strip>>>;
138
152
  }, z.core.$strip>>>;
139
153
  colSpan: z.ZodOptional<z.ZodNumber>;
140
154
  rowSpan: z.ZodOptional<z.ZodNumber>;
@@ -213,6 +227,13 @@ declare const markdownCodec: z.ZodCodec<z.ZodCustom<Uint8Array<ArrayBuffer>, Uin
213
227
  middle: "middle";
214
228
  }>>;
215
229
  sourcePath: z.ZodOptional<z.ZodString>;
230
+ frames: z.ZodOptional<z.ZodArray<z.ZodObject<{
231
+ pageIndex: z.ZodNumber;
232
+ xPt: z.ZodNumber;
233
+ yPt: z.ZodNumber;
234
+ widthPt: z.ZodNumber;
235
+ heightPt: z.ZodNumber;
236
+ }, z.core.$strip>>>;
216
237
  }, z.core.$strip>>;
217
238
  columns: z.ZodArray<z.ZodObject<{
218
239
  index: z.ZodNumber;
@@ -235,6 +256,13 @@ declare const markdownCodec: z.ZodCodec<z.ZodCustom<Uint8Array<ArrayBuffer>, Uin
235
256
  heightPt: z.ZodNumber;
236
257
  altText: z.ZodOptional<z.ZodString>;
237
258
  sourcePath: z.ZodOptional<z.ZodString>;
259
+ frames: z.ZodOptional<z.ZodArray<z.ZodObject<{
260
+ pageIndex: z.ZodNumber;
261
+ xPt: z.ZodNumber;
262
+ yPt: z.ZodNumber;
263
+ widthPt: z.ZodNumber;
264
+ heightPt: z.ZodNumber;
265
+ }, z.core.$strip>>>;
238
266
  anchorRow: z.ZodNumber;
239
267
  anchorColumn: z.ZodNumber;
240
268
  offsetXPt: z.ZodNumber;
@@ -285,7 +313,7 @@ declare const markdownCodec: z.ZodCodec<z.ZodCustom<Uint8Array<ArrayBuffer>, Uin
285
313
  }, z.core.$strip>>;
286
314
  }, z.core.$strip>, z.ZodObject<{
287
315
  kind: z.ZodLiteral<"drawing">;
288
- formatVersion: z.ZodLiteral<2>;
316
+ formatVersion: z.ZodLiteral<3>;
289
317
  metadata: z.ZodObject<{
290
318
  title: z.ZodOptional<z.ZodString>;
291
319
  author: z.ZodOptional<z.ZodString>;
@@ -318,6 +346,13 @@ declare const markdownCodec: z.ZodCodec<z.ZodCustom<Uint8Array<ArrayBuffer>, Uin
318
346
  lineSpacingReduction: z.ZodOptional<z.ZodNumber>;
319
347
  paintOrder: z.ZodOptional<z.ZodNumber>;
320
348
  sourcePath: z.ZodOptional<z.ZodString>;
349
+ frames: z.ZodOptional<z.ZodArray<z.ZodObject<{
350
+ pageIndex: z.ZodNumber;
351
+ xPt: z.ZodNumber;
352
+ yPt: z.ZodNumber;
353
+ widthPt: z.ZodNumber;
354
+ heightPt: z.ZodNumber;
355
+ }, z.core.$strip>>>;
321
356
  blocks: z.ZodArray<z.ZodCustom<import("document-schema.js").ContentBlock, import("document-schema.js").ContentBlock>>;
322
357
  }, z.core.$strip>>;
323
358
  vectors: z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
@@ -350,6 +385,13 @@ declare const markdownCodec: z.ZodCodec<z.ZodCustom<Uint8Array<ArrayBuffer>, Uin
350
385
  }, z.core.$strip>>;
351
386
  paintOrder: z.ZodOptional<z.ZodNumber>;
352
387
  sourcePath: z.ZodOptional<z.ZodString>;
388
+ frames: z.ZodOptional<z.ZodArray<z.ZodObject<{
389
+ pageIndex: z.ZodNumber;
390
+ xPt: z.ZodNumber;
391
+ yPt: z.ZodNumber;
392
+ widthPt: z.ZodNumber;
393
+ heightPt: z.ZodNumber;
394
+ }, z.core.$strip>>>;
353
395
  }, z.core.$strip>, z.ZodObject<{
354
396
  kind: z.ZodLiteral<"ellipse">;
355
397
  frame: z.ZodObject<{
@@ -380,6 +422,13 @@ declare const markdownCodec: z.ZodCodec<z.ZodCustom<Uint8Array<ArrayBuffer>, Uin
380
422
  }, z.core.$strip>>;
381
423
  paintOrder: z.ZodOptional<z.ZodNumber>;
382
424
  sourcePath: z.ZodOptional<z.ZodString>;
425
+ frames: z.ZodOptional<z.ZodArray<z.ZodObject<{
426
+ pageIndex: z.ZodNumber;
427
+ xPt: z.ZodNumber;
428
+ yPt: z.ZodNumber;
429
+ widthPt: z.ZodNumber;
430
+ heightPt: z.ZodNumber;
431
+ }, z.core.$strip>>>;
383
432
  }, z.core.$strip>, z.ZodObject<{
384
433
  kind: z.ZodLiteral<"line">;
385
434
  from: z.ZodObject<{
@@ -406,6 +455,13 @@ declare const markdownCodec: z.ZodCodec<z.ZodCustom<Uint8Array<ArrayBuffer>, Uin
406
455
  }, z.core.$strip>;
407
456
  paintOrder: z.ZodOptional<z.ZodNumber>;
408
457
  sourcePath: z.ZodOptional<z.ZodString>;
458
+ frames: z.ZodOptional<z.ZodArray<z.ZodObject<{
459
+ pageIndex: z.ZodNumber;
460
+ xPt: z.ZodNumber;
461
+ yPt: z.ZodNumber;
462
+ widthPt: z.ZodNumber;
463
+ heightPt: z.ZodNumber;
464
+ }, z.core.$strip>>>;
409
465
  }, z.core.$strip>, z.ZodObject<{
410
466
  kind: z.ZodLiteral<"path">;
411
467
  frame: z.ZodObject<{
@@ -468,11 +524,18 @@ declare const markdownCodec: z.ZodCodec<z.ZodCustom<Uint8Array<ArrayBuffer>, Uin
468
524
  }, z.core.$strip>>;
469
525
  paintOrder: z.ZodOptional<z.ZodNumber>;
470
526
  sourcePath: z.ZodOptional<z.ZodString>;
527
+ frames: z.ZodOptional<z.ZodArray<z.ZodObject<{
528
+ pageIndex: z.ZodNumber;
529
+ xPt: z.ZodNumber;
530
+ yPt: z.ZodNumber;
531
+ widthPt: z.ZodNumber;
532
+ heightPt: z.ZodNumber;
533
+ }, z.core.$strip>>>;
471
534
  }, z.core.$strip>], "kind">>;
472
535
  }, z.core.$strip>>;
473
536
  }, z.core.$strip>, z.ZodObject<{
474
537
  kind: z.ZodLiteral<"formula">;
475
- formatVersion: z.ZodLiteral<2>;
538
+ formatVersion: z.ZodLiteral<3>;
476
539
  metadata: z.ZodObject<{
477
540
  title: z.ZodOptional<z.ZodString>;
478
541
  author: z.ZodOptional<z.ZodString>;