@aussieljk/forkbook 0.0.1-5 → 0.0.1-7

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 (314) hide show
  1. package/dist/_browser-chunks/{Color-GTF4GM7L.js → Color-2YRIFQLC.js} +1 -1
  2. package/dist/_browser-chunks/WithTooltip-4R5JMWZ7.js +196 -0
  3. package/dist/_browser-chunks/{chunk-MJY6ITYT.js → chunk-4EFKUJG2.js} +10 -10
  4. package/dist/_browser-chunks/chunk-6AKCRYVX.js +6 -0
  5. package/dist/_browser-chunks/{chunk-FVSEPWWX.js → chunk-DAUHYZUB.js} +550 -1621
  6. package/dist/_browser-chunks/chunk-E47B5255.js +1149 -0
  7. package/dist/_browser-chunks/{chunk-K6GRZSXS.js → chunk-EQKMUQF3.js} +4 -3
  8. package/dist/_browser-chunks/{chunk-GU3X2J4S.js → chunk-FRAOQJDI.js} +3 -1
  9. package/dist/_browser-chunks/{chunk-2SCZVUKW.js → chunk-H4ZHAXN3.js} +1 -1
  10. package/dist/_browser-chunks/{chunk-HOSBMS2F.js → chunk-HTL5ODCB.js} +1 -1
  11. package/dist/_browser-chunks/{chunk-ZLWA5RIE.js → chunk-I4ATZPNZ.js} +1 -1
  12. package/dist/_browser-chunks/{chunk-6SHRDXGF.js → chunk-IJYLSHY7.js} +173 -87
  13. package/dist/_browser-chunks/{chunk-SZCSXISG.js → chunk-NA4ITZTK.js} +7 -5
  14. package/dist/_browser-chunks/chunk-NGMQJMCY.js +53 -0
  15. package/dist/_browser-chunks/{chunk-K2B36HKM.js → chunk-O24AZJZ7.js} +1 -1
  16. package/dist/_browser-chunks/{chunk-NMRSYACM.js → chunk-SFMQDIN2.js} +4 -3
  17. package/dist/_browser-chunks/{chunk-ZTQ5MEJ5.js → chunk-UMGDO2ZM.js} +3 -37
  18. package/dist/_browser-chunks/chunk-WVF42CP2.js +6027 -0
  19. package/dist/_browser-chunks/{chunk-52CW7FF7.js → chunk-YYWKZ7O3.js} +3 -1
  20. package/dist/_node-chunks/{attached-runtime-IOE3BXIY.js → attached-runtime-WFZCCGUB.js} +29 -29
  21. package/dist/_node-chunks/{builder-manager-GDFEGD72.js → builder-manager-DHKHRZK4.js} +155 -148
  22. package/dist/_node-chunks/{chunk-M2QB5ALN.js → chunk-3ZCGT6VF.js} +6 -6
  23. package/dist/_node-chunks/{chunk-SUJXQU74.js → chunk-4HGC3G6B.js} +46 -15
  24. package/dist/_node-chunks/{chunk-WMQ2VCTF.js → chunk-5PYQ573S.js} +7 -7
  25. package/dist/_node-chunks/{chunk-TYCDPVIH.js → chunk-64JPAW3T.js} +6 -6
  26. package/dist/_node-chunks/chunk-6CB3XSQ2.js +495 -0
  27. package/dist/_node-chunks/{chunk-MHDKWHOA.js → chunk-6K3ZE4HN.js} +6 -6
  28. package/dist/_node-chunks/{chunk-3DCJB2D4.js → chunk-6QZ3PX5R.js} +6 -6
  29. package/dist/_node-chunks/{chunk-6DOJKR3V.js → chunk-7HVDL6M3.js} +29843 -51588
  30. package/dist/_node-chunks/chunk-7PMQPS5E.js +347 -0
  31. package/dist/_node-chunks/{chunk-L5CY6HKG.js → chunk-7V5AOV2J.js} +7 -7
  32. package/dist/_node-chunks/{chunk-AXJJB2K6.js → chunk-7VHCAGBJ.js} +8 -8
  33. package/dist/_node-chunks/{chunk-3DX6THMV.js → chunk-ATX7SHS7.js} +8 -8
  34. package/dist/_node-chunks/{chunk-SDXU22OH.js → chunk-BQC6WCUS.js} +6 -6
  35. package/dist/_node-chunks/{chunk-D6B2DRQZ.js → chunk-BR4WDRY6.js} +8 -8
  36. package/dist/_node-chunks/{chunk-SJZQ44OR.js → chunk-BRHJ4P3A.js} +6 -6
  37. package/dist/_node-chunks/{chunk-N4FLP7AO.js → chunk-CBBFNVFZ.js} +7 -7
  38. package/dist/_node-chunks/{chunk-PHXCOTMO.js → chunk-CDFQORVD.js} +34 -949
  39. package/dist/_node-chunks/{chunk-SR3BCYEH.js → chunk-CENNLCU7.js} +6 -6
  40. package/dist/_node-chunks/{chunk-OTFIQXHR.js → chunk-CNMMDQC3.js} +27 -50
  41. package/dist/_node-chunks/{chunk-E4C2H45J.js → chunk-DMDZPUHM.js} +6 -6
  42. package/dist/_node-chunks/{chunk-45LRLOYO.js → chunk-DT45EUDD.js} +60 -134
  43. package/dist/_node-chunks/{chunk-KQFHT7SW.js → chunk-EAL4RVEF.js} +6 -6
  44. package/dist/_node-chunks/chunk-EFFWFE6W.js +11 -0
  45. package/dist/_node-chunks/{chunk-MDGNN3FJ.js → chunk-ESCZ2NSB.js} +6 -6
  46. package/dist/_node-chunks/{chunk-T2I453AJ.js → chunk-ESZIQTUH.js} +7 -7
  47. package/dist/_node-chunks/{chunk-HWY2CAUH.js → chunk-F3SAYS4R.js} +6 -6
  48. package/dist/_node-chunks/{chunk-LSP54OYM.js → chunk-FTUQ7T3V.js} +25 -8
  49. package/dist/_node-chunks/{chunk-AAAUVDWT.js → chunk-FVFSSIGA.js} +10 -10
  50. package/dist/_node-chunks/{chunk-GS4VNNSS.js → chunk-G2AANC4A.js} +6 -6
  51. package/dist/_node-chunks/{chunk-SAAQFJL4.js → chunk-HUMAXGH2.js} +6 -6
  52. package/dist/_node-chunks/{chunk-A4XRNDN4.js → chunk-I535GEPH.js} +7 -7
  53. package/dist/_node-chunks/{chunk-CK4EHW3K.js → chunk-J3Q56GX3.js} +25 -25
  54. package/dist/_node-chunks/{chunk-U47PBQZ3.js → chunk-JDKYP7FW.js} +10 -10
  55. package/dist/_node-chunks/{chunk-7TUSIVWS.js → chunk-JED5F3H2.js} +6 -6
  56. package/dist/_node-chunks/{chunk-UM5G27IC.js → chunk-JMS4H7QB.js} +7 -7
  57. package/dist/_node-chunks/{chunk-GR65OLAH.js → chunk-JOSJ64KD.js} +7 -7
  58. package/dist/_node-chunks/{chunk-XUHEL63G.js → chunk-JPHSU5OI.js} +6 -6
  59. package/dist/_node-chunks/{chunk-NYWD5LYM.js → chunk-JQICISDD.js} +6 -6
  60. package/dist/_node-chunks/{chunk-I3DKGHVD.js → chunk-JTLOSDYL.js} +9 -9
  61. package/dist/_node-chunks/{chunk-5KAJVK4E.js → chunk-K5RUOW42.js} +7 -7
  62. package/dist/_node-chunks/{chunk-UKEJISQU.js → chunk-KHWCZDIW.js} +650 -9
  63. package/dist/_node-chunks/chunk-KWER36VB.js +20 -0
  64. package/dist/_node-chunks/{chunk-YTBTCM22.js → chunk-LJTP5PAJ.js} +6 -6
  65. package/dist/_node-chunks/chunk-LZYYZ62Y.js +19 -0
  66. package/dist/_node-chunks/{chunk-CGXW2HFE.js → chunk-M7ZVSBNU.js} +6 -6
  67. package/dist/_node-chunks/{chunk-BTFSFATC.js → chunk-MBIIJTGQ.js} +11 -10
  68. package/dist/_node-chunks/{chunk-VBSVLIXU.js → chunk-MF3AT3JQ.js} +6 -6
  69. package/dist/_node-chunks/{chunk-AX2ALHBK.js → chunk-MF5BYASO.js} +9 -6
  70. package/dist/_node-chunks/{chunk-JJNO3SFI.js → chunk-MJFMB4WD.js} +9 -9
  71. package/dist/_node-chunks/{chunk-E4TBS4MV.js → chunk-MRWBN46D.js} +8 -8
  72. package/dist/_node-chunks/{chunk-QQXFB4YA.js → chunk-MZQXEAI6.js} +9 -9
  73. package/dist/_node-chunks/{chunk-TZ2TZW2K.js → chunk-NLPC2DDQ.js} +6 -6
  74. package/dist/_node-chunks/{chunk-HCX5R46Q.js → chunk-NQAFLS5U.js} +8 -8
  75. package/dist/_node-chunks/{chunk-5LE7GXEC.js → chunk-NSZGBFPR.js} +6 -6
  76. package/dist/_node-chunks/{chunk-WHDCECIV.js → chunk-NUYBFTOU.js} +7 -7
  77. package/dist/_node-chunks/{chunk-RCPKLP3X.js → chunk-O7VJA7SM.js} +7 -7
  78. package/dist/_node-chunks/{chunk-2GY2FKLH.js → chunk-OGJ7LDX3.js} +7 -7
  79. package/dist/_node-chunks/{chunk-F4Q7OCCN.js → chunk-OWT6AVWK.js} +8 -8
  80. package/dist/_node-chunks/{chunk-LCXIUTOU.js → chunk-P3GOMPP3.js} +7 -7
  81. package/dist/_node-chunks/{chunk-KCAPE7OJ.js → chunk-PQLXHVWK.js} +6 -6
  82. package/dist/_node-chunks/{chunk-V45RRBTK.js → chunk-Q6QRFKHB.js} +8 -8
  83. package/dist/_node-chunks/{chunk-VJSOHPVD.js → chunk-QSP42ZBM.js} +6 -6
  84. package/dist/_node-chunks/{chunk-7XUQM6SR.js → chunk-QWDR5OWQ.js} +14 -14
  85. package/dist/_node-chunks/{chunk-YLKS7U3M.js → chunk-QWRQXG2V.js} +8 -8
  86. package/dist/_node-chunks/{chunk-4WO3GNZQ.js → chunk-R6AKCXPH.js} +6 -6
  87. package/dist/_node-chunks/{chunk-AXQ6LLSE.js → chunk-RCY7TLET.js} +8 -8
  88. package/dist/_node-chunks/chunk-RKKMQA6N.js +620 -0
  89. package/dist/_node-chunks/{chunk-BV3QRFE6.js → chunk-RZ7UEP4N.js} +6 -6
  90. package/dist/_node-chunks/{chunk-OSJFTZ5N.js → chunk-S3HB4EWT.js} +6 -6
  91. package/dist/_node-chunks/{chunk-QZVFIEOM.js → chunk-SHH7JROR.js} +6 -6
  92. package/dist/_node-chunks/{chunk-Q33BYVLY.js → chunk-SWHTDOB4.js} +7 -7
  93. package/dist/_node-chunks/{chunk-ZPPVG262.js → chunk-SZYMLCHF.js} +6 -6
  94. package/dist/_node-chunks/{chunk-ES5QZBSB.js → chunk-TOGDRW2W.js} +6 -6
  95. package/dist/_node-chunks/{chunk-J64XMUPF.js → chunk-U3E7E4Q2.js} +10 -10
  96. package/dist/_node-chunks/{chunk-RECGEABN.js → chunk-U6DHF3RM.js} +7 -7
  97. package/dist/_node-chunks/{chunk-OB2XHL53.js → chunk-UAG3XK32.js} +31 -30
  98. package/dist/_node-chunks/{chunk-BBD2KUV4.js → chunk-UF6Q6L5C.js} +22 -20
  99. package/dist/_node-chunks/chunk-UGXN7JTT.js +18 -0
  100. package/dist/_node-chunks/{chunk-EWAGCBER.js → chunk-UNCBLHIP.js} +8 -8
  101. package/dist/_node-chunks/chunk-UPJMGWMZ.js +25 -0
  102. package/dist/_node-chunks/chunk-UVV24PG4.js +69 -0
  103. package/dist/_node-chunks/{chunk-E6KXSYWR.js → chunk-WBB4NQ6H.js} +6 -6
  104. package/dist/_node-chunks/{chunk-B2IOB2V3.js → chunk-WHOF2BJB.js} +7 -7
  105. package/dist/_node-chunks/{chunk-FA36CEN4.js → chunk-WME5NEJA.js} +6 -6
  106. package/dist/_node-chunks/{chunk-BFZG4UTW.js → chunk-X63YMAHP.js} +7 -7
  107. package/dist/_node-chunks/chunk-Y2GHAOKI.js +25 -0
  108. package/dist/_node-chunks/{chunk-AXG3EMKS.js → chunk-Y6G64J5S.js} +7 -15
  109. package/dist/_node-chunks/chunk-YVIPYJ53.js +2609 -0
  110. package/dist/_node-chunks/{chunk-NDGTNFUN.js → chunk-YZWUD7I5.js} +16 -13
  111. package/dist/_node-chunks/{chunk-VN3A5CEH.js → chunk-ZIDIYSJQ.js} +7 -7
  112. package/dist/_node-chunks/chunk-ZSGOW4WQ.js +20 -0
  113. package/dist/_node-chunks/dist-5EG56KTF.js +16 -0
  114. package/dist/_node-chunks/dist-UEXSNGGQ.js +27 -0
  115. package/dist/_node-chunks/{local-runtime-RW6AAWSX.js → local-runtime-UN5QK2SE.js} +20 -20
  116. package/dist/_node-chunks/{mdx-plugin-BKWCT6CB.js → mdx-plugin-6M6CMNL3.js} +2263 -130
  117. package/dist/_node-chunks/{monorepo-ZFJ6HM34.js → monorepo-253VKW4B.js} +11 -11
  118. package/dist/_node-chunks/{monorepo-optimized-tests-relaxed-limits-no-story-deletion-C3EW4VJW.js → monorepo-optimized-tests-relaxed-limits-no-story-deletion-3ZOE54OQ.js} +11 -11
  119. package/dist/_node-chunks/optimized-tests-JSWLRMEI.js +22 -0
  120. package/dist/_node-chunks/{pattern-copy-play-2ZMJNCBS.js → pattern-copy-play-CCCJRMSL.js} +9 -9
  121. package/dist/_node-chunks/postinstallAddon-VMANBHPR.js +20 -0
  122. package/dist/_node-chunks/{rehype-external-links-RT5Z62RV.js → rehype-external-links-LJTPLCGD.js} +9 -9
  123. package/dist/_node-chunks/{rehype-slug-H5TWHJ6G.js → rehype-slug-KQI7ULEZ.js} +9 -9
  124. package/dist/_node-chunks/{relaxed-limits-DYLWZGE4.js → relaxed-limits-MUE2NI7S.js} +11 -11
  125. package/dist/_node-chunks/{run-65LLGSVR.js → run-PGZMPNMS.js} +246 -13
  126. package/dist/_node-chunks/{run-BQQLK454.js → run-SYLR25HA.js} +17 -17
  127. package/dist/_node-chunks/session-id-J4A25UQ6.js +23 -0
  128. package/dist/_node-chunks/{setup-NEO7XX66.js → setup-XZWSUYPG.js} +8 -8
  129. package/dist/_node-chunks/{vitest.config.4.template-6P3FZQTY.js → vitest.config.4.template-T25YYRGV.js} +7 -7
  130. package/dist/actions/decorator.js +2 -1
  131. package/dist/actions/index.js +2 -1
  132. package/dist/addon-a11y/index.js +2 -1
  133. package/dist/addon-a11y/manager.js +6 -5
  134. package/dist/addon-a11y/preset.js +7 -7
  135. package/dist/addon-a11y/preview.js +2 -1
  136. package/dist/addon-docs/blocks.js +28 -14
  137. package/dist/addon-docs/manager.js +2 -2
  138. package/dist/addon-docs/preset.js +10 -10
  139. package/dist/addon-links/index.js +3 -2
  140. package/dist/addon-links/preview.d.ts +1 -1
  141. package/dist/addon-links/preview.js +3 -2
  142. package/dist/addon-links/react/index.js +2 -1
  143. package/dist/addon-mcp/preset.js +8 -8
  144. package/dist/addon-mcp/tools/preview-stories/preview-stories-app-script.js +21 -44
  145. package/dist/addon-ondevice-actions/index.js +5 -1
  146. package/dist/addon-ondevice-actions/register.js +5 -1
  147. package/dist/addon-themes/postinstall.js +7 -7
  148. package/dist/addon-vitest/constants.js +8 -8
  149. package/dist/addon-vitest/manager.js +2 -2
  150. package/dist/addon-vitest/node/coverage-reporter.js +8 -8
  151. package/dist/addon-vitest/node/vitest.js +16 -16
  152. package/dist/addon-vitest/postinstall.js +10 -10
  153. package/dist/addon-vitest/preset.js +15 -16
  154. package/dist/addon-vitest/vitest-plugin/global-setup.js +7 -7
  155. package/dist/addon-vitest/vitest-plugin/index.js +17 -17
  156. package/dist/babel/index.d.ts +91 -842
  157. package/dist/babel/index.js +13 -19
  158. package/dist/bin/core.js +61 -60
  159. package/dist/bin/dispatcher.js +16 -11
  160. package/dist/bin/loader.js +16 -15
  161. package/dist/builder-vite/index.js +15 -15
  162. package/dist/builder-vite/preset.js +13 -13
  163. package/dist/{chunk-Jf7j2Ot0.d.ts → chunk-BGhyFTJO.d.ts} +1 -1
  164. package/dist/{chunk-Ce6uhJuR.d.ts → chunk-B_ZhEPlo.d.ts} +1 -1
  165. package/dist/{chunk-CZHsX9Zo.d.ts → chunk-CMaYrou5.d.ts} +1 -1
  166. package/dist/chunk-CV4-Z2pn.d.ts +30 -0
  167. package/dist/{chunk-B2t1tGRh.d.ts → chunk-CYuvV2sR.d.ts} +11 -13
  168. package/dist/{chunk-DpljNJTz.d.ts → chunk-LrH1y9J2.d.ts} +39 -0
  169. package/dist/cli/index.d.ts +13 -866
  170. package/dist/cli/index.js +42 -4952
  171. package/dist/cli/tools/sdk/child-host.d.ts +1 -1
  172. package/dist/cli/tools/sdk/child-host.js +17 -17
  173. package/dist/cli/tools/sdk/index.d.ts +1 -1
  174. package/dist/cli/tools/sdk/index.js +18 -18
  175. package/dist/cli-commands/bin/index.js +7 -7
  176. package/dist/client-logger/index.js +3 -1
  177. package/dist/common/index.d.ts +5 -4
  178. package/dist/common/index.js +35 -37
  179. package/dist/components/index.d.ts +14 -231
  180. package/dist/components/index.js +2512 -8359
  181. package/dist/core-events/index.d.ts +3 -2
  182. package/dist/core-events/index.js +3 -1
  183. package/dist/core-server/index.d.ts +2 -2
  184. package/dist/core-server/index.js +450 -147
  185. package/dist/core-server/presets/common-manager.js +62 -866
  186. package/dist/core-server/presets/common-override-preset.js +12 -10
  187. package/dist/core-server/presets/common-preset.js +39 -40
  188. package/dist/create/bin/index.js +7 -7
  189. package/dist/create/index.js +15 -15
  190. package/dist/csf/index.d.ts +1 -1
  191. package/dist/csf/index.js +27 -93
  192. package/dist/csf-tools/index.d.ts +14 -12
  193. package/dist/csf-tools/index.js +14 -14
  194. package/dist/instrumenter/index.js +3 -1
  195. package/dist/manager/_manager-chunks/{globals-runtime-BgVwdR45.js → globals-runtime-4fCHtNC6.js} +1 -1
  196. package/dist/manager/_manager-chunks/{globals-runtime-DW1HVuLt.js → globals-runtime-BKPOYSwp.js} +410 -379
  197. package/dist/manager/_manager-chunks/{globals-runtime-zVfMhZAt.js → globals-runtime-BMIT8BJb.js} +1 -1
  198. package/dist/manager/_manager-chunks/{globals-runtime-CUBVmgcG.js → globals-runtime-BO0pfoqL.js} +4 -4
  199. package/dist/manager/_manager-chunks/{globals-runtime-Bke4A4DG.js → globals-runtime-BZKYJxYC.js} +1 -1
  200. package/dist/manager/_manager-chunks/{globals-runtime-D_YKR9nf.js → globals-runtime-Bpc_ftuT.js} +1252 -539
  201. package/dist/manager/_manager-chunks/{globals-runtime-DCOX9nD5.js → globals-runtime-CBviMKtt.js} +1 -17
  202. package/dist/manager/_manager-chunks/{globals-runtime-CTB3rhS1.js → globals-runtime-CI-C7ncS.js} +10 -10
  203. package/dist/manager/_manager-chunks/{globals-runtime-Cr3nYYcT.js → globals-runtime-CI_p54Ha.js} +59 -60
  204. package/dist/manager/_manager-chunks/{globals-runtime-CiLcg4q9.js → globals-runtime-CTyYXvUm.js} +1 -1
  205. package/dist/manager/_manager-chunks/{globals-runtime-DqNrRmOM.js → globals-runtime-CoCzM1V_.js} +93 -2146
  206. package/dist/manager/_manager-chunks/{globals-runtime-CXKb33hg.js → globals-runtime-CzEhVGVp.js} +141 -54
  207. package/dist/manager/_manager-chunks/{globals-runtime-CF4o9_wT.js → globals-runtime-D82vqOGq.js} +2 -1
  208. package/dist/manager/_manager-chunks/{globals-runtime-ALpzCL93.js → globals-runtime-DB8fVA5g.js} +2 -145
  209. package/dist/manager/_manager-chunks/{globals-runtime-DMvB3-IM.js → globals-runtime-DMq1Phbl.js} +153 -141
  210. package/dist/manager/_manager-chunks/globals-runtime-DOPUchia.js +5282 -0
  211. package/dist/manager/_manager-chunks/{globals-runtime-BcNHymiF.js → globals-runtime-Dbt08xWQ.js} +1 -1
  212. package/dist/manager/_manager-chunks/{globals-runtime-m07udJ_K.js → globals-runtime-kmPSyf3j.js} +637 -1730
  213. package/dist/manager/_manager-chunks/{runtime-DMig8mT7.js → runtime-5o_11Jae.js} +4 -3
  214. package/dist/manager/_manager-chunks/{runtime-DrjpEyLM.js → runtime-B4U0u9p4.js} +5 -147
  215. package/dist/manager/_manager-chunks/{runtime-B-eSQdxk.js → runtime-BM30BmeT.js} +503 -44
  216. package/dist/manager/_manager-chunks/{runtime-EITvVbkG.js → runtime-BdGkqNEt.js} +1 -2
  217. package/dist/manager/_manager-chunks/{runtime-a5zd7km2.js → runtime-Cf0p9DUx.js} +5 -531
  218. package/dist/manager/_manager-chunks/{runtime-Cdz2BHhM.js → runtime-D-nYLsdk.js} +57 -34
  219. package/dist/manager/_manager-chunks/runtime-D09XMY6V.js +294 -0
  220. package/dist/manager/_manager-chunks/{runtime-Bldwclun.js → runtime-DvrwKw7z.js} +92 -303
  221. package/dist/manager/_manager-chunks/{runtime-DGHNKNQl.js → runtime-DzxaTqVN.js} +10 -29
  222. package/dist/manager/_manager-chunks/runtime-P663lpsR.js +528 -0
  223. package/dist/manager/_manager-chunks/{runtime-Cmu7D8A0.js → runtime-ecY5qnmo.js} +193 -184
  224. package/dist/manager/globals-runtime.js +1 -1
  225. package/dist/manager/runtime.js +1 -1
  226. package/dist/manager-api/index.d.ts +1 -1
  227. package/dist/manager-api/index.js +22 -28
  228. package/dist/manager-errors.d.ts +1 -1
  229. package/dist/mcp/index.js +8 -8
  230. package/dist/mocking-utils/index.js +16 -11
  231. package/dist/nextjs-vite/index.js +3 -2
  232. package/dist/nextjs-vite/node/index.js +7 -7
  233. package/dist/nextjs-vite/node-stand-ins/index.d.ts +68 -0
  234. package/dist/nextjs-vite/node-stand-ins/index.js +145 -0
  235. package/dist/nextjs-vite/preset.js +93 -14
  236. package/dist/nextjs-vite/vite-plugin/index.js +7 -7
  237. package/dist/nextjs-vite-plugin/index.d.ts +1 -2
  238. package/dist/nextjs-vite-plugin/index.js +12 -27
  239. package/dist/nextjs-vite-plugin/mocks/storybook.global.js +8 -8
  240. package/dist/node-logger/index.d.ts +65 -72
  241. package/dist/node-logger/index.js +11 -12
  242. package/dist/oxc-parser/index.js +11 -13
  243. package/dist/oxc-parser/worker.js +10 -10
  244. package/dist/preview/_chunks/{runtime-DVM_AHbR.js → runtime-6P-h06Te.js} +51 -50
  245. package/dist/preview/_chunks/{runtime-BoxmlDdB.js → runtime-B9KKIDGa.js} +202 -81
  246. package/dist/preview/_chunks/{runtime-BIzIdDbb.js → runtime-BPwAnlRx.js} +482 -334
  247. package/dist/preview/_chunks/{runtime-q3wt0e_N.js → runtime-BUnOhg9h.js} +2 -2
  248. package/dist/preview/_chunks/runtime-Bcv1hJky.js +6305 -0
  249. package/dist/preview/_chunks/{runtime-CqHxptiK.js → runtime-C1jgT6tJ.js} +93 -2145
  250. package/dist/preview/_chunks/{runtime-D7B4bVe_.js → runtime-C8QFpkFV.js} +6 -6
  251. package/dist/preview/_chunks/{runtime-CijtAN7R.js → runtime-DdqR8Fd0.js} +15 -6
  252. package/dist/preview/_chunks/{runtime-B3y8ocOg.js → runtime-DvBfMhis.js} +2 -2
  253. package/dist/preview/_chunks/{runtime-BZSnICCg.js → runtime-WapFVPAh.js} +29 -29
  254. package/dist/preview/runtime.js +1 -1
  255. package/dist/preview-api/index.d.ts +1 -1
  256. package/dist/preview-api/index.js +2 -1
  257. package/dist/preview-errors.d.ts +1 -1
  258. package/dist/react/docgen/docgen-worker.js +11 -12
  259. package/dist/react/entry-preview.js +2 -1
  260. package/dist/react/index.js +6 -4
  261. package/dist/react/preset.js +13 -14
  262. package/dist/react/preview.js +3 -2
  263. package/dist/react-native/bin/get-stories.js +8 -8
  264. package/dist/react-native/index.js +25 -211
  265. package/dist/react-native/metro/node.js +10 -9
  266. package/dist/react-native/metro/withStorybook.js +11 -10
  267. package/dist/react-native/scripts/generate.js +8 -8
  268. package/dist/react-vite/node/index.js +7 -7
  269. package/dist/react-vite/preset.js +7 -7
  270. package/dist/router/index.js +3 -1
  271. package/dist/server-errors.d.ts +1 -1
  272. package/dist/server-errors.js +9 -9
  273. package/dist/shared/open-service/index.d.ts +1 -1
  274. package/dist/shared/open-service/services/docgen/worker/docgen-worker.js +9 -9
  275. package/dist/telemetry/index.js +43 -45
  276. package/dist/test/index.js +808 -573
  277. package/dist/theming/create.js +2 -1
  278. package/dist/theming/index.js +22 -1
  279. package/dist/types/index.d.ts +1 -1
  280. package/package.json +21 -44
  281. package/dist/_browser-chunks/WithTooltip-V55S6YCY.js +0 -1619
  282. package/dist/_browser-chunks/chunk-5P4QA6MY.js +0 -20
  283. package/dist/_browser-chunks/chunk-UDQ3XQFC.js +0 -108
  284. package/dist/_node-chunks/chunk-6QQTZT3Z.js +0 -19
  285. package/dist/_node-chunks/chunk-BRD332PB.js +0 -3008
  286. package/dist/_node-chunks/chunk-E2XKJLXK.js +0 -4731
  287. package/dist/_node-chunks/chunk-F2LQJXAB.js +0 -29
  288. package/dist/_node-chunks/chunk-MCZZMBPA.js +0 -20
  289. package/dist/_node-chunks/chunk-MMFUHYSU.js +0 -23
  290. package/dist/_node-chunks/chunk-UGFY5LEG.js +0 -18
  291. package/dist/_node-chunks/chunk-UO5ZOCSQ.js +0 -662
  292. package/dist/_node-chunks/chunk-UW35FCXF.js +0 -20
  293. package/dist/_node-chunks/chunk-VMUXW2E2.js +0 -5414
  294. package/dist/_node-chunks/chunk-VNXE7UJL.js +0 -51
  295. package/dist/_node-chunks/chunk-VRJJ43P2.js +0 -11
  296. package/dist/_node-chunks/chunk-WCJUS7OC.js +0 -1877
  297. package/dist/_node-chunks/chunk-WMBMSNB7.js +0 -36
  298. package/dist/_node-chunks/chunk-YV2QBXU6.js +0 -3823
  299. package/dist/_node-chunks/chunk-ZZNBVMBU.js +0 -25
  300. package/dist/_node-chunks/dist-VFUGPNLK.js +0 -16
  301. package/dist/_node-chunks/globby-N7LO32D3.js +0 -2884
  302. package/dist/_node-chunks/jiti-SJDZ7LQB.js +0 -3848
  303. package/dist/_node-chunks/lib-4HD6QL5R.js +0 -366
  304. package/dist/_node-chunks/optimized-tests-LVKXZ3HQ.js +0 -22
  305. package/dist/_node-chunks/postinstallAddon-I6MAL6PW.js +0 -20
  306. package/dist/_node-chunks/session-id-6Z2RXBTG.js +0 -23
  307. package/dist/chunk-BfBzpgct.d.ts +0 -916
  308. package/dist/core-server/presets/common-manager.css +0 -170
  309. package/dist/manager/_manager-chunks/globals-runtime-Bon7UvQk.js +0 -9766
  310. package/dist/manager/_manager-chunks/globals-runtime-DDOIxI_l.js +0 -1584
  311. package/dist/manager/_manager-chunks/runtime-CuJiHYCp.js +0 -22
  312. package/dist/manager/_manager-chunks/runtime-DFhLVh8q.js +0 -456
  313. package/dist/preview/_chunks/runtime-BTPtVY1p.js +0 -1102
  314. package/dist/preview/_chunks/runtime-DZToXfvO.js +0 -9767
