@aiquants/markdown 5.0.0 → 6.0.0

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 (170) hide show
  1. package/README.md +93 -14
  2. package/dist/{abnfDiagram-VRR7QNED-DeHJ63Vu.js → abnfDiagram-VRR7QNED-D7Rp9EaV.js} +3 -3
  3. package/dist/{abnfDiagram-VRR7QNED-CfVjEUzG.cjs → abnfDiagram-VRR7QNED-KTGT9TWM.cjs} +1 -1
  4. package/dist/{arc-XFFLkHkK.cjs → arc-D5T_urCC.cjs} +1 -1
  5. package/dist/arc-DzZml7Bc.js +83 -0
  6. package/dist/{architectureDiagram-ZJ3FMSHR-7xJ6YYGu.cjs → architectureDiagram-ZJ3FMSHR-BOo3y9aD.cjs} +1 -1
  7. package/dist/{architectureDiagram-ZJ3FMSHR-CQ1m3MUB.js → architectureDiagram-ZJ3FMSHR-DLrGYTYy.js} +123 -123
  8. package/dist/{blockDiagram-677ZJIJ3-BPC3se0e.js → blockDiagram-677ZJIJ3-B60l5Fpl.js} +166 -166
  9. package/dist/{blockDiagram-677ZJIJ3-CJOFqwiW.cjs → blockDiagram-677ZJIJ3-DnjCjo0a.cjs} +1 -1
  10. package/dist/{c4Diagram-LMCZKHZV-BEIrp4t6.js → c4Diagram-LMCZKHZV-BmbplKCu.js} +2 -2
  11. package/dist/{c4Diagram-LMCZKHZV-D8ytYGhR.cjs → c4Diagram-LMCZKHZV-bd8fWQ1F.cjs} +1 -1
  12. package/dist/channel-B3oXm84X.js +5 -0
  13. package/dist/{channel-CJQcZr8o.cjs → channel-DJ_PyD9w.cjs} +1 -1
  14. package/dist/{chunk-2Q5K7J3B-l8ly7Yjr.js → chunk-2Q5K7J3B-C0hbxO3D.js} +1 -1
  15. package/dist/{chunk-2Q5K7J3B-BbMQR3Sm.cjs → chunk-2Q5K7J3B-CWLCO342.cjs} +1 -1
  16. package/dist/{chunk-32BRIVSS-BwDfmprN.cjs → chunk-32BRIVSS-Cb9nTxqN.cjs} +1 -1
  17. package/dist/{chunk-32BRIVSS-BhQJBlVw.js → chunk-32BRIVSS-DUWtkDEY.js} +1 -1
  18. package/dist/{chunk-5VM5RSS4-Bfis-x7E.js → chunk-5VM5RSS4-C3mSh-gE.js} +1 -1
  19. package/dist/{chunk-5VM5RSS4-CqDQlS7v.cjs → chunk-5VM5RSS4-DHA5n_Ls.cjs} +1 -1
  20. package/dist/{chunk-EX3LRPZG-9aDULZwJ.cjs → chunk-EX3LRPZG-ByY6_kep.cjs} +1 -1
  21. package/dist/{chunk-EX3LRPZG-DUTbzwDM.js → chunk-EX3LRPZG-DCF1zjtT.js} +50 -50
  22. package/dist/{chunk-JWPE2WC7-DpcSSOP5.js → chunk-JWPE2WC7-CPLOunIL.js} +1 -1
  23. package/dist/{chunk-JWPE2WC7-5cM5nFf6.cjs → chunk-JWPE2WC7-CUBzYD4G.cjs} +1 -1
  24. package/dist/{chunk-MOJQB5TN-D_h6bolU.js → chunk-MOJQB5TN-CmOhW6SK.js} +9 -9
  25. package/dist/{chunk-MOJQB5TN-Cw864mUL.cjs → chunk-MOJQB5TN-P8-yb3-j.cjs} +1 -1
  26. package/dist/{chunk-PUDLZKDR-B0wZjmzv.js → chunk-PUDLZKDR-DH7B7ZTK.js} +22 -22
  27. package/dist/{chunk-PUDLZKDR-yLvT3c9x.cjs → chunk-PUDLZKDR-pKdIELvz.cjs} +1 -1
  28. package/dist/{chunk-RYQCIY6F-DTKYsCgk.js → chunk-RYQCIY6F-C7ytn_QX.js} +6 -6
  29. package/dist/{chunk-RYQCIY6F-hj9dRWMT.cjs → chunk-RYQCIY6F-DcvQCEoc.cjs} +1 -1
  30. package/dist/{chunk-V7JOEXUC-COa9uddv.js → chunk-V7JOEXUC-BgLcssUF.js} +5 -5
  31. package/dist/{chunk-V7JOEXUC-DIQ8n1AN.cjs → chunk-V7JOEXUC-CtXgqODy.cjs} +1 -1
  32. package/dist/{chunk-VR4S4FIN-B72PxPVm.js → chunk-VR4S4FIN-BK6xeIQk.js} +3 -3
  33. package/dist/{chunk-VR4S4FIN-Cy-2mZJB.cjs → chunk-VR4S4FIN-Cc4GDi2Z.cjs} +1 -1
  34. package/dist/{chunk-XXDRQBXY-D2Sgptl-.js → chunk-XXDRQBXY-COtZ25Ez.js} +1 -1
  35. package/dist/{chunk-XXDRQBXY-DmoUE7-y.cjs → chunk-XXDRQBXY-D1OixGzR.cjs} +1 -1
  36. package/dist/{classDiagram-OUVF2IWQ-GjsCEuKI.cjs → classDiagram-OUVF2IWQ-DDLmqaG6.cjs} +1 -1
  37. package/dist/{classDiagram-v2-EOCWNBFH-Dah4_VL7.js → classDiagram-OUVF2IWQ-Jc-IwOm0.js} +2 -2
  38. package/dist/{classDiagram-v2-EOCWNBFH-GjsCEuKI.cjs → classDiagram-v2-EOCWNBFH-DDLmqaG6.cjs} +1 -1
  39. package/dist/{classDiagram-OUVF2IWQ-Dah4_VL7.js → classDiagram-v2-EOCWNBFH-Jc-IwOm0.js} +2 -2
  40. package/dist/components/MarkdownRenderer.d.ts +5 -2
  41. package/dist/components/MarkdownViewer.d.ts +3 -2
  42. package/dist/components/NodesRenderer.d.ts +1 -5
  43. package/dist/components/embeds/ClientFrame.d.ts +13 -0
  44. package/dist/components/embeds/LinkCard.d.ts +9 -0
  45. package/dist/components/embeds/ProviderEmbed.d.ts +11 -0
  46. package/dist/components/embeds/embedLabels.d.ts +12 -0
  47. package/dist/components/embeds/frameMessages.d.ts +7 -0
  48. package/dist/components/embeds/markdownEmbeds.d.ts +2 -0
  49. package/dist/components/embeds/requestQueue.d.ts +16 -0
  50. package/dist/components/embeds.d.ts +0 -8
  51. package/dist/components/htmlSanitizer.d.ts +4 -0
  52. package/dist/components/mdastNodes/HTMLBlockContainerNode.d.ts +1 -2
  53. package/dist/components/rawHtml.d.ts +6 -3
  54. package/dist/components/viewerLabels.d.ts +3 -1
  55. package/dist/{cose-bilkent-JH36ORCC-Pi0l3C5o.js → cose-bilkent-JH36ORCC-DaucPocG.js} +1 -1
  56. package/dist/{cose-bilkent-JH36ORCC-Vi9pHFwc.cjs → cose-bilkent-JH36ORCC-OwiXHdQY.cjs} +1 -1
  57. package/dist/css/zenn-content.css +0 -40
  58. package/dist/{cynefinDiagram-TSTJHNR4-BQ2k9Z6b.cjs → cynefinDiagram-TSTJHNR4-Ag-HcuUm.cjs} +1 -1
  59. package/dist/{cynefinDiagram-TSTJHNR4-CIh03JTU.js → cynefinDiagram-TSTJHNR4-Dkmz7gDw.js} +47 -47
  60. package/dist/{dagre-VKFMJZFB-cINcPwV3.js → dagre-VKFMJZFB-BHGdcjt3.js} +27 -27
  61. package/dist/{dagre-VKFMJZFB-DI2wSrAy.cjs → dagre-VKFMJZFB-Q4CcAQ09.cjs} +1 -1
  62. package/dist/{diagram-FQU43EPY-BonrBTG_.js → diagram-FQU43EPY-DBASKnKu.js} +42 -42
  63. package/dist/{diagram-FQU43EPY-B6iUH2l5.cjs → diagram-FQU43EPY-jWCrN_AW.cjs} +1 -1
  64. package/dist/{diagram-G47NLZAW-CY6mWS2R.cjs → diagram-G47NLZAW-B4XMStX7.cjs} +1 -1
  65. package/dist/{diagram-G47NLZAW-5N876QQA.js → diagram-G47NLZAW-BY1mmnYA.js} +83 -83
  66. package/dist/{diagram-NH7WQ7WH-x3SaRfd6.cjs → diagram-NH7WQ7WH-BS1eEa9R.cjs} +1 -1
  67. package/dist/{diagram-NH7WQ7WH-LFuTbHxY.js → diagram-NH7WQ7WH-BXFvYRtm.js} +18 -18
  68. package/dist/{diagram-OA4YK3LP-B9mVw8cB.cjs → diagram-OA4YK3LP-CTaL_2Nc.cjs} +1 -1
  69. package/dist/{diagram-OA4YK3LP-Cinpbl0B.js → diagram-OA4YK3LP-DgGrzezu.js} +61 -61
  70. package/dist/{diagram-WEI45ONY-HPCHpafe.js → diagram-WEI45ONY-BHxWKH3v.js} +21 -21
  71. package/dist/{diagram-WEI45ONY-BRYVUhRr.cjs → diagram-WEI45ONY-DX7BGSMI.cjs} +1 -1
  72. package/dist/{ebnfDiagram-CCIWWBDH-oLOdtH39.js → ebnfDiagram-CCIWWBDH-BUK_anpV.js} +5 -5
  73. package/dist/{ebnfDiagram-CCIWWBDH-DhFlIi0a.cjs → ebnfDiagram-CCIWWBDH-BpDmVVJY.cjs} +1 -1
  74. package/dist/embeds/frames.d.ts +4 -0
  75. package/dist/embeds/linkCards.d.ts +16 -0
  76. package/dist/embeds/placeholder.d.ts +15 -0
  77. package/dist/embeds/providers.d.ts +73 -0
  78. package/dist/embeds/testing.cjs +1 -0
  79. package/dist/embeds/testing.d.ts +7 -0
  80. package/dist/embeds/testing.js +67 -0
  81. package/dist/embeds.cjs +1 -0
  82. package/dist/embeds.d.ts +4 -0
  83. package/dist/embeds.js +94 -0
  84. package/dist/{erDiagram-Q63AITRT-DCCFR1Ai.cjs → erDiagram-Q63AITRT-Cd9H9BtP.cjs} +1 -1
  85. package/dist/{erDiagram-Q63AITRT-CCtzpK78.js → erDiagram-Q63AITRT-Qb2bmkNp.js} +9 -9
  86. package/dist/{extractHeadings-CGJexznE.js → extractHeadings-B2pUyEPa.js} +5603 -5517
  87. package/dist/extractHeadings-DgefF9l1.cjs +311 -0
  88. package/dist/flowDiagram-23GEKE2U-BOmNlv7X.cjs +1 -0
  89. package/dist/flowDiagram-23GEKE2U-DMZnRz-6.js +7 -0
  90. package/dist/{ganttDiagram-NO4QXBWP-Dfi3nINO.js → ganttDiagram-NO4QXBWP-BVISsrzr.js} +69 -69
  91. package/dist/{ganttDiagram-NO4QXBWP-C9RPyo4r.cjs → ganttDiagram-NO4QXBWP-C6-ExcDz.cjs} +1 -1
  92. package/dist/{gitGraphDiagram-IHSO6WYX-CjAqPhww.js → gitGraphDiagram-IHSO6WYX-BDVA2TFP.js} +38 -38
  93. package/dist/{gitGraphDiagram-IHSO6WYX-mT3NNT7T.cjs → gitGraphDiagram-IHSO6WYX-DLzPc702.cjs} +1 -1
  94. package/dist/index.cjs +1 -1
  95. package/dist/index.client.cjs +1 -1
  96. package/dist/index.client.d.ts +1 -10
  97. package/dist/index.client.js +41 -49
  98. package/dist/index.js +41 -49
  99. package/dist/index.server.cjs +1 -1
  100. package/dist/index.server.d.ts +0 -2
  101. package/dist/index.server.js +116 -161
  102. package/dist/{infoDiagram-FWYZ7A6U-BXWQ9Vy4.js → infoDiagram-FWYZ7A6U-D31UwqjR.js} +1 -1
  103. package/dist/{infoDiagram-FWYZ7A6U-0Co9BitR.cjs → infoDiagram-FWYZ7A6U-DMF_wb2h.cjs} +1 -1
  104. package/dist/{ishikawaDiagram-FXEZZL3T-BKqUBw1i.cjs → ishikawaDiagram-FXEZZL3T-DUlnwraq.cjs} +1 -1
  105. package/dist/{ishikawaDiagram-FXEZZL3T-CZp5P1WE.js → ishikawaDiagram-FXEZZL3T-XA6-gyHY.js} +35 -35
  106. package/dist/{journeyDiagram-5HDEW3XC-DYVTgOOE.js → journeyDiagram-5HDEW3XC-B8sfsWpu.js} +39 -39
  107. package/dist/{journeyDiagram-5HDEW3XC-CeumPQ1I.cjs → journeyDiagram-5HDEW3XC-CwQyFcYa.cjs} +1 -1
  108. package/dist/{kanban-definition-HUTT4EX6-Cg5KnsE9.cjs → kanban-definition-HUTT4EX6-BjPlt2-E.cjs} +1 -1
  109. package/dist/{kanban-definition-HUTT4EX6-CnleRy80.js → kanban-definition-HUTT4EX6-FTrTBare.js} +123 -123
  110. package/dist/{linear-qqwu6T0F.cjs → linear-D3AJM3sY.cjs} +1 -1
  111. package/dist/{linear-Cf8i6Rsk.js → linear-DI9P_z72.js} +32 -32
  112. package/dist/markdown.css +1 -1
  113. package/dist/{mindmap-definition-LN4V7U3C-DfFWeFph.cjs → mindmap-definition-LN4V7U3C-CxgWZidl.cjs} +1 -1
  114. package/dist/{mindmap-definition-LN4V7U3C-lBin9VOm.js → mindmap-definition-LN4V7U3C-YW4YcL9x.js} +33 -33
  115. package/dist/{pegDiagram-2B236MQR-Cf1f-3yi.cjs → pegDiagram-2B236MQR-CUo7q5bl.cjs} +1 -1
  116. package/dist/{pegDiagram-2B236MQR-BiD21lOj.js → pegDiagram-2B236MQR-sJjLKeF3.js} +5 -5
  117. package/dist/{pieDiagram-ENE6RG2P-jwhVsZgX.cjs → pieDiagram-ENE6RG2P-Cy_sUuLQ.cjs} +1 -1
  118. package/dist/{pieDiagram-ENE6RG2P-BqZb6gaV.js → pieDiagram-ENE6RG2P-D4VanIOv.js} +58 -58
  119. package/dist/providers-Bxr2Wb-j.cjs +1 -0
  120. package/dist/providers-Drq7MT_K.js +209 -0
  121. package/dist/{quadrantDiagram-ABIIQ3AL-sO_sIA7b.cjs → quadrantDiagram-ABIIQ3AL-D3c8xLpt.cjs} +1 -1
  122. package/dist/{quadrantDiagram-ABIIQ3AL-CNe9fRLO.js → quadrantDiagram-ABIIQ3AL-ubxphjb_.js} +48 -48
  123. package/dist/{railroadDiagram-RFXS5EU6-53YTkJrs.js → railroadDiagram-RFXS5EU6-DvpD4C_A.js} +3 -3
  124. package/dist/{railroadDiagram-RFXS5EU6-Dkc8k3e9.cjs → railroadDiagram-RFXS5EU6-_Q4W5hB-.cjs} +1 -1
  125. package/dist/{requirementDiagram-TGXJPOKE-C0GMlJO4.cjs → requirementDiagram-TGXJPOKE-DdYIO-wU.cjs} +1 -1
  126. package/dist/{requirementDiagram-TGXJPOKE-D8Gz7jzA.js → requirementDiagram-TGXJPOKE-Dk_6BuX9.js} +3 -3
  127. package/dist/{sankeyDiagram-HTMAVEWB-CEC0GaCg.js → sankeyDiagram-HTMAVEWB-s3Kd7T8n.js} +67 -67
  128. package/dist/{sankeyDiagram-HTMAVEWB-Bw9J2Ay2.cjs → sankeyDiagram-HTMAVEWB-zuYg6LTg.cjs} +1 -1
  129. package/dist/{sequenceDiagram-DBY2YBRQ-BuqPCreB.cjs → sequenceDiagram-DBY2YBRQ-BvNPCevg.cjs} +1 -1
  130. package/dist/{sequenceDiagram-DBY2YBRQ-CKb4m3I0.js → sequenceDiagram-DBY2YBRQ-YQic4wxL.js} +47 -47
  131. package/dist/{sizeCapture-X5ZJPWSS-Dm3rsxXw.cjs → sizeCapture-X5ZJPWSS-BqrdzzsI.cjs} +1 -1
  132. package/dist/{sizeCapture-X5ZJPWSS-CotnTNAA.js → sizeCapture-X5ZJPWSS-qMsWGfjy.js} +1 -1
  133. package/dist/{stateDiagram-2N3HPSRC-GWEIP-C9.js → stateDiagram-2N3HPSRC-D1Ub8LYq.js} +22 -22
  134. package/dist/{stateDiagram-2N3HPSRC-5Y-OlePe.cjs → stateDiagram-2N3HPSRC-Ds8f-scd.cjs} +1 -1
  135. package/dist/{stateDiagram-v2-6OUMAXLB-BZFV8swJ.js → stateDiagram-v2-6OUMAXLB-DW8wjtk3.js} +2 -2
  136. package/dist/{stateDiagram-v2-6OUMAXLB-v77D3Qyf.cjs → stateDiagram-v2-6OUMAXLB-PmrsPXuZ.cjs} +1 -1
  137. package/dist/styles/markdown.css +1 -1
  138. package/dist/{swimlanes-5IMT3BWC-DujAOwAt.js → swimlanes-5IMT3BWC-C8P8vU0w.js} +313 -313
  139. package/dist/{swimlanes-5IMT3BWC-B1hLl8Ph.cjs → swimlanes-5IMT3BWC-jZhcesRT.cjs} +1 -1
  140. package/dist/{swimlanesDiagram-G3AALYLV-B-5z3jDg.js → swimlanesDiagram-G3AALYLV-B9FKeJRf.js} +2 -2
  141. package/dist/{swimlanesDiagram-G3AALYLV-Cklgsxbg.cjs → swimlanesDiagram-G3AALYLV-M5Cg2MHU.cjs} +1 -1
  142. package/dist/{timeline-definition-FHXFAJF6-Fmzt_lvR.js → timeline-definition-FHXFAJF6-Ch-He--D.js} +34 -34
  143. package/dist/{timeline-definition-FHXFAJF6-B2m-aQLI.cjs → timeline-definition-FHXFAJF6-DZm1-KlQ.cjs} +1 -1
  144. package/dist/{vennDiagram-L72KCM5P-zIXK42Cx.js → vennDiagram-L72KCM5P-CaoPscCM.js} +92 -92
  145. package/dist/{vennDiagram-L72KCM5P-rL7UDYbl.cjs → vennDiagram-L72KCM5P-mUSI238J.cjs} +1 -1
  146. package/dist/{wardleyDiagram-EHGQE667-pTeeZ0uM.js → wardleyDiagram-EHGQE667-CSAqF366.js} +11 -11
  147. package/dist/{wardleyDiagram-EHGQE667-CNLieFen.cjs → wardleyDiagram-EHGQE667-CkKP97H-.cjs} +1 -1
  148. package/dist/{xychartDiagram-FW5EYKEG-CD5ik4HK.cjs → xychartDiagram-FW5EYKEG-BivGpkVk.cjs} +1 -1
  149. package/dist/{xychartDiagram-FW5EYKEG-B6UdSSVZ.js → xychartDiagram-FW5EYKEG-OEsTD_k4.js} +37 -37
  150. package/package.json +21 -8
  151. package/dist/arc-DH6k2JIR.js +0 -83
  152. package/dist/channel-DoH_tsOQ.js +0 -5
  153. package/dist/components/mdastNodes/BlockLinkNode.d.ts +0 -5
  154. package/dist/components/mdastNodes/RichLinkCard.d.ts +0 -8
  155. package/dist/components/mdastNodes/TwitterEmbedNode.d.ts +0 -25
  156. package/dist/components/mdastNodes/YouTubeEmbedNode.d.ts +0 -6
  157. package/dist/extractHeadings-lDHB2sBb.cjs +0 -310
  158. package/dist/flowDiagram-23GEKE2U-ORytlvmX.js +0 -7
  159. package/dist/flowDiagram-23GEKE2U-h2WZTCCn.cjs +0 -1
  160. package/dist/plugins/createIntentTweetLink.d.ts +0 -10
  161. package/dist/plugins/extractYouTubeVideoId.d.ts +0 -5
  162. package/dist/plugins/fetchSiteMetadata.d.ts +0 -9
  163. package/dist/plugins/remark-auto-heading-id.d.ts +0 -2
  164. package/dist/plugins/remark-block-link-metadata.d.ts +0 -23
  165. package/dist/plugins/remark-block-link.d.ts +0 -12
  166. package/dist/plugins/remark-twitter-embed.d.ts +0 -20
  167. package/dist/plugins/remark-youtube-embed.d.ts +0 -14
  168. package/dist/simple-logger-DZxBpX7v.cjs +0 -1
  169. package/dist/simple-logger-i94ikRyH.js +0 -101
  170. package/dist/utils/getFaviconUrl.d.ts +0 -1
