@astryx-vue/core 0.3.0 → 0.4.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 (505) hide show
  1. package/dist/AlertDialog/index.js +1 -1
  2. package/dist/{AlertDialog-RAVA_cT1.js → AlertDialog-C2inDZWG.js} +5 -5
  3. package/dist/AppShell/index.js +1 -1
  4. package/dist/{AppShell-0wTvOo3H.js → AppShell-CumzH-8z.js} +3 -3
  5. package/dist/Avatar/index.js +1 -1
  6. package/dist/{Avatar-pPZ4dI_s.js → Avatar-BW0TE8t9.js} +47 -34
  7. package/dist/AvatarGroup/index.d.ts +1 -1
  8. package/dist/AvatarGroup/index.js +1 -1
  9. package/dist/{AvatarGroup-B--NQSB3.js → AvatarGroup-DLC_FFR5.js} +57 -13
  10. package/dist/Banner/index.d.ts +1 -1
  11. package/dist/Banner/index.js +1 -1
  12. package/dist/{Banner-GbGxrqQO.js → Banner-C5VAwo4D.js} +68 -34
  13. package/dist/Blockquote/index.js +1 -1
  14. package/dist/Blockquote-DRoKdcxZ.js +27 -0
  15. package/dist/BottomSheet/index.d.ts +1 -1
  16. package/dist/BottomSheet/index.js +2 -2
  17. package/dist/{BottomSheet-pt7m4CvC.js → BottomSheet-B4sc3F1S.js} +286 -140
  18. package/dist/{BottomSheet-JYMB_Ofl.js → BottomSheet-m54uCMJN.js} +20 -4
  19. package/dist/Breadcrumbs/index.d.ts +2 -2
  20. package/dist/Breadcrumbs/index.js +2 -2
  21. package/dist/Breadcrumbs-CTaz7Kh4.js +223 -0
  22. package/dist/Button/index.d.ts +1 -1
  23. package/dist/Button/index.js +1 -1
  24. package/dist/{Button-B6Hj_O_s.js → Button-ONOoHdkg.js} +25 -15
  25. package/dist/ButtonGroup/index.d.ts +1 -1
  26. package/dist/ButtonGroup/index.js +1 -1
  27. package/dist/ButtonGroup-DnkSZ9a5.js +87 -0
  28. package/dist/{ButtonTooltip-nWWrth8j.js → ButtonTooltip-CNKOQHYR.js} +7 -4
  29. package/dist/Calendar/index.d.ts +1 -1
  30. package/dist/Calendar/index.js +1 -1
  31. package/dist/{Calendar-B7vIowKq.js → Calendar-BAqzzQm2.js} +5 -5
  32. package/dist/Card/index.d.ts +2 -2
  33. package/dist/Carousel/index.js +1 -1
  34. package/dist/{Carousel-CA8zpD9v.js → Carousel-DXC22UWq.js} +4 -4
  35. package/dist/Chat/index.d.ts +1 -1
  36. package/dist/Chat/index.js +1 -1
  37. package/dist/{Chat-Bmna9EOA.js → Chat-BdJW6IX5.js} +147 -83
  38. package/dist/CheckboxIndicator/index.js +1 -1
  39. package/dist/{CheckboxIndicator-D37cm2Rh.js → CheckboxIndicator-fH4d-JE1.js} +9 -3
  40. package/dist/CheckboxInput/index.d.ts +1 -1
  41. package/dist/CheckboxInput/index.js +1 -1
  42. package/dist/{CheckboxInput-BS9J6edf.js → CheckboxInput-DJHCbwgC.js} +19 -11
  43. package/dist/CheckboxList/index.d.ts +1 -1
  44. package/dist/CheckboxList/index.js +1 -1
  45. package/dist/{CheckboxList-CX1i_jVP.js → CheckboxList-BdZIP4_J.js} +155 -38
  46. package/dist/Citation/index.js +1 -1
  47. package/dist/{Citation-Djgwa0ko.js → Citation-DbZn2vms.js} +8 -3
  48. package/dist/ClickableCard/index.d.ts +1 -1
  49. package/dist/ClickableCard/index.js +1 -1
  50. package/dist/{ClickableCard-DUsC-j03.js → ClickableCard-ChAfiw9T.js} +9 -6
  51. package/dist/Code/index.js +3 -3
  52. package/dist/{Code-XnPuGxey.js → Code-Bg7GBdxy.js} +2 -1
  53. package/dist/{CodeBlock-D0BFubut.js → CodeBlock-Caaflp7C.js} +3 -3
  54. package/dist/Collapsible/index.d.ts +1 -1
  55. package/dist/Collapsible/index.js +1 -1
  56. package/dist/{Collapsible-Cov3Pyq5.js → Collapsible-Bdj0WYpb.js} +13 -11
  57. package/dist/CommandPalette/index.d.ts +1 -1
  58. package/dist/CommandPalette/index.js +1 -1
  59. package/dist/{CommandPalette-YHsUNg3V.js → CommandPalette-C_MClfAg.js} +143 -63
  60. package/dist/ComplexSelector/index.d.ts +1 -1
  61. package/dist/ComplexSelector/index.js +1 -1
  62. package/dist/{ComplexSelector-DWLdKPGI.js → ComplexSelector-BeVQaqRf.js} +85 -20
  63. package/dist/ContextMenu/index.d.ts +2 -2
  64. package/dist/ContextMenu/index.js +2 -2
  65. package/dist/{ContextMenu-Bq9b3Ti5.js → ContextMenu-C6hPYvYz.js} +297 -179
  66. package/dist/DateInput/index.d.ts +1 -1
  67. package/dist/DateInput/index.js +1 -1
  68. package/dist/{DateInput-DT518j5E.js → DateInput-BjLdmYor.js} +567 -76
  69. package/dist/DateRangeInput/index.d.ts +1 -1
  70. package/dist/DateRangeInput/index.js +1 -1
  71. package/dist/{DateRangeInput-Bqi5tlIA.js → DateRangeInput-Br3wVEfD.js} +85 -20
  72. package/dist/DateTimeInput/index.d.ts +1 -1
  73. package/dist/DateTimeInput/index.js +1 -1
  74. package/dist/DateTimeInput-CAZBwoRe.js +562 -0
  75. package/dist/Dialog/index.d.ts +1 -1
  76. package/dist/Dialog/index.js +2 -2
  77. package/dist/{Dialog-BiOSKQso.js → Dialog-Dce4Y97V.js} +28 -11
  78. package/dist/{Dialog-FGHfDu5M.js → Dialog-fhyxB00e.js} +32 -5
  79. package/dist/Divider/index.d.ts +1 -1
  80. package/dist/Divider/index.js +1 -1
  81. package/dist/{Divider-BtwnL18I.js → Divider-mOZ6vIQw.js} +5 -1
  82. package/dist/DropdownMenu/index.d.ts +2 -2
  83. package/dist/DropdownMenu/index.js +3 -3
  84. package/dist/{DropdownMenu-CoOQVlRp.js → DropdownMenu-BdGmQVb1.js} +85 -57
  85. package/dist/{DropdownMenu-DEb2dSSP.js → DropdownMenu-BzQrNV9C.js} +479 -264
  86. package/dist/{DropdownMenuRadioItem.vue-CXEURBcq.d.ts → DropdownMenuRadioItem.vue-Qd-8Rg4Q.d.ts} +236 -230
  87. package/dist/EmptyState/index.js +1 -1
  88. package/dist/{EmptyState-C_GH7IV5.js → EmptyState-CmOQf2SH.js} +2 -2
  89. package/dist/Field/index.d.ts +4 -3
  90. package/dist/Field/index.js +4 -3
  91. package/dist/{Field-D5gUEGw4.js → Field--OEsLBfE.js} +4 -3
  92. package/dist/{FieldInfoTip-Ds-sW_jY.js → FieldInfoTip-gxsnfkZw.js} +3 -3
  93. package/dist/{FieldLabel-BNeXRuGH.js → FieldLabel-jxIiWgLw.js} +12 -7
  94. package/dist/FieldStatus/index.d.ts +1 -1
  95. package/dist/FileInput/index.d.ts +1 -1
  96. package/dist/FileInput/index.js +1 -1
  97. package/dist/{FileInput-BpdiO1V8.js → FileInput-B_pUxB0Y.js} +106 -29
  98. package/dist/FormLayout/index.d.ts +1 -1
  99. package/dist/FormLayout/index.js +1 -1
  100. package/dist/{FormLayout-D47FjiOq.js → FormLayout-B9dUB6Ps.js} +1 -1
  101. package/dist/Heading/index.d.ts +1 -1
  102. package/dist/Heading/index.js +1 -1
  103. package/dist/{Heading-BnwWEWkp.js → Heading-BzBunfN7.js} +1 -1
  104. package/dist/HoverCard/index.js +1 -1
  105. package/dist/{HoverCard-ycY50pRN.js → HoverCard-BpJhT0sn.js} +35 -22
  106. package/dist/Icon/index.d.ts +4 -4
  107. package/dist/Icon/index.js +1 -1
  108. package/dist/{Icon-bteSId7T.js → Icon-KDnUyY7f.js} +12 -20
  109. package/dist/IconButton/index.js +1 -1
  110. package/dist/{IconButton-DDNgNl7B.js → IconButton-DI-XBbtV.js} +1 -1
  111. package/dist/Indicator/index.d.ts +2 -2
  112. package/dist/Indicator/index.js +2 -1
  113. package/dist/InputClearButton-CwXPan8c.js +40 -0
  114. package/dist/InputGroup/index.d.ts +1 -1
  115. package/dist/InputGroup/index.js +2 -2
  116. package/dist/{InputGroup-CA03Smrs.js → InputGroup-DiiocoIW.js} +2 -2
  117. package/dist/InternationalizationProvider/index.d.ts +1 -1
  118. package/dist/InternationalizationProvider/index.js +1 -1
  119. package/dist/{InternationalizationProvider-DJay_w3B.js → InternationalizationProvider-kBapgKAQ.js} +5 -9
  120. package/dist/{Item-KhFKX9St.js → Item-DWMIjN8n.js} +34 -9
  121. package/dist/Kbd/index.js +1 -1
  122. package/dist/{Kbd-BB-Dw6zE.js → Kbd-CV3LO2Ge.js} +18 -2
  123. package/dist/LayerContentBoundary-CvsKxwwm.js +27 -0
  124. package/dist/LayerProvider/index.js +1 -1
  125. package/dist/{LayerProvider-D9NsQFzL.js → LayerProvider-B6zpMBWC.js} +15 -3
  126. package/dist/Layout/index.d.ts +1 -1
  127. package/dist/Layout/index.js +2 -2
  128. package/dist/{Layout-C6RHllr-.js → Layout-JJRCG7Mf.js} +1 -1
  129. package/dist/{LayoutPanel-DXOsaeQb.js → LayoutPanel-zM5vjrKS.js} +12 -8
  130. package/dist/Lightbox/index.js +1 -1
  131. package/dist/{Lightbox-DTF9EdTG.js → Lightbox-D8wyPgMK.js} +8 -6
  132. package/dist/Link/index.js +1 -1
  133. package/dist/{Link-BqHCtiyt.js → Link-DweIpOtN.js} +29 -12
  134. package/dist/List/index.d.ts +1 -1
  135. package/dist/List/index.js +2 -2
  136. package/dist/{ListItem-8RWT8XAG.js → ListItem-BQXMu1Tb.js} +1 -1
  137. package/dist/Markdown/index.d.ts +5 -2
  138. package/dist/Markdown/index.js +5 -2
  139. package/dist/Markdown/parser/index.d.ts +4 -0
  140. package/dist/Markdown/parser/index.js +3 -0
  141. package/dist/Markdown/plugin-protocol/index.d.ts +35 -0
  142. package/dist/Markdown/plugin-protocol/index.js +107 -0
  143. package/dist/Markdown/plugin-renderer/index.d.ts +31 -0
  144. package/dist/Markdown/plugin-renderer/index.js +42 -0
  145. package/dist/{Markdown-CvtN7HnF.js → Markdown-DhVfOvXk.js} +195 -484
  146. package/dist/MediaTheme-DlLqYhDy.js +433 -0
  147. package/dist/MetadataList/index.js +1 -1
  148. package/dist/{MetadataList-B-OelQlt.js → MetadataList-CEYceIlN.js} +15 -7
  149. package/dist/MobileNav/index.js +1 -1
  150. package/dist/{MobileNavToggle-DxGz0xKA.js → MobileNavToggle-pdoJFZHx.js} +52 -17
  151. package/dist/MoreMenu/index.d.ts +1 -1
  152. package/dist/MoreMenu/index.js +1 -1
  153. package/dist/{MoreMenu-Dlb7MLlW.js → MoreMenu-CFNqSRev.js} +72 -59
  154. package/dist/MultiSelector/index.d.ts +1 -1
  155. package/dist/MultiSelector/index.js +1 -1
  156. package/dist/MultiSelector-DuVatmq5.js +1456 -0
  157. package/dist/{NavDisclosure-C_fugrQ3.js → NavDisclosure-Bq9DTZLO.js} +29 -7
  158. package/dist/{NavHeadingSurface-B3yJspSN.js → NavHeadingSurface-C4v_MtkX.js} +29 -26
  159. package/dist/NavItem/index.d.ts +1 -1
  160. package/dist/NavItem/index.js +2 -2
  161. package/dist/{NavItem-BBIGSvDj.js → NavItem-BPb3yfgz.js} +17 -4
  162. package/dist/NavMenu/index.d.ts +1 -1
  163. package/dist/NavMenu/index.js +3 -3
  164. package/dist/{NavMenu-ThXguZAz.js → NavMenu-BYIDzjix.js} +42 -15
  165. package/dist/{NavMenuItem-BvJNsDFC.js → NavMenuItem-D3FO90GR.js} +14 -12
  166. package/dist/NumberInput/index.d.ts +1 -1
  167. package/dist/NumberInput/index.js +1 -1
  168. package/dist/NumberInput-B0vzOg3N.js +727 -0
  169. package/dist/Outline/index.d.ts +2 -2
  170. package/dist/Outline/index.js +2 -2
  171. package/dist/{Outline-755h-lMP.js → Outline-CfGv2F1o.js} +91 -6
  172. package/dist/OverflowList/index.d.ts +2 -2
  173. package/dist/OverflowList/index.js +1 -1
  174. package/dist/{OverflowList-NmrSMbxb.js → OverflowList-BgRLZ3dh.js} +23 -6
  175. package/dist/Pagination/index.d.ts +1 -1
  176. package/dist/Pagination/index.js +1 -1
  177. package/dist/{Pagination-DqwNQFRp.js → Pagination-Bfe12018.js} +2 -2
  178. package/dist/PickerWheel-CSwUYfes.js +69 -0
  179. package/dist/Popover/index.d.ts +1 -1
  180. package/dist/Popover/index.js +1 -1
  181. package/dist/{Popover-DJf8POzL.js → Popover-78dFjTb9.js} +20 -15
  182. package/dist/PowerSearch/index.d.ts +1 -1
  183. package/dist/PowerSearch/index.js +1 -1
  184. package/dist/{PowerSearch-DvjiPqMZ.js → PowerSearch-BoAMdFaT.js} +774 -586
  185. package/dist/ProgressBar/index.d.ts +1 -1
  186. package/dist/ProgressBar/index.js +1 -1
  187. package/dist/{ProgressBar-CVLzdoBK.js → ProgressBar-VP4JS7vm.js} +10 -7
  188. package/dist/Radio/index.d.ts +1 -1
  189. package/dist/Radio/index.js +1 -1
  190. package/dist/{RadioGroup-Bfu6JSNV.js → RadioGroup-BIipql-L.js} +94 -26
  191. package/dist/RadioList/index.d.ts +1 -1
  192. package/dist/RadioList/index.js +1 -1
  193. package/dist/{RadioList-xY1cwLdZ.js → RadioList-GyhgBg4j.js} +57 -8
  194. package/dist/Resizable/index.d.ts +1 -1
  195. package/dist/Resizable/index.js +1 -1
  196. package/dist/{ResizeHandle-q4nD_586.js → ResizeHandle-TPlUCAHD.js} +103 -50
  197. package/dist/ScrollableArea/index.d.ts +1 -1
  198. package/dist/ScrollableArea/index.js +1 -1
  199. package/dist/{ScrollableArea-D4dCJv9I.js → ScrollableArea-0u6RWtGG.js} +1 -1
  200. package/dist/SegmentedControl/index.d.ts +1 -1
  201. package/dist/SegmentedControl/index.js +1 -1
  202. package/dist/{SegmentedControl-ChHmFrrC.js → SegmentedControl-D1wWGBZo.js} +11 -5
  203. package/dist/SelectableCard/index.d.ts +1 -1
  204. package/dist/SelectableCard/index.js +1 -1
  205. package/dist/{SelectableCard-Cku4dRzc.js → SelectableCard-BEqnhPaX.js} +16 -11
  206. package/dist/Selector/index.d.ts +1 -1
  207. package/dist/Selector/index.js +1 -1
  208. package/dist/Selector-CPISLzp7.js +1049 -0
  209. package/dist/SideNav/index.d.ts +1 -1
  210. package/dist/SideNav/index.js +1 -1
  211. package/dist/{SideNav-BF8mYDxl.js → SideNav-CN2QeAtY.js} +51 -37
  212. package/dist/Slider/index.d.ts +1 -1
  213. package/dist/Slider/index.js +1 -1
  214. package/dist/{Slider-DWobsPgm.js → Slider-pdC0jpHu.js} +172 -46
  215. package/dist/Spinner/index.js +1 -1
  216. package/dist/Spinner-DdVUadii.js +200 -0
  217. package/dist/Stack/index.d.ts +1 -1
  218. package/dist/Stack/index.js +2 -2
  219. package/dist/{Stack-CTsTFfar.js → Stack-Bb_h60t3.js} +1 -1
  220. package/dist/{Stack-kQlYbbL4.js → Stack-Bp-XN9J4.js} +12 -7
  221. package/dist/StatusDot/index.d.ts +1 -1
  222. package/dist/StatusDot/index.js +1 -1
  223. package/dist/{StatusDot-BPUhMOff.js → StatusDot-BS_ohXhd.js} +8 -4
  224. package/dist/Stepper/index.js +1 -1
  225. package/dist/{Stepper-CE8dHysu.js → Stepper-CyaSRSdu.js} +101 -79
  226. package/dist/Switch/index.d.ts +1 -1
  227. package/dist/Switch/index.js +1 -1
  228. package/dist/{Switch-DaVPRxvN.js → Switch-Z2Vfiiic.js} +38 -22
  229. package/dist/TabList/index.d.ts +2 -2
  230. package/dist/TabList/index.js +1 -1
  231. package/dist/{TabList-DIkK9sgK.js → TabList-DRqP0Hrv.js} +205 -63
  232. package/dist/Table/index.d.ts +3 -3
  233. package/dist/Table/index.js +1 -1
  234. package/dist/{Table-fecqnm7P.js → Table-BcrrylMX.js} +726 -452
  235. package/dist/Text/index.d.ts +1 -1
  236. package/dist/Text/index.js +1 -1
  237. package/dist/{Text-CV3LmscH.js → Text-CmTOgYXf.js} +1 -1
  238. package/dist/TextArea/index.d.ts +1 -1
  239. package/dist/TextArea/index.js +1 -1
  240. package/dist/{TextArea-Ab5Sw60T.js → TextArea-DA9CCG_J.js} +104 -50
  241. package/dist/TextInput/index.d.ts +1 -1
  242. package/dist/TextInput/index.js +1 -1
  243. package/dist/{TextInput-zFT1_qgI.js → TextInput-CI96einV.js} +71 -38
  244. package/dist/Theme/index.d.ts +3 -3
  245. package/dist/Theme/index.js +3 -2
  246. package/dist/Theme-BbDT8B_C.js +2125 -0
  247. package/dist/Thumbnail/index.js +1 -1
  248. package/dist/{Thumbnail-C3NnJUFG.js → Thumbnail-B2ZAY59J.js} +13 -10
  249. package/dist/{TimeField-CoHDGmsP.js → TimeField-CpAgja9D.js} +297 -40
  250. package/dist/TimeInput/index.d.ts +1 -1
  251. package/dist/TimeInput/index.js +1 -1
  252. package/dist/{TimeInput-D2k3Ux3p.js → TimeInput-Bw_lHS4M.js} +78 -9
  253. package/dist/Timer/index.d.ts +1 -1
  254. package/dist/Timer/index.js +1 -1
  255. package/dist/{Timer-avMQk5DN.js → Timer-CH7GsEVu.js} +1 -1
  256. package/dist/Timestamp/index.d.ts +1 -1
  257. package/dist/Timestamp/index.js +1 -1
  258. package/dist/{Timestamp-xpQKCk0d.js → Timestamp-BFNuoTZ0.js} +5 -5
  259. package/dist/Toast/index.d.ts +1 -1
  260. package/dist/Toast/index.js +1 -1
  261. package/dist/Toast-DwnPjx6j.js +685 -0
  262. package/dist/ToggleButton/index.d.ts +1 -1
  263. package/dist/ToggleButton/index.js +1 -1
  264. package/dist/{ToggleButton-B-C-Q7XP.js → ToggleButton-cLjh9W-x.js} +5 -4
  265. package/dist/Token/index.d.ts +1 -1
  266. package/dist/Token/index.js +1 -1
  267. package/dist/{Token-DsntTYhQ.js → Token-BfS4vi__.js} +32 -17
  268. package/dist/Tokenizer/index.d.ts +1 -1
  269. package/dist/Tokenizer/index.js +1 -1
  270. package/dist/{Tokenizer-B5C_qY7t.js → Tokenizer-Ci3E5bvP.js} +107 -23
  271. package/dist/Toolbar/index.d.ts +2 -2
  272. package/dist/Toolbar/index.js +1 -1
  273. package/dist/{Toolbar-BrgvvTCk.js → Toolbar-C0pMWL4S.js} +1 -1
  274. package/dist/Tooltip/index.d.ts +1 -1
  275. package/dist/Tooltip/index.js +1 -1
  276. package/dist/{Tooltip-C4Vaqd3G.js → Tooltip-sAM8i1eO.js} +23 -19
  277. package/dist/TopNav/index.d.ts +1 -1
  278. package/dist/TopNav/index.js +1 -1
  279. package/dist/{TopNav-Ciq0l1w7.js → TopNav-gW59zp1o.js} +16 -15
  280. package/dist/TreeList/index.d.ts +1 -1
  281. package/dist/TreeList/index.js +1 -1
  282. package/dist/{TreeList-BUz-KZJd.js → TreeList-DaoI7zaH.js} +124 -41
  283. package/dist/Typeahead/index.d.ts +1 -1
  284. package/dist/Typeahead/index.js +2 -2
  285. package/dist/{Typeahead-JP9RT87x.js → Typeahead-D4JjvjK4.js} +123 -26
  286. package/dist/{TypeaheadMenu-DBW6rHeO.js → TypeaheadMenu-BQlMrfqX.js} +141 -51
  287. package/dist/{announce-Cnio10Wk.js → announce-B210eJVf.js} +17 -2
  288. package/dist/characterReferences-BJ-jLhsR.js +65 -0
  289. package/dist/characters-rcDbGt71.d.ts +29 -0
  290. package/dist/characters-wTnzjkkR.js +58 -0
  291. package/dist/{colorMode-CBgdgDSn.js → colorMode-BxqfDP4P.js} +1 -4
  292. package/dist/composables/index.d.ts +5 -4
  293. package/dist/composables/index.js +23 -18
  294. package/dist/{composables-CbKx9C1Y.js → composables-Bc02zKAO.js} +167 -197
  295. package/dist/context-B6UElI5X.js +5 -0
  296. package/dist/{context-Cfjh8te1.js → context-Cfml4jaK.js} +5 -3
  297. package/dist/{context-iABt_ueM.js → context-DWfi56sq.js} +451 -122
  298. package/dist/context-IvbU9c3T.js +8 -0
  299. package/dist/context-pjBxaMSh.js +28 -0
  300. package/dist/fieldParts--SyRZVQG.js +44 -0
  301. package/dist/fieldParts-LXpQMKE8.d.ts +27 -0
  302. package/dist/{focus-CpficIgf.js → focus-l8jVTcqd.js} +1 -1
  303. package/dist/hoverIntent-DMHGb85c.js +115 -0
  304. package/dist/{index-Cde5JvtX.d.ts → index-B-nESNam.d.ts} +8 -7
  305. package/dist/{index-CsNi1I8j.d.ts → index-B08-Uxhv.d.ts} +4 -2
  306. package/dist/{index-Cn-sSds-.d.ts → index-B56j4eI2.d.ts} +24 -1
  307. package/dist/{index-BkjSF265.d.ts → index-BEZ4ezJk.d.ts} +3 -3
  308. package/dist/{index-DeQwYJbg.d.ts → index-BNaRK-s5.d.ts} +10 -1
  309. package/dist/{index-0QGtSf3r.d.ts → index-BO9TY87G.d.ts} +3 -2
  310. package/dist/{index-IBAInumL.d.ts → index-BQEJj72c.d.ts} +23 -10
  311. package/dist/{index-D97pQbua.d.ts → index-BV2D2x_u.d.ts} +1 -1
  312. package/dist/{index-Crp3NFLW.d.ts → index-BZKgbyN9.d.ts} +1 -1
  313. package/dist/index-BkUkm6Al.d.ts +11 -0
  314. package/dist/{index-ClNU2Th8.d.ts → index-Bn-v89Vt.d.ts} +10 -6
  315. package/dist/{index-Bu8NA2SD.d.ts → index-BnEhvmdR.d.ts} +16 -7
  316. package/dist/index-Bo-ofFyg.d.ts +166 -0
  317. package/dist/{index-i0tNFWfz.d.ts → index-BqhgeAT4.d.ts} +2 -0
  318. package/dist/{index-DWh2WC8W.d.ts → index-C4Cjz6OK.d.ts} +2 -2
  319. package/dist/{index-B7yhzGUT.d.ts → index-C7sam-SB.d.ts} +2 -2
  320. package/dist/{index-BrJzFA5X.d.ts → index-C90l2rH1.d.ts} +1 -1
  321. package/dist/{index-vP0EtrJJ.d.ts → index-C9gAlDt_.d.ts} +6 -3
  322. package/dist/{index-xrzJC4wm.d.ts → index-CJ6ajsUC.d.ts} +1 -1
  323. package/dist/{index-B9e52paP.d.ts → index-CK-Dbh0f.d.ts} +1 -1
  324. package/dist/index-CKUfpmFL.d.ts +375 -0
  325. package/dist/{index-DXpSFlPG.d.ts → index-CKgBTAzC.d.ts} +4 -4
  326. package/dist/{index-gW0HW02U.d.ts → index-COxy6LEW.d.ts} +1 -1
  327. package/dist/{index-B4OOtNP8.d.ts → index-CPtDjmcX.d.ts} +3 -3
  328. package/dist/{index-12QYAbiz.d.ts → index-CRrSHbok.d.ts} +3 -2
  329. package/dist/{index-DG52Bg0W.d.ts → index-CTf3SK0b.d.ts} +6 -0
  330. package/dist/{index-BVKivP59.d.ts → index-CTjkJP4x.d.ts} +32 -3
  331. package/dist/{index-COgrQZIL.d.ts → index-CdvmnNMH.d.ts} +1 -1
  332. package/dist/{index-GI9xIV9l.d.ts → index-CikMzeab.d.ts} +2 -2
  333. package/dist/{index-DUaLJO7l.d.ts → index-CpNlPLBF.d.ts} +172 -126
  334. package/dist/{index-yT1yiiww.d.ts → index-Cs1xsHKi.d.ts} +24 -12
  335. package/dist/{index-Cyb9Du5Z.d.ts → index-CtTGt6Dv.d.ts} +1 -1
  336. package/dist/{index-Byar3h1e.d.ts → index-D05JGsT3.d.ts} +6 -3
  337. package/dist/{index-B3Fomy15.d.ts → index-D0_HsuC3.d.ts} +3 -3
  338. package/dist/{index-BgT6mH3U.d.ts → index-D7ShT2c-.d.ts} +1 -1
  339. package/dist/{index-CkKPMIeX.d.ts → index-D7XRtUTY.d.ts} +9 -0
  340. package/dist/{index-TntQsADQ.d.ts → index-DEm3kRBO.d.ts} +4 -3
  341. package/dist/{index-C2nbK2AA.d.ts → index-DLAG3m9W.d.ts} +13 -3
  342. package/dist/{index-DVmgNb78.d.ts → index-DRJZ-v1E.d.ts} +4 -4
  343. package/dist/{index-CL1T2j4y.d.ts → index-DY8Wph-A.d.ts} +3 -3
  344. package/dist/{index-B1WJxt-n.d.ts → index-DfC05uKG.d.ts} +17 -7
  345. package/dist/{index-C5e-7Obr.d.ts → index-Dj1_1t3j.d.ts} +19 -6
  346. package/dist/{index-D41_xqjs.d.ts → index-Dr4b_oji.d.ts} +20 -13
  347. package/dist/{index-CqE4Bf3Q.d.ts → index-Ds201-d2.d.ts} +16 -2
  348. package/dist/{index-DIXAzTKL.d.ts → index-DxxudRgB.d.ts} +1 -1
  349. package/dist/{index-B42oE_F-.d.ts → index-IfsSCj8J.d.ts} +18 -5
  350. package/dist/{index-XuAAcYiP.d.ts → index-f3d9cVtj.d.ts} +1 -1
  351. package/dist/{index-T2FOcOuI.d.ts → index-jOwU3YoR.d.ts} +400 -90
  352. package/dist/{index-CICeEoZV.d.ts → index-pNtfr-RW.d.ts} +1 -1
  353. package/dist/{index-BhpAUzUr.d.ts → index-unAZVFGz.d.ts} +2 -2
  354. package/dist/index.d.ts +80 -74
  355. package/dist/index.js +149 -134
  356. package/dist/inlineSize-BNe8wggI.js +66 -0
  357. package/dist/inputPresentation-BOyHkCDr.js +62 -0
  358. package/dist/interactionModality-ACpTMhak.js +44 -0
  359. package/dist/isApplePlatform-B1ju6F5B.js +27 -0
  360. package/dist/isRenderable-BnKHIqfd.js +21 -0
  361. package/dist/layerDepth-CNDh-IHb.js +181 -0
  362. package/dist/link-DuuA2eCL.js +30 -0
  363. package/dist/{loadCatalog-BGHKG_9N.d.ts → loadCatalog-DlLFZreI.d.ts} +281 -7
  364. package/dist/loadCatalog-eopw74qb.js +424 -0
  365. package/dist/locale/index.d.ts +2 -2
  366. package/dist/locale/index.js +4 -3
  367. package/dist/locale-CabGJlGp.js +343 -0
  368. package/dist/modalOutlet-CUOcrhIu.js +56 -0
  369. package/dist/optionAction-Cg7xQLUA.d.ts +6 -0
  370. package/dist/{power-search-DrDfcoL1.d.ts → power-search-gHLIYXs5.d.ts} +2 -0
  371. package/dist/protocol-DHxY0NI8.js +113 -0
  372. package/dist/protocol-RSeMzAN1.d.ts +238 -0
  373. package/dist/publicParser-B0MRoikr.d.ts +141 -0
  374. package/dist/publicParser-uHC_T0Fo.js +895 -0
  375. package/dist/resizableChannel-3vivrEcT.js +20 -0
  376. package/dist/safeUrl-CsvfcZ9m.js +54 -0
  377. package/dist/scopedProvide-C-Df7c15.js +30 -0
  378. package/dist/scrollKeyboardDelegation-D7cumnOl.js +238 -0
  379. package/dist/scrollLock-C3aT4-0z.js +102 -0
  380. package/dist/{searchResultMessage-hXXNOFJP.js → searchResultMessage-mCpJBvra.js} +5 -14
  381. package/dist/{semantic-CKH9XVqa.d.ts → semantic-BF_AjLvk.d.ts} +6 -3
  382. package/dist/slug-C65CUsf9.js +32 -0
  383. package/dist/syntaxContext-DmIfNNtb.js +4 -0
  384. package/dist/triggerVariant-BsL8jMHs.js +16 -0
  385. package/dist/{types-0Q_SJv_F.d.ts → types-Bb7OGivY.d.ts} +6 -1
  386. package/dist/{types-CwyibrRB.d.ts → types-C5GQ2KCK.d.ts} +23 -3
  387. package/dist/{types-gKsEkk2g.d.ts → types-CsqwQkf1.d.ts} +143 -10
  388. package/dist/upstreamMap-xr3gvREu.js +731 -0
  389. package/dist/{useAnchoredListbox-DwztMNjP.js → useAnchoredListbox-DGxxKHZb.js} +2 -2
  390. package/dist/{useAsyncSource-xpQovjV_.d.ts → useAsyncSource-aGzrvRkI.d.ts} +3 -0
  391. package/dist/{useClickableContainer-DyNpnSEa.js → useClickableContainer-CdGp_Cev.js} +1 -1
  392. package/dist/{useClipboard-BDfbEsWd.js → useClipboard-Dk8cS810.js} +1 -1
  393. package/dist/useHoverLayerDismiss-kYJ_NqL4.js +27 -0
  394. package/dist/{useIndicator-i1NORM7W.js → useIndicator-MZmfBWid.js} +5 -23
  395. package/dist/{useInputContainer-CpgDe2-4.js → useInputContainer-CLcYrby4.js} +1 -1
  396. package/dist/{useInputStatusIcon-DBOwxV4x.js → useInputStatusIcon-DAE7PExr.js} +1 -1
  397. package/dist/useLayerMountTarget-BmZyeKWE.js +156 -0
  398. package/dist/{useListFocus-D0iOJl39.js → useListFocus-ChxLg0b4.js} +3 -2
  399. package/dist/{useMenuDrillIn-DzKGkTho.js → useMenuDrillIn-DhUnPvKs.js} +6 -5
  400. package/dist/useMenuHover-Djreu23i.js +170 -0
  401. package/dist/useMenuPress-8foxY8z4.js +764 -0
  402. package/dist/{useMergedRefs-CfHHlCsn.js → useMergedRefs-Cb6_w93m.js} +24 -4
  403. package/dist/{useNumberField-4-dIGVed.js → useNumberField-Dk1BE3-K.js} +3 -3
  404. package/dist/useOptionActionGrid-CkJcuvaU.js +97 -0
  405. package/dist/{usePositionedLayer-Cru9_00b.js → usePositionedLayer-B7cvG-_v.js} +43 -49
  406. package/dist/usePressFeedback-BJCpjEpv.js +319 -0
  407. package/dist/{useResizable-DDwPpPe6.d.ts → useResizable-1MHPNaRD.d.ts} +19 -1
  408. package/dist/{useResizable-B3ahKLoZ.js → useResizable-I3BCiLSL.js} +72 -40
  409. package/dist/useResolvedLabelHidden-B2rlWiaI.js +30 -0
  410. package/dist/{useRestoreFocus-Djw9RUIf.js → useRestoreFocus-XEKs5-gp.js} +49 -7
  411. package/dist/useScrollOverflow-DuMoGXmm.js +67 -0
  412. package/dist/useScrollableArea-BE8b3qm7.js +222 -0
  413. package/dist/{useTimeValue-6ufHM15W.js → useTimeValue-BJd0xBhG.js} +4 -22
  414. package/dist/useTranslator-BmWt2BBt.js +35 -0
  415. package/dist/{useTypeahead-PAK8lMYz.js → useTypeahead-BvtflkRk.js} +4 -5
  416. package/dist/utils/index.d.ts +3 -0
  417. package/dist/utils/index.js +5 -0
  418. package/dist/{utils-D33VQDnk.js → utils-ClVseK2w.js} +29 -2
  419. package/dist/utils-z3Q6BGIJ.js +819 -0
  420. package/locales/SOURCE.json +1 -1
  421. package/package.json +18 -2
  422. package/reset.css +364 -1
  423. package/styles/avatar-group.css +9 -1
  424. package/styles/badge.css +8 -5
  425. package/styles/banner.css +124 -26
  426. package/styles/blockquote.css +1 -0
  427. package/styles/bordered-control.css +1 -1
  428. package/styles/bottom-sheet.css +74 -6
  429. package/styles/breadcrumbs.css +16 -2
  430. package/styles/button-group.css +3 -1
  431. package/styles/button.css +53 -11
  432. package/styles/card.css +1 -1
  433. package/styles/chat.css +16 -6
  434. package/styles/checkbox-input.css +10 -0
  435. package/styles/clickable-card.css +10 -3
  436. package/styles/collapsible.css +12 -5
  437. package/styles/command-palette.css +29 -14
  438. package/styles/complex-selector.css +22 -5
  439. package/styles/context-menu.css +3 -3
  440. package/styles/date-input.css +111 -1
  441. package/styles/dialog-header.css +4 -1
  442. package/styles/dialog.css +7 -0
  443. package/styles/dropdown-menu.css +12 -3
  444. package/styles/field.css +5 -0
  445. package/styles/form-layout.css +1 -0
  446. package/styles/heading.css +18 -8
  447. package/styles/icon.css +4 -0
  448. package/styles/kbd.css +1 -1
  449. package/styles/layer.css +72 -0
  450. package/styles/list.css +9 -2
  451. package/styles/metadata-list.css +1 -0
  452. package/styles/mobile-nav.css +4 -1
  453. package/styles/multi-selector.css +48 -1
  454. package/styles/nav-item.css +9 -2
  455. package/styles/nav-menu.css +12 -2
  456. package/styles/number-input.css +9 -1
  457. package/styles/overflow-list.css +1 -1
  458. package/styles/popover.css +2 -1
  459. package/styles/power-search.css +5 -3
  460. package/styles/pressable.css +63 -22
  461. package/styles/progress-bar.css +15 -3
  462. package/styles/radio.css +16 -0
  463. package/styles/resize-handle.css +42 -0
  464. package/styles/segmented-control.css +12 -4
  465. package/styles/selector.css +53 -1
  466. package/styles/side-nav.css +19 -0
  467. package/styles/slider.css +4 -3
  468. package/styles/spinner.css +48 -42
  469. package/styles/stepper.css +58 -4
  470. package/styles/switch.css +26 -0
  471. package/styles/tab-list.css +132 -3
  472. package/styles/table.css +88 -10
  473. package/styles/text-area.css +1 -1
  474. package/styles/text-input.css +1 -1
  475. package/styles/text.css +6 -6
  476. package/styles/thumbnail.css +11 -3
  477. package/styles/time-input.css +8 -0
  478. package/styles/toast.css +37 -3
  479. package/styles/token.css +2 -2
  480. package/styles/tokenizer.css +1 -1
  481. package/styles/toolbar.css +4 -1
  482. package/styles/tree-list.css +1 -1
  483. package/styles/typeahead.css +34 -1
  484. package/styles.css +1 -0
  485. package/dist/Blockquote-DFqBv_oJ.js +0 -18
  486. package/dist/Breadcrumbs-DIm4figq.js +0 -141
  487. package/dist/ButtonGroup-ySQWanDP.js +0 -125
  488. package/dist/DateTimeInput-A7m2O3bg.js +0 -268
  489. package/dist/MultiSelector-BtAUfQ3t.js +0 -990
  490. package/dist/NumberInput-AZ9x3oja.js +0 -473
  491. package/dist/Selector-DJ2BhUTV.js +0 -677
  492. package/dist/Spinner-9cYUCnDy.js +0 -84
  493. package/dist/Theme-CtaUWo4g.js +0 -1246
  494. package/dist/Toast-BuqIZV5z.js +0 -322
  495. package/dist/context-4PuqD1Ic.js +0 -4
  496. package/dist/context-D5-MwxnN.js +0 -4
  497. package/dist/index-BH9PzQ1F.d.ts +0 -87
  498. package/dist/link-C4_WogdF.js +0 -18
  499. package/dist/loadCatalog-CXKqEB9s.js +0 -877
  500. package/dist/locale-DgkZEMTn.js +0 -105
  501. package/dist/platform-B_9W_aHW.js +0 -33
  502. package/dist/scrollLock-BzIvIimL.js +0 -42
  503. package/dist/useMenuPress-D-FRNrBW.js +0 -573
  504. package/dist/useScrollableArea-DDk_CluT.js +0 -172
  505. /package/dist/{index-lgvUFSCO.d.ts → index-CryFtTT6.d.ts} +0 -0