@@ -1,10 +1,10 @@
1
- import CJS_COMPAT_NODE_URL_1qqypd7gt14 from 'node:url';
2
- import CJS_COMPAT_NODE_PATH_1qqypd7gt14 from 'node:path';
3
- import CJS_COMPAT_NODE_MODULE_1qqypd7gt14 from "node:module";
1
+ import CJS_COMPAT_NODE_URL_j88npgqhy9 from 'node:url';
2
+ import CJS_COMPAT_NODE_PATH_j88npgqhy9 from 'node:path';
3
+ import CJS_COMPAT_NODE_MODULE_j88npgqhy9 from "node:module";
4
4
 
5
- var __filename = CJS_COMPAT_NODE_URL_1qqypd7gt14.fileURLToPath(import.meta.url);
6
- var __dirname = CJS_COMPAT_NODE_PATH_1qqypd7gt14.dirname(__filename);
7
- var require = CJS_COMPAT_NODE_MODULE_1qqypd7gt14.createRequire(import.meta.url);
5
+ var __filename = CJS_COMPAT_NODE_URL_j88npgqhy9.fileURLToPath(import.meta.url);
6
+ var __dirname = CJS_COMPAT_NODE_PATH_j88npgqhy9.dirname(__filename);
7
+ var require = CJS_COMPAT_NODE_MODULE_j88npgqhy9.createRequire(import.meta.url);
8
8
 
9
9
  // ------------------------------------------------------------
10
10
  // end of CJS compatibility banner, injected by Forkbook's esbuild configuration
@@ -12,35 +12,52 @@ var require = CJS_COMPAT_NODE_MODULE_1qqypd7gt14.createRequire(import.meta.url);
12
12
  import {
13
13
  esm_default,
14
14
  stringify
15
- } from "./chunk-ZPPVG262.js";
15
+ } from "./chunk-SZYMLCHF.js";
16
16
  import {
17
- visit
18
- } from "./chunk-AX2ALHBK.js";
17
+ EXIT,
18
+ convert,
19
+ visit,
20
+ visitParents
21
+ } from "./chunk-MF5BYASO.js";
19
22
  import {
20
23
  walk
21
- } from "./chunk-KCAPE7OJ.js";
24
+ } from "./chunk-PQLXHVWK.js";
22
25
  import {
23
26
  VFileMessage,
27
+ asciiAlpha,
28
+ asciiAlphanumeric,
29
+ asciiControl,
30
+ blankLine,
31
+ ccount,
32
+ classifyCharacter,
33
+ combineExtensions,
34
+ factorySpace,
24
35
  fromMarkdown,
36
+ markdownLineEnding,
37
+ markdownLineEndingOrSpace,
38
+ markdownSpace,
25
39
  mdxFromMarkdown,
26
40
  mdxToMarkdown,
27
41
  mdxjs,
28
42
  name,
43
+ normalizeIdentifier,
29
44
  normalizeUri,
30
45
  positionFromEstree,
31
- stringifyPosition
32
- } from "./chunk-LSP54OYM.js";
46
+ resolveAll,
47
+ splice,
48
+ stringifyPosition,
49
+ toString,
50
+ unicodePunctuation,
51
+ unicodeWhitespace
52
+ } from "./chunk-FTUQ7T3V.js";
33
53
  import {
34
54
  require_acorn_jsx
35
- } from "./chunk-RECGEABN.js";
36
- import {
37
- isPlainObject
38
- } from "./chunk-MMFUHYSU.js";
55
+ } from "./chunk-U6DHF3RM.js";
39
56
  import {
40
57
  __commonJS,
41
58
  __export,
42
59
  __toESM
43
- } from "./chunk-TZ2TZW2K.js";
60
+ } from "./chunk-NLPC2DDQ.js";
44
61
 
45
62
  // ../../node_modules/inline-style-parser/cjs/index.js
46
63
  var require_cjs = __commonJS({
@@ -240,7 +257,7 @@ var require_extend = __commonJS({
240
257
 
241
258
  // src/addon-docs/mdx-plugin.ts
242
259
  import { fileURLToPath as fileURLToPath2 } from "node:url";
243
- import { createFilter } from "@rollup/pluginutils";
260
+ import { createFilter } from "vite";
244
261
 
245
262
  // ../../node_modules/vfile/lib/minpath.js
246
263
  import { default as default2 } from "node:path";
@@ -400,8 +417,8 @@ var order = (
400
417
  * @returns {undefined}
401
418
  * Nothing.
402
419
  */
403
- set path(path) {
404
- isUrl(path) && (path = fileURLToPath(path)), assertNonEmpty(path, "path"), this.path !== path && this.history.push(path);
420
+ set path(path2) {
421
+ isUrl(path2) && (path2 = fileURLToPath(path2)), assertNonEmpty(path2, "path"), this.path !== path2 && this.history.push(path2);
405
422
  }
406
423
  /**
407
424
  * Get the stem (basename w/o extname) (example: `'index.min'`).
@@ -648,8 +665,8 @@ function assertNonEmpty(part, name2) {
648
665
  if (!part)
649
666
  throw new Error("`" + name2 + "` cannot be empty");
650
667
  }
651
- function assertPath(path, name2) {
652
- if (!path)
668
+ function assertPath(path2, name2) {
669
+ if (!path2)
653
670
  throw new Error("Setting `" + name2 + "` requires `path` to be set too");
654
671
  }
655
672
  function isUint8Array(value) {
@@ -772,8 +789,8 @@ function buildJsx(tree, options) {
772
789
  `).replace(/\n+/g, `
773
790
  `).replace(/\n+$/, "").replace(/^\n+/, "").replace(/\n/g, " ");
774
791
  if (value) {
775
- let text3 = { type: "Literal", value };
776
- create(child, text3), children.push(text3);
792
+ let text5 = { type: "Literal", value };
793
+ create(child, text5), children.push(text5);
777
794
  }
778
795
  } else
779
796
  child.type !== "JSXElement" && child.type !== "JSXFragment" && child.type, children.push(child);
@@ -900,21 +917,21 @@ function toProperty(node) {
900
917
  return create(node, replacement), replacement;
901
918
  }
902
919
  function toIdentifier(node) {
903
- let replace;
920
+ let replace2;
904
921
  if (node.type === "JSXMemberExpression") {
905
922
  let id = toIdentifier(node.property);
906
- replace = {
923
+ replace2 = {
907
924
  type: "MemberExpression",
908
925
  object: toIdentifier(node.object),
909
926
  property: id,
910
927
  computed: id.type === "Literal",
911
928
  optional: !1
912
929
  };
913
- } else node.type === "JSXNamespacedName" ? replace = {
930
+ } else node.type === "JSXNamespacedName" ? replace2 = {
914
931
  type: "Literal",
915
932
  value: node.namespace.name + ":" + node.name.name
916
- } : replace = name(node.name) ? { type: "Identifier", name: node.name } : { type: "Literal", value: node.name };
917
- return create(node, replace), replace;
933
+ } : replace2 = name(node.name) ? { type: "Identifier", name: node.name } : { type: "Literal", value: node.name };
934
+ return create(node, replace2), replace2;
918
935
  }
919
936
  function toMemberExpression(id) {
920
937
  let identifiers = id.split("."), index = -1, result;
@@ -1039,22 +1056,22 @@ function formatExpression(state, node, parentNode, isRightHand) {
1039
1056
  let { generator } = state;
1040
1057
  expressionNeedsParenthesis(state, node, parentNode, isRightHand) ? (state.write("("), generator[node.type](node, state), state.write(")")) : generator[node.type](node, state);
1041
1058
  }
1042
- function reindent(state, text3, indent, lineEnd) {
1043
- let lines = text3.split(`
1059
+ function reindent(state, text5, indent2, lineEnd) {
1060
+ let lines = text5.split(`
1044
1061
  `), end = lines.length - 1;
1045
1062
  if (state.write(lines[0].trim()), end > 0) {
1046
1063
  state.write(lineEnd);
1047
1064
  for (let i = 1; i < end; i++)
1048
- state.write(indent + lines[i].trim() + lineEnd);
1049
- state.write(indent + lines[end].trim());
1065
+ state.write(indent2 + lines[i].trim() + lineEnd);
1066
+ state.write(indent2 + lines[end].trim());
1050
1067
  }
1051
1068
  }
1052
- function formatComments(state, comments, indent, lineEnd) {
1069
+ function formatComments(state, comments, indent2, lineEnd) {
1053
1070
  let { length } = comments;
1054
1071
  for (let i = 0; i < length; i++) {
1055
1072
  let comment2 = comments[i];
1056
- state.write(indent), comment2.type[0] === "L" ? state.write("// " + comment2.value.trim() + `
1057
- `, comment2) : (state.write("/*"), reindent(state, comment2.value, indent, lineEnd), state.write("*/" + lineEnd));
1073
+ state.write(indent2), comment2.type[0] === "L" ? state.write("// " + comment2.value.trim() + `
1074
+ `, comment2) : (state.write("/*"), reindent(state, comment2.value, indent2, lineEnd), state.write("*/" + lineEnd));
1058
1075
  }
1059
1076
  }
1060
1077
  function hasCallExpression(node) {
@@ -1084,17 +1101,17 @@ var ForInStatement, FunctionDeclaration, RestElement, BinaryExpression, ArrayExp
1084
1101
  Default generator.
1085
1102
  */
1086
1103
  Program(node, state) {
1087
- let indent = state.indent.repeat(state.indentLevel), { lineEnd, writeComments } = state;
1088
- writeComments && node.comments != null && formatComments(state, node.comments, indent, lineEnd);
1104
+ let indent2 = state.indent.repeat(state.indentLevel), { lineEnd, writeComments } = state;
1105
+ writeComments && node.comments != null && formatComments(state, node.comments, indent2, lineEnd);
1089
1106
  let statements = node.body, { length } = statements;
1090
1107
  for (let i = 0; i < length; i++) {
1091
1108
  let statement = statements[i];
1092
- writeComments && statement.comments != null && formatComments(state, statement.comments, indent, lineEnd), state.write(indent), this[statement.type](statement, state), state.write(lineEnd);
1109
+ writeComments && statement.comments != null && formatComments(state, statement.comments, indent2, lineEnd), state.write(indent2), this[statement.type](statement, state), state.write(lineEnd);
1093
1110
  }
1094
- writeComments && node.trailingComments != null && formatComments(state, node.trailingComments, indent, lineEnd);
1111
+ writeComments && node.trailingComments != null && formatComments(state, node.trailingComments, indent2, lineEnd);
1095
1112
  },
1096
1113
  BlockStatement: BlockStatement = function(node, state) {
1097
- let indent = state.indent.repeat(state.indentLevel++), { lineEnd, writeComments } = state, statementIndent = indent + state.indent;
1114
+ let indent2 = state.indent.repeat(state.indentLevel++), { lineEnd, writeComments } = state, statementIndent = indent2 + state.indent;
1098
1115
  state.write("{");
1099
1116
  let statements = node.body;
1100
1117
  if (statements != null && statements.length > 0) {
@@ -1104,9 +1121,9 @@ var ForInStatement, FunctionDeclaration, RestElement, BinaryExpression, ArrayExp
1104
1121
  let statement = statements[i];
1105
1122
  writeComments && statement.comments != null && formatComments(state, statement.comments, statementIndent, lineEnd), state.write(statementIndent), this[statement.type](statement, state), state.write(lineEnd);
1106
1123
  }
1107
- state.write(indent);
1124
+ state.write(indent2);
1108
1125
  } else
1109
- writeComments && node.comments != null && (state.write(lineEnd), formatComments(state, node.comments, statementIndent, lineEnd), state.write(indent));
1126
+ writeComments && node.comments != null && (state.write(lineEnd), formatComments(state, node.comments, statementIndent, lineEnd), state.write(indent2));
1110
1127
  writeComments && node.trailingComments != null && formatComments(state, node.trailingComments, statementIndent, lineEnd), state.write("}"), state.indentLevel--;
1111
1128
  },
1112
1129
  ClassBody: BlockStatement,
@@ -1136,9 +1153,9 @@ var ForInStatement, FunctionDeclaration, RestElement, BinaryExpression, ArrayExp
1136
1153
  state.write("with ("), this[node.object.type](node.object, state), state.write(") "), this[node.body.type](node.body, state);
1137
1154
  },
1138
1155
  SwitchStatement(node, state) {
1139
- let indent = state.indent.repeat(state.indentLevel++), { lineEnd, writeComments } = state;
1156
+ let indent2 = state.indent.repeat(state.indentLevel++), { lineEnd, writeComments } = state;
1140
1157
  state.indentLevel++;
1141
- let caseIndent = indent + state.indent, statementIndent = caseIndent + state.indent;
1158
+ let caseIndent = indent2 + state.indent, statementIndent = caseIndent + state.indent;
1142
1159
  state.write("switch ("), this[node.discriminant.type](node.discriminant, state), state.write(") {" + lineEnd);
1143
1160
  let { cases: occurences } = node, { length: occurencesCount } = occurences;
1144
1161
  for (let i = 0; i < occurencesCount; i++) {
@@ -1150,7 +1167,7 @@ var ForInStatement, FunctionDeclaration, RestElement, BinaryExpression, ArrayExp
1150
1167
  writeComments && statement.comments != null && formatComments(state, statement.comments, statementIndent, lineEnd), state.write(statementIndent), this[statement.type](statement, state), state.write(lineEnd);
1151
1168
  }
1152
1169
  }
1153
- state.indentLevel -= 2, state.write(indent + "}");
1170
+ state.indentLevel -= 2, state.write(indent2 + "}");
1154
1171
  },
1155
1172
  ReturnStatement(node, state) {
1156
1173
  state.write("return"), node.argument && (state.write(" "), this[node.argument.type](node.argument, state)), state.write(";");
@@ -1346,7 +1363,7 @@ var ForInStatement, FunctionDeclaration, RestElement, BinaryExpression, ArrayExp
1346
1363
  },
1347
1364
  ArrayPattern: ArrayExpression,
1348
1365
  ObjectExpression(node, state) {
1349
- let indent = state.indent.repeat(state.indentLevel++), { lineEnd, writeComments } = state, propertyIndent = indent + state.indent;
1366
+ let indent2 = state.indent.repeat(state.indentLevel++), { lineEnd, writeComments } = state, propertyIndent = indent2 + state.indent;
1350
1367
  if (state.write("{"), node.properties.length > 0) {
1351
1368
  state.write(lineEnd), writeComments && node.comments != null && formatComments(state, node.comments, propertyIndent, lineEnd);
1352
1369
  let comma = "," + lineEnd, { properties } = node, { length } = properties;
@@ -1357,8 +1374,8 @@ var ForInStatement, FunctionDeclaration, RestElement, BinaryExpression, ArrayExp
1357
1374
  else
1358
1375
  break;
1359
1376
  }
1360
- state.write(lineEnd), writeComments && node.trailingComments != null && formatComments(state, node.trailingComments, propertyIndent, lineEnd), state.write(indent + "}");
1361
- } else writeComments ? node.comments != null ? (state.write(lineEnd), formatComments(state, node.comments, propertyIndent, lineEnd), node.trailingComments != null && formatComments(state, node.trailingComments, propertyIndent, lineEnd), state.write(indent + "}")) : node.trailingComments != null ? (state.write(lineEnd), formatComments(state, node.trailingComments, propertyIndent, lineEnd), state.write(indent + "}")) : state.write("}") : state.write("}");
1377
+ state.write(lineEnd), writeComments && node.trailingComments != null && formatComments(state, node.trailingComments, propertyIndent, lineEnd), state.write(indent2 + "}");
1378
+ } else writeComments ? node.comments != null ? (state.write(lineEnd), formatComments(state, node.comments, propertyIndent, lineEnd), node.trailingComments != null && formatComments(state, node.trailingComments, propertyIndent, lineEnd), state.write(indent2 + "}")) : node.trailingComments != null ? (state.write(lineEnd), formatComments(state, node.trailingComments, propertyIndent, lineEnd), state.write(indent2 + "}")) : state.write("}") : state.write("}");
1362
1379
  state.indentLevel--;
1363
1380
  },