@@ -1,10 +1,10 @@
1
1
  export type { Root, RootContent } from "mdast";
2
+ export { DEFAULT_MARKDOWN_EMBED_LABELS, type MarkdownEmbedLabels } from "./components/embeds/embedLabels.ts";
2
3
  export type { MarkdownLinkAttributes } from "./components/links.ts";
3
4
  export { type MarkdownLinkComponent, type MarkdownLinkKind, type MarkdownLinkProps, MarkdownRenderer } from "./components/MarkdownRenderer.tsx";
4
5
  export { type MarkdownHeadingHrefResolver, type MarkdownHeadingSelectHandler, type MarkdownToolbarMenu, type MarkdownToolbarState, MarkdownViewer, type MarkdownViewerErrorInfo, type MarkdownViewerHeading, type MarkdownViewerParseResult, type MarkdownViewerProps, useMarkdownToolbarState, } from "./components/MarkdownViewer.tsx";
5
6
  export { DEFAULT_MERMAID_DIAGRAM_LABELS, DEFAULT_MERMAID_INTERACTION, MermaidDiagram, type MermaidDiagramLabels, type MermaidInteractionMode } from "./components/MermaidDiagram.tsx";
6
7
  export type { MarkdownMathDiagnostic } from "./components/mathRendering.ts";