@@ -1,379 +1,23 @@
1
1
  import { t as _sfc_main$1 } from "./VisuallyHidden-C7NN3VEP.js";
2
- import { o as useAstryxMessages } from "./context-iABt_ueM.js";
3
- import { t as _sfc_main$2 } from "./Heading-BnwWEWkp.js";
4
- import { t as _sfc_main$3 } from "./Blockquote-DFqBv_oJ.js";
5
- import { t as _sfc_main$4 } from "./CheckboxIndicator-D37cm2Rh.js";
6
- import { t as useIndicator } from "./useIndicator-i1NORM7W.js";
7
- import { d as _sfc_main$5, s as parseFenceLanguage, t as _sfc_main$6 } from "./CodeBlock-D0BFubut.js";
8
- import { t as _sfc_main$7 } from "./Link-BqHCtiyt.js";
2
+ import { s as useAstryxMessages } from "./context-DWfi56sq.js";
3
+ import { t as _sfc_main$2 } from "./Heading-BzBunfN7.js";
4
+ import { t as _sfc_main$3 } from "./Blockquote-DRoKdcxZ.js";
5
+ import { t as _sfc_main$4 } from "./CheckboxIndicator-fH4d-JE1.js";
6
+ import { t as useIndicator } from "./useIndicator-MZmfBWid.js";
7
+ import { d as _sfc_main$5, s as parseFenceLanguage, t as _sfc_main$6 } from "./CodeBlock-Caaflp7C.js";
8
+ import { t as _sfc_main$7 } from "./Link-DweIpOtN.js";
9
+ import { i as plainText, n as uniqueSlug, t as slugify } from "./slug-C65CUsf9.js";
10
+ import { c as applyProtocolTransforms, d as parseMarkdownIncremental, l as createIncrementalMarkdownState, s as applyMarkdownSyntax, u as parseMarkdown } from "./publicParser-uHC_T0Fo.js";
11
+ import { l as isMarkdownPluginEntry, t as collectProtocolRenderers, u as isMarkdownSourceLinesPlugin } from "./protocol-DHxY0NI8.js";
9
12
  import { Fragment, computed, defineComponent, h, ref } from "vue";
