@notectl/core 2.2.5 → 2.3.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.
- package/dist/chunks/{AlignmentPlugin-BCHxo16v.mjs → AlignmentPlugin--xAFlRqE.mjs} +2 -2
- package/dist/chunks/{AlignmentPlugin-BCHxo16v.mjs.map → AlignmentPlugin--xAFlRqE.mjs.map} +1 -1
- package/dist/chunks/{AttrRegistry-DcDVyzLm.mjs → AttrRegistry-B3zB02z9.mjs} +2 -2
- package/dist/chunks/AttrRegistry-B3zB02z9.mjs.map +1 -0
- package/dist/chunks/{AttributedMarkCommands-D4W2Jgpj.mjs → AttributedMarkCommands-bagbH8Qt.mjs} +2 -2
- package/dist/chunks/{AttributedMarkCommands-D4W2Jgpj.mjs.map → AttributedMarkCommands-bagbH8Qt.mjs.map} +1 -1
- package/dist/chunks/{BidiIsolationPlugin-BddRbDCN.mjs → BidiIsolationPlugin-DBXyXpgm.mjs} +2 -2
- package/dist/chunks/{BidiIsolationPlugin-BddRbDCN.mjs.map → BidiIsolationPlugin-DBXyXpgm.mjs.map} +1 -1
- package/dist/chunks/BlockInsertion-CJusvrDL.mjs +2 -0
- package/dist/chunks/BlockInsertion-CJusvrDL.mjs.map +1 -0
- package/dist/chunks/BlockquotePlugin-Bz2glHwX.mjs +2 -0
- package/dist/chunks/{BlockquotePlugin-4V7KV_Sb.mjs.map → BlockquotePlugin-Bz2glHwX.mjs.map} +1 -1
- package/dist/chunks/{CaretNavigationPlugin-C6XBwp0N.mjs → CaretNavigationPlugin-CNsT0eb4.mjs} +2 -2
- package/dist/chunks/{CaretNavigationPlugin-C6XBwp0N.mjs.map → CaretNavigationPlugin-CNsT0eb4.mjs.map} +1 -1
- package/dist/chunks/CodeBlockPlugin-C1hrdbSZ.mjs +2 -0
- package/dist/chunks/CodeBlockPlugin-C1hrdbSZ.mjs.map +1 -0
- package/dist/chunks/{ColorGrid-CXRdpP_n.mjs → ColorGrid-C9RQoEWF.mjs} +2 -2
- package/dist/chunks/{ColorGrid-CXRdpP_n.mjs.map → ColorGrid-C9RQoEWF.mjs.map} +1 -1
- package/dist/chunks/ColorPickerPopup-DiA68Pzz.mjs +2 -0
- package/dist/chunks/{ColorPickerPopup-C_74bqid.mjs.map → ColorPickerPopup-DiA68Pzz.mjs.map} +1 -1
- package/dist/chunks/Commands-1dFFldi7.mjs +2 -0
- package/dist/chunks/Commands-1dFFldi7.mjs.map +1 -0
- package/dist/chunks/ContentModel-NpAj7vGW.mjs +2 -0
- package/dist/chunks/ContentModel-NpAj7vGW.mjs.map +1 -0
- package/dist/chunks/Decoration-BpoEOANl.mjs +2 -0
- package/dist/chunks/Decoration-BpoEOANl.mjs.map +1 -0
- package/dist/chunks/{DirectionDetection-C7XE0nxW.mjs → DirectionDetection-CDVSEWQ6.mjs} +2 -2
- package/dist/chunks/{DirectionDetection-C7XE0nxW.mjs.map → DirectionDetection-CDVSEWQ6.mjs.map} +1 -1
- package/dist/chunks/Document-827l3P80.mjs +2 -0
- package/dist/chunks/Document-827l3P80.mjs.map +1 -0
- package/dist/chunks/DocumentParser-D2tr3ZKn.mjs +2 -0
- package/dist/chunks/DocumentParser-D2tr3ZKn.mjs.map +1 -0
- package/dist/chunks/EditorEventBoundary-zpYRxryo.mjs +2 -0
- package/dist/chunks/EditorEventBoundary-zpYRxryo.mjs.map +1 -0
- package/dist/chunks/FontPlugin-By-TGrQo.mjs +2 -0
- package/dist/chunks/{FontPlugin-DB1_bgam.mjs.map → FontPlugin-By-TGrQo.mjs.map} +1 -1
- package/dist/chunks/{FontSizePlugin-DFvp7Ki9.mjs → FontSizePlugin-Dln-tYXV.mjs} +2 -2
- package/dist/chunks/FontSizePlugin-Dln-tYXV.mjs.map +1 -0
- package/dist/chunks/FormulaPlugin-By1befrR.mjs +2 -0
- package/dist/chunks/FormulaPlugin-By1befrR.mjs.map +1 -0
- package/dist/chunks/GapCursorNavigation-BuXngVu-.mjs +2 -0
- package/dist/chunks/{GapCursorNavigation-ycNzuQVH.mjs.map → GapCursorNavigation-BuXngVu-.mjs.map} +1 -1
- package/dist/chunks/{GapCursorPlugin-Zvxjnr82.mjs → GapCursorPlugin-DAxVzXRs.mjs} +2 -2
- package/dist/chunks/{GapCursorPlugin-Zvxjnr82.mjs.map → GapCursorPlugin-DAxVzXRs.mjs.map} +1 -1
- package/dist/chunks/HTMLUtils-Bhg3_P8B.mjs +2 -0
- package/dist/chunks/HTMLUtils-Bhg3_P8B.mjs.map +1 -0
- package/dist/chunks/{HardBreakPlugin-9DOyCyyM.mjs → HardBreakPlugin-DlbSlrdq.mjs} +2 -2
- package/dist/chunks/{HardBreakPlugin-9DOyCyyM.mjs.map → HardBreakPlugin-DlbSlrdq.mjs.map} +1 -1
- package/dist/chunks/HeadingPlugin-uMAjPOk5.mjs +2 -0
- package/dist/chunks/{HeadingPlugin-D9yvG2Aw.mjs.map → HeadingPlugin-uMAjPOk5.mjs.map} +1 -1
- package/dist/chunks/{HighlightPlugin-D4gh4RP7.mjs → HighlightPlugin-Bj7FPkIQ.mjs} +2 -2
- package/dist/chunks/{HighlightPlugin-D4gh4RP7.mjs.map → HighlightPlugin-Bj7FPkIQ.mjs.map} +1 -1
- package/dist/chunks/HorizontalRulePlugin-DUVmTQpX.mjs +2 -0
- package/dist/chunks/HorizontalRulePlugin-DUVmTQpX.mjs.map +1 -0
- package/dist/chunks/ImagePlugin-FToCOjd5.mjs +2 -0
- package/dist/chunks/{ImagePlugin-Cp_RINtc.mjs.map → ImagePlugin-FToCOjd5.mjs.map} +1 -1
- package/dist/chunks/{InlineCodePlugin-DMr4O7c7.mjs → InlineCodePlugin-pISIoGQE.mjs} +2 -2
- package/dist/chunks/InlineCodePlugin-pISIoGQE.mjs.map +1 -0
- package/dist/chunks/InlineStyleMarkSpec-CjSRj4f_.mjs +2 -0
- package/dist/chunks/{InlineStyleMarkSpec-4R6DC7ij.mjs.map → InlineStyleMarkSpec-CjSRj4f_.mjs.map} +1 -1
- package/dist/chunks/LinkPlugin-Ct5Z180S.mjs +2 -0
- package/dist/chunks/LinkPlugin-Ct5Z180S.mjs.map +1 -0
- package/dist/chunks/ListPlugin-DAY5ezNs.mjs +2 -0
- package/dist/chunks/ListPlugin-DAY5ezNs.mjs.map +1 -0
- package/dist/chunks/MarkInputRule-Bdi8KPus.mjs +2 -0
- package/dist/chunks/MarkInputRule-Bdi8KPus.mjs.map +1 -0
- package/dist/chunks/MarkdownHTMLRegistry-CKEx7LkR.mjs +2 -0
- package/dist/chunks/MarkdownHTMLRegistry-CKEx7LkR.mjs.map +1 -0
- package/dist/chunks/MarkdownParser-CWt3M6jR.mjs +2 -0
- package/dist/chunks/MarkdownParser-CWt3M6jR.mjs.map +1 -0
- package/dist/chunks/MarkdownSerializer-J-i28out.mjs +2 -0
- package/dist/chunks/MarkdownSerializer-J-i28out.mjs.map +1 -0
- package/dist/chunks/{NodeResolver-ChgLF_IP.mjs → NodeResolver-Dleih-8R.mjs} +2 -2
- package/dist/chunks/{NodeResolver-ChgLF_IP.mjs.map → NodeResolver-Dleih-8R.mjs.map} +1 -1
- package/dist/chunks/NodeSelectionCommands-1PjwUDTJ.mjs +2 -0
- package/dist/chunks/{NodeSelectionCommands-Dj4VxLdD.mjs.map → NodeSelectionCommands-1PjwUDTJ.mjs.map} +1 -1
- package/dist/chunks/PluginHelpers-Dx_0hfDe.mjs +2 -0
- package/dist/chunks/{PluginHelpers-KDuTlmXm.mjs.map → PluginHelpers-Dx_0hfDe.mjs.map} +1 -1
- package/dist/chunks/{PopupManager-CyOfZUab.mjs → PopupManager-CT-fMZJn.mjs} +2 -2
- package/dist/chunks/{PopupManager-CyOfZUab.mjs.map → PopupManager-CT-fMZJn.mjs.map} +1 -1
- package/dist/chunks/PopupPositioning-BFh6Ed1D.mjs +2 -0
- package/dist/chunks/{PopupPositioning-DtUrY9bh.mjs.map → PopupPositioning-BFh6Ed1D.mjs.map} +1 -1
- package/dist/chunks/PrintPlugin-7zz9mhhU.mjs +2 -0
- package/dist/chunks/PrintPlugin-7zz9mhhU.mjs.map +1 -0
- package/dist/chunks/{PrintTypes-WdtgSj74.mjs → PrintTypes-CxU69qu3.mjs} +3 -2
- package/dist/chunks/PrintTypes-CxU69qu3.mjs.map +1 -0
- package/dist/chunks/{RangeIterator-o8v3msQe.mjs → RangeIterator-DP7Ud3Gp.mjs} +2 -2
- package/dist/chunks/{RangeIterator-o8v3msQe.mjs.map → RangeIterator-DP7Ud3Gp.mjs.map} +1 -1
- package/dist/chunks/SchemaRegistry-CkBN-1yW.mjs +2 -0
- package/dist/chunks/SchemaRegistry-CkBN-1yW.mjs.map +1 -0
- package/dist/chunks/{SimpleMark-CaQtFAau.mjs → SimpleMark-7CQcA4RK.mjs} +2 -2
- package/dist/chunks/{SimpleMark-CaQtFAau.mjs.map → SimpleMark-7CQcA4RK.mjs.map} +1 -1
- package/dist/chunks/{SmartPastePlugin-Bi_wpTCV.mjs → SmartPastePlugin-CYa_nD9v.mjs} +2 -2
- package/dist/chunks/{SmartPastePlugin-Bi_wpTCV.mjs.map → SmartPastePlugin-CYa_nD9v.mjs.map} +1 -1
- package/dist/chunks/StrikethroughPlugin-C2oWvGc3.mjs +2 -0
- package/dist/chunks/StrikethroughPlugin-C2oWvGc3.mjs.map +1 -0
- package/dist/chunks/StyleRuntime-DW6omotc.mjs +2 -0
- package/dist/chunks/StyleRuntime-DW6omotc.mjs.map +1 -0
- package/dist/chunks/{SuperSubPlugin-DVP7VnIz.mjs → SuperSubPlugin-D1xaKrSu.mjs} +2 -2
- package/dist/chunks/{SuperSubPlugin-DVP7VnIz.mjs.map → SuperSubPlugin-D1xaKrSu.mjs.map} +1 -1
- package/dist/chunks/TableDimensions-BBhjHNjQ.mjs +2 -0
- package/dist/chunks/TableDimensions-BBhjHNjQ.mjs.map +1 -0
- package/dist/chunks/TablePlugin-PJe3zwr-.mjs +2 -0
- package/dist/chunks/TablePlugin-PJe3zwr-.mjs.map +1 -0
- package/dist/chunks/TextColorPlugin-CTd9tfeG.mjs +2 -0
- package/dist/chunks/{TextColorPlugin-C1qpzEOa.mjs.map → TextColorPlugin-CTd9tfeG.mjs.map} +1 -1
- package/dist/chunks/TextDirectionAutoPlugin-CPnKVVuI.mjs +2 -0
- package/dist/chunks/{TextDirectionAutoPlugin-CzWJjrvG.mjs.map → TextDirectionAutoPlugin-CPnKVVuI.mjs.map} +1 -1
- package/dist/chunks/{TextDirectionPlugin-DHB88HKf.mjs → TextDirectionPlugin-Bns_03vL.mjs} +2 -2
- package/dist/chunks/{TextDirectionPlugin-DHB88HKf.mjs.map → TextDirectionPlugin-Bns_03vL.mjs.map} +1 -1
- package/dist/chunks/TextDirectionService-BcX07mw2.mjs +2 -0
- package/dist/chunks/{TextDirectionService-OFOU6r_s.mjs.map → TextDirectionService-BcX07mw2.mjs.map} +1 -1
- package/dist/chunks/TextFormattingPlugin-DBVlePqj.mjs +2 -0
- package/dist/chunks/TextFormattingPlugin-DBVlePqj.mjs.map +1 -0
- package/dist/chunks/{ToolbarPlugin-CLz2wa2c.mjs → ToolbarPlugin-DtfGTO_V.mjs} +2 -2
- package/dist/chunks/{ToolbarPlugin-CLz2wa2c.mjs.map → ToolbarPlugin-DtfGTO_V.mjs.map} +1 -1
- package/dist/chunks/VideoPlugin-BrR8g6Rz.mjs +2 -0
- package/dist/chunks/VideoPlugin-BrR8g6Rz.mjs.map +1 -0
- package/dist/chunks/WordBoundary-CFpIJDNP.mjs +2 -0
- package/dist/chunks/{WordBoundary-DxeMBRyP.mjs.map → WordBoundary-CFpIJDNP.mjs.map} +1 -1
- package/dist/chunks/ar-Dg9PdDet.mjs +2 -0
- package/dist/chunks/ar-Dg9PdDet.mjs.map +1 -0
- package/dist/chunks/ar-eOA3UmiE.mjs +2 -0
- package/dist/chunks/{ar-BTShmP2E.mjs.map → ar-eOA3UmiE.mjs.map} +1 -1
- package/dist/chunks/de-DJ5EkXQo.mjs +2 -0
- package/dist/chunks/de-DJ5EkXQo.mjs.map +1 -0
- package/dist/chunks/{de-C--bRmjW.mjs → de-DRbhnS4T.mjs} +2 -2
- package/dist/chunks/{de-C--bRmjW.mjs.map → de-DRbhnS4T.mjs.map} +1 -1
- package/dist/chunks/{es-DFUVd7eO.mjs → es-BQ9dox_E.mjs} +2 -2
- package/dist/chunks/{es-DFUVd7eO.mjs.map → es-BQ9dox_E.mjs.map} +1 -1
- package/dist/chunks/es-CEAJj7aB.mjs +2 -0
- package/dist/chunks/es-CEAJj7aB.mjs.map +1 -0
- package/dist/chunks/fr-DhWQzZy3.mjs +2 -0
- package/dist/chunks/fr-DhWQzZy3.mjs.map +1 -0
- package/dist/chunks/{fr-BaXKyPmX.mjs → fr-NVOinLyF.mjs} +2 -2
- package/dist/chunks/{fr-BaXKyPmX.mjs.map → fr-NVOinLyF.mjs.map} +1 -1
- package/dist/chunks/full-DSWM4cKQ.mjs +2 -0
- package/dist/chunks/{full-Cah3qjCT.mjs.map → full-DSWM4cKQ.mjs.map} +1 -1
- package/dist/chunks/hi-BsZzSMfL.mjs +2 -0
- package/dist/chunks/hi-BsZzSMfL.mjs.map +1 -0
- package/dist/chunks/{hi-aH9HZG23.mjs → hi-DrC2H81d.mjs} +2 -2
- package/dist/chunks/{hi-aH9HZG23.mjs.map → hi-DrC2H81d.mjs.map} +1 -1
- package/dist/chunks/minimal-CFkkPXef.mjs +2 -0
- package/dist/chunks/{minimal-DqATlnAL.mjs.map → minimal-CFkkPXef.mjs.map} +1 -1
- package/dist/chunks/pt-BuZ7acHF.mjs +2 -0
- package/dist/chunks/pt-BuZ7acHF.mjs.map +1 -0
- package/dist/chunks/{pt-Hy-0Xnnc.mjs → pt-CFrcl1v_.mjs} +2 -2
- package/dist/chunks/{pt-Hy-0Xnnc.mjs.map → pt-CFrcl1v_.mjs.map} +1 -1
- package/dist/chunks/rolldown-runtime-H_PjY6_i.mjs +1 -0
- package/dist/chunks/ru-CsP6mLxp.mjs +2 -0
- package/dist/chunks/ru-CsP6mLxp.mjs.map +1 -0
- package/dist/chunks/{ru-BFpEOrVp.mjs → ru-gxbzqLL8.mjs} +2 -2
- package/dist/chunks/{ru-BFpEOrVp.mjs.map → ru-gxbzqLL8.mjs.map} +1 -1
- package/dist/chunks/src-DiAOfuOT.mjs +2 -0
- package/dist/chunks/src-DiAOfuOT.mjs.map +1 -0
- package/dist/chunks/zh-BFZOM3lF.mjs +2 -0
- package/dist/chunks/{zh-BjoyjClN.mjs.map → zh-BFZOM3lF.mjs.map} +1 -1
- package/dist/chunks/zh-CiIyOm6U.mjs +2 -0
- package/dist/chunks/zh-CiIyOm6U.mjs.map +1 -0
- package/dist/commands/BlockInsertion.d.ts +5 -3
- package/dist/commands/BlockInsertion.d.ts.map +1 -1
- package/dist/commands/SelectionDeletion.d.ts +13 -2
- package/dist/commands/SelectionDeletion.d.ts.map +1 -1
- package/dist/editor/ContentSerializer.d.ts +21 -0
- package/dist/editor/ContentSerializer.d.ts.map +1 -1
- package/dist/editor/EditorConfig.d.ts +17 -0
- package/dist/editor/EditorConfig.d.ts.map +1 -1
- package/dist/editor/EditorConfigController.d.ts +10 -0
- package/dist/editor/EditorConfigController.d.ts.map +1 -1
- package/dist/editor/EditorInitializer.d.ts +4 -0
- package/dist/editor/EditorInitializer.d.ts.map +1 -1
- package/dist/editor/EditorLocale.d.ts +2 -0
- package/dist/editor/EditorLocale.d.ts.map +1 -1
- package/dist/editor/MarkdownMode.d.ts +46 -0
- package/dist/editor/MarkdownMode.d.ts.map +1 -0
- package/dist/editor/NotectlEditor.d.ts +46 -3
- package/dist/editor/NotectlEditor.d.ts.map +1 -1
- package/dist/editor/locales/ar.d.ts.map +1 -1
- package/dist/editor/locales/de.d.ts.map +1 -1
- package/dist/editor/locales/es.d.ts.map +1 -1
- package/dist/editor/locales/fr.d.ts.map +1 -1
- package/dist/editor/locales/hi.d.ts.map +1 -1
- package/dist/editor/locales/pt.d.ts.map +1 -1
- package/dist/editor/locales/ru.d.ts.map +1 -1
- package/dist/editor/locales/zh.d.ts.map +1 -1
- package/dist/editor/styles/list.d.ts +1 -1
- package/dist/editor/styles/list.d.ts.map +1 -1
- package/dist/editor/styles/table.d.ts +1 -1
- package/dist/editor/styles/table.d.ts.map +1 -1
- package/dist/full.mjs +1 -1
- package/dist/html.d.ts +1 -0
- package/dist/html.d.ts.map +1 -1
- package/dist/html.mjs +1 -1
- package/dist/index.d.ts +5 -5
- package/dist/index.d.ts.map +1 -1
- package/dist/input/ClipboardHandler.d.ts +2 -0
- package/dist/input/ClipboardHandler.d.ts.map +1 -1
- package/dist/input/InputHandler.d.ts +7 -0
- package/dist/input/InputHandler.d.ts.map +1 -1
- package/dist/input/InputManager.d.ts +10 -0
- package/dist/input/InputManager.d.ts.map +1 -1
- package/dist/input/KeyboardHandler.d.ts.map +1 -1
- package/dist/input/MarkdownPasteDetector.d.ts +26 -0
- package/dist/input/MarkdownPasteDetector.d.ts.map +1 -0
- package/dist/input/PasteHTMLHandler.d.ts +18 -1
- package/dist/input/PasteHTMLHandler.d.ts.map +1 -1
- package/dist/input/PasteHandler.d.ts +30 -0
- package/dist/input/PasteHandler.d.ts.map +1 -1
- package/dist/input/PasteRichBlockHandler.d.ts.map +1 -1
- package/dist/input/SelectionDocument.d.ts +2 -1
- package/dist/input/SelectionDocument.d.ts.map +1 -1
- package/dist/markdown.d.ts +17 -0
- package/dist/markdown.d.ts.map +1 -0
- package/dist/markdown.mjs +1 -0
- package/dist/model/AttrRegistry.d.ts +2 -2
- package/dist/model/AttrRegistry.d.ts.map +1 -1
- package/dist/model/ContentModel.d.ts +12 -0
- package/dist/model/ContentModel.d.ts.map +1 -1
- package/dist/model/Document.d.ts +28 -3
- package/dist/model/Document.d.ts.map +1 -1
- package/dist/model/HTMLUtils.d.ts +15 -0
- package/dist/model/HTMLUtils.d.ts.map +1 -1
- package/dist/model/InlineNodeSpec.d.ts +7 -1
- package/dist/model/InlineNodeSpec.d.ts.map +1 -1
- package/dist/model/InputRule.d.ts +11 -0
- package/dist/model/InputRule.d.ts.map +1 -1
- package/dist/model/MarkSpec.d.ts +7 -1
- package/dist/model/MarkSpec.d.ts.map +1 -1
- package/dist/model/MarkdownSyntaxRegistry.d.ts +51 -0
- package/dist/model/MarkdownSyntaxRegistry.d.ts.map +1 -0
- package/dist/model/NodeSpec.d.ts +47 -1
- package/dist/model/NodeSpec.d.ts.map +1 -1
- package/dist/model/RichBlockData.d.ts +2 -0
- package/dist/model/RichBlockData.d.ts.map +1 -1
- package/dist/model/SchemaRegistry.d.ts.map +1 -1
- package/dist/model/TableDimensions.d.ts +11 -0
- package/dist/model/TableDimensions.d.ts.map +1 -0
- package/dist/notectl-core.mjs +1 -1
- package/dist/notectl-core.umd.js +1 -1
- package/dist/notectl-core.umd.js.map +1 -1
- package/dist/platform/EditorEventBoundary.d.ts +12 -0
- package/dist/platform/EditorEventBoundary.d.ts.map +1 -0
- package/dist/plugins/Plugin.d.ts +7 -0
- package/dist/plugins/Plugin.d.ts.map +1 -1
- package/dist/plugins/PluginContextFactory.d.ts +2 -0
- package/dist/plugins/PluginContextFactory.d.ts.map +1 -1
- package/dist/plugins/PluginManager.d.ts +2 -0
- package/dist/plugins/PluginManager.d.ts.map +1 -1
- package/dist/plugins/alignment.mjs +1 -1
- package/dist/plugins/bidi-isolation.mjs +1 -1
- package/dist/plugins/blockquote/BlockquotePlugin.d.ts +2 -0
- package/dist/plugins/blockquote/BlockquotePlugin.d.ts.map +1 -1
- package/dist/plugins/blockquote.mjs +1 -1
- package/dist/plugins/caret-navigation.mjs +1 -1
- package/dist/plugins/code-block/CodeBlockTypes.d.ts +2 -0
- package/dist/plugins/code-block/CodeBlockTypes.d.ts.map +1 -1
- package/dist/plugins/code-block.mjs +1 -1
- package/dist/plugins/font-size/FontSizeOperations.d.ts.map +1 -1
- package/dist/plugins/font-size.mjs +1 -1
- package/dist/plugins/font.mjs +1 -1
- package/dist/plugins/formula/DisplayMathNodeSpec.d.ts.map +1 -1
- package/dist/plugins/formula/FormulaInputRules.d.ts.map +1 -1
- package/dist/plugins/formula/FormulaMarkdownSyntax.d.ts +4 -0
- package/dist/plugins/formula/FormulaMarkdownSyntax.d.ts.map +1 -0
- package/dist/plugins/formula/FormulaPlugin.d.ts.map +1 -1
- package/dist/plugins/formula/FormulaTypes.d.ts +2 -0
- package/dist/plugins/formula/FormulaTypes.d.ts.map +1 -1
- package/dist/plugins/formula/InlineMathNodeSpec.d.ts.map +1 -1
- package/dist/plugins/formula.mjs +1 -1
- package/dist/plugins/gap-cursor.mjs +1 -1
- package/dist/plugins/hard-break.mjs +1 -1
- package/dist/plugins/heading/HeadingPlugin.d.ts +2 -0
- package/dist/plugins/heading/HeadingPlugin.d.ts.map +1 -1
- package/dist/plugins/heading.mjs +1 -1
- package/dist/plugins/highlight.mjs +1 -1
- package/dist/plugins/horizontal-rule/HorizontalRulePlugin.d.ts +2 -0
- package/dist/plugins/horizontal-rule/HorizontalRulePlugin.d.ts.map +1 -1
- package/dist/plugins/horizontal-rule.mjs +1 -1
- package/dist/plugins/image/ImagePlugin.d.ts +14 -0
- package/dist/plugins/image/ImagePlugin.d.ts.map +1 -1
- package/dist/plugins/image.mjs +1 -1
- package/dist/plugins/inline-code/InlineCodePlugin.d.ts.map +1 -1
- package/dist/plugins/inline-code.mjs +1 -1
- package/dist/plugins/link/LinkPlugin.d.ts +14 -0
- package/dist/plugins/link/LinkPlugin.d.ts.map +1 -1
- package/dist/plugins/link.mjs +1 -1
- package/dist/plugins/list/ListCommands.d.ts +5 -1
- package/dist/plugins/list/ListCommands.d.ts.map +1 -1
- package/dist/plugins/list/ListInputRules.d.ts.map +1 -1
- package/dist/plugins/list/ListItemContext.d.ts +27 -0
- package/dist/plugins/list/ListItemContext.d.ts.map +1 -0
- package/dist/plugins/list/ListKeyboardHandlers.d.ts.map +1 -1
- package/dist/plugins/list/ListPlugin.d.ts +2 -0
- package/dist/plugins/list/ListPlugin.d.ts.map +1 -1
- package/dist/plugins/list/ListToolbarItems.d.ts.map +1 -1
- package/dist/plugins/list.mjs +1 -1
- package/dist/plugins/print/PrintContentPreparer.d.ts.map +1 -1
- package/dist/plugins/print/PrintDestinationBridge.d.ts +23 -0
- package/dist/plugins/print/PrintDestinationBridge.d.ts.map +1 -0
- package/dist/plugins/print/PrintHostStyles.d.ts +50 -0
- package/dist/plugins/print/PrintHostStyles.d.ts.map +1 -0
- package/dist/plugins/print/PrintPlugin.d.ts.map +1 -1
- package/dist/plugins/print/PrintServiceImpl.d.ts +76 -3
- package/dist/plugins/print/PrintServiceImpl.d.ts.map +1 -1
- package/dist/plugins/print/PrintStyleCollector.d.ts +150 -21
- package/dist/plugins/print/PrintStyleCollector.d.ts.map +1 -1
- package/dist/plugins/print/StaticHostMarker.d.ts +18 -0
- package/dist/plugins/print/StaticHostMarker.d.ts.map +1 -0
- package/dist/plugins/print.mjs +1 -1
- package/dist/plugins/shared/MarkInputRule.d.ts +9 -0
- package/dist/plugins/shared/MarkInputRule.d.ts.map +1 -0
- package/dist/plugins/shared/PopupPositioning.d.ts +2 -0
- package/dist/plugins/shared/PopupPositioning.d.ts.map +1 -1
- package/dist/plugins/shared/index.d.ts +1 -0
- package/dist/plugins/shared/index.d.ts.map +1 -1
- package/dist/plugins/shared.mjs +1 -1
- package/dist/plugins/smart-paste.mjs +1 -1
- package/dist/plugins/strikethrough/StrikethroughPlugin.d.ts +2 -0
- package/dist/plugins/strikethrough/StrikethroughPlugin.d.ts.map +1 -1
- package/dist/plugins/strikethrough.mjs +1 -1
- package/dist/plugins/super-sub.mjs +1 -1
- package/dist/plugins/table/TableClipboard.d.ts +8 -0
- package/dist/plugins/table/TableClipboard.d.ts.map +1 -0
- package/dist/plugins/table/TableCommands.d.ts.map +1 -1
- package/dist/plugins/table/TableContextMenu.d.ts +11 -1
- package/dist/plugins/table/TableContextMenu.d.ts.map +1 -1
- package/dist/plugins/table/TableControls.d.ts +6 -1
- package/dist/plugins/table/TableControls.d.ts.map +1 -1
- package/dist/plugins/table/TableControlsDOM.d.ts +11 -2
- package/dist/plugins/table/TableControlsDOM.d.ts.map +1 -1
- package/dist/plugins/table/TableControlsLayout.d.ts +12 -3
- package/dist/plugins/table/TableControlsLayout.d.ts.map +1 -1
- package/dist/plugins/table/TableGrid.d.ts +57 -0
- package/dist/plugins/table/TableGrid.d.ts.map +1 -0
- package/dist/plugins/table/TableHelpers.d.ts +4 -0
- package/dist/plugins/table/TableHelpers.d.ts.map +1 -1
- package/dist/plugins/table/TableLocale.d.ts +30 -0
- package/dist/plugins/table/TableLocale.d.ts.map +1 -1
- package/dist/plugins/table/TableNavigation.d.ts +5 -1
- package/dist/plugins/table/TableNavigation.d.ts.map +1 -1
- package/dist/plugins/table/TableNodeViews.d.ts +13 -1
- package/dist/plugins/table/TableNodeViews.d.ts.map +1 -1
- package/dist/plugins/table/TablePlugin.d.ts +21 -1
- package/dist/plugins/table/TablePlugin.d.ts.map +1 -1
- package/dist/plugins/table/TableSelection.d.ts.map +1 -1
- package/dist/plugins/table/TableSizeEditor.d.ts +11 -0
- package/dist/plugins/table/TableSizeEditor.d.ts.map +1 -0
- package/dist/plugins/table/TableSizing.d.ts +70 -0
- package/dist/plugins/table/TableSizing.d.ts.map +1 -0
- package/dist/plugins/table/index.d.ts +3 -1
- package/dist/plugins/table/index.d.ts.map +1 -1
- package/dist/plugins/table/locales/ar.d.ts.map +1 -1
- package/dist/plugins/table/locales/de.d.ts.map +1 -1
- package/dist/plugins/table/locales/es.d.ts.map +1 -1
- package/dist/plugins/table/locales/fr.d.ts.map +1 -1
- package/dist/plugins/table/locales/hi.d.ts.map +1 -1
- package/dist/plugins/table/locales/pt.d.ts.map +1 -1
- package/dist/plugins/table/locales/ru.d.ts.map +1 -1
- package/dist/plugins/table/locales/zh.d.ts.map +1 -1
- package/dist/plugins/table.mjs +1 -1
- package/dist/plugins/text-color.mjs +1 -1
- package/dist/plugins/text-direction-auto.mjs +1 -1
- package/dist/plugins/text-direction.mjs +1 -1
- package/dist/plugins/text-formatting/TextFormattingPlugin.d.ts +9 -0
- package/dist/plugins/text-formatting/TextFormattingPlugin.d.ts.map +1 -1
- package/dist/plugins/text-formatting.mjs +1 -1
- package/dist/plugins/toolbar.mjs +1 -1
- package/dist/plugins/video/VideoCommands.d.ts.map +1 -1
- package/dist/plugins/video.mjs +1 -1
- package/dist/presets/full.mjs +1 -1
- package/dist/presets/minimal.mjs +1 -1
- package/dist/presets.mjs +1 -1
- package/dist/serialization/DocumentParser.d.ts.map +1 -1
- package/dist/serialization/DocumentSerializer.d.ts +2 -0
- package/dist/serialization/DocumentSerializer.d.ts.map +1 -1
- package/dist/serialization/HTMLSanitization.d.ts +15 -0
- package/dist/serialization/HTMLSanitization.d.ts.map +1 -0
- package/dist/serialization/MarkSerializer.d.ts +12 -0
- package/dist/serialization/MarkSerializer.d.ts.map +1 -1
- package/dist/serialization/MarkdownParser.d.ts +6 -0
- package/dist/serialization/MarkdownParser.d.ts.map +1 -0
- package/dist/serialization/MarkdownSerializer.d.ts +12 -0
- package/dist/serialization/MarkdownSerializer.d.ts.map +1 -0
- package/dist/serialization/MarkdownTypes.d.ts +59 -0
- package/dist/serialization/MarkdownTypes.d.ts.map +1 -0
- package/dist/serialization/TableDimensions.d.ts +37 -0
- package/dist/serialization/TableDimensions.d.ts.map +1 -0
- package/dist/serialization/markdown/BlockSerializers.d.ts +7 -0
- package/dist/serialization/markdown/BlockSerializers.d.ts.map +1 -0
- package/dist/serialization/markdown/BlockTokenizer.d.ts +54 -0
- package/dist/serialization/markdown/BlockTokenizer.d.ts.map +1 -0
- package/dist/serialization/markdown/GfmAutolink.d.ts +20 -0
- package/dist/serialization/markdown/GfmAutolink.d.ts.map +1 -0
- package/dist/serialization/markdown/GfmTableParser.d.ts +26 -0
- package/dist/serialization/markdown/GfmTableParser.d.ts.map +1 -0
- package/dist/serialization/markdown/InlineAst.d.ts +34 -0
- package/dist/serialization/markdown/InlineAst.d.ts.map +1 -0
- package/dist/serialization/markdown/InlineSerializers.d.ts +5 -0
- package/dist/serialization/markdown/InlineSerializers.d.ts.map +1 -0
- package/dist/serialization/markdown/InlineTokenizer.d.ts +5 -0
- package/dist/serialization/markdown/InlineTokenizer.d.ts.map +1 -0
- package/dist/serialization/markdown/LinkReferenceExtractor.d.ts +37 -0
- package/dist/serialization/markdown/LinkReferenceExtractor.d.ts.map +1 -0
- package/dist/serialization/markdown/MarkdownContext.d.ts +32 -0
- package/dist/serialization/markdown/MarkdownContext.d.ts.map +1 -0
- package/dist/serialization/markdown/MarkdownEntities.d.ts +33 -0
- package/dist/serialization/markdown/MarkdownEntities.d.ts.map +1 -0
- package/dist/serialization/markdown/MarkdownEscape.d.ts +33 -0
- package/dist/serialization/markdown/MarkdownEscape.d.ts.map +1 -0
- package/dist/serialization/markdown/MarkdownHTMLRegistry.d.ts +4 -0
- package/dist/serialization/markdown/MarkdownHTMLRegistry.d.ts.map +1 -0
- package/dist/serialization/markdown/MarkdownParseContext.d.ts +23 -0
- package/dist/serialization/markdown/MarkdownParseContext.d.ts.map +1 -0
- package/dist/state/Mapping.d.ts +33 -10
- package/dist/state/Mapping.d.ts.map +1 -1
- package/dist/state/StepApplication.d.ts +3 -1
- package/dist/state/StepApplication.d.ts.map +1 -1
- package/dist/state/StepHandlers.d.ts.map +1 -1
- package/dist/state/StepInversion.d.ts +2 -1
- package/dist/state/StepInversion.d.ts.map +1 -1
- package/dist/state/StepMapping.d.ts +3 -2
- package/dist/state/StepMapping.d.ts.map +1 -1
- package/dist/state/StepMaps.d.ts +3 -2
- package/dist/state/StepMaps.d.ts.map +1 -1
- package/dist/state/Steps.d.ts +34 -2
- package/dist/state/Steps.d.ts.map +1 -1
- package/dist/state/TransactionBuilder.d.ts +7 -1
- package/dist/state/TransactionBuilder.d.ts.map +1 -1
- package/dist/style/StyleRuntime.d.ts +7 -0
- package/dist/style/StyleRuntime.d.ts.map +1 -1
- package/dist/test/MarkdownConformanceUtils.d.ts +12 -0
- package/dist/test/MarkdownConformanceUtils.d.ts.map +1 -0
- package/dist/view/BlockRendering.d.ts +5 -0
- package/dist/view/BlockRendering.d.ts.map +1 -1
- package/dist/view/DecorationRendering.d.ts +6 -0
- package/dist/view/DecorationRendering.d.ts.map +1 -1
- package/dist/view/EditorViewEvents.d.ts.map +1 -1
- package/dist/view/Reconciler.d.ts.map +1 -1
- package/package.json +14 -1
- package/dist/chunks/AttrRegistry-DcDVyzLm.mjs.map +0 -1
- package/dist/chunks/BlockInsertion-6rR9tIGP.mjs +0 -2
- package/dist/chunks/BlockInsertion-6rR9tIGP.mjs.map +0 -1
- package/dist/chunks/BlockquotePlugin-4V7KV_Sb.mjs +0 -2
- package/dist/chunks/CodeBlockPlugin-DC0-BnNy.mjs +0 -2
- package/dist/chunks/CodeBlockPlugin-DC0-BnNy.mjs.map +0 -1
- package/dist/chunks/ColorPickerPopup-C_74bqid.mjs +0 -2
- package/dist/chunks/Commands-BIIpx_Zd.mjs +0 -2
- package/dist/chunks/Commands-BIIpx_Zd.mjs.map +0 -1
- package/dist/chunks/Decoration-ZeyVfwJB.mjs +0 -2
- package/dist/chunks/Decoration-ZeyVfwJB.mjs.map +0 -1
- package/dist/chunks/Document-r7vLOAGA.mjs +0 -2
- package/dist/chunks/Document-r7vLOAGA.mjs.map +0 -1
- package/dist/chunks/DocumentParser-CcTSeT1B.mjs +0 -2
- package/dist/chunks/DocumentParser-CcTSeT1B.mjs.map +0 -1
- package/dist/chunks/FontPlugin-DB1_bgam.mjs +0 -2
- package/dist/chunks/FontSizePlugin-DFvp7Ki9.mjs.map +0 -1
- package/dist/chunks/FormulaPlugin-BLEcyazj.mjs +0 -2
- package/dist/chunks/FormulaPlugin-BLEcyazj.mjs.map +0 -1
- package/dist/chunks/GapCursorNavigation-ycNzuQVH.mjs +0 -2
- package/dist/chunks/HTMLUtils-C6B4UT00.mjs +0 -2
- package/dist/chunks/HTMLUtils-C6B4UT00.mjs.map +0 -1
- package/dist/chunks/HeadingPlugin-D9yvG2Aw.mjs +0 -2
- package/dist/chunks/HorizontalRulePlugin-0FjHPZuA.mjs +0 -2
- package/dist/chunks/HorizontalRulePlugin-0FjHPZuA.mjs.map +0 -1
- package/dist/chunks/ImagePlugin-Cp_RINtc.mjs +0 -2
- package/dist/chunks/InlineCodePlugin-DMr4O7c7.mjs.map +0 -1
- package/dist/chunks/InlineStyleMarkSpec-4R6DC7ij.mjs +0 -2
- package/dist/chunks/LinkPlugin-DvZ3MPgL.mjs +0 -2
- package/dist/chunks/LinkPlugin-DvZ3MPgL.mjs.map +0 -1
- package/dist/chunks/ListPlugin-CVId2dE0.mjs +0 -2
- package/dist/chunks/ListPlugin-CVId2dE0.mjs.map +0 -1
- package/dist/chunks/NodeSelectionCommands-Dj4VxLdD.mjs +0 -2
- package/dist/chunks/PluginHelpers-KDuTlmXm.mjs +0 -2
- package/dist/chunks/PopupPositioning-DtUrY9bh.mjs +0 -2
- package/dist/chunks/PrintPlugin-C6gOJT6d.mjs +0 -2
- package/dist/chunks/PrintPlugin-C6gOJT6d.mjs.map +0 -1
- package/dist/chunks/PrintTypes-WdtgSj74.mjs.map +0 -1
- package/dist/chunks/StrikethroughPlugin-BLKDRWtf.mjs +0 -2
- package/dist/chunks/StrikethroughPlugin-BLKDRWtf.mjs.map +0 -1
- package/dist/chunks/StyleRuntime-BAutwDZT.mjs +0 -2
- package/dist/chunks/StyleRuntime-BAutwDZT.mjs.map +0 -1
- package/dist/chunks/TablePlugin-D93RR5xH.mjs +0 -2
- package/dist/chunks/TablePlugin-D93RR5xH.mjs.map +0 -1
- package/dist/chunks/TextColorPlugin-C1qpzEOa.mjs +0 -2
- package/dist/chunks/TextDirectionAutoPlugin-CzWJjrvG.mjs +0 -2
- package/dist/chunks/TextDirectionService-OFOU6r_s.mjs +0 -2
- package/dist/chunks/TextFormattingPlugin-Cubp3e7f.mjs +0 -2
- package/dist/chunks/TextFormattingPlugin-Cubp3e7f.mjs.map +0 -1
- package/dist/chunks/VideoPlugin-D9rQZol6.mjs +0 -2
- package/dist/chunks/VideoPlugin-D9rQZol6.mjs.map +0 -1
- package/dist/chunks/WordBoundary-DxeMBRyP.mjs +0 -2
- package/dist/chunks/ar-BTShmP2E.mjs +0 -2
- package/dist/chunks/ar-jbplYWkC.mjs +0 -2
- package/dist/chunks/ar-jbplYWkC.mjs.map +0 -1
- package/dist/chunks/de-DN-e6G5A.mjs +0 -2
- package/dist/chunks/de-DN-e6G5A.mjs.map +0 -1
- package/dist/chunks/es-CM55WeEN.mjs +0 -2
- package/dist/chunks/es-CM55WeEN.mjs.map +0 -1
- package/dist/chunks/fr-C_2i5Ono.mjs +0 -2
- package/dist/chunks/fr-C_2i5Ono.mjs.map +0 -1
- package/dist/chunks/full-Cah3qjCT.mjs +0 -2
- package/dist/chunks/hi-C9fvG91d.mjs +0 -2
- package/dist/chunks/hi-C9fvG91d.mjs.map +0 -1
- package/dist/chunks/minimal-DqATlnAL.mjs +0 -2
- package/dist/chunks/pt-GqLw5tN0.mjs +0 -2
- package/dist/chunks/pt-GqLw5tN0.mjs.map +0 -1
- package/dist/chunks/ru-4g_qsaLr.mjs +0 -2
- package/dist/chunks/ru-4g_qsaLr.mjs.map +0 -1
- package/dist/chunks/src-YY6n2SmV.mjs +0 -2
- package/dist/chunks/src-YY6n2SmV.mjs.map +0 -1
- package/dist/chunks/zh-BjoyjClN.mjs +0 -2
- package/dist/chunks/zh-DeZP08HI.mjs +0 -2
- package/dist/chunks/zh-DeZP08HI.mjs.map +0 -1
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/** DOMPurify options required to preserve semantic HTML IDs. */
|
|
2
|
+
export interface HTMLIdSanitizeConfig {
|
|
3
|
+
readonly SANITIZE_DOM: false;
|
|
4
|
+
readonly FORBID_ATTR?: string[];
|
|
5
|
+
}
|
|
6
|
+
/**
|
|
7
|
+
* Builds the shared DOMPurify policy for HTML carrying document-local targets.
|
|
8
|
+
*
|
|
9
|
+
* DOMPurify's `SANITIZE_DOM` option removes otherwise valid IDs such as `target`
|
|
10
|
+
* when their value matches a property on `document` or a form. Those removals
|
|
11
|
+
* break the fragment-link contract. Callers may add attributes that a broad
|
|
12
|
+
* sanitizer pass must always reject; schema-driven allowlists remain authoritative.
|
|
13
|
+
*/
|
|
14
|
+
export declare function preserveHTMLIdSanitizeConfig(...additionalForbiddenAttrs: readonly string[]): HTMLIdSanitizeConfig;
|
|
15
|
+
//# sourceMappingURL=HTMLSanitization.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"HTMLSanitization.d.ts","sourceRoot":"","sources":["../../src/serialization/HTMLSanitization.ts"],"names":[],"mappings":"AAAA,gEAAgE;AAChE,MAAM,WAAW,oBAAoB;IACpC,QAAQ,CAAC,YAAY,EAAE,KAAK,CAAC;IAC7B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;CAChC;AAED;;;;;;;GAOG;AACH,wBAAgB,4BAA4B,CAC3C,GAAG,wBAAwB,EAAE,SAAS,MAAM,EAAE,GAC5C,oBAAoB,CAItB"}
|
|
@@ -10,10 +10,22 @@ export declare function buildMarkOrder(registry: SchemaRegistry): Map<string, nu
|
|
|
10
10
|
* Tag-based marks (`toHTMLString`) wrap the content in rank order.
|
|
11
11
|
*/
|
|
12
12
|
export declare function serializeMarksToHTML(text: string, marks: readonly Mark[], registry: SchemaRegistry, markOrder?: Map<string, number>, exportCtx?: HTMLExportContext): string;
|
|
13
|
+
/**
|
|
14
|
+
* Wraps an already-rendered inline-node HTML fragment (e.g. `<img>`) in its marks
|
|
15
|
+
* using inline-style spans, mirroring {@link serializeMarksToHTML} but without
|
|
16
|
+
* escaping the fragment. Lets a linked inline image export as `<a …><img …></a>`.
|
|
17
|
+
*/
|
|
18
|
+
export declare function serializeInlineNodeMarksToHTML(innerHTML: string, marks: readonly Mark[], registry: SchemaRegistry, markOrder?: Map<string, number>, exportCtx?: HTMLExportContext): string;
|
|
13
19
|
/**
|
|
14
20
|
* Serializes text with marks to HTML using CSS class names instead of inline styles.
|
|
15
21
|
* Style-based marks (`toHTMLStyle`) are collected into a `CSSClassCollector` and emitted
|
|
16
22
|
* as `<span class="...">`. Tag-based marks (`toHTMLString`) wrap identically to the inline path.
|
|
17
23
|
*/
|
|
18
24
|
export declare function serializeMarksToClassHTML(text: string, marks: readonly Mark[], registry: SchemaRegistry, collector: CSSClassCollector, markOrder?: Map<string, number>, exportCtx?: HTMLExportContext): string;
|
|
25
|
+
/**
|
|
26
|
+
* Wraps an already-rendered inline-node HTML fragment in its marks using
|
|
27
|
+
* CSS-class spans, mirroring {@link serializeMarksToClassHTML} but without
|
|
28
|
+
* escaping the fragment.
|
|
29
|
+
*/
|
|
30
|
+
export declare function serializeInlineNodeMarksToClassHTML(innerHTML: string, marks: readonly Mark[], registry: SchemaRegistry, collector: CSSClassCollector, markOrder?: Map<string, number>, exportCtx?: HTMLExportContext): string;
|
|
19
31
|
//# sourceMappingURL=MarkSerializer.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MarkSerializer.d.ts","sourceRoot":"","sources":["../../src/serialization/MarkSerializer.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAGjD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAKhE,wFAAwF;AACxF,wBAAgB,cAAc,CAAC,QAAQ,EAAE,cAAc,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAQ5E;
|
|
1
|
+
{"version":3,"file":"MarkSerializer.d.ts","sourceRoot":"","sources":["../../src/serialization/MarkSerializer.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAGjD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAKhE,wFAAwF;AACxF,wBAAgB,cAAc,CAAC,QAAQ,EAAE,cAAc,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAQ5E;AA2FD;;;;GAIG;AACH,wBAAgB,oBAAoB,CACnC,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,SAAS,IAAI,EAAE,EACtB,QAAQ,EAAE,cAAc,EACxB,SAAS,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EAC/B,SAAS,CAAC,EAAE,iBAAiB,GAC3B,MAAM,CASR;AAED;;;;GAIG;AACH,wBAAgB,8BAA8B,CAC7C,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,SAAS,IAAI,EAAE,EACtB,QAAQ,EAAE,cAAc,EACxB,SAAS,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EAC/B,SAAS,CAAC,EAAE,iBAAiB,GAC3B,MAAM,CASR;AAED;;;;GAIG;AACH,wBAAgB,yBAAyB,CACxC,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,SAAS,IAAI,EAAE,EACtB,QAAQ,EAAE,cAAc,EACxB,SAAS,EAAE,iBAAiB,EAC5B,SAAS,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EAC/B,SAAS,CAAC,EAAE,iBAAiB,GAC3B,MAAM,CAER;AAED;;;;GAIG;AACH,wBAAgB,mCAAmC,CAClD,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,SAAS,IAAI,EAAE,EACtB,QAAQ,EAAE,cAAc,EACxB,SAAS,EAAE,iBAAiB,EAC5B,SAAS,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EAC/B,SAAS,CAAC,EAAE,iBAAiB,GAC3B,MAAM,CAER"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { Document } from '../model/Document.js';
|
|
2
|
+
import { SchemaRegistry } from '../model/SchemaRegistry.js';
|
|
3
|
+
import { MarkdownParseOptions } from './MarkdownTypes.js';
|
|
4
|
+
/** Parses a Markdown string into a Document. */
|
|
5
|
+
export declare function parseMarkdownToDocument(markdown: string, registry?: SchemaRegistry, options?: MarkdownParseOptions): Document;
|
|
6
|
+
//# sourceMappingURL=MarkdownParser.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MarkdownParser.d.ts","sourceRoot":"","sources":["../../src/serialization/MarkdownParser.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,OAAO,KAAK,EAAa,QAAQ,EAAwB,MAAM,sBAAsB,CAAC;AAOtF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAGjE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAS/D,gDAAgD;AAChD,wBAAgB,uBAAuB,CACtC,QAAQ,EAAE,MAAM,EAChB,QAAQ,CAAC,EAAE,cAAc,EACzB,OAAO,CAAC,EAAE,oBAAoB,GAC5B,QAAQ,CAkBV"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { Document } from '../model/Document.js';
|
|
2
|
+
import { SchemaRegistry } from '../model/SchemaRegistry.js';
|
|
3
|
+
import { MarkdownSerializeOptions } from './MarkdownTypes.js';
|
|
4
|
+
/**
|
|
5
|
+
* Serializes a document to a Markdown string.
|
|
6
|
+
*
|
|
7
|
+
* Standard CommonMark/GFM constructs are emitted by the engine's built-in
|
|
8
|
+
* by-type mappings; unrepresentable nodes/marks emit raw HTML (valid Markdown)
|
|
9
|
+
* when `htmlFallback` is on (default), or degrade gracefully when off (D3).
|
|
10
|
+
*/
|
|
11
|
+
export declare function serializeDocumentToMarkdown(doc: Document, registry?: SchemaRegistry, options?: MarkdownSerializeOptions): string;
|
|
12
|
+
//# sourceMappingURL=MarkdownSerializer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MarkdownSerializer.d.ts","sourceRoot":"","sources":["../../src/serialization/MarkdownSerializer.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAEjE,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAInE;;;;;;GAMG;AACH,wBAAgB,2BAA2B,CAC1C,GAAG,EAAE,QAAQ,EACb,QAAQ,CAAC,EAAE,cAAc,EACzB,OAAO,CAAC,EAAE,wBAAwB,GAChC,MAAM,CAQR"}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { Document } from '../model/Document.js';
|
|
2
|
+
import { MarkdownSyntaxExtension } from '../model/MarkdownSyntaxRegistry.js';
|
|
3
|
+
/** Markdown dialect. `gfm` adds tables, task lists, strikethrough and autolinks. */
|
|
4
|
+
export type MarkdownFlavor = 'commonmark' | 'gfm';
|
|
5
|
+
/** ATX (`# h`) vs. setext (`h\n===`) heading style on export. */
|
|
6
|
+
export type HeadingStyle = 'atx' | 'setext';
|
|
7
|
+
/** Bullet marker used for unordered list items on export. */
|
|
8
|
+
export type BulletMarker = '-' | '*' | '+';
|
|
9
|
+
/** Emphasis delimiter used for italic on export. */
|
|
10
|
+
export type EmphasisMarker = '*' | '_';
|
|
11
|
+
/** Fence used for fenced code blocks on export. */
|
|
12
|
+
export type CodeFence = '```' | '~~~';
|
|
13
|
+
/** Options for {@link serializeDocumentToMarkdown} / {@link NotectlEditor.getContentMarkdown}. */
|
|
14
|
+
export interface MarkdownSerializeOptions {
|
|
15
|
+
/** Dialect to emit. Default `gfm`. */
|
|
16
|
+
readonly flavor?: MarkdownFlavor;
|
|
17
|
+
/**
|
|
18
|
+
* When `true` (default), nodes/marks with no portable Markdown representation
|
|
19
|
+
* (underline, highlight, color, video, …) serialize as raw HTML so the
|
|
20
|
+
* round-trip stays lossless (D3). When `false`, styling-only features degrade
|
|
21
|
+
* gracefully (text kept, styling dropped) for clean portable Markdown.
|
|
22
|
+
*/
|
|
23
|
+
readonly htmlFallback?: boolean;
|
|
24
|
+
/** Heading style. Default `atx`. */
|
|
25
|
+
readonly headingStyle?: HeadingStyle;
|
|
26
|
+
/** Bullet marker for unordered lists. Default `-`. */
|
|
27
|
+
readonly bullet?: BulletMarker;
|
|
28
|
+
/** Emphasis delimiter for italic. Default `*`. */
|
|
29
|
+
readonly emphasis?: EmphasisMarker;
|
|
30
|
+
/** Fenced code block fence. Default ` ``` `. */
|
|
31
|
+
readonly codeFence?: CodeFence;
|
|
32
|
+
/** Spaces per indent level for nested lists. Default `2`. */
|
|
33
|
+
readonly listIndent?: number;
|
|
34
|
+
}
|
|
35
|
+
/** Re-exported from `model/` so the extension type sits at the dependency floor (D4). */
|
|
36
|
+
export type { MarkdownSyntaxExtension } from '../model/MarkdownSyntaxRegistry.js';
|
|
37
|
+
/** Options for {@link parseMarkdownToDocument} / {@link NotectlEditor.setContentMarkdown}. */
|
|
38
|
+
export interface MarkdownParseOptions {
|
|
39
|
+
/** Dialect to accept. Default `gfm`. */
|
|
40
|
+
readonly flavor?: MarkdownFlavor;
|
|
41
|
+
/**
|
|
42
|
+
* Import-only Obsidian/Pandoc extensions (`==highlight==`, `^sup^`, `~sub~`).
|
|
43
|
+
* Default `false` — single `~` collides with `~~` strikethrough and these are
|
|
44
|
+
* not portable on output (D2).
|
|
45
|
+
*/
|
|
46
|
+
readonly extendedInlineSyntax?: boolean;
|
|
47
|
+
/**
|
|
48
|
+
* When `true` (default), raw HTML embedded in the Markdown is parsed back via
|
|
49
|
+
* the HTML parser so superset features survive the round-trip (D3).
|
|
50
|
+
*/
|
|
51
|
+
readonly htmlFallback?: boolean;
|
|
52
|
+
/** Plugin-contributed grammar extensions (formula `$...$`, etc.). */
|
|
53
|
+
readonly syntaxExtensions?: readonly MarkdownSyntaxExtension[];
|
|
54
|
+
}
|
|
55
|
+
/** Document → Markdown serializer signature (for typing the lazy import). */
|
|
56
|
+
export type SerializeDocumentToMarkdown = (doc: Document, registry?: import('../model/SchemaRegistry.js').SchemaRegistry, options?: MarkdownSerializeOptions) => string;
|
|
57
|
+
/** Markdown → Document parser signature (for typing the lazy import). */
|
|
58
|
+
export type ParseMarkdownToDocument = (markdown: string, registry?: import('../model/SchemaRegistry.js').SchemaRegistry, options?: MarkdownParseOptions) => Document;
|
|
59
|
+
//# sourceMappingURL=MarkdownTypes.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MarkdownTypes.d.ts","sourceRoot":"","sources":["../../src/serialization/MarkdownTypes.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAErD,oFAAoF;AACpF,MAAM,MAAM,cAAc,GAAG,YAAY,GAAG,KAAK,CAAC;AAElD,iEAAiE;AACjE,MAAM,MAAM,YAAY,GAAG,KAAK,GAAG,QAAQ,CAAC;AAE5C,6DAA6D;AAC7D,MAAM,MAAM,YAAY,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;AAE3C,oDAAoD;AACpD,MAAM,MAAM,cAAc,GAAG,GAAG,GAAG,GAAG,CAAC;AAEvC,mDAAmD;AACnD,MAAM,MAAM,SAAS,GAAG,KAAK,GAAG,KAAK,CAAC;AAEtC,kGAAkG;AAClG,MAAM,WAAW,wBAAwB;IACxC,sCAAsC;IACtC,QAAQ,CAAC,MAAM,CAAC,EAAE,cAAc,CAAC;IACjC;;;;;OAKG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,OAAO,CAAC;IAChC,oCAAoC;IACpC,QAAQ,CAAC,YAAY,CAAC,EAAE,YAAY,CAAC;IACrC,sDAAsD;IACtD,QAAQ,CAAC,MAAM,CAAC,EAAE,YAAY,CAAC;IAC/B,kDAAkD;IAClD,QAAQ,CAAC,QAAQ,CAAC,EAAE,cAAc,CAAC;IACnC,gDAAgD;IAChD,QAAQ,CAAC,SAAS,CAAC,EAAE,SAAS,CAAC;IAC/B,6DAA6D;IAC7D,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,yFAAyF;AACzF,YAAY,EAAE,uBAAuB,EAAE,MAAM,oCAAoC,CAAC;AAClF,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,oCAAoC,CAAC;AAElF,8FAA8F;AAC9F,MAAM,WAAW,oBAAoB;IACpC,wCAAwC;IACxC,QAAQ,CAAC,MAAM,CAAC,EAAE,cAAc,CAAC;IACjC;;;;OAIG;IACH,QAAQ,CAAC,oBAAoB,CAAC,EAAE,OAAO,CAAC;IACxC;;;OAGG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,OAAO,CAAC;IAChC,qEAAqE;IACrE,QAAQ,CAAC,gBAAgB,CAAC,EAAE,SAAS,uBAAuB,EAAE,CAAC;CAC/D;AAED,6EAA6E;AAC7E,MAAM,MAAM,2BAA2B,GAAG,CACzC,GAAG,EAAE,QAAQ,EACb,QAAQ,CAAC,EAAE,OAAO,4BAA4B,EAAE,cAAc,EAC9D,OAAO,CAAC,EAAE,wBAAwB,KAC9B,MAAM,CAAC;AAEZ,yEAAyE;AACzE,MAAM,MAAM,uBAAuB,GAAG,CACrC,QAAQ,EAAE,MAAM,EAChB,QAAQ,CAAC,EAAE,OAAO,4BAA4B,EAAE,cAAc,EAC9D,OAAO,CAAC,EAAE,oBAAoB,KAC1B,QAAQ,CAAC"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { HTMLExportContext } from '../model/NodeSpec.js';
|
|
2
|
+
/** Canonical HTML metadata carrying one logical column's width in CSS pixels. */
|
|
3
|
+
export declare const TABLE_COLUMN_WIDTH_DATA_ATTRIBUTE = "data-notectl-width-px";
|
|
4
|
+
/** Canonical HTML metadata carrying one logical row's minimum height in CSS pixels. */
|
|
5
|
+
export declare const TABLE_ROW_MIN_HEIGHT_DATA_ATTRIBUTE = "data-notectl-min-height-px";
|
|
6
|
+
/** Defensive upper bound for a serialized `<col>` vector. */
|
|
7
|
+
export declare const MAX_SERIALIZED_TABLE_COLUMNS = 1000;
|
|
8
|
+
/** HTML's upper bound for a `<col span>` value. */
|
|
9
|
+
export declare const MAX_TABLE_COLUMN_SPAN = 1000;
|
|
10
|
+
/** Returns a bounded, finite CSS-pixel value without clamping untrusted serialized input. */
|
|
11
|
+
export declare function normalizeSerializedTableDimensionPx(value: unknown): number | undefined;
|
|
12
|
+
/** Parses notectl's canonical numeric `data-notectl-*-px` value. */
|
|
13
|
+
export declare function parseTableDimensionMetadata(raw: string | null): number | undefined;
|
|
14
|
+
/** Parses a conventional numeric or `px` presentation attribute. */
|
|
15
|
+
export declare function parseConventionalTableDimension(raw: string | null): number | undefined;
|
|
16
|
+
/** Parses an exact CSS `<length>` in pixels. Other units and expressions are rejected. */
|
|
17
|
+
export declare function parseCSSTableDimension(raw: string | null): number | undefined;
|
|
18
|
+
/**
|
|
19
|
+
* Reads a dimension from an element using deterministic precedence:
|
|
20
|
+
* notectl metadata, exact CSS properties, then a conventional HTML attribute.
|
|
21
|
+
*/
|
|
22
|
+
export declare function readTableDimensionPx(element: HTMLElement, metadataAttribute: string, cssProperties: readonly string[], conventionalAttribute: string): number | undefined;
|
|
23
|
+
/** Parses a bounded positive integer HTML span, falling back to one when malformed. */
|
|
24
|
+
export declare function parseTableColumnSpan(raw: string | null): number;
|
|
25
|
+
/**
|
|
26
|
+
* Normalizes an untrusted logical column-width vector. Invalid entries become
|
|
27
|
+
* automatic (`null`); a vector with no explicit width is omitted.
|
|
28
|
+
*/
|
|
29
|
+
export declare function normalizeTableColumnWidthsPx(value: unknown): readonly (number | null)[] | undefined;
|
|
30
|
+
/** True when a table column-width vector contains at least one safe explicit value. */
|
|
31
|
+
export declare function hasExplicitTableColumnWidth(value: unknown): boolean;
|
|
32
|
+
/**
|
|
33
|
+
* Emits canonical metadata plus mode-aware visual CSS for one safe dimension.
|
|
34
|
+
* `ctx.styleAttr()` remains the sole generated-style path in class/CSP mode.
|
|
35
|
+
*/
|
|
36
|
+
export declare function serializeTableDimensionAttrs(metadataAttribute: string, cssProperty: 'width' | 'height', value: unknown, ctx?: HTMLExportContext): string;
|
|
37
|
+
//# sourceMappingURL=TableDimensions.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TableDimensions.d.ts","sourceRoot":"","sources":["../../src/serialization/TableDimensions.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAO9D,iFAAiF;AACjF,eAAO,MAAM,iCAAiC,0BAA0B,CAAC;AAEzE,uFAAuF;AACvF,eAAO,MAAM,mCAAmC,+BAA+B,CAAC;AAEhF,6DAA6D;AAC7D,eAAO,MAAM,4BAA4B,OAAQ,CAAC;AAElD,mDAAmD;AACnD,eAAO,MAAM,qBAAqB,OAAQ,CAAC;AAM3C,6FAA6F;AAC7F,wBAAgB,mCAAmC,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAItF;AAED,oEAAoE;AACpE,wBAAgB,2BAA2B,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,GAAG,SAAS,CAElF;AAED,oEAAoE;AACpE,wBAAgB,+BAA+B,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,GAAG,SAAS,CAEtF;AAED,0FAA0F;AAC1F,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,GAAG,SAAS,CAI7E;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CACnC,OAAO,EAAE,WAAW,EACpB,iBAAiB,EAAE,MAAM,EACzB,aAAa,EAAE,SAAS,MAAM,EAAE,EAChC,qBAAqB,EAAE,MAAM,GAC3B,MAAM,GAAG,SAAS,CAcpB;AAED,uFAAuF;AACvF,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,CAO/D;AAED;;;GAGG;AACH,wBAAgB,4BAA4B,CAC3C,KAAK,EAAE,OAAO,GACZ,SAAS,CAAC,MAAM,GAAG,IAAI,CAAC,EAAE,GAAG,SAAS,CAOxC;AAED,uFAAuF;AACvF,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAEnE;AAED;;;GAGG;AACH,wBAAgB,4BAA4B,CAC3C,iBAAiB,EAAE,MAAM,EACzB,WAAW,EAAE,OAAO,GAAG,QAAQ,EAC/B,KAAK,EAAE,OAAO,EACd,GAAG,CAAC,EAAE,iBAAiB,GACrB,MAAM,CAMR"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { BlockNode } from '../../model/Document.js';
|
|
2
|
+
import { SerContext } from './MarkdownContext.js';
|
|
3
|
+
/** Serializes a sequence of blocks, grouping consecutive list items, joined by blank lines. */
|
|
4
|
+
export declare function serializeBlocks(blocks: readonly BlockNode[], ctx: SerContext): string;
|
|
5
|
+
/** Serializes a single (non-list-item) block. */
|
|
6
|
+
export declare function serializeBlock(block: BlockNode, ctx: SerContext): string;
|
|
7
|
+
//# sourceMappingURL=BlockSerializers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BlockSerializers.d.ts","sourceRoot":"","sources":["../../../src/serialization/markdown/BlockSerializers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAGH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AAczD,OAAO,EAAE,KAAK,UAAU,EAAiB,MAAM,sBAAsB,CAAC;AAStE,+FAA+F;AAC/F,wBAAgB,eAAe,CAAC,MAAM,EAAE,SAAS,SAAS,EAAE,EAAE,GAAG,EAAE,UAAU,GAAG,MAAM,CA4BrF;AAED,iDAAiD;AACjD,wBAAgB,cAAc,CAAC,KAAK,EAAE,SAAS,EAAE,GAAG,EAAE,UAAU,GAAG,MAAM,CAiBxE"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { MarkdownSyntaxExtension } from '../../model/MarkdownSyntaxRegistry.js';
|
|
2
|
+
import { ColumnAlign } from './GfmTableParser.js';
|
|
3
|
+
/** A parsed block-level token. Inline text is left raw for the inline parser. */
|
|
4
|
+
export type BlockToken = {
|
|
5
|
+
readonly type: 'heading';
|
|
6
|
+
readonly level: number;
|
|
7
|
+
readonly text: string;
|
|
8
|
+
} | {
|
|
9
|
+
readonly type: 'paragraph';
|
|
10
|
+
readonly text: string;
|
|
11
|
+
} | {
|
|
12
|
+
readonly type: 'code_block';
|
|
13
|
+
readonly language: string;
|
|
14
|
+
readonly code: string;
|
|
15
|
+
} | {
|
|
16
|
+
readonly type: 'hr';
|
|
17
|
+
} | {
|
|
18
|
+
readonly type: 'blockquote';
|
|
19
|
+
readonly children: readonly BlockToken[];
|
|
20
|
+
} | {
|
|
21
|
+
readonly type: 'list_item';
|
|
22
|
+
readonly listType: 'bullet' | 'ordered' | 'checklist';
|
|
23
|
+
readonly indent: number;
|
|
24
|
+
readonly checked: boolean;
|
|
25
|
+
/** Inline text of a leaf item; empty when `children` is present. */
|
|
26
|
+
readonly text: string;
|
|
27
|
+
/** Block children of a multi-block (container) item, absent for leaves. */
|
|
28
|
+
readonly children?: readonly BlockToken[];
|
|
29
|
+
} | {
|
|
30
|
+
readonly type: 'html';
|
|
31
|
+
readonly html: string;
|
|
32
|
+
} | {
|
|
33
|
+
readonly type: 'table';
|
|
34
|
+
readonly aligns: readonly ColumnAlign[];
|
|
35
|
+
readonly header: readonly string[];
|
|
36
|
+
readonly rows: readonly (readonly string[])[];
|
|
37
|
+
} | {
|
|
38
|
+
readonly type: 'extension_block';
|
|
39
|
+
readonly nodeType: string;
|
|
40
|
+
readonly attrs: Record<string, string | number | boolean>;
|
|
41
|
+
};
|
|
42
|
+
export declare const ATX_HEADING: RegExp;
|
|
43
|
+
export declare const FENCE_OPEN: RegExp;
|
|
44
|
+
export declare const THEMATIC_BREAK: RegExp;
|
|
45
|
+
export declare const SETEXT_H1: RegExp;
|
|
46
|
+
export declare const SETEXT_H2: RegExp;
|
|
47
|
+
/**
|
|
48
|
+
* Matches a fence opener. A backtick fence whose info string contains a
|
|
49
|
+
* backtick is not a fence per CommonMark (it reads as an inline code span).
|
|
50
|
+
*/
|
|
51
|
+
export declare function matchFenceOpen(line: string): RegExpMatchArray | null;
|
|
52
|
+
/** Tokenizes a full Markdown source string into block tokens. */
|
|
53
|
+
export declare function tokenizeBlocks(source: string, gfm?: boolean, extensions?: readonly MarkdownSyntaxExtension[]): BlockToken[];
|
|
54
|
+
//# sourceMappingURL=BlockTokenizer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BlockTokenizer.d.ts","sourceRoot":"","sources":["../../../src/serialization/markdown/BlockTokenizer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,uCAAuC,CAAC;AACrF,OAAO,EAAE,KAAK,WAAW,EAA8B,MAAM,qBAAqB,CAAC;AAGnF,iFAAiF;AACjF,MAAM,MAAM,UAAU,GACnB;IAAE,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAC3E;IAAE,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GACrD;IAAE,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GACjF;IAAE,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAA;CAAE,GACvB;IAAE,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,SAAS,UAAU,EAAE,CAAA;CAAE,GACzE;IACA,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAC3B,QAAQ,CAAC,QAAQ,EAAE,QAAQ,GAAG,SAAS,GAAG,WAAW,CAAC;IACtD,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,oEAAoE;IACpE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,2EAA2E;IAC3E,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,UAAU,EAAE,CAAC;CACzC,GACD;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAChD;IACA,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,SAAS,WAAW,EAAE,CAAC;IACxC,QAAQ,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;IACnC,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC,SAAS,MAAM,EAAE,CAAC,EAAE,CAAC;CAC7C,GACD;IACA,QAAQ,CAAC,IAAI,EAAE,iBAAiB,CAAC;IACjC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,CAAC;CACzD,CAAC;AA6CL,eAAO,MAAM,WAAW,QAAwD,CAAC;AACjF,eAAO,MAAM,UAAU,QAAoC,CAAC;AAC5D,eAAO,MAAM,cAAc,QAA0C,CAAC;AAQtE,eAAO,MAAM,SAAS,QAAqB,CAAC;AAC5C,eAAO,MAAM,SAAS,QAAqB,CAAC;AAwB5C;;;GAGG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,gBAAgB,GAAG,IAAI,CAKpE;AAED,iEAAiE;AACjE,wBAAgB,cAAc,CAC7B,MAAM,EAAE,MAAM,EACd,GAAG,UAAO,EACV,UAAU,GAAE,SAAS,uBAAuB,EAAO,GACjD,UAAU,EAAE,CAKd"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { InlineAstNode } from './InlineAst.js';
|
|
2
|
+
/** A matched GFM autolink: destination, display text, and source length. */
|
|
3
|
+
export interface GfmAutolinkMatch {
|
|
4
|
+
readonly href: string;
|
|
5
|
+
readonly display: string;
|
|
6
|
+
readonly length: number;
|
|
7
|
+
}
|
|
8
|
+
/** Cheap pre-check: whether `pos` could start a GFM autolink (boundary + prefix). */
|
|
9
|
+
export declare function isGfmAutolinkCandidate(text: string, pos: number): boolean;
|
|
10
|
+
/** Matches a GFM autolink at `pos` (boundary included in the check), or null. */
|
|
11
|
+
export declare function matchGfmAutolinkAt(text: string, pos: number): GfmAutolinkMatch | null;
|
|
12
|
+
/**
|
|
13
|
+
* Post-pass over the resolved inline AST: turns bare `user@host.tld` emails in
|
|
14
|
+
* plain text into `mailto:` links. Adjacent text nodes (including leftover
|
|
15
|
+
* delimiter runs) are merged first so a local part like `a_b` is scanned as one
|
|
16
|
+
* string. Subtrees that must not be linkified (links, images, code, raw HTML,
|
|
17
|
+
* plugin inline nodes) are skipped.
|
|
18
|
+
*/
|
|
19
|
+
export declare function applyGfmEmailAutolinks(nodes: InlineAstNode[]): void;
|
|
20
|
+
//# sourceMappingURL=GfmAutolink.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GfmAutolink.d.ts","sourceRoot":"","sources":["../../../src/serialization/markdown/GfmAutolink.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EAAE,KAAK,aAAa,EAAY,MAAM,gBAAgB,CAAC;AAE9D,4EAA4E;AAC5E,MAAM,WAAW,gBAAgB;IAChC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACxB;AAiBD,qFAAqF;AACrF,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAYzE;AAED,iFAAiF;AACjF,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,gBAAgB,GAAG,IAAI,CAWrF;AAkGD;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,aAAa,EAAE,GAAG,IAAI,CAenE"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* GFM table detection and row parsing.
|
|
3
|
+
*
|
|
4
|
+
* A table is a header row, a delimiter row (`| --- | :--: |`), and zero or more
|
|
5
|
+
* body rows. Column alignment is derived from the colons in the delimiter row.
|
|
6
|
+
* Cells hold raw inline text, parsed later by the inline tokenizer.
|
|
7
|
+
*/
|
|
8
|
+
/** Column alignment derived from the delimiter row. */
|
|
9
|
+
export type ColumnAlign = 'start' | 'center' | 'end' | null;
|
|
10
|
+
/** A parsed GFM table (cells are raw inline strings). */
|
|
11
|
+
export interface TableData {
|
|
12
|
+
readonly aligns: readonly ColumnAlign[];
|
|
13
|
+
readonly header: readonly string[];
|
|
14
|
+
readonly rows: readonly (readonly string[])[];
|
|
15
|
+
readonly linesConsumed: number;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Attempts to parse a GFM table beginning at `start`. Returns the table data or
|
|
19
|
+
* null when the two leading lines are not a header + delimiter pair. The body
|
|
20
|
+
* extends until a blank line or the start of another block (`interrupts`); a
|
|
21
|
+
* plain paragraph-like line inside that range is a lazy single-cell row, per
|
|
22
|
+
* the GFM spec ("the table is broken at the first empty line or beginning of
|
|
23
|
+
* another block-level structural element").
|
|
24
|
+
*/
|
|
25
|
+
export declare function matchTable(lines: readonly string[], start: number, interrupts?: (line: string) => boolean): TableData | null;
|
|
26
|
+
//# sourceMappingURL=GfmTableParser.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GfmTableParser.d.ts","sourceRoot":"","sources":["../../../src/serialization/markdown/GfmTableParser.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,uDAAuD;AACvD,MAAM,MAAM,WAAW,GAAG,OAAO,GAAG,QAAQ,GAAG,KAAK,GAAG,IAAI,CAAC;AAE5D,yDAAyD;AACzD,MAAM,WAAW,SAAS;IACzB,QAAQ,CAAC,MAAM,EAAE,SAAS,WAAW,EAAE,CAAC;IACxC,QAAQ,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;IACnC,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC,SAAS,MAAM,EAAE,CAAC,EAAE,CAAC;IAC9C,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;CAC/B;AAyCD;;;;;;;GAOG;AACH,wBAAgB,UAAU,CACzB,KAAK,EAAE,SAAS,MAAM,EAAE,EACxB,KAAK,EAAE,MAAM,EACb,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,GACpC,SAAS,GAAG,IAAI,CAqBlB"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Inline AST node model + linked-list helpers shared by the inline parser.
|
|
3
|
+
*
|
|
4
|
+
* A doubly-linked list of nodes is used during parsing so the emphasis
|
|
5
|
+
* delimiter-stack algorithm runs in linear time (no array splicing), which is
|
|
6
|
+
* the ReDoS-safety guarantee for untrusted pasted Markdown (D1).
|
|
7
|
+
*/
|
|
8
|
+
/** Inline AST node kind. */
|
|
9
|
+
export type InlineKind = 'text' | 'code' | 'softbreak' | 'hardbreak' | 'emph' | 'strong' | 'strike' | 'highlight' | 'sup' | 'sub' | 'link' | 'image' | 'inline_node' | 'html_inline';
|
|
10
|
+
/** A single inline AST node (mutable; linked into a sibling list). */
|
|
11
|
+
export interface InlineAstNode {
|
|
12
|
+
type: InlineKind;
|
|
13
|
+
/** Literal text for `text` / `code` / `html_inline`. */
|
|
14
|
+
literal: string;
|
|
15
|
+
/** Container children (`emph`, `strong`, `link`, …). */
|
|
16
|
+
children: InlineAstNode[];
|
|
17
|
+
/** Link/image destination + title. */
|
|
18
|
+
href: string;
|
|
19
|
+
title: string;
|
|
20
|
+
/** Image alt text (plain). */
|
|
21
|
+
alt: string;
|
|
22
|
+
/** Generic inline-node passthrough (plugin extensions, e.g. math). */
|
|
23
|
+
inlineType: string;
|
|
24
|
+
attrs: Record<string, string | number | boolean>;
|
|
25
|
+
prev: InlineAstNode | null;
|
|
26
|
+
next: InlineAstNode | null;
|
|
27
|
+
}
|
|
28
|
+
/** Creates a fresh inline AST node of the given kind. */
|
|
29
|
+
export declare function makeNode(type: InlineKind, literal?: string): InlineAstNode;
|
|
30
|
+
/** Appends `node` after `target` in the sibling linked list. */
|
|
31
|
+
export declare function insertAfter(target: InlineAstNode, node: InlineAstNode): void;
|
|
32
|
+
/** Removes `node` from its sibling linked list. */
|
|
33
|
+
export declare function unlink(node: InlineAstNode): void;
|
|
34
|
+
//# sourceMappingURL=InlineAst.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"InlineAst.d.ts","sourceRoot":"","sources":["../../../src/serialization/markdown/InlineAst.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,4BAA4B;AAC5B,MAAM,MAAM,UAAU,GACnB,MAAM,GACN,MAAM,GACN,WAAW,GACX,WAAW,GACX,MAAM,GACN,QAAQ,GACR,QAAQ,GACR,WAAW,GACX,KAAK,GACL,KAAK,GACL,MAAM,GACN,OAAO,GACP,aAAa,GACb,aAAa,CAAC;AAEjB,sEAAsE;AACtE,MAAM,WAAW,aAAa;IAC7B,IAAI,EAAE,UAAU,CAAC;IACjB,wDAAwD;IACxD,OAAO,EAAE,MAAM,CAAC;IAChB,wDAAwD;IACxD,QAAQ,EAAE,aAAa,EAAE,CAAC;IAC1B,sCAAsC;IACtC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,8BAA8B;IAC9B,GAAG,EAAE,MAAM,CAAC;IACZ,sEAAsE;IACtE,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,CAAC;IACjD,IAAI,EAAE,aAAa,GAAG,IAAI,CAAC;IAC3B,IAAI,EAAE,aAAa,GAAG,IAAI,CAAC;CAC3B;AAED,yDAAyD;AACzD,wBAAgB,QAAQ,CAAC,IAAI,EAAE,UAAU,EAAE,OAAO,SAAK,GAAG,aAAa,CAatE;AAED,gEAAgE;AAChE,wBAAgB,WAAW,CAAC,MAAM,EAAE,aAAa,EAAE,IAAI,EAAE,aAAa,GAAG,IAAI,CAK5E;AAED,mDAAmD;AACnD,wBAAgB,MAAM,CAAC,IAAI,EAAE,aAAa,GAAG,IAAI,CAKhD"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { InlineNode, TextNode } from '../../model/Document.js';
|
|
2
|
+
import { SerContext } from './MarkdownContext.js';
|
|
3
|
+
/** Serializes inline children of a leaf block to a Markdown string. */
|
|
4
|
+
export declare function serializeInlineContent(children: readonly (TextNode | InlineNode)[], ctx: SerContext): string;
|
|
5
|
+
//# sourceMappingURL=InlineSerializers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"InlineSerializers.d.ts","sourceRoot":"","sources":["../../../src/serialization/markdown/InlineSerializers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAQ,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAI1E,OAAO,EAAE,KAAK,UAAU,EAAiB,MAAM,sBAAsB,CAAC;AAqQtE,uEAAuE;AACvE,wBAAgB,sBAAsB,CACrC,QAAQ,EAAE,SAAS,CAAC,QAAQ,GAAG,UAAU,CAAC,EAAE,EAC5C,GAAG,EAAE,UAAU,GACb,MAAM,CAyCR"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { InlineNode, TextNode } from '../../model/Document.js';
|
|
2
|
+
import { ParseContext } from './MarkdownParseContext.js';
|
|
3
|
+
/** Parses inline Markdown into text/inline nodes (linear-time, ReDoS-safe). */
|
|
4
|
+
export declare function parseInline(text: string, ctx: ParseContext): (TextNode | InlineNode)[];
|
|
5
|
+
//# sourceMappingURL=InlineTokenizer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"InlineTokenizer.d.ts","sourceRoot":"","sources":["../../../src/serialization/markdown/InlineTokenizer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAQ,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAmB1E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AA66B9D,+EAA+E;AAC/E,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,YAAY,GAAG,CAAC,QAAQ,GAAG,UAAU,CAAC,EAAE,CAOtF"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Link reference definition extraction (`[label]: dest "title"`).
|
|
3
|
+
*
|
|
4
|
+
* Runs as a pre-pass over the source before block tokenization, mirroring how
|
|
5
|
+
* commonmark.js resolves references before inline parsing. CommonMark rules
|
|
6
|
+
* honored here:
|
|
7
|
+
*
|
|
8
|
+
* - A definition never interrupts an open paragraph (a def-shaped line that
|
|
9
|
+
* lazily continues a paragraph stays paragraph text).
|
|
10
|
+
* - Def-shaped lines inside fenced code are code and survive verbatim.
|
|
11
|
+
* - The destination may sit on the line after the label, and a title may sit
|
|
12
|
+
* on its own following line (multi-line labels and multi-line titles are not
|
|
13
|
+
* supported; such lines stay paragraph text, which never drops content).
|
|
14
|
+
* - Titles honor backslash escapes; destinations and titles decode escapes and
|
|
15
|
+
* entity references; labels match case-folded (Unicode, `ẞ` ↔ `SS`).
|
|
16
|
+
* - A definition inside a blockquote is recognized too; the quote marker line
|
|
17
|
+
* is kept so the (now empty) container survives.
|
|
18
|
+
*
|
|
19
|
+
* First definition of a label wins, as per spec.
|
|
20
|
+
*/
|
|
21
|
+
/** A link reference definition target. */
|
|
22
|
+
export interface LinkRef {
|
|
23
|
+
readonly href: string;
|
|
24
|
+
readonly title?: string;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Case-folds a reference label for matching. `toUpperCase().toLowerCase()`
|
|
28
|
+
* approximates Unicode case folding (it maps `ẞ`/`ß` and `SS` to the same
|
|
29
|
+
* string), which plain `toLowerCase()` does not.
|
|
30
|
+
*/
|
|
31
|
+
export declare function foldReferenceLabel(label: string): string;
|
|
32
|
+
/** Removes link reference definitions from the source and returns them as a map. */
|
|
33
|
+
export declare function extractLinkReferences(source: string): {
|
|
34
|
+
source: string;
|
|
35
|
+
linkRefs: Map<string, LinkRef>;
|
|
36
|
+
};
|
|
37
|
+
//# sourceMappingURL=LinkReferenceExtractor.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LinkReferenceExtractor.d.ts","sourceRoot":"","sources":["../../../src/serialization/markdown/LinkReferenceExtractor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAKH,0CAA0C;AAC1C,MAAM,WAAW,OAAO;IACvB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;CACxB;AAcD;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAOxD;AAED,oFAAoF;AACpF,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,MAAM,GAAG;IACtD,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC/B,CA+CA"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { MarkdownExportContext } from '../../model/NodeSpec.js';
|
|
2
|
+
import { SchemaRegistry } from '../../model/SchemaRegistry.js';
|
|
3
|
+
import { MarkdownSerializeOptions } from '../MarkdownTypes.js';
|
|
4
|
+
/** Fully-resolved serialization options (no `undefined`). */
|
|
5
|
+
export interface ResolvedSerializeOptions {
|
|
6
|
+
readonly flavor: 'commonmark' | 'gfm';
|
|
7
|
+
readonly gfm: boolean;
|
|
8
|
+
readonly htmlFallback: boolean;
|
|
9
|
+
readonly headingStyle: 'atx' | 'setext';
|
|
10
|
+
readonly bullet: string;
|
|
11
|
+
readonly emphasis: string;
|
|
12
|
+
readonly codeFence: string;
|
|
13
|
+
readonly listIndent: number;
|
|
14
|
+
}
|
|
15
|
+
/** Internal context shared by all serialization helpers. */
|
|
16
|
+
export interface SerContext {
|
|
17
|
+
readonly registry?: SchemaRegistry;
|
|
18
|
+
readonly opts: ResolvedSerializeOptions;
|
|
19
|
+
/** Precomputed mark rank map (built once per pass) for HTML-fallback marks. */
|
|
20
|
+
readonly markOrder?: Map<string, number>;
|
|
21
|
+
/**
|
|
22
|
+
* True while serializing the block children of a list item (#194): thematic
|
|
23
|
+
* breaks emit `***` there, because `---` on an indented continuation line
|
|
24
|
+
* would re-parse as a setext underline or a bullet marker.
|
|
25
|
+
*/
|
|
26
|
+
readonly inListItem?: boolean;
|
|
27
|
+
}
|
|
28
|
+
/** Resolves user-facing options into a complete settings object with defaults. */
|
|
29
|
+
export declare function resolveSerializeOptions(options?: MarkdownSerializeOptions): ResolvedSerializeOptions;
|
|
30
|
+
/** Builds the public {@link MarkdownExportContext} passed to per-spec hooks. */
|
|
31
|
+
export declare function exportContext(opts: ResolvedSerializeOptions): MarkdownExportContext;
|
|
32
|
+
//# sourceMappingURL=MarkdownContext.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MarkdownContext.d.ts","sourceRoot":"","sources":["../../../src/serialization/markdown/MarkdownContext.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AACrE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AACpE,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAEpE,6DAA6D;AAC7D,MAAM,WAAW,wBAAwB;IACxC,QAAQ,CAAC,MAAM,EAAE,YAAY,GAAG,KAAK,CAAC;IACtC,QAAQ,CAAC,GAAG,EAAE,OAAO,CAAC;IACtB,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC;IAC/B,QAAQ,CAAC,YAAY,EAAE,KAAK,GAAG,QAAQ,CAAC;IACxC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;CAC5B;AAED,4DAA4D;AAC5D,MAAM,WAAW,UAAU;IAC1B,QAAQ,CAAC,QAAQ,CAAC,EAAE,cAAc,CAAC;IACnC,QAAQ,CAAC,IAAI,EAAE,wBAAwB,CAAC;IACxC,+EAA+E;IAC/E,QAAQ,CAAC,SAAS,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACzC;;;;OAIG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC;CAC9B;AAED,kFAAkF;AAClF,wBAAgB,uBAAuB,CACtC,OAAO,CAAC,EAAE,wBAAwB,GAChC,wBAAwB,CAY1B;AAED,gFAAgF;AAChF,wBAAgB,aAAa,CAAC,IAAI,EAAE,wBAAwB,GAAG,qBAAqB,CAEnF"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* HTML entity and backslash-escape decoding shared by the Markdown parser.
|
|
3
|
+
*
|
|
4
|
+
* CommonMark recognizes entity and numeric character references (and backslash
|
|
5
|
+
* escapes) not only in inline text but also inside link destinations, link
|
|
6
|
+
* titles, link reference definitions, and code-fence info strings. The small
|
|
7
|
+
* built-in table covers the common names; uncommon names are decoded through
|
|
8
|
+
* the environment's HTML parser when a DOM is available (browser, happy-dom),
|
|
9
|
+
* because embedding the full HTML5 table (~2200 names) would bloat the chunk.
|
|
10
|
+
* Without a DOM (pure Node) unknown entities stay literal, which never loses
|
|
11
|
+
* content.
|
|
12
|
+
*/
|
|
13
|
+
/** Characters a backslash may escape (CommonMark ASCII punctuation). */
|
|
14
|
+
export declare const ESCAPABLE: RegExp;
|
|
15
|
+
/**
|
|
16
|
+
* Decodes a single HTML entity body (without `&`/`;`), or returns it verbatim.
|
|
17
|
+
* Per CommonMark, U+0000 and invalid code points decode to U+FFFD; decoded
|
|
18
|
+
* line separators become plain spaces so a text node never carries a raw
|
|
19
|
+
* newline (block boundaries are structural in the editor model).
|
|
20
|
+
*/
|
|
21
|
+
export declare function decodeEntity(body: string): string;
|
|
22
|
+
/** Matches an entity reference at `pos` in `text`, or null. */
|
|
23
|
+
export declare function matchEntityAt(text: string, pos: number): RegExpExecArray | null;
|
|
24
|
+
/**
|
|
25
|
+
* Decodes backslash escapes and entity references in a single left-to-right
|
|
26
|
+
* pass (an escaped `&` therefore never starts an entity). Used for the string
|
|
27
|
+
* contexts CommonMark decodes outside inline text: link destinations, titles,
|
|
28
|
+
* reference definitions, and fence info strings.
|
|
29
|
+
*/
|
|
30
|
+
export declare function decodeEscapesAndEntities(text: string): string;
|
|
31
|
+
/** Decodes only entity references (escapes were already consumed by the caller). */
|
|
32
|
+
export declare function decodeEntitiesOnly(text: string): string;
|
|
33
|
+
//# sourceMappingURL=MarkdownEntities.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MarkdownEntities.d.ts","sourceRoot":"","sources":["../../../src/serialization/markdown/MarkdownEntities.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,wEAAwE;AACxE,eAAO,MAAM,SAAS,QAAmB,CAAC;AAmB1C;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAcjD;AAED,+DAA+D;AAC/D,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,eAAe,GAAG,IAAI,CAG/E;AAiBD;;;;;GAKG;AACH,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAsB7D;AAED,oFAAoF;AACpF,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAiBvD"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CommonMark escaping rules for Markdown serialization.
|
|
3
|
+
*
|
|
4
|
+
* Escaping is contextual: inline text backslash-escapes characters that would
|
|
5
|
+
* otherwise start emphasis/code/links, while the start of a line additionally
|
|
6
|
+
* escapes block markers (`#`, `>`, `-`, …) so prose never accidentally becomes
|
|
7
|
+
* a heading or list on re-parse. Output stays minimal: we do not escape every
|
|
8
|
+
* punctuation character, only those that are actually ambiguous in context.
|
|
9
|
+
*/
|
|
10
|
+
/**
|
|
11
|
+
* Escapes inline text so it round-trips as literal content. `~` is escaped only
|
|
12
|
+
* for GFM (where `~~` is strikethrough); `_` is escaped only when it is not
|
|
13
|
+
* intra-word, matching CommonMark's emphasis rules (so `a_b_c` stays literal).
|
|
14
|
+
*/
|
|
15
|
+
export declare function escapeInline(text: string, gfm: boolean): string;
|
|
16
|
+
/**
|
|
17
|
+
* Escapes leading block markers at the start of a paragraph line so the text
|
|
18
|
+
* does not re-parse as a heading, blockquote, list, thematic break, setext
|
|
19
|
+
* underline, or code fence.
|
|
20
|
+
*/
|
|
21
|
+
export declare function escapeLineStart(line: string): string;
|
|
22
|
+
/** Escapes the destination of a link/image so spaces and parens stay intact. */
|
|
23
|
+
export declare function escapeLinkDestination(url: string): string;
|
|
24
|
+
/** Escapes a link/image title for the `"..."` form. */
|
|
25
|
+
export declare function escapeLinkTitle(title: string): string;
|
|
26
|
+
/**
|
|
27
|
+
* Picks a backtick fence long enough to wrap `content` as an inline code span.
|
|
28
|
+
* CommonMark requires a fence longer than any backtick run inside the content.
|
|
29
|
+
*/
|
|
30
|
+
export declare function codeSpanFence(content: string): string;
|
|
31
|
+
/** Wraps `content` in a correctly sized inline code span, padding when needed. */
|
|
32
|
+
export declare function wrapCodeSpan(content: string): string;
|
|
33
|
+
//# sourceMappingURL=MarkdownEscape.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MarkdownEscape.d.ts","sourceRoot":"","sources":["../../../src/serialization/markdown/MarkdownEscape.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAeH;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,GAAG,MAAM,CAuB/D;AA0BD;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAsBpD;AAED,gFAAgF;AAChF,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAKzD;AAED,uDAAuD;AACvD,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAErD;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAYrD;AAED,kFAAkF;AAClF,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAUpD"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { SchemaRegistry } from '../../model/SchemaRegistry.js';
|
|
2
|
+
/** Resolves the schema at an HTML boundary without supplementing an explicit schema. */
|
|
3
|
+
export declare function resolveMarkdownHTMLRegistry(registry?: SchemaRegistry): SchemaRegistry;
|
|
4
|
+
//# sourceMappingURL=MarkdownHTMLRegistry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MarkdownHTMLRegistry.d.ts","sourceRoot":"","sources":["../../../src/serialization/markdown/MarkdownHTMLRegistry.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAU/D,wFAAwF;AACxF,wBAAgB,2BAA2B,CAAC,QAAQ,CAAC,EAAE,cAAc,GAAG,cAAc,CAIrF"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { SchemaRegistry } from '../../model/SchemaRegistry.js';
|
|
2
|
+
import { MarkdownParseOptions, MarkdownSyntaxExtension } from '../MarkdownTypes.js';
|
|
3
|
+
/** Fully-resolved parse options (no `undefined`). */
|
|
4
|
+
export interface ResolvedParseOptions {
|
|
5
|
+
readonly flavor: 'commonmark' | 'gfm';
|
|
6
|
+
readonly gfm: boolean;
|
|
7
|
+
readonly extendedInlineSyntax: boolean;
|
|
8
|
+
readonly htmlFallback: boolean;
|
|
9
|
+
readonly syntaxExtensions: readonly MarkdownSyntaxExtension[];
|
|
10
|
+
}
|
|
11
|
+
/** Internal context shared by the block and inline parsers. */
|
|
12
|
+
export interface ParseContext {
|
|
13
|
+
readonly registry?: SchemaRegistry;
|
|
14
|
+
readonly opts: ResolvedParseOptions;
|
|
15
|
+
/** Link reference definitions collected from the source (`[ref]: url "title"`). */
|
|
16
|
+
readonly linkRefs: ReadonlyMap<string, {
|
|
17
|
+
readonly href: string;
|
|
18
|
+
readonly title?: string;
|
|
19
|
+
}>;
|
|
20
|
+
}
|
|
21
|
+
/** Resolves user-facing parse options into a complete settings object with defaults. */
|
|
22
|
+
export declare function resolveParseOptions(options?: MarkdownParseOptions): ResolvedParseOptions;
|
|
23
|
+
//# sourceMappingURL=MarkdownParseContext.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MarkdownParseContext.d.ts","sourceRoot":"","sources":["../../../src/serialization/markdown/MarkdownParseContext.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AACpE,OAAO,KAAK,EAAE,oBAAoB,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAEzF,qDAAqD;AACrD,MAAM,WAAW,oBAAoB;IACpC,QAAQ,CAAC,MAAM,EAAE,YAAY,GAAG,KAAK,CAAC;IACtC,QAAQ,CAAC,GAAG,EAAE,OAAO,CAAC;IACtB,QAAQ,CAAC,oBAAoB,EAAE,OAAO,CAAC;IACvC,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC;IAC/B,QAAQ,CAAC,gBAAgB,EAAE,SAAS,uBAAuB,EAAE,CAAC;CAC9D;AAED,+DAA+D;AAC/D,MAAM,WAAW,YAAY;IAC5B,QAAQ,CAAC,QAAQ,CAAC,EAAE,cAAc,CAAC;IACnC,QAAQ,CAAC,IAAI,EAAE,oBAAoB,CAAC;IACpC,mFAAmF;IACnF,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAC,MAAM,EAAE;QAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAC3F;AAED,wFAAwF;AACxF,wBAAgB,mBAAmB,CAAC,OAAO,CAAC,EAAE,oBAAoB,GAAG,oBAAoB,CASxF"}
|