7
- export { BlockLinkNode } from "./components/mdastNodes/BlockLinkNode.tsx";
8
8
  export { BlockquoteNode } from "./components/mdastNodes/BlockquoteNode.tsx";
9
9
  export { CodeNode } from "./components/mdastNodes/CodeNode.tsx";
10
10
  export { DeleteNode } from "./components/mdastNodes/DeleteNode.tsx";
@@ -17,30 +17,21 @@ export { LinkNode } from "./components/mdastNodes/LinkNode.tsx";
17
17
  export { ListItemNode } from "./components/mdastNodes/ListItemNode.tsx";
18
18
  export { ListNode } from "./components/mdastNodes/ListNode.tsx";
19
19
  export { ParagraphNode } from "./components/mdastNodes/ParagraphNode.tsx";
20
- export { RichLinkCard } from "./components/mdastNodes/RichLinkCard.tsx";
21
20
  export { StrongNode } from "./components/mdastNodes/StrongNode.tsx";
22
21
  export { TableNode } from "./components/mdastNodes/TableNode.tsx";
23
22
  export { TextNode } from "./components/mdastNodes/TextNode.tsx";
24
23
  export { ThematicBreakNode } from "./components/mdastNodes/ThematicBreakNode.tsx";
25
- export { TwitterEmbedNode } from "./components/mdastNodes/TwitterEmbedNode.tsx";
26
- export { YouTubeEmbedNode } from "./components/mdastNodes/YouTubeEmbedNode.tsx";
27
24
  export { ZennDetailsNode } from "./components/mdastNodes/ZennDetailsNode.tsx";