1364
1381
  Property(node, state) {
@@ -1459,19 +1476,19 @@ var State = class {
1459
1476
  source: setup.sourceMap.file || setup.sourceMap._file
1460
1477
  });
1461
1478
  }
1462
- write(code2) {
1463
- this.output += code2;
1479
+ write(code5) {
1480
+ this.output += code5;
1464
1481
  }
1465
- writeToStream(code2) {
1466
- this.output.write(code2);
1482
+ writeToStream(code5) {
1483
+ this.output.write(code5);
1467
1484
  }
1468
- writeAndMap(code2, node) {
1469
- this.output += code2, this.map(code2, node);
1485
+ writeAndMap(code5, node) {
1486
+ this.output += code5, this.map(code5, node);
1470
1487
  }
1471
- writeToStreamAndMap(code2, node) {
1472
- this.output.write(code2), this.map(code2, node);
1488
+ writeToStreamAndMap(code5, node) {
1489
+ this.output.write(code5), this.map(code5, node);
1473
1490
  }
1474
- map(code2, node) {
1491
+ map(code5, node) {
1475
1492
  if (node != null) {
1476
1493
  let { type } = node;
1477
1494
  if (type[0] === "L" && type[2] === "n") {
@@ -1483,16 +1500,16 @@ var State = class {
1483
1500
  mapping.original = node.loc.start, mapping.name = node.name, this.sourceMap.addMapping(mapping);
1484
1501
  }
1485
1502
  if (type[0] === "T" && type[8] === "E" || type[0] === "L" && type[1] === "i" && typeof node.value == "string") {
1486
- let { length: length2 } = code2, { column, line } = this;
1503
+ let { length: length2 } = code5, { column, line } = this;
1487
1504
  for (let i = 0; i < length2; i++)
1488
- code2[i] === `
1505
+ code5[i] === `
1489
1506
  ` ? (column = 0, line++) : column++;
1490
1507
  this.column = column, this.line = line;
1491
1508
  return;
1492
1509
  }
1493
1510
  }
1494
- let { length } = code2, { lineEnd } = this;
1495
- length > 0 && (this.lineEndSize > 0 && (lineEnd.length === 1 ? code2[length - 1] === lineEnd : code2.endsWith(lineEnd)) ? (this.line += this.lineEndSize, this.column = 0) : this.column += length);
1511
+ let { length } = code5, { lineEnd } = this;
1512
+ length > 0 && (this.lineEndSize > 0 && (lineEnd.length === 1 ? code5[length - 1] === lineEnd : code5.endsWith(lineEnd)) ? (this.line += this.lineEndSize, this.column = 0) : this.column += length);
1496
1513
  }
1497
1514
  toString() {
1498
1515
  return this.output;
@@ -1514,8 +1531,8 @@ function toJs(tree, options) {
1514
1531
  generator: { ...GENERATOR, ...handlers3 },
1515
1532
  sourceMap: sourceMap || void 0
1516
1533
  }
1517
- ), map = sourceMap ? sourceMap.toJSON() : void 0;
1518
- return { value, map };
1534
+ ), map3 = sourceMap ? sourceMap.toJSON() : void 0;
1535
+ return { value, map: map3 };
1519
1536
  }
1520
1537
 
1521
1538
  // ../../node_modules/estree-util-to-js/lib/jsx.js
@@ -1671,8 +1688,8 @@ Schema.prototype.space = void 0;
1671
1688
  // ../../node_modules/property-information/lib/util/merge.js
1672
1689
  function merge(definitions, space) {
1673
1690
  let property = {}, normal = {};
1674
- for (let definition of definitions)
1675
- Object.assign(property, definition.property), Object.assign(normal, definition.normal);
1691
+ for (let definition2 of definitions)
1692
+ Object.assign(property, definition2.property), Object.assign(normal, definition2.normal);
1676
1693
  return new Schema(property, normal, space);
1677
1694
  }
1678
1695
 
@@ -1757,18 +1774,18 @@ function mark(values, key, value) {
1757
1774
  }
1758
1775
 
1759
1776
  // ../../node_modules/property-information/lib/util/create.js
1760
- function create2(definition) {
1777
+ function create2(definition2) {
1761
1778
  let properties = {}, normals = {};
1762
- for (let [property, value] of Object.entries(definition.properties)) {
1779
+ for (let [property, value] of Object.entries(definition2.properties)) {
1763
1780
  let info = new DefinedInfo(
1764
1781
  property,
1765
- definition.transform(definition.attributes || {}, property),
1782
+ definition2.transform(definition2.attributes || {}, property),
1766
1783
  value,
1767
- definition.space
1784
+ definition2.space
1768
1785
  );
1769
- definition.mustUseProperty && definition.mustUseProperty.includes(property) && (info.mustUseProperty = !0), properties[property] = info, normals[normalize(property)] = property, normals[normalize(info.attribute)] = property;
1786
+ definition2.mustUseProperty && definition2.mustUseProperty.includes(property) && (info.mustUseProperty = !0), properties[property] = info, normals[normalize(property)] = property, normals[normalize(info.attribute)] = property;
1770
1787
  }
1771
- return new Schema(properties, normals, definition.space);
1788
+ return new Schema(properties, normals, definition2.space);
1772
1789
  }
1773
1790
 
1774
1791
  // ../../node_modules/property-information/lib/aria.js
@@ -2991,8 +3008,8 @@ function toDash($0) {
2991
3008
  // ../../node_modules/estree-util-attach-comments/lib/index.js
2992
3009
  var own2 = {}.hasOwnProperty, emptyComments = [];
2993
3010
  function attachComments(tree, comments) {
2994
- let list2 = comments ? [...comments].sort(compare) : emptyComments;
2995
- list2.length > 0 && walk2(tree, { comments: list2, index: 0 });
3011
+ let list3 = comments ? [...comments].sort(compare) : emptyComments;
3012
+ list3.length > 0 && walk2(tree, { comments: list3, index: 0 });
2996
3013
  }
2997
3014
  function walk2(node, state) {
2998
3015
  if (state.index === state.comments.length)
@@ -3210,11 +3227,11 @@ function createState(options) {
3210
3227
  all,
3211
3228
  createJsxAttributeName,
3212
3229
  createJsxElementName,
3213
- handle,
3230
+ handle: handle2,
3214
3231
  inherit,
3215
3232
  patch
3216
3233
  };
3217
- function handle(node) {
3234
+ function handle2(node) {
3218
3235
  return one(node, this);
3219
3236
  }
3220
3237
  }
@@ -3397,7 +3414,7 @@ function emphasis(state, node) {
3397
3414
  function footnoteReference(state, node) {
3398
3415
  let clobberPrefix = typeof state.options.clobberPrefix == "string" ? state.options.clobberPrefix : "user-content-", id = String(node.identifier).toUpperCase(), safeId = normalizeUri(id.toLowerCase()), index = state.footnoteOrder.indexOf(id), counter, reuseCounter = state.footnoteCounts.get(id);
3399
3416
  reuseCounter === void 0 ? (reuseCounter = 0, state.footnoteOrder.push(id), counter = state.footnoteOrder.length) : counter = index + 1, reuseCounter += 1, state.footnoteCounts.set(id, reuseCounter);
3400
- let link2 = {
3417
+ let link3 = {
3401
3418
  type: "element",
3402
3419
  tagName: "a",
3403
3420
  properties: {
@@ -3408,12 +3425,12 @@ function footnoteReference(state, node) {
3408
3425
  },
3409
3426
  children: [{ type: "text", value: String(counter) }]
3410
3427
  };
3411
- state.patch(node, link2);
3428
+ state.patch(node, link3);
3412
3429
  let sup = {
3413
3430
  type: "element",
3414
3431
  tagName: "sup",
3415
3432
  properties: {},
3416
- children: [link2]
3433
+ children: [link3]
3417
3434
  };
3418
3435
  return state.patch(node, sup), state.applyData(node, sup);
3419
3436
  }
@@ -3450,11 +3467,11 @@ function revert(state, node) {
3450
3467
 
3451
3468
  // ../../node_modules/mdast-util-to-hast/lib/handlers/image-reference.js
3452
3469
  function imageReference(state, node) {
3453
- let id = String(node.identifier).toUpperCase(), definition = state.definitionById.get(id);
3454
- if (!definition)
3470
+ let id = String(node.identifier).toUpperCase(), definition2 = state.definitionById.get(id);
3471
+ if (!definition2)
3455
3472
  return revert(state, node);
3456
- let properties = { src: normalizeUri(definition.url || ""), alt: node.alt };
3457
- definition.title !== null && definition.title !== void 0 && (properties.title = definition.title);
3473
+ let properties = { src: normalizeUri(definition2.url || ""), alt: node.alt };
3474
+ definition2.title !== null && definition2.title !== void 0 && (properties.title = definition2.title);
3458
3475
  let result = { type: "element", tagName: "img", properties, children: [] };
3459
3476
  return state.patch(node, result), state.applyData(node, result);
3460
3477
  }
@@ -3469,24 +3486,24 @@ function image(state, node) {
3469
3486
 
3470
3487
  // ../../node_modules/mdast-util-to-hast/lib/handlers/inline-code.js
3471
3488
  function inlineCode(state, node) {
3472
- let text3 = { type: "text", value: node.value.replace(/\r?\n|\r/g, " ") };
3473
- state.patch(node, text3);
3489
+ let text5 = { type: "text", value: node.value.replace(/\r?\n|\r/g, " ") };
3490
+ state.patch(node, text5);
3474
3491
  let result = {
3475
3492
  type: "element",
3476
3493
  tagName: "code",
3477
3494
  properties: {},
3478
- children: [text3]
3495
+ children: [text5]
3479
3496
  };
3480
3497
  return state.patch(node, result), state.applyData(node, result);
3481
3498
  }
3482
3499
 
3483
3500
  // ../../node_modules/mdast-util-to-hast/lib/handlers/link-reference.js
3484
3501
  function linkReference(state, node) {
3485
- let id = String(node.identifier).toUpperCase(), definition = state.definitionById.get(id);
3486
- if (!definition)
3502
+ let id = String(node.identifier).toUpperCase(), definition2 = state.definitionById.get(id);
3503
+ if (!definition2)
3487
3504
  return revert(state, node);
3488
- let properties = { href: normalizeUri(definition.url || "") };
3489
- definition.title !== null && definition.title !== void 0 && (properties.title = definition.title);
3505
+ let properties = { href: normalizeUri(definition2.url || "") };
3506
+ definition2.title !== null && definition2.title !== void 0 && (properties.title = definition2.title);
3490
3507
  let result = {
3491
3508
  type: "element",
3492
3509
  tagName: "a",
@@ -3513,8 +3530,8 @@ function link(state, node) {
3513
3530
  function listItem(state, node, parent) {
3514
3531
  let results = state.all(node), loose = parent ? listLoose(parent) : listItemLoose(node), properties = {}, children = [];
3515
3532
  if (typeof node.checked == "boolean") {
3516
- let head = results[0], paragraph2;
3517
- head && head.type === "element" && head.tagName === "p" ? paragraph2 = head : (paragraph2 = { type: "element", tagName: "p", properties: {}, children: [] }, results.unshift(paragraph2)), paragraph2.children.length > 0 && paragraph2.children.unshift({ type: "text", value: " " }), paragraph2.children.unshift({
3533
+ let head = results[0], paragraph3;
3534
+ head && head.type === "element" && head.tagName === "p" ? paragraph3 = head : (paragraph3 = { type: "element", tagName: "p", properties: {}, children: [] }, results.unshift(paragraph3)), paragraph3.children.length > 0 && paragraph3.children.unshift({ type: "text", value: " " }), paragraph3.children.unshift({
3518
3535
  type: "element",
3519
3536
  tagName: "input",
3520
3537
  properties: { type: "checkbox", checked: node.checked, disabled: !0 },
@@ -3668,14 +3685,14 @@ function trimLines(value) {
3668
3685
  function trimLine(value, start, end) {
3669
3686
  let startIndex = 0, endIndex = value.length;
3670
3687
  if (start) {
3671
- let code2 = value.codePointAt(startIndex);
3672
- for (; code2 === 9 || code2 === 32; )
3673
- startIndex++, code2 = value.codePointAt(startIndex);
3688
+ let code5 = value.codePointAt(startIndex);
3689
+ for (; code5 === 9 || code5 === 32; )
3690
+ startIndex++, code5 = value.codePointAt(startIndex);
3674
3691
  }
3675
3692
  if (end) {
3676
- let code2 = value.codePointAt(endIndex - 1);
3677
- for (; code2 === 9 || code2 === 32; )
3678
- endIndex--, code2 = value.codePointAt(endIndex - 1);
3693
+ let code5 = value.codePointAt(endIndex - 1);
3694
+ for (; code5 === 9 || code5 === 32; )
3695
+ endIndex--, code5 = value.codePointAt(endIndex - 1);
3679
3696
  }
3680
3697
  return endIndex > startIndex ? value.slice(startIndex, endIndex) : "";
3681
3698
  }
@@ -3749,12 +3766,12 @@ function footer(state) {
3749
3766
  className: ["sr-only"]
3750
3767
  }, listItems = [], referenceIndex = -1;
3751
3768
  for (; ++referenceIndex < state.footnoteOrder.length; ) {
3752
- let definition = state.footnoteById.get(
3769
+ let definition2 = state.footnoteById.get(
3753
3770
  state.footnoteOrder[referenceIndex]
3754
3771
  );
3755
- if (!definition)
3772
+ if (!definition2)
3756
3773
  continue;
3757
- let content = state.all(definition), id = String(definition.identifier).toUpperCase(), safeId = normalizeUri(id.toLowerCase()), rereferenceIndex = 0, backReferences = [], counts = state.footnoteCounts.get(id);
3774
+ let content = state.all(definition2), id = String(definition2.identifier).toUpperCase(), safeId = normalizeUri(id.toLowerCase()), rereferenceIndex = 0, backReferences = [], counts = state.footnoteCounts.get(id);
3758
3775
  for (; counts !== void 0 && ++rereferenceIndex <= counts; ) {
3759
3776
  backReferences.length > 0 && backReferences.push({ type: "text", value: " " });
3760
3777
  let children = typeof footnoteBackContent == "string" ? footnoteBackContent : footnoteBackContent(referenceIndex, rereferenceIndex);
@@ -3776,13 +3793,13 @@ function footer(state) {
3776
3793
  tailTail && tailTail.type === "text" ? tailTail.value += " " : tail.children.push({ type: "text", value: " " }), tail.children.push(...backReferences);
3777
3794
  } else
3778
3795
  content.push(...backReferences);
3779
- let listItem2 = {
3796
+ let listItem3 = {
3780
3797
  type: "element",
3781
3798
  tagName: "li",
3782
3799
  properties: { id: clobberPrefix + "fn-" + safeId },
3783
3800
  children: state.wrap(content, !0)
3784
3801
  };
3785
- state.patch(definition, listItem2), listItems.push(listItem2);
3802
+ state.patch(definition2, listItem3), listItems.push(listItem3);
3786
3803
  }
3787
3804
  if (listItems.length !== 0)
3788
3805
  return {
@@ -3831,14 +3848,14 @@ function createState2(tree, options) {
3831
3848
  };
3832
3849
  return visit(tree, function(node) {
3833
3850
  if (node.type === "definition" || node.type === "footnoteDefinition") {
3834
- let map = node.type === "definition" ? definitionById : footnoteById, id = String(node.identifier).toUpperCase();
3835
- map.has(id) || map.set(id, node);
3851
+ let map3 = node.type === "definition" ? definitionById : footnoteById, id = String(node.identifier).toUpperCase();
3852
+ map3.has(id) || map3.set(id, node);
3836
3853
  }
3837
3854
  }), state;
3838
3855
  function one(node, parent) {
3839
- let type = node.type, handle = state.handlers[type];
3840
- if (own5.call(state.handlers, type) && handle)
3841
- return handle(state, node, parent);
3856
+ let type = node.type, handle2 = state.handlers[type];
3857
+ if (own5.call(state.handlers, type) && handle2)
3858
+ return handle2(state, node, parent);
3842
3859
  if (state.options.passThrough && state.options.passThrough.includes(type)) {
3843
3860
  if ("children" in node) {
3844
3861
  let { children, ...shallow } = node, result = esm_default(shallow);
@@ -3903,9 +3920,9 @@ function wrap(nodes, loose) {
3903
3920
  ` }), result;
3904
3921
  }
3905
3922
  function trimMarkdownSpaceStart(value) {
3906
- let index = 0, code2 = value.charCodeAt(index);
3907
- for (; code2 === 9 || code2 === 32; )
3908
- index++, code2 = value.charCodeAt(index);
3923
+ let index = 0, code5 = value.charCodeAt(index);
3924
+ for (; code5 === 9 || code5 === 32; )
3925
+ index++, code5 = value.charCodeAt(index);
3909
3926
  return value.slice(index);
3910
3927
  }
3911
3928
 
@@ -3941,6 +3958,14 @@ function bail(error) {
3941
3958
  // ../../node_modules/unified/lib/index.js
3942
3959
  var import_extend = __toESM(require_extend(), 1);
3943
3960
 
3961
+ // ../../node_modules/is-plain-obj/index.js
3962
+ function isPlainObject(value) {
3963
+ if (typeof value != "object" || value === null)
3964
+ return !1;
3965
+ let prototype = Object.getPrototypeOf(value);
3966
+ return (prototype === null || prototype === Object.prototype || Object.getPrototypeOf(prototype) === null) && !(Symbol.toStringTag in value) && !(Symbol.iterator in value);
3967
+ }
3968
+
3944
3969
  // ../../node_modules/trough/lib/index.js
3945
3970
  function trough() {
3946
3971
  let fns = [], pipeline = { run: run2, use };
@@ -4643,7 +4668,7 @@ function recmaBuildJsxTransform(options) {
4643
4668
  // ../../node_modules/estree-util-scope/lib/index.js
4644
4669
  function createVisitors() {
4645
4670
  let scopes = [{ block: !1, defined: [] }];
4646
- return { enter, exit, scopes };
4671
+ return { enter, exit: exit2, scopes };
4647
4672
  function enter(node) {
4648
4673
  if (node.type === "ArrowFunctionExpression") {
4649
4674
  scopes.push({ block: !1, defined: [] });
@@ -4670,7 +4695,7 @@ function createVisitors() {
4670
4695
  for (let declaration of node.declarations)
4671
4696
  definePattern(declaration.id, node.kind !== "var");
4672
4697
  }
4673
- function exit(node) {
4698
+ function exit2(node) {
4674
4699
  if (node.type === "ArrowFunctionExpression" || node.type === "FunctionDeclaration" || node.type === "FunctionExpression") {
4675
4700
  let scope = scopes.pop();
4676
4701
  scope.block;
@@ -4898,7 +4923,7 @@ function recmaDocument(options) {
4898
4923
  handleEsm(node);
4899
4924
  }
4900
4925
  function handleEsm(node) {
4901
- let replace, init;
4926
+ let replace2, init;
4902
4927
  if (outputFormat === "function-body")
4903
4928
  if (
4904
4929
  // Always have a source:
@@ -4907,7 +4932,7 @@ function recmaDocument(options) {
4907
4932
  ) {
4908
4933
  node.source;
4909
4934
  let argument = { type: "ImportExpression", source: node.source };
4910
- create3(node, argument), init = { type: "AwaitExpression", argument }, (node.type === "ImportDeclaration" || node.type === "ExportNamedDeclaration") && node.specifiers.length === 0 ? replace = { type: "ExpressionStatement", expression: init } : replace = {
4935
+ create3(node, argument), init = { type: "AwaitExpression", argument }, (node.type === "ImportDeclaration" || node.type === "ExportNamedDeclaration") && node.specifiers.length === 0 ? replace2 = { type: "ExpressionStatement", expression: init } : replace2 = {
4911
4936
  type: "VariableDeclaration",
4912
4937
  kind: "const",
4913
4938
  declarations: node.type === "ExportAllDeclaration" ? [
@@ -4922,7 +4947,7 @@ function recmaDocument(options) {
4922
4947
  ] : specifiersToDeclarations(node.specifiers, init)
4923
4948
  };
4924
4949
  } else if (node.declaration)
4925
- replace = node.declaration;
4950
+ replace2 = node.declaration;
4926
4951
  else {
4927
4952
  let declarators = [];
4928
4953
  for (let specifier of node.specifiers)
@@ -4931,15 +4956,15 @@ function recmaDocument(options) {
4931
4956
  id: specifier.exported,
4932
4957
  init: specifier.local
4933
4958
  });
4934
- declarators.length > 0 && (replace = {
4959
+ declarators.length > 0 && (replace2 = {
4935
4960
  type: "VariableDeclaration",
4936
4961
  kind: "const",
4937
4962
  declarations: declarators
4938
4963
  });
4939
4964
  }
4940
4965
  else
4941
- replace = node;
4942
- replace && replacement.push(replace);
4966
+ replace2 = node;
4967
+ replace2 && replacement.push(replace2);
4943
4968
  }
4944
4969
  };
4945
4970
  function createMdxContent(content, outputFormat2, hasInternalLayout) {
@@ -5514,10 +5539,10 @@ function rehypeRemoveRaw() {
5514
5539
  var js = /\s+/g, html4 = /[\t\n\v\f\r ]+/g;
5515
5540
  function collapseWhiteSpace(value, options) {
5516
5541
  options ? typeof options == "string" && (options = { style: options }) : options = {};
5517
- let replace = options.preserveLineEndings ? replaceLineEnding : replaceSpace;
5542
+ let replace2 = options.preserveLineEndings ? replaceLineEnding : replaceSpace;
5518
5543
  return String(value).replace(
5519
5544
  options.style === "html" ? html4 : js,
5520
- options.trim ? trimFactory(replace) : replace
5545
+ options.trim ? trimFactory(replace2) : replace2
5521
5546
  );
5522
5547
  }
5523
5548
  function replaceLineEnding(value) {
@@ -5527,10 +5552,10 @@ function replaceLineEnding(value) {
5527
5552
  function replaceSpace() {
5528
5553
  return " ";
5529
5554
  }
5530
- function trimFactory(replace) {
5555
+ function trimFactory(replace2) {
5531
5556
  return dropOrReplace;
5532
5557
  function dropOrReplace(value, index, all2) {
5533
- return index === 0 || index + value.length === all2.length ? "" : replace(value);
5558
+ return index === 0 || index + value.length === all2.length ? "" : replace2(value);
5534
5559
  }
5535
5560
  }
5536
5561
 
@@ -5624,26 +5649,2134 @@ function compile(vfileCompatible, compileOptions) {
5624
5649
 
5625
5650
  // ../../node_modules/@mdx-js/mdx/lib/run.js
5626
5651
  var AsyncFunction = Object.getPrototypeOf(run).constructor;
5627
- async function run(code2, options) {
5628
- return new AsyncFunction(String(code2))(options);
5652
+ async function run(code5, options) {
5653
+ return new AsyncFunction(String(code5))(options);
5654
+ }
5655
+
5656
+ // ../../node_modules/mdast-util-find-and-replace/node_modules/escape-string-regexp/index.js
5657
+ function escapeStringRegexp(string) {
5658
+ if (typeof string != "string")
5659
+ throw new TypeError("Expected a string");
5660
+ return string.replace(/[|\\{}()[\]^$+*?.]/g, "\\$&").replace(/-/g, "\\x2d");
5661
+ }
5662
+
5663
+ // ../../node_modules/mdast-util-find-and-replace/lib/index.js
5664
+ function findAndReplace(tree, list3, options) {
5665
+ let ignored = convert((options || {}).ignore || []), pairs = toPairs(list3), pairIndex = -1;
5666
+ for (; ++pairIndex < pairs.length; )
5667
+ visitParents(tree, "text", visitor);
5668
+ function visitor(node, parents) {
5669
+ let index = -1, grandparent;
5670
+ for (; ++index < parents.length; ) {
5671
+ let parent = parents[index], siblings = grandparent ? grandparent.children : void 0;
5672
+ if (ignored(
5673
+ parent,
5674
+ siblings ? siblings.indexOf(parent) : void 0,
5675
+ grandparent
5676
+ ))
5677
+ return;
5678
+ grandparent = parent;
5679
+ }
5680
+ if (grandparent)
5681
+ return handler(node, parents);
5682
+ }
5683
+ function handler(node, parents) {
5684
+ let parent = parents[parents.length - 1], find2 = pairs[pairIndex][0], replace2 = pairs[pairIndex][1], start = 0, index = parent.children.indexOf(node), change = !1, nodes = [];
5685
+ find2.lastIndex = 0;
5686
+ let match = find2.exec(node.value);
5687
+ for (; match; ) {
5688
+ let position2 = match.index, matchObject = {
5689
+ index: match.index,
5690
+ input: match.input,
5691
+ stack: [...parents, node]
5692
+ }, value = replace2(...match, matchObject);
5693
+ if (typeof value == "string" && (value = value.length > 0 ? { type: "text", value } : void 0), value === !1)
5694
+ find2.lastIndex = position2 + 1;
5695
+ else {
5696
+ if (start !== position2 && add({ type: "text", value: node.value.slice(start, position2) }), Array.isArray(value))
5697
+ for (let child of value) add(child);
5698
+ else value && add(value);
5699
+ start = position2 + match[0].length, change = !0;
5700
+ }
5701
+ if (!find2.global)
5702
+ break;
5703
+ match = find2.exec(node.value);
5704
+ }
5705
+ return change ? (start < node.value.length && add({ type: "text", value: node.value.slice(start) }), parent.children.splice(index, 1, ...nodes)) : nodes = [node], index + nodes.length;
5706
+ function add(child) {
5707
+ let previous2 = nodes[nodes.length - 1];
5708
+ previous2 && previous2.type === "text" && child.type === "text" ? previous2.value += child.value : nodes.push(child);
5709
+ }
5710
+ }
5711
+ }
5712
+ function toPairs(tupleOrList) {
5713
+ if (!Array.isArray(tupleOrList))
5714
+ throw new TypeError("Expected find and replace tuple or list of tuples");
5715
+ let result = [], list3 = !tupleOrList[0] || Array.isArray(tupleOrList[0]) ? tupleOrList : [tupleOrList], index = -1;
5716
+ for (; ++index < list3.length; ) {
5717
+ let tuple = list3[index];
5718
+ result.push([toExpression(tuple[0]), toFunction(tuple[1])]);
5719
+ }
5720
+ return result;
5721
+ }
5722
+ function toExpression(find2) {
5723
+ return typeof find2 == "string" ? new RegExp(escapeStringRegexp(find2), "g") : find2;
5724
+ }
5725
+ function toFunction(replace2) {
5726
+ return typeof replace2 == "function" ? replace2 : function() {
5727
+ return replace2;
5728
+ };
5729
+ }
5730
+
5731
+ // ../../node_modules/mdast-util-gfm-autolink-literal/lib/index.js
5732
+ var inConstruct = "phrasing", notInConstruct = ["autolink", "link", "image", "label"];
5733
+ function gfmAutolinkLiteralFromMarkdown() {
5734
+ return {
5735
+ transforms: [transformGfmAutolinkLiterals],
5736
+ enter: {
5737
+ literalAutolink: enterLiteralAutolink,
5738
+ literalAutolinkEmail: enterLiteralAutolinkValue,
5739
+ literalAutolinkHttp: enterLiteralAutolinkValue,
5740
+ literalAutolinkWww: enterLiteralAutolinkValue
5741
+ },
5742
+ exit: {
5743
+ literalAutolink: exitLiteralAutolink,
5744
+ literalAutolinkEmail: exitLiteralAutolinkEmail,
5745
+ literalAutolinkHttp: exitLiteralAutolinkHttp,
5746
+ literalAutolinkWww: exitLiteralAutolinkWww
5747
+ }
5748
+ };
5749
+ }
5750
+ function gfmAutolinkLiteralToMarkdown() {
5751
+ return {
5752
+ unsafe: [
5753
+ {
5754
+ character: "@",
5755
+ before: "[+\\-.\\w]",
5756
+ after: "[\\-.\\w]",
5757
+ inConstruct,
5758
+ notInConstruct
5759
+ },
5760
+ {
5761
+ character: ".",
5762
+ before: "[Ww]",
5763
+ after: "[\\-.\\w]",
5764
+ inConstruct,
5765
+ notInConstruct
5766
+ },
5767
+ {
5768
+ character: ":",
5769
+ before: "[ps]",
5770
+ after: "\\/",
5771
+ inConstruct,
5772
+ notInConstruct
5773
+ }
5774
+ ]
5775
+ };
5776
+ }
5777
+ function enterLiteralAutolink(token) {
5778
+ this.enter({ type: "link", title: null, url: "", children: [] }, token);
5779
+ }
5780
+ function enterLiteralAutolinkValue(token) {
5781
+ this.config.enter.autolinkProtocol.call(this, token);
5782
+ }
5783
+ function exitLiteralAutolinkHttp(token) {
5784
+ this.config.exit.autolinkProtocol.call(this, token);
5785
+ }
5786
+ function exitLiteralAutolinkWww(token) {
5787
+ this.config.exit.data.call(this, token);
5788
+ let node = this.stack[this.stack.length - 1];
5789
+ node.type, node.url = "http://" + this.sliceSerialize(token);
5790
+ }
5791
+ function exitLiteralAutolinkEmail(token) {
5792
+ this.config.exit.autolinkEmail.call(this, token);
5793
+ }
5794
+ function exitLiteralAutolink(token) {
5795
+ this.exit(token);
5796
+ }
5797
+ function transformGfmAutolinkLiterals(tree) {
5798
+ findAndReplace(
5799
+ tree,
5800
+ [
5801
+ [/(https?:\/\/|www(?=\.))([-.\w]+)([^ \t\r\n]*)/gi, findUrl],
5802
+ [new RegExp("(?<=^|\\s|\\p{P}|\\p{S})([-.\\w+]+)@([-\\w]+(?:\\.[-\\w]+)+)", "gu"), findEmail]
5803
+ ],
5804
+ { ignore: ["link", "linkReference"] }
5805
+ );
5806
+ }
5807
+ function findUrl(_, protocol, domain2, path2, match) {
5808
+ let prefix = "";
5809
+ if (!previous(match) || (/^w/i.test(protocol) && (domain2 = protocol + domain2, protocol = "", prefix = "http://"), !isCorrectDomain(domain2)))
5810
+ return !1;
5811
+ let parts = splitUrl(domain2 + path2);
5812
+ if (!parts[0]) return !1;
5813
+ let result = {
5814
+ type: "link",
5815
+ title: null,
5816
+ url: prefix + protocol + parts[0],
5817
+ children: [{ type: "text", value: protocol + parts[0] }]
5818
+ };
5819
+ return parts[1] ? [result, { type: "text", value: parts[1] }] : result;
5820
+ }
5821
+ function findEmail(_, atext, label, match) {
5822
+ return (
5823
+ // Not an expected previous character.
5824
+ !previous(match, !0) || // Label ends in not allowed character.
5825
+ /[-\d_]$/.test(label) ? !1 : {
5826
+ type: "link",
5827
+ title: null,
5828
+ url: "mailto:" + atext + "@" + label,
5829
+ children: [{ type: "text", value: atext + "@" + label }]
5830
+ }
5831
+ );
5832
+ }
5833
+ function isCorrectDomain(domain2) {
5834
+ let parts = domain2.split(".");
5835
+ return !(parts.length < 2 || parts[parts.length - 1] && (/_/.test(parts[parts.length - 1]) || !/[a-zA-Z\d]/.test(parts[parts.length - 1])) || parts[parts.length - 2] && (/_/.test(parts[parts.length - 2]) || !/[a-zA-Z\d]/.test(parts[parts.length - 2])));
5836
+ }
5837
+ function splitUrl(url) {
5838
+ let trailExec = /[!"&'),.:;<>?\]}]+$/.exec(url);
5839
+ if (!trailExec)
5840
+ return [url, void 0];
5841
+ url = url.slice(0, trailExec.index);
5842
+ let trail2 = trailExec[0], closingParenIndex = trail2.indexOf(")"), openingParens = ccount(url, "("), closingParens = ccount(url, ")");
5843
+ for (; closingParenIndex !== -1 && openingParens > closingParens; )
5844
+ url += trail2.slice(0, closingParenIndex + 1), trail2 = trail2.slice(closingParenIndex + 1), closingParenIndex = trail2.indexOf(")"), closingParens++;
5845
+ return [url, trail2];
5846
+ }
5847
+ function previous(match, email) {
5848
+ let code5 = match.input.charCodeAt(match.index - 1);
5849
+ return (match.index === 0 || unicodeWhitespace(code5) || unicodePunctuation(code5)) && // If it’s an email, the previous character should not be a slash.
5850
+ (!email || code5 !== 47);
5851
+ }
5852
+
5853
+ // ../../node_modules/mdast-util-gfm-footnote/lib/index.js
5854
+ footnoteReference2.peek = footnoteReferencePeek;
5855
+ function enterFootnoteCallString() {
5856
+ this.buffer();
5857
+ }
5858
+ function enterFootnoteCall(token) {
5859
+ this.enter({ type: "footnoteReference", identifier: "", label: "" }, token);
5860
+ }
5861
+ function enterFootnoteDefinitionLabelString() {
5862
+ this.buffer();
5863
+ }
5864
+ function enterFootnoteDefinition(token) {
5865
+ this.enter(
5866
+ { type: "footnoteDefinition", identifier: "", label: "", children: [] },
5867
+ token
5868
+ );
5869
+ }
5870
+ function exitFootnoteCallString(token) {
5871
+ let label = this.resume(), node = this.stack[this.stack.length - 1];
5872
+ node.type, node.identifier = normalizeIdentifier(
5873
+ this.sliceSerialize(token)
5874
+ ).toLowerCase(), node.label = label;
5875
+ }
5876
+ function exitFootnoteCall(token) {
5877
+ this.exit(token);
5878
+ }
5879
+ function exitFootnoteDefinitionLabelString(token) {
5880
+ let label = this.resume(), node = this.stack[this.stack.length - 1];
5881
+ node.type, node.identifier = normalizeIdentifier(
5882
+ this.sliceSerialize(token)
5883
+ ).toLowerCase(), node.label = label;
5884
+ }
5885
+ function exitFootnoteDefinition(token) {
5886
+ this.exit(token);
5887
+ }
5888
+ function footnoteReferencePeek() {
5889
+ return "[";
5890
+ }
5891
+ function footnoteReference2(node, _, state, info) {
5892
+ let tracker = state.createTracker(info), value = tracker.move("[^"), exit2 = state.enter("footnoteReference"), subexit = state.enter("reference");
5893
+ return value += tracker.move(
5894
+ state.safe(state.associationId(node), { after: "]", before: value })
5895
+ ), subexit(), exit2(), value += tracker.move("]"), value;
5896
+ }
5897
+ function gfmFootnoteFromMarkdown() {
5898
+ return {
5899
+ enter: {
5900
+ gfmFootnoteCallString: enterFootnoteCallString,
5901
+ gfmFootnoteCall: enterFootnoteCall,
5902
+ gfmFootnoteDefinitionLabelString: enterFootnoteDefinitionLabelString,
5903
+ gfmFootnoteDefinition: enterFootnoteDefinition
5904
+ },
5905
+ exit: {
5906
+ gfmFootnoteCallString: exitFootnoteCallString,
5907
+ gfmFootnoteCall: exitFootnoteCall,
5908
+ gfmFootnoteDefinitionLabelString: exitFootnoteDefinitionLabelString,
5909
+ gfmFootnoteDefinition: exitFootnoteDefinition
5910
+ }
5911
+ };
5912
+ }
5913
+ function gfmFootnoteToMarkdown(options) {
5914
+ let firstLineBlank = !1;
5915
+ return options && options.firstLineBlank && (firstLineBlank = !0), {
5916
+ handlers: { footnoteDefinition, footnoteReference: footnoteReference2 },
5917
+ // This is on by default already.
5918
+ unsafe: [{ character: "[", inConstruct: ["label", "phrasing", "reference"] }]
5919
+ };
5920
+ function footnoteDefinition(node, _, state, info) {
5921
+ let tracker = state.createTracker(info), value = tracker.move("[^"), exit2 = state.enter("footnoteDefinition"), subexit = state.enter("label");
5922
+ return value += tracker.move(
5923
+ state.safe(state.associationId(node), { before: value, after: "]" })
5924
+ ), subexit(), value += tracker.move("]:"), node.children && node.children.length > 0 && (tracker.shift(4), value += tracker.move(
5925
+ (firstLineBlank ? `
5926
+ ` : " ") + state.indentLines(
5927
+ state.containerFlow(node, tracker.current()),
5928
+ firstLineBlank ? mapAll : mapExceptFirst
5929
+ )
5930
+ )), exit2(), value;
5931
+ }
5932
+ }
5933
+ function mapExceptFirst(line, index, blank) {
5934
+ return index === 0 ? line : mapAll(line, index, blank);
5935
+ }
5936
+ function mapAll(line, index, blank) {
5937
+ return (blank ? "" : " ") + line;
5938
+ }
5939
+
5940
+ // ../../node_modules/mdast-util-gfm-strikethrough/lib/index.js
5941
+ var constructsWithoutStrikethrough = [
5942
+ "autolink",
5943
+ "destinationLiteral",
5944
+ "destinationRaw",
5945
+ "reference",
5946
+ "titleQuote",
5947
+ "titleApostrophe"
5948
+ ];
5949
+ handleDelete.attention = attentionDelete;
5950
+ handleDelete.peek = peekDelete;
5951
+ function gfmStrikethroughFromMarkdown() {
5952
+ return {
5953
+ canContainEols: ["delete"],
5954
+ enter: { strikethrough: enterStrikethrough },
5955
+ exit: { strikethrough: exitStrikethrough }
5956
+ };
5957
+ }
5958
+ function gfmStrikethroughToMarkdown() {
5959
+ return {
5960
+ handlers: { delete: handleDelete },
5961
+ unsafe: [
5962
+ {
5963
+ character: "~",
5964
+ inConstruct: "phrasing",
5965
+ notInConstruct: constructsWithoutStrikethrough
5966
+ }
5967
+ ]
5968
+ };
5969
+ }
5970
+ function enterStrikethrough(token) {
5971
+ this.enter({ type: "delete", children: [], position: void 0 }, token);
5972
+ }
5973
+ function exitStrikethrough(token) {
5974
+ this.exit(token);
5975
+ }
5976
+ function handleDelete(node, _, state, info) {
5977
+ let tracker = state.createTracker(info), sequence = state.stack.includes("strikethrough") ? "~" : "~~", exit2 = state.enter("strikethrough"), value = tracker.move(sequence);
5978
+ return value += state.containerPhrasing(node, {
5979
+ ...tracker.current(),
5980
+ before: value,
5981
+ after: "~"
5982
+ }), value += tracker.move(sequence), exit2(), value;
5983
+ }
5984
+ function attentionDelete() {
5985
+ return { construct: "strikethrough", markers: ["~"], sizes: [2, 1] };
5986
+ }
5987
+ function peekDelete() {
5988
+ return "~";
5989
+ }
5990
+
5991
+ // ../../node_modules/markdown-table/index.js
5992
+ function defaultStringLength(value) {
5993
+ return value.length;
5994
+ }
5995
+ function markdownTable(table2, options) {
5996
+ let settings = options || {}, align = (settings.align || []).concat(), stringLength = settings.stringLength || defaultStringLength, alignments = [], cellMatrix = [], sizeMatrix = [], longestCellByColumn = [], mostCellsPerRow = 0, rowIndex = -1;
5997
+ for (; ++rowIndex < table2.length; ) {
5998
+ let row2 = [], sizes2 = [], columnIndex2 = -1;
5999
+ for (table2[rowIndex].length > mostCellsPerRow && (mostCellsPerRow = table2[rowIndex].length); ++columnIndex2 < table2[rowIndex].length; ) {
6000
+ let cell = serialize(table2[rowIndex][columnIndex2]);
6001
+ if (settings.alignDelimiters !== !1) {
6002
+ let size = stringLength(cell);
6003
+ sizes2[columnIndex2] = size, (longestCellByColumn[columnIndex2] === void 0 || size > longestCellByColumn[columnIndex2]) && (longestCellByColumn[columnIndex2] = size);
6004
+ }
6005
+ row2.push(cell);
6006
+ }
6007
+ cellMatrix[rowIndex] = row2, sizeMatrix[rowIndex] = sizes2;
6008
+ }
6009
+ let columnIndex = -1;
6010
+ if (typeof align == "object" && "length" in align)
6011
+ for (; ++columnIndex < mostCellsPerRow; )
6012
+ alignments[columnIndex] = toAlignment(align[columnIndex]);
6013
+ else {
6014
+ let code5 = toAlignment(align);
6015
+ for (; ++columnIndex < mostCellsPerRow; )
6016
+ alignments[columnIndex] = code5;
6017
+ }
6018
+ columnIndex = -1;
6019
+ let row = [], sizes = [];
6020
+ for (; ++columnIndex < mostCellsPerRow; ) {
6021
+ let code5 = alignments[columnIndex], before = "", after = "";
6022
+ code5 === 99 ? (before = ":", after = ":") : code5 === 108 ? before = ":" : code5 === 114 && (after = ":");
6023
+ let size = settings.alignDelimiters === !1 ? 1 : Math.max(
6024
+ 1,
6025
+ longestCellByColumn[columnIndex] - before.length - after.length
6026
+ ), cell = before + "-".repeat(size) + after;
6027
+ settings.alignDelimiters !== !1 && (size = before.length + size + after.length, size > longestCellByColumn[columnIndex] && (longestCellByColumn[columnIndex] = size), sizes[columnIndex] = size), row[columnIndex] = cell;
6028
+ }
6029
+ cellMatrix.splice(1, 0, row), sizeMatrix.splice(1, 0, sizes), rowIndex = -1;
6030
+ let lines = [];
6031
+ for (; ++rowIndex < cellMatrix.length; ) {
6032
+ let row2 = cellMatrix[rowIndex], sizes2 = sizeMatrix[rowIndex];
6033
+ columnIndex = -1;
6034
+ let line = [];
6035
+ for (; ++columnIndex < mostCellsPerRow; ) {
6036
+ let cell = row2[columnIndex] || "", before = "", after = "";
6037
+ if (settings.alignDelimiters !== !1) {
6038
+ let size = longestCellByColumn[columnIndex] - (sizes2[columnIndex] || 0), code5 = alignments[columnIndex];
6039
+ code5 === 114 ? before = " ".repeat(size) : code5 === 99 ? size % 2 ? (before = " ".repeat(size / 2 + 0.5), after = " ".repeat(size / 2 - 0.5)) : (before = " ".repeat(size / 2), after = before) : after = " ".repeat(size);
6040
+ }
6041
+ settings.delimiterStart !== !1 && !columnIndex && line.push("|"), settings.padding !== !1 && // Don’t add the opening space if we’re not aligning and the cell is
6042
+ // empty: there will be a closing space.
6043
+ !(settings.alignDelimiters === !1 && cell === "") && (settings.delimiterStart !== !1 || columnIndex) && line.push(" "), settings.alignDelimiters !== !1 && line.push(before), line.push(cell), settings.alignDelimiters !== !1 && line.push(after), settings.padding !== !1 && line.push(" "), (settings.delimiterEnd !== !1 || columnIndex !== mostCellsPerRow - 1) && line.push("|");
6044
+ }
6045
+ lines.push(
6046
+ settings.delimiterEnd === !1 ? line.join("").replace(/ +$/, "") : line.join("")
6047
+ );
6048
+ }
6049
+ return lines.join(`
6050
+ `);
6051
+ }
6052
+ function serialize(value) {
6053
+ return value == null ? "" : String(value);
6054
+ }
6055
+ function toAlignment(value) {
6056
+ let code5 = typeof value == "string" ? value.codePointAt(0) : 0;
6057
+ return code5 === 67 || code5 === 99 ? 99 : code5 === 76 || code5 === 108 ? 108 : code5 === 82 || code5 === 114 ? 114 : 0;
6058
+ }
6059
+
6060
+ // ../../node_modules/mdast-util-phrasing/lib/index.js
6061
+ var phrasing = (
6062
+ /** @type {(node?: unknown) => node is Exclude<PhrasingContent, Html>} */
6063
+ convert([
6064
+ "break",
6065
+ "delete",
6066
+ "emphasis",
6067
+ // To do: next major: removed since footnotes were added to GFM.
6068
+ "footnote",
6069
+ "footnoteReference",
6070
+ "image",
6071
+ "imageReference",
6072
+ "inlineCode",
6073
+ // Enabled by `mdast-util-math`:
6074
+ "inlineMath",
6075
+ "link",
6076
+ "linkReference",
6077
+ // Enabled by `mdast-util-mdx`:
6078
+ "mdxJsxTextElement",
6079
+ // Enabled by `mdast-util-mdx`:
6080
+ "mdxTextExpression",
6081
+ "strong",
6082
+ "text",
6083
+ // Enabled by `mdast-util-directive`:
6084
+ "textDirective"
6085
+ ])
6086
+ );
6087
+
6088
+ // ../../node_modules/mdast-util-to-markdown/lib/configure.js
6089
+ var own7 = {}.hasOwnProperty;
6090
+
6091
+ // ../../node_modules/mdast-util-to-markdown/lib/handle/blockquote.js
6092
+ function blockquote2(node, _, state, info) {
6093
+ let exit2 = state.enter("blockquote"), tracker = state.createTracker(info);
6094
+ tracker.move("> "), tracker.shift(2);
6095
+ let value = state.indentLines(
6096
+ state.containerFlow(node, tracker.current()),
6097
+ map
6098
+ );
6099
+ return exit2(), value;
6100
+ }
6101
+ function map(line, _, blank) {
6102
+ return ">" + (blank ? "" : " ") + line;
6103
+ }
6104
+
6105
+ // ../../node_modules/mdast-util-to-markdown/lib/util/pattern-in-scope.js
6106
+ function patternInScope(stack, pattern) {
6107
+ return listInScope(stack, pattern.inConstruct, !0) && !listInScope(stack, pattern.notInConstruct, !1);
6108
+ }
6109
+ function listInScope(stack, list3, none) {
6110
+ if (typeof list3 == "string" && (list3 = [list3]), !list3 || list3.length === 0)
6111
+ return none;
6112
+ let index = -1;
6113
+ for (; ++index < list3.length; )
6114
+ if (stack.includes(list3[index]))
6115
+ return !0;
6116
+ return !1;
6117
+ }
6118
+
6119
+ // ../../node_modules/mdast-util-to-markdown/lib/handle/break.js
6120
+ function hardBreak2(_, _1, state, info) {
6121
+ let index = -1;
6122
+ for (; ++index < state.unsafe.length; ) {
6123
+ let pattern = state.unsafe[index];
6124
+ if (pattern.character === `
6125
+ ` && !pattern.before && !pattern.after && patternInScope(state.stack, pattern))
6126
+ return /[\t ]/.test(info.before) ? "" : " ";
6127
+ }
6128
+ return `\\
6129
+ `;
6130
+ }
6131
+
6132
+ // ../../node_modules/longest-streak/index.js
6133
+ function longestStreak(value, substring) {
6134
+ let source = String(value), index = source.indexOf(substring), expected = index, count = 0, max = 0;
6135
+ if (typeof substring != "string")
6136
+ throw new TypeError("Expected substring");
6137
+ for (; index !== -1; )
6138
+ index === expected ? ++count > max && (max = count) : count = 1, expected = index + substring.length, index = source.indexOf(substring, expected);
6139
+ return max;
6140
+ }
6141
+
6142
+ // ../../node_modules/mdast-util-to-markdown/lib/util/format-code-as-indented.js
6143
+ function formatCodeAsIndented(node, state) {
6144
+ return !!(state.options.fences === !1 && node.value && // If there’s no info…
6145
+ !node.lang && // And there’s a non-whitespace character…
6146
+ /[^\n\r ]/.test(node.value) && // And the value doesn’t start or end in a blank…
6147
+ !/^[\t ]*(?:[\n\r]|$)|(?:^|[\n\r])[\t ]*$/.test(node.value));
6148
+ }
6149
+
6150
+ // ../../node_modules/mdast-util-to-markdown/lib/util/check-fence.js
6151
+ function checkFence(state) {
6152
+ let marker = state.options.fence || "`";
6153
+ if (marker !== "`" && marker !== "~")
6154
+ throw new Error(
6155
+ "Cannot serialize code with `" + marker + "` for `options.fence`, expected `` ` `` or `~`"
6156
+ );
6157
+ return marker;
6158
+ }
6159
+
6160
+ // ../../node_modules/mdast-util-to-markdown/lib/handle/code.js
6161
+ function code2(node, _, state, info) {
6162
+ let marker = checkFence(state), raw = node.value || "";
6163
+ if (formatCodeAsIndented(node, state)) {
6164
+ let exit3 = state.enter("codeIndented"), value2 = state.indentLines(raw, map2);
6165
+ return exit3(), value2;
6166
+ }
6167
+ let tracker = state.createTracker(info), sequence = marker.repeat(Math.max(longestStreak(raw, marker) + 1, 3)), exit2 = state.enter("codeFenced"), suffix = marker === "`" ? "GraveAccent" : "Tilde", value = tracker.move(sequence);
6168
+ if (node.lang) {
6169
+ let subexit = state.enter(`codeFencedLang${suffix}`);
6170
+ value += tracker.move(
6171
+ state.safe(node.lang, {
6172
+ before: value,
6173
+ after: " ",
6174
+ encode: ["`"],
6175
+ ...tracker.current()
6176
+ })
6177
+ ), subexit();
6178
+ }
6179
+ if (node.lang && node.meta) {
6180
+ let subexit = state.enter(`codeFencedMeta${suffix}`);
6181
+ value += tracker.move(" "), value += tracker.move(
6182
+ state.safe(node.meta, {
6183
+ before: value,
6184
+ after: `
6185
+ `,
6186
+ encode: ["`"],
6187
+ ...tracker.current()
6188
+ })
6189
+ ), subexit();
6190
+ }
6191
+ return value += tracker.move(`
6192
+ `), raw && (value += tracker.move(raw + `
6193
+ `)), value += tracker.move(sequence), exit2(), value;
6194
+ }
6195
+ function map2(line, _, blank) {
6196
+ return (blank ? "" : " ") + line;
6197
+ }
6198
+
6199
+ // ../../node_modules/mdast-util-to-markdown/lib/util/check-quote.js
6200
+ function checkQuote(state) {
6201
+ let marker = state.options.quote || '"';
6202
+ if (marker !== '"' && marker !== "'")
6203
+ throw new Error(
6204
+ "Cannot serialize title with `" + marker + "` for `options.quote`, expected `\"`, or `'`"
6205
+ );
6206
+ return marker;
6207
+ }
6208
+
6209
+ // ../../node_modules/mdast-util-to-markdown/lib/handle/definition.js
6210
+ function definition(node, _, state, info) {
6211
+ let quote = checkQuote(state), suffix = quote === '"' ? "Quote" : "Apostrophe", exit2 = state.enter("definition"), subexit = state.enter("label"), tracker = state.createTracker(info), value = tracker.move("[");
6212
+ return value += tracker.move(
6213
+ state.safe(state.associationId(node), {
6214
+ before: value,
6215
+ after: "]",
6216
+ ...tracker.current()
6217
+ })
6218
+ ), value += tracker.move("]: "), subexit(), // If there’s no url, or…
6219
+ !node.url || // If there are control characters or whitespace.
6220
+ /[\0- \u007F]/.test(node.url) ? (subexit = state.enter("destinationLiteral"), value += tracker.move("<"), value += tracker.move(
6221
+ state.safe(node.url, { before: value, after: ">", ...tracker.current() })
6222
+ ), value += tracker.move(">")) : (subexit = state.enter("destinationRaw"), value += tracker.move(
6223
+ state.safe(node.url, {
6224
+ before: value,
6225
+ after: node.title ? " " : `
6226
+ `,
6227
+ ...tracker.current()
6228
+ })
6229
+ )), subexit(), node.title && (subexit = state.enter(`title${suffix}`), value += tracker.move(" " + quote), value += tracker.move(
6230
+ state.safe(node.title, {
6231
+ before: value,
6232
+ after: quote,
6233
+ ...tracker.current()
6234
+ })
6235
+ ), value += tracker.move(quote), subexit()), exit2(), value;
6236
+ }
6237
+
6238
+ // ../../node_modules/mdast-util-to-markdown/lib/util/check-emphasis.js
6239
+ function checkEmphasis(state) {
6240
+ let marker = state.options.emphasis || "*";
6241
+ if (marker !== "*" && marker !== "_")
6242
+ throw new Error(
6243
+ "Cannot serialize emphasis with `" + marker + "` for `options.emphasis`, expected `*`, or `_`"
6244
+ );
6245
+ return marker;
6246
+ }
6247
+
6248
+ // ../../node_modules/mdast-util-to-markdown/lib/handle/emphasis.js
6249
+ emphasis2.attention = attention;
6250
+ emphasis2.peek = peek;
6251
+ function emphasis2(node, _, state, info) {
6252
+ let exit2 = state.enter("phrasing"), value = state.containerPhrasing({ type: "root", children: [node] }, info);
6253
+ return exit2(), value;
6254
+ }
6255
+ function attention(_, state) {
6256
+ return {
6257
+ construct: "emphasis",
6258
+ markers: checkEmphasis(state) === "*" ? ["*", "_"] : ["_", "*"],
6259
+ sizes: [1]
6260
+ };
6261
+ }
6262
+ function peek(_, _1, state) {
6263
+ return state.options.emphasis || "*";
6264
+ }
6265
+
6266
+ // ../../node_modules/mdast-util-to-markdown/lib/util/encode-character-reference.js
6267
+ function encodeCharacterReference(code5) {
6268
+ return "&#x" + code5.toString(16).toUpperCase() + ";";
6269
+ }
6270
+
6271
+ // ../../node_modules/mdast-util-to-markdown/lib/util/format-heading-as-setext.js
6272
+ function formatHeadingAsSetext(node, state) {
6273
+ let literalWithBreak = !1;
6274
+ return visit(node, function(node2) {
6275
+ if ("value" in node2 && /\r?\n|\r/.test(node2.value) || node2.type === "break")
6276
+ return literalWithBreak = !0, EXIT;
6277
+ }), !!((!node.depth || node.depth < 3) && toString(node) && (state.options.setext || literalWithBreak));
6278
+ }
6279
+
6280
+ // ../../node_modules/mdast-util-to-markdown/lib/handle/heading.js
6281
+ function heading2(node, _, state, info) {
6282
+ let rank = Math.max(Math.min(6, node.depth || 1), 1), tracker = state.createTracker(info);
6283
+ if (formatHeadingAsSetext(node, state)) {
6284
+ let exit3 = state.enter("headingSetext"), subexit2 = state.enter("phrasing"), value2 = state.containerPhrasing(node, {
6285
+ ...tracker.current(),
6286
+ before: `
6287
+ `,
6288
+ after: `
6289
+ `
6290
+ });
6291
+ return subexit2(), exit3(), value2 + `
6292
+ ` + (rank === 1 ? "=" : "-").repeat(
6293
+ // The whole size…
6294
+ value2.length - // Minus the position of the character after the last EOL (or
6295
+ // 0 if there is none)…
6296
+ (Math.max(value2.lastIndexOf("\r"), value2.lastIndexOf(`
6297
+ `)) + 1)
6298
+ );
6299
+ }
6300
+ let sequence = "#".repeat(rank), exit2 = state.enter("headingAtx"), subexit = state.enter("phrasing");
6301
+ tracker.move(sequence + " ");
6302
+ let value = state.containerPhrasing(node, {
6303
+ before: "# ",
6304
+ after: `
6305
+ `,
6306
+ ...tracker.current()
6307
+ }), head = value.charCodeAt(0);
6308
+ return (head === 9 || head === 32) && (value = encodeCharacterReference(head) + value.slice(1)), value = value ? sequence + " " + value : sequence, state.options.closeAtx && (value += " " + sequence), subexit(), exit2(), value;
6309
+ }
6310
+
6311
+ // ../../node_modules/mdast-util-to-markdown/lib/handle/html.js
6312
+ html5.peek = htmlPeek;
6313
+ function html5(node) {
6314
+ return node.value || "";
6315
+ }
6316
+ function htmlPeek() {
6317
+ return "<";
6318
+ }
6319
+
6320
+ // ../../node_modules/mdast-util-to-markdown/lib/handle/image.js
6321
+ image2.peek = imagePeek;
6322
+ function image2(node, _, state, info) {
6323
+ let quote = checkQuote(state), suffix = quote === '"' ? "Quote" : "Apostrophe", exit2 = state.enter("image"), subexit = state.enter("label"), tracker = state.createTracker(info), value = tracker.move("![");
6324
+ return value += tracker.move(
6325
+ state.safe(node.alt, { before: value, after: "]", ...tracker.current() })
6326
+ ), value += tracker.move("]("), subexit(), // If there’s no url but there is a title…
6327
+ !node.url && node.title || // If there are control characters or whitespace.
6328
+ /[\0- \u007F]/.test(node.url) ? (subexit = state.enter("destinationLiteral"), value += tracker.move("<"), value += tracker.move(
6329
+ state.safe(node.url, { before: value, after: ">", ...tracker.current() })
6330
+ ), value += tracker.move(">")) : (subexit = state.enter("destinationRaw"), value += tracker.move(
6331
+ state.safe(node.url, {
6332
+ before: value,
6333
+ after: node.title ? " " : ")",
6334
+ ...tracker.current()
6335
+ })
6336
+ )), subexit(), node.title && (subexit = state.enter(`title${suffix}`), value += tracker.move(" " + quote), value += tracker.move(
6337
+ state.safe(node.title, {
6338
+ before: value,
6339
+ after: quote,
6340
+ ...tracker.current()
6341
+ })
6342
+ ), value += tracker.move(quote), subexit()), value += tracker.move(")"), exit2(), value;
6343
+ }
6344
+ function imagePeek() {
6345
+ return "!";
6346
+ }
6347
+
6348
+ // ../../node_modules/mdast-util-to-markdown/lib/handle/image-reference.js
6349
+ imageReference2.peek = imageReferencePeek;
6350
+ function imageReference2(node, _, state, info) {
6351
+ let type = node.referenceType, exit2 = state.enter("imageReference"), subexit = state.enter("label"), tracker = state.createTracker(info), value = tracker.move("!["), alt = state.safe(node.alt, {
6352
+ before: value,
6353
+ after: "]",
6354
+ ...tracker.current()
6355
+ });
6356
+ value += tracker.move(alt + "]["), subexit();
6357
+ let stack = state.stack;
6358
+ state.stack = stack.filter(function(d) {
6359
+ return d !== "phrasing";
6360
+ }), subexit = state.enter("reference");
6361
+ let reference = state.safe(state.associationId(node), {
6362
+ before: value,
6363
+ after: "]",
6364
+ ...tracker.current()
6365
+ });
6366
+ return subexit(), state.stack = stack, exit2(), type === "full" || !alt || alt !== reference ? value += tracker.move(reference + "]") : type === "shortcut" ? value = value.slice(0, -1) : value += tracker.move("]"), value;
6367
+ }
6368
+ function imageReferencePeek() {
6369
+ return "!";
6370
+ }
6371
+
6372
+ // ../../node_modules/mdast-util-to-markdown/lib/handle/inline-code.js
6373
+ inlineCode2.peek = inlineCodePeek;
6374
+ function inlineCode2(node, _, state) {
6375
+ let value = node.value || "", sequence = "`", index = -1;
6376
+ for (; new RegExp("(^|[^`])" + sequence + "([^`]|$)").test(value); )
6377
+ sequence += "`";
6378
+ for (/[^\n\r ]/.test(value) && (/^[\n\r ]/.test(value) && /[\n\r ]$/.test(value) || /^`|`$/.test(value)) && (value = " " + value + " "); ++index < state.unsafe.length; ) {
6379
+ let pattern = state.unsafe[index], expression = state.compilePattern(pattern);
6380
+ if (!pattern.atBreak) continue;
6381
+ let match;
6382
+ for (; match = expression.exec(value); ) {
6383
+ let position2 = match.index;
6384
+ value.charCodeAt(position2) === 10 && value.charCodeAt(position2 - 1) === 13 && position2--, value = value.slice(0, position2) + " " + value.slice(match.index + 1);
6385
+ }
6386
+ }
6387
+ return sequence + value + sequence;
6388
+ }
6389
+ function inlineCodePeek() {
6390
+ return "`";
6391
+ }
6392
+
6393
+ // ../../node_modules/mdast-util-to-markdown/lib/util/format-link-as-autolink.js
6394
+ function formatLinkAsAutolink(node, state) {
6395
+ let raw = toString(node);
6396
+ return !!(!state.options.resourceLink && // If there’s a url…
6397
+ node.url && // And there’s no title…
6398
+ !node.title && // And the content of `node` is a single text node…
6399
+ node.children && node.children.length === 1 && node.children[0].type === "text" && // And if the url is the same as the content…
6400
+ (raw === node.url || "mailto:" + raw === node.url) && // And that starts w/ a protocol…
6401
+ /^[a-z][+\-.a-z]+:/i.test(node.url) && // And that doesn’t contain ASCII control codes (character escapes and
6402
+ // references don’t work), space, or angle brackets…
6403
+ !/[\0- <>\u007F]/.test(node.url));
6404
+ }
6405
+
6406
+ // ../../node_modules/mdast-util-to-markdown/lib/handle/link.js
6407
+ link2.peek = linkPeek;
6408
+ function link2(node, _, state, info) {
6409
+ let quote = checkQuote(state), suffix = quote === '"' ? "Quote" : "Apostrophe", tracker = state.createTracker(info);
6410
+ if (formatLinkAsAutolink(node, state)) {
6411
+ let stack = state.stack;
6412
+ state.stack = stack.filter(function(d) {
6413
+ return d !== "phrasing";
6414
+ });
6415
+ let exit3 = state.enter("autolink"), value2 = tracker.move("<");
6416
+ return value2 += tracker.move(
6417
+ state.containerPhrasing(node, {
6418
+ before: value2,
6419
+ after: ">",
6420
+ ...tracker.current()
6421
+ })
6422
+ ), value2 += tracker.move(">"), exit3(), state.stack = stack, value2;
6423
+ }
6424
+ let exit2 = state.enter("link"), subexit = state.enter("label"), value = tracker.move("[");
6425
+ return value += tracker.move(
6426
+ state.containerPhrasing(node, {
6427
+ before: value,
6428
+ after: "](",
6429
+ ...tracker.current()
6430
+ })
6431
+ ), value += tracker.move("]("), subexit(), // If there’s no url but there is a title…
6432
+ !node.url && node.title || // If there are control characters or whitespace.
6433
+ /[\0- \u007F]/.test(node.url) ? (subexit = state.enter("destinationLiteral"), value += tracker.move("<"), value += tracker.move(
6434
+ state.safe(node.url, { before: value, after: ">", ...tracker.current() })
6435
+ ), value += tracker.move(">")) : (subexit = state.enter("destinationRaw"), value += tracker.move(
6436
+ state.safe(node.url, {
6437
+ before: value,
6438
+ after: node.title ? " " : ")",
6439
+ ...tracker.current()
6440
+ })
6441
+ )), subexit(), node.title && (subexit = state.enter(`title${suffix}`), value += tracker.move(" " + quote), value += tracker.move(
6442
+ state.safe(node.title, {
6443
+ before: value,
6444
+ after: quote,
6445
+ ...tracker.current()
6446
+ })
6447
+ ), value += tracker.move(quote), subexit()), value += tracker.move(")"), exit2(), value;
6448
+ }
6449
+ function linkPeek(node, _, state) {
6450
+ return formatLinkAsAutolink(node, state) ? "<" : "[";
6451
+ }
6452
+
6453
+ // ../../node_modules/mdast-util-to-markdown/lib/handle/link-reference.js
6454
+ linkReference2.peek = linkReferencePeek;
6455
+ function linkReference2(node, _, state, info) {
6456
+ let type = node.referenceType, exit2 = state.enter("linkReference"), subexit = state.enter("label"), tracker = state.createTracker(info), value = tracker.move("["), text5 = state.containerPhrasing(node, {
6457
+ before: value,
6458
+ after: "]",
6459
+ ...tracker.current()
6460
+ });
6461
+ value += tracker.move(text5 + "]["), subexit();
6462
+ let stack = state.stack;
6463
+ state.stack = stack.filter(function(d) {
6464
+ return d !== "phrasing";
6465
+ }), subexit = state.enter("reference");
6466
+ let reference = state.safe(state.associationId(node), {
6467
+ before: value,
6468
+ after: "]",
6469
+ ...tracker.current()
6470
+ });
6471
+ return subexit(), state.stack = stack, exit2(), type === "full" || !text5 || text5 !== reference ? value += tracker.move(reference + "]") : type === "shortcut" ? value = value.slice(0, -1) : value += tracker.move("]"), value;
6472
+ }
6473
+ function linkReferencePeek() {
6474
+ return "[";
6475
+ }
6476
+
6477
+ // ../../node_modules/mdast-util-to-markdown/lib/util/check-bullet.js
6478
+ function checkBullet(state) {
6479
+ let marker = state.options.bullet || "*";
6480
+ if (marker !== "*" && marker !== "+" && marker !== "-")
6481
+ throw new Error(
6482
+ "Cannot serialize items with `" + marker + "` for `options.bullet`, expected `*`, `+`, or `-`"
6483
+ );
6484
+ return marker;
6485
+ }
6486
+
6487
+ // ../../node_modules/mdast-util-to-markdown/lib/util/check-bullet-other.js
6488
+ function checkBulletOther(state) {
6489
+ let bullet = checkBullet(state), bulletOther = state.options.bulletOther;
6490
+ if (!bulletOther)
6491
+ return bullet === "*" ? "-" : "*";
6492
+ if (bulletOther !== "*" && bulletOther !== "+" && bulletOther !== "-")
6493
+ throw new Error(
6494
+ "Cannot serialize items with `" + bulletOther + "` for `options.bulletOther`, expected `*`, `+`, or `-`"
6495
+ );
6496
+ if (bulletOther === bullet)
6497
+ throw new Error(
6498
+ "Expected `bullet` (`" + bullet + "`) and `bulletOther` (`" + bulletOther + "`) to be different"
6499
+ );
6500
+ return bulletOther;
6501
+ }
6502
+
6503
+ // ../../node_modules/mdast-util-to-markdown/lib/util/check-bullet-ordered.js
6504
+ function checkBulletOrdered(state) {
6505
+ let marker = state.options.bulletOrdered || ".";
6506
+ if (marker !== "." && marker !== ")")
6507
+ throw new Error(
6508
+ "Cannot serialize items with `" + marker + "` for `options.bulletOrdered`, expected `.` or `)`"
6509
+ );
6510
+ return marker;
6511
+ }
6512
+
6513
+ // ../../node_modules/mdast-util-to-markdown/lib/util/check-rule.js
6514
+ function checkRule(state) {
6515
+ let marker = state.options.rule || "*";
6516
+ if (marker !== "*" && marker !== "-" && marker !== "_")
6517
+ throw new Error(
6518
+ "Cannot serialize rules with `" + marker + "` for `options.rule`, expected `*`, `-`, or `_`"
6519
+ );
6520
+ return marker;
6521
+ }
6522
+
6523
+ // ../../node_modules/mdast-util-to-markdown/lib/handle/list.js
6524
+ function list2(node, parent, state, info) {
6525
+ let exit2 = state.enter("list"), bulletCurrent = state.bulletCurrent, bullet = node.ordered ? checkBulletOrdered(state) : checkBullet(state), bulletOther = node.ordered ? bullet === "." ? ")" : "." : checkBulletOther(state), useDifferentMarker = parent && state.bulletLastUsed ? bullet === state.bulletLastUsed : !1;
6526
+ if (!node.ordered) {
6527
+ let firstListItem = node.children ? node.children[0] : void 0;
6528
+ if (
6529
+ // Bullet could be used as a thematic break marker:
6530
+ (bullet === "*" || bullet === "-") && // Empty first list item:
6531
+ firstListItem && (!firstListItem.children || !firstListItem.children[0]) && // Directly in two other list items:
6532
+ state.stack[state.stack.length - 1] === "list" && state.stack[state.stack.length - 2] === "listItem" && state.stack[state.stack.length - 3] === "list" && state.stack[state.stack.length - 4] === "listItem" && // That are each the first child.
6533
+ state.indexStack[state.indexStack.length - 1] === 0 && state.indexStack[state.indexStack.length - 2] === 0 && state.indexStack[state.indexStack.length - 3] === 0 && (useDifferentMarker = !0), checkRule(state) === bullet && firstListItem
6534
+ ) {
6535
+ let index = -1;
6536
+ for (; ++index < node.children.length; ) {
6537
+ let item = node.children[index];
6538
+ if (item && item.type === "listItem" && item.children && item.children[0] && item.children[0].type === "thematicBreak") {
6539
+ useDifferentMarker = !0;
6540
+ break;
6541
+ }
6542
+ }
6543
+ }
6544
+ }
6545
+ useDifferentMarker && (bullet = bulletOther), state.bulletCurrent = bullet;
6546
+ let value = state.containerFlow(node, info);
6547
+ return state.bulletLastUsed = bullet, state.bulletCurrent = bulletCurrent, exit2(), value;
6548
+ }
6549
+
6550
+ // ../../node_modules/mdast-util-to-markdown/lib/util/check-list-item-indent.js
6551
+ function checkListItemIndent(state) {
6552
+ let style = state.options.listItemIndent || "one";
6553
+ if (style !== "tab" && style !== "one" && style !== "mixed")
6554
+ throw new Error(
6555
+ "Cannot serialize items with `" + style + "` for `options.listItemIndent`, expected `tab`, `one`, or `mixed`"
6556
+ );
6557
+ return style;
6558
+ }
6559
+
6560
+ // ../../node_modules/mdast-util-to-markdown/lib/handle/list-item.js
6561
+ function listItem2(node, parent, state, info) {
6562
+ let listItemIndent = checkListItemIndent(state), bullet = state.bulletCurrent || checkBullet(state);
6563
+ parent && parent.type === "list" && parent.ordered && (bullet = (typeof parent.start == "number" && parent.start > -1 ? parent.start : 1) + (state.options.incrementListMarker === !1 ? 0 : parent.children.indexOf(node)) + bullet);
6564
+ let size = bullet.length + 1;
6565
+ (listItemIndent === "tab" || listItemIndent === "mixed" && (parent && parent.type === "list" && parent.spread || node.spread)) && (size = Math.ceil(size / 4) * 4);
6566
+ let tracker = state.createTracker(info);
6567
+ tracker.move(bullet + " ".repeat(size - bullet.length)), tracker.shift(size);
6568
+ let exit2 = state.enter("listItem"), value = state.indentLines(
6569
+ state.containerFlow(node, tracker.current()),
6570
+ map3
6571
+ );
6572
+ return exit2(), value;
6573
+ function map3(line, index, blank) {
6574
+ return index ? (blank ? "" : " ".repeat(size)) + line : (blank ? bullet : bullet + " ".repeat(size - bullet.length)) + line;
6575
+ }
6576
+ }
6577
+
6578
+ // ../../node_modules/mdast-util-to-markdown/lib/handle/paragraph.js
6579
+ function paragraph2(node, _, state, info) {
6580
+ let exit2 = state.enter("paragraph"), subexit = state.enter("phrasing"), value = state.containerPhrasing(node, info);
6581
+ return subexit(), exit2(), value;
6582
+ }
6583
+
6584
+ // ../../node_modules/mdast-util-to-markdown/lib/handle/root.js
6585
+ function root3(node, _, state, info) {
6586
+ if (!node.children.some(function(d) {
6587
+ return phrasing(d);
6588
+ })) return state.containerFlow(node, info);
6589
+ let exit2 = state.enter("phrasing"), value = state.containerPhrasing(node, info);
6590
+ return exit2(), value;
6591
+ }
6592
+
6593
+ // ../../node_modules/mdast-util-to-markdown/lib/util/check-strong.js
6594
+ function checkStrong(state) {
6595
+ let marker = state.options.strong || "*";
6596
+ if (marker !== "*" && marker !== "_")
6597
+ throw new Error(
6598
+ "Cannot serialize strong with `" + marker + "` for `options.strong`, expected `*`, or `_`"
6599
+ );
6600
+ return marker;
6601
+ }
6602
+
6603
+ // ../../node_modules/mdast-util-to-markdown/lib/handle/strong.js
6604
+ strong2.attention = attention2;
6605
+ strong2.peek = peek2;
6606
+ function strong2(node, _, state, info) {
6607
+ let exit2 = state.enter("phrasing"), value = state.containerPhrasing({ type: "root", children: [node] }, info);
6608
+ return exit2(), value;
6609
+ }
6610
+ function attention2(_, state) {
6611
+ return {
6612
+ construct: "strong",
6613
+ markers: checkStrong(state) === "*" ? ["*", "_"] : ["_", "*"],
6614
+ sizes: [2]
6615
+ };
6616
+ }
6617
+ function peek2(_, _1, state) {
6618
+ return state.options.strong || "*";
6619
+ }
6620
+
6621
+ // ../../node_modules/mdast-util-to-markdown/lib/handle/text.js
6622
+ function text3(node, parent, state, info) {
6623
+ let siblings = parent ? parent.children : [], index = siblings.indexOf(node);
6624
+ return state.safe(node.value, {
6625
+ ...info,
6626
+ afterNode: siblings[index + 1],
6627
+ beforeNode: siblings[index - 1]
6628
+ });
6629
+ }
6630
+
6631
+ // ../../node_modules/mdast-util-to-markdown/lib/util/check-rule-repetition.js
6632
+ function checkRuleRepetition(state) {
6633
+ let repetition = state.options.ruleRepetition || 3;
6634
+ if (repetition < 3)
6635
+ throw new Error(
6636
+ "Cannot serialize rules with repetition `" + repetition + "` for `options.ruleRepetition`, expected `3` or more"
6637
+ );
6638
+ return repetition;
6639
+ }
6640
+
6641
+ // ../../node_modules/mdast-util-to-markdown/lib/handle/thematic-break.js
6642
+ function thematicBreak2(_, _1, state) {
6643
+ let value = (checkRule(state) + (state.options.ruleSpaces ? " " : "")).repeat(checkRuleRepetition(state));
6644
+ return state.options.ruleSpaces ? value.slice(0, -1) : value;
6645
+ }
6646
+
6647
+ // ../../node_modules/mdast-util-to-markdown/lib/handle/index.js
6648
+ var handle = {
6649
+ blockquote: blockquote2,
6650
+ break: hardBreak2,
6651
+ code: code2,
6652
+ definition,
6653
+ emphasis: emphasis2,
6654
+ hardBreak: hardBreak2,
6655
+ heading: heading2,
6656
+ html: html5,
6657
+ image: image2,
6658
+ imageReference: imageReference2,
6659
+ inlineCode: inlineCode2,
6660
+ link: link2,
6661
+ linkReference: linkReference2,
6662
+ list: list2,
6663
+ listItem: listItem2,
6664
+ paragraph: paragraph2,
6665
+ root: root3,
6666
+ strong: strong2,
6667
+ text: text3,
6668
+ thematicBreak: thematicBreak2
6669
+ };
6670
+
6671
+ // ../../node_modules/mdast-util-to-markdown/lib/unsafe.js
6672
+ var fullPhrasingSpans = [
6673
+ "autolink",
6674
+ "destinationLiteral",
6675
+ "destinationRaw",
6676
+ "reference",
6677
+ "titleQuote",
6678
+ "titleApostrophe"
6679
+ ], unsafe = [
6680
+ { character: " ", after: "[\\r\\n]", inConstruct: "phrasing" },
6681
+ { character: " ", before: "[\\r\\n]", inConstruct: "phrasing" },
6682
+ {
6683
+ character: " ",
6684
+ inConstruct: ["codeFencedLangGraveAccent", "codeFencedLangTilde"]
6685
+ },
6686
+ {
6687
+ character: "\r",
6688
+ inConstruct: [
6689
+ "codeFencedLangGraveAccent",
6690
+ "codeFencedLangTilde",
6691
+ "codeFencedMetaGraveAccent",
6692
+ "codeFencedMetaTilde",
6693
+ "destinationLiteral",
6694
+ "headingAtx"
6695
+ ]
6696
+ },
6697
+ {
6698
+ character: `
6699
+ `,
6700
+ inConstruct: [
6701
+ "codeFencedLangGraveAccent",
6702
+ "codeFencedLangTilde",
6703
+ "codeFencedMetaGraveAccent",
6704
+ "codeFencedMetaTilde",
6705
+ "destinationLiteral",
6706
+ "headingAtx"
6707
+ ]
6708
+ },
6709
+ { character: "\r", before: "[\\r\\n]", inConstruct: "phrasing" },
6710
+ { character: "\r", after: "\\r", inConstruct: "phrasing" },
6711
+ { character: `
6712
+ `, before: "\\n", inConstruct: "phrasing" },
6713
+ { character: `
6714
+ `, after: "[\\r\\n]", inConstruct: "phrasing" },
6715
+ { character: " ", after: "[\\r\\n]", inConstruct: "phrasing" },
6716
+ { character: " ", before: "[\\r\\n]", inConstruct: "phrasing" },
6717
+ {
6718
+ character: " ",
6719
+ inConstruct: ["codeFencedLangGraveAccent", "codeFencedLangTilde"]
6720
+ },
6721
+ // An exclamation mark can start an image, if it is followed by a link or
6722
+ // a link reference.
6723
+ {
6724
+ character: "!",
6725
+ after: "\\[",
6726
+ inConstruct: "phrasing",
6727
+ notInConstruct: fullPhrasingSpans
6728
+ },
6729
+ // A quote can break out of a title.
6730
+ { character: '"', inConstruct: "titleQuote" },
6731
+ // A number sign could start an ATX heading if it starts a line.
6732
+ { atBreak: !0, character: "#" },
6733
+ { character: "#", inConstruct: "headingAtx", after: `(?:[\r
6734
+ ]|$)` },
6735
+ // Dollar sign and percentage are not used in markdown.
6736
+ // An ampersand could start a character reference.
6737
+ { character: "&", after: "[#A-Za-z]", inConstruct: "phrasing" },
6738
+ // An apostrophe can break out of a title.
6739
+ { character: "'", inConstruct: "titleApostrophe" },
6740
+ // A left paren could break out of a destination raw.
6741
+ { character: "(", inConstruct: "destinationRaw" },
6742
+ // A left paren followed by `]` could make something into a link or image.
6743
+ {
6744
+ before: "\\]",
6745
+ character: "(",
6746
+ inConstruct: "phrasing",
6747
+ notInConstruct: fullPhrasingSpans
6748
+ },
6749
+ // A right paren could start a list item or break out of a destination
6750
+ // raw.
6751
+ { atBreak: !0, before: "\\d+", character: ")" },
6752
+ { character: ")", inConstruct: "destinationRaw" },
6753
+ // An asterisk can start thematic breaks, list items, emphasis, strong.
6754
+ { atBreak: !0, character: "*", after: `(?:[ \r
6755
+ *])` },
6756
+ { character: "*", inConstruct: "phrasing", notInConstruct: fullPhrasingSpans },
6757
+ // A plus sign could start a list item.
6758
+ { atBreak: !0, character: "+", after: `(?:[ \r
6759
+ ])` },
6760
+ // A dash can start thematic breaks, list items, and setext heading
6761
+ // underlines.
6762
+ { atBreak: !0, character: "-", after: `(?:[ \r
6763
+ -])` },
6764
+ // A dot could start a list item.
6765
+ { atBreak: !0, before: "\\d+", character: ".", after: `(?:[ \r
6766
+ ]|$)` },
6767
+ // Slash, colon, and semicolon are not used in markdown for constructs.
6768
+ // A less than can start html (flow or text) or an autolink.
6769
+ // HTML could start with an exclamation mark (declaration, cdata, comment),
6770
+ // slash (closing tag), question mark (instruction), or a letter (tag).
6771
+ // An autolink also starts with a letter.
6772
+ // Finally, it could break out of a destination literal.
6773
+ { atBreak: !0, character: "<", after: "[!/?A-Za-z]" },
6774
+ {
6775
+ character: "<",
6776
+ after: "[!/?A-Za-z]",
6777
+ inConstruct: "phrasing",
6778
+ notInConstruct: fullPhrasingSpans
6779
+ },
6780
+ { character: "<", inConstruct: "destinationLiteral" },
6781
+ // An equals to can start setext heading underlines.
6782
+ { atBreak: !0, character: "=" },
6783
+ // A greater than can start block quotes and it can break out of a
6784
+ // destination literal.
6785
+ { atBreak: !0, character: ">" },
6786
+ { character: ">", inConstruct: "destinationLiteral" },
6787
+ // Question mark and at sign are not used in markdown for constructs.
6788
+ // A left bracket can start definitions, references, labels,
6789
+ { atBreak: !0, character: "[" },
6790
+ { character: "[", inConstruct: "phrasing", notInConstruct: fullPhrasingSpans },
6791
+ { character: "[", inConstruct: ["label", "reference"] },
6792
+ // A backslash can start an escape (when followed by punctuation) or a
6793
+ // hard break (when followed by an eol).
6794
+ // Note: typical escapes are handled in `safe`!
6795
+ { character: "\\", after: "[\\r\\n]", inConstruct: "phrasing" },
6796
+ // A right bracket can exit labels.
6797
+ { character: "]", inConstruct: ["label", "reference"] },
6798
+ // Caret is not used in markdown for constructs.
6799
+ // An underscore can start emphasis, strong, or a thematic break.
6800
+ { atBreak: !0, character: "_" },
6801
+ { character: "_", inConstruct: "phrasing", notInConstruct: fullPhrasingSpans },
6802
+ // A grave accent can start code (fenced or text), or it can break out of
6803
+ // a grave accent code fence.
6804
+ { atBreak: !0, character: "`" },
6805
+ {
6806
+ character: "`",
6807
+ inConstruct: ["codeFencedLangGraveAccent", "codeFencedMetaGraveAccent"]
6808
+ },
6809
+ { character: "`", inConstruct: "phrasing", notInConstruct: fullPhrasingSpans },
6810
+ // Left brace, vertical bar, right brace are not used in markdown for
6811
+ // constructs.
6812
+ // A tilde can start code (fenced).
6813
+ { atBreak: !0, character: "~" },
6814
+ { character: "<", inConstruct: "autolink" },
6815
+ { character: ">", inConstruct: "autolink" },
6816
+ { character: "\x7F", inConstruct: "autolink" }
6817
+ ], code3 = -1;
6818
+ for (; ++code3 < 33; )
6819
+ unsafe.push({ character: String.fromCharCode(code3), inConstruct: "autolink" });
6820
+
6821
+ // ../../node_modules/mdast-util-to-markdown/lib/util/safe.js
6822
+ var own8 = {}.hasOwnProperty;
6823
+
6824
+ // ../../node_modules/mdast-util-gfm-table/lib/index.js
6825
+ function gfmTableFromMarkdown() {
6826
+ return {
6827
+ enter: {
6828
+ table: enterTable,
6829
+ tableData: enterCell,
6830
+ tableHeader: enterCell,
6831
+ tableRow: enterRow
6832
+ },
6833
+ exit: {
6834
+ codeText: exitCodeText,
6835
+ table: exitTable,
6836
+ tableData: exit,
6837
+ tableHeader: exit,
6838
+ tableRow: exit
6839
+ }
6840
+ };
6841
+ }
6842
+ function enterTable(token) {
6843
+ let align = token._align;
6844
+ this.enter(
6845
+ {
6846
+ type: "table",
6847
+ align: align.map(function(d) {
6848
+ return d === "none" ? null : d;
6849
+ }),
6850
+ children: []
6851
+ },
6852
+ token
6853
+ ), this.data.inTable = !0;
6854
+ }
6855
+ function exitTable(token) {
6856
+ this.exit(token), this.data.inTable = void 0;
6857
+ }
6858
+ function enterRow(token) {
6859
+ this.enter({ type: "tableRow", children: [] }, token);
6860
+ }
6861
+ function exit(token) {
6862
+ this.exit(token);
6863
+ }
6864
+ function enterCell(token) {
6865
+ this.enter({ type: "tableCell", children: [] }, token);
6866
+ }
6867
+ function exitCodeText(token) {
6868
+ let value = this.resume();
6869
+ this.data.inTable && (value = value.replace(/\\([\\|])/g, replace));
6870
+ let node = this.stack[this.stack.length - 1];
6871
+ node.type, node.value = value, this.exit(token);
6872
+ }
6873
+ function replace($0, $1) {
6874
+ return $1 === "|" ? $1 : $0;
6875
+ }
6876
+ function gfmTableToMarkdown(options) {
6877
+ let settings = options || {}, padding = settings.tableCellPadding, alignDelimiters = settings.tablePipeAlign, stringLength = settings.stringLength, around = padding ? " " : "|";
6878
+ return {
6879
+ unsafe: [
6880
+ { character: "\r", inConstruct: "tableCell" },
6881
+ { character: `
6882
+ `, inConstruct: "tableCell" },
6883
+ // A pipe, when followed by a tab or space (padding), or a dash or colon
6884
+ // (unpadded delimiter row), could result in a table.
6885
+ { atBreak: !0, character: "|", after: "[ :-]" },
6886
+ // A pipe in a cell must be encoded.
6887
+ { character: "|", inConstruct: "tableCell" },
6888
+ // A colon must be followed by a dash, in which case it could start a
6889
+ // delimiter row.
6890
+ { atBreak: !0, character: ":", after: "-" },
6891
+ // A delimiter row can also start with a dash, when followed by more
6892
+ // dashes, a colon, or a pipe.
6893
+ // This is a stricter version than the built in check for lists, thematic
6894
+ // breaks, and setex heading underlines though:
6895
+ // <https://github.com/syntax-tree/mdast-util-to-markdown/blob/51a2038/lib/unsafe.js#L57>
6896
+ { atBreak: !0, character: "-", after: "[:|-]" }
6897
+ ],
6898
+ handlers: {
6899
+ inlineCode: inlineCodeWithTable,
6900
+ table: handleTable,
6901
+ tableCell: handleTableCell,
6902
+ tableRow: handleTableRow
6903
+ }
6904
+ };
6905
+ function handleTable(node, _, state, info) {
6906
+ return serializeData(handleTableAsData(node, state, info), node.align);
6907
+ }
6908
+ function handleTableRow(node, _, state, info) {
6909
+ let row = handleTableRowAsData(node, state, info), value = serializeData([row]);
6910
+ return value.slice(0, value.indexOf(`
6911
+ `));
6912
+ }
6913
+ function handleTableCell(node, _, state, info) {
6914
+ let exit2 = state.enter("tableCell"), subexit = state.enter("phrasing"), value = state.containerPhrasing(node, {
6915
+ ...info,
6916
+ before: around,
6917
+ after: around
6918
+ });
6919
+ return subexit(), exit2(), value;
6920
+ }
6921
+ function serializeData(matrix, align) {
6922
+ return markdownTable(matrix, {
6923
+ align,
6924
+ // @ts-expect-error: `markdown-table` types should support `null`.
6925
+ alignDelimiters,
6926
+ // @ts-expect-error: `markdown-table` types should support `null`.
6927
+ padding,
6928
+ // @ts-expect-error: `markdown-table` types should support `null`.
6929
+ stringLength
6930
+ });
6931
+ }
6932
+ function handleTableAsData(node, state, info) {
6933
+ let children = node.children, index = -1, result = [], subexit = state.enter("table");
6934
+ for (; ++index < children.length; )
6935
+ result[index] = handleTableRowAsData(children[index], state, info);
6936
+ return subexit(), result;
6937
+ }
6938
+ function handleTableRowAsData(node, state, info) {
6939
+ let children = node.children, index = -1, result = [], subexit = state.enter("tableRow");
6940
+ for (; ++index < children.length; )
6941
+ result[index] = handleTableCell(children[index], node, state, info);
6942
+ return subexit(), result;
6943
+ }
6944
+ function inlineCodeWithTable(node, parent, state) {
6945
+ let value = handle.inlineCode(node, parent, state);
6946
+ return state.stack.includes("tableCell") && (value = value.replace(/\|/g, "\\$&")), value;
6947
+ }
6948
+ }
6949
+
6950
+ // ../../node_modules/mdast-util-gfm-task-list-item/lib/index.js
6951
+ function gfmTaskListItemFromMarkdown() {
6952
+ return {
6953
+ exit: {
6954
+ taskListCheckValueChecked: exitCheck,
6955
+ taskListCheckValueUnchecked: exitCheck,
6956
+ paragraph: exitParagraphWithTaskListItem
6957
+ }
6958
+ };
6959
+ }
6960
+ function gfmTaskListItemToMarkdown() {
6961
+ return {
6962
+ unsafe: [{ atBreak: !0, character: "-", after: "[:|-]" }],
6963
+ handlers: { listItem: listItemWithTaskListItem }
6964
+ };
6965
+ }
6966
+ function exitCheck(token) {
6967
+ let node = this.stack[this.stack.length - 2];
6968
+ node.type, node.checked = token.type === "taskListCheckValueChecked";
6969
+ }
6970
+ function exitParagraphWithTaskListItem(token) {
6971
+ let parent = this.stack[this.stack.length - 2];
6972
+ if (parent && parent.type === "listItem" && typeof parent.checked == "boolean") {
6973
+ let node = this.stack[this.stack.length - 1];
6974
+ node.type;
6975
+ let head = node.children[0];
6976
+ if (head && head.type === "text") {
6977
+ let siblings = parent.children, index = -1, firstParaghraph;
6978
+ for (; ++index < siblings.length; ) {
6979
+ let sibling = siblings[index];
6980
+ if (sibling.type === "paragraph") {
6981
+ firstParaghraph = sibling;
6982
+ break;
6983
+ }
6984
+ }
6985
+ firstParaghraph === node && (head.value = head.value.slice(1), head.value.length === 0 ? node.children.shift() : node.position && head.position && typeof head.position.start.offset == "number" && (head.position.start.column++, head.position.start.offset++, node.position.start = Object.assign({}, head.position.start)));
6986
+ }
6987
+ }
6988
+ this.exit(token);
6989
+ }
6990
+ function listItemWithTaskListItem(node, parent, state, info) {
6991
+ let head = node.children[0], checkable = typeof node.checked == "boolean" && head && head.type === "paragraph", checkbox = "[" + (node.checked ? "x" : " ") + "] ", tracker = state.createTracker(info);
6992
+ checkable && tracker.move(checkbox);
6993
+ let value = handle.listItem(node, parent, state, {
6994
+ ...info,
6995
+ ...tracker.current()
6996
+ });
6997
+ return checkable && (value = value.replace(/^(?:[*+-]|\d+\.)([\r\n]| {1,3})/, check)), value;
6998
+ function check($0) {
6999
+ return $0 + checkbox;
7000
+ }
7001
+ }
7002
+
7003
+ // ../../node_modules/mdast-util-gfm/lib/index.js
7004
+ function gfmFromMarkdown() {
7005
+ return [
7006
+ gfmAutolinkLiteralFromMarkdown(),
7007
+ gfmFootnoteFromMarkdown(),
7008
+ gfmStrikethroughFromMarkdown(),
7009
+ gfmTableFromMarkdown(),
7010
+ gfmTaskListItemFromMarkdown()
7011
+ ];
7012
+ }
7013
+ function gfmToMarkdown(options) {
7014
+ return {
7015
+ extensions: [
7016
+ gfmAutolinkLiteralToMarkdown(),
7017
+ gfmFootnoteToMarkdown(options),
7018
+ gfmStrikethroughToMarkdown(),
7019
+ gfmTableToMarkdown(options),
7020
+ gfmTaskListItemToMarkdown()
7021
+ ]
7022
+ };
7023
+ }
7024
+
7025
+ // ../../node_modules/micromark-extension-gfm-autolink-literal/lib/syntax.js
7026
+ var wwwPrefix = {
7027
+ tokenize: tokenizeWwwPrefix,
7028
+ partial: !0
7029
+ }, domain = {
7030
+ tokenize: tokenizeDomain,
7031
+ partial: !0
7032
+ }, path = {
7033
+ tokenize: tokenizePath,
7034
+ partial: !0
7035
+ }, trail = {
7036
+ tokenize: tokenizeTrail,
7037
+ partial: !0
7038
+ }, emailDomainDotTrail = {
7039
+ tokenize: tokenizeEmailDomainDotTrail,
7040
+ partial: !0
7041
+ }, wwwAutolink = {
7042
+ name: "wwwAutolink",
7043
+ tokenize: tokenizeWwwAutolink,
7044
+ previous: previousWww
7045
+ }, protocolAutolink = {
7046
+ name: "protocolAutolink",
7047
+ tokenize: tokenizeProtocolAutolink,
7048
+ previous: previousProtocol
7049
+ }, emailAutolink = {
7050
+ name: "emailAutolink",
7051
+ tokenize: tokenizeEmailAutolink,
7052
+ previous: previousEmail
7053
+ }, text4 = {};
7054
+ function gfmAutolinkLiteral() {
7055
+ return {
7056
+ text: text4
7057
+ };
7058
+ }
7059
+ var code4 = 48;
7060
+ for (; code4 < 123; )
7061
+ text4[code4] = emailAutolink, code4++, code4 === 58 ? code4 = 65 : code4 === 91 && (code4 = 97);
7062
+ text4[43] = emailAutolink;
7063
+ text4[45] = emailAutolink;
7064
+ text4[46] = emailAutolink;
7065
+ text4[95] = emailAutolink;
7066
+ text4[72] = [emailAutolink, protocolAutolink];
7067
+ text4[104] = [emailAutolink, protocolAutolink];
7068
+ text4[87] = [emailAutolink, wwwAutolink];
7069
+ text4[119] = [emailAutolink, wwwAutolink];
7070
+ function tokenizeEmailAutolink(effects, ok2, nok) {
7071
+ let self = this, dot, data;
7072
+ return start;
7073
+ function start(code5) {
7074
+ return !gfmAtext(code5) || !previousEmail.call(self, self.previous) || previousUnbalanced(self.events) ? nok(code5) : (effects.enter("literalAutolink"), effects.enter("literalAutolinkEmail"), atext(code5));
7075
+ }
7076
+ function atext(code5) {
7077
+ return gfmAtext(code5) ? (effects.consume(code5), atext) : code5 === 64 ? (effects.consume(code5), emailDomain) : nok(code5);
7078
+ }
7079
+ function emailDomain(code5) {
7080
+ return code5 === 46 ? effects.check(emailDomainDotTrail, emailDomainAfter, emailDomainDot)(code5) : code5 === 45 || code5 === 95 || asciiAlphanumeric(code5) ? (data = !0, effects.consume(code5), emailDomain) : emailDomainAfter(code5);
7081
+ }
7082
+ function emailDomainDot(code5) {
7083
+ return effects.consume(code5), dot = !0, emailDomain;
7084
+ }
7085
+ function emailDomainAfter(code5) {
7086
+ return data && dot && asciiAlpha(self.previous) ? (effects.exit("literalAutolinkEmail"), effects.exit("literalAutolink"), ok2(code5)) : nok(code5);
7087
+ }
7088
+ }
7089
+ function tokenizeWwwAutolink(effects, ok2, nok) {
7090
+ let self = this;
7091
+ return wwwStart;
7092
+ function wwwStart(code5) {
7093
+ return code5 !== 87 && code5 !== 119 || !previousWww.call(self, self.previous) || previousUnbalanced(self.events) ? nok(code5) : (effects.enter("literalAutolink"), effects.enter("literalAutolinkWww"), effects.check(wwwPrefix, effects.attempt(domain, effects.attempt(path, wwwAfter), nok), nok)(code5));
7094
+ }
7095
+ function wwwAfter(code5) {
7096
+ return effects.exit("literalAutolinkWww"), effects.exit("literalAutolink"), ok2(code5);
7097
+ }
7098
+ }
7099
+ function tokenizeProtocolAutolink(effects, ok2, nok) {
7100
+ let self = this, buffer = "", seen = !1;
7101
+ return protocolStart;
7102
+ function protocolStart(code5) {
7103
+ return (code5 === 72 || code5 === 104) && previousProtocol.call(self, self.previous) && !previousUnbalanced(self.events) ? (effects.enter("literalAutolink"), effects.enter("literalAutolinkHttp"), buffer += String.fromCodePoint(code5), effects.consume(code5), protocolPrefixInside) : nok(code5);
7104
+ }
7105
+ function protocolPrefixInside(code5) {
7106
+ if (asciiAlpha(code5) && buffer.length < 5)
7107
+ return buffer += String.fromCodePoint(code5), effects.consume(code5), protocolPrefixInside;
7108
+ if (code5 === 58) {
7109
+ let protocol = buffer.toLowerCase();
7110
+ if (protocol === "http" || protocol === "https")
7111
+ return effects.consume(code5), protocolSlashesInside;
7112
+ }
7113
+ return nok(code5);
7114
+ }
7115
+ function protocolSlashesInside(code5) {
7116
+ return code5 === 47 ? (effects.consume(code5), seen ? afterProtocol : (seen = !0, protocolSlashesInside)) : nok(code5);
7117
+ }
7118
+ function afterProtocol(code5) {
7119
+ return code5 === null || asciiControl(code5) || markdownLineEndingOrSpace(code5) || unicodeWhitespace(code5) || unicodePunctuation(code5) ? nok(code5) : effects.attempt(domain, effects.attempt(path, protocolAfter), nok)(code5);
7120
+ }
7121
+ function protocolAfter(code5) {
7122
+ return effects.exit("literalAutolinkHttp"), effects.exit("literalAutolink"), ok2(code5);
7123
+ }
7124
+ }
7125
+ function tokenizeWwwPrefix(effects, ok2, nok) {
7126
+ let size = 0;
7127
+ return wwwPrefixInside;
7128
+ function wwwPrefixInside(code5) {
7129
+ return (code5 === 87 || code5 === 119) && size < 3 ? (size++, effects.consume(code5), wwwPrefixInside) : code5 === 46 && size === 3 ? (effects.consume(code5), wwwPrefixAfter) : nok(code5);
7130
+ }
7131
+ function wwwPrefixAfter(code5) {
7132
+ return code5 === null ? nok(code5) : ok2(code5);
7133
+ }
7134
+ }
7135
+ function tokenizeDomain(effects, ok2, nok) {
7136
+ let underscoreInLastSegment, underscoreInLastLastSegment, seen;
7137
+ return domainInside;
7138
+ function domainInside(code5) {
7139
+ return code5 === 46 || code5 === 95 ? effects.check(trail, domainAfter, domainAtPunctuation)(code5) : code5 === null || markdownLineEndingOrSpace(code5) || unicodeWhitespace(code5) || code5 !== 45 && unicodePunctuation(code5) ? domainAfter(code5) : (seen = !0, effects.consume(code5), domainInside);
7140
+ }
7141
+ function domainAtPunctuation(code5) {
7142
+ return code5 === 95 ? underscoreInLastSegment = !0 : (underscoreInLastLastSegment = underscoreInLastSegment, underscoreInLastSegment = void 0), effects.consume(code5), domainInside;
7143
+ }
7144
+ function domainAfter(code5) {
7145
+ return underscoreInLastLastSegment || underscoreInLastSegment || !seen ? nok(code5) : ok2(code5);
7146
+ }
7147
+ }
7148
+ function tokenizePath(effects, ok2) {
7149
+ let sizeOpen = 0, sizeClose = 0;
7150
+ return pathInside;
7151
+ function pathInside(code5) {
7152
+ return code5 === 40 ? (sizeOpen++, effects.consume(code5), pathInside) : code5 === 41 && sizeClose < sizeOpen ? pathAtPunctuation(code5) : code5 === 33 || code5 === 34 || code5 === 38 || code5 === 39 || code5 === 41 || code5 === 42 || code5 === 44 || code5 === 46 || code5 === 58 || code5 === 59 || code5 === 60 || code5 === 63 || code5 === 93 || code5 === 95 || code5 === 126 ? effects.check(trail, ok2, pathAtPunctuation)(code5) : code5 === null || markdownLineEndingOrSpace(code5) || unicodeWhitespace(code5) ? ok2(code5) : (effects.consume(code5), pathInside);
7153
+ }
7154
+ function pathAtPunctuation(code5) {
7155
+ return code5 === 41 && sizeClose++, effects.consume(code5), pathInside;
7156
+ }
7157
+ }
7158
+ function tokenizeTrail(effects, ok2, nok) {
7159
+ return trail2;
7160
+ function trail2(code5) {
7161
+ return code5 === 33 || code5 === 34 || code5 === 39 || code5 === 41 || code5 === 42 || code5 === 44 || code5 === 46 || code5 === 58 || code5 === 59 || code5 === 63 || code5 === 95 || code5 === 126 ? (effects.consume(code5), trail2) : code5 === 38 ? (effects.consume(code5), trailCharacterReferenceStart) : code5 === 93 ? (effects.consume(code5), trailBracketAfter) : (
7162
+ // `<` is an end.
7163
+ code5 === 60 || // So is whitespace.
7164
+ code5 === null || markdownLineEndingOrSpace(code5) || unicodeWhitespace(code5) ? ok2(code5) : nok(code5)
7165
+ );
7166
+ }
7167
+ function trailBracketAfter(code5) {
7168
+ return code5 === null || code5 === 40 || code5 === 91 || markdownLineEndingOrSpace(code5) || unicodeWhitespace(code5) ? ok2(code5) : trail2(code5);
7169
+ }
7170
+ function trailCharacterReferenceStart(code5) {
7171
+ return asciiAlpha(code5) ? trailCharacterReferenceInside(code5) : nok(code5);
7172
+ }
7173
+ function trailCharacterReferenceInside(code5) {
7174
+ return code5 === 59 ? (effects.consume(code5), trail2) : asciiAlpha(code5) ? (effects.consume(code5), trailCharacterReferenceInside) : nok(code5);
7175
+ }
7176
+ }
7177
+ function tokenizeEmailDomainDotTrail(effects, ok2, nok) {
7178
+ return start;
7179
+ function start(code5) {
7180
+ return effects.consume(code5), after;
7181
+ }
7182
+ function after(code5) {
7183
+ return asciiAlphanumeric(code5) ? nok(code5) : ok2(code5);
7184
+ }
7185
+ }
7186
+ function previousWww(code5) {
7187
+ return code5 === null || code5 === 40 || code5 === 42 || code5 === 95 || code5 === 91 || code5 === 93 || code5 === 126 || markdownLineEndingOrSpace(code5);
7188
+ }
7189
+ function previousProtocol(code5) {
7190
+ return !asciiAlpha(code5);
7191
+ }
7192
+ function previousEmail(code5) {
7193
+ return !(code5 === 47 || gfmAtext(code5));
7194
+ }
7195
+ function gfmAtext(code5) {
7196
+ return code5 === 43 || code5 === 45 || code5 === 46 || code5 === 95 || asciiAlphanumeric(code5);
7197
+ }
7198
+ function previousUnbalanced(events) {
7199
+ let index = events.length, result = !1;
7200
+ for (; index--; ) {
7201
+ let token = events[index][1];
7202
+ if ((token.type === "labelLink" || token.type === "labelImage") && !token._balanced) {
7203
+ result = !0;
7204
+ break;
7205
+ }
7206
+ if (token._gfmAutolinkLiteralWalkedInto) {
7207
+ result = !1;
7208
+ break;
7209
+ }
7210
+ }
7211
+ return events.length > 0 && !result && (events[events.length - 1][1]._gfmAutolinkLiteralWalkedInto = !0), result;
7212
+ }
7213
+
7214
+ // ../../node_modules/micromark-extension-gfm-footnote/lib/syntax.js
7215
+ var indent = {
7216
+ tokenize: tokenizeIndent,
7217
+ partial: !0
7218
+ };
7219
+ function gfmFootnote() {
7220
+ return {
7221
+ document: {
7222
+ 91: {
7223
+ name: "gfmFootnoteDefinition",
7224
+ tokenize: tokenizeDefinitionStart,
7225
+ continuation: {
7226
+ tokenize: tokenizeDefinitionContinuation
7227
+ },
7228
+ exit: gfmFootnoteDefinitionEnd
7229
+ }
7230
+ },
7231
+ text: {
7232
+ 91: {
7233
+ name: "gfmFootnoteCall",
7234
+ tokenize: tokenizeGfmFootnoteCall
7235
+ },
7236
+ 93: {
7237
+ name: "gfmPotentialFootnoteCall",
7238
+ add: "after",
7239
+ tokenize: tokenizePotentialGfmFootnoteCall,
7240
+ resolveTo: resolveToPotentialGfmFootnoteCall
7241
+ }
7242
+ }
7243
+ };
7244
+ }
7245
+ function tokenizePotentialGfmFootnoteCall(effects, ok2, nok) {
7246
+ let self = this, index = self.events.length, defined = self.parser.gfmFootnotes || (self.parser.gfmFootnotes = []), labelStart;
7247
+ for (; index--; ) {
7248
+ let token = self.events[index][1];
7249
+ if (token.type === "labelImage") {
7250
+ labelStart = token;
7251
+ break;
7252
+ }
7253
+ if (token.type === "gfmFootnoteCall" || token.type === "labelLink" || token.type === "label" || token.type === "image" || token.type === "link")
7254
+ break;
7255
+ }
7256
+ return start;
7257
+ function start(code5) {
7258
+ if (!labelStart || !labelStart._balanced)
7259
+ return nok(code5);
7260
+ let id = normalizeIdentifier(self.sliceSerialize({
7261
+ start: labelStart.end,
7262
+ end: self.now()
7263
+ }));
7264
+ return id.codePointAt(0) !== 94 || !defined.includes(id.slice(1)) ? nok(code5) : (effects.enter("gfmFootnoteCallLabelMarker"), effects.consume(code5), effects.exit("gfmFootnoteCallLabelMarker"), ok2(code5));
7265
+ }
7266
+ }
7267
+ function resolveToPotentialGfmFootnoteCall(events, context) {
7268
+ let index = events.length, labelStart;
7269
+ for (; index--; )
7270
+ if (events[index][1].type === "labelImage" && events[index][0] === "enter") {
7271
+ labelStart = events[index][1];
7272
+ break;
7273
+ }
7274
+ events[index + 1][1].type = "data", events[index + 3][1].type = "gfmFootnoteCallLabelMarker";
7275
+ let call = {
7276
+ type: "gfmFootnoteCall",
7277
+ start: Object.assign({}, events[index + 3][1].start),
7278
+ end: Object.assign({}, events[events.length - 1][1].end)
7279
+ }, marker = {
7280
+ type: "gfmFootnoteCallMarker",
7281
+ start: Object.assign({}, events[index + 3][1].end),
7282
+ end: Object.assign({}, events[index + 3][1].end)
7283
+ };
7284
+ marker.end.column++, marker.end.offset++, marker.end._bufferIndex++;
7285
+ let string = {
7286
+ type: "gfmFootnoteCallString",
7287
+ start: Object.assign({}, marker.end),
7288
+ end: Object.assign({}, events[events.length - 1][1].start)
7289
+ }, chunk = {
7290
+ type: "chunkString",
7291
+ contentType: "string",
7292
+ start: Object.assign({}, string.start),
7293
+ end: Object.assign({}, string.end)
7294
+ }, replacement = [
7295
+ // Take the `labelImageMarker` (now `data`, the `!`)
7296
+ events[index + 1],
7297
+ events[index + 2],
7298
+ ["enter", call, context],
7299
+ // The `[`
7300
+ events[index + 3],
7301
+ events[index + 4],
7302
+ // The `^`.
7303
+ ["enter", marker, context],
7304
+ ["exit", marker, context],
7305
+ // Everything in between.
7306
+ ["enter", string, context],
7307
+ ["enter", chunk, context],
7308
+ ["exit", chunk, context],
7309
+ ["exit", string, context],
7310
+ // The ending (`]`, properly parsed and labelled).
7311
+ events[events.length - 2],
7312
+ events[events.length - 1],
7313
+ ["exit", call, context]
7314
+ ];
7315
+ return events.splice(index, events.length - index + 1, ...replacement), events;
7316
+ }
7317
+ function tokenizeGfmFootnoteCall(effects, ok2, nok) {
7318
+ let self = this, defined = self.parser.gfmFootnotes || (self.parser.gfmFootnotes = []), size = 0, data;
7319
+ return start;
7320
+ function start(code5) {
7321
+ return effects.enter("gfmFootnoteCall"), effects.enter("gfmFootnoteCallLabelMarker"), effects.consume(code5), effects.exit("gfmFootnoteCallLabelMarker"), callStart;
7322
+ }
7323
+ function callStart(code5) {
7324
+ return code5 !== 94 ? nok(code5) : (effects.enter("gfmFootnoteCallMarker"), effects.consume(code5), effects.exit("gfmFootnoteCallMarker"), effects.enter("gfmFootnoteCallString"), effects.enter("chunkString").contentType = "string", callData);
7325
+ }
7326
+ function callData(code5) {
7327
+ if (
7328
+ // Too long.
7329
+ size > 999 || // Closing brace with nothing.
7330
+ code5 === 93 && !data || // Space or tab is not supported by GFM for some reason.
7331
+ // `\n` and `[` not being supported makes sense.
7332
+ code5 === null || code5 === 91 || markdownLineEndingOrSpace(code5)
7333
+ )
7334
+ return nok(code5);
7335
+ if (code5 === 93) {
7336
+ effects.exit("chunkString");
7337
+ let token = effects.exit("gfmFootnoteCallString");
7338
+ return defined.includes(normalizeIdentifier(self.sliceSerialize(token))) ? (effects.enter("gfmFootnoteCallLabelMarker"), effects.consume(code5), effects.exit("gfmFootnoteCallLabelMarker"), effects.exit("gfmFootnoteCall"), ok2) : nok(code5);
7339
+ }
7340
+ return markdownLineEndingOrSpace(code5) || (data = !0), size++, effects.consume(code5), code5 === 92 ? callEscape : callData;
7341
+ }
7342
+ function callEscape(code5) {
7343
+ return code5 === 91 || code5 === 92 || code5 === 93 ? (effects.consume(code5), size++, callData) : callData(code5);
7344
+ }
7345
+ }
7346
+ function tokenizeDefinitionStart(effects, ok2, nok) {
7347
+ let self = this, defined = self.parser.gfmFootnotes || (self.parser.gfmFootnotes = []), identifier, size = 0, data;
7348
+ return start;
7349
+ function start(code5) {
7350
+ return effects.enter("gfmFootnoteDefinition")._container = !0, effects.enter("gfmFootnoteDefinitionLabel"), effects.enter("gfmFootnoteDefinitionLabelMarker"), effects.consume(code5), effects.exit("gfmFootnoteDefinitionLabelMarker"), labelAtMarker;
7351
+ }
7352
+ function labelAtMarker(code5) {
7353
+ return code5 === 94 ? (effects.enter("gfmFootnoteDefinitionMarker"), effects.consume(code5), effects.exit("gfmFootnoteDefinitionMarker"), effects.enter("gfmFootnoteDefinitionLabelString"), effects.enter("chunkString").contentType = "string", labelInside) : nok(code5);
7354
+ }
7355
+ function labelInside(code5) {
7356
+ if (
7357
+ // Too long.
7358
+ size > 999 || // Closing brace with nothing.
7359
+ code5 === 93 && !data || // Space or tab is not supported by GFM for some reason.
7360
+ // `\n` and `[` not being supported makes sense.
7361
+ code5 === null || code5 === 91 || markdownLineEndingOrSpace(code5)
7362
+ )
7363
+ return nok(code5);
7364
+ if (code5 === 93) {
7365
+ effects.exit("chunkString");
7366
+ let token = effects.exit("gfmFootnoteDefinitionLabelString");
7367
+ return identifier = normalizeIdentifier(self.sliceSerialize(token)), effects.enter("gfmFootnoteDefinitionLabelMarker"), effects.consume(code5), effects.exit("gfmFootnoteDefinitionLabelMarker"), effects.exit("gfmFootnoteDefinitionLabel"), labelAfter;
7368
+ }
7369
+ return markdownLineEndingOrSpace(code5) || (data = !0), size++, effects.consume(code5), code5 === 92 ? labelEscape : labelInside;
7370
+ }
7371
+ function labelEscape(code5) {
7372
+ return code5 === 91 || code5 === 92 || code5 === 93 ? (effects.consume(code5), size++, labelInside) : labelInside(code5);
7373
+ }
7374
+ function labelAfter(code5) {
7375
+ return code5 === 58 ? (effects.enter("definitionMarker"), effects.consume(code5), effects.exit("definitionMarker"), defined.includes(identifier) || defined.push(identifier), factorySpace(effects, whitespaceAfter, "gfmFootnoteDefinitionWhitespace")) : nok(code5);
7376
+ }
7377
+ function whitespaceAfter(code5) {
7378
+ return ok2(code5);
7379
+ }
7380
+ }
7381
+ function tokenizeDefinitionContinuation(effects, ok2, nok) {
7382
+ return effects.check(blankLine, ok2, effects.attempt(indent, ok2, nok));
7383
+ }
7384
+ function gfmFootnoteDefinitionEnd(effects) {
7385
+ effects.exit("gfmFootnoteDefinition");
7386
+ }
7387
+ function tokenizeIndent(effects, ok2, nok) {
7388
+ let self = this;
7389
+ return factorySpace(effects, afterPrefix, "gfmFootnoteDefinitionIndent", 5);
7390
+ function afterPrefix(code5) {
7391
+ let tail = self.events[self.events.length - 1];
7392
+ return tail && tail[1].type === "gfmFootnoteDefinitionIndent" && tail[2].sliceSerialize(tail[1], !0).length === 4 ? ok2(code5) : nok(code5);
7393
+ }
7394
+ }
7395
+
7396
+ // ../../node_modules/micromark-extension-gfm-footnote/lib/html.js
7397
+ var own9 = {}.hasOwnProperty;
7398
+
7399
+ // ../../node_modules/micromark-extension-gfm-strikethrough/lib/syntax.js
7400
+ function gfmStrikethrough(options) {
7401
+ let single = (options || {}).singleTilde, tokenizer = {
7402
+ name: "strikethrough",
7403
+ tokenize: tokenizeStrikethrough,
7404
+ resolveAll: resolveAllStrikethrough
7405
+ };
7406
+ return single == null && (single = !0), {
7407
+ text: {
7408
+ 126: tokenizer
7409
+ },
7410
+ insideSpan: {
7411
+ null: [tokenizer]
7412
+ },
7413
+ attentionMarkers: {
7414
+ null: [126]
7415
+ }
7416
+ };
7417
+ function resolveAllStrikethrough(events, context) {
7418
+ let index = -1;
7419
+ for (; ++index < events.length; )
7420
+ if (events[index][0] === "enter" && events[index][1].type === "strikethroughSequenceTemporary" && events[index][1]._close) {
7421
+ let open = index;
7422
+ for (; open--; )
7423
+ if (events[open][0] === "exit" && events[open][1].type === "strikethroughSequenceTemporary" && events[open][1]._open && // If the sizes are the same:
7424
+ events[index][1].end.offset - events[index][1].start.offset === events[open][1].end.offset - events[open][1].start.offset) {
7425
+ events[index][1].type = "strikethroughSequence", events[open][1].type = "strikethroughSequence";
7426
+ let strikethrough2 = {
7427
+ type: "strikethrough",
7428
+ start: Object.assign({}, events[open][1].start),
7429
+ end: Object.assign({}, events[index][1].end)
7430
+ }, text5 = {
7431
+ type: "strikethroughText",
7432
+ start: Object.assign({}, events[open][1].end),
7433
+ end: Object.assign({}, events[index][1].start)
7434
+ }, nextEvents = [["enter", strikethrough2, context], ["enter", events[open][1], context], ["exit", events[open][1], context], ["enter", text5, context]], insideSpan = context.parser.constructs.insideSpan.null;
7435
+ insideSpan && splice(nextEvents, nextEvents.length, 0, resolveAll(insideSpan, events.slice(open + 1, index), context)), splice(nextEvents, nextEvents.length, 0, [["exit", text5, context], ["enter", events[index][1], context], ["exit", events[index][1], context], ["exit", strikethrough2, context]]), splice(events, open - 1, index - open + 3, nextEvents), index = open + nextEvents.length - 2;
7436
+ break;
7437
+ }
7438
+ }
7439
+ for (index = -1; ++index < events.length; )
7440
+ events[index][1].type === "strikethroughSequenceTemporary" && (events[index][1].type = "data");
7441
+ return events;
7442
+ }
7443
+ function tokenizeStrikethrough(effects, ok2, nok) {
7444
+ let previous2 = this.previous, events = this.events, size = 0;
7445
+ return start;
7446
+ function start(code5) {
7447
+ return previous2 === 126 && events[events.length - 1][1].type !== "characterEscape" ? nok(code5) : (effects.enter("strikethroughSequenceTemporary"), more(code5));
7448
+ }
7449
+ function more(code5) {
7450
+ let before = classifyCharacter(previous2);
7451
+ if (code5 === 126)
7452
+ return size > 1 ? nok(code5) : (effects.consume(code5), size++, more);
7453
+ if (size < 2 && !single) return nok(code5);
7454
+ let token = effects.exit("strikethroughSequenceTemporary"), after = classifyCharacter(code5);
7455
+ return token._open = !after || after === 2 && !!before, token._close = !before || before === 2 && !!after, ok2(code5);
7456
+ }
7457
+ }
7458
+ }
7459
+
7460
+ // ../../node_modules/micromark-extension-gfm-table/lib/edit-map.js
7461
+ var EditMap = class {
7462
+ /**
7463
+ * Create a new edit map.
7464
+ */
7465
+ constructor() {
7466
+ this.map = [], this.index = /* @__PURE__ */ new Map();
7467
+ }
7468
+ /**
7469
+ * Create an edit: a remove and/or add at a certain place.
7470
+ *
7471
+ * @param {number} index
7472
+ * Index at which to apply the edit.
7473
+ * @param {number} remove
7474
+ * Count of items to remove at the index.
7475
+ * @param {Array<Event>} add
7476
+ * Items to add at the index.
7477
+ * @returns {undefined}
7478
+ * Nothing.
7479
+ */
7480
+ add(index, remove, add) {
7481
+ addImplementation(this, index, remove, add);
7482
+ }
7483
+ // To do: add this when moving to `micromark`.
7484
+ // /**
7485
+ // * Create an edit: but insert `add` before existing additions.
7486
+ // *
7487
+ // * @param {number} index
7488
+ // * @param {number} remove
7489
+ // * @param {Array<Event>} add
7490
+ // * @returns {undefined}
7491
+ // */
7492
+ // addBefore(index, remove, add) {
7493
+ // addImplementation(this, index, remove, add, true)
7494
+ // }
7495
+ /**
7496
+ * Done, change the events.
7497
+ *
7498
+ * @param {Array<Event>} events
7499
+ * List of events to apply the edits to.
7500
+ * @returns {undefined}
7501
+ * Nothing.
7502
+ */
7503
+ consume(events) {
7504
+ if (this.map.sort(function(a, b) {
7505
+ return a[0] - b[0];
7506
+ }), this.map.length === 0)
7507
+ return;
7508
+ let index = this.map.length, vecs = [];
7509
+ for (; index > 0; )
7510
+ index -= 1, vecs.push(events.slice(this.map[index][0] + this.map[index][1]), this.map[index][2]), events.length = this.map[index][0];
7511
+ vecs.push(events.slice()), events.length = 0;
7512
+ let slice2 = vecs.pop();
7513
+ for (; slice2; ) {
7514
+ for (let element2 of slice2)
7515
+ events.push(element2);
7516
+ slice2 = vecs.pop();
7517
+ }
7518
+ this.map.length = 0, this.index.clear();
7519
+ }
7520
+ };
7521
+ function addImplementation(editMap, at, remove, add) {
7522
+ if (remove === 0 && add.length === 0)
7523
+ return;
7524
+ let existing = editMap.index.get(at);
7525
+ if (existing) {
7526
+ existing[1] += remove, existing[2].push(...add);
7527
+ return;
7528
+ }
7529
+ let change = [at, remove, add];
7530
+ editMap.map.push(change), editMap.index.set(at, change);
7531
+ }
7532
+
7533
+ // ../../node_modules/micromark-extension-gfm-table/lib/infer.js
7534
+ function gfmTableAlign(events, index) {
7535
+ let inDelimiterRow = !1, align = [];
7536
+ for (; index < events.length; ) {
7537
+ let event = events[index];
7538
+ if (inDelimiterRow) {
7539
+ if (event[0] === "enter")
7540
+ event[1].type === "tableContent" && align.push(events[index + 1][1].type === "tableDelimiterMarker" ? "left" : "none");
7541
+ else if (event[1].type === "tableContent") {
7542
+ if (events[index - 1][1].type === "tableDelimiterMarker") {
7543
+ let alignIndex = align.length - 1;
7544
+ align[alignIndex] = align[alignIndex] === "left" ? "center" : "right";
7545
+ }
7546
+ } else if (event[1].type === "tableDelimiterRow")
7547
+ break;
7548
+ } else event[0] === "enter" && event[1].type === "tableDelimiterRow" && (inDelimiterRow = !0);
7549
+ index += 1;
7550
+ }
7551
+ return align;
7552
+ }
7553
+
7554
+ // ../../node_modules/micromark-extension-gfm-table/lib/syntax.js
7555
+ function gfmTable() {
7556
+ return {
7557
+ flow: {
7558
+ null: {
7559
+ name: "table",
7560
+ tokenize: tokenizeTable,
7561
+ resolveAll: resolveTable
7562
+ }
7563
+ }
7564
+ };
7565
+ }
7566
+ function tokenizeTable(effects, ok2, nok) {
7567
+ let self = this, size = 0, sizeB = 0, seen;
7568
+ return start;
7569
+ function start(code5) {
7570
+ let index = self.events.length - 1;
7571
+ for (; index > -1; ) {
7572
+ let {
7573
+ type
7574
+ } = self.events[index][1];
7575
+ if (type === "lineEnding" || // Note: markdown-rs uses `whitespace` instead of `linePrefix`
7576
+ type === "linePrefix")
7577
+ index--;
7578
+ else
7579
+ break;
7580
+ }
7581
+ let tail = index > -1 ? self.events[index][1].type : null, next = tail === "tableHead" || tail === "tableRow" ? bodyRowStart : headRowBefore;
7582
+ return next === bodyRowStart && self.parser.lazy[self.now().line] ? nok(code5) : next(code5);
7583
+ }
7584
+ function headRowBefore(code5) {
7585
+ return effects.enter("tableHead"), effects.enter("tableRow"), headRowStart(code5);
7586
+ }
7587
+ function headRowStart(code5) {
7588
+ return code5 === 124 || (seen = !0, sizeB += 1), headRowBreak(code5);
7589
+ }
7590
+ function headRowBreak(code5) {
7591
+ return code5 === null ? nok(code5) : markdownLineEnding(code5) ? sizeB > 1 ? (sizeB = 0, self.interrupt = !0, effects.exit("tableRow"), effects.enter("lineEnding"), effects.consume(code5), effects.exit("lineEnding"), headDelimiterStart) : nok(code5) : markdownSpace(code5) ? factorySpace(effects, headRowBreak, "whitespace")(code5) : (sizeB += 1, seen && (seen = !1, size += 1), code5 === 124 ? (effects.enter("tableCellDivider"), effects.consume(code5), effects.exit("tableCellDivider"), seen = !0, headRowBreak) : (effects.enter("data"), headRowData(code5)));
7592
+ }
7593
+ function headRowData(code5) {
7594
+ return code5 === null || code5 === 124 || markdownLineEndingOrSpace(code5) ? (effects.exit("data"), headRowBreak(code5)) : (effects.consume(code5), code5 === 92 ? headRowEscape : headRowData);
7595
+ }
7596
+ function headRowEscape(code5) {
7597
+ return code5 === 92 || code5 === 124 ? (effects.consume(code5), headRowData) : headRowData(code5);
7598
+ }
7599
+ function headDelimiterStart(code5) {
7600
+ return self.interrupt = !1, self.parser.lazy[self.now().line] ? nok(code5) : (effects.enter("tableDelimiterRow"), seen = !1, markdownSpace(code5) ? factorySpace(effects, headDelimiterBefore, "linePrefix", self.parser.constructs.disable.null.includes("codeIndented") ? void 0 : 4)(code5) : headDelimiterBefore(code5));
7601
+ }
7602
+ function headDelimiterBefore(code5) {
7603
+ return code5 === 45 || code5 === 58 ? headDelimiterValueBefore(code5) : code5 === 124 ? (seen = !0, effects.enter("tableCellDivider"), effects.consume(code5), effects.exit("tableCellDivider"), headDelimiterCellBefore) : headDelimiterNok(code5);
7604
+ }
7605
+ function headDelimiterCellBefore(code5) {
7606
+ return markdownSpace(code5) ? factorySpace(effects, headDelimiterValueBefore, "whitespace")(code5) : headDelimiterValueBefore(code5);
7607
+ }
7608
+ function headDelimiterValueBefore(code5) {
7609
+ return code5 === 58 ? (sizeB += 1, seen = !0, effects.enter("tableDelimiterMarker"), effects.consume(code5), effects.exit("tableDelimiterMarker"), headDelimiterLeftAlignmentAfter) : code5 === 45 ? (sizeB += 1, headDelimiterLeftAlignmentAfter(code5)) : code5 === null || markdownLineEnding(code5) ? headDelimiterCellAfter(code5) : headDelimiterNok(code5);
7610
+ }
7611
+ function headDelimiterLeftAlignmentAfter(code5) {
7612
+ return code5 === 45 ? (effects.enter("tableDelimiterFiller"), headDelimiterFiller(code5)) : headDelimiterNok(code5);
7613
+ }
7614
+ function headDelimiterFiller(code5) {
7615
+ return code5 === 45 ? (effects.consume(code5), headDelimiterFiller) : code5 === 58 ? (seen = !0, effects.exit("tableDelimiterFiller"), effects.enter("tableDelimiterMarker"), effects.consume(code5), effects.exit("tableDelimiterMarker"), headDelimiterRightAlignmentAfter) : (effects.exit("tableDelimiterFiller"), headDelimiterRightAlignmentAfter(code5));
7616
+ }
7617
+ function headDelimiterRightAlignmentAfter(code5) {
7618
+ return markdownSpace(code5) ? factorySpace(effects, headDelimiterCellAfter, "whitespace")(code5) : headDelimiterCellAfter(code5);
7619
+ }
7620
+ function headDelimiterCellAfter(code5) {
7621
+ return code5 === 124 ? headDelimiterBefore(code5) : code5 === null || markdownLineEnding(code5) ? !seen || size !== sizeB ? headDelimiterNok(code5) : (effects.exit("tableDelimiterRow"), effects.exit("tableHead"), ok2(code5)) : headDelimiterNok(code5);
7622
+ }
7623
+ function headDelimiterNok(code5) {
7624
+ return nok(code5);
7625
+ }
7626
+ function bodyRowStart(code5) {
7627
+ return effects.enter("tableRow"), bodyRowBreak(code5);
7628
+ }
7629
+ function bodyRowBreak(code5) {
7630
+ return code5 === 124 ? (effects.enter("tableCellDivider"), effects.consume(code5), effects.exit("tableCellDivider"), bodyRowBreak) : code5 === null || markdownLineEnding(code5) ? (effects.exit("tableRow"), ok2(code5)) : markdownSpace(code5) ? factorySpace(effects, bodyRowBreak, "whitespace")(code5) : (effects.enter("data"), bodyRowData(code5));
7631
+ }
7632
+ function bodyRowData(code5) {
7633
+ return code5 === null || code5 === 124 || markdownLineEndingOrSpace(code5) ? (effects.exit("data"), bodyRowBreak(code5)) : (effects.consume(code5), code5 === 92 ? bodyRowEscape : bodyRowData);
7634
+ }
7635
+ function bodyRowEscape(code5) {
7636
+ return code5 === 92 || code5 === 124 ? (effects.consume(code5), bodyRowData) : bodyRowData(code5);
7637
+ }
7638
+ }
7639
+ function resolveTable(events, context) {
7640
+ let index = -1, inFirstCellAwaitingPipe = !0, rowKind = 0, lastCell = [0, 0, 0, 0], cell = [0, 0, 0, 0], afterHeadAwaitingFirstBodyRow = !1, lastTableEnd = 0, currentTable, currentBody, currentCell, map3 = new EditMap();
7641
+ for (; ++index < events.length; ) {
7642
+ let event = events[index], token = event[1];
7643
+ event[0] === "enter" ? token.type === "tableHead" ? (afterHeadAwaitingFirstBodyRow = !1, lastTableEnd !== 0 && (flushTableEnd(map3, context, lastTableEnd, currentTable, currentBody), currentBody = void 0, lastTableEnd = 0), currentTable = {
7644
+ type: "table",
7645
+ start: Object.assign({}, token.start),
7646
+ // Note: correct end is set later.
7647
+ end: Object.assign({}, token.end)
7648
+ }, map3.add(index, 0, [["enter", currentTable, context]])) : token.type === "tableRow" || token.type === "tableDelimiterRow" ? (inFirstCellAwaitingPipe = !0, currentCell = void 0, lastCell = [0, 0, 0, 0], cell = [0, index + 1, 0, 0], afterHeadAwaitingFirstBodyRow && (afterHeadAwaitingFirstBodyRow = !1, currentBody = {
7649
+ type: "tableBody",
7650
+ start: Object.assign({}, token.start),
7651
+ // Note: correct end is set later.
7652
+ end: Object.assign({}, token.end)
7653
+ }, map3.add(index, 0, [["enter", currentBody, context]])), rowKind = token.type === "tableDelimiterRow" ? 2 : currentBody ? 3 : 1) : rowKind && (token.type === "data" || token.type === "tableDelimiterMarker" || token.type === "tableDelimiterFiller") ? (inFirstCellAwaitingPipe = !1, cell[2] === 0 && (lastCell[1] !== 0 && (cell[0] = cell[1], currentCell = flushCell(map3, context, lastCell, rowKind, void 0, currentCell), lastCell = [0, 0, 0, 0]), cell[2] = index)) : token.type === "tableCellDivider" && (inFirstCellAwaitingPipe ? inFirstCellAwaitingPipe = !1 : (lastCell[1] !== 0 && (cell[0] = cell[1], currentCell = flushCell(map3, context, lastCell, rowKind, void 0, currentCell)), lastCell = cell, cell = [lastCell[1], index, 0, 0])) : token.type === "tableHead" ? (afterHeadAwaitingFirstBodyRow = !0, lastTableEnd = index) : token.type === "tableRow" || token.type === "tableDelimiterRow" ? (lastTableEnd = index, lastCell[1] !== 0 ? (cell[0] = cell[1], currentCell = flushCell(map3, context, lastCell, rowKind, index, currentCell)) : cell[1] !== 0 && (currentCell = flushCell(map3, context, cell, rowKind, index, currentCell)), rowKind = 0) : rowKind && (token.type === "data" || token.type === "tableDelimiterMarker" || token.type === "tableDelimiterFiller") && (cell[3] = index);
7654
+ }
7655
+ for (lastTableEnd !== 0 && flushTableEnd(map3, context, lastTableEnd, currentTable, currentBody), map3.consume(context.events), index = -1; ++index < context.events.length; ) {
7656
+ let event = context.events[index];
7657
+ event[0] === "enter" && event[1].type === "table" && (event[1]._align = gfmTableAlign(context.events, index));
7658
+ }
7659
+ return events;
7660
+ }
7661
+ function flushCell(map3, context, range, rowKind, rowEnd, previousCell) {
7662
+ let groupName = rowKind === 1 ? "tableHeader" : rowKind === 2 ? "tableDelimiter" : "tableData", valueName = "tableContent";
7663
+ range[0] !== 0 && (previousCell.end = Object.assign({}, getPoint(context.events, range[0])), map3.add(range[0], 0, [["exit", previousCell, context]]));
7664
+ let now = getPoint(context.events, range[1]);
7665
+ if (previousCell = {
7666
+ type: groupName,
7667
+ start: Object.assign({}, now),
7668
+ // Note: correct end is set later.
7669
+ end: Object.assign({}, now)
7670
+ }, map3.add(range[1], 0, [["enter", previousCell, context]]), range[2] !== 0) {
7671
+ let relatedStart = getPoint(context.events, range[2]), relatedEnd = getPoint(context.events, range[3]), valueToken = {
7672
+ type: valueName,
7673
+ start: Object.assign({}, relatedStart),
7674
+ end: Object.assign({}, relatedEnd)
7675
+ };
7676
+ if (map3.add(range[2], 0, [["enter", valueToken, context]]), rowKind !== 2) {
7677
+ let start = context.events[range[2]], end = context.events[range[3]];
7678
+ if (start[1].end = Object.assign({}, end[1].end), start[1].type = "chunkText", start[1].contentType = "text", range[3] > range[2] + 1) {
7679
+ let a = range[2] + 1, b = range[3] - range[2] - 1;
7680
+ map3.add(a, b, []);
7681
+ }
7682
+ }
7683
+ map3.add(range[3] + 1, 0, [["exit", valueToken, context]]);
7684
+ }
7685
+ return rowEnd !== void 0 && (previousCell.end = Object.assign({}, getPoint(context.events, rowEnd)), map3.add(rowEnd, 0, [["exit", previousCell, context]]), previousCell = void 0), previousCell;
7686
+ }
7687
+ function flushTableEnd(map3, context, index, table2, tableBody) {
7688
+ let exits = [], related = getPoint(context.events, index);
7689
+ tableBody && (tableBody.end = Object.assign({}, related), exits.push(["exit", tableBody, context])), table2.end = Object.assign({}, related), exits.push(["exit", table2, context]), map3.add(index + 1, 0, exits);
7690
+ }
7691
+ function getPoint(events, index) {
7692
+ let event = events[index], side = event[0] === "enter" ? "start" : "end";
7693
+ return event[1][side];
7694
+ }
7695
+
7696
+ // ../../node_modules/micromark-extension-gfm-tagfilter/lib/index.js
7697
+ var reFlow = /<(\/?)(iframe|noembed|noframes|plaintext|script|style|title|textarea|xmp)(?=[\t\n\f\r />])/gi, reText = new RegExp("^" + reFlow.source, "i");
7698
+
7699
+ // ../../node_modules/micromark-extension-gfm-task-list-item/lib/syntax.js
7700
+ var tasklistCheck = {
7701
+ name: "tasklistCheck",
7702
+ tokenize: tokenizeTasklistCheck
7703
+ };
7704
+ function gfmTaskListItem() {
7705
+ return {
7706
+ text: {
7707
+ 91: tasklistCheck
7708
+ }
7709
+ };
7710
+ }
7711
+ function tokenizeTasklistCheck(effects, ok2, nok) {
7712
+ let self = this;
7713
+ return open;
7714
+ function open(code5) {
7715
+ return (
7716
+ // Exit if there’s stuff before.
7717
+ self.previous !== null || // Exit if not in the first content that is the first child of a list
7718
+ // item.
7719
+ !self._gfmTasklistFirstContentOfListItem ? nok(code5) : (effects.enter("taskListCheck"), effects.enter("taskListCheckMarker"), effects.consume(code5), effects.exit("taskListCheckMarker"), inside)
7720
+ );
7721
+ }
7722
+ function inside(code5) {
7723
+ return markdownLineEndingOrSpace(code5) ? (effects.enter("taskListCheckValueUnchecked"), effects.consume(code5), effects.exit("taskListCheckValueUnchecked"), close) : code5 === 88 || code5 === 120 ? (effects.enter("taskListCheckValueChecked"), effects.consume(code5), effects.exit("taskListCheckValueChecked"), close) : nok(code5);
7724
+ }
7725
+ function close(code5) {
7726
+ return code5 === 93 ? (effects.enter("taskListCheckMarker"), effects.consume(code5), effects.exit("taskListCheckMarker"), effects.exit("taskListCheck"), after) : nok(code5);
7727
+ }
7728
+ function after(code5) {
7729
+ return markdownLineEnding(code5) ? ok2(code5) : markdownSpace(code5) ? effects.check({
7730
+ tokenize: spaceThenNonSpace
7731
+ }, ok2, nok)(code5) : nok(code5);
7732
+ }
7733
+ }
7734
+ function spaceThenNonSpace(effects, ok2, nok) {
7735
+ return factorySpace(effects, after, "whitespace");
7736
+ function after(code5) {
7737
+ return code5 === null ? nok(code5) : ok2(code5);
7738
+ }
7739
+ }
7740
+
7741
+ // ../../node_modules/micromark-extension-gfm/index.js
7742
+ function gfm(options) {
7743
+ return combineExtensions([
7744
+ gfmAutolinkLiteral(),
7745
+ gfmFootnote(),
7746
+ gfmStrikethrough(options),
7747
+ gfmTable(),
7748
+ gfmTaskListItem()
7749
+ ]);
7750
+ }
7751
+
7752
+ // ../../node_modules/remark-gfm/lib/index.js
7753
+ var emptyOptions4 = {};
7754
+ function remarkGfm(options) {
7755
+ let self = (
7756
+ /** @type {Processor<Root>} */
7757
+ this
7758
+ ), settings = options || emptyOptions4, data = self.data(), micromarkExtensions = data.micromarkExtensions || (data.micromarkExtensions = []), fromMarkdownExtensions = data.fromMarkdownExtensions || (data.fromMarkdownExtensions = []), toMarkdownExtensions = data.toMarkdownExtensions || (data.toMarkdownExtensions = []);
7759
+ micromarkExtensions.push(gfm(settings)), fromMarkdownExtensions.push(gfmFromMarkdown()), toMarkdownExtensions.push(gfmToMarkdown(settings));
5629
7760
  }
5630
7761
 
5631
7762
  // src/addon-docs/compiler/index.ts
5632
- var compile2 = async (input, { mdxCompileOptions = {} } = {}) => {
5633
- let options = getCompilerOptions(mdxCompileOptions);
7763
+ var compile2 = async (input, { mdxCompileOptions = {}, gfm: gfm2 } = {}) => {
7764
+ let options = getCompilerOptions(mdxCompileOptions, gfm2);
5634
7765
  return (await compile(input, options)).toString();
5635
7766
  };
5636
- function getCompilerOptions(mdxCompileOptions) {
7767
+ function getCompilerOptions(mdxCompileOptions, gfm2 = !0) {
7768
+ let remarkPlugins = mdxCompileOptions?.remarkPlugins ?? [];
5637
7769
  return {
5638
7770
  providerImportSource: "@mdx-js/react",
5639
7771
  rehypePlugins: [],
5640
- ...mdxCompileOptions
7772
+ ...mdxCompileOptions,
7773
+ remarkPlugins: gfm2 ? [remarkGfm, ...remarkPlugins] : remarkPlugins
5641
7774
  };
5642
7775
  }
5643
7776
 
5644
7777
  // src/addon-docs/mdx-plugin.ts
5645
7778
  async function mdxPlugin(options) {
5646
- let include = /\.mdx$/, filter = createFilter(include), { presets } = options, mdxPluginOptions = (await presets.apply("options", {}))?.mdxPluginOptions, rehypeSlug = (await import("./rehype-slug-H5TWHJ6G.js")).default, rehypeExternalLinks = (await import("./rehype-external-links-RT5Z62RV.js")).default;
7779
+ let include = /\.mdx$/, filter = createFilter(include), { presets } = options, mdxPluginOptions = (await presets.apply("options", {}))?.mdxPluginOptions, rehypeSlug = (await import("./rehype-slug-KQI7ULEZ.js")).default, rehypeExternalLinks = (await import("./rehype-external-links-LJTPLCGD.js")).default;
5647
7780
  return {
5648
7781
  name: "storybook:mdx-plugin",
5649
7782
  enforce: "pre",