@vc-shell/framework 1.1.44 → 1.1.46

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 (453) hide show
  1. package/CHANGELOG.md +20 -0
  2. package/core/plugins/modularity/loader.ts +150 -74
  3. package/core/services/app-bar-mobile-buttons-service.ts +1 -1
  4. package/dist/core/plugins/modularity/loader.d.ts.map +1 -1
  5. package/dist/core/services/app-bar-mobile-buttons-service.d.ts +1 -1
  6. package/dist/core/services/app-bar-mobile-buttons-service.d.ts.map +1 -1
  7. package/dist/framework.js +33355 -295
  8. package/dist/index.css +1 -9
  9. package/dist/index.d.ts +0 -4
  10. package/dist/index.d.ts.map +1 -1
  11. package/dist/locales/de.json +0 -84
  12. package/dist/locales/en.json +0 -84
  13. package/dist/shared/components/blade-navigation/components/vc-blade-navigation/_internal/vc-mobile-back-button.vue.d.ts.map +1 -1
  14. package/dist/shared/components/blade-navigation/components/vc-blade-view/vc-blade-view.d.ts +1 -1
  15. package/dist/shared/components/blade-navigation/components/vc-blade-view/vc-blade-view.d.ts.map +1 -1
  16. package/dist/shared/components/blade-navigation/composables/useBladeNavigation/internal/bladeRouteResolver.d.ts.map +1 -1
  17. package/dist/shared/components/change-password-button/change-password-button.vue.d.ts.map +1 -1
  18. package/dist/shared/components/logout-button/logout-button.vue.d.ts.map +1 -1
  19. package/dist/shared/components/settings-menu-item/settings-menu-item.vue.d.ts.map +1 -1
  20. package/dist/shared/modules/dynamic/pages/dynamic-blade-form.vue.d.ts +2 -2
  21. package/dist/shared/modules/dynamic/pages/dynamic-blade-list.vue.d.ts +6 -6
  22. package/dist/shared/modules/dynamic/pages/dynamic-blade-list.vue.d.ts.map +1 -1
  23. package/dist/tsconfig.tsbuildinfo +1 -1
  24. package/dist/ui/components/atoms/vc-hint/vc-hint.vue.d.ts.map +1 -1
  25. package/dist/ui/components/atoms/vc-icon/icons/MenuBurgerIcon.vue.d.ts.map +1 -1
  26. package/dist/ui/components/atoms/vc-icon/icons/index.d.ts +0 -26
  27. package/dist/ui/components/atoms/vc-icon/icons/index.d.ts.map +1 -1
  28. package/dist/ui/components/atoms/vc-icon/vc-bootstrap-icon.vue.d.ts.map +1 -1
  29. package/dist/ui/components/atoms/vc-icon/vc-fontawesome-icon.vue.d.ts.map +1 -1
  30. package/dist/ui/components/atoms/vc-icon/vc-icon.vue.d.ts.map +1 -1
  31. package/dist/ui/components/atoms/vc-icon/vc-lucide-icon.vue.d.ts +0 -5
  32. package/dist/ui/components/atoms/vc-icon/vc-lucide-icon.vue.d.ts.map +1 -1
  33. package/dist/ui/components/atoms/vc-icon/vc-material-icon.vue.d.ts +0 -20
  34. package/dist/ui/components/atoms/vc-icon/vc-material-icon.vue.d.ts.map +1 -1
  35. package/dist/ui/components/molecules/vc-breadcrumbs/vc-breadcrumbs.vue.d.ts.map +1 -1
  36. package/dist/ui/components/molecules/vc-editor/_internal/vc-editor-button.vue.d.ts +36 -0
  37. package/dist/ui/components/molecules/vc-editor/_internal/vc-editor-button.vue.d.ts.map +1 -0
  38. package/dist/ui/components/molecules/vc-editor/_internal/vc-editor-toolbar.vue.d.ts +17 -0
  39. package/dist/ui/components/molecules/vc-editor/_internal/vc-editor-toolbar.vue.d.ts.map +1 -0
  40. package/dist/ui/components/molecules/vc-editor/vc-editor.vue.d.ts +16 -2381
  41. package/dist/ui/components/molecules/vc-editor/vc-editor.vue.d.ts.map +1 -1
  42. package/dist/ui/components/molecules/vc-form/vc-form.vue.d.ts.map +1 -1
  43. package/dist/ui/components/molecules/vc-input-currency/vc-input-currency.vue.d.ts +1 -1
  44. package/dist/ui/components/molecules/vc-input-currency/vc-input-currency.vue.d.ts.map +1 -1
  45. package/dist/ui/components/molecules/vc-multivalue/vc-multivalue.vue.d.ts +1 -1
  46. package/dist/ui/components/molecules/vc-pagination/vc-pagination.vue.d.ts.map +1 -1
  47. package/dist/ui/components/organisms/vc-app/_internal/vc-app-bar/_internal/MenuSidebar.vue.d.ts.map +1 -1
  48. package/dist/ui/components/organisms/vc-app/_internal/vc-app-bar/vc-app-bar.vue.d.ts.map +1 -1
  49. package/dist/ui/components/organisms/vc-app/_internal/vc-app-menu/_internal/vc-app-menu-item/_internal/vc-app-menu-link.vue.d.ts.map +1 -1
  50. package/dist/ui/components/organisms/vc-app/vc-app.vue.d.ts.map +1 -1
  51. package/dist/ui/components/organisms/vc-blade/_internal/vc-blade-header/vc-blade-header.vue.d.ts.map +1 -1
  52. package/dist/ui/components/organisms/vc-blade/_internal/vc-blade-widget-container/_internal/vc-widget-container-desktop.vue.d.ts.map +1 -1
  53. package/dist/ui/components/organisms/vc-blade/_internal/vc-blade-widget-container/_internal/vc-widget-container-mobile.vue.d.ts.map +1 -1
  54. package/dist/ui/components/organisms/vc-blade/vc-blade.vue.d.ts.map +1 -1
  55. package/dist/ui/components/organisms/vc-gallery/_internal/vc-gallery-item/vc-gallery-item.vue.d.ts +2 -2
  56. package/dist/ui/components/organisms/vc-gallery/vc-gallery.vue.d.ts +2 -2
  57. package/dist/ui/components/organisms/vc-table/_internal/vc-table-filter/vc-table-filter.vue.d.ts.map +1 -1
  58. package/dist/ui/components/organisms/vc-table/_internal/vc-table-header/vc-table-header.vue.d.ts.map +1 -1
  59. package/dist/vendor-boolbase-Cp9L0GAZ.js +25 -0
  60. package/dist/vendor-cheerio-HN9zIPZn.js +3135 -0
  61. package/dist/vendor-cheerio-select-5Ry0HvBq.js +306 -0
  62. package/dist/vendor-core-js-l0sNRNKZ.js +1 -0
  63. package/dist/vendor-css-select-DRIZ9kfZ.js +966 -0
  64. package/dist/vendor-css-what-DuPJ1HEF.js +448 -0
  65. package/dist/vendor-cypress-signalr-mock-BKdBJpdt.js +778 -0
  66. package/dist/vendor-date-fns-515YWkk-.js +6724 -0
  67. package/dist/vendor-dom-serializer-nQMsqjYW.js +286 -0
  68. package/dist/vendor-dom7-CJLPMwy5.js +941 -0
  69. package/dist/vendor-domelementtype-CjSzQey5.js +53 -0
  70. package/dist/vendor-domhandler-9z8cS16a.js +484 -0
  71. package/dist/vendor-dompurify-CRFzu7ib.js +1336 -0
  72. package/dist/vendor-domutils-Bc-Opz-v.js +981 -0
  73. package/dist/vendor-entities-Bfsx4xOQ.js +636 -0
  74. package/dist/vendor-floating-ui-core-wV8u8QP4.js +511 -0
  75. package/dist/vendor-floating-ui-dom-DDnRPs17.js +706 -0
  76. package/dist/vendor-floating-ui-utils-OMIFy1QU.js +296 -0
  77. package/dist/vendor-floating-ui-vue-D-tCDAMm.js +167 -0
  78. package/dist/vendor-fontsource-plus-jakarta-sans.css +1 -0
  79. package/dist/vendor-headlessui-vue-CY9FRgTb.js +83 -0
  80. package/dist/vendor-htmlparser2-B1dhFPOs.js +1426 -0
  81. package/dist/vendor-iconify-vue-DfRGgyNu.js +1840 -0
  82. package/dist/vendor-intlify-core-base-BuknsFQe.js +1876 -0
  83. package/dist/vendor-intlify-message-compiler-CuOQDWx1.js +1508 -0
  84. package/dist/vendor-intlify-shared-Cz4YRMuC.js +241 -0
  85. package/dist/vendor-iso-639-1-BJCk9DvE.js +819 -0
  86. package/dist/vendor-linkify-it-CKUf4vsc.js +830 -0
  87. package/dist/vendor-linkifyjs-BfyGgbCh.js +1756 -0
  88. package/dist/vendor-lodash-es-BySUOlwf.js +18333 -0
  89. package/dist/vendor-markdown-it-D-apazHa.js +6000 -0
  90. package/dist/vendor-markdown-it-task-lists-rxMVH6Ku.js +131 -0
  91. package/dist/vendor-mdurl-BNh2CCgT.js +537 -0
  92. package/dist/vendor-microsoft-applicationinsights-analytics-js-kG3lLg8X.js +1275 -0
  93. package/dist/vendor-microsoft-applicationinsights-cfgsync-js-C0uQkiQq.js +591 -0
  94. package/dist/vendor-microsoft-applicationinsights-channel-js-Dyd_PXA3.js +2153 -0
  95. package/dist/vendor-microsoft-applicationinsights-common-CfmP1_Qr.js +2470 -0
  96. package/dist/vendor-microsoft-applicationinsights-core-js-Cq4YSEvZ.js +6589 -0
  97. package/dist/vendor-microsoft-applicationinsights-dependencies-js-C56OBFr4.js +1510 -0
  98. package/dist/vendor-microsoft-applicationinsights-properties-js-CBJTBawx.js +761 -0
  99. package/dist/vendor-microsoft-applicationinsights-shims-CX8sJgar.js +70 -0
  100. package/dist/vendor-microsoft-applicationinsights-web-pim2ri-g.js +667 -0
  101. package/dist/vendor-microsoft-dynamicproto-js-CFBBUu9p.js +520 -0
  102. package/dist/vendor-microsoft-signalr-dUnlRsGm.js +3339 -0
  103. package/dist/vendor-moment-Mki5YqAR.js +5679 -0
  104. package/dist/vendor-nevware21-ts-async-CLMApQ9E.js +395 -0
  105. package/dist/vendor-nevware21-ts-utils-e8v8Jty3.js +1160 -0
  106. package/dist/vendor-normalize-css.css +1 -0
  107. package/dist/vendor-nth-check-Bx8TxtJt.js +157 -0
  108. package/dist/vendor-orderedmap-dGG6uMFJ.js +137 -0
  109. package/dist/vendor-parse5-Bt2NhSzR.js +8432 -0
  110. package/dist/vendor-parse5-htmlparser2-tree-adapter-BUUtKzf8.js +216 -0
  111. package/dist/vendor-popperjs-core-Cr2byIky.js +1790 -0
  112. package/dist/vendor-prettier-B4PaeWRQ.js +98 -0
  113. package/dist/vendor-prosemirror-commands-BH9lWGpW.js +561 -0
  114. package/dist/vendor-prosemirror-dropcursor-CeyPcxrA.js +146 -0
  115. package/dist/vendor-prosemirror-gapcursor-U8UoUJII.js +236 -0
  116. package/dist/vendor-prosemirror-history-BDaJkvNx.js +414 -0
  117. package/dist/vendor-prosemirror-keymap-BbWvIWmH.js +128 -0
  118. package/dist/vendor-prosemirror-markdown-gB0PXBbz.js +866 -0
  119. package/dist/vendor-prosemirror-model-BZu3WVcD.js +3463 -0
  120. package/dist/vendor-prosemirror-schema-list-Bl9NpKA7.js +158 -0
  121. package/dist/vendor-prosemirror-state-BvL9Pxph.js +1003 -0
  122. package/dist/vendor-prosemirror-tables-17qAnviK.js +2159 -0
  123. package/dist/vendor-prosemirror-transform-CE9VV3qg.js +2156 -0
  124. package/dist/vendor-prosemirror-view-CU2WTHT7.js +5811 -0
  125. package/dist/vendor-punycode-js-iAs5RxMf.js +441 -0
  126. package/dist/vendor-rope-sequence-BdXDKoGt.js +207 -0
  127. package/dist/vendor-semver-CVLMK-S4.js +2702 -0
  128. package/dist/vendor-ssr-window-s6OpKa3O.js +150 -0
  129. package/dist/vendor-swiper-CdiyNHVt.js +5679 -0
  130. package/dist/vendor-swiper.css +1 -0
  131. package/dist/vendor-tanstack-virtual-core-l0sNRNKZ.js +1 -0
  132. package/dist/vendor-tanstack-vue-virtual-l0sNRNKZ.js +1 -0
  133. package/dist/vendor-tippy-js-DWFe2TfK.js +1647 -0
  134. package/dist/vendor-tiptap-core-NfwGfaQk.js +4910 -0
  135. package/dist/vendor-tiptap-extension-blockquote-jmWBTtsI.js +57 -0
  136. package/dist/vendor-tiptap-extension-bold-p5frh4ak.js +97 -0
  137. package/dist/vendor-tiptap-extension-bubble-menu-KUhZSfrs.js +218 -0
  138. package/dist/vendor-tiptap-extension-bullet-list-COmZRoSB.js +73 -0
  139. package/dist/vendor-tiptap-extension-code-block-DyTARZss.js +221 -0
  140. package/dist/vendor-tiptap-extension-code-jVv6CXpX.js +75 -0
  141. package/dist/vendor-tiptap-extension-document-DssuotYs.js +13 -0
  142. package/dist/vendor-tiptap-extension-dropcursor-BoO0Qv91.js +26 -0
  143. package/dist/vendor-tiptap-extension-floating-menu-CrO8CN5w.js +165 -0
  144. package/dist/vendor-tiptap-extension-gapcursor-KpsWEoMD.js +30 -0
  145. package/dist/vendor-tiptap-extension-hard-break-ldOzhSvf.js +68 -0
  146. package/dist/vendor-tiptap-extension-heading-CKz2llX0.js +77 -0
  147. package/dist/vendor-tiptap-extension-history-DeKZ2VQ9.js +48 -0
  148. package/dist/vendor-tiptap-extension-horizontal-rule-CAjWRyDS.js +92 -0
  149. package/dist/vendor-tiptap-extension-image-ZagcEYuk.js +76 -0
  150. package/dist/vendor-tiptap-extension-italic-CM4xdznY.js +96 -0
  151. package/dist/vendor-tiptap-extension-link-Z-AMC4Ri.js +414 -0
  152. package/dist/vendor-tiptap-extension-list-item-BJi5QpXc.js +37 -0
  153. package/dist/vendor-tiptap-extension-ordered-list-C_TMrfBE.js +97 -0
  154. package/dist/vendor-tiptap-extension-paragraph-CQw0E0Au.js +39 -0
  155. package/dist/vendor-tiptap-extension-placeholder-BBNVKfa_.js +66 -0
  156. package/dist/vendor-tiptap-extension-strike-DUyMYX1Z.js +79 -0
  157. package/dist/vendor-tiptap-extension-table-cell-CoDIMPA5.js +47 -0
  158. package/dist/vendor-tiptap-extension-table-header-DvbGHnmw.js +47 -0
  159. package/dist/vendor-tiptap-extension-table-row-D1uqN5Aj.js +26 -0
  160. package/dist/vendor-tiptap-extension-table-tKS4MOM4.js +354 -0
  161. package/dist/vendor-tiptap-extension-text-DtRBhKB2.js +12 -0
  162. package/dist/vendor-tiptap-extension-underline-DqaSFp_P.js +50 -0
  163. package/dist/vendor-tiptap-markdown-7-PCADTU.js +1017 -0
  164. package/dist/vendor-tiptap-pm-l0sNRNKZ.js +1 -0
  165. package/dist/vendor-tiptap-starter-kit-CDSV_Zuu.js +88 -0
  166. package/dist/vendor-tiptap-vue-3-DZg2fjq_.js +268 -0
  167. package/dist/vendor-truncate-html-3qQY0Djo.js +196 -0
  168. package/dist/vendor-uc-micro-jjt6LQ65.js +23 -0
  169. package/dist/vendor-vee-validate-i18n-v_gHjRmD.js +154 -0
  170. package/dist/vendor-vee-validate-rules-DzV3VY3N.js +536 -0
  171. package/dist/vendor-vue-currency-input-DGAkEFBO.js +545 -0
  172. package/dist/vendor-vue-demi-l0sNRNKZ.js +1 -0
  173. package/dist/vendor-vue-devtools-api-DXYR8qBG.js +169 -0
  174. package/dist/vendor-vue-i18n-Co752uk3.js +1897 -0
  175. package/dist/vendor-vue3-application-insights-CYWFCr_J.js +119 -0
  176. package/dist/vendor-vue3-touch-events-BJEAiSa3.js +416 -0
  177. package/dist/vendor-vuepic-vue-datepicker-BSWXRSiu.js +5019 -0
  178. package/dist/vendor-vuepic-vue-datepicker.css +1 -0
  179. package/dist/vendor-vueuse-components-l1bL12mE.js +339 -0
  180. package/dist/vendor-vueuse-core-DGcJOmwG.js +7743 -0
  181. package/dist/vendor-vueuse-shared-_mOXsFuM.js +1568 -0
  182. package/dist/vendor-w3c-keyname-BOm2dtJm.js +121 -0
  183. package/package.json +22 -11
  184. package/shared/components/blade-navigation/components/vc-blade-navigation/_internal/vc-mobile-back-button.vue +3 -3
  185. package/shared/components/blade-navigation/components/vc-blade-view/vc-blade-view.ts +2 -1
  186. package/shared/components/blade-navigation/composables/useBladeNavigation/internal/bladeRouteResolver.ts +1 -0
  187. package/shared/components/change-password-button/change-password-button.vue +1 -2
  188. package/shared/components/logout-button/logout-button.vue +1 -2
  189. package/shared/components/notifications/components/notification-container/index.ts +1 -1
  190. package/shared/components/notifications/core/notification.ts +1 -1
  191. package/shared/components/settings-menu-item/settings-menu-item.vue +1 -0
  192. package/shared/components/sidebar/sidebar.vue +2 -2
  193. package/shared/modules/dynamic/pages/dynamic-blade-list.vue +2 -1
  194. package/ui/components/atoms/vc-hint/vc-hint.vue +2 -0
  195. package/ui/components/atoms/vc-icon/composables/use-icon.ts +1 -1
  196. package/ui/components/atoms/vc-icon/icons/MenuBurgerIcon.vue +18 -14
  197. package/ui/components/atoms/vc-icon/icons/index.ts +1 -27
  198. package/ui/components/atoms/vc-icon/vc-bootstrap-icon.vue +7 -11
  199. package/ui/components/atoms/vc-icon/vc-fontawesome-icon.vue +37 -31
  200. package/ui/components/atoms/vc-icon/vc-icon-examples.vue +1 -1
  201. package/ui/components/atoms/vc-icon/vc-icon.stories.ts +4 -5
  202. package/ui/components/atoms/vc-icon/vc-icon.vue +43 -186
  203. package/ui/components/atoms/vc-icon/vc-lucide-icon.vue +22 -70
  204. package/ui/components/atoms/vc-icon/vc-material-icon.vue +28 -59
  205. package/ui/components/molecules/vc-breadcrumbs/vc-breadcrumbs.vue +2 -3
  206. package/ui/components/molecules/vc-editor/_internal/vc-editor-button.vue +103 -0
  207. package/ui/components/molecules/vc-editor/_internal/vc-editor-toolbar.vue +252 -0
  208. package/ui/components/molecules/vc-editor/vc-editor.stories.ts +1 -4
  209. package/ui/components/molecules/vc-editor/vc-editor.vue +666 -360
  210. package/ui/components/molecules/vc-form/vc-form.vue +7 -5
  211. package/ui/components/molecules/vc-input/vc-input.vue +1 -1
  212. package/ui/components/molecules/vc-pagination/vc-pagination.vue +4 -17
  213. package/ui/components/organisms/vc-app/_internal/vc-app-bar/_internal/AppBarMobileActions.vue +1 -1
  214. package/ui/components/organisms/vc-app/_internal/vc-app-bar/_internal/MenuSidebar.vue +1 -3
  215. package/ui/components/organisms/vc-app/_internal/vc-app-bar/vc-app-bar.vue +1 -4
  216. package/ui/components/organisms/vc-app/_internal/vc-app-menu/_internal/vc-app-menu-item/_internal/vc-app-menu-link.vue +1 -3
  217. package/ui/components/organisms/vc-app/vc-app.backupsb.ts +214 -214
  218. package/ui/components/organisms/vc-app/vc-app.vue +3 -5
  219. package/ui/components/organisms/vc-blade/_internal/vc-blade-header/vc-blade-header.vue +3 -10
  220. package/ui/components/organisms/vc-blade/_internal/vc-blade-toolbar/_internal/vc-blade-toolbar-buttons/mobile/vc-blade-toolbar-mobile.vue +1 -1
  221. package/ui/components/organisms/vc-blade/_internal/vc-blade-widget-container/_internal/vc-widget-container-desktop.vue +2 -2
  222. package/ui/components/organisms/vc-blade/_internal/vc-blade-widget-container/_internal/vc-widget-container-mobile.vue +2 -2
  223. package/ui/components/organisms/vc-blade/vc-blade.vue +4 -5
  224. package/ui/components/organisms/vc-table/_internal/vc-table-filter/vc-table-filter.vue +1 -3
  225. package/ui/components/organisms/vc-table/_internal/vc-table-header/vc-table-header.vue +1 -2
  226. package/ui/components/organisms/vc-table/composables/useTableState.ts +5 -5
  227. package/dist/apl-B2DGVGxc.js +0 -76
  228. package/dist/asciiarmor-2LVJmxlE.js +0 -34
  229. package/dist/asn1-jKiBa2Ya.js +0 -95
  230. package/dist/asterisk-DS281yxp.js +0 -271
  231. package/dist/brainfuck-C_p9pTT8.js +0 -34
  232. package/dist/clike-DGTaUp48.js +0 -620
  233. package/dist/clojure-CCKyeQKf.js +0 -800
  234. package/dist/cmake-CuaCgAKt.js +0 -28
  235. package/dist/cobol-BlTKFDRj.js +0 -72
  236. package/dist/coffeescript-BVCvwO8I.js +0 -179
  237. package/dist/commonlisp-D_kxz07b.js +0 -75
  238. package/dist/crystal-D309uH6_.js +0 -217
  239. package/dist/css-BkF-NPzE.js +0 -1553
  240. package/dist/cypher-BMq4Fwjl.js +0 -68
  241. package/dist/d-BZcgY6La.js +0 -127
  242. package/dist/diff-Cg9d_RX2.js +0 -18
  243. package/dist/dockerfile-DIy8NleC.js +0 -194
  244. package/dist/dtd-CtLokQ-U.js +0 -84
  245. package/dist/dylan-QYeExnWK.js +0 -234
  246. package/dist/ebnf-DUPDuY4r.js +0 -78
  247. package/dist/ecl-CiXN-g_D.js +0 -121
  248. package/dist/eiffel-yQhjl4T1.js +0 -110
  249. package/dist/elm-CNT9vbN0.js +0 -108
  250. package/dist/erlang-CFOYdy9e.js +0 -487
  251. package/dist/factor-DDOC7X6P.js +0 -65
  252. package/dist/fcl-CPC2WYrI.js +0 -103
  253. package/dist/forth-BmxRyE9S.js +0 -60
  254. package/dist/fortran-9bvPyrOW.js +0 -442
  255. package/dist/gas-cpmYfFX2.js +0 -183
  256. package/dist/gherkin-CJuwpceU.js +0 -34
  257. package/dist/groovy-DZeT_VM-.js +0 -146
  258. package/dist/haskell-Bvt3Qq1t.js +0 -375
  259. package/dist/haxe-70NVW1pR.js +0 -359
  260. package/dist/http-D9LttvKF.js +0 -44
  261. package/dist/idl-B6TRFYjl.js +0 -947
  262. package/dist/index-4DWvmoYg.js +0 -71
  263. package/dist/index-52o7mJaX.js +0 -156
  264. package/dist/index-B0KatioT.js +0 -98
  265. package/dist/index-BP3W8zuk.js +0 -268
  266. package/dist/index-BykT5L1A.js +0 -148134
  267. package/dist/index-CfXo9hsG.js +0 -75
  268. package/dist/index-Ch37pBUt.js +0 -308
  269. package/dist/index-D2KGkAYT.js +0 -93
  270. package/dist/index-D83zQom_.js +0 -58
  271. package/dist/index-DuQrVLbu.js +0 -134
  272. package/dist/index-_fdMid5h.js +0 -288
  273. package/dist/index-a1wO-owY.js +0 -545
  274. package/dist/index-crMpNSFe.js +0 -611
  275. package/dist/index-dmBRpHHY.js +0 -137
  276. package/dist/index-kBdB14Fz.js +0 -341
  277. package/dist/index-uBhy41le.js +0 -249
  278. package/dist/index-zZrijNsr.js +0 -299
  279. package/dist/javascript-C2yteZeJ.js +0 -691
  280. package/dist/jinja2-DnB6dQmV.js +0 -154
  281. package/dist/julia-DpvXAuO6.js +0 -241
  282. package/dist/livescript-CanGTf8u.js +0 -272
  283. package/dist/lua-XplVlWi_.js +0 -217
  284. package/dist/mathematica-jaRHnSxC.js +0 -35
  285. package/dist/mbox-BctzC1hL.js +0 -76
  286. package/dist/mirc-CFBPAOaF.js +0 -72
  287. package/dist/mllike-BSnXJBGA.js +0 -272
  288. package/dist/modelica-vUgVs--1.js +0 -93
  289. package/dist/mscgen-Cpl0NYLN.js +0 -104
  290. package/dist/mumps-CQoS1kWX.js +0 -25
  291. package/dist/nginx-zDPm3Z74.js +0 -89
  292. package/dist/nsis-fePjrhq7.js +0 -62
  293. package/dist/ntriples-CsNjv2QF.js +0 -79
  294. package/dist/octave-C8PmmSRH.js +0 -143
  295. package/dist/oz-Ce8aN8oE.js +0 -151
  296. package/dist/pascal-De0D6mP7.js +0 -77
  297. package/dist/perl-B4bSCe1C.js +0 -915
  298. package/dist/pig-D24Z8EXi.js +0 -54
  299. package/dist/powershell-DkYVfTzP.js +0 -249
  300. package/dist/properties-Dn9wna3M.js +0 -26
  301. package/dist/protobuf-BPIjwpzm.js +0 -49
  302. package/dist/pug-CwAQJzGR.js +0 -248
  303. package/dist/puppet-nyd4dhjf.js +0 -45
  304. package/dist/python-BkR3uSy8.js +0 -313
  305. package/dist/q-DXjKs-tC.js +0 -83
  306. package/dist/r-LKEuhEGI.js +0 -104
  307. package/dist/rpm-IznJm2Xc.js +0 -57
  308. package/dist/ruby-CcYfvIk6.js +0 -228
  309. package/dist/sas-7E8yHoCW.js +0 -105
  310. package/dist/scheme-DjibxsNh.js +0 -124
  311. package/dist/shared/modules/dynamic/components/fields/storybook/common/args.d.ts +0 -113
  312. package/dist/shared/modules/dynamic/components/fields/storybook/common/args.d.ts.map +0 -1
  313. package/dist/shared/modules/dynamic/components/fields/storybook/common/templates.d.ts +0 -3
  314. package/dist/shared/modules/dynamic/components/fields/storybook/common/templates.d.ts.map +0 -1
  315. package/dist/shared/modules/dynamic/components/fields/storybook/pages/DynamicRender.d.ts +0 -102
  316. package/dist/shared/modules/dynamic/components/fields/storybook/pages/DynamicRender.d.ts.map +0 -1
  317. package/dist/shared/modules/dynamic/components/fields/storybook/utils/sourceHighlighter.d.ts +0 -4
  318. package/dist/shared/modules/dynamic/components/fields/storybook/utils/sourceHighlighter.d.ts.map +0 -1
  319. package/dist/shared/modules/dynamic/components/fields/storybook/utils/sourceTransform.d.ts +0 -3
  320. package/dist/shared/modules/dynamic/components/fields/storybook/utils/sourceTransform.d.ts.map +0 -1
  321. package/dist/shell-C0C2sNA_.js +0 -182
  322. package/dist/sieve-Bwz7vjP5.js +0 -72
  323. package/dist/simple-mode-B0dvCdAA.js +0 -89
  324. package/dist/smalltalk-Bhddl2pB.js +0 -48
  325. package/dist/solr-BNlsLglM.js +0 -41
  326. package/dist/sparql-FarWu_Gb.js +0 -197
  327. package/dist/spreadsheet-C-cy4P5N.js +0 -49
  328. package/dist/sql-CfG5lQ3l.js +0 -282
  329. package/dist/stex-Du4h4KAU.js +0 -129
  330. package/dist/stylus-CAdqWld3.js +0 -250
  331. package/dist/swift-DSxqR9R6.js +0 -230
  332. package/dist/tcl-xfoLljhY.js +0 -81
  333. package/dist/textile-D1AWE-pc.js +0 -295
  334. package/dist/tiddlywiki-5wqsXtSk.js +0 -155
  335. package/dist/tiki-__Kn3CeS.js +0 -181
  336. package/dist/toml-BHiuTcfn.js +0 -49
  337. package/dist/troff-D2UO-fKf.js +0 -35
  338. package/dist/ttcn-Bsa4sfRm.js +0 -123
  339. package/dist/ttcn-cfg-Bac_acMi.js +0 -88
  340. package/dist/turtle-xwJUxoPV.js +0 -80
  341. package/dist/ui/components/atoms/vc-icon/icons/AppWindowIcon.vue.d.ts +0 -7
  342. package/dist/ui/components/atoms/vc-icon/icons/AppWindowIcon.vue.d.ts.map +0 -1
  343. package/dist/ui/components/atoms/vc-icon/icons/ArrowLeftIcon.vue.d.ts +0 -7
  344. package/dist/ui/components/atoms/vc-icon/icons/ArrowLeftIcon.vue.d.ts.map +0 -1
  345. package/dist/ui/components/atoms/vc-icon/icons/ArrowRightIcon.vue.d.ts +0 -7
  346. package/dist/ui/components/atoms/vc-icon/icons/ArrowRightIcon.vue.d.ts.map +0 -1
  347. package/dist/ui/components/atoms/vc-icon/icons/BellIcon.vue.d.ts +0 -7
  348. package/dist/ui/components/atoms/vc-icon/icons/BellIcon.vue.d.ts.map +0 -1
  349. package/dist/ui/components/atoms/vc-icon/icons/ChevronDownIcon.vue.d.ts +0 -7
  350. package/dist/ui/components/atoms/vc-icon/icons/ChevronDownIcon.vue.d.ts.map +0 -1
  351. package/dist/ui/components/atoms/vc-icon/icons/ChevronLeftIcon.vue.d.ts +0 -7
  352. package/dist/ui/components/atoms/vc-icon/icons/ChevronLeftIcon.vue.d.ts.map +0 -1
  353. package/dist/ui/components/atoms/vc-icon/icons/ChevronRightIcon.vue.d.ts +0 -7
  354. package/dist/ui/components/atoms/vc-icon/icons/ChevronRightIcon.vue.d.ts.map +0 -1
  355. package/dist/ui/components/atoms/vc-icon/icons/ChevronUpIcon.vue.d.ts +0 -7
  356. package/dist/ui/components/atoms/vc-icon/icons/ChevronUpIcon.vue.d.ts.map +0 -1
  357. package/dist/ui/components/atoms/vc-icon/icons/CircleDotsIcon.vue.d.ts +0 -7
  358. package/dist/ui/components/atoms/vc-icon/icons/CircleDotsIcon.vue.d.ts.map +0 -1
  359. package/dist/ui/components/atoms/vc-icon/icons/CrossSignIcon.vue.d.ts +0 -7
  360. package/dist/ui/components/atoms/vc-icon/icons/CrossSignIcon.vue.d.ts.map +0 -1
  361. package/dist/ui/components/atoms/vc-icon/icons/DoubleArrowLeftIcon.vue.d.ts +0 -7
  362. package/dist/ui/components/atoms/vc-icon/icons/DoubleArrowLeftIcon.vue.d.ts.map +0 -1
  363. package/dist/ui/components/atoms/vc-icon/icons/DoubleArrowRightIcon.vue.d.ts +0 -7
  364. package/dist/ui/components/atoms/vc-icon/icons/DoubleArrowRightIcon.vue.d.ts.map +0 -1
  365. package/dist/ui/components/atoms/vc-icon/icons/FulfillmentCentersIcon.vue.d.ts +0 -7
  366. package/dist/ui/components/atoms/vc-icon/icons/FulfillmentCentersIcon.vue.d.ts.map +0 -1
  367. package/dist/ui/components/atoms/vc-icon/icons/GridDotsIcon.vue.d.ts +0 -7
  368. package/dist/ui/components/atoms/vc-icon/icons/GridDotsIcon.vue.d.ts.map +0 -1
  369. package/dist/ui/components/atoms/vc-icon/icons/LogoutIcon.vue.d.ts +0 -7
  370. package/dist/ui/components/atoms/vc-icon/icons/LogoutIcon.vue.d.ts.map +0 -1
  371. package/dist/ui/components/atoms/vc-icon/icons/MinusSignIcon.vue.d.ts +0 -7
  372. package/dist/ui/components/atoms/vc-icon/icons/MinusSignIcon.vue.d.ts.map +0 -1
  373. package/dist/ui/components/atoms/vc-icon/icons/OffersIcon.vue.d.ts +0 -7
  374. package/dist/ui/components/atoms/vc-icon/icons/OffersIcon.vue.d.ts.map +0 -1
  375. package/dist/ui/components/atoms/vc-icon/icons/OrdersIcon.vue.d.ts +0 -7
  376. package/dist/ui/components/atoms/vc-icon/icons/OrdersIcon.vue.d.ts.map +0 -1
  377. package/dist/ui/components/atoms/vc-icon/icons/PeopleIcon.vue.d.ts +0 -7
  378. package/dist/ui/components/atoms/vc-icon/icons/PeopleIcon.vue.d.ts.map +0 -1
  379. package/dist/ui/components/atoms/vc-icon/icons/PlusSignIcon.vue.d.ts +0 -7
  380. package/dist/ui/components/atoms/vc-icon/icons/PlusSignIcon.vue.d.ts.map +0 -1
  381. package/dist/ui/components/atoms/vc-icon/icons/ProductsIcon.vue.d.ts +0 -7
  382. package/dist/ui/components/atoms/vc-icon/icons/ProductsIcon.vue.d.ts.map +0 -1
  383. package/dist/ui/components/atoms/vc-icon/icons/ProfileIcon.vue.d.ts +0 -7
  384. package/dist/ui/components/atoms/vc-icon/icons/ProfileIcon.vue.d.ts.map +0 -1
  385. package/dist/ui/components/atoms/vc-icon/icons/SearchIcon.vue.d.ts +0 -7
  386. package/dist/ui/components/atoms/vc-icon/icons/SearchIcon.vue.d.ts.map +0 -1
  387. package/dist/ui/components/atoms/vc-icon/icons/SettingsBoltIcon.vue.d.ts +0 -7
  388. package/dist/ui/components/atoms/vc-icon/icons/SettingsBoltIcon.vue.d.ts.map +0 -1
  389. package/dist/ui/components/atoms/vc-icon/icons/ShoppingCardIcon.vue.d.ts +0 -7
  390. package/dist/ui/components/atoms/vc-icon/icons/ShoppingCardIcon.vue.d.ts.map +0 -1
  391. package/dist/ui/components/atoms/vc-icon/icons/VendorSwitchIcon.vue.d.ts +0 -7
  392. package/dist/ui/components/atoms/vc-icon/icons/VendorSwitchIcon.vue.d.ts.map +0 -1
  393. package/dist/ui/components/atoms/vc-icon/icons/VertDotsIcon.vue.d.ts +0 -7
  394. package/dist/ui/components/atoms/vc-icon/icons/VertDotsIcon.vue.d.ts.map +0 -1
  395. package/dist/vb-c2kQGd6-.js +0 -74
  396. package/dist/vbscript-1f_Dhg5H.js +0 -324
  397. package/dist/velocity-DJd0pTTC.js +0 -96
  398. package/dist/verilog-CiS1jyi5.js +0 -262
  399. package/dist/vhdl-T9HkrbI2.js +0 -106
  400. package/dist/webidl-CjfDENEo.js +0 -155
  401. package/dist/xquery-BUQdORAS.js +0 -422
  402. package/dist/yacas-C0absKBh.js +0 -73
  403. package/dist/z80-Pki2zAjW.js +0 -61
  404. package/shared/modules/dynamic/components/fields/storybook/Button.stories.ts +0 -186
  405. package/shared/modules/dynamic/components/fields/storybook/Card.stories.ts +0 -175
  406. package/shared/modules/dynamic/components/fields/storybook/Checkbox.stories.ts +0 -185
  407. package/shared/modules/dynamic/components/fields/storybook/ContentField.stories.ts +0 -245
  408. package/shared/modules/dynamic/components/fields/storybook/EditorField.stories.ts +0 -192
  409. package/shared/modules/dynamic/components/fields/storybook/Fieldset.stories.ts +0 -347
  410. package/shared/modules/dynamic/components/fields/storybook/GalleryField.stories.ts +0 -239
  411. package/shared/modules/dynamic/components/fields/storybook/ImageField.stories.ts +0 -186
  412. package/shared/modules/dynamic/components/fields/storybook/InputCurrency.stories.ts +0 -281
  413. package/shared/modules/dynamic/components/fields/storybook/InputField.stories.ts +0 -312
  414. package/shared/modules/dynamic/components/fields/storybook/MultivalueField.stories.ts +0 -361
  415. package/shared/modules/dynamic/components/fields/storybook/RadioButtonGroup.stories.ts +0 -224
  416. package/shared/modules/dynamic/components/fields/storybook/RatingField.stories.ts +0 -131
  417. package/shared/modules/dynamic/components/fields/storybook/SelectField.stories.ts +0 -666
  418. package/shared/modules/dynamic/components/fields/storybook/StatusField.stories.ts +0 -202
  419. package/shared/modules/dynamic/components/fields/storybook/SwitchField.stories.ts +0 -178
  420. package/shared/modules/dynamic/components/fields/storybook/TextareaField.stories.ts +0 -203
  421. package/shared/modules/dynamic/components/fields/storybook/VideoField.stories.ts +0 -92
  422. package/shared/modules/dynamic/components/fields/storybook/common/args.ts +0 -130
  423. package/shared/modules/dynamic/components/fields/storybook/common/templates.ts +0 -8
  424. package/shared/modules/dynamic/components/fields/storybook/pages/DynamicRender.ts +0 -54
  425. package/shared/modules/dynamic/components/fields/storybook/utils/sourceHighlighter.ts +0 -16
  426. package/shared/modules/dynamic/components/fields/storybook/utils/sourceTransform.ts +0 -41
  427. package/ui/components/atoms/vc-icon/icons/AppWindowIcon.vue +0 -15
  428. package/ui/components/atoms/vc-icon/icons/ArrowLeftIcon.vue +0 -20
  429. package/ui/components/atoms/vc-icon/icons/ArrowRightIcon.vue +0 -13
  430. package/ui/components/atoms/vc-icon/icons/BellIcon.vue +0 -14
  431. package/ui/components/atoms/vc-icon/icons/ChevronDownIcon.vue +0 -13
  432. package/ui/components/atoms/vc-icon/icons/ChevronLeftIcon.vue +0 -13
  433. package/ui/components/atoms/vc-icon/icons/ChevronRightIcon.vue +0 -13
  434. package/ui/components/atoms/vc-icon/icons/ChevronUpIcon.vue +0 -13
  435. package/ui/components/atoms/vc-icon/icons/CircleDotsIcon.vue +0 -16
  436. package/ui/components/atoms/vc-icon/icons/CrossSignIcon.vue +0 -20
  437. package/ui/components/atoms/vc-icon/icons/DoubleArrowLeftIcon.vue +0 -14
  438. package/ui/components/atoms/vc-icon/icons/DoubleArrowRightIcon.vue +0 -14
  439. package/ui/components/atoms/vc-icon/icons/FulfillmentCentersIcon.vue +0 -27
  440. package/ui/components/atoms/vc-icon/icons/GridDotsIcon.vue +0 -22
  441. package/ui/components/atoms/vc-icon/icons/LogoutIcon.vue +0 -13
  442. package/ui/components/atoms/vc-icon/icons/MinusSignIcon.vue +0 -14
  443. package/ui/components/atoms/vc-icon/icons/OffersIcon.vue +0 -23
  444. package/ui/components/atoms/vc-icon/icons/OrdersIcon.vue +0 -19
  445. package/ui/components/atoms/vc-icon/icons/PeopleIcon.vue +0 -21
  446. package/ui/components/atoms/vc-icon/icons/PlusSignIcon.vue +0 -20
  447. package/ui/components/atoms/vc-icon/icons/ProductsIcon.vue +0 -23
  448. package/ui/components/atoms/vc-icon/icons/ProfileIcon.vue +0 -18
  449. package/ui/components/atoms/vc-icon/icons/SearchIcon.vue +0 -14
  450. package/ui/components/atoms/vc-icon/icons/SettingsBoltIcon.vue +0 -21
  451. package/ui/components/atoms/vc-icon/icons/ShoppingCardIcon.vue +0 -16
  452. package/ui/components/atoms/vc-icon/icons/VendorSwitchIcon.vue +0 -26
  453. package/ui/components/atoms/vc-icon/icons/VertDotsIcon.vue +0 -19