28
25
  export { ZennMessageNode } from "./components/mdastNodes/ZennMessageNode.tsx";
29
26
  export { NodesRenderer } from "./components/NodesRenderer.tsx";
30
27
  export { TableOfContents } from "./components/TableOfContents.tsx";
31
28
  export { DEFAULT_MARKDOWN_VIEWER_LABELS, type MarkdownViewerLabels, type MermaidViewerLabels } from "./components/viewerLabels.ts";
32
- export { createIntentTweetLink } from "./plugins/createIntentTweetLink.ts";
33
- export { extractYouTubeVideoId } from "./plugins/extractYouTubeVideoId.ts";
34
- export type { SiteMetadata } from "./plugins/fetchSiteMetadata.ts";
35
- export { remarkBlockLink } from "./plugins/remark-block-link.ts";
36
29
  export { remarkCustomHeadingId } from "./plugins/remark-custom-heading-id.ts";
37
30
  export { remarkFootnoteBackLink } from "./plugins/remark-footnote-back-link.ts";
38
31
  export { remarkHtmlAnchorToLink } from "./plugins/remark-html-anchor-to-link.ts";
39
32
  export { remarkHtmlInHtml } from "./plugins/remark-html-in-html.ts";
40
33
  export { remarkImageSize } from "./plugins/remark-image-size.ts";
41
34
  export { remarkParentNode } from "./plugins/remark-parent-node.ts";
42
- export { remarkTwitterEmbed } from "./plugins/remark-twitter-embed.ts";
43
- export { remarkYouTubeEmbed } from "./plugins/remark-youtube-embed.ts";
44
35
  export { remarkZennMessage } from "./plugins/remark-zenn-message.ts";
45
36
  export { extractHeadings } from "./utils/extractHeadings.ts";
46
37
  export { CONTENT_ALIGNS, type ContentAlign, DEFAULT_CONTENT_ALIGN, DEFAULT_MARKDOWN_STYLES, type MarkdownStyleOption, toContentAlign } from "./viewer-settings.ts";
