@vc-shell/framework 1.1.45 → 1.1.47

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 (362) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/core/plugins/modularity/loader.ts +137 -78
  3. package/dist/assets/042c75b764bc78a7.svg +1 -0
  4. package/dist/assets/0ba156439a339f2a.svg +1 -0
  5. package/dist/assets/0be560bfb22d0e72.woff2 +0 -0
  6. package/dist/assets/0f590f8a94577092.svg +1 -0
  7. package/dist/assets/0fc5820f8be53a1b.svg +1 -0
  8. package/dist/assets/10768e2cc79fc60b.svg +1 -0
  9. package/dist/assets/11b3d25a56fd9a21.woff2 +0 -0
  10. package/dist/assets/157b8721e0600ea8.svg +1 -0
  11. package/dist/assets/15e91cdd649cde9a.svg +1 -0
  12. package/dist/assets/1a3e84b2457f709a.woff +0 -0
  13. package/dist/assets/1de63eb118636cce.svg +1 -0
  14. package/dist/assets/1ea01de36eb5491b.svg +1 -0
  15. package/dist/assets/204eaf512fde2023.svg +1 -0
  16. package/dist/assets/2088983edf42e153.svg +1 -0
  17. package/dist/assets/208f810a9321a327.svg +1 -0
  18. package/dist/assets/21220a9d10e6c558.svg +1 -0
  19. package/dist/assets/220db345a102045d.woff2 +0 -0
  20. package/dist/assets/225da11d23968333.svg +1 -0
  21. package/dist/assets/226f862dd81bdc13.woff2 +0 -0
  22. package/dist/assets/23a2d53395ddb14f.woff +0 -0
  23. package/dist/assets/259e6ad461a52ad7.svg +1 -0
  24. package/dist/assets/261e6dec4d53b9ac.woff +0 -0
  25. package/dist/assets/262f46a0b6d94bb6.svg +1 -0
  26. package/dist/assets/2857c513073467da.svg +1 -0
  27. package/dist/assets/2b3be7889467d98f.woff +0 -0
  28. package/dist/assets/2d4e6190eec72737.svg +1 -0
  29. package/dist/assets/2eba973185078bc8.woff +0 -0
  30. package/dist/assets/327511cd4a7ba7f9.woff +0 -0
  31. package/dist/assets/334d3f6bc766c516.woff +0 -0
  32. package/dist/assets/34ff7dd0c2285956.svg +1 -0
  33. package/dist/assets/3d26b7c1ab78bbe2.woff +0 -0
  34. package/dist/assets/3f8c4cc8099e34b6.woff2 +0 -0
  35. package/dist/assets/40a0e53b79ce63c6.woff2 +0 -0
  36. package/dist/assets/41275bcb979cb650.svg +1 -0
  37. package/dist/assets/42df4e2d6fa3fd2a.woff2 +0 -0
  38. package/dist/assets/434f7982590e462f.woff +0 -0
  39. package/dist/assets/4ae5f23e0ca888e7.woff2 +0 -0
  40. package/dist/assets/4d7a77b0e5373992.svg +1 -0
  41. package/dist/assets/4e43c74354534fb3.svg +1 -0
  42. package/dist/assets/4fe75f5117100705.svg +1 -0
  43. package/dist/assets/52610491f372cb0c.woff2 +0 -0
  44. package/dist/assets/52e261a005074e1b.woff +0 -0
  45. package/dist/assets/5304c3d05a5f9789.woff2 +0 -0
  46. package/dist/assets/572bb1bb4156a9c1.svg +1 -0
  47. package/dist/assets/5b3661be8be679d0.woff2 +0 -0
  48. package/dist/assets/5d96cfcc5bedd917.woff2 +0 -0
  49. package/dist/assets/6075995d7e74da46.woff2 +0 -0
  50. package/dist/assets/617c4736236e199e.woff +0 -0
  51. package/dist/assets/6619e9e10beea0e7.woff2 +0 -0
  52. package/dist/assets/67230f05dc94a265.svg +1 -0
  53. package/dist/assets/6798e4dd4add9b48.svg +1 -0
  54. package/dist/assets/698ec6c722d4cb05.woff2 +0 -0
  55. package/dist/assets/6a3e73faf406cf33.svg +1 -0
  56. package/dist/assets/72de3a63bc0b70dd.svg +1 -0
  57. package/dist/assets/74c6a6ab81bb6340.woff2 +0 -0
  58. package/dist/assets/74ed5f8a78e71106.svg +1 -0
  59. package/dist/assets/7ce0c166fd6a1204.woff +0 -0
  60. package/dist/assets/7d55399c2a7bc985.svg +1 -0
  61. package/dist/assets/7d970675c69fca1d.woff +0 -0
  62. package/dist/assets/7eda727273fd98d3.svg +1 -0
  63. package/dist/assets/7f6ebfd707b76ca2.woff +0 -0
  64. package/dist/assets/7fa898d213fcc7bc.woff2 +0 -0
  65. package/dist/assets/861e6b7192b3b6c7.woff +0 -0
  66. package/dist/assets/8bbcde81ba21ecb2.woff2 +0 -0
  67. package/dist/assets/8f6657e5e0b8d3e4.woff +0 -0
  68. package/dist/assets/910b0d99b9e26568.svg +1 -0
  69. package/dist/assets/91eee1aa81f72683.woff +0 -0
  70. package/dist/assets/92508f8707159b51.svg +1 -0
  71. package/dist/assets/9392bf1d591e1abb.svg +1 -0
  72. package/dist/assets/97e8d4984ba0713a.woff2 +0 -0
  73. package/dist/assets/9cb83236f6bb7ab1.svg +1 -0
  74. package/dist/assets/9d37314695c0b68d.woff +0 -0
  75. package/dist/assets/a18404194e3f9047.svg +1 -0
  76. package/dist/assets/a2017fe7f0a26510.svg +1 -0
  77. package/dist/assets/a47034e65dbcc3d7.woff +0 -0
  78. package/dist/assets/a617e11804bbacb7.woff +0 -0
  79. package/dist/assets/ab6e7190bb1492d5.woff2 +0 -0
  80. package/dist/assets/abf88f301a0730f4.svg +1 -0
  81. package/dist/assets/aed17cb6fdad2ada.woff2 +0 -0
  82. package/dist/assets/b1a596e31ad1185a.svg +1 -0
  83. package/dist/assets/b27767411c8427be.woff +0 -0
  84. package/dist/assets/b291dc35a17511f7.woff +0 -0
  85. package/dist/assets/b325adcae33bbe7a.svg +1 -0
  86. package/dist/assets/b372390551ca2fa1.svg +1 -0
  87. package/dist/assets/b5bb1e8fc975decd.svg +1 -0
  88. package/dist/assets/b645a4a2181b9dc1.svg +1 -0
  89. package/dist/assets/b6499ddce0a4ef7d.svg +1 -0
  90. package/dist/assets/b94421fadd23b0f2.svg +1 -0
  91. package/dist/assets/bb28fb0f27f1c11b.svg +1 -0
  92. package/dist/assets/bfbe205759295eca.woff2 +0 -0
  93. package/dist/assets/ca791c5ca5848a03.svg +1 -0
  94. package/dist/assets/cb32840ce330103f.woff +0 -0
  95. package/dist/assets/d084bda16abe8a56.svg +1 -0
  96. package/dist/assets/d32b129cae2fffd6.svg +1 -0
  97. package/dist/assets/d35a4c7113315758.woff2 +0 -0
  98. package/dist/assets/d3f792f54ae4c307.svg +1 -0
  99. package/dist/assets/d5a5b8630120073d.svg +1 -0
  100. package/dist/assets/d5f9664ebbfb104b.svg +1 -0
  101. package/dist/assets/d80b05788e407de7.woff2 +0 -0
  102. package/dist/assets/d84247b59449dd88.woff2 +0 -0
  103. package/dist/assets/dd05d43ff0df2fc7.svg +1 -0
  104. package/dist/assets/e38acaa1757232e0.svg +1 -0
  105. package/dist/assets/e4a8550f1c7ffe36.svg +1 -0
  106. package/dist/assets/e5adb5ae3a3698f6.svg +1 -0
  107. package/dist/assets/e61a1889bac955f4.woff2 +0 -0
  108. package/dist/assets/e72bb11356af94c7.svg +1 -0
  109. package/dist/assets/e98196a9f8dcb2f0.svg +1 -0
  110. package/dist/assets/ebec912a42ad49ff.woff +0 -0
  111. package/dist/assets/f09d89268e4c0317.svg +1 -0
  112. package/dist/assets/f276d55184e05a07.woff +0 -0
  113. package/dist/assets/f5722262b6e7214e.woff2 +0 -0
  114. package/dist/assets/f7fc8bf46089d8b2.svg +1 -0
  115. package/dist/assets/fcb1c1ffb5640194.woff +0 -0
  116. package/dist/assets/fe141d99763f5d2b.woff +0 -0
  117. package/dist/assets/fed13b0d59903483.svg +1 -0
  118. package/dist/assets/fed757d2c2344ead.woff2 +0 -0
  119. package/dist/assets/ffc438f20e79ce73.woff +0 -0
  120. package/dist/core/plugins/modularity/loader.d.ts.map +1 -1
  121. package/dist/framework.js +16549 -25875
  122. package/dist/index.css +1 -1
  123. package/dist/index.d.ts +5 -8
  124. package/dist/index.d.ts.map +1 -1
  125. package/dist/tsconfig.tsbuildinfo +1 -1
  126. package/dist/ui/components/atoms/vc-icon/vc-icon.vue.d.ts.map +1 -1
  127. package/dist/ui/components/atoms/vc-icon/vc-lucide-icon.vue.d.ts.map +1 -1
  128. package/dist/vendor-boolbase-Bgn9I6iN.js +21 -0
  129. package/dist/vendor-cheerio-CleDsuQZ.js +1053 -0
  130. package/dist/vendor-cheerio-select-CVkYl3Z-.js +191 -0
  131. package/dist/vendor-css-select-CtIzVIiG.js +622 -0
  132. package/dist/vendor-css-what-CZZaquJM.js +267 -0
  133. package/dist/vendor-cypress-signalr-mock-CdKwIhWw.js +769 -0
  134. package/dist/vendor-date-fns-CdFbeoHV.js +2989 -0
  135. package/dist/vendor-dom-serializer-CugO0RdN.js +213 -0
  136. package/dist/vendor-dom7-wvIUV9pT.js +529 -0
  137. package/dist/vendor-domelementtype-B3sFIGaC.js +21 -0
  138. package/dist/vendor-domhandler-CL40eeX9.js +311 -0
  139. package/dist/vendor-dompurify-eYFoHPwR.js +528 -0
  140. package/dist/vendor-domutils-D3Y2YQFR.js +386 -0
  141. package/dist/vendor-entities-v26HW8wW.js +363 -0
  142. package/dist/vendor-floating-ui-core-C9uEvi1M.js +349 -0
  143. package/dist/vendor-floating-ui-dom-CZkYGmv4.js +393 -0
  144. package/dist/vendor-floating-ui-utils-Bx3BTd6_.js +259 -0
  145. package/dist/vendor-floating-ui-vue-CLOiVYP7.js +107 -0
  146. package/dist/vendor-headlessui-vue-Dg0Llidi.js +961 -0
  147. package/dist/vendor-htmlparser2-CXL_uhMI.js +735 -0
  148. package/dist/vendor-iconify-vue-D4fihzvl.js +1205 -0
  149. package/dist/vendor-intlify-core-base-Bvt2vJFV.js +1129 -0
  150. package/dist/vendor-intlify-message-compiler-1VxNzq21.js +945 -0
  151. package/dist/vendor-intlify-shared-D7kiPMOG.js +130 -0
  152. package/dist/vendor-iso-639-1-dVGfSUIM.js +781 -0
  153. package/dist/vendor-linkify-it-LzoUhj6C.js +199 -0
  154. package/dist/vendor-linkifyjs-DTu7SY_Y.js +705 -0
  155. package/dist/vendor-lodash-es-CrYlgAi8.js +4816 -0
  156. package/dist/vendor-markdown-it-4AJoRTAg.js +2263 -0
  157. package/dist/vendor-markdown-it-task-lists-Byg1-ms9.js +69 -0
  158. package/dist/vendor-mdurl-DZFDNdqC.js +192 -0
  159. package/dist/vendor-microsoft-applicationinsights-analytics-js-DA-ctcAL.js +1105 -0
  160. package/dist/vendor-microsoft-applicationinsights-cfgsync-js-COfRj-2q.js +261 -0
  161. package/dist/vendor-microsoft-applicationinsights-channel-js-MTPYhH-I.js +1809 -0
  162. package/dist/vendor-microsoft-applicationinsights-common-CDVnJ6MR.js +1921 -0
  163. package/dist/vendor-microsoft-applicationinsights-core-js-D7Aicf8S.js +4127 -0
  164. package/dist/vendor-microsoft-applicationinsights-dependencies-js-CvQWWraU.js +1399 -0
  165. package/dist/vendor-microsoft-applicationinsights-properties-js-C0Iv1cZE.js +572 -0
  166. package/dist/vendor-microsoft-applicationinsights-shims-CxtPYiwp.js +43 -0
  167. package/dist/vendor-microsoft-applicationinsights-web-BRuQAzjU.js +487 -0
  168. package/dist/vendor-microsoft-dynamicproto-js-DSkQkH3T.js +147 -0
  169. package/dist/vendor-microsoft-signalr-qIrag5xx.js +1761 -0
  170. package/dist/vendor-moment-CwOqp704.js +2589 -0
  171. package/dist/vendor-nevware21-ts-async-FAyg3c9V.js +260 -0
  172. package/dist/vendor-nevware21-ts-utils-Dy41wRhA.js +853 -0
  173. package/dist/vendor-nth-check-BE7AeBMg.js +45 -0
  174. package/dist/vendor-orderedmap-B3SOk52B.js +103 -0
  175. package/dist/vendor-parse5-DqztJOGh.js +5747 -0
  176. package/dist/vendor-parse5-htmlparser2-tree-adapter-CNubfdOP.js +143 -0
  177. package/dist/vendor-popperjs-core-LGjf7Wza.js +905 -0
  178. package/dist/vendor-prettier-D8C9GG-0.js +4858 -0
  179. package/dist/vendor-prosemirror-commands-BqYcdumy.js +344 -0
  180. package/dist/vendor-prosemirror-dropcursor-zknUsW5x.js +86 -0
  181. package/dist/vendor-prosemirror-gapcursor-DjOZhP78.js +200 -0
  182. package/dist/vendor-prosemirror-history-l8l3CFac.js +248 -0
  183. package/dist/vendor-prosemirror-keymap-C17r08p-.js +62 -0
  184. package/dist/vendor-prosemirror-markdown-WJEDhc-w.js +650 -0
  185. package/dist/vendor-prosemirror-model-BN5TnJD_.js +2736 -0
  186. package/dist/vendor-prosemirror-schema-list-CR0gi7aY.js +87 -0
  187. package/dist/vendor-prosemirror-state-B0bFP8WI.js +821 -0
  188. package/dist/vendor-prosemirror-tables-B1txTKlC.js +1711 -0
  189. package/dist/vendor-prosemirror-transform-Bo7kNPme.js +1507 -0
  190. package/dist/vendor-prosemirror-view--C7TZvmQ.js +3746 -0
  191. package/dist/vendor-punycode-js-CNI-zL6U.js +133 -0
  192. package/dist/vendor-rope-sequence-sEGCUMi8.js +100 -0
  193. package/dist/vendor-semver-BoKYtkQw.js +1021 -0
  194. package/dist/vendor-ssr-window-D4k3p53c.js +133 -0
  195. package/dist/vendor-swiper-CMVLTGu0.js +2825 -0
  196. package/dist/vendor-tippy-js-BGdgwGX-.js +812 -0
  197. package/dist/vendor-tiptap-core-BRY37Sb2.js +2806 -0
  198. package/dist/vendor-tiptap-extension-blockquote-CPd5qv-9.js +43 -0
  199. package/dist/vendor-tiptap-extension-bold-B0GwBNks.js +71 -0
  200. package/dist/vendor-tiptap-extension-bubble-menu-B0sZZld7.js +128 -0
  201. package/dist/vendor-tiptap-extension-bullet-list-CQm4ReOu.js +53 -0
  202. package/dist/vendor-tiptap-extension-code-C8cy6bRj.js +51 -0
  203. package/dist/vendor-tiptap-extension-code-block-BqTchNEf.js +133 -0
  204. package/dist/vendor-tiptap-extension-document-Dka1Uu0g.js +9 -0
  205. package/dist/vendor-tiptap-extension-dropcursor-CFSh-BuE.js +20 -0
  206. package/dist/vendor-tiptap-extension-floating-menu-H8PB4zeI.js +99 -0
  207. package/dist/vendor-tiptap-extension-gapcursor-CzwfD_IT.js +24 -0
  208. package/dist/vendor-tiptap-extension-hard-break-Rm6aVcrK.js +55 -0
  209. package/dist/vendor-tiptap-extension-heading-CavI6u1v.js +54 -0
  210. package/dist/vendor-tiptap-extension-history-WEN1_74D.js +35 -0
  211. package/dist/vendor-tiptap-extension-horizontal-rule-DZkUEL6s.js +58 -0
  212. package/dist/vendor-tiptap-extension-image-B67_mxGM.js +64 -0
  213. package/dist/vendor-tiptap-extension-italic-BshxBFou.js +70 -0
  214. package/dist/vendor-tiptap-extension-link-CJAQIgui.js +262 -0
  215. package/dist/vendor-tiptap-extension-list-item-DF-iMpqO.js +33 -0
  216. package/dist/vendor-tiptap-extension-ordered-list-CN8MF-kN.js +71 -0
  217. package/dist/vendor-tiptap-extension-paragraph-DI577lM5.js +33 -0
  218. package/dist/vendor-tiptap-extension-placeholder-DwAtlfAF.js +52 -0
  219. package/dist/vendor-tiptap-extension-strike-CIty09KN.js +61 -0
  220. package/dist/vendor-tiptap-extension-table-C5nv-GUb.js +213 -0
  221. package/dist/vendor-tiptap-extension-table-cell-DXbBhJW3.js +40 -0
  222. package/dist/vendor-tiptap-extension-table-header-rtggsYXA.js +40 -0
  223. package/dist/vendor-tiptap-extension-table-row-67khjMDt.js +22 -0
  224. package/dist/vendor-tiptap-extension-text-D1OHb_a1.js +8 -0
  225. package/dist/vendor-tiptap-extension-underline-IqWixw3m.js +40 -0
  226. package/dist/vendor-tiptap-markdown-DVxB1hbO.js +825 -0
  227. package/dist/vendor-tiptap-starter-kit-CPH9gu2X.js +29 -0
  228. package/dist/vendor-tiptap-vue-3-CkBe4_xM.js +225 -0
  229. package/dist/vendor-truncate-html-Bx1HJzRq.js +145 -0
  230. package/dist/vendor-uc-micro-4lbSaZOs.js +17 -0
  231. package/dist/vendor-vee-validate-i18n-zT8NxX3R.js +93 -0
  232. package/dist/vendor-vee-validate-rules-DDeNM2Gc.js +314 -0
  233. package/dist/vendor-vue-currency-input-DxWnS-HB.js +315 -0
  234. package/dist/vendor-vue-devtools-api-aVYGocXp.js +93 -0
  235. package/dist/vendor-vue-i18n-DPtOLen3.js +1359 -0
  236. package/dist/vendor-vue3-application-insights-dAGGfA_M.js +69 -0
  237. package/dist/vendor-vue3-touch-events-8Pa3HHlV.js +169 -0
  238. package/dist/vendor-vuepic-vue-datepicker-DglsiNYa.js +4997 -0
  239. package/dist/vendor-vueuse-components-DtK_mxpP.js +219 -0
  240. package/dist/vendor-vueuse-core-cB-c7DzH.js +5129 -0
  241. package/dist/vendor-vueuse-shared-Dg7PMM0z.js +1169 -0
  242. package/dist/vendor-w3c-keyname-CLxH8j-f.js +92 -0
  243. package/dist/vendor-whatwg-fetch-l0sNRNKZ.js +1 -0
  244. package/package.json +5 -4
  245. package/ui/components/atoms/vc-icon/vc-icon.vue +10 -23
  246. package/ui/components/atoms/vc-icon/vc-lucide-icon.vue +2 -1
  247. package/dist/vendor-boolbase-Cp9L0GAZ.js +0 -25
  248. package/dist/vendor-cheerio-HN9zIPZn.js +0 -3135
  249. package/dist/vendor-cheerio-select-5Ry0HvBq.js +0 -306
  250. package/dist/vendor-css-select-DRIZ9kfZ.js +0 -966
  251. package/dist/vendor-css-what-DuPJ1HEF.js +0 -448
  252. package/dist/vendor-cypress-signalr-mock-BKdBJpdt.js +0 -778
  253. package/dist/vendor-date-fns-515YWkk-.js +0 -6724
  254. package/dist/vendor-dom-serializer-nQMsqjYW.js +0 -286
  255. package/dist/vendor-dom7-CJLPMwy5.js +0 -941
  256. package/dist/vendor-domelementtype-CjSzQey5.js +0 -53
  257. package/dist/vendor-domhandler-9z8cS16a.js +0 -484
  258. package/dist/vendor-dompurify-CRFzu7ib.js +0 -1336
  259. package/dist/vendor-domutils-Bc-Opz-v.js +0 -981
  260. package/dist/vendor-entities-Bfsx4xOQ.js +0 -636
  261. package/dist/vendor-floating-ui-core-wV8u8QP4.js +0 -511
  262. package/dist/vendor-floating-ui-dom-DDnRPs17.js +0 -706
  263. package/dist/vendor-floating-ui-utils-OMIFy1QU.js +0 -296
  264. package/dist/vendor-floating-ui-vue-D-tCDAMm.js +0 -167
  265. package/dist/vendor-fontsource-plus-jakarta-sans.css +0 -1
  266. package/dist/vendor-headlessui-vue-CY9FRgTb.js +0 -83
  267. package/dist/vendor-htmlparser2-B1dhFPOs.js +0 -1426
  268. package/dist/vendor-iconify-vue-DfRGgyNu.js +0 -1840
  269. package/dist/vendor-intlify-core-base-BuknsFQe.js +0 -1876
  270. package/dist/vendor-intlify-message-compiler-CuOQDWx1.js +0 -1508
  271. package/dist/vendor-intlify-shared-Cz4YRMuC.js +0 -241
  272. package/dist/vendor-iso-639-1-BJCk9DvE.js +0 -819
  273. package/dist/vendor-linkify-it-CKUf4vsc.js +0 -830
  274. package/dist/vendor-linkifyjs-BfyGgbCh.js +0 -1756
  275. package/dist/vendor-lodash-es-BySUOlwf.js +0 -18333
  276. package/dist/vendor-markdown-it-D-apazHa.js +0 -6000
  277. package/dist/vendor-markdown-it-task-lists-rxMVH6Ku.js +0 -131
  278. package/dist/vendor-mdurl-BNh2CCgT.js +0 -537
  279. package/dist/vendor-microsoft-applicationinsights-analytics-js-kG3lLg8X.js +0 -1275
  280. package/dist/vendor-microsoft-applicationinsights-cfgsync-js-C0uQkiQq.js +0 -591
  281. package/dist/vendor-microsoft-applicationinsights-channel-js-Dyd_PXA3.js +0 -2153
  282. package/dist/vendor-microsoft-applicationinsights-common-CfmP1_Qr.js +0 -2470
  283. package/dist/vendor-microsoft-applicationinsights-core-js-Cq4YSEvZ.js +0 -6589
  284. package/dist/vendor-microsoft-applicationinsights-dependencies-js-C56OBFr4.js +0 -1510
  285. package/dist/vendor-microsoft-applicationinsights-properties-js-CBJTBawx.js +0 -761
  286. package/dist/vendor-microsoft-applicationinsights-shims-CX8sJgar.js +0 -70
  287. package/dist/vendor-microsoft-applicationinsights-web-pim2ri-g.js +0 -667
  288. package/dist/vendor-microsoft-dynamicproto-js-CFBBUu9p.js +0 -520
  289. package/dist/vendor-microsoft-signalr-dUnlRsGm.js +0 -3339
  290. package/dist/vendor-moment-Mki5YqAR.js +0 -5679
  291. package/dist/vendor-nevware21-ts-async-CLMApQ9E.js +0 -395
  292. package/dist/vendor-nevware21-ts-utils-e8v8Jty3.js +0 -1160
  293. package/dist/vendor-nth-check-Bx8TxtJt.js +0 -157
  294. package/dist/vendor-orderedmap-dGG6uMFJ.js +0 -137
  295. package/dist/vendor-parse5-Bt2NhSzR.js +0 -8432
  296. package/dist/vendor-parse5-htmlparser2-tree-adapter-BUUtKzf8.js +0 -216
  297. package/dist/vendor-popperjs-core-Cr2byIky.js +0 -1790
  298. package/dist/vendor-prettier-B4PaeWRQ.js +0 -98
  299. package/dist/vendor-prosemirror-commands-BH9lWGpW.js +0 -561
  300. package/dist/vendor-prosemirror-dropcursor-CeyPcxrA.js +0 -146
  301. package/dist/vendor-prosemirror-gapcursor-U8UoUJII.js +0 -236
  302. package/dist/vendor-prosemirror-history-BDaJkvNx.js +0 -414
  303. package/dist/vendor-prosemirror-keymap-BbWvIWmH.js +0 -128
  304. package/dist/vendor-prosemirror-markdown-gB0PXBbz.js +0 -866
  305. package/dist/vendor-prosemirror-model-BZu3WVcD.js +0 -3463
  306. package/dist/vendor-prosemirror-schema-list-Bl9NpKA7.js +0 -158
  307. package/dist/vendor-prosemirror-state-BvL9Pxph.js +0 -1003
  308. package/dist/vendor-prosemirror-tables-17qAnviK.js +0 -2159
  309. package/dist/vendor-prosemirror-transform-CE9VV3qg.js +0 -2156
  310. package/dist/vendor-prosemirror-view-CU2WTHT7.js +0 -5811
  311. package/dist/vendor-punycode-js-iAs5RxMf.js +0 -441
  312. package/dist/vendor-rope-sequence-BdXDKoGt.js +0 -207
  313. package/dist/vendor-semver-CVLMK-S4.js +0 -2702
  314. package/dist/vendor-ssr-window-s6OpKa3O.js +0 -150
  315. package/dist/vendor-swiper-CdiyNHVt.js +0 -5679
  316. package/dist/vendor-tippy-js-DWFe2TfK.js +0 -1647
  317. package/dist/vendor-tiptap-core-NfwGfaQk.js +0 -4910
  318. package/dist/vendor-tiptap-extension-blockquote-jmWBTtsI.js +0 -57
  319. package/dist/vendor-tiptap-extension-bold-p5frh4ak.js +0 -97
  320. package/dist/vendor-tiptap-extension-bubble-menu-KUhZSfrs.js +0 -218
  321. package/dist/vendor-tiptap-extension-bullet-list-COmZRoSB.js +0 -73
  322. package/dist/vendor-tiptap-extension-code-block-DyTARZss.js +0 -221
  323. package/dist/vendor-tiptap-extension-code-jVv6CXpX.js +0 -75
  324. package/dist/vendor-tiptap-extension-document-DssuotYs.js +0 -13
  325. package/dist/vendor-tiptap-extension-dropcursor-BoO0Qv91.js +0 -26
  326. package/dist/vendor-tiptap-extension-floating-menu-CrO8CN5w.js +0 -165
  327. package/dist/vendor-tiptap-extension-gapcursor-KpsWEoMD.js +0 -30
  328. package/dist/vendor-tiptap-extension-hard-break-ldOzhSvf.js +0 -68
  329. package/dist/vendor-tiptap-extension-heading-CKz2llX0.js +0 -77
  330. package/dist/vendor-tiptap-extension-history-DeKZ2VQ9.js +0 -48
  331. package/dist/vendor-tiptap-extension-horizontal-rule-CAjWRyDS.js +0 -92
  332. package/dist/vendor-tiptap-extension-image-ZagcEYuk.js +0 -76
  333. package/dist/vendor-tiptap-extension-italic-CM4xdznY.js +0 -96
  334. package/dist/vendor-tiptap-extension-link-Z-AMC4Ri.js +0 -414
  335. package/dist/vendor-tiptap-extension-list-item-BJi5QpXc.js +0 -37
  336. package/dist/vendor-tiptap-extension-ordered-list-C_TMrfBE.js +0 -97
  337. package/dist/vendor-tiptap-extension-paragraph-CQw0E0Au.js +0 -39
  338. package/dist/vendor-tiptap-extension-placeholder-BBNVKfa_.js +0 -66
  339. package/dist/vendor-tiptap-extension-strike-DUyMYX1Z.js +0 -79
  340. package/dist/vendor-tiptap-extension-table-cell-CoDIMPA5.js +0 -47
  341. package/dist/vendor-tiptap-extension-table-header-DvbGHnmw.js +0 -47
  342. package/dist/vendor-tiptap-extension-table-row-D1uqN5Aj.js +0 -26
  343. package/dist/vendor-tiptap-extension-table-tKS4MOM4.js +0 -354
  344. package/dist/vendor-tiptap-extension-text-DtRBhKB2.js +0 -12
  345. package/dist/vendor-tiptap-extension-underline-DqaSFp_P.js +0 -50
  346. package/dist/vendor-tiptap-markdown-7-PCADTU.js +0 -1017
  347. package/dist/vendor-tiptap-starter-kit-CDSV_Zuu.js +0 -88
  348. package/dist/vendor-tiptap-vue-3-DZg2fjq_.js +0 -268
  349. package/dist/vendor-truncate-html-3qQY0Djo.js +0 -196
  350. package/dist/vendor-uc-micro-jjt6LQ65.js +0 -23
  351. package/dist/vendor-vee-validate-i18n-v_gHjRmD.js +0 -154
  352. package/dist/vendor-vee-validate-rules-DzV3VY3N.js +0 -536
  353. package/dist/vendor-vue-currency-input-DGAkEFBO.js +0 -545
  354. package/dist/vendor-vue-devtools-api-DXYR8qBG.js +0 -169
  355. package/dist/vendor-vue-i18n-Co752uk3.js +0 -1897
  356. package/dist/vendor-vue3-application-insights-CYWFCr_J.js +0 -119
  357. package/dist/vendor-vue3-touch-events-BJEAiSa3.js +0 -416
  358. package/dist/vendor-vuepic-vue-datepicker-BSWXRSiu.js +0 -5019
  359. package/dist/vendor-vueuse-components-l1bL12mE.js +0 -339
  360. package/dist/vendor-vueuse-core-DGcJOmwG.js +0 -7743
  361. package/dist/vendor-vueuse-shared-_mOXsFuM.js +0 -1568
  362. package/dist/vendor-w3c-keyname-BOm2dtJm.js +0 -121