@@ -0,0 +1,866 @@
1
+ import { a as Schema, M as Mark } from './vendor-prosemirror-model-BZu3WVcD.js';
2
+ import { M as MarkdownIt } from './vendor-markdown-it-D-apazHa.js';
3
+
4
+ /**
5
+ Document schema for the data model used by CommonMark.
6
+ */
7
+ const schema = new Schema({
8
+ nodes: {
9
+ doc: {
10
+ content: "block+"
11
+ },
12
+ paragraph: {
13
+ content: "inline*",
14
+ group: "block",
15
+ parseDOM: [{ tag: "p" }],
16
+ toDOM() { return ["p", 0]; }
17
+ },
18
+ blockquote: {
19
+ content: "block+",
20
+ group: "block",
21
+ parseDOM: [{ tag: "blockquote" }],
22
+ toDOM() { return ["blockquote", 0]; }
23
+ },
24
+ horizontal_rule: {
25
+ group: "block",
26
+ parseDOM: [{ tag: "hr" }],
27
+ toDOM() { return ["div", ["hr"]]; }
28
+ },
29
+ heading: {
30
+ attrs: { level: { default: 1 } },
31
+ content: "(text | image)*",
32
+ group: "block",
33
+ defining: true,
34
+ parseDOM: [{ tag: "h1", attrs: { level: 1 } },
35
+ { tag: "h2", attrs: { level: 2 } },
36
+ { tag: "h3", attrs: { level: 3 } },
37
+ { tag: "h4", attrs: { level: 4 } },
38
+ { tag: "h5", attrs: { level: 5 } },
39
+ { tag: "h6", attrs: { level: 6 } }],
40
+ toDOM(node) { return ["h" + node.attrs.level, 0]; }
41
+ },
42
+ code_block: {
43
+ content: "text*",
44
+ group: "block",
45
+ code: true,
46
+ defining: true,
47
+ marks: "",
48
+ attrs: { params: { default: "" } },
49
+ parseDOM: [{ tag: "pre", preserveWhitespace: "full", getAttrs: node => ({ params: node.getAttribute("data-params") || "" }) }],
50
+ toDOM(node) { return ["pre", node.attrs.params ? { "data-params": node.attrs.params } : {}, ["code", 0]]; }
51
+ },
52
+ ordered_list: {
53
+ content: "list_item+",
54
+ group: "block",
55
+ attrs: { order: { default: 1 }, tight: { default: false } },
56
+ parseDOM: [{ tag: "ol", getAttrs(dom) {
57
+ return { order: dom.hasAttribute("start") ? +dom.getAttribute("start") : 1,
58
+ tight: dom.hasAttribute("data-tight") };
59
+ } }],
60
+ toDOM(node) {
61
+ return ["ol", { start: node.attrs.order == 1 ? null : node.attrs.order,
62
+ "data-tight": node.attrs.tight ? "true" : null }, 0];
63
+ }
64
+ },
65
+ bullet_list: {
66
+ content: "list_item+",
67
+ group: "block",
68
+ attrs: { tight: { default: false } },
69
+ parseDOM: [{ tag: "ul", getAttrs: dom => ({ tight: dom.hasAttribute("data-tight") }) }],
70
+ toDOM(node) { return ["ul", { "data-tight": node.attrs.tight ? "true" : null }, 0]; }
71
+ },
72
+ list_item: {
73
+ content: "block+",
74
+ defining: true,
75
+ parseDOM: [{ tag: "li" }],
76
+ toDOM() { return ["li", 0]; }
77
+ },
78
+ text: {
79
+ group: "inline"
80
+ },
81
+ image: {
82
+ inline: true,
83
+ attrs: {
84
+ src: {},
85
+ alt: { default: null },
86
+ title: { default: null }
87
+ },
88
+ group: "inline",
89
+ draggable: true,
90
+ parseDOM: [{ tag: "img[src]", getAttrs(dom) {
91
+ return {
92
+ src: dom.getAttribute("src"),
93
+ title: dom.getAttribute("title"),
94
+ alt: dom.getAttribute("alt")
95
+ };
96
+ } }],
97
+ toDOM(node) { return ["img", node.attrs]; }
98
+ },
99
+ hard_break: {
100
+ inline: true,
101
+ group: "inline",
102
+ selectable: false,
103
+ parseDOM: [{ tag: "br" }],
104
+ toDOM() { return ["br"]; }
105
+ }
106
+ },
107
+ marks: {
108
+ em: {
109
+ parseDOM: [
110
+ { tag: "i" }, { tag: "em" },
111
+ { style: "font-style=italic" },
112
+ { style: "font-style=normal", clearMark: m => m.type.name == "em" }
113
+ ],
114
+ toDOM() { return ["em"]; }
115
+ },
116
+ strong: {
117
+ parseDOM: [
118
+ { tag: "strong" },
119
+ { tag: "b", getAttrs: node => node.style.fontWeight != "normal" && null },
120
+ { style: "font-weight=400", clearMark: m => m.type.name == "strong" },
121
+ { style: "font-weight", getAttrs: value => /^(bold(er)?|[5-9]\d{2,})$/.test(value) && null }
122
+ ],
123
+ toDOM() { return ["strong"]; }
124
+ },
125
+ link: {
126
+ attrs: {
127
+ href: {},
128
+ title: { default: null }
129
+ },
130
+ inclusive: false,
131
+ parseDOM: [{ tag: "a[href]", getAttrs(dom) {
132
+ return { href: dom.getAttribute("href"), title: dom.getAttribute("title") };
133
+ } }],
134
+ toDOM(node) { return ["a", node.attrs]; }
135
+ },
136
+ code: {
137
+ code: true,
138
+ parseDOM: [{ tag: "code" }],
139
+ toDOM() { return ["code"]; }
140
+ }
141
+ }
142
+ });
143
+
144
+ // @ts-ignore
145
+ function maybeMerge(a, b) {
146
+ if (a.isText && b.isText && Mark.sameSet(a.marks, b.marks))
147
+ return a.withText(a.text + b.text);
148
+ }
149
+ // Object used to track the context of a running parse.
150
+ class MarkdownParseState {
151
+ constructor(schema, tokenHandlers) {
152
+ this.schema = schema;
153
+ this.tokenHandlers = tokenHandlers;
154
+ this.stack = [{ type: schema.topNodeType, attrs: null, content: [], marks: Mark.none }];
155
+ }
156
+ top() {
157
+ return this.stack[this.stack.length - 1];
158
+ }
159
+ push(elt) {
160
+ if (this.stack.length)
161
+ this.top().content.push(elt);
162
+ }
163
+ // Adds the given text to the current position in the document,
164
+ // using the current marks as styling.
165
+ addText(text) {
166
+ if (!text)
167
+ return;
168
+ let top = this.top(), nodes = top.content, last = nodes[nodes.length - 1];
169
+ let node = this.schema.text(text, top.marks), merged;
170
+ if (last && (merged = maybeMerge(last, node)))
171
+ nodes[nodes.length - 1] = merged;
172
+ else
173
+ nodes.push(node);
174
+ }
175
+ // Adds the given mark to the set of active marks.
176
+ openMark(mark) {
177
+ let top = this.top();
178
+ top.marks = mark.addToSet(top.marks);
179
+ }
180
+ // Removes the given mark from the set of active marks.
181
+ closeMark(mark) {
182
+ let top = this.top();
183
+ top.marks = mark.removeFromSet(top.marks);
184
+ }
185
+ parseTokens(toks) {
186
+ for (let i = 0; i < toks.length; i++) {
187
+ let tok = toks[i];
188
+ let handler = this.tokenHandlers[tok.type];
189
+ if (!handler)
190
+ throw new Error("Token type `" + tok.type + "` not supported by Markdown parser");
191
+ handler(this, tok, toks, i);
192
+ }
193
+ }
194
+ // Add a node at the current position.
195
+ addNode(type, attrs, content) {
196
+ let top = this.top();
197
+ let node = type.createAndFill(attrs, content, top ? top.marks : []);
198
+ if (!node)
199
+ return null;
200
+ this.push(node);
201
+ return node;
202
+ }
203
+ // Wrap subsequent content in a node of the given type.
204
+ openNode(type, attrs) {
205
+ this.stack.push({ type: type, attrs: attrs, content: [], marks: Mark.none });
206
+ }
207
+ // Close and return the node that is currently on top of the stack.
208
+ closeNode() {
209
+ let info = this.stack.pop();
210
+ return this.addNode(info.type, info.attrs, info.content);
211
+ }
212
+ }
213
+ function attrs(spec, token, tokens, i) {
214
+ if (spec.getAttrs)
215
+ return spec.getAttrs(token, tokens, i);
216
+ // For backwards compatibility when `attrs` is a Function
217
+ else if (spec.attrs instanceof Function)
218
+ return spec.attrs(token);
219
+ else
220
+ return spec.attrs;
221
+ }
222
+ // Code content is represented as a single token with a `content`
223
+ // property in Markdown-it.
224
+ function noCloseToken(spec, type) {
225
+ return spec.noCloseToken || type == "code_inline" || type == "code_block" || type == "fence";
226
+ }
227
+ function withoutTrailingNewline(str) {
228
+ return str[str.length - 1] == "\n" ? str.slice(0, str.length - 1) : str;
229
+ }
230
+ function noOp() { }
231
+ function tokenHandlers(schema, tokens) {
232
+ let handlers = Object.create(null);
233
+ for (let type in tokens) {
234
+ let spec = tokens[type];
235
+ if (spec.block) {
236
+ let nodeType = schema.nodeType(spec.block);
237
+ if (noCloseToken(spec, type)) {
238
+ handlers[type] = (state, tok, tokens, i) => {
239
+ state.openNode(nodeType, attrs(spec, tok, tokens, i));
240
+ state.addText(withoutTrailingNewline(tok.content));
241
+ state.closeNode();
242
+ };
243
+ }
244
+ else {
245
+ handlers[type + "_open"] = (state, tok, tokens, i) => state.openNode(nodeType, attrs(spec, tok, tokens, i));
246
+ handlers[type + "_close"] = state => state.closeNode();
247
+ }
248
+ }
249
+ else if (spec.node) {
250
+ let nodeType = schema.nodeType(spec.node);
251
+ handlers[type] = (state, tok, tokens, i) => state.addNode(nodeType, attrs(spec, tok, tokens, i));
252
+ }
253
+ else if (spec.mark) {
254
+ let markType = schema.marks[spec.mark];
255
+ if (noCloseToken(spec, type)) {
256
+ handlers[type] = (state, tok, tokens, i) => {
257
+ state.openMark(markType.create(attrs(spec, tok, tokens, i)));
258
+ state.addText(withoutTrailingNewline(tok.content));
259
+ state.closeMark(markType);
260
+ };
261
+ }
262
+ else {
263
+ handlers[type + "_open"] = (state, tok, tokens, i) => state.openMark(markType.create(attrs(spec, tok, tokens, i)));
264
+ handlers[type + "_close"] = state => state.closeMark(markType);
265
+ }
266
+ }
267
+ else if (spec.ignore) {
268
+ if (noCloseToken(spec, type)) {
269
+ handlers[type] = noOp;
270
+ }
271
+ else {
272
+ handlers[type + "_open"] = noOp;
273
+ handlers[type + "_close"] = noOp;
274
+ }
275
+ }
276
+ else {
277
+ throw new RangeError("Unrecognized parsing spec " + JSON.stringify(spec));
278
+ }
279
+ }
280
+ handlers.text = (state, tok) => state.addText(tok.content);
281
+ handlers.inline = (state, tok) => state.parseTokens(tok.children);
282
+ handlers.softbreak = handlers.softbreak || (state => state.addText(" "));
283
+ return handlers;
284
+ }
285
+ /**
286
+ A configuration of a Markdown parser. Such a parser uses
287
+ [markdown-it](https://github.com/markdown-it/markdown-it) to
288
+ tokenize a file, and then runs the custom rules it is given over
289
+ the tokens to create a ProseMirror document tree.
290
+ */
291
+ class MarkdownParser {
292
+ /**
293
+ Create a parser with the given configuration. You can configure
294
+ the markdown-it parser to parse the dialect you want, and provide
295
+ a description of the ProseMirror entities those tokens map to in
296
+ the `tokens` object, which maps token names to descriptions of
297
+ what to do with them. Such a description is an object, and may
298
+ have the following properties:
299
+ */
300
+ constructor(
301
+ /**
302
+ The parser's document schema.
303
+ */
304
+ schema,
305
+ /**
306
+ This parser's markdown-it tokenizer.
307
+ */
308
+ tokenizer,
309
+ /**
310
+ The value of the `tokens` object used to construct this
311
+ parser. Can be useful to copy and modify to base other parsers
312
+ on.
313
+ */
314
+ tokens) {
315
+ this.schema = schema;
316
+ this.tokenizer = tokenizer;
317
+ this.tokens = tokens;
318
+ this.tokenHandlers = tokenHandlers(schema, tokens);
319
+ }
320
+ /**
321
+ Parse a string as [CommonMark](http://commonmark.org/) markup,
322
+ and create a ProseMirror document as prescribed by this parser's
323
+ rules.
324
+
325
+ The second argument, when given, is passed through to the
326
+ [Markdown
327
+ parser](https://markdown-it.github.io/markdown-it/#MarkdownIt.parse).
328
+ */
329
+ parse(text, markdownEnv = {}) {
330
+ let state = new MarkdownParseState(this.schema, this.tokenHandlers), doc;
331
+ state.parseTokens(this.tokenizer.parse(text, markdownEnv));
332
+ do {
333
+ doc = state.closeNode();
334
+ } while (state.stack.length);
335
+ return doc || this.schema.topNodeType.createAndFill();
336
+ }
337
+ }
338
+ function listIsTight(tokens, i) {
339
+ while (++i < tokens.length)
340
+ if (tokens[i].type != "list_item_open")
341
+ return tokens[i].hidden;
342
+ return false;
343
+ }
344
+ /**
345
+ A parser parsing unextended [CommonMark](http://commonmark.org/),
346
+ without inline HTML, and producing a document in the basic schema.
347
+ */
348
+ new MarkdownParser(schema, MarkdownIt("commonmark", { html: false }), {
349
+ blockquote: { block: "blockquote" },
350
+ paragraph: { block: "paragraph" },
351
+ list_item: { block: "list_item" },
352
+ bullet_list: { block: "bullet_list", getAttrs: (_, tokens, i) => ({ tight: listIsTight(tokens, i) }) },
353
+ ordered_list: { block: "ordered_list", getAttrs: (tok, tokens, i) => ({
354
+ order: +tok.attrGet("start") || 1,
355
+ tight: listIsTight(tokens, i)
356
+ }) },
357
+ heading: { block: "heading", getAttrs: tok => ({ level: +tok.tag.slice(1) }) },
358
+ code_block: { block: "code_block", noCloseToken: true },
359
+ fence: { block: "code_block", getAttrs: tok => ({ params: tok.info || "" }), noCloseToken: true },
360
+ hr: { node: "horizontal_rule" },
361
+ image: { node: "image", getAttrs: tok => ({
362
+ src: tok.attrGet("src"),
363
+ title: tok.attrGet("title") || null,
364
+ alt: tok.children[0] && tok.children[0].content || null
365
+ }) },
366
+ hardbreak: { node: "hard_break" },
367
+ em: { mark: "em" },
368
+ strong: { mark: "strong" },
369
+ link: { mark: "link", getAttrs: tok => ({
370
+ href: tok.attrGet("href"),
371
+ title: tok.attrGet("title") || null
372
+ }) },
373
+ code_inline: { mark: "code", noCloseToken: true }
374
+ });
375
+
376
+ const blankMark = { open: "", close: "", mixable: true };
377
+ /**
378
+ A specification for serializing a ProseMirror document as
379
+ Markdown/CommonMark text.
380
+ */
381
+ class MarkdownSerializer {
382
+ /**
383
+ Construct a serializer with the given configuration. The `nodes`
384
+ object should map node names in a given schema to function that
385
+ take a serializer state and such a node, and serialize the node.
386
+ */
387
+ constructor(
388
+ /**
389
+ The node serializer functions for this serializer.
390
+ */
391
+ nodes,
392
+ /**
393
+ The mark serializer info.
394
+ */
395
+ marks, options = {}) {
396
+ this.nodes = nodes;
397
+ this.marks = marks;
398
+ this.options = options;
399
+ }
400
+ /**
401
+ Serialize the content of the given node to
402
+ [CommonMark](http://commonmark.org/).
403
+ */
404
+ serialize(content, options = {}) {
405
+ options = Object.assign({}, this.options, options);
406
+ let state = new MarkdownSerializerState$1(this.nodes, this.marks, options);
407
+ state.renderContent(content);
408
+ return state.out;
409
+ }
410
+ }
411
+ /**
412
+ A serializer for the [basic schema](https://prosemirror.net/docs/ref/#schema).
413
+ */
414
+ const defaultMarkdownSerializer = new MarkdownSerializer({
415
+ blockquote(state, node) {
416
+ state.wrapBlock("> ", null, node, () => state.renderContent(node));
417
+ },
418
+ code_block(state, node) {
419
+ // Make sure the front matter fences are longer than any dash sequence within it
420
+ const backticks = node.textContent.match(/`{3,}/gm);
421
+ const fence = backticks ? (backticks.sort().slice(-1)[0] + "`") : "```";
422
+ state.write(fence + (node.attrs.params || "") + "\n");
423
+ state.text(node.textContent, false);
424
+ // Add a newline to the current content before adding closing marker
425
+ state.write("\n");
426
+ state.write(fence);
427
+ state.closeBlock(node);
428
+ },
429
+ heading(state, node) {
430
+ state.write(state.repeat("#", node.attrs.level) + " ");
431
+ state.renderInline(node, false);
432
+ state.closeBlock(node);
433
+ },
434
+ horizontal_rule(state, node) {
435
+ state.write(node.attrs.markup || "---");
436
+ state.closeBlock(node);
437
+ },
438
+ bullet_list(state, node) {
439
+ state.renderList(node, " ", () => (node.attrs.bullet || "*") + " ");
440
+ },
441
+ ordered_list(state, node) {
442
+ let start = node.attrs.order || 1;
443
+ let maxW = String(start + node.childCount - 1).length;
444
+ let space = state.repeat(" ", maxW + 2);
445
+ state.renderList(node, space, i => {
446
+ let nStr = String(start + i);
447
+ return state.repeat(" ", maxW - nStr.length) + nStr + ". ";
448
+ });
449
+ },
450
+ list_item(state, node) {
451
+ state.renderContent(node);
452
+ },
453
+ paragraph(state, node) {
454
+ state.renderInline(node);
455
+ state.closeBlock(node);
456
+ },
457
+ image(state, node) {
458
+ state.write("![" + state.esc(node.attrs.alt || "") + "](" + node.attrs.src.replace(/[\(\)]/g, "\\$&") +
459
+ (node.attrs.title ? ' "' + node.attrs.title.replace(/"/g, '\\"') + '"' : "") + ")");
460
+ },
461
+ hard_break(state, node, parent, index) {
462
+ for (let i = index + 1; i < parent.childCount; i++)
463
+ if (parent.child(i).type != node.type) {
464
+ state.write("\\\n");
465
+ return;
466
+ }
467
+ },
468
+ text(state, node) {
469
+ state.text(node.text, !state.inAutolink);
470
+ }
471
+ }, {
472
+ em: { open: "*", close: "*", mixable: true, expelEnclosingWhitespace: true },
473
+ strong: { open: "**", close: "**", mixable: true, expelEnclosingWhitespace: true },
474
+ link: {
475
+ open(state, mark, parent, index) {
476
+ state.inAutolink = isPlainURL(mark, parent, index);
477
+ return state.inAutolink ? "<" : "[";
478
+ },
479
+ close(state, mark, parent, index) {
480
+ let { inAutolink } = state;
481
+ state.inAutolink = undefined;
482
+ return inAutolink ? ">"
483
+ : "](" + mark.attrs.href.replace(/[\(\)"]/g, "\\$&") + (mark.attrs.title ? ` "${mark.attrs.title.replace(/"/g, '\\"')}"` : "") + ")";
484
+ },
485
+ mixable: true
486
+ },
487
+ code: { open(_state, _mark, parent, index) { return backticksFor(parent.child(index), -1); },
488
+ close(_state, _mark, parent, index) { return backticksFor(parent.child(index - 1), 1); },
489
+ escape: false }
490
+ });
491
+ function backticksFor(node, side) {
492
+ let ticks = /`+/g, m, len = 0;
493
+ if (node.isText)
494
+ while (m = ticks.exec(node.text))
495
+ len = Math.max(len, m[0].length);
496
+ let result = len > 0 && side > 0 ? " `" : "`";
497
+ for (let i = 0; i < len; i++)
498
+ result += "`";
499
+ if (len > 0 && side < 0)
500
+ result += " ";
501
+ return result;
502
+ }
503
+ function isPlainURL(link, parent, index) {
504
+ if (link.attrs.title || !/^\w+:/.test(link.attrs.href))
505
+ return false;
506
+ let content = parent.child(index);
507
+ if (!content.isText || content.text != link.attrs.href || content.marks[content.marks.length - 1] != link)
508
+ return false;
509
+ return index == parent.childCount - 1 || !link.isInSet(parent.child(index + 1).marks);
510
+ }
511
+ /**
512
+ This is an object used to track state and expose
513
+ methods related to markdown serialization. Instances are passed to
514
+ node and mark serialization methods (see `toMarkdown`).
515
+ */
516
+ let MarkdownSerializerState$1 = class MarkdownSerializerState {
517
+ /**
518
+ @internal
519
+ */
520
+ constructor(
521
+ /**
522
+ @internal
523
+ */
524
+ nodes,
525
+ /**
526
+ @internal
527
+ */
528
+ marks,
529
+ /**
530
+ The options passed to the serializer.
531
+ */
532
+ options) {
533
+ this.nodes = nodes;
534
+ this.marks = marks;
535
+ this.options = options;
536
+ /**
537
+ @internal
538
+ */
539
+ this.delim = "";
540
+ /**
541
+ @internal
542
+ */
543
+ this.out = "";
544
+ /**
545
+ @internal
546
+ */
547
+ this.closed = null;
548
+ /**
549
+ @internal
550
+ */
551
+ this.inAutolink = undefined;
552
+ /**
553
+ @internal
554
+ */
555
+ this.atBlockStart = false;
556
+ /**
557
+ @internal
558
+ */
559
+ this.inTightList = false;
560
+ if (typeof this.options.tightLists == "undefined")
561
+ this.options.tightLists = false;
562
+ if (typeof this.options.hardBreakNodeName == "undefined")
563
+ this.options.hardBreakNodeName = "hard_break";
564
+ }
565
+ /**
566
+ @internal
567
+ */
568
+ flushClose(size = 2) {
569
+ if (this.closed) {
570
+ if (!this.atBlank())
571
+ this.out += "\n";
572
+ if (size > 1) {
573
+ let delimMin = this.delim;
574
+ let trim = /\s+$/.exec(delimMin);
575
+ if (trim)
576
+ delimMin = delimMin.slice(0, delimMin.length - trim[0].length);
577
+ for (let i = 1; i < size; i++)
578
+ this.out += delimMin + "\n";
579
+ }
580
+ this.closed = null;
581
+ }
582
+ }
583
+ /**
584
+ @internal
585
+ */
586
+ getMark(name) {
587
+ let info = this.marks[name];
588
+ if (!info) {
589
+ if (this.options.strict !== false)
590
+ throw new Error(`Mark type \`${name}\` not supported by Markdown renderer`);
591
+ info = blankMark;
592
+ }
593
+ return info;
594
+ }
595
+ /**
596
+ Render a block, prefixing each line with `delim`, and the first
597
+ line in `firstDelim`. `node` should be the node that is closed at
598
+ the end of the block, and `f` is a function that renders the
599
+ content of the block.
600
+ */
601
+ wrapBlock(delim, firstDelim, node, f) {
602
+ let old = this.delim;
603
+ this.write(firstDelim != null ? firstDelim : delim);
604
+ this.delim += delim;
605
+ f();
606
+ this.delim = old;
607
+ this.closeBlock(node);
608
+ }
609
+ /**
610
+ @internal
611
+ */
612
+ atBlank() {
613
+ return /(^|\n)$/.test(this.out);
614
+ }
615
+ /**
616
+ Ensure the current content ends with a newline.
617
+ */
618
+ ensureNewLine() {
619
+ if (!this.atBlank())
620
+ this.out += "\n";
621
+ }
622
+ /**
623
+ Prepare the state for writing output (closing closed paragraphs,
624
+ adding delimiters, and so on), and then optionally add content
625
+ (unescaped) to the output.
626
+ */
627
+ write(content) {
628
+ this.flushClose();
629
+ if (this.delim && this.atBlank())
630
+ this.out += this.delim;
631
+ if (content)
632
+ this.out += content;
633
+ }
634
+ /**
635
+ Close the block for the given node.
636
+ */
637
+ closeBlock(node) {
638
+ this.closed = node;
639
+ }
640
+ /**
641
+ Add the given text to the document. When escape is not `false`,
642
+ it will be escaped.
643
+ */
644
+ text(text, escape = true) {
645
+ let lines = text.split("\n");
646
+ for (let i = 0; i < lines.length; i++) {
647
+ this.write();
648
+ // Escape exclamation marks in front of links
649
+ if (!escape && lines[i][0] == "[" && /(^|[^\\])\!$/.test(this.out))
650
+ this.out = this.out.slice(0, this.out.length - 1) + "\\!";
651
+ this.out += escape ? this.esc(lines[i], this.atBlockStart) : lines[i];
652
+ if (i != lines.length - 1)
653
+ this.out += "\n";
654
+ }
655
+ }
656
+ /**
657
+ Render the given node as a block.
658
+ */
659
+ render(node, parent, index) {
660
+ if (this.nodes[node.type.name]) {
661
+ this.nodes[node.type.name](this, node, parent, index);
662
+ }
663
+ else {
664
+ if (this.options.strict !== false) {
665
+ throw new Error("Token type `" + node.type.name + "` not supported by Markdown renderer");
666
+ }
667
+ else if (!node.type.isLeaf) {
668
+ if (node.type.inlineContent)
669
+ this.renderInline(node);
670
+ else
671
+ this.renderContent(node);
672
+ if (node.isBlock)
673
+ this.closeBlock(node);
674
+ }
675
+ }
676
+ }
677
+ /**
678
+ Render the contents of `parent` as block nodes.
679
+ */
680
+ renderContent(parent) {
681
+ parent.forEach((node, _, i) => this.render(node, parent, i));
682
+ }
683
+ /**
684
+ Render the contents of `parent` as inline content.
685
+ */
686
+ renderInline(parent, fromBlockStart = true) {
687
+ this.atBlockStart = fromBlockStart;
688
+ let active = [], trailing = "";
689
+ let progress = (node, offset, index) => {
690
+ let marks = node ? node.marks : [];
691
+ // Remove marks from `hard_break` that are the last node inside
692
+ // that mark to prevent parser edge cases with new lines just
693
+ // before closing marks.
694
+ if (node && node.type.name === this.options.hardBreakNodeName)
695
+ marks = marks.filter(m => {
696
+ if (index + 1 == parent.childCount)
697
+ return false;
698
+ let next = parent.child(index + 1);
699
+ return m.isInSet(next.marks) && (!next.isText || /\S/.test(next.text));
700
+ });
701
+ let leading = trailing;
702
+ trailing = "";
703
+ // If whitespace has to be expelled from the node, adjust
704
+ // leading and trailing accordingly.
705
+ if (node && node.isText && marks.some(mark => {
706
+ let info = this.getMark(mark.type.name);
707
+ return info && info.expelEnclosingWhitespace && !mark.isInSet(active);
708
+ })) {
709
+ let [_, lead, rest] = /^(\s*)(.*)$/m.exec(node.text);
710
+ if (lead) {
711
+ leading += lead;
712
+ node = rest ? node.withText(rest) : null;
713
+ if (!node)
714
+ marks = active;
715
+ }
716
+ }
717
+ if (node && node.isText && marks.some(mark => {
718
+ let info = this.getMark(mark.type.name);
719
+ return info && info.expelEnclosingWhitespace &&
720
+ (index == parent.childCount - 1 || !mark.isInSet(parent.child(index + 1).marks));
721
+ })) {
722
+ let [_, rest, trail] = /^(.*?)(\s*)$/m.exec(node.text);
723
+ if (trail) {
724
+ trailing = trail;
725
+ node = rest ? node.withText(rest) : null;
726
+ if (!node)
727
+ marks = active;
728
+ }
729
+ }
730
+ let inner = marks.length ? marks[marks.length - 1] : null;
731
+ let noEsc = inner && this.getMark(inner.type.name).escape === false;
732
+ let len = marks.length - (noEsc ? 1 : 0);
733
+ // Try to reorder 'mixable' marks, such as em and strong, which
734
+ // in Markdown may be opened and closed in different order, so
735
+ // that order of the marks for the token matches the order in
736
+ // active.
737
+ outer: for (let i = 0; i < len; i++) {
738
+ let mark = marks[i];
739
+ if (!this.getMark(mark.type.name).mixable)
740
+ break;
741
+ for (let j = 0; j < active.length; j++) {
742
+ let other = active[j];
743
+ if (!this.getMark(other.type.name).mixable)
744
+ break;
745
+ if (mark.eq(other)) {
746
+ if (i > j)
747
+ marks = marks.slice(0, j).concat(mark).concat(marks.slice(j, i)).concat(marks.slice(i + 1, len));
748
+ else if (j > i)
749
+ marks = marks.slice(0, i).concat(marks.slice(i + 1, j)).concat(mark).concat(marks.slice(j, len));
750
+ continue outer;
751
+ }
752
+ }
753
+ }
754
+ // Find the prefix of the mark set that didn't change
755
+ let keep = 0;
756
+ while (keep < Math.min(active.length, len) && marks[keep].eq(active[keep]))
757
+ ++keep;
758
+ // Close the marks that need to be closed
759
+ while (keep < active.length)
760
+ this.text(this.markString(active.pop(), false, parent, index), false);
761
+ // Output any previously expelled trailing whitespace outside the marks
762
+ if (leading)
763
+ this.text(leading);
764
+ // Open the marks that need to be opened
765
+ if (node) {
766
+ while (active.length < len) {
767
+ let add = marks[active.length];
768
+ active.push(add);
769
+ this.text(this.markString(add, true, parent, index), false);
770
+ this.atBlockStart = false;
771
+ }
772
+ // Render the node. Special case code marks, since their content
773
+ // may not be escaped.
774
+ if (noEsc && node.isText)
775
+ this.text(this.markString(inner, true, parent, index) + node.text +
776
+ this.markString(inner, false, parent, index + 1), false);
777
+ else
778
+ this.render(node, parent, index);
779
+ this.atBlockStart = false;
780
+ }
781
+ // After the first non-empty text node is rendered, the end of output
782
+ // is no longer at block start.
783
+ //
784
+ // FIXME: If a non-text node writes something to the output for this
785
+ // block, the end of output is also no longer at block start. But how
786
+ // can we detect that?
787
+ if ((node === null || node === void 0 ? void 0 : node.isText) && node.nodeSize > 0) {
788
+ this.atBlockStart = false;
789
+ }
790
+ };
791
+ parent.forEach(progress);
792
+ progress(null, 0, parent.childCount);
793
+ this.atBlockStart = false;
794
+ }
795
+ /**
796
+ Render a node's content as a list. `delim` should be the extra
797
+ indentation added to all lines except the first in an item,
798
+ `firstDelim` is a function going from an item index to a
799
+ delimiter for the first line of the item.
800
+ */
801
+ renderList(node, delim, firstDelim) {
802
+ if (this.closed && this.closed.type == node.type)
803
+ this.flushClose(3);
804
+ else if (this.inTightList)
805
+ this.flushClose(1);
806
+ let isTight = typeof node.attrs.tight != "undefined" ? node.attrs.tight : this.options.tightLists;
807
+ let prevTight = this.inTightList;
808
+ this.inTightList = isTight;
809
+ node.forEach((child, _, i) => {
810
+ if (i && isTight)
811
+ this.flushClose(1);
812
+ this.wrapBlock(delim, firstDelim(i), node, () => this.render(child, node, i));
813
+ });
814
+ this.inTightList = prevTight;
815
+ }
816
+ /**
817
+ Escape the given string so that it can safely appear in Markdown
818
+ content. If `startOfLine` is true, also escape characters that
819
+ have special meaning only at the start of the line.
820
+ */
821
+ esc(str, startOfLine = false) {
822
+ str = str.replace(/[`*\\~\[\]_]/g, (m, i) => m == "_" && i > 0 && i + 1 < str.length && str[i - 1].match(/\w/) && str[i + 1].match(/\w/) ? m : "\\" + m);
823
+ if (startOfLine)
824
+ str = str.replace(/^(\+[ ]|[\-*>])/, "\\$&").replace(/^(\s*)(#{1,6})(\s|$)/, '$1\\$2$3').replace(/^(\s*\d+)\.\s/, "$1\\. ");
825
+ if (this.options.escapeExtraCharacters)
826
+ str = str.replace(this.options.escapeExtraCharacters, "\\$&");
827
+ return str;
828
+ }
829
+ /**
830
+ @internal
831
+ */
832
+ quote(str) {
833
+ let wrap = str.indexOf('"') == -1 ? '""' : str.indexOf("'") == -1 ? "''" : "()";
834
+ return wrap[0] + str + wrap[1];
835
+ }
836
+ /**
837
+ Repeat the given string `n` times.
838
+ */
839
+ repeat(str, n) {
840
+ let out = "";
841
+ for (let i = 0; i < n; i++)
842
+ out += str;
843
+ return out;
844
+ }
845
+ /**
846
+ Get the markdown string for a given opening or closing mark.
847
+ */
848
+ markString(mark, open, parent, index) {
849
+ let info = this.getMark(mark.type.name);
850
+ let value = open ? info.open : info.close;
851
+ return typeof value == "string" ? value : value(this, mark, parent, index);
852
+ }
853
+ /**
854
+ Get leading and trailing whitespace from a string. Values of
855
+ leading or trailing property of the return object will be undefined
856
+ if there is no match.
857
+ */
858
+ getEnclosingWhitespace(text) {
859
+ return {
860
+ leading: (text.match(/^(\s+)/) || [undefined])[0],
861
+ trailing: (text.match(/(\s+)$/) || [undefined])[0]
862
+ };
863
+ }
864
+ };
865
+
866
+ export { MarkdownSerializerState$1 as M, defaultMarkdownSerializer as d };