@@ -1,54 +1,46 @@
1
- import { B as o, a as s, C as r, D as t, b as d, c as n, d as N, E as i, F as k, e as m, f as T, H as L, I as E, g as A, L as I, h as c, i as l, M as D, j as M, k as _, N as g, P as R, R as b, S as u, T as C, l as F, m as S, n as B, o as w, Y as H, Z as h, p as x, q as O, r as f, s as p, t as U, u as Y, v as G, w as Z, x as K, y as P, z as V, A as W, G as q, J as z, K as j } from "./extractHeadings-CGJexznE.js";
2
- import { CONTENT_ALIGNS as y, DEFAULT_CONTENT_ALIGN as J, DEFAULT_MARKDOWN_STYLES as Q, toContentAlign as X } from "./viewer-settings.js";
1
+ import { B as o, C as s, D as r, a as n, b as t, c as d, d as N, E as L, F as m, e as A, f as E, H as i, I as T, g as k, L as D, h as M, i as _, M as I, j as g, k as l, N as F, P as R, S, T as c, l as B, m as C, n as H, Z as O, o as U, p as f, r as h, q as p, s as w, t as x, u as b, v as u, w as W, x as Z } from "./extractHeadings-B2pUyEPa.js";
2
+ import { CONTENT_ALIGNS as K, DEFAULT_CONTENT_ALIGN as P, DEFAULT_MARKDOWN_STYLES as q, toContentAlign as V } from "./viewer-settings.js";
3
3
  export {
4
- o as BlockLinkNode,
5
- s as BlockquoteNode,
6
- y as CONTENT_ALIGNS,
7
- r as CodeNode,
8
- J as DEFAULT_CONTENT_ALIGN,
9
- Q as DEFAULT_MARKDOWN_STYLES,
10
- t as DEFAULT_MARKDOWN_VIEWER_LABELS,
11
- d as DEFAULT_MERMAID_DIAGRAM_LABELS,
12
- n as DEFAULT_MERMAID_INTERACTION,
4
+ o as BlockquoteNode,
5
+ K as CONTENT_ALIGNS,
6
+ s as CodeNode,
7
+ P as DEFAULT_CONTENT_ALIGN,
8
+ r as DEFAULT_MARKDOWN_EMBED_LABELS,
9
+ q as DEFAULT_MARKDOWN_STYLES,
10
+ n as DEFAULT_MARKDOWN_VIEWER_LABELS,
11
+ t as DEFAULT_MERMAID_DIAGRAM_LABELS,
12
+ d as DEFAULT_MERMAID_INTERACTION,
13
13
  N as DeleteNode,
14
- i as EmphasisNode,
15
- k as FootnoteBackLinkNode,
16
- m as FootnoteReferenceNode,
17
- T as FootnotesSection,
18
- L as HeadingNode,
19
- E as ImageNode,
20
- A as InlineCodeNode,
21
- I as LinkNode,
22
- c as ListItemNode,
23
- l as ListNode,
24
- D as MarkdownRenderer,
25
- M as MarkdownViewer,
26
- _ as MermaidDiagram,
27
- g as NodesRenderer,
14
+ L as EmphasisNode,
15
+ m as FootnoteBackLinkNode,
16
+ A as FootnoteReferenceNode,
17
+ E as FootnotesSection,
18
+ i as HeadingNode,
19
+ T as ImageNode,
20
+ k as InlineCodeNode,
21
+ D as LinkNode,
22
+ M as ListItemNode,
23
+ _ as ListNode,
24
+ I as MarkdownRenderer,
25
+ g as MarkdownViewer,
26
+ l as MermaidDiagram,
27
+ F as NodesRenderer,
28
28
  R as ParagraphNode,
29
- b as RichLinkCard,
30
- u as StrongNode,
31
- C as TableNode,
32
- F as TableOfContents,
33
- S as TextNode,
34
- B as ThematicBreakNode,
35
- w as TwitterEmbedNode,
36
- H as YouTubeEmbedNode,
37
- h as ZennDetailsNode,
38
- x as ZennMessageNode,
39
- O as createIntentTweetLink,
29
+ S as StrongNode,
30
+ c as TableNode,
31
+ B as TableOfContents,
32
+ C as TextNode,
33
+ H as ThematicBreakNode,
34
+ O as ZennDetailsNode,
35
+ U as ZennMessageNode,
40
36
  f as extractHeadings,
41
- p as extractYouTubeVideoId,
42
- U as remarkBlockLink,
43
- Y as remarkCustomHeadingId,
44
- G as remarkFootnoteBackLink,
45
- Z as remarkHtmlAnchorToLink,
46
- K as remarkHtmlInHtml,
47
- P as remarkImageSize,
48
- V as remarkParentNode,
49
- W as remarkTwitterEmbed,
50
- q as remarkYouTubeEmbed,
51
- z as remarkZennMessage,
52
- X as toContentAlign,
53
- j as useMarkdownToolbarState
37
+ h as remarkCustomHeadingId,
38
+ p as remarkFootnoteBackLink,
39
+ w as remarkHtmlAnchorToLink,
40
+ x as remarkHtmlInHtml,
41
+ b as remarkImageSize,
42
+ u as remarkParentNode,
43
+ W as remarkZennMessage,
44
+ V as toContentAlign,
45
+ Z as useMarkdownToolbarState
54
46
  };