@@ -1,57 +0,0 @@
1
- import { N as Node, w as wrappingInputRule, m as mergeAttributes } from './vendor-tiptap-core-NfwGfaQk.js';
2
-
3
- /**
4
- * Matches a blockquote to a `>` as input.
5
- */
6
- const inputRegex = /^\s*>\s$/;
7
- /**
8
- * This extension allows you to create blockquotes.
9
- * @see https://tiptap.dev/api/nodes/blockquote
10
- */
11
- const Blockquote = Node.create({
12
- name: 'blockquote',
13
- addOptions() {
14
- return {
15
- HTMLAttributes: {},
16
- };
17
- },
18
- content: 'block+',
19
- group: 'block',
20
- defining: true,
21
- parseHTML() {
22
- return [
23
- { tag: 'blockquote' },
24
- ];
25
- },
26
- renderHTML({ HTMLAttributes }) {
27
- return ['blockquote', mergeAttributes(this.options.HTMLAttributes, HTMLAttributes), 0];
28
- },
29
- addCommands() {
30
- return {
31
- setBlockquote: () => ({ commands }) => {
32
- return commands.wrapIn(this.name);
33
- },
34
- toggleBlockquote: () => ({ commands }) => {
35
- return commands.toggleWrap(this.name);
36
- },
37
- unsetBlockquote: () => ({ commands }) => {
38
- return commands.lift(this.name);
39
- },
40
- };
41
- },
42
- addKeyboardShortcuts() {
43
- return {
44
- 'Mod-Shift-b': () => this.editor.commands.toggleBlockquote(),
45
- };
46
- },
47
- addInputRules() {
48
- return [
49
- wrappingInputRule({
50
- find: inputRegex,
51
- type: this.type,
52
- }),
53
- ];
54
- },
55
- });
56
-
57
- export { Blockquote as B };
@@ -1,97 +0,0 @@
1
- import { M as Mark, a as markPasteRule, b as markInputRule, m as mergeAttributes } from './vendor-tiptap-core-NfwGfaQk.js';
2
-
3
- /**
4
- * Matches bold text via `**` as input.
5
- */
6
- const starInputRegex = /(?:^|\s)(\*\*(?!\s+\*\*)((?:[^*]+))\*\*(?!\s+\*\*))$/;
7
- /**
8
- * Matches bold text via `**` while pasting.
9
- */
10
- const starPasteRegex = /(?:^|\s)(\*\*(?!\s+\*\*)((?:[^*]+))\*\*(?!\s+\*\*))/g;
11
- /**
12
- * Matches bold text via `__` as input.
13
- */
14
- const underscoreInputRegex = /(?:^|\s)(__(?!\s+__)((?:[^_]+))__(?!\s+__))$/;
15
- /**
16
- * Matches bold text via `__` while pasting.
17
- */
18
- const underscorePasteRegex = /(?:^|\s)(__(?!\s+__)((?:[^_]+))__(?!\s+__))/g;
19
- /**
20
- * This extension allows you to mark text as bold.
21
- * @see https://tiptap.dev/api/marks/bold
22
- */
23
- const Bold = Mark.create({
24
- name: 'bold',
25
- addOptions() {
26
- return {
27
- HTMLAttributes: {},
28
- };
29
- },
30
- parseHTML() {
31
- return [
32
- {
33
- tag: 'strong',
34
- },
35
- {
36
- tag: 'b',
37
- getAttrs: node => node.style.fontWeight !== 'normal' && null,
38
- },
39
- {
40
- style: 'font-weight=400',
41
- clearMark: mark => mark.type.name === this.name,
42
- },
43
- {
44
- style: 'font-weight',
45
- getAttrs: value => /^(bold(er)?|[5-9]\d{2,})$/.test(value) && null,
46
- },
47
- ];
48
- },
49
- renderHTML({ HTMLAttributes }) {
50
- return ['strong', mergeAttributes(this.options.HTMLAttributes, HTMLAttributes), 0];
51
- },
52
- addCommands() {
53
- return {
54
- setBold: () => ({ commands }) => {
55
- return commands.setMark(this.name);
56
- },
57
- toggleBold: () => ({ commands }) => {
58
- return commands.toggleMark(this.name);
59
- },
60
- unsetBold: () => ({ commands }) => {
61
- return commands.unsetMark(this.name);
62
- },
63
- };
64
- },
65
- addKeyboardShortcuts() {
66
- return {
67
- 'Mod-b': () => this.editor.commands.toggleBold(),
68
- 'Mod-B': () => this.editor.commands.toggleBold(),
69
- };
70
- },
71
- addInputRules() {
72
- return [
73
- markInputRule({
74
- find: starInputRegex,
75
- type: this.type,
76
- }),
77
- markInputRule({
78
- find: underscoreInputRegex,
79
- type: this.type,
80
- }),
81
- ];
82
- },
83
- addPasteRules() {
84
- return [
85
- markPasteRule({
86
- find: starPasteRegex,
87
- type: this.type,
88
- }),
89
- markPasteRule({
90
- find: underscorePasteRegex,
91
- type: this.type,
92
- }),
93
- ];
94
- },
95
- });
96
-
97
- export { Bold as B };
@@ -1,218 +0,0 @@
1
- import { i as isTextSelection, c as isNodeSelection, p as posToDOMRect, E as Extension } from './vendor-tiptap-core-NfwGfaQk.js';
2
- import { t as tippy } from './vendor-tippy-js-DWFe2TfK.js';
3
- import { P as Plugin, a as PluginKey } from './vendor-prosemirror-state-BvL9Pxph.js';
4
-
5
- class BubbleMenuView {
6
- constructor({ editor, element, view, tippyOptions = {}, updateDelay = 250, shouldShow, }) {
7
- this.preventHide = false;
8
- this.shouldShow = ({ view, state, from, to, }) => {
9
- const { doc, selection } = state;
10
- const { empty } = selection;
11
- // Sometime check for `empty` is not enough.
12
- // Doubleclick an empty paragraph returns a node size of 2.
13
- // So we check also for an empty text size.
14
- const isEmptyTextBlock = !doc.textBetween(from, to).length && isTextSelection(state.selection);
15
- // When clicking on a element inside the bubble menu the editor "blur" event
16
- // is called and the bubble menu item is focussed. In this case we should
17
- // consider the menu as part of the editor and keep showing the menu
18
- const isChildOfMenu = this.element.contains(document.activeElement);
19
- const hasEditorFocus = view.hasFocus() || isChildOfMenu;
20
- if (!hasEditorFocus || empty || isEmptyTextBlock || !this.editor.isEditable) {
21
- return false;
22
- }
23
- return true;
24
- };
25
- this.mousedownHandler = () => {
26
- this.preventHide = true;
27
- };
28
- this.dragstartHandler = () => {
29
- this.hide();
30
- };
31
- this.focusHandler = () => {
32
- // we use `setTimeout` to make sure `selection` is already updated
33
- setTimeout(() => this.update(this.editor.view));
34
- };
35
- this.blurHandler = ({ event }) => {
36
- var _a;
37
- if (this.preventHide) {
38
- this.preventHide = false;
39
- return;
40
- }
41
- if ((event === null || event === void 0 ? void 0 : event.relatedTarget) && ((_a = this.element.parentNode) === null || _a === void 0 ? void 0 : _a.contains(event.relatedTarget))) {
42
- return;
43
- }
44
- if ((event === null || event === void 0 ? void 0 : event.relatedTarget) === this.editor.view.dom) {
45
- return;
46
- }
47
- this.hide();
48
- };
49
- this.tippyBlurHandler = (event) => {
50
- this.blurHandler({ event });
51
- };
52
- this.handleDebouncedUpdate = (view, oldState) => {
53
- const selectionChanged = !(oldState === null || oldState === void 0 ? void 0 : oldState.selection.eq(view.state.selection));
54
- const docChanged = !(oldState === null || oldState === void 0 ? void 0 : oldState.doc.eq(view.state.doc));
55
- if (!selectionChanged && !docChanged) {
56
- return;
57
- }
58
- if (this.updateDebounceTimer) {
59
- clearTimeout(this.updateDebounceTimer);
60
- }
61
- this.updateDebounceTimer = window.setTimeout(() => {
62
- this.updateHandler(view, selectionChanged, docChanged, oldState);
63
- }, this.updateDelay);
64
- };
65
- this.updateHandler = (view, selectionChanged, docChanged, oldState) => {
66
- var _a, _b, _c;
67
- const { state, composing } = view;
68
- const { selection } = state;
69
- const isSame = !selectionChanged && !docChanged;
70
- if (composing || isSame) {
71
- return;
72
- }
73
- this.createTooltip();
74
- // support for CellSelections
75
- const { ranges } = selection;
76
- const from = Math.min(...ranges.map(range => range.$from.pos));
77
- const to = Math.max(...ranges.map(range => range.$to.pos));
78
- const shouldShow = (_a = this.shouldShow) === null || _a === void 0 ? void 0 : _a.call(this, {
79
- editor: this.editor,
80
- element: this.element,
81
- view,
82
- state,
83
- oldState,
84
- from,
85
- to,
86
- });
87
- if (!shouldShow) {
88
- this.hide();
89
- return;
90
- }
91
- (_b = this.tippy) === null || _b === void 0 ? void 0 : _b.setProps({
92
- getReferenceClientRect: ((_c = this.tippyOptions) === null || _c === void 0 ? void 0 : _c.getReferenceClientRect)
93
- || (() => {
94
- if (isNodeSelection(state.selection)) {
95
- let node = view.nodeDOM(from);
96
- if (node) {
97
- const nodeViewWrapper = node.dataset.nodeViewWrapper ? node : node.querySelector('[data-node-view-wrapper]');
98
- if (nodeViewWrapper) {
99
- node = nodeViewWrapper.firstChild;
100
- }
101
- if (node) {
102
- return node.getBoundingClientRect();
103
- }
104
- }
105
- }
106
- return posToDOMRect(view, from, to);
107
- }),
108
- });
109
- this.show();
110
- };
111
- this.editor = editor;
112
- this.element = element;
113
- this.view = view;
114
- this.updateDelay = updateDelay;
115
- if (shouldShow) {
116
- this.shouldShow = shouldShow;
117
- }
118
- this.element.addEventListener('mousedown', this.mousedownHandler, { capture: true });
119
- this.view.dom.addEventListener('dragstart', this.dragstartHandler);
120
- this.editor.on('focus', this.focusHandler);
121
- this.editor.on('blur', this.blurHandler);
122
- this.tippyOptions = tippyOptions;
123
- // Detaches menu content from its current parent
124
- this.element.remove();
125
- this.element.style.visibility = 'visible';
126
- }
127
- createTooltip() {
128
- const { element: editorElement } = this.editor.options;
129
- const editorIsAttached = !!editorElement.parentElement;
130
- if (this.tippy || !editorIsAttached) {
131
- return;
132
- }
133
- this.tippy = tippy(editorElement, {
134
- duration: 0,
135
- getReferenceClientRect: null,
136
- content: this.element,
137
- interactive: true,
138
- trigger: 'manual',
139
- placement: 'top',
140
- hideOnClick: 'toggle',
141
- ...this.tippyOptions,
142
- });
143
- // maybe we have to hide tippy on its own blur event as well
144
- if (this.tippy.popper.firstChild) {
145
- this.tippy.popper.firstChild.addEventListener('blur', this.tippyBlurHandler);
146
- }
147
- }
148
- update(view, oldState) {
149
- const { state } = view;
150
- const hasValidSelection = state.selection.from !== state.selection.to;
151
- if (this.updateDelay > 0 && hasValidSelection) {
152
- this.handleDebouncedUpdate(view, oldState);
153
- return;
154
- }
155
- const selectionChanged = !(oldState === null || oldState === void 0 ? void 0 : oldState.selection.eq(view.state.selection));
156
- const docChanged = !(oldState === null || oldState === void 0 ? void 0 : oldState.doc.eq(view.state.doc));
157
- this.updateHandler(view, selectionChanged, docChanged, oldState);
158
- }
159
- show() {
160
- var _a;
161
- (_a = this.tippy) === null || _a === void 0 ? void 0 : _a.show();
162
- }
163
- hide() {
164
- var _a;
165
- (_a = this.tippy) === null || _a === void 0 ? void 0 : _a.hide();
166
- }
167
- destroy() {
168
- var _a, _b;
169
- if ((_a = this.tippy) === null || _a === void 0 ? void 0 : _a.popper.firstChild) {
170
- this.tippy.popper.firstChild.removeEventListener('blur', this.tippyBlurHandler);
171
- }
172
- (_b = this.tippy) === null || _b === void 0 ? void 0 : _b.destroy();
173
- this.element.removeEventListener('mousedown', this.mousedownHandler, { capture: true });
174
- this.view.dom.removeEventListener('dragstart', this.dragstartHandler);
175
- this.editor.off('focus', this.focusHandler);
176
- this.editor.off('blur', this.blurHandler);
177
- }
178
- }
179
- const BubbleMenuPlugin = (options) => {
180
- return new Plugin({
181
- key: typeof options.pluginKey === 'string' ? new PluginKey(options.pluginKey) : options.pluginKey,
182
- view: view => new BubbleMenuView({ view, ...options }),
183
- });
184
- };
185
-
186
- /**
187
- * This extension allows you to create a bubble menu.
188
- * @see https://tiptap.dev/api/extensions/bubble-menu
189
- */
190
- Extension.create({
191
- name: 'bubbleMenu',
192
- addOptions() {
193
- return {
194
- element: null,
195
- tippyOptions: {},
196
- pluginKey: 'bubbleMenu',
197
- updateDelay: undefined,
198
- shouldShow: null,
199
- };
200
- },
201
- addProseMirrorPlugins() {
202
- if (!this.options.element) {
203
- return [];
204
- }
205
- return [
206
- BubbleMenuPlugin({
207
- pluginKey: this.options.pluginKey,
208
- editor: this.editor,
209
- element: this.options.element,
210
- tippyOptions: this.options.tippyOptions,
211
- updateDelay: this.options.updateDelay,
212
- shouldShow: this.options.shouldShow,
213
- }),
214
- ];
215
- },
216
- });
217
-
218
- export { BubbleMenuPlugin as B };
@@ -1,73 +0,0 @@
1
- import { N as Node, w as wrappingInputRule, m as mergeAttributes } from './vendor-tiptap-core-NfwGfaQk.js';
2
-
3
- const ListItemName = 'listItem';
4
- const TextStyleName = 'textStyle';
5
- /**
6
- * Matches a bullet list to a dash or asterisk.
7
- */
8
- const inputRegex = /^\s*([-+*])\s$/;
9
- /**
10
- * This extension allows you to create bullet lists.
11
- * This requires the ListItem extension
12
- * @see https://tiptap.dev/api/nodes/bullet-list
13
- * @see https://tiptap.dev/api/nodes/list-item.
14
- */
15
- const BulletList = Node.create({
16
- name: 'bulletList',
17
- addOptions() {
18
- return {
19
- itemTypeName: 'listItem',
20
- HTMLAttributes: {},
21
- keepMarks: false,
22
- keepAttributes: false,
23
- };
24
- },
25
- group: 'block list',
26
- content() {
27
- return `${this.options.itemTypeName}+`;
28
- },
29
- parseHTML() {
30
- return [
31
- { tag: 'ul' },
32
- ];
33
- },
34
- renderHTML({ HTMLAttributes }) {
35
- return ['ul', mergeAttributes(this.options.HTMLAttributes, HTMLAttributes), 0];
36
- },
37
- addCommands() {
38
- return {
39
- toggleBulletList: () => ({ commands, chain }) => {
40
- if (this.options.keepAttributes) {
41
- return chain().toggleList(this.name, this.options.itemTypeName, this.options.keepMarks).updateAttributes(ListItemName, this.editor.getAttributes(TextStyleName)).run();
42
- }
43
- return commands.toggleList(this.name, this.options.itemTypeName, this.options.keepMarks);
44
- },
45
- };
46
- },
47
- addKeyboardShortcuts() {
48
- return {
49
- 'Mod-Shift-8': () => this.editor.commands.toggleBulletList(),
50
- };
51
- },
52
- addInputRules() {
53
- let inputRule = wrappingInputRule({
54
- find: inputRegex,
55
- type: this.type,
56
- });
57
- if (this.options.keepMarks || this.options.keepAttributes) {
58
- inputRule = wrappingInputRule({
59
- find: inputRegex,
60
- type: this.type,
61
- keepMarks: this.options.keepMarks,
62
- keepAttributes: this.options.keepAttributes,
63
- getAttributes: () => { return this.editor.getAttributes(TextStyleName); },
64
- editor: this.editor,
65
- });
66
- }
67
- return [
68
- inputRule,
69
- ];
70
- },
71
- });
72
-
73
- export { BulletList as B };
@@ -1,221 +0,0 @@
1
- import { N as Node, t as textblockTypeInputRule, m as mergeAttributes } from './vendor-tiptap-core-NfwGfaQk.js';
2
- import { P as Plugin, a as PluginKey, T as TextSelection, S as Selection } from './vendor-prosemirror-state-BvL9Pxph.js';
3
-
4
- /**
5
- * Matches a code block with backticks.
6
- */
7
- const backtickInputRegex = /^```([a-z]+)?[\s\n]$/;
8
- /**
9
- * Matches a code block with tildes.
10
- */
11
- const tildeInputRegex = /^~~~([a-z]+)?[\s\n]$/;
12
- /**
13
- * This extension allows you to create code blocks.
14
- * @see https://tiptap.dev/api/nodes/code-block
15
- */
16
- const CodeBlock = Node.create({
17
- name: 'codeBlock',
18
- addOptions() {
19
- return {
20
- languageClassPrefix: 'language-',
21
- exitOnTripleEnter: true,
22
- exitOnArrowDown: true,
23
- defaultLanguage: null,
24
- HTMLAttributes: {},
25
- };
26
- },
27
- content: 'text*',
28
- marks: '',
29
- group: 'block',
30
- code: true,
31
- defining: true,
32
- addAttributes() {
33
- return {
34
- language: {
35
- default: this.options.defaultLanguage,
36
- parseHTML: element => {
37
- var _a;
38
- const { languageClassPrefix } = this.options;
39
- const classNames = [...(((_a = element.firstElementChild) === null || _a === void 0 ? void 0 : _a.classList) || [])];
40
- const languages = classNames
41
- .filter(className => className.startsWith(languageClassPrefix))
42
- .map(className => className.replace(languageClassPrefix, ''));
43
- const language = languages[0];
44
- if (!language) {
45
- return null;
46
- }
47
- return language;
48
- },
49
- rendered: false,
50
- },
51
- };
52
- },
53
- parseHTML() {
54
- return [
55
- {
56
- tag: 'pre',
57
- preserveWhitespace: 'full',
58
- },
59
- ];
60
- },
61
- renderHTML({ node, HTMLAttributes }) {
62
- return [
63
- 'pre',
64
- mergeAttributes(this.options.HTMLAttributes, HTMLAttributes),
65
- [
66
- 'code',
67
- {
68
- class: node.attrs.language
69
- ? this.options.languageClassPrefix + node.attrs.language
70
- : null,
71
- },
72
- 0,
73
- ],
74
- ];
75
- },
76
- addCommands() {
77
- return {
78
- setCodeBlock: attributes => ({ commands }) => {
79
- return commands.setNode(this.name, attributes);
80
- },
81
- toggleCodeBlock: attributes => ({ commands }) => {
82
- return commands.toggleNode(this.name, 'paragraph', attributes);
83
- },
84
- };
85
- },
86
- addKeyboardShortcuts() {
87
- return {
88
- 'Mod-Alt-c': () => this.editor.commands.toggleCodeBlock(),
89
- // remove code block when at start of document or code block is empty
90
- Backspace: () => {
91
- const { empty, $anchor } = this.editor.state.selection;
92
- const isAtStart = $anchor.pos === 1;
93
- if (!empty || $anchor.parent.type.name !== this.name) {
94
- return false;
95
- }
96
- if (isAtStart || !$anchor.parent.textContent.length) {
97
- return this.editor.commands.clearNodes();
98
- }
99
- return false;
100
- },
101
- // exit node on triple enter
102
- Enter: ({ editor }) => {
103
- if (!this.options.exitOnTripleEnter) {
104
- return false;
105
- }
106
- const { state } = editor;
107
- const { selection } = state;
108
- const { $from, empty } = selection;
109
- if (!empty || $from.parent.type !== this.type) {
110
- return false;
111
- }
112
- const isAtEnd = $from.parentOffset === $from.parent.nodeSize - 2;
113
- const endsWithDoubleNewline = $from.parent.textContent.endsWith('\n\n');
114
- if (!isAtEnd || !endsWithDoubleNewline) {
115
- return false;
116
- }
117
- return editor
118
- .chain()
119
- .command(({ tr }) => {
120
- tr.delete($from.pos - 2, $from.pos);
121
- return true;
122
- })
123
- .exitCode()
124
- .run();
125
- },
126
- // exit node on arrow down
127
- ArrowDown: ({ editor }) => {
128
- if (!this.options.exitOnArrowDown) {
129
- return false;
130
- }
131
- const { state } = editor;
132
- const { selection, doc } = state;
133
- const { $from, empty } = selection;
134
- if (!empty || $from.parent.type !== this.type) {
135
- return false;
136
- }
137
- const isAtEnd = $from.parentOffset === $from.parent.nodeSize - 2;
138
- if (!isAtEnd) {
139
- return false;
140
- }
141
- const after = $from.after();
142
- if (after === undefined) {
143
- return false;
144
- }
145
- const nodeAfter = doc.nodeAt(after);
146
- if (nodeAfter) {
147
- return editor.commands.command(({ tr }) => {
148
- tr.setSelection(Selection.near(doc.resolve(after)));
149
- return true;
150
- });
151
- }
152
- return editor.commands.exitCode();
153
- },
154
- };
155
- },
156
- addInputRules() {
157
- return [
158
- textblockTypeInputRule({
159
- find: backtickInputRegex,
160
- type: this.type,
161
- getAttributes: match => ({
162
- language: match[1],
163
- }),
164
- }),
165
- textblockTypeInputRule({
166
- find: tildeInputRegex,
167
- type: this.type,
168
- getAttributes: match => ({
169
- language: match[1],
170
- }),
171
- }),
172
- ];
173
- },
174
- addProseMirrorPlugins() {
175
- return [
176
- // this plugin creates a code block for pasted content from VS Code
177
- // we can also detect the copied code language
178
- new Plugin({
179
- key: new PluginKey('codeBlockVSCodeHandler'),
180
- props: {
181
- handlePaste: (view, event) => {
182
- if (!event.clipboardData) {
183
- return false;
184
- }
185
- // don’t create a new code block within code blocks
186
- if (this.editor.isActive(this.type.name)) {
187
- return false;
188
- }
189
- const text = event.clipboardData.getData('text/plain');
190
- const vscode = event.clipboardData.getData('vscode-editor-data');
191
- const vscodeData = vscode ? JSON.parse(vscode) : undefined;
192
- const language = vscodeData === null || vscodeData === void 0 ? void 0 : vscodeData.mode;
193
- if (!text || !language) {
194
- return false;
195
- }
196
- const { tr, schema } = view.state;
197
- // prepare a text node
198
- // strip carriage return chars from text pasted as code
199
- // see: https://github.com/ProseMirror/prosemirror-view/commit/a50a6bcceb4ce52ac8fcc6162488d8875613aacd
200
- const textNode = schema.text(text.replace(/\r\n?/g, '\n'));
201
- // create a code block with the text node
202
- // replace selection with the code block
203
- tr.replaceSelectionWith(this.type.create({ language }, textNode));
204
- if (tr.selection.$from.parent.type !== this.type) {
205
- // put cursor inside the newly created code block
206
- tr.setSelection(TextSelection.near(tr.doc.resolve(Math.max(0, tr.selection.from - 2))));
207
- }
208
- // store meta information
209
- // this is useful for other plugins that depends on the paste event
210
- // like the paste rule plugin
211
- tr.setMeta('paste', true);
212
- view.dispatch(tr);
213
- return true;
214
- },
215
- },
216
- }),
217
- ];
218
- },
219
- });
220
-
221
- export { CodeBlock as C };