10
- import { fromMarkdown } from "mdast-util-from-markdown";
11
- import { gfmFromMarkdown } from "mdast-util-gfm";
12
- import { gfm } from "micromark-extension-gfm";
13
13
  import "../styles/markdown.css";
14
- //#region src/Markdown/ast.ts
15
- function isMarkdownExtensionNode(node, plugin, name) {
16
- if (node.type !== "extension" || node.plugin == null || node.name == null) return false;
17
- if (plugin != null && node.plugin !== plugin) return false;
18
- if (name != null && node.name !== name) return false;
19
- return true;
20
- }
21
- function plainText(node) {
22
- if (node.type === "text" || node.type === "inlineCode" || node.type === "code" || node.type === "html") return node.value ?? "";
23
- if (node.type === "image" || node.type === "imageReference") return node.alt ?? node.label ?? "";
24
- if (node.type === "footnoteReference") return node.label ?? node.identifier ?? "";
25
- if (node.type === "break") return "\n";
26
- return (node.children ?? []).map((child) => plainText(child)).join("");
27
- }
28
- //#endregion
29
- //#region src/Markdown/blocks.ts
30
- function splitSourceLines(source) {
31
- if (source.length === 0) return [];
32
- const lines = [];
33
- let start = 0;
34
- for (let index = 0; index < source.length; index++) {
35
- if (source.charCodeAt(index) !== 10) continue;
36
- const contentEnd = index > start && source.charCodeAt(index - 1) === 13 ? index - 1 : index;
37
- lines.push({
38
- text: source.slice(start, contentEnd),
39
- start,
40
- end: index + 1,
41
- newline: true
42
- });
43
- start = index + 1;
44
- }
45
- if (start < source.length) lines.push({
46
- text: source.slice(start),
47
- start,
48
- end: source.length,
49
- newline: false
50
- });
51
- return lines;
52
- }
53
- function fenceOpener(text) {
54
- const indent = /^ {0,3}/.exec(text);
55
- const rest = text.slice(indent?.[0].length ?? 0);
56
- const markerMatch = /^(`{3,}|~{3,})/.exec(rest);
57
- if (markerMatch == null) return null;
58
- const marker = markerMatch[1] ?? "";
59
- const info = rest.slice(marker.length);
60
- if (marker.startsWith("`") && info.includes("`")) return null;
61
- const char = marker[0];
62
- if (char == null) return null;
63
- return {
64
- char,
65
- length: marker.length
66
- };
67
- }
68
- function isFenceClose(text, marker) {
69
- const match = /^ {0,3}([`~]+)[ \t]*$/.exec(text);
70
- if (match == null) return false;
71
- const closing = match[1] ?? "";
72
- return closing.length >= marker.length && [...closing].every((char) => char === marker.char);
73
- }
74
- function isAtxHeading(text) {
75
- return /^ {0,3}#{1,6}(?:[ \t]|$)/.test(text);
76
- }
77
- function isThematicBreak(text) {
78
- return /^ {0,3}([-*_])(?:[ \t]*\1){2,}[ \t]*$/.test(text);
79
- }
80
- function isSetextUnderline(text) {
81
- return /^ {0,3}(?:=+|-+)[ \t]*$/.test(text);
82
- }
83
- function isListItem(text) {
84
- return /^ {0,3}(?:[-+*]|\d{1,9}[.)])[ \t]/.test(text);
85
- }
86
- function isBlockquote(text) {
87
- return /^ {0,3}>/.test(text);
88
- }
89
- function isBlank(text) {
90
- return /^[ \t]*$/.test(text);
91
- }
92
- function isIndented(text) {
93
- return /^[ \t]+\S/.test(text);
94
- }
95
- function continuesList(text) {
96
- return isListItem(text) || isIndented(text);
97
- }
98
- function continuesQuote(text) {
99
- return isBlockquote(text) || isIndented(text);
100
- }
101
- function hasUnsettledParagraph(lines, index, settled) {
102
- const previous = lines[index - 1];
103
- if (previous == null || isBlank(previous.text) || settled > previous.start) return false;
104
- if (isAtxHeading(previous.text) || isListItem(previous.text) || isBlockquote(previous.text)) return false;
105
- if (isThematicBreak(previous.text) || fenceOpener(previous.text) != null) return false;
106
- return true;
107
- }
108
- /**
109
- * End index of the prefix whose blocks can no longer change if text is only
110
- * appended. The last open block stays after this index and is re-parsed.
111
- * The index never moves backwards as `source` grows by appending.
112
- */
113
- function findSettledEnd(source) {
114
- const lines = splitSourceLines(source);
115
- let settled = 0;
116
- let container = "top";
117
- let fence = null;
118
- for (let index = 0; index < lines.length; index++) {
119
- const line = lines[index];
120
- if (line == null || !line.newline) return settled;
121
- if (fence != null) {
122
- if (isFenceClose(line.text, fence)) {
123
- fence = null;
124
- if (container === "top") settled = line.end;
125
- }
126
- continue;
127
- }
128
- const opener = fenceOpener(line.text);
129
- if (opener != null) {
130
- fence = opener;
131
- continue;
132
- }
133
- if (container === "top" && isAtxHeading(line.text)) {
134
- settled = line.end;
135
- continue;
136
- }
137
- if (container === "top" && isSetextUnderline(line.text) && hasUnsettledParagraph(lines, index, settled)) {
138
- settled = line.end;
139
- continue;
140
- }
141
- if (container === "top" && isThematicBreak(line.text)) {
142
- settled = line.end;
143
- continue;
144
- }
145
- if (isBlank(line.text)) {
146
- const next = lines[index + 1];
147
- if (next == null || !next.newline) return settled;
148
- if (container === "list" && continuesList(next.text)) continue;
149
- if (container === "quote" && continuesQuote(next.text)) continue;
150
- container = "top";
151
- settled = line.end;
152
- continue;
153
- }
154
- if (container === "top" && isListItem(line.text)) {
155
- container = "list";
156
- continue;
157
- }
158
- if (container === "top" && isBlockquote(line.text)) container = "quote";
159
- }
160
- return settled;
161
- }
162
- /** True when a fenced code block has been opened and not closed. */
163
- function hasOpenFence(source) {
164
- const lines = splitSourceLines(source);
165
- let fence = null;
166
- for (const line of lines) {
167
- if (!line.newline) return fence != null || fenceOpener(line.text) != null;
168
- if (fence != null) {
169
- if (isFenceClose(line.text, fence)) fence = null;
170
- continue;
171
- }
172
- const opener = fenceOpener(line.text);
173
- if (opener != null) fence = opener;
174
- }
175
- return fence != null;
176
- }
177
- //#endregion
178
- //#region src/Markdown/trim.ts
179
- function isInsideCodeSpan(line, index) {
180
- let open = false;
181
- for (let cursor = 0; cursor < index; cursor++) if (line[cursor] === "`") open = !open;
182
- return open;
183
- }
184
- function trimIncompleteLink(line) {
185
- const image = line.lastIndexOf("![");
186
- const bracket = line.lastIndexOf("[");
187
- const start = Math.max(image, bracket);
188
- if (start < 0 || isInsideCodeSpan(line, start)) return line;
189
- const slice = line.slice(start);
190
- if (/^!?\[[^\]]*\]\([^)]*\)$/.test(slice) || /^!?\[[^\]]*\]$/.test(slice)) return line;
191
- if (/^!?\[[^\]]*\]\([^)]*$/.test(slice) || /^!?\[[^\]]*$/.test(slice)) return line.slice(0, start);
192
- return line;
193
- }
194
- function markerRuns(line, char, maxLength) {
195
- const runs = [];
196
- for (let index = 0; index < line.length; index++) {
197
- if (line[index] !== char) continue;
198
- let length = 1;
199
- while (line[index + length] === char) length += 1;
200
- if (length <= maxLength) runs.push({
201
- start: index,
202
- length
203
- });
204
- index += length - 1;
205
- }
206
- return runs;
207
- }
208
- /** Pair equal-length marker runs and close or drop the ones left open. */
209
- function closeRuns(line, char, maxLength) {
210
- const runs = markerRuns(line, char, maxLength);
211
- const openByLength = /* @__PURE__ */ new Map();
212
- const closed = /* @__PURE__ */ new Set();
213
- runs.forEach((run, index) => {
214
- const stack = openByLength.get(run.length) ?? [];
215
- const opener = stack.pop();
216
- if (opener == null) {
217
- stack.push(index);
218
- openByLength.set(run.length, stack);
219
- return;
220
- }
221
- closed.add(opener);
222
- closed.add(index);
223
- openByLength.set(run.length, stack);
224
- });
225
- const openIndexes = runs.map((_, index) => index).filter((index) => !closed.has(index));
226
- if (openIndexes.length === 0) return line;
227
- let result = line;
228
- for (const index of [...openIndexes].reverse()) {
229
- const run = runs[index];
230
- if (run == null) continue;
231
- const after = result.slice(run.start + run.length);
232
- if (after.trim() === "") {
233
- result = result.slice(0, run.start) + result.slice(run.start + run.length);
234
- continue;
235
- }
236
- const trailing = after.length - after.trimEnd().length;
237
- const closer = char.repeat(run.length);
238
- result = result.slice(0, result.length - trailing) + closer + result.slice(result.length - trailing);
239
- }
240
- return result;
241
- }
242
- function closeStrike(line) {
243
- const positions = [];
244
- let search = 0;
245
- while (search < line.length) {
246
- const found = line.indexOf("~~", search);
247
- if (found === -1) break;
248
- positions.push(found);
249
- search = found + 2;
250
- }
251
- if (positions.length % 2 === 0) return line;
252
- const start = positions[positions.length - 1];
253
- if (start == null) return line;
254
- const after = line.slice(start + 2);
255
- if (after.trim() === "") return line.slice(0, start);
256
- const trailing = after.length - after.trimEnd().length;
257
- return `${line.slice(0, line.length - trailing)}~~${line.slice(line.length - trailing)}`;
258
- }
259
- /**
260
- * Hide unfinished link and code markers on the last line, and close emphasis
261
- * that already has text so the words can render while the stream continues.
262
- * An open fence is left untouched.
263
- */
264
- function trimStreamingTail(tail) {
265
- if (tail === "" || hasOpenFence(tail)) return tail;
266
- const lastNewline = tail.lastIndexOf("\n");
267
- const head = lastNewline === -1 ? "" : tail.slice(0, lastNewline + 1);
268
- let line = lastNewline === -1 ? tail : tail.slice(lastNewline + 1);
269
- line = trimIncompleteLink(line);
270
- line = closeRuns(line, "`", Number.POSITIVE_INFINITY);
271
- line = closeRuns(line, "*", 3);
272
- line = closeStrike(line);
273
- return head + line;
274
- }
275
- //#endregion
276
- //#region src/Markdown/parse.ts
277
- const markdownExtensions = [gfm(), { disable: { null: ["htmlFlow", "htmlText"] } }];
278
- const mdastExtensions = [gfmFromMarkdown()];
279
- function isAutolinkLiteral(node, source) {
280
- if (node.type !== "link" || node.title != null && node.title !== "") return false;
281
- const only = node.children?.length === 1 ? node.children[0] : null;
282
- if (only == null || only.type !== "text" || only.value == null) return false;
283
- const start = node.position?.start?.offset;
284
- const end = node.position?.end?.offset;
285
- if (start == null || end == null) return false;
286
- const raw = source.slice(start, end);
287
- if (raw.startsWith("<") || raw.startsWith("[")) return false;
288
- return raw === only.value;
289
- }
290
- /** Turn bare autolinks back into text. Explicit links and `<url>` stay. */
291
- function stripAutolinkLiterals(node, source) {
292
- if (node.children == null) return node;
293
- let changed = false;
294
- const children = [];
295
- for (const child of node.children) {
296
- if (isAutolinkLiteral(child, source)) {
297
- const start = child.position?.start?.offset ?? 0;
298
- const end = child.position?.end?.offset ?? start;
299
- children.push({
300
- type: "text",
301
- value: source.slice(start, end)
302
- });
303
- changed = true;
304
- continue;
305
- }
306
- const next = stripAutolinkLiterals(child, source);
307
- if (next !== child) changed = true;
308
- children.push(next);
309
- }
310
- if (!changed) return node;
311
- return {
312
- ...node,
313
- children: mergeAdjacentText(children)
314
- };
315
- }
316
- function mergeAdjacentText(children) {
317
- const merged = [];
318
- for (const child of children) {
319
- const previous = merged[merged.length - 1];
320
- if (previous?.type === "text" && child.type === "text") {
321
- merged[merged.length - 1] = {
322
- type: "text",
323
- value: `${previous.value ?? ""}${child.value ?? ""}`
324
- };
325
- continue;
326
- }
327
- merged.push(child);
328
- }
329
- return merged;
330
- }
331
- function parseMarkdown(source, options) {
332
- const root = fromMarkdown(source, {
333
- extensions: markdownExtensions,
334
- mdastExtensions
335
- });
336
- if (options?.autolink === "gfm") return root;
337
- return stripAutolinkLiterals(root, source);
338
- }
339
- function createIncrementalMarkdownState() {
340
- return {
341
- settledEnd: 0,
342
- settledSource: "",
343
- blocks: []
344
- };
345
- }
346
- function resetIncrementalState(state) {
347
- state.settledEnd = 0;
348
- state.settledSource = "";
349
- state.blocks = [];
350
- }
351
- /**
352
- * Parse `source`, reusing the AST of every block that has already closed.
353
- * Only the suffix after {@link findSettledEnd} is parsed again. When `source`
354
- * is no longer an append of the previous value, the cache is dropped.
355
- */
356
- function parseMarkdownIncremental(source, state, options) {
357
- const settledPrefix = state.settledSource.slice(0, state.settledEnd);
358
- if (settledPrefix.length > 0 && !source.startsWith(settledPrefix)) resetIncrementalState(state);
359
- const end = findSettledEnd(source);
360
- if (end < state.settledEnd) resetIncrementalState(state);
361
- if (end > state.settledEnd) {
362
- const slice = source.slice(state.settledEnd, end);
363
- if (slice.trim() !== "") {
364
- const children = parseMarkdown(slice, { autolink: options?.autolink }).children ?? [];
365
- state.blocks = state.blocks.concat(children);
366
- }
367
- state.settledEnd = end;
368
- }
369
- state.settledSource = source;
370
- const tail = source.slice(state.settledEnd);
371
- const prepared = options?.trimTail === true ? trimStreamingTail(tail) : tail;
372
- const tailBlocks = prepared.trim() === "" ? [] : parseMarkdown(prepared, { autolink: options?.autolink }).children ?? [];
373
- return {
374
- blocks: state.blocks.concat(tailBlocks),
375
- settledCount: state.blocks.length
14
+ //#region src/Markdown/canonicalAst.ts
15
+ function visitMarkdownNodes(root, type, visitor) {
16
+ const visit = (node) => {
17
+ if (node.type === type) visitor(node);
18
+ if ("children" in node) for (const child of node.children) visit(child);
376
19
  };
20
+ visit(root);
377
21
  }
378
22
  //#endregion
379
23
  //#region src/Markdown/plugins.ts
@@ -491,22 +135,6 @@ function applyInlinePlugins(root, plugins) {
491
135
  };
492
136
  }
493
137
  //#endregion
494
- //#region src/Markdown/slug.ts
495
- /** URL slug for a heading. Letters and numbers from any language are kept. */
496
- function slugify(value) {
497
- return value.trim().toLowerCase().replace(/['"]/g, "").replace(/[^\p{Letter}\p{Number}]+/gu, "-").replace(/^-+|-+$/g, "");
498
- }
499
- /**
500
- * `setup`, then `setup-1`, then `setup-2`. An empty slug becomes `section`.
501
- * One map covers a whole document.
502
- */
503
- function uniqueSlug(baseSlug, counts) {
504
- const slug = baseSlug === "" ? "section" : baseSlug;
505
- const seen = counts.get(slug) ?? 0;
506
- counts.set(slug, seen + 1);
507
- return seen === 0 ? slug : `${slug}-${seen}`;
508
- }
509
- //#endregion
510
138
  //#region src/Markdown/streaming.ts
511
139
  /**
512
140
  * Record the previous rendered length as a fade boundary.
@@ -603,51 +231,7 @@ function linkOpensInNewTab(url) {
603
231
  return /^https?:/i.test(url);
604
232
  }
605
233
  //#endregion
606
- //#region src/Markdown/render.ts
607
- function measureNode(node) {
608
- switch (node.type) {
609
- case "text":
610
- case "inlineCode":
611
- case "code":
612
- case "html": return node.value?.length ?? 0;
613
- case "image":
614
- case "imageReference": return (node.alt ?? node.label ?? "").length;
615
- case "break": return 1;
616
- case "footnoteReference": return (node.label ?? node.identifier ?? "").length;
617
- case "definition":
618
- case "thematicBreak": return 0;
619
- default: return (node.children ?? []).reduce((sum, child) => sum + measureNode(child), 0);
620
- }
621
- }
622
- function assignHeadingSlugs(nodes) {
623
- const counts = /* @__PURE__ */ new Map();
624
- const slugs = /* @__PURE__ */ new Map();
625
- const visit = (list) => {
626
- for (const node of list) {
627
- if (node.type === "heading") slugs.set(node, uniqueSlug(slugify(plainText(node)), counts));
628
- if (node.children != null) visit(node.children);
629
- }
630
- };
631
- visit(nodes);
632
- return slugs;
633
- }
634
- function collectDefinitions(nodes) {
635
- const definitions = /* @__PURE__ */ new Map();
636
- const visit = (list) => {
637
- for (const node of list) {
638
- if (node.type === "definition" && node.identifier != null && node.url != null) definitions.set(node.identifier, {
639
- url: node.url,
640
- title: node.title
641
- });
642
- if (node.children != null) visit(node.children);
643
- }
644
- };
645
- visit(nodes);
646
- return definitions;
647
- }
648
- function headingLevel(depth, start) {
649
- return Math.min(6, Math.max(1, depth + start - 1));
650
- }
234
+ //#region src/Markdown/renderInline.ts
651
235
  function renderPlainText(value, key, fade) {
652
236
  const start = fade.offset;
653
237
  fade.offset += value.length;
@@ -749,34 +333,11 @@ function renderCitation(id, key, start, ctx) {
749
333
  target: linkOpensInNewTab(href) ? "_blank" : void 0
750
334
  }, children);
751
335
  }
752
- function extensionRenderer(node, ctx) {
753
- const owner = node.plugin;
754
- if (owner == null) return null;
755
- const block = ctx.plugins?.find((plugin) => plugin.name === owner && plugin.render != null);
756
- if (block?.render != null) return block.render;
757
- return (ctx.inlinePlugins?.find((plugin) => plugin.name === owner && plugin.render != null))?.render ?? null;
758
- }
759
- function renderExtension(node, key, ctx) {
760
- const render = extensionRenderer(node, ctx);
761
- if (render != null) {
762
- const rendered = render(node, { renderChildren: () => renderChildren(node.children, key, ctx) });
763
- if (rendered != null) return rendered;
764
- }
765
- if (node.value != null && node.value !== "") return renderText(node.value, key, ctx);
766
- if (node.children != null && node.children.length > 0) return h(Fragment, { key }, renderChildren(node.children, key, ctx));
767
- return null;
768
- }
769
336
  function fadeClass(start, fade) {
770
337
  if (!fade.active || fade.boundaries.length === 0) return void 0;
771
338
  const oldest = fade.boundaries[0];
772
339
  return oldest != null && start >= oldest ? "astryx-markdown__fade" : void 0;
773
340
  }
774
- function renderChildren(nodes, key, ctx) {
775
- return (nodes ?? []).flatMap((node, index) => {
776
- const rendered = renderNode(node, `${key}-${index}`, ctx);
777
- return rendered == null ? [] : [rendered];
778
- });
779
- }
780
341
  function renderLink(href, key, children, title, ctx) {
781
342
  const override = ctx.components?.link;
782
343
  if (override != null) return h(override, {
@@ -796,6 +357,124 @@ function renderLink(href, key, children, title, ctx) {
796
357
  }
797
358
  }, () => children);
798
359
  }
360
+ //#endregion
361
+ //#region src/Markdown/renderTree.ts
362
+ function measureNode(node) {
363
+ switch (node.type) {
364
+ case "text":
365
+ case "inlineCode":
366
+ case "code":
367
+ case "html": return node.value?.length ?? 0;
368
+ case "image":
369
+ case "imageReference": return (node.alt ?? node.label ?? "").length;
370
+ case "break": return 1;
371
+ case "footnoteReference": return (node.label ?? node.identifier ?? "").length;
372
+ case "definition":
373
+ case "thematicBreak": return 0;
374
+ default: return (node.children ?? []).reduce((sum, child) => sum + measureNode(child), 0);
375
+ }
376
+ }
377
+ function assignHeadingSlugs(nodes) {
378
+ const counts = /* @__PURE__ */ new Map();
379
+ const slugs = /* @__PURE__ */ new Map();
380
+ const visit = (list) => {
381
+ for (const node of list) {
382
+ if (node.type === "heading") slugs.set(node, uniqueSlug(slugify(plainText(node)), counts));
383
+ if (node.children != null) visit(node.children);
384
+ }
385
+ };
386
+ visit(nodes);
387
+ return slugs;
388
+ }
389
+ function collectDefinitions(nodes) {
390
+ const definitions = /* @__PURE__ */ new Map();
391
+ const visit = (list) => {
392
+ for (const node of list) {
393
+ if (node.type === "definition" && node.identifier != null && node.url != null) definitions.set(node.identifier, {
394
+ url: node.url,
395
+ title: node.title
396
+ });
397
+ if (node.children != null) visit(node.children);
398
+ }
399
+ };
400
+ visit(nodes);
401
+ return definitions;
402
+ }
403
+ function slotText(nodes) {
404
+ if (nodes == null) return "";
405
+ return nodes.map((node) => {
406
+ if (typeof node.children === "string") return node.children;
407
+ return "";
408
+ }).join("");
409
+ }
410
+ //#endregion
411
+ //#region src/Markdown/render.ts
412
+ function headingLevel(depth, start) {
413
+ return Math.min(6, Math.max(1, depth + start - 1));
414
+ }
415
+ function sourceSpan(node, ctx) {
416
+ if (ctx.sourceLines !== true) return null;
417
+ const start = node.position?.start?.line;
418
+ if (start == null) return null;
419
+ return {
420
+ start,
421
+ end: node.position?.end?.line ?? start
422
+ };
423
+ }
424
+ function sourceLineAttrs(node, ctx) {
425
+ const span = sourceSpan(node, ctx);
426
+ if (span == null) return {};
427
+ return {
428
+ "data-source-line": String(span.start),
429
+ "data-source-line-end": String(span.end)
430
+ };
431
+ }
432
+ function sourceLineFields(node, ctx) {
433
+ const span = sourceSpan(node, ctx);
434
+ return span == null ? {} : { sourceLines: span };
435
+ }
436
+ function renderProtocol(node, ctx) {
437
+ if (node.plugin == null || node.name == null) return void 0;
438
+ const renderer = ctx.protocolRenderers?.get(`${node.plugin}\0${node.name}`);
439
+ if (renderer == null) return void 0;
440
+ const extension = node;
441
+ try {
442
+ const rendered = renderer.render({ node: extension });
443
+ if (typeof rendered === "string" || typeof rendered === "number") return rendered;
444
+ if (rendered != null && typeof rendered === "object") return rendered;
445
+ } catch {}
446
+ try {
447
+ return renderer.toText(extension);
448
+ } catch {
449
+ return node.source ?? node.value ?? "";
450
+ }
451
+ }
452
+ function extensionRenderer(node, ctx) {
453
+ const owner = node.plugin;
454
+ if (owner == null) return null;
455
+ const block = ctx.plugins?.find((plugin) => plugin.name === owner && plugin.render != null);
456
+ if (block?.render != null) return block.render;
457
+ return (ctx.inlinePlugins?.find((plugin) => plugin.name === owner && plugin.render != null))?.render ?? null;
458
+ }
459
+ function renderExtension(node, key, ctx) {
460
+ const protocol = renderProtocol(node, ctx);
461
+ if (protocol !== void 0) return protocol;
462
+ const render = extensionRenderer(node, ctx);
463
+ if (render != null) {
464
+ const rendered = render(node, { renderChildren: () => renderChildren(node.children, key, ctx) });
465
+ if (rendered != null) return rendered;
466
+ }
467
+ if (node.source != null && node.source !== "") return renderText(node.source, key, ctx);
468
+ if (node.value != null && node.value !== "") return renderText(node.value, key, ctx);
469
+ if (node.children != null && node.children.length > 0) return h(Fragment, { key }, renderChildren(node.children, key, ctx));
470
+ return null;
471
+ }
472
+ function renderChildren(nodes, key, ctx) {
473
+ return (nodes ?? []).flatMap((node, index) => {
474
+ const rendered = renderNode(node, `${key}-${index}`, ctx);
475
+ return rendered == null ? [] : [rendered];
476
+ });
477
+ }
799
478
  function renderInline(node, key, ctx) {
800
479
  switch (node.type) {
801
480
  case "text": return renderText(node.value ?? "", key, ctx);
@@ -919,7 +598,8 @@ function renderList$1(node, key, ctx) {
919
598
  if (override != null) return h(override, {
920
599
  key,
921
600
  ordered,
922
- start
601
+ start,
602
+ ...sourceLineFields(node, ctx)
923
603
  }, () => renderedItems);
924
604
  return h(ordered ? "ol" : "ul", {
925
605
  key,
@@ -956,12 +636,14 @@ function renderListItem(node, key, taskList, marker, ctx) {
956
636
  const body = renderItemBody(node, key, ctx);
957
637
  if (!taskList && !isTaskItem(node)) return h("li", {
958
638
  key,
959
- class: "astryx-markdown__item"
639
+ class: "astryx-markdown__item",
640
+ ...sourceLineAttrs(node, ctx)
960
641
  }, [renderMarker(marker), h("div", { class: "astryx-markdown__item-body" }, body)]);
961
642
  const checked = node.checked === true;
962
643
  return h("li", {
963
644
  key,
964
- class: "astryx-markdown__task"
645
+ class: "astryx-markdown__task",
646
+ ...sourceLineAttrs(node, ctx)
965
647
  }, [h("span", { class: "astryx-markdown__task-check" }, [h(ctx.checkboxIndicator ?? _sfc_main$4, {
966
648
  state: checked ? "checked" : "unchecked",
967
649
  size: "sm"
@@ -982,24 +664,30 @@ function renderBlock(node, key, ctx) {
982
664
  if (override != null) return h(override, {
983
665
  key,
984
666
  level,
985
- id
667
+ id,
668
+ ...sourceLineFields(node, ctx)
986
669
  }, () => [...children, anchor]);
987
670
  return h(_sfc_main$2, {
988
671
  key,
989
672
  level,
990
673
  id,
991
674
  class: "astryx-markdown__heading astryx-markdown__prose",
992
- tabindex: -1
675
+ tabindex: -1,
676
+ ...sourceLineAttrs(node, ctx)
993
677
  }, () => [...children, anchor]);
994
678
  }
995
679
  case "paragraph": {
996
680
  const children = renderChildren(node.children, key, ctx);
997
681
  const imageOnly = (node.children ?? []).length === 1 && node.children?.[0]?.type === "image";
998
682
  const override = ctx.components?.paragraph;
999
- if (override != null) return h(override, { key }, () => children);
683
+ if (override != null) return h(override, {
684
+ key,
685
+ ...sourceLineFields(node, ctx)
686
+ }, () => children);
1000
687
  if (ctx.inline) return h("span", {
1001
688
  key,
1002
- class: "astryx-markdown__paragraph"
689
+ class: "astryx-markdown__paragraph",
690
+ ...sourceLineAttrs(node, ctx)
1003
691
  }, children);
1004
692
  return h("div", {
1005
693
  key,
@@ -1008,7 +696,8 @@ function renderBlock(node, key, ctx) {
1008
696
  "astryx-markdown__paragraph",
1009
697
  "astryx-markdown__prose",
1010
698
  imageOnly ? "astryx-markdown__paragraph--image" : null
1011
- ]
699
+ ],
700
+ ...sourceLineAttrs(node, ctx)
1012
701
  }, children);
1013
702
  }
1014
703
  case "code": {
@@ -1020,27 +709,34 @@ function renderBlock(node, key, ctx) {
1020
709
  if (override != null) return h(override, {
1021
710
  key,
1022
711
  code: value,
1023
- language
712
+ language,
713
+ ...sourceLineFields(node, ctx)
1024
714
  }, () => value);
1025
715
  const fence = parseFenceLanguage(language);
1026
716
  return h("div", {
1027
717
  key,
1028
- class: ["astryx-markdown__code", fadeClass(start, ctx.fade)]
718
+ class: ["astryx-markdown__code", fadeClass(start, ctx.fade)],
719
+ ...sourceLineAttrs(node, ctx)
1029
720
  }, [h(_sfc_main$6, {
1030
721
  code: value,
1031
722
  language: fence.language,
1032
723
  isDiff: fence.isDiff,
1033
724
  width: "100%",
1034
- isCollapsible: true
725
+ isCollapsible: true,
726
+ isWrapped: true
1035
727
  })]);
1036
728
  }
1037
729
  case "blockquote": {
1038
730
  const children = (node.children ?? []).map((child, index) => renderBlock(child, `${key}-${index}`, ctx)).filter((child) => child != null);
1039
731
  const override = ctx.components?.blockquote;
1040
- if (override != null) return h(override, { key }, () => children);
732
+ if (override != null) return h(override, {
733
+ key,
734
+ ...sourceLineFields(node, ctx)
735
+ }, () => children);
1041
736
  return h(_sfc_main$3, {
1042
737
  key,
1043
- class: "astryx-markdown__blockquote astryx-markdown__prose"
738
+ class: "astryx-markdown__blockquote astryx-markdown__prose",
739
+ ...sourceLineAttrs(node, ctx)
1044
740
  }, () => children);
1045
741
  }
1046
742
  case "list": return renderList$1(node, key, ctx);
@@ -1064,18 +760,26 @@ function renderBlock(node, key, ctx) {
1064
760
  }));
1065
761
  const content = [header == null ? null : h("thead", { key: `${key}-head` }, [renderRow(header, `${key}-head-row`, "th")]), body.length === 0 ? null : h("tbody", { key: `${key}-body` }, body.map((row, index) => renderRow(row, `${key}-body-${index}`, "td")))].filter((child) => child != null);
1066
762
  const override = ctx.components?.table;
1067
- if (override != null) return h(override, { key }, () => content);
763
+ if (override != null) return h(override, {
764
+ key,
765
+ ...sourceLineFields(node, ctx)
766
+ }, () => content);
1068
767
  return h("div", {
1069
768
  key,
1070
- class: "astryx-markdown__table-wrap"
769
+ class: "astryx-markdown__table-wrap",
770
+ ...sourceLineAttrs(node, ctx)
1071
771
  }, [h("table", { class: "astryx-markdown__table" }, content)]);
1072
772
  }
1073
773
  case "thematicBreak": {
1074
774
  const override = ctx.components?.hr;
1075
- if (override != null) return h(override, { key });
775
+ if (override != null) return h(override, {
776
+ key,
777
+ ...sourceLineFields(node, ctx)
778
+ });
1076
779
  return h("hr", {
1077
780
  key,
1078
- class: "astryx-markdown__hr"
781
+ class: "astryx-markdown__hr",
782
+ ...sourceLineAttrs(node, ctx)
1079
783
  });
1080
784
  }
1081
785
  case "footnoteDefinition": {
@@ -1114,15 +818,11 @@ function renderMarkdownBlocks(nodes, settledCount, ctx, cache) {
1114
818
  for (const node of cache.keys()) if (!alive.has(node)) cache.delete(node);
1115
819
  return vnodes;
1116
820
  }
1117
- function slotText(nodes) {
1118
- if (nodes == null) return "";
1119
- return nodes.map((node) => {
1120
- if (typeof node.children === "string") return node.children;
1121
- return "";
1122
- }).join("");
1123
- }
1124
821
  //#endregion
1125
822
  //#region src/Markdown/Markdown.vue
823
+ function isVueMarkdownPlugin(plugin) {
824
+ return !isMarkdownPluginEntry(plugin);
825
+ }
1126
826
  function fadeSpanCount() {
1127
827
  const fallback = 165;
1128
828
  let duration = fallback;
@@ -1227,10 +927,19 @@ const _sfc_main = defineComponent({
1227
927
  boundaries = [];
1228
928
  previousLength = 0;
1229
929
  } else boundaries = computeBoundaries(boundaries, previousLength, fadeSpanCount());
1230
- const blocks = applyInlinePlugins(applyMarkdownPlugins({
930
+ const allPlugins = props.plugins ?? [];
931
+ const protocolPlugins = allPlugins.filter(isMarkdownPluginEntry);
932
+ const vuePlugins = allPlugins.filter(isVueMarkdownPlugin);
933
+ let rootNode = {
1231
934
  type: "root",
1232
935
  children: parsed.blocks
1233
- }, props.plugins), props.inlinePlugins).children ?? [];
936
+ };
937
+ if (protocolPlugins.length > 0) {
938
+ const isFinal = !props.isStreaming;
939
+ rootNode = applyMarkdownSyntax(rootNode, shown, protocolPlugins, isFinal);
940
+ rootNode = applyProtocolTransforms(rootNode, protocolPlugins, shown, isFinal);
941
+ }
942
+ const blocks = applyInlinePlugins(applyMarkdownPlugins(rootNode, vuePlugins), props.inlinePlugins).children ?? [];
1234
943
  const ctx = {
1235
944
  components: props.components,
1236
945
  fade: {
@@ -1250,8 +959,10 @@ const _sfc_main = defineComponent({
1250
959
  citationOrder: /* @__PURE__ */ new Map(),
1251
960
  citationStyle: props.citationStyle ?? "label",
1252
961
  citationLabel: messages.value.citation.label,
1253
- plugins: props.plugins,
962
+ plugins: vuePlugins,
1254
963
  inlinePlugins: props.inlinePlugins,
964
+ sourceLines: protocolPlugins.some(isMarkdownSourceLinesPlugin),
965
+ protocolRenderers: collectProtocolRenderers(protocolPlugins),
1255
966
  checkboxIndicator: checkboxIndicator.value
1256
967
  };
1257
968
  const children = renderMarkdownBlocks(blocks, inline ? 0 : parsed.settledCount, ctx, cache);
@@ -1279,4 +990,4 @@ const _sfc_main = defineComponent({
1279
990
  }
1280
991
  });
1281
992
  //#endregion
1282
- export { applyMarkdownPlugins as a, isMarkdownExtensionNode as c, applyInlinePlugins as i, slugify as n, defineMarkdownPlugin as o, uniqueSlug as r, parseMarkdown as s, _sfc_main as t };
993
+ export { visitMarkdownNodes as a, defineMarkdownPlugin as i, applyInlinePlugins as n, applyMarkdownPlugins as r, _sfc_main as t };