package/dist/index.js CHANGED
@@ -1,54 +1,46 @@
1
- import { B as o, a as s, C as r, D as t, b as d, c as n, d as N, E as i, F as k, e as m, f as T, H as L, I as E, g as A, L as I, h as c, i as l, M as D, j as M, k as _, N as g, P as R, R as b, S as u, T as C, l as F, m as S, n as B, o as w, Y as H, Z as h, p as x, q as O, r as f, s as p, t as U, u as Y, v as G, w as Z, x as K, y as P, z as V, A as W, G as q, J as z, K as j } from "./extractHeadings-CGJexznE.js";
2
- import { CONTENT_ALIGNS as y, DEFAULT_CONTENT_ALIGN as J, DEFAULT_MARKDOWN_STYLES as Q, toContentAlign as X } from "./viewer-settings.js";
1
+ import { B as o, C as s, D as r, a as n, b as t, c as d, d as N, E as L, F as m, e as A, f as E, H as i, I as T, g as k, L as D, h as M, i as _, M as I, j as g, k as l, N as F, P as R, S, T as c, l as B, m as C, n as H, Z as O, o as U, p as f, r as h, q as p, s as w, t as x, u as b, v as u, w as W, x as Z } from "./extractHeadings-B2pUyEPa.js";
2
+ import { CONTENT_ALIGNS as K, DEFAULT_CONTENT_ALIGN as P, DEFAULT_MARKDOWN_STYLES as q, toContentAlign as V } from "./viewer-settings.js";
3
3
  export {
4
- o as BlockLinkNode,
5
- s as BlockquoteNode,
6
- y as CONTENT_ALIGNS,
7
- r as CodeNode,
8
- J as DEFAULT_CONTENT_ALIGN,
9
- Q as DEFAULT_MARKDOWN_STYLES,
10
- t as DEFAULT_MARKDOWN_VIEWER_LABELS,
11
- d as DEFAULT_MERMAID_DIAGRAM_LABELS,
12
- n as DEFAULT_MERMAID_INTERACTION,
4
+ o as BlockquoteNode,
5
+ K as CONTENT_ALIGNS,
6
+ s as CodeNode,
7
+ P as DEFAULT_CONTENT_ALIGN,
8
+ r as DEFAULT_MARKDOWN_EMBED_LABELS,
9
+ q as DEFAULT_MARKDOWN_STYLES,
10
+ n as DEFAULT_MARKDOWN_VIEWER_LABELS,
11
+ t as DEFAULT_MERMAID_DIAGRAM_LABELS,
12
+ d as DEFAULT_MERMAID_INTERACTION,
13
13
  N as DeleteNode,
14
- i as EmphasisNode,
15
- k as FootnoteBackLinkNode,
16
- m as FootnoteReferenceNode,
17
- T as FootnotesSection,
18
- L as HeadingNode,
19
- E as ImageNode,
20
- A as InlineCodeNode,
21
- I as LinkNode,
22
- c as ListItemNode,
23
- l as ListNode,
24
- D as MarkdownRenderer,
25
- M as MarkdownViewer,
26
- _ as MermaidDiagram,
27
- g as NodesRenderer,
14
+ L as EmphasisNode,
15
+ m as FootnoteBackLinkNode,
16
+ A as FootnoteReferenceNode,
17
+ E as FootnotesSection,
18
+ i as HeadingNode,
19
+ T as ImageNode,
20
+ k as InlineCodeNode,
21
+ D as LinkNode,
22
+ M as ListItemNode,
23
+ _ as ListNode,
24
+ I as MarkdownRenderer,
25
+ g as MarkdownViewer,
26
+ l as MermaidDiagram,
27
+ F as NodesRenderer,
28
28
  R as ParagraphNode,
29
- b as RichLinkCard,
30
- u as StrongNode,
31
- C as TableNode,
32
- F as TableOfContents,
33
- S as TextNode,
34
- B as ThematicBreakNode,
35
- w as TwitterEmbedNode,
36
- H as YouTubeEmbedNode,
37
- h as ZennDetailsNode,
38
- x as ZennMessageNode,
39
- O as createIntentTweetLink,
29
+ S as StrongNode,
30
+ c as TableNode,
31
+ B as TableOfContents,
32
+ C as TextNode,
33
+ H as ThematicBreakNode,
34
+ O as ZennDetailsNode,
35
+ U as ZennMessageNode,
40
36
  f as extractHeadings,
41
- p as extractYouTubeVideoId,
42
- U as remarkBlockLink,
43
- Y as remarkCustomHeadingId,
44
- G as remarkFootnoteBackLink,
45
- Z as remarkHtmlAnchorToLink,
46
- K as remarkHtmlInHtml,
47
- P as remarkImageSize,
48
- V as remarkParentNode,
49
- W as remarkTwitterEmbed,
50
- q as remarkYouTubeEmbed,
51
- z as remarkZennMessage,
52
- X as toContentAlign,
53
- j as useMarkdownToolbarState
37
+ h as remarkCustomHeadingId,
38
+ p as remarkFootnoteBackLink,
39
+ w as remarkHtmlAnchorToLink,
40
+ x as remarkHtmlInHtml,
41
+ b as remarkImageSize,
42
+ u as remarkParentNode,
43
+ W as remarkZennMessage,
44
+ V as toContentAlign,
45
+ Z as useMarkdownToolbarState
54
46
  };
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const $=require("cheerio"),B=require("./simple-logger-DZxBpX7v.cjs"),C=require("unist-util-visit"),H=require("node:child_process"),k=require("node:fs"),D=require("node:module"),j=require("node:net"),F=require("node:path"),U=require("node:url"),T=require("@connectrpc/connect"),N=require("@connectrpc/connect-node"),s=require("@bufbuild/protobuf");var v=typeof document<"u"?document.currentScript:null;function R(r){const e=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(r){for(const t in r)if(t!=="default"){const i=Object.getOwnPropertyDescriptor(r,t);Object.defineProperty(e,t,i.get?i:{enumerable:!0,get:()=>r[t]})}}return e.default=r,Object.freeze(e)}const q=R(j),M=R(F),A=async r=>{try{const e=new AbortController,t=setTimeout(()=>e.abort(),1e4),i=await fetch(r,{signal:e.signal});if(clearTimeout(t),!i.ok)return null;const o=await i.text(),n={url:r},c=$.load(o),a=c("title").text().trim();n.title=a;const h=c("meta");for(const l of h){const w=l.attribs.property;w==="og:site_name"&&(n.site_name=l.attribs.content||void 0),w==="og:title"&&(n.title=l.attribs.content||a),w==="og:description"&&(n.description=l.attribs.content||void 0),w==="og:image"&&(n.image=l.attribs.content||void 0),w==="og:type"&&(n.type=l.attribs.content||void 0),l.attribs.name==="description"&&(n.description=l.attribs.content||void 0)}return n}catch(e){return B.Logger.error("Error fetching site metadata:",e),null}},b=new Map,K=(r,e)=>e.fetchAll?!0:e.urlPatterns&&e.urlPatterns.length>0?e.urlPatterns.some(t=>t.test(r)):/^https?:\/\//.test(r)&&!r.includes("localhost")&&!r.includes("127.0.0.1"),Y=(r={})=>{const{enableCache:e=!0}=r;return async t=>{const i=[];C.visit(t,"block-link",n=>{K(n.url,r)&&i.push(n)});const o=i.map(async n=>{const c=n.url;if(e&&b.has(c)){const a=b.get(c);a&&(n.data=n.data||{},n.data.siteMetadata=a);return}try{const a=await A(c);a?(n.data=n.data||{},n.data.siteMetadata=a,e&&b.set(c,a)):e&&b.set(c,null)}catch(a){B.Logger.warn(`Failed to fetch metadata for ${c}:`,a),e&&b.set(c,null)}});await Promise.all(o)}};class u extends s.Message{markdownText="";filePath="";workspaceRoot="";validateExistence=!1;enableSubscript;enableSuperscript;enableMark;enableTableMerge;enableEmbeds;enableZennDirectives;resolveImports=!1;maxHtmlBytes;deny;constructor(e){super(),s.proto3.util.initPartial(e,this)}static runtime=s.proto3;static typeName="markdown.v1.ConvertRequest";static fields=s.proto3.util.newFieldList(()=>[{no:1,name:"markdown_text",kind:"scalar",T:9},{no:2,name:"file_path",kind:"scalar",T:9},{no:3,name:"workspace_root",kind:"scalar",T:9},{no:4,name:"validate_existence",kind:"scalar",T:8},{no:5,name:"enable_subscript",kind:"scalar",T:8,opt:!0},{no:6,name:"enable_superscript",kind:"scalar",T:8,opt:!0},{no:7,name:"enable_mark",kind:"scalar",T:8,opt:!0},{no:8,name:"enable_table_merge",kind:"scalar",T:8,opt:!0},{no:9,name:"enable_embeds",kind:"scalar",T:8,opt:!0},{no:10,name:"enable_zenn_directives",kind:"scalar",T:8,opt:!0},{no:11,name:"resolve_imports",kind:"scalar",T:8},{no:12,name:"max_html_bytes",kind:"scalar",T:13,opt:!0},{no:13,name:"deny",kind:"message",T:m}]);static fromBinary(e,t){return new u().fromBinary(e,t)}static fromJson(e,t){return new u().fromJson(e,t)}static fromJsonString(e,t){return new u().fromJsonString(e,t)}static equals(e,t){return s.proto3.util.equals(u,e,t)}}class m extends s.Message{segmentPatterns=[];constructor(e){super(),s.proto3.util.initPartial(e,this)}static runtime=s.proto3;static typeName="markdown.v1.DenyRules";static fields=s.proto3.util.newFieldList(()=>[{no:1,name:"segment_patterns",kind:"scalar",T:9,repeated:!0}]);static fromBinary(e,t){return new m().fromBinary(e,t)}static fromJson(e,t){return new m().fromJson(e,t)}static fromJsonString(e,t){return new m().fromJsonString(e,t)}static equals(e,t){return s.proto3.util.equals(m,e,t)}}class d extends s.Message{htmlContent="";headings=[];constructor(e){super(),s.proto3.util.initPartial(e,this)}static runtime=s.proto3;static typeName="markdown.v1.ConvertResponse";static fields=s.proto3.util.newFieldList(()=>[{no:1,name:"html_content",kind:"scalar",T:9},{no:2,name:"headings",kind:"message",T:p,repeated:!0}]);static fromBinary(e,t){return new d().fromBinary(e,t)}static fromJson(e,t){return new d().fromJson(e,t)}static fromJsonString(e,t){return new d().fromJsonString(e,t)}static equals(e,t){return s.proto3.util.equals(d,e,t)}}class p extends s.Message{text="";depth=0;id="";constructor(e){super(),s.proto3.util.initPartial(e,this)}static runtime=s.proto3;static typeName="markdown.v1.Heading";static fields=s.proto3.util.newFieldList(()=>[{no:1,name:"text",kind:"scalar",T:9},{no:2,name:"depth",kind:"scalar",T:5},{no:3,name:"id",kind:"scalar",T:9}]);static fromBinary(e,t){return new p().fromBinary(e,t)}static fromJson(e,t){return new p().fromJson(e,t)}static fromJsonString(e,t){return new p().fromJsonString(e,t)}static equals(e,t){return s.proto3.util.equals(p,e,t)}}const G={typeName:"markdown.v1.MarkdownService",methods:{convert:{name:"Convert",I:u,O:d,kind:s.MethodKind.Unary}}},f=process.env.MARKDOWN_SOCKET_PATH||"/tmp/markdown.sock",W=new N.Http2SessionManager("http://localhost",void 0,{createConnection:()=>q.connect(f)}),I=64*1024,X=4294967295,x=Math.floor((X-I)/2);class L extends Error{constructor(e){super(e.rawMessage,{cause:e}),this.name="MarkdownResourceExhaustedError"}}const _=()=>{try{return M.dirname(U.fileURLToPath(typeof document>"u"?require("url").pathToFileURL(__filename).href:v&&v.tagName.toUpperCase()==="SCRIPT"&&v.src||new URL("index.server.cjs",document.baseURI).href))}catch{return __dirname}},O=()=>`@aiquants/markdown-${process.platform}-${process.arch}`,E=()=>process.platform==="win32"?"bin/markdown-api.exe":"bin/markdown-api",z=()=>{const r=process.env.MARKDOWN_API_BINARY;if(r&&k.existsSync(r))return r;try{const t=D.createRequire(M.join(_(),"index.js")).resolve(`${O()}/${E()}`);if(k.existsSync(t))return t}catch{}const e=M.join(_(),"..","..","go","markdown-api","dist",M.basename(E()));return k.existsSync(e)?e:void 0},V=()=>[`markdown-api binary not found for ${process.platform}-${process.arch}.`,`Expected the optional dependency ${O()} to be installed.`,"If your platform is unsupported, build the service yourself","(https://github.com/fehde-k/aiquants/tree/main/packages/go/markdown-api)","and point MARKDOWN_API_BINARY at it."].join(" "),J=()=>new Promise(r=>{const e=q.connect(f);e.on("connect",()=>{e.destroy(),r(!0)}),e.on("error",()=>r(!1))}),P=async r=>{const e=Date.now();for(;Date.now()-e<r;){if(await J())return!0;await new Promise(t=>setTimeout(t,100))}return!1};let g=null,y=null;const Z=2e3,Q=()=>{const r=Number(process.env.MARKDOWN_API_STARTUP_TIMEOUT_MS);return Number.isFinite(r)&&r>0?r:1e4};let S=null;const ee=async()=>{if(await J())return!0;if(y)return y;y=(async()=>{const e=z();if(!e)return await P(Z)?!0:(S=V(),!1);S=null;try{k.existsSync(f)&&k.unlinkSync(f)}catch{}try{g=H.spawn(e,[],{stdio:"ignore"});const t=()=>{if(g){try{g.kill("SIGTERM")}catch{}g=null}};return process.once("exit",t),await P(Q())?!0:(console.error("markdown-api Go server did not become ready on socket:",f),t(),process.removeListener("exit",t),!1)}catch(t){return console.error("Failed to spawn markdown-api Go server:",t),g=null,!1}})();const r=await y;return r||(y=null),r},te=r=>{if(!Array.isArray(r.deniedPathSegments))throw new TypeError("parseMarkdown: deniedPathSegments must be an array of path segment patterns (an empty array denies nothing)");if(!Number.isSafeInteger(r.maxHtmlBytes)||r.maxHtmlBytes<=0||r.maxHtmlBytes>x)throw new RangeError(`parseMarkdown: maxHtmlBytes must be an integer from 1 to ${x}, got ${r.maxHtmlBytes}`);if(r.timeoutMs!==void 0&&(!Number.isSafeInteger(r.timeoutMs)||r.timeoutMs<=0))throw new RangeError(`parseMarkdown: timeoutMs must be a positive integer, got ${r.timeoutMs}`)},re=async(r,e,t,i,o)=>{if(te(o),!await ee()){const a=S?` ${S}`:"";throw new Error(`markdown service is not reachable on ${f}.${a}`)}const n={};i&&(n.Authorization=`Bearer ${i}`);const c=T.createClient(G,N.createConnectTransport({baseUrl:"http://localhost",httpVersion:"2",sessionManager:W,readMaxBytes:2*o.maxHtmlBytes+I}));try{const a=await c.convert({markdownText:r,filePath:e,workspaceRoot:t,validateExistence:o.validateExistence??!0,enableSubscript:o.enableSubscript,enableSuperscript:o.enableSuperscript,enableMark:o.enableMark,enableTableMerge:o.enableTableMerge,enableEmbeds:o.enableEmbeds,enableZennDirectives:o.enableZennDirectives,resolveImports:o.resolveImports??!1,maxHtmlBytes:o.maxHtmlBytes,deny:new m({segmentPatterns:[...o.deniedPathSegments]})},{headers:n,signal:o.signal,timeoutMs:o.timeoutMs});return{htmlContent:a.htmlContent,headings:a.headings.map(h=>({text:h.text,depth:h.depth,id:h.id}))}}catch(a){throw a instanceof T.ConnectError&&a.code===T.Code.ResourceExhausted?new L(a):a}};exports.MAX_HTML_BYTES_LIMIT=x;exports.MarkdownResourceExhaustedError=L;exports.fetchSiteMetadata=A;exports.parseMarkdown=re;exports.remarkBlockLinkMetadata=Y;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const I=require("node:child_process"),f=require("node:fs"),q=require("node:module"),O=require("node:net"),J=require("node:path"),$=require("node:url"),y=require("@connectrpc/connect"),x=require("@connectrpc/connect-node"),n=require("@bufbuild/protobuf");var k=typeof document<"u"?document.currentScript:null;function _(r){const e=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(r){for(const t in r)if(t!=="default"){const i=Object.getOwnPropertyDescriptor(r,t);Object.defineProperty(e,t,i.get?i:{enumerable:!0,get:()=>r[t]})}}return e.default=r,Object.freeze(e)}const E=_(O),w=_(J);class c extends n.Message{markdownText="";filePath="";workspaceRoot="";validateExistence=!1;enableSubscript;enableSuperscript;enableMark;enableTableMerge;enableEmbeds;enableZennDirectives;resolveImports=!1;maxHtmlBytes;deny;constructor(e){super(),n.proto3.util.initPartial(e,this)}static runtime=n.proto3;static typeName="markdown.v1.ConvertRequest";static fields=n.proto3.util.newFieldList(()=>[{no:1,name:"markdown_text",kind:"scalar",T:9},{no:2,name:"file_path",kind:"scalar",T:9},{no:3,name:"workspace_root",kind:"scalar",T:9},{no:4,name:"validate_existence",kind:"scalar",T:8},{no:5,name:"enable_subscript",kind:"scalar",T:8,opt:!0},{no:6,name:"enable_superscript",kind:"scalar",T:8,opt:!0},{no:7,name:"enable_mark",kind:"scalar",T:8,opt:!0},{no:8,name:"enable_table_merge",kind:"scalar",T:8,opt:!0},{no:9,name:"enable_embeds",kind:"scalar",T:8,opt:!0},{no:10,name:"enable_zenn_directives",kind:"scalar",T:8,opt:!0},{no:11,name:"resolve_imports",kind:"scalar",T:8},{no:12,name:"max_html_bytes",kind:"scalar",T:13,opt:!0},{no:13,name:"deny",kind:"message",T:o}]);static fromBinary(e,t){return new c().fromBinary(e,t)}static fromJson(e,t){return new c().fromJson(e,t)}static fromJsonString(e,t){return new c().fromJsonString(e,t)}static equals(e,t){return n.proto3.util.equals(c,e,t)}}class o extends n.Message{segmentPatterns=[];constructor(e){super(),n.proto3.util.initPartial(e,this)}static runtime=n.proto3;static typeName="markdown.v1.DenyRules";static fields=n.proto3.util.newFieldList(()=>[{no:1,name:"segment_patterns",kind:"scalar",T:9,repeated:!0}]);static fromBinary(e,t){return new o().fromBinary(e,t)}static fromJson(e,t){return new o().fromJson(e,t)}static fromJsonString(e,t){return new o().fromJsonString(e,t)}static equals(e,t){return n.proto3.util.equals(o,e,t)}}class l extends n.Message{htmlContent="";headings=[];constructor(e){super(),n.proto3.util.initPartial(e,this)}static runtime=n.proto3;static typeName="markdown.v1.ConvertResponse";static fields=n.proto3.util.newFieldList(()=>[{no:1,name:"html_content",kind:"scalar",T:9},{no:2,name:"headings",kind:"message",T:m,repeated:!0}]);static fromBinary(e,t){return new l().fromBinary(e,t)}static fromJson(e,t){return new l().fromJson(e,t)}static fromJsonString(e,t){return new l().fromJsonString(e,t)}static equals(e,t){return n.proto3.util.equals(l,e,t)}}class m extends n.Message{text="";depth=0;id="";constructor(e){super(),n.proto3.util.initPartial(e,this)}static runtime=n.proto3;static typeName="markdown.v1.Heading";static fields=n.proto3.util.newFieldList(()=>[{no:1,name:"text",kind:"scalar",T:9},{no:2,name:"depth",kind:"scalar",T:5},{no:3,name:"id",kind:"scalar",T:9}]);static fromBinary(e,t){return new m().fromBinary(e,t)}static fromJson(e,t){return new m().fromJson(e,t)}static fromJsonString(e,t){return new m().fromJsonString(e,t)}static equals(e,t){return n.proto3.util.equals(m,e,t)}}const H={typeName:"markdown.v1.MarkdownService",methods:{convert:{name:"Convert",I:c,O:l,kind:n.MethodKind.Unary}}},u=process.env.MARKDOWN_SOCKET_PATH||"/tmp/markdown.sock",L=new x.Http2SessionManager("http://localhost",void 0,{createConnection:()=>E.connect(u)}),P=64*1024,C=4294967295,g=Math.floor((C-P)/2);class B extends Error{constructor(e){super(e.rawMessage,{cause:e}),this.name="MarkdownResourceExhaustedError"}}const S=()=>{try{return w.dirname($.fileURLToPath(typeof document>"u"?require("url").pathToFileURL(__filename).href:k&&k.tagName.toUpperCase()==="SCRIPT"&&k.src||new URL("index.server.cjs",document.baseURI).href))}catch{return __dirname}},R=()=>`@aiquants/markdown-${process.platform}-${process.arch}`,T=()=>process.platform==="win32"?"bin/markdown-api.exe":"bin/markdown-api",D=()=>{const r=process.env.MARKDOWN_API_BINARY;if(r&&f.existsSync(r))return r;try{const t=q.createRequire(w.join(S(),"index.js")).resolve(`${R()}/${T()}`);if(f.existsSync(t))return t}catch{}const e=w.join(S(),"..","..","go","markdown-api","dist",w.basename(T()));return f.existsSync(e)?e:void 0},j=()=>[`markdown-api binary not found for ${process.platform}-${process.arch}.`,`Expected the optional dependency ${R()} to be installed.`,"If your platform is unsupported, build the service yourself","(https://github.com/fehde-k/aiquants/tree/main/packages/go/markdown-api)","and point MARKDOWN_API_BINARY at it."].join(" "),N=()=>new Promise(r=>{const e=E.connect(u);e.on("connect",()=>{e.destroy(),r(!0)}),e.on("error",()=>r(!1))}),v=async r=>{const e=Date.now();for(;Date.now()-e<r;){if(await N())return!0;await new Promise(t=>setTimeout(t,100))}return!1};let d=null,p=null;const U=2e3,F=()=>{const r=Number(process.env.MARKDOWN_API_STARTUP_TIMEOUT_MS);return Number.isFinite(r)&&r>0?r:1e4};let h=null;const K=async()=>{if(await N())return!0;if(p)return p;p=(async()=>{const e=D();if(!e)return await v(U)?!0:(h=j(),!1);h=null;try{f.existsSync(u)&&f.unlinkSync(u)}catch{}try{d=I.spawn(e,[],{stdio:"ignore"});const t=()=>{if(d){try{d.kill("SIGTERM")}catch{}d=null}};return process.once("exit",t),await v(F())?!0:(console.error("markdown-api Go server did not become ready on socket:",u),t(),process.removeListener("exit",t),!1)}catch(t){return console.error("Failed to spawn markdown-api Go server:",t),d=null,!1}})();const r=await p;return r||(p=null),r},Y=r=>{if(!Array.isArray(r.deniedPathSegments))throw new TypeError("parseMarkdown: deniedPathSegments must be an array of path segment patterns (an empty array denies nothing)");if(!Number.isSafeInteger(r.maxHtmlBytes)||r.maxHtmlBytes<=0||r.maxHtmlBytes>g)throw new RangeError(`parseMarkdown: maxHtmlBytes must be an integer from 1 to ${g}, got ${r.maxHtmlBytes}`);if(r.timeoutMs!==void 0&&(!Number.isSafeInteger(r.timeoutMs)||r.timeoutMs<=0))throw new RangeError(`parseMarkdown: timeoutMs must be a positive integer, got ${r.timeoutMs}`)},G=async(r,e,t,i,a)=>{if(Y(a),!await K()){const s=h?` ${h}`:"";throw new Error(`markdown service is not reachable on ${u}.${s}`)}const M={};i&&(M.Authorization=`Bearer ${i}`);const A=y.createClient(H,x.createConnectTransport({baseUrl:"http://localhost",httpVersion:"2",sessionManager:L,readMaxBytes:2*a.maxHtmlBytes+P}));try{const s=await A.convert({markdownText:r,filePath:e,workspaceRoot:t,validateExistence:a.validateExistence??!0,enableSubscript:a.enableSubscript,enableSuperscript:a.enableSuperscript,enableMark:a.enableMark,enableTableMerge:a.enableTableMerge,enableEmbeds:a.enableEmbeds,enableZennDirectives:a.enableZennDirectives,resolveImports:a.resolveImports??!1,maxHtmlBytes:a.maxHtmlBytes,deny:new o({segmentPatterns:[...a.deniedPathSegments]})},{headers:M,signal:a.signal,timeoutMs:a.timeoutMs});return{htmlContent:s.htmlContent,headings:s.headings.map(b=>({text:b.text,depth:b.depth,id:b.id}))}}catch(s){throw s instanceof y.ConnectError&&s.code===y.Code.ResourceExhausted?new B(s):s}};exports.MAX_HTML_BYTES_LIMIT=g;exports.MarkdownResourceExhaustedError=B;exports.parseMarkdown=G;
@@ -1,3 +1 @@
1
- export { fetchSiteMetadata, type SiteMetadata } from "./plugins/fetchSiteMetadata.ts";
2
- export { remarkBlockLinkMetadata } from "./plugins/remark-block-link-metadata.ts";
3
1
  export { MAX_HTML_BYTES_LIMIT, MarkdownResourceExhaustedError, type ParseOptions, type ParseResult, parseMarkdown } from "./remarkProcessor.server.ts";