@milkdown/crepe 7.5.0 → 7.5.2

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 (584) hide show
  1. package/lib/cjs/index-N1cRxqdw.js +39 -0
  2. package/lib/cjs/index-N1cRxqdw.js.map +1 -0
  3. package/lib/cjs/{index-cpC-j5Nt.js → index-TGmNEvsj.js} +31 -40
  4. package/lib/cjs/index-TGmNEvsj.js.map +1 -0
  5. package/lib/cjs/index-dEVmN_aj.js +26 -0
  6. package/lib/cjs/index-dEVmN_aj.js.map +1 -0
  7. package/lib/cjs/index-fhKBUFkq.js +46 -0
  8. package/lib/cjs/index-fhKBUFkq.js.map +1 -0
  9. package/lib/cjs/index-ocxd4A-M.js +675 -0
  10. package/lib/cjs/index-ocxd4A-M.js.map +1 -0
  11. package/lib/cjs/{index-J3XY9IPt.js → index-rFFAL9YA.js} +9 -17
  12. package/lib/cjs/{index-J3XY9IPt.js.map → index-rFFAL9YA.js.map} +1 -1
  13. package/lib/cjs/index-rLAgJeYn.js +28 -0
  14. package/lib/cjs/index-rLAgJeYn.js.map +1 -0
  15. package/lib/cjs/index-tlx25I_m.js +36 -0
  16. package/lib/cjs/index-tlx25I_m.js.map +1 -0
  17. package/lib/cjs/index-uleaJDBC.js +19 -0
  18. package/lib/cjs/index-uleaJDBC.js.map +1 -0
  19. package/lib/cjs/index.js +150 -14
  20. package/lib/cjs/index.js.map +1 -1
  21. package/lib/cjs/{todoList-Ze4FLMlx.js → todoList-YYRQo7wG.js} +1 -12
  22. package/lib/cjs/todoList-YYRQo7wG.js.map +1 -0
  23. package/lib/esm/index-6JoGWH2I.js +17 -0
  24. package/lib/esm/index-6JoGWH2I.js.map +1 -0
  25. package/lib/esm/{index-MB6wQe1U.js → index-CMGDOz11.js} +5 -13
  26. package/lib/esm/{index-MB6wQe1U.js.map → index-CMGDOz11.js.map} +1 -1
  27. package/lib/esm/index-HlPKwzLC.js +34 -0
  28. package/lib/esm/index-HlPKwzLC.js.map +1 -0
  29. package/lib/esm/index-_A9vu1ED.js +673 -0
  30. package/lib/esm/index-_A9vu1ED.js.map +1 -0
  31. package/lib/esm/index-amuALmzU.js +26 -0
  32. package/lib/esm/index-amuALmzU.js.map +1 -0
  33. package/lib/esm/index-fVrfHXda.js +24 -0
  34. package/lib/esm/index-fVrfHXda.js.map +1 -0
  35. package/lib/esm/index-jU_6odT9.js +44 -0
  36. package/lib/esm/index-jU_6odT9.js.map +1 -0
  37. package/lib/esm/index-ohmbt6Ys.js +37 -0
  38. package/lib/esm/index-ohmbt6Ys.js.map +1 -0
  39. package/lib/esm/{index-A83StUe6.js → index-w69wbtEZ.js} +9 -18
  40. package/lib/esm/{index-A83StUe6.js.map → index-w69wbtEZ.js.map} +1 -1
  41. package/lib/esm/index.js +152 -12
  42. package/lib/esm/index.js.map +1 -1
  43. package/lib/esm/{todoList-M-PGJKde.js → todoList-9QsDDcmB.js} +2 -12
  44. package/lib/esm/todoList-9QsDDcmB.js.map +1 -0
  45. package/package.json +2 -4
  46. package/lib/cjs/_view-N32ied53.js +0 -27
  47. package/lib/cjs/_view-N32ied53.js.map +0 -1
  48. package/lib/cjs/apl-99bWvYTf.js +0 -145
  49. package/lib/cjs/apl-99bWvYTf.js.map +0 -1
  50. package/lib/cjs/asciiarmor-cf0JLIr_.js +0 -59
  51. package/lib/cjs/asciiarmor-cf0JLIr_.js.map +0 -1
  52. package/lib/cjs/asn1-H4XzAvBS.js +0 -195
  53. package/lib/cjs/asn1-H4XzAvBS.js.map +0 -1
  54. package/lib/cjs/asterisk-0FgJEfZB.js +0 -190
  55. package/lib/cjs/asterisk-0FgJEfZB.js.map +0 -1
  56. package/lib/cjs/brainfuck-JX7vRZy7.js +0 -73
  57. package/lib/cjs/brainfuck-JX7vRZy7.js.map +0 -1
  58. package/lib/cjs/clike-ueXlMQy5.js +0 -1034
  59. package/lib/cjs/clike-ueXlMQy5.js.map +0 -1
  60. package/lib/cjs/clojure-6iDAG5oi.js +0 -277
  61. package/lib/cjs/clojure-6iDAG5oi.js.map +0 -1
  62. package/lib/cjs/clsx-dASsG01A.js +0 -6
  63. package/lib/cjs/clsx-dASsG01A.js.map +0 -1
  64. package/lib/cjs/cmake-L0RIBnfc.js +0 -84
  65. package/lib/cjs/cmake-L0RIBnfc.js.map +0 -1
  66. package/lib/cjs/cobol-oxkMh1GJ.js +0 -238
  67. package/lib/cjs/cobol-oxkMh1GJ.js.map +0 -1
  68. package/lib/cjs/coffeescript--eauIeRQ.js +0 -332
  69. package/lib/cjs/coffeescript--eauIeRQ.js.map +0 -1
  70. package/lib/cjs/commonlisp-pgSu-q6f.js +0 -111
  71. package/lib/cjs/commonlisp-pgSu-q6f.js.map +0 -1
  72. package/lib/cjs/crystal-2y3I5ibZ.js +0 -422
  73. package/lib/cjs/crystal-2y3I5ibZ.js.map +0 -1
  74. package/lib/cjs/css-WH69cXzo.js +0 -855
  75. package/lib/cjs/css-WH69cXzo.js.map +0 -1
  76. package/lib/cjs/cypher-da-dqVyQ.js +0 -125
  77. package/lib/cjs/cypher-da-dqVyQ.js.map +0 -1
  78. package/lib/cjs/d-58J7EOkP.js +0 -208
  79. package/lib/cjs/d-58J7EOkP.js.map +0 -1
  80. package/lib/cjs/diff-437Hfzqm.js +0 -33
  81. package/lib/cjs/diff-437Hfzqm.js.map +0 -1
  82. package/lib/cjs/dockerfile-7i0OoaQe.js +0 -202
  83. package/lib/cjs/dockerfile-7i0OoaQe.js.map +0 -1
  84. package/lib/cjs/dtd-AKekCPPB.js +0 -124
  85. package/lib/cjs/dtd-AKekCPPB.js.map +0 -1
  86. package/lib/cjs/dylan-DLEmvz1I.js +0 -340
  87. package/lib/cjs/dylan-DLEmvz1I.js.map +0 -1
  88. package/lib/cjs/ebnf-36cJWqxB.js +0 -154
  89. package/lib/cjs/ebnf-36cJWqxB.js.map +0 -1
  90. package/lib/cjs/ecl-UWr5vJKJ.js +0 -193
  91. package/lib/cjs/ecl-UWr5vJKJ.js.map +0 -1
  92. package/lib/cjs/eiffel-Su-C9LAY.js +0 -149
  93. package/lib/cjs/eiffel-Su-C9LAY.js.map +0 -1
  94. package/lib/cjs/elm-vNNfVJj7.js +0 -233
  95. package/lib/cjs/elm-vNNfVJj7.js.map +0 -1
  96. package/lib/cjs/erlang-NM9dgYaS.js +0 -584
  97. package/lib/cjs/erlang-NM9dgYaS.js.map +0 -1
  98. package/lib/cjs/factor-RWs-4aWg.js +0 -68
  99. package/lib/cjs/factor-RWs-4aWg.js.map +0 -1
  100. package/lib/cjs/fcl-acUhGCfs.js +0 -157
  101. package/lib/cjs/fcl-acUhGCfs.js.map +0 -1
  102. package/lib/cjs/floating-ui.dom-2cjBpir5.js +0 -1134
  103. package/lib/cjs/floating-ui.dom-2cjBpir5.js.map +0 -1
  104. package/lib/cjs/forth-sDkE6z3A.js +0 -167
  105. package/lib/cjs/forth-sDkE6z3A.js.map +0 -1
  106. package/lib/cjs/fortran-gkb4yvdk.js +0 -175
  107. package/lib/cjs/fortran-gkb4yvdk.js.map +0 -1
  108. package/lib/cjs/gas-mNA0qvkv.js +0 -347
  109. package/lib/cjs/gas-mNA0qvkv.js.map +0 -1
  110. package/lib/cjs/gherkin-5uyKpXXh.js +0 -150
  111. package/lib/cjs/gherkin-5uyKpXXh.js.map +0 -1
  112. package/lib/cjs/go-5XitXoIZ.js +0 -167
  113. package/lib/cjs/go-5XitXoIZ.js.map +0 -1
  114. package/lib/cjs/groovy-mz3pWMKN.js +0 -233
  115. package/lib/cjs/groovy-mz3pWMKN.js.map +0 -1
  116. package/lib/cjs/haskell-9KaSS7kb.js +0 -242
  117. package/lib/cjs/haskell-9KaSS7kb.js.map +0 -1
  118. package/lib/cjs/haxe-L8h6Pvni.js +0 -494
  119. package/lib/cjs/haxe-L8h6Pvni.js.map +0 -1
  120. package/lib/cjs/helper-1aludV1Z.js +0 -15
  121. package/lib/cjs/helper-1aludV1Z.js.map +0 -1
  122. package/lib/cjs/http-BFQQnRR-.js +0 -92
  123. package/lib/cjs/http-BFQQnRR-.js.map +0 -1
  124. package/lib/cjs/idl-29T-AzAy.js +0 -277
  125. package/lib/cjs/idl-29T-AzAy.js.map +0 -1
  126. package/lib/cjs/index--sa4NMpW.js +0 -119
  127. package/lib/cjs/index--sa4NMpW.js.map +0 -1
  128. package/lib/cjs/index--tnUmqZ_.js +0 -108
  129. package/lib/cjs/index--tnUmqZ_.js.map +0 -1
  130. package/lib/cjs/index-1vHyMXH8.js +0 -203
  131. package/lib/cjs/index-1vHyMXH8.js.map +0 -1
  132. package/lib/cjs/index-28q261C7.js +0 -448
  133. package/lib/cjs/index-28q261C7.js.map +0 -1
  134. package/lib/cjs/index-55VIM-52.js +0 -156
  135. package/lib/cjs/index-55VIM-52.js.map +0 -1
  136. package/lib/cjs/index-92bwto5V.js +0 -405
  137. package/lib/cjs/index-92bwto5V.js.map +0 -1
  138. package/lib/cjs/index-Buu2tD9O.js +0 -534
  139. package/lib/cjs/index-Buu2tD9O.js.map +0 -1
  140. package/lib/cjs/index-E4Ist86Z.js +0 -532
  141. package/lib/cjs/index-E4Ist86Z.js.map +0 -1
  142. package/lib/cjs/index-FbNqlZU8.js +0 -263
  143. package/lib/cjs/index-FbNqlZU8.js.map +0 -1
  144. package/lib/cjs/index-HH5lPgpj.js +0 -443
  145. package/lib/cjs/index-HH5lPgpj.js.map +0 -1
  146. package/lib/cjs/index-J1-yHn7v.js +0 -128
  147. package/lib/cjs/index-J1-yHn7v.js.map +0 -1
  148. package/lib/cjs/index-Jztk6JlP.js +0 -25698
  149. package/lib/cjs/index-Jztk6JlP.js.map +0 -1
  150. package/lib/cjs/index-N6pPZY61.js +0 -191
  151. package/lib/cjs/index-N6pPZY61.js.map +0 -1
  152. package/lib/cjs/index-TUJs6KKL.js +0 -472
  153. package/lib/cjs/index-TUJs6KKL.js.map +0 -1
  154. package/lib/cjs/index-Tjg8KyK7.js +0 -398
  155. package/lib/cjs/index-Tjg8KyK7.js.map +0 -1
  156. package/lib/cjs/index-VYwHTL3F.js +0 -161
  157. package/lib/cjs/index-VYwHTL3F.js.map +0 -1
  158. package/lib/cjs/index-_GOdKqUK.js +0 -1147
  159. package/lib/cjs/index-_GOdKqUK.js.map +0 -1
  160. package/lib/cjs/index-cKQcw-eu.js +0 -386
  161. package/lib/cjs/index-cKQcw-eu.js.map +0 -1
  162. package/lib/cjs/index-c_OzudR7.js +0 -699
  163. package/lib/cjs/index-c_OzudR7.js.map +0 -1
  164. package/lib/cjs/index-cb-5m0vG.js +0 -2519
  165. package/lib/cjs/index-cb-5m0vG.js.map +0 -1
  166. package/lib/cjs/index-cpC-j5Nt.js.map +0 -1
  167. package/lib/cjs/index-crv_k6dv.js +0 -1353
  168. package/lib/cjs/index-crv_k6dv.js.map +0 -1
  169. package/lib/cjs/index-jlfsu92T.js +0 -362
  170. package/lib/cjs/index-jlfsu92T.js.map +0 -1
  171. package/lib/cjs/index-jn036wuh.js +0 -1045
  172. package/lib/cjs/index-jn036wuh.js.map +0 -1
  173. package/lib/cjs/index-kqz-P6o6.js +0 -55
  174. package/lib/cjs/index-kqz-P6o6.js.map +0 -1
  175. package/lib/cjs/index-lBumFRUQ.js +0 -209
  176. package/lib/cjs/index-lBumFRUQ.js.map +0 -1
  177. package/lib/cjs/index-lUNj3xuC.js +0 -81
  178. package/lib/cjs/index-lUNj3xuC.js.map +0 -1
  179. package/lib/cjs/index-mcxgNBq9.js +0 -464
  180. package/lib/cjs/index-mcxgNBq9.js.map +0 -1
  181. package/lib/cjs/index-nTfDKYYi.js +0 -1029
  182. package/lib/cjs/index-nTfDKYYi.js.map +0 -1
  183. package/lib/cjs/index-tBw4NmwY.js +0 -33852
  184. package/lib/cjs/index-tBw4NmwY.js.map +0 -1
  185. package/lib/cjs/index-vfzLCXfi.js +0 -774
  186. package/lib/cjs/index-vfzLCXfi.js.map +0 -1
  187. package/lib/cjs/index-von4W2LG.js +0 -356
  188. package/lib/cjs/index-von4W2LG.js.map +0 -1
  189. package/lib/cjs/index-zXSAHvAj.js +0 -1877
  190. package/lib/cjs/index-zXSAHvAj.js.map +0 -1
  191. package/lib/cjs/javascript-5-BTydbD.js +0 -928
  192. package/lib/cjs/javascript-5-BTydbD.js.map +0 -1
  193. package/lib/cjs/jinja2-BWMz4gPk.js +0 -174
  194. package/lib/cjs/jinja2-BWMz4gPk.js.map +0 -1
  195. package/lib/cjs/julia-dtR9J3KZ.js +0 -372
  196. package/lib/cjs/julia-dtR9J3KZ.js.map +0 -1
  197. package/lib/cjs/livescript-YxT0INe3.js +0 -262
  198. package/lib/cjs/livescript-YxT0INe3.js.map +0 -1
  199. package/lib/cjs/lua-h7_AXjy9.js +0 -140
  200. package/lib/cjs/lua-h7_AXjy9.js.map +0 -1
  201. package/lib/cjs/mathematica-Zc57fOr3.js +0 -156
  202. package/lib/cjs/mathematica-Zc57fOr3.js.map +0 -1
  203. package/lib/cjs/mbox-ltKsKgJd.js +0 -117
  204. package/lib/cjs/mbox-ltKsKgJd.js.map +0 -1
  205. package/lib/cjs/mirc-xTLeWqmy.js +0 -179
  206. package/lib/cjs/mirc-xTLeWqmy.js.map +0 -1
  207. package/lib/cjs/mllike-xukl-Kjp.js +0 -351
  208. package/lib/cjs/mllike-xukl-Kjp.js.map +0 -1
  209. package/lib/cjs/modelica-LsXtAawk.js +0 -195
  210. package/lib/cjs/modelica-LsXtAawk.js.map +0 -1
  211. package/lib/cjs/mscgen-9HooYIVW.js +0 -154
  212. package/lib/cjs/mscgen-9HooYIVW.js.map +0 -1
  213. package/lib/cjs/mumps-VXqGp84f.js +0 -132
  214. package/lib/cjs/mumps-VXqGp84f.js.map +0 -1
  215. package/lib/cjs/nginx-UrubUbn1.js +0 -166
  216. package/lib/cjs/nginx-UrubUbn1.js.map +0 -1
  217. package/lib/cjs/nsis-c2AYwqyy.js +0 -83
  218. package/lib/cjs/nsis-c2AYwqyy.js.map +0 -1
  219. package/lib/cjs/ntriples-N1nwiheD.js +0 -144
  220. package/lib/cjs/ntriples-N1nwiheD.js.map +0 -1
  221. package/lib/cjs/octave-ElonStfZ.js +0 -115
  222. package/lib/cjs/octave-ElonStfZ.js.map +0 -1
  223. package/lib/cjs/oz-7VQTnCfu.js +0 -238
  224. package/lib/cjs/oz-7VQTnCfu.js.map +0 -1
  225. package/lib/cjs/pascal-yq2Cb88Q.js +0 -127
  226. package/lib/cjs/pascal-yq2Cb88Q.js.map +0 -1
  227. package/lib/cjs/perl-hJq4byS9.js +0 -822
  228. package/lib/cjs/perl-hJq4byS9.js.map +0 -1
  229. package/lib/cjs/pig-2syuOlAa.js +0 -152
  230. package/lib/cjs/pig-2syuOlAa.js.map +0 -1
  231. package/lib/cjs/powershell-NDwxuSDg.js +0 -384
  232. package/lib/cjs/powershell-NDwxuSDg.js.map +0 -1
  233. package/lib/cjs/properties-wacODxDJ.js +0 -65
  234. package/lib/cjs/properties-wacODxDJ.js.map +0 -1
  235. package/lib/cjs/protobuf-zVHZwskk.js +0 -57
  236. package/lib/cjs/protobuf-zVHZwskk.js.map +0 -1
  237. package/lib/cjs/puppet-koQikqO-.js +0 -208
  238. package/lib/cjs/puppet-koQikqO-.js.map +0 -1
  239. package/lib/cjs/python-P3UsKHbj.js +0 -394
  240. package/lib/cjs/python-P3UsKHbj.js.map +0 -1
  241. package/lib/cjs/q-Z_d2uXoA.js +0 -126
  242. package/lib/cjs/q-Z_d2uXoA.js.map +0 -1
  243. package/lib/cjs/r-J6Jl9z1i.js +0 -177
  244. package/lib/cjs/r-J6Jl9z1i.js.map +0 -1
  245. package/lib/cjs/rpm-6C0Omumu.js +0 -93
  246. package/lib/cjs/rpm-6C0Omumu.js.map +0 -1
  247. package/lib/cjs/ruby-POVyUmsb.js +0 -290
  248. package/lib/cjs/ruby-POVyUmsb.js.map +0 -1
  249. package/lib/cjs/sas-vDtpSmFr.js +0 -271
  250. package/lib/cjs/sas-vDtpSmFr.js.map +0 -1
  251. package/lib/cjs/schema-RVrwDDcq.js +0 -74
  252. package/lib/cjs/schema-RVrwDDcq.js.map +0 -1
  253. package/lib/cjs/scheme-5AA5BH7S.js +0 -266
  254. package/lib/cjs/scheme-5AA5BH7S.js.map +0 -1
  255. package/lib/cjs/shell-_ztDMiW6.js +0 -148
  256. package/lib/cjs/shell-_ztDMiW6.js.map +0 -1
  257. package/lib/cjs/sieve-R_vzlbvH.js +0 -181
  258. package/lib/cjs/sieve-R_vzlbvH.js.map +0 -1
  259. package/lib/cjs/simple-mode-ZwmNbV0h.js +0 -138
  260. package/lib/cjs/simple-mode-ZwmNbV0h.js.map +0 -1
  261. package/lib/cjs/smalltalk-dWLp5zN8.js +0 -156
  262. package/lib/cjs/smalltalk-dWLp5zN8.js.map +0 -1
  263. package/lib/cjs/solr-wSmvjKI8.js +0 -83
  264. package/lib/cjs/solr-wSmvjKI8.js.map +0 -1
  265. package/lib/cjs/sparql-GNU_0xKB.js +0 -173
  266. package/lib/cjs/sparql-GNU_0xKB.js.map +0 -1
  267. package/lib/cjs/spreadsheet-BiqYLk6M.js +0 -101
  268. package/lib/cjs/spreadsheet-BiqYLk6M.js.map +0 -1
  269. package/lib/cjs/sql-9GpHBPsC.js +0 -497
  270. package/lib/cjs/sql-9GpHBPsC.js.map +0 -1
  271. package/lib/cjs/stex-1V41CNLk.js +0 -250
  272. package/lib/cjs/stex-1V41CNLk.js.map +0 -1
  273. package/lib/cjs/stylus-H6hn9z_G.js +0 -753
  274. package/lib/cjs/stylus-H6hn9z_G.js.map +0 -1
  275. package/lib/cjs/swift-Xv5f8zgN.js +0 -205
  276. package/lib/cjs/swift-Xv5f8zgN.js.map +0 -1
  277. package/lib/cjs/tcl-LI-LOw_t.js +0 -128
  278. package/lib/cjs/tcl-LI-LOw_t.js.map +0 -1
  279. package/lib/cjs/textile-3NvRPUgg.js +0 -444
  280. package/lib/cjs/textile-3NvRPUgg.js.map +0 -1
  281. package/lib/cjs/tiddlywiki-PkMzy8_R.js +0 -281
  282. package/lib/cjs/tiddlywiki-PkMzy8_R.js.map +0 -1
  283. package/lib/cjs/tiki-Zk_GnEC8.js +0 -292
  284. package/lib/cjs/tiki-Zk_GnEC8.js.map +0 -1
  285. package/lib/cjs/todoList-Ze4FLMlx.js.map +0 -1
  286. package/lib/cjs/toml-36gJ0YCq.js +0 -78
  287. package/lib/cjs/toml-36gJ0YCq.js.map +0 -1
  288. package/lib/cjs/tooltip-plugin--lhebztC.js +0 -191
  289. package/lib/cjs/tooltip-plugin--lhebztC.js.map +0 -1
  290. package/lib/cjs/troff-RLZ_o61o.js +0 -67
  291. package/lib/cjs/troff-RLZ_o61o.js.map +0 -1
  292. package/lib/cjs/ttcn-cfg-twaoJYvf.js +0 -204
  293. package/lib/cjs/ttcn-cfg-twaoJYvf.js.map +0 -1
  294. package/lib/cjs/ttcn-kGwvGb2v.js +0 -260
  295. package/lib/cjs/ttcn-kGwvGb2v.js.map +0 -1
  296. package/lib/cjs/turtle-nnevat7b.js +0 -144
  297. package/lib/cjs/turtle-nnevat7b.js.map +0 -1
  298. package/lib/cjs/vb-fO_I9s3s.js +0 -252
  299. package/lib/cjs/vb-fO_I9s3s.js.map +0 -1
  300. package/lib/cjs/vbscript-HXnn40y4.js +0 -324
  301. package/lib/cjs/vbscript-HXnn40y4.js.map +0 -1
  302. package/lib/cjs/velocity-Wn-ZfFzr.js +0 -189
  303. package/lib/cjs/velocity-Wn-ZfFzr.js.map +0 -1
  304. package/lib/cjs/verilog-y1ev34z6.js +0 -569
  305. package/lib/cjs/verilog-y1ev34z6.js.map +0 -1
  306. package/lib/cjs/vhdl-LF0oeXxc.js +0 -177
  307. package/lib/cjs/vhdl-LF0oeXxc.js.map +0 -1
  308. package/lib/cjs/webidl-6kI5KbeC.js +0 -182
  309. package/lib/cjs/webidl-6kI5KbeC.js.map +0 -1
  310. package/lib/cjs/xquery-BavrmwsO.js +0 -428
  311. package/lib/cjs/xquery-BavrmwsO.js.map +0 -1
  312. package/lib/cjs/yacas-1g_AbTrl.js +0 -185
  313. package/lib/cjs/yacas-1g_AbTrl.js.map +0 -1
  314. package/lib/cjs/z80-QYzKAAp7.js +0 -106
  315. package/lib/cjs/z80-QYzKAAp7.js.map +0 -1
  316. package/lib/esm/_view-IlZC8FA6.js +0 -25
  317. package/lib/esm/_view-IlZC8FA6.js.map +0 -1
  318. package/lib/esm/apl-eHQxyJFn.js +0 -143
  319. package/lib/esm/apl-eHQxyJFn.js.map +0 -1
  320. package/lib/esm/asciiarmor-Z-IGYCI4.js +0 -57
  321. package/lib/esm/asciiarmor-Z-IGYCI4.js.map +0 -1
  322. package/lib/esm/asn1-gF7x-q1y.js +0 -193
  323. package/lib/esm/asn1-gF7x-q1y.js.map +0 -1
  324. package/lib/esm/asterisk-swk20ftp.js +0 -188
  325. package/lib/esm/asterisk-swk20ftp.js.map +0 -1
  326. package/lib/esm/brainfuck-IFQdiQoR.js +0 -71
  327. package/lib/esm/brainfuck-IFQdiQoR.js.map +0 -1
  328. package/lib/esm/clike-q3hUF2Cx.js +0 -1019
  329. package/lib/esm/clike-q3hUF2Cx.js.map +0 -1
  330. package/lib/esm/clojure-I2Krbr2M.js +0 -275
  331. package/lib/esm/clojure-I2Krbr2M.js.map +0 -1
  332. package/lib/esm/clsx-RxCLxYpD.js +0 -4
  333. package/lib/esm/clsx-RxCLxYpD.js.map +0 -1
  334. package/lib/esm/cmake-ewwXLeuZ.js +0 -82
  335. package/lib/esm/cmake-ewwXLeuZ.js.map +0 -1
  336. package/lib/esm/cobol-fpN1nAnR.js +0 -236
  337. package/lib/esm/cobol-fpN1nAnR.js.map +0 -1
  338. package/lib/esm/coffeescript--eTFR-bH.js +0 -330
  339. package/lib/esm/coffeescript--eTFR-bH.js.map +0 -1
  340. package/lib/esm/commonlisp-XLSwVdLc.js +0 -109
  341. package/lib/esm/commonlisp-XLSwVdLc.js.map +0 -1
  342. package/lib/esm/crystal-_r3Aa1_a.js +0 -420
  343. package/lib/esm/crystal-_r3Aa1_a.js.map +0 -1
  344. package/lib/esm/css-hgwYGMKZ.js +0 -848
  345. package/lib/esm/css-hgwYGMKZ.js.map +0 -1
  346. package/lib/esm/cypher-bbJyAa-4.js +0 -123
  347. package/lib/esm/cypher-bbJyAa-4.js.map +0 -1
  348. package/lib/esm/d-5MyulviS.js +0 -206
  349. package/lib/esm/d-5MyulviS.js.map +0 -1
  350. package/lib/esm/diff-neOaT_vk.js +0 -31
  351. package/lib/esm/diff-neOaT_vk.js.map +0 -1
  352. package/lib/esm/dockerfile-lzx42-zz.js +0 -200
  353. package/lib/esm/dockerfile-lzx42-zz.js.map +0 -1
  354. package/lib/esm/dtd-FmzPLZcQ.js +0 -122
  355. package/lib/esm/dtd-FmzPLZcQ.js.map +0 -1
  356. package/lib/esm/dylan-1HtRK4GO.js +0 -338
  357. package/lib/esm/dylan-1HtRK4GO.js.map +0 -1
  358. package/lib/esm/ebnf-Nz-pnLHy.js +0 -152
  359. package/lib/esm/ebnf-Nz-pnLHy.js.map +0 -1
  360. package/lib/esm/ecl-lQsZhQz0.js +0 -191
  361. package/lib/esm/ecl-lQsZhQz0.js.map +0 -1
  362. package/lib/esm/eiffel-R_HiEkhx.js +0 -147
  363. package/lib/esm/eiffel-R_HiEkhx.js.map +0 -1
  364. package/lib/esm/elm-KYv4VTDg.js +0 -231
  365. package/lib/esm/elm-KYv4VTDg.js.map +0 -1
  366. package/lib/esm/erlang-7YaHCBIe.js +0 -582
  367. package/lib/esm/erlang-7YaHCBIe.js.map +0 -1
  368. package/lib/esm/factor-opBU9aTK.js +0 -66
  369. package/lib/esm/factor-opBU9aTK.js.map +0 -1
  370. package/lib/esm/fcl-jm31FmFz.js +0 -155
  371. package/lib/esm/fcl-jm31FmFz.js.map +0 -1
  372. package/lib/esm/floating-ui.dom-CAYjY8Gv.js +0 -1130
  373. package/lib/esm/floating-ui.dom-CAYjY8Gv.js.map +0 -1
  374. package/lib/esm/forth-5NKbjnWh.js +0 -165
  375. package/lib/esm/forth-5NKbjnWh.js.map +0 -1
  376. package/lib/esm/fortran-dXm_-cb9.js +0 -173
  377. package/lib/esm/fortran-dXm_-cb9.js.map +0 -1
  378. package/lib/esm/gas-nsYVnsy-.js +0 -344
  379. package/lib/esm/gas-nsYVnsy-.js.map +0 -1
  380. package/lib/esm/gherkin-fzKpjm3M.js +0 -148
  381. package/lib/esm/gherkin-fzKpjm3M.js.map +0 -1
  382. package/lib/esm/go-Pn1qh7yl.js +0 -165
  383. package/lib/esm/go-Pn1qh7yl.js.map +0 -1
  384. package/lib/esm/groovy-DZY-8keZ.js +0 -231
  385. package/lib/esm/groovy-DZY-8keZ.js.map +0 -1
  386. package/lib/esm/haskell-JGh2upDd.js +0 -240
  387. package/lib/esm/haskell-JGh2upDd.js.map +0 -1
  388. package/lib/esm/haxe-1hvVK-Fy.js +0 -491
  389. package/lib/esm/haxe-1hvVK-Fy.js.map +0 -1
  390. package/lib/esm/helper-wZAtC67x.js +0 -13
  391. package/lib/esm/helper-wZAtC67x.js.map +0 -1
  392. package/lib/esm/http-mY1M77wn.js +0 -90
  393. package/lib/esm/http-mY1M77wn.js.map +0 -1
  394. package/lib/esm/idl-dy_653wH.js +0 -275
  395. package/lib/esm/idl-dy_653wH.js.map +0 -1
  396. package/lib/esm/index-0-j8Icms.js +0 -384
  397. package/lib/esm/index-0-j8Icms.js.map +0 -1
  398. package/lib/esm/index-1l-61HI-.js +0 -358
  399. package/lib/esm/index-1l-61HI-.js.map +0 -1
  400. package/lib/esm/index-3HeWs5rX.js +0 -440
  401. package/lib/esm/index-3HeWs5rX.js.map +0 -1
  402. package/lib/esm/index-3bDzhU6z.js +0 -759
  403. package/lib/esm/index-3bDzhU6z.js.map +0 -1
  404. package/lib/esm/index-6GrVnloh.js +0 -1027
  405. package/lib/esm/index-6GrVnloh.js.map +0 -1
  406. package/lib/esm/index-8QJbxTYk.js +0 -1145
  407. package/lib/esm/index-8QJbxTYk.js.map +0 -1
  408. package/lib/esm/index-9w_hdnvb.js +0 -532
  409. package/lib/esm/index-9w_hdnvb.js.map +0 -1
  410. package/lib/esm/index-AOoFzBaK.js +0 -53
  411. package/lib/esm/index-AOoFzBaK.js.map +0 -1
  412. package/lib/esm/index-DS7Z4Ach.js +0 -686
  413. package/lib/esm/index-DS7Z4Ach.js.map +0 -1
  414. package/lib/esm/index-LAdX6LsO.js +0 -33805
  415. package/lib/esm/index-LAdX6LsO.js.map +0 -1
  416. package/lib/esm/index-MxgqkRtj.js +0 -125
  417. package/lib/esm/index-MxgqkRtj.js.map +0 -1
  418. package/lib/esm/index-NZ5-xr5_.js +0 -351
  419. package/lib/esm/index-NZ5-xr5_.js.map +0 -1
  420. package/lib/esm/index-OpUb5xP6.js +0 -1872
  421. package/lib/esm/index-OpUb5xP6.js.map +0 -1
  422. package/lib/esm/index-SDPCpsD5.js +0 -461
  423. package/lib/esm/index-SDPCpsD5.js.map +0 -1
  424. package/lib/esm/index-VP76m4nW.js +0 -157
  425. package/lib/esm/index-VP76m4nW.js.map +0 -1
  426. package/lib/esm/index-Vl0W0S3h.js +0 -259
  427. package/lib/esm/index-Vl0W0S3h.js.map +0 -1
  428. package/lib/esm/index-VoX_n1l_.js +0 -1038
  429. package/lib/esm/index-VoX_n1l_.js.map +0 -1
  430. package/lib/esm/index-XH7OnwZl.js +0 -527
  431. package/lib/esm/index-XH7OnwZl.js.map +0 -1
  432. package/lib/esm/index-Yuj7sNhQ.js +0 -105
  433. package/lib/esm/index-Yuj7sNhQ.js.map +0 -1
  434. package/lib/esm/index-_4fWmRbN.js +0 -206
  435. package/lib/esm/index-_4fWmRbN.js.map +0 -1
  436. package/lib/esm/index-bexsWrgs.js +0 -153
  437. package/lib/esm/index-bexsWrgs.js.map +0 -1
  438. package/lib/esm/index-chrnjY1D.js +0 -470
  439. package/lib/esm/index-chrnjY1D.js.map +0 -1
  440. package/lib/esm/index-eqd5wtjX.js +0 -393
  441. package/lib/esm/index-eqd5wtjX.js.map +0 -1
  442. package/lib/esm/index-g_3dzLYU.js +0 -200
  443. package/lib/esm/index-g_3dzLYU.js.map +0 -1
  444. package/lib/esm/index-grT-Kuf2.js +0 -78
  445. package/lib/esm/index-grT-Kuf2.js.map +0 -1
  446. package/lib/esm/index-hF04phbf.js +0 -189
  447. package/lib/esm/index-hF04phbf.js.map +0 -1
  448. package/lib/esm/index-i79QMXpJ.js +0 -25654
  449. package/lib/esm/index-i79QMXpJ.js.map +0 -1
  450. package/lib/esm/index-rvOBAXap.js +0 -2512
  451. package/lib/esm/index-rvOBAXap.js.map +0 -1
  452. package/lib/esm/index-uP9BKsTM.js +0 -446
  453. package/lib/esm/index-uP9BKsTM.js.map +0 -1
  454. package/lib/esm/index-ueQQMSgm.js +0 -1351
  455. package/lib/esm/index-ueQQMSgm.js.map +0 -1
  456. package/lib/esm/index-x8SyiPMC.js +0 -401
  457. package/lib/esm/index-x8SyiPMC.js.map +0 -1
  458. package/lib/esm/index-zrQXXSXm.js +0 -115
  459. package/lib/esm/index-zrQXXSXm.js.map +0 -1
  460. package/lib/esm/javascript-TMTz-YQH.js +0 -923
  461. package/lib/esm/javascript-TMTz-YQH.js.map +0 -1
  462. package/lib/esm/jinja2-sRIdliZK.js +0 -172
  463. package/lib/esm/jinja2-sRIdliZK.js.map +0 -1
  464. package/lib/esm/julia-fK0wmpGL.js +0 -370
  465. package/lib/esm/julia-fK0wmpGL.js.map +0 -1
  466. package/lib/esm/livescript-FRbAot3D.js +0 -260
  467. package/lib/esm/livescript-FRbAot3D.js.map +0 -1
  468. package/lib/esm/lua-t4FHEjvK.js +0 -138
  469. package/lib/esm/lua-t4FHEjvK.js.map +0 -1
  470. package/lib/esm/mathematica-sn_KGlYj.js +0 -154
  471. package/lib/esm/mathematica-sn_KGlYj.js.map +0 -1
  472. package/lib/esm/mbox-KvVC319E.js +0 -115
  473. package/lib/esm/mbox-KvVC319E.js.map +0 -1
  474. package/lib/esm/mirc-PzJ0zKSk.js +0 -177
  475. package/lib/esm/mirc-PzJ0zKSk.js.map +0 -1
  476. package/lib/esm/mllike-ZK411xkN.js +0 -347
  477. package/lib/esm/mllike-ZK411xkN.js.map +0 -1
  478. package/lib/esm/modelica-ZaHlRCbp.js +0 -193
  479. package/lib/esm/modelica-ZaHlRCbp.js.map +0 -1
  480. package/lib/esm/mscgen-Kkq4o4Zm.js +0 -150
  481. package/lib/esm/mscgen-Kkq4o4Zm.js.map +0 -1
  482. package/lib/esm/mumps-M8a87-rl.js +0 -130
  483. package/lib/esm/mumps-M8a87-rl.js.map +0 -1
  484. package/lib/esm/nginx-2LJIX23E.js +0 -164
  485. package/lib/esm/nginx-2LJIX23E.js.map +0 -1
  486. package/lib/esm/nsis-zvfFgMLi.js +0 -81
  487. package/lib/esm/nsis-zvfFgMLi.js.map +0 -1
  488. package/lib/esm/ntriples-tVkHy5bk.js +0 -142
  489. package/lib/esm/ntriples-tVkHy5bk.js.map +0 -1
  490. package/lib/esm/octave-mE4T5MF5.js +0 -113
  491. package/lib/esm/octave-mE4T5MF5.js.map +0 -1
  492. package/lib/esm/oz-q-LCsuVg.js +0 -236
  493. package/lib/esm/oz-q-LCsuVg.js.map +0 -1
  494. package/lib/esm/pascal-0IgUAn4C.js +0 -125
  495. package/lib/esm/pascal-0IgUAn4C.js.map +0 -1
  496. package/lib/esm/perl-AqxdYGac.js +0 -820
  497. package/lib/esm/perl-AqxdYGac.js.map +0 -1
  498. package/lib/esm/pig-ESM-IjQj.js +0 -150
  499. package/lib/esm/pig-ESM-IjQj.js.map +0 -1
  500. package/lib/esm/powershell-CLFP0L55.js +0 -382
  501. package/lib/esm/powershell-CLFP0L55.js.map +0 -1
  502. package/lib/esm/properties-oWHNzvb9.js +0 -63
  503. package/lib/esm/properties-oWHNzvb9.js.map +0 -1
  504. package/lib/esm/protobuf-c7eMmdcc.js +0 -55
  505. package/lib/esm/protobuf-c7eMmdcc.js.map +0 -1
  506. package/lib/esm/puppet-FjzvdRJr.js +0 -206
  507. package/lib/esm/puppet-FjzvdRJr.js.map +0 -1
  508. package/lib/esm/python-3Pv0tnvt.js +0 -390
  509. package/lib/esm/python-3Pv0tnvt.js.map +0 -1
  510. package/lib/esm/q-IImW8da6.js +0 -124
  511. package/lib/esm/q-IImW8da6.js.map +0 -1
  512. package/lib/esm/r-CnEkTvR0.js +0 -175
  513. package/lib/esm/r-CnEkTvR0.js.map +0 -1
  514. package/lib/esm/rpm-Q55-fEHj.js +0 -90
  515. package/lib/esm/rpm-Q55-fEHj.js.map +0 -1
  516. package/lib/esm/ruby-zhaGB3Kh.js +0 -288
  517. package/lib/esm/ruby-zhaGB3Kh.js.map +0 -1
  518. package/lib/esm/sas-Ur9jZIOV.js +0 -269
  519. package/lib/esm/sas-Ur9jZIOV.js.map +0 -1
  520. package/lib/esm/schema-JWJqD9qa.js +0 -71
  521. package/lib/esm/schema-JWJqD9qa.js.map +0 -1
  522. package/lib/esm/scheme-daT5-Rya.js +0 -264
  523. package/lib/esm/scheme-daT5-Rya.js.map +0 -1
  524. package/lib/esm/shell-cwFL0AYP.js +0 -146
  525. package/lib/esm/shell-cwFL0AYP.js.map +0 -1
  526. package/lib/esm/sieve-MlNXFFUq.js +0 -179
  527. package/lib/esm/sieve-MlNXFFUq.js.map +0 -1
  528. package/lib/esm/simple-mode-m1rsX7Gw.js +0 -136
  529. package/lib/esm/simple-mode-m1rsX7Gw.js.map +0 -1
  530. package/lib/esm/smalltalk-xrQICp9e.js +0 -154
  531. package/lib/esm/smalltalk-xrQICp9e.js.map +0 -1
  532. package/lib/esm/solr-PU3oPgQz.js +0 -81
  533. package/lib/esm/solr-PU3oPgQz.js.map +0 -1
  534. package/lib/esm/sparql--u8NRBii.js +0 -171
  535. package/lib/esm/sparql--u8NRBii.js.map +0 -1
  536. package/lib/esm/spreadsheet-QCp0LifX.js +0 -99
  537. package/lib/esm/spreadsheet-QCp0LifX.js.map +0 -1
  538. package/lib/esm/sql-dsGfl64h.js +0 -482
  539. package/lib/esm/sql-dsGfl64h.js.map +0 -1
  540. package/lib/esm/stex-WcLBzvkD.js +0 -247
  541. package/lib/esm/stex-WcLBzvkD.js.map +0 -1
  542. package/lib/esm/stylus--A5XAqOX.js +0 -751
  543. package/lib/esm/stylus--A5XAqOX.js.map +0 -1
  544. package/lib/esm/swift-qAm73i7G.js +0 -203
  545. package/lib/esm/swift-qAm73i7G.js.map +0 -1
  546. package/lib/esm/tcl-Kdc7qxc-.js +0 -126
  547. package/lib/esm/tcl-Kdc7qxc-.js.map +0 -1
  548. package/lib/esm/textile--sz8UrIz.js +0 -442
  549. package/lib/esm/textile--sz8UrIz.js.map +0 -1
  550. package/lib/esm/tiddlywiki-xNXTeBlQ.js +0 -279
  551. package/lib/esm/tiddlywiki-xNXTeBlQ.js.map +0 -1
  552. package/lib/esm/tiki-LCXjrNH3.js +0 -290
  553. package/lib/esm/tiki-LCXjrNH3.js.map +0 -1
  554. package/lib/esm/todoList-M-PGJKde.js.map +0 -1
  555. package/lib/esm/toml-Ac4tlBMn.js +0 -76
  556. package/lib/esm/toml-Ac4tlBMn.js.map +0 -1
  557. package/lib/esm/tooltip-plugin-iw2EQWIG.js +0 -185
  558. package/lib/esm/tooltip-plugin-iw2EQWIG.js.map +0 -1
  559. package/lib/esm/troff-LLW1x1Yz.js +0 -65
  560. package/lib/esm/troff-LLW1x1Yz.js.map +0 -1
  561. package/lib/esm/ttcn-ZYZ9FS3u.js +0 -258
  562. package/lib/esm/ttcn-ZYZ9FS3u.js.map +0 -1
  563. package/lib/esm/ttcn-cfg-qsvf3MfB.js +0 -202
  564. package/lib/esm/ttcn-cfg-qsvf3MfB.js.map +0 -1
  565. package/lib/esm/turtle-wq3TqOth.js +0 -142
  566. package/lib/esm/turtle-wq3TqOth.js.map +0 -1
  567. package/lib/esm/vb-86M_JuNP.js +0 -250
  568. package/lib/esm/vb-86M_JuNP.js.map +0 -1
  569. package/lib/esm/vbscript-GueAeVug.js +0 -321
  570. package/lib/esm/vbscript-GueAeVug.js.map +0 -1
  571. package/lib/esm/velocity-7PW9GXO2.js +0 -187
  572. package/lib/esm/velocity-7PW9GXO2.js.map +0 -1
  573. package/lib/esm/verilog-PXtXH14C.js +0 -566
  574. package/lib/esm/verilog-PXtXH14C.js.map +0 -1
  575. package/lib/esm/vhdl-I8eyK83X.js +0 -175
  576. package/lib/esm/vhdl-I8eyK83X.js.map +0 -1
  577. package/lib/esm/webidl-1f8ATJ66.js +0 -180
  578. package/lib/esm/webidl-1f8ATJ66.js.map +0 -1
  579. package/lib/esm/xquery-IYp28Wx6.js +0 -426
  580. package/lib/esm/xquery-IYp28Wx6.js.map +0 -1
  581. package/lib/esm/yacas-wkENB05f.js +0 -183
  582. package/lib/esm/yacas-wkENB05f.js.map +0 -1
  583. package/lib/esm/z80-GaXiLdiV.js +0 -103
  584. package/lib/esm/z80-GaXiLdiV.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-ocxd4A-M.js","sources":["../../src/feature/block-edit/menu/utils.ts","../../src/feature/block-edit/menu/group-builder.ts","../../src/feature/block-edit/menu/config.ts","../../src/feature/block-edit/menu/component.ts","../../src/feature/block-edit/menu/index.ts","../../src/feature/block-edit/handle/component.ts","../../src/feature/block-edit/handle/index.ts","../../src/feature/block-edit/index.ts"],"sourcesContent":["import type { html } from 'atomico'\nimport type { Ctx } from '@milkdown/kit/ctx'\nimport type { Command, Transaction } from '@milkdown/kit/prose/state'\nimport type { Attrs, NodeType } from '@milkdown/kit/prose/model'\nimport { findWrapping } from '@milkdown/kit/prose/transform'\n\nexport interface MenuItem {\n index: number\n key: string\n label: string\n icon: ReturnType<typeof html>\n onRun: (ctx: Ctx) => void\n}\n\ntype WithRange<T, HasIndex extends true | false = true> = HasIndex extends true ? T & { range: [start: number, end: number] } : T\n\nexport type MenuItemGroup<HasIndex extends true | false = true> = WithRange<{\n key: string\n label: string\n items: HasIndex extends true ? MenuItem[] : Omit<MenuItem, 'index'>[]\n}, HasIndex>\n\nexport function clearRange(tr: Transaction) {\n const { $from, $to } = tr.selection\n const { pos: from } = $from\n const { pos: to } = $to\n tr = tr.deleteRange(from - $from.node().content.size, to)\n return tr\n}\n\nexport function setBlockType(tr: Transaction, nodeType: NodeType, attrs: Attrs | null = null) {\n const { from, to } = tr.selection\n return tr.setBlockType(from, to, nodeType, attrs)\n}\n\nexport function wrapInBlockType(tr: Transaction, nodeType: NodeType, attrs: Attrs | null = null) {\n const { $from, $to } = tr.selection\n\n const range = $from.blockRange($to)\n const wrapping = range && findWrapping(range, nodeType, attrs)\n if (!wrapping)\n return null\n\n return tr.wrap(range, wrapping)\n}\n\nexport function addBlockType(tr: Transaction, nodeType: NodeType, attrs: Attrs | null = null) {\n const node = nodeType.createAndFill(attrs)\n if (!node)\n return null\n\n return tr.replaceSelectionWith(node)\n}\n\nexport function clearContentAndSetBlockType(nodeType: NodeType, attrs: Attrs | null = null): Command {\n return (state, dispatch) => {\n if (dispatch) {\n const tr = setBlockType(clearRange(state.tr), nodeType, attrs)\n dispatch(tr.scrollIntoView())\n }\n return true\n }\n}\n\nexport function clearContentAndWrapInBlockType(nodeType: NodeType, attrs: Attrs | null = null): Command {\n return (state, dispatch) => {\n const tr = wrapInBlockType(clearRange(state.tr), nodeType, attrs)\n if (!tr)\n return false\n\n if (dispatch)\n dispatch(tr.scrollIntoView())\n\n return true\n }\n}\n\nexport function clearContentAndAddBlockType(nodeType: NodeType, attrs: Attrs | null = null): Command {\n return (state, dispatch) => {\n const tr = addBlockType(clearRange(state.tr), nodeType, attrs)\n if (!tr)\n return false\n\n if (dispatch)\n dispatch(tr.scrollIntoView())\n\n return true\n }\n}\n","import type { MenuItem, MenuItemGroup } from './utils'\n\nexport class GroupBuilder {\n #groups: MenuItemGroup<false>[] = []\n\n clear = () => {\n this.#groups = []\n return this\n }\n\n #getGroupInstance = (group: MenuItemGroup<false>) => {\n const groupInstance = {\n group,\n addItem: (key: string, item: Omit<MenuItem, 'key' | 'index'>) => {\n const data = { key, ...item }\n group.items.push(data)\n return groupInstance\n },\n clear: () => {\n group.items = []\n return groupInstance\n },\n }\n return groupInstance\n }\n\n addGroup = (key: string, label: string) => {\n const items: Omit<MenuItem, 'index'>[] = []\n const group: MenuItemGroup<false> = {\n key,\n label,\n items,\n }\n this.#groups.push(group)\n\n return this.#getGroupInstance(group)\n }\n\n getGroup = (key: string) => {\n const group = this.#groups.find(group => group.key === key)\n if (!group)\n throw new Error(`Group with key ${key} not found`)\n\n return this.#getGroupInstance(group)\n }\n\n build = () => {\n return this.#groups\n }\n}\n","import { editorViewCtx } from '@milkdown/kit/core'\nimport {\n blockquoteSchema,\n bulletListSchema,\n codeBlockSchema,\n headingSchema,\n hrSchema,\n listItemSchema,\n orderedListSchema,\n paragraphSchema,\n} from '@milkdown/kit/preset/commonmark'\nimport { NodeSelection } from '@milkdown/kit/prose/state'\nimport { imageBlockSchema } from '@milkdown/kit/component/image-block'\nimport { createTable } from '@milkdown/kit/preset/gfm'\nimport {\n bulletListIcon,\n codeIcon,\n dividerIcon,\n h1Icon,\n h2Icon,\n h3Icon,\n h4Icon,\n h5Icon,\n h6Icon,\n imageIcon,\n orderedListIcon,\n quoteIcon,\n tableIcon,\n textIcon,\n todoListIcon,\n} from '../../../icons'\nimport type { BlockEditFeatureConfig } from '../index'\nimport type { MenuItemGroup } from './utils'\nimport {\n clearContentAndAddBlockType,\n clearContentAndSetBlockType,\n clearContentAndWrapInBlockType,\n clearRange,\n} from './utils'\nimport { GroupBuilder } from './group-builder'\n\nexport function getGroups(filter?: string, config?: BlockEditFeatureConfig) {\n const groupBuilder = new GroupBuilder()\n groupBuilder\n .addGroup('text', config?.slashMenuTextGroupLabel ?? 'Text')\n .addItem('text', {\n label: config?.slashMenuTextGroupLabel ?? 'Text',\n icon: config?.slashMenuTextIcon?.() ?? textIcon,\n onRun: (ctx) => {\n const view = ctx.get(editorViewCtx)\n const { dispatch, state } = view\n\n const command = clearContentAndSetBlockType(paragraphSchema.type(ctx))\n command(state, dispatch)\n },\n })\n .addItem('h1', {\n label: config?.slashMenuH1Label ?? 'Heading 1',\n icon: config?.slashMenuH1Icon?.() ?? h1Icon,\n onRun: (ctx) => {\n const view = ctx.get(editorViewCtx)\n const { dispatch, state } = view\n\n const command = clearContentAndSetBlockType(headingSchema.type(ctx), { level: 1 })\n command(state, dispatch)\n },\n })\n .addItem('h2', {\n label: config?.slashMenuH2Label ?? 'Heading 2',\n icon: config?.slashMenuH2Icon?.() ?? h2Icon,\n onRun: (ctx) => {\n const view = ctx.get(editorViewCtx)\n const { dispatch, state } = view\n\n const command = clearContentAndSetBlockType(headingSchema.type(ctx), { level: 2 })\n command(state, dispatch)\n },\n })\n .addItem('h3', {\n label: config?.slashMenuH3Label ?? 'Heading 3',\n icon: config?.slashMenuH3Icon?.() ?? h3Icon,\n onRun: (ctx) => {\n const view = ctx.get(editorViewCtx)\n const { dispatch, state } = view\n\n const command = clearContentAndSetBlockType(headingSchema.type(ctx), { level: 3 })\n command(state, dispatch)\n },\n })\n .addItem('h4', {\n label: config?.slashMenuH4Label ?? 'Heading 4',\n icon: config?.slashMenuH4Icon?.() ?? h4Icon,\n onRun: (ctx) => {\n const view = ctx.get(editorViewCtx)\n const { dispatch, state } = view\n\n const command = clearContentAndSetBlockType(headingSchema.type(ctx), { level: 4 })\n command(state, dispatch)\n },\n })\n .addItem('h5', {\n label: config?.slashMenuH5Label ?? 'Heading 5',\n icon: config?.slashMenuH5Icon?.() ?? h5Icon,\n onRun: (ctx) => {\n const view = ctx.get(editorViewCtx)\n const { dispatch, state } = view\n\n const command = clearContentAndSetBlockType(headingSchema.type(ctx), { level: 5 })\n command(state, dispatch)\n },\n })\n .addItem('h6', {\n label: config?.slashMenuH6Label ?? 'Heading 6',\n icon: config?.slashMenuH6Icon?.() ?? h6Icon,\n onRun: (ctx) => {\n const view = ctx.get(editorViewCtx)\n const { dispatch, state } = view\n\n const command = clearContentAndSetBlockType(headingSchema.type(ctx), { level: 6 })\n command(state, dispatch)\n },\n })\n .addItem('quote', {\n label: config?.slashMenuQuoteLabel ?? 'Quote',\n icon: config?.slashMenuQuoteIcon?.() ?? quoteIcon,\n onRun: (ctx) => {\n const view = ctx.get(editorViewCtx)\n const { dispatch, state } = view\n\n const command = clearContentAndWrapInBlockType(blockquoteSchema.type(ctx))\n command(state, dispatch)\n },\n })\n .addItem('divider', {\n label: config?.slashMenuDividerLabel ?? 'Divider',\n icon: config?.slashMenuDividerIcon?.() ?? dividerIcon,\n onRun: (ctx) => {\n const view = ctx.get(editorViewCtx)\n const { dispatch, state } = view\n\n const command = clearContentAndAddBlockType(hrSchema.type(ctx))\n command(state, dispatch)\n },\n })\n\n groupBuilder.addGroup('list', config?.slashMenuListGroupLabel ?? 'List')\n .addItem('bullet-list', {\n label: config?.slashMenuBulletListLabel ?? 'Bullet List',\n icon: config?.slashMenuBulletListIcon?.() ?? bulletListIcon,\n onRun: (ctx) => {\n const view = ctx.get(editorViewCtx)\n const { dispatch, state } = view\n\n const command = clearContentAndWrapInBlockType(bulletListSchema.type(ctx))\n command(state, dispatch)\n },\n })\n .addItem('ordered-list', {\n label: config?.slashMenuOrderedListLabel ?? 'Ordered List',\n icon: config?.slashMenuOrderedListIcon?.() ?? orderedListIcon,\n onRun: (ctx) => {\n const view = ctx.get(editorViewCtx)\n const { dispatch, state } = view\n\n const command = clearContentAndWrapInBlockType(orderedListSchema.type(ctx))\n command(state, dispatch)\n },\n })\n .addItem('todo-list', {\n label: config?.slashMenuTaskListLabel ?? 'Todo List',\n icon: config?.slashMenuTaskListIcon?.() ?? todoListIcon,\n onRun: (ctx) => {\n const view = ctx.get(editorViewCtx)\n const { dispatch, state } = view\n\n const command = clearContentAndWrapInBlockType(listItemSchema.type(ctx), { checked: false })\n command(state, dispatch)\n },\n })\n\n groupBuilder.addGroup('advanced', config?.slashMenuAdvancedGroupLabel ?? 'Advanced')\n .addItem('image', {\n label: config?.slashMenuImageLabel ?? 'Image',\n icon: config?.slashMenuImageIcon?.() ?? imageIcon,\n onRun: (ctx) => {\n const view = ctx.get(editorViewCtx)\n const { dispatch, state } = view\n\n const command = clearContentAndAddBlockType(imageBlockSchema.type(ctx))\n command(state, dispatch)\n },\n })\n .addItem('code', {\n label: config?.slashMenuCodeBlockLabel ?? 'Code',\n icon: config?.slashMenuCodeBlockIcon?.() ?? codeIcon,\n onRun: (ctx) => {\n const view = ctx.get(editorViewCtx)\n const { dispatch, state } = view\n\n const command = clearContentAndAddBlockType(codeBlockSchema.type(ctx))\n command(state, dispatch)\n },\n })\n .addItem('table', {\n label: config?.slashMenuTableLabel ?? 'Table',\n icon: config?.slashMenuTableIcon?.() ?? tableIcon,\n onRun: (ctx) => {\n const view = ctx.get(editorViewCtx)\n const { dispatch, state } = view\n const tr = clearRange(state.tr)\n const table = createTable(ctx, 3, 3)\n tr.replaceSelectionWith(table)\n const { from } = tr.selection\n const pos = from - table.nodeSize + 2\n dispatch(tr)\n requestAnimationFrame(() => {\n const selection = NodeSelection.create(view.state.tr.doc, pos)\n dispatch(view.state.tr.setSelection(selection).scrollIntoView())\n })\n },\n })\n\n config?.buildMenu?.(groupBuilder)\n\n let groups = groupBuilder.build()\n\n if (filter) {\n groups = groups\n .map((group) => {\n const items = group\n .items\n .filter(item =>\n item\n .label\n .toLowerCase()\n .includes(filter.toLowerCase()))\n\n return {\n ...group,\n items,\n }\n })\n .filter(group => group.items.length > 0)\n }\n\n const items = groups.flatMap(groups => groups.items)\n items.forEach(((item, index) => {\n Object.assign(item, { index })\n }))\n\n groups.reduce((acc, group) => {\n const end = acc + group.items.length\n Object.assign(group, {\n range: [acc, end],\n })\n return end\n }, 0)\n\n return {\n groups: groups as MenuItemGroup[],\n size: items.length,\n }\n}\n","import type { Component } from 'atomico'\nimport { c, html, useCallback, useEffect, useHost, useMemo, useRef, useState } from 'atomico'\nimport type { Ctx } from '@milkdown/kit/ctx'\nimport type { BlockEditFeatureConfig } from '../index'\nimport { getGroups } from './config'\n\nexport interface MenuProps {\n ctx: Ctx\n show: boolean\n filter: string\n hide: () => void\n config?: BlockEditFeatureConfig\n}\n\nexport const menuComponent: Component<MenuProps> = ({\n show,\n hide,\n ctx,\n filter,\n config,\n}) => {\n const { groups, size } = useMemo(() => getGroups(filter, config), [filter])\n\n const host = useHost()\n const [hoverIndex, setHoverIndex] = useState(0)\n\n const root = useMemo(() => host.current.getRootNode() as HTMLElement, [host])\n\n const prevMousePosition = useRef({ x: -999, y: -999 })\n\n const onMouseMove = useCallback((e: MouseEvent) => {\n const prevPos = prevMousePosition.current\n if (!prevPos)\n return\n\n const { x, y } = e\n prevPos.x = x\n prevPos.y = y\n }, [])\n\n useEffect(() => {\n if (size === 0 && show)\n hide?.()\n }, [size, show])\n\n const onHover = useCallback((\n index: number | ((prev: number) => number),\n after?: (index: number) => void,\n ) => {\n setHoverIndex((prev) => {\n const next = typeof index === 'function' ? index(prev) : index\n\n after?.(next)\n return next\n })\n }, [])\n\n const scrollToIndex = useCallback((index: number) => {\n const target = host\n .current\n .querySelector<HTMLElement>(`[data-index=\"${index}\"]`)\n const scrollRoot = host.current.querySelector<HTMLElement>('.menu-groups')\n\n if (!target || !scrollRoot)\n return\n\n scrollRoot.scrollTop = target.offsetTop - scrollRoot.offsetTop\n }, [])\n\n const runByIndex = useCallback((index: number) => {\n const item = groups.flatMap(group => group.items).at(index)\n if (item && ctx)\n item.onRun(ctx)\n\n hide?.()\n }, [groups])\n\n const onKeydown = useCallback((e: KeyboardEvent) => {\n if (e.key === 'Escape') {\n e.preventDefault()\n hide?.()\n return\n }\n\n if (e.key === 'ArrowDown') {\n e.preventDefault()\n return onHover(index => (index < size - 1) ? index + 1 : index, scrollToIndex)\n }\n\n if (e.key === 'ArrowUp') {\n e.preventDefault()\n return onHover(index => index <= 0 ? index : index - 1, scrollToIndex)\n }\n\n if (e.key === 'ArrowLeft') {\n e.preventDefault()\n return onHover((index) => {\n const group = groups.find(group => group.range[0] <= index && group.range[1] > index)\n if (!group)\n return index\n\n const prevGroup = groups[groups.indexOf(group) - 1]\n if (!prevGroup)\n return index\n\n return prevGroup.range[1] - 1\n }, scrollToIndex)\n }\n\n if (e.key === 'ArrowRight') {\n e.preventDefault()\n return onHover((index) => {\n const group = groups.find(group => group.range[0] <= index && group.range[1] > index)\n if (!group)\n return index\n\n const nextGroup = groups[groups.indexOf(group) + 1]\n if (!nextGroup)\n return index\n\n return nextGroup.range[0]\n }, scrollToIndex)\n }\n\n if (e.key === 'Enter') {\n e.preventDefault()\n runByIndex(hoverIndex)\n }\n }, [hide, groups, hoverIndex])\n\n const onMouseEnter = useCallback((index: number) => {\n return (e: MouseEvent) => {\n const prevPos = prevMousePosition.current\n if (!prevPos)\n return\n\n const { x, y } = e\n if (x === prevPos.x && y === prevPos.y)\n return\n\n onHover(index)\n }\n }, [])\n\n useEffect(() => {\n if (show)\n root.addEventListener('keydown', onKeydown, { capture: true })\n\n else root.removeEventListener('keydown', onKeydown, { capture: true })\n\n return () => {\n root.removeEventListener('keydown', onKeydown, { capture: true })\n }\n }, [show, onKeydown])\n\n return html`\n <host onmousedown=${(e: MouseEvent) => e.preventDefault()}>\n <nav class=\"tab-group\">\n <ul>\n ${groups.map(group =>\n html`<li\n key=${group.key}\n onmousedown=${() => onHover(group.range[0], scrollToIndex)}\n class=${hoverIndex >= group.range[0] && hoverIndex < group.range[1] ? 'selected' : ''}\n >\n ${group.label}\n </li>`)}\n </ul>\n </nav>\n <div class=\"menu-groups\" onmousemove=${onMouseMove}>\n ${groups.map((group) => {\n return html`\n <div key=${group.key} class=\"menu-group\">\n <h6>${group.label}</h6>\n <ul>\n ${group.items.map(item =>\n html`<li\n key=${item.key}\n data-index=${item.index}\n class=${hoverIndex === item.index ? 'hover' : ''}\n onmouseenter=${onMouseEnter(item.index)}\n onmousedown=${() => {\n host\n .current\n .querySelector(`[data-index=\"${item.index}\"]`)\n ?.classList.add('active')\n }}\n onmouseup=${() => {\n host\n .current\n .querySelector(`[data-index=\"${item.index}\"]`)\n ?.classList.remove('active')\n runByIndex(item.index)\n }}\n >\n ${item.icon}\n <span>${item.label}</span>\n </li>`,\n )}\n </ul>\n </div>\n `\n })}\n </div>\n </host>\n `\n}\n\nmenuComponent.props = {\n ctx: Object,\n config: Object,\n show: Boolean,\n filter: String,\n hide: Function,\n}\n\nexport const MenuElement = c(menuComponent)\n","import type { PluginView } from '@milkdown/kit/prose/state'\nimport type { EditorView } from '@milkdown/kit/prose/view'\nimport { SlashProvider, slashFactory } from '@milkdown/kit/plugin/slash'\nimport type { Ctx } from '@milkdown/kit/ctx'\nimport type { AtomicoThis } from 'atomico/types/dom'\nimport { $ctx } from '@milkdown/kit/utils'\nimport { defIfNotExists, isInCodeBlock, isInList } from '../../../utils'\nimport type { BlockEditFeatureConfig } from '../index'\nimport type { MenuProps } from './component'\nimport { MenuElement } from './component'\n\nexport const menu = slashFactory('CREPE_MENU')\n\nexport interface MenuAPI {\n show: (pos: number) => void\n hide: () => void\n}\n\nexport const menuAPI = $ctx({\n show: () => {},\n hide: () => {},\n} as MenuAPI, 'menuAPICtx')\n\ndefIfNotExists('milkdown-slash-menu', MenuElement)\nexport function configureMenu(ctx: Ctx, config?: BlockEditFeatureConfig) {\n ctx.set(menu.key, {\n view: view => new MenuView(ctx, view, config),\n })\n}\n\nclass MenuView implements PluginView {\n readonly #content: AtomicoThis<MenuProps, HTMLElement>\n readonly #slashProvider: SlashProvider\n #programmaticallyPos: number | null = null\n\n constructor(ctx: Ctx, view: EditorView, config?: BlockEditFeatureConfig) {\n this.#content = new MenuElement()\n this.#content.hide = this.hide\n this.#content.ctx = ctx\n this.#content.config = config\n // eslint-disable-next-line ts/no-this-alias\n const self = this\n this.#slashProvider = new SlashProvider({\n content: this.#content,\n debounce: 20,\n shouldShow(this: SlashProvider, view: EditorView) {\n if (isInCodeBlock(view.state.selection) || isInList(view.state.selection))\n return false\n\n const currentText = this.getContent(view, node =>\n ['paragraph', 'heading'].includes(node.type.name))\n\n if (currentText == null)\n return false\n\n const pos = self.#programmaticallyPos\n\n self.#content.filter = currentText.startsWith('/') ? currentText.slice(1) : currentText\n\n if (typeof pos === 'number') {\n if (view.state.doc.resolve(pos).node() !== view.state.doc.resolve(view.state.selection.from).node()) {\n self.#programmaticallyPos = null\n\n return false\n }\n\n return true\n }\n\n if (!currentText.startsWith('/'))\n return false\n\n return true\n },\n offset: 10,\n })\n\n this.#slashProvider.onShow = () => {\n this.#content.show = true\n }\n this.#slashProvider.onHide = () => {\n this.#content.show = false\n }\n this.update(view)\n\n ctx.set(menuAPI.key, {\n show: pos => this.show(pos),\n hide: () => this.hide(),\n })\n }\n\n update = (view: EditorView) => {\n this.#slashProvider.update(view)\n }\n\n show = (pos: number) => {\n this.#programmaticallyPos = pos\n this.#content.filter = ''\n this.#slashProvider.show()\n }\n\n hide = () => {\n this.#programmaticallyPos = null\n this.#slashProvider.hide()\n }\n\n destroy = () => {\n this.#slashProvider.destroy()\n this.#content.remove()\n }\n}\n","import { type Component, c, html, useEffect, useRef } from 'atomico'\nimport { menuIcon, plusIcon } from '../../../icons'\nimport type { Icon } from '../../shared'\n\nexport interface BlockHandleProps {\n show: boolean\n onAdd: () => void\n addIcon: Icon\n handleIcon: Icon\n}\n\nconst blockHandleComponent: Component<BlockHandleProps> = ({\n onAdd,\n addIcon,\n handleIcon,\n}) => {\n const ref = useRef<HTMLDivElement>()\n useEffect(() => {\n ref.current?.classList.remove('active')\n })\n const onMouseDown = (e: MouseEvent) => {\n e.preventDefault()\n e.stopPropagation()\n ref.current?.classList.add('active')\n }\n const onMouseUp = (e: MouseEvent) => {\n e.preventDefault()\n e.stopPropagation()\n onAdd?.()\n ref.current?.classList.remove('active')\n }\n return html`\n <host>\n <div ref=${ref} onmousedown=${onMouseDown} onmouseup=${onMouseUp} class=\"operation-item\">\n ${addIcon?.() || plusIcon}\n </div>\n <div class=\"operation-item\">\n ${handleIcon?.() || menuIcon}\n </div>\n </host>\n `\n}\n\nblockHandleComponent.props = {\n show: Boolean,\n onAdd: Function,\n addIcon: Function,\n handleIcon: Function,\n}\n\nexport const BlockHandleElement = c(blockHandleComponent)\n","import type { PluginView } from '@milkdown/kit/prose/state'\nimport { TextSelection } from '@milkdown/kit/prose/state'\nimport { BlockProvider, block } from '@milkdown/kit/plugin/block'\nimport type { Ctx } from '@milkdown/kit/ctx'\nimport type { AtomicoThis } from 'atomico/types/dom'\nimport { editorViewCtx } from '@milkdown/kit/core'\nimport { paragraphSchema } from '@milkdown/kit/preset/commonmark'\nimport { menuAPI } from '../menu'\nimport { defIfNotExists } from '../../../utils'\nimport type { BlockEditFeatureConfig } from '../index'\nimport type { BlockHandleProps } from './component'\nimport { BlockHandleElement } from './component'\n\nexport class BlockHandleView implements PluginView {\n #content: AtomicoThis<BlockHandleProps>\n #provider: BlockProvider\n readonly #ctx: Ctx\n\n constructor(ctx: Ctx, config?: BlockEditFeatureConfig) {\n this.#ctx = ctx\n const content = new BlockHandleElement()\n this.#content = content\n this.#content.onAdd = this.onAdd\n this.#content.addIcon = config?.handleAddIcon\n this.#content.handleIcon = config?.handleDragIcon\n this.#provider = new BlockProvider({\n ctx,\n content,\n getOffset: () => 16,\n getPlacement: ({ active, blockDom }) => {\n let totalDescendant = 0\n active.node.descendants((node) => {\n totalDescendant += node.childCount\n })\n const dom = active.el\n const domRect = dom.getBoundingClientRect()\n const handleRect = blockDom.getBoundingClientRect()\n const style = window.getComputedStyle(dom)\n const paddingTop = Number.parseInt(style.paddingTop, 10) || 0\n const paddingBottom = Number.parseInt(style.paddingBottom, 10) || 0\n const height = domRect.height - paddingTop - paddingBottom\n const handleHeight = handleRect.height\n return totalDescendant > 2 || handleHeight * 2 < height ? 'left-start' : 'left'\n },\n })\n this.update()\n }\n\n update = () => {\n this.#provider.update()\n }\n\n destroy = () => {\n this.#provider.destroy()\n this.#content.remove()\n }\n\n onAdd = () => {\n const ctx = this.#ctx\n const view = ctx.get(editorViewCtx)\n if (!view.hasFocus())\n view.focus()\n\n const { state, dispatch } = view\n const active = this.#provider.active\n if (!active)\n return\n\n const $pos = active.$pos\n const pos = $pos.pos + active.node.nodeSize\n let tr = state.tr.insert(pos, paragraphSchema.type(ctx).create())\n tr = tr.setSelection(TextSelection.near(tr.doc.resolve(pos)))\n dispatch(tr.scrollIntoView())\n\n this.#provider.hide()\n ctx.get(menuAPI.key).show(tr.selection.from)\n }\n}\n\ndefIfNotExists('milkdown-block-handle', BlockHandleElement)\nexport function configureBlockHandle(ctx: Ctx, config?: BlockEditFeatureConfig) {\n ctx.set(block.key, {\n view: () => new BlockHandleView(ctx, config),\n })\n}\n","import { block } from '@milkdown/kit/plugin/block'\nimport type { DefineFeature, Icon } from '../shared'\nimport { configureBlockHandle } from './handle'\nimport { configureMenu, menu, menuAPI } from './menu'\nimport type { GroupBuilder } from './menu/group-builder'\n\ninterface BlockEditConfig {\n handleAddIcon: Icon\n handleDragIcon: Icon\n buildMenu: (builder: GroupBuilder) => void\n\n slashMenuTextGroupLabel: string\n slashMenuTextIcon: Icon\n slashMenuTextLabel: string\n slashMenuH1Icon: Icon\n slashMenuH1Label: string\n slashMenuH2Icon: Icon\n slashMenuH2Label: string\n slashMenuH3Icon: Icon\n slashMenuH3Label: string\n slashMenuH4Icon: Icon\n slashMenuH4Label: string\n slashMenuH5Icon: Icon\n slashMenuH5Label: string\n slashMenuH6Icon: Icon\n slashMenuH6Label: string\n slashMenuQuoteIcon: Icon\n slashMenuQuoteLabel: string\n slashMenuDividerIcon: Icon\n slashMenuDividerLabel: string\n\n slashMenuListGroupLabel: string\n slashMenuBulletListIcon: Icon\n slashMenuBulletListLabel: string\n slashMenuOrderedListIcon: Icon\n slashMenuOrderedListLabel: string\n slashMenuTaskListIcon: Icon\n slashMenuTaskListLabel: string\n\n slashMenuAdvancedGroupLabel: string\n slashMenuImageIcon: Icon\n slashMenuImageLabel: string\n slashMenuCodeBlockIcon: Icon\n slashMenuCodeBlockLabel: string\n slashMenuTableIcon: Icon\n slashMenuTableLabel: string\n}\n\nexport type BlockEditFeatureConfig = Partial<BlockEditConfig>\n\nexport const defineFeature: DefineFeature<BlockEditFeatureConfig> = (editor, config) => {\n editor\n .config(ctx => configureBlockHandle(ctx, config))\n .config(ctx => configureMenu(ctx, config))\n .use(menuAPI)\n .use(block)\n .use(menu)\n}\n"],"names":["findWrapping","__privateAdd","__privateSet","__privateGet","group","textIcon","editorViewCtx","paragraphSchema","h1Icon","headingSchema","h2Icon","h3Icon","h4Icon","h5Icon","h6Icon","quoteIcon","blockquoteSchema","dividerIcon","hrSchema","bulletListIcon","bulletListSchema","orderedListIcon","orderedListSchema","todoListIcon","listItemSchema","imageIcon","imageBlockSchema","codeIcon","codeBlockSchema","tableIcon","state","createTable","NodeSelection","items","groups","useMemo","useHost","useState","useRef","useCallback","useEffect","html","c","_content","slashFactory","$ctx","defIfNotExists","SlashProvider","view","isInCodeBlock","isInList","plusIcon","menuIcon","TextSelection","BlockProvider","block"],"mappings":"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"}
@@ -1,18 +1,10 @@
1
1
  'use strict';
2
2
 
3
- var index$1 = require('./index-z6pe2alg.js');
4
- var index = require('./index-tBw4NmwY.js');
5
- var state = require('@milkdown/prose/state');
6
- var view = require('@milkdown/prose/view');
7
- var prose = require('@milkdown/prose');
8
- require('@milkdown/prose/model');
9
- require('@milkdown/prose/commands');
10
- require('@milkdown/prose/inputrules');
11
- require('@milkdown/prose/keymap');
12
- require('@milkdown/prose/schema-list');
13
- require('@milkdown/prose/transform');
14
- require('@milkdown/prose/history');
15
- require('@milkdown/prose/tables');
3
+ var utils = require('@milkdown/kit/utils');
4
+ var state = require('@milkdown/kit/prose/state');
5
+ var view = require('@milkdown/kit/prose/view');
6
+ var prose = require('@milkdown/kit/prose');
7
+ var index = require('./index-z6pe2alg.js');
16
8
 
17
9
  function isDocEmpty(doc) {
18
10
  var _a;
@@ -35,11 +27,11 @@ function createPlaceholderDecoration(state, placeholderText) {
35
27
  "data-placeholder": placeholderText
36
28
  });
37
29
  }
38
- const placeholderConfig = index.$ctx({
30
+ const placeholderConfig = utils.$ctx({
39
31
  text: "Please enter...",
40
32
  mode: "block"
41
33
  }, "placeholderConfigCtx");
42
- const placeholderPlugin = index.$prose((ctx) => {
34
+ const placeholderPlugin = utils.$prose((ctx) => {
43
35
  return new state.Plugin({
44
36
  key: new state.PluginKey("CREPE_PLACEHOLDER"),
45
37
  props: {
@@ -48,7 +40,7 @@ const placeholderPlugin = index.$prose((ctx) => {
48
40
  const config = ctx.get(placeholderConfig.key);
49
41
  if (config.mode === "doc" && !isDocEmpty(state.doc))
50
42
  return null;
51
- if (index$1.isInCodeBlock(state.selection) || index$1.isInList(state.selection))
43
+ if (index.isInCodeBlock(state.selection) || index.isInList(state.selection))
52
44
  return null;
53
45
  const placeholderText = (_a = config.text) != null ? _a : "Please enter...";
54
46
  const deco = createPlaceholderDecoration(state, placeholderText);
@@ -75,4 +67,4 @@ const defineFeature = (editor, config) => {
75
67
  exports.defineFeature = defineFeature;
76
68
  exports.placeholderConfig = placeholderConfig;
77
69
  exports.placeholderPlugin = placeholderPlugin;
78
- //# sourceMappingURL=index-J3XY9IPt.js.map
70
+ //# sourceMappingURL=index-rFFAL9YA.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index-J3XY9IPt.js","sources":["../../src/feature/placeholder/index.ts"],"sourcesContent":["import { $ctx, $prose } from '@milkdown/kit/utils'\nimport type { EditorState } from '@milkdown/kit/prose/state'\nimport { Plugin, PluginKey } from '@milkdown/kit/prose/state'\nimport type { Node } from '@milkdown/kit/prose/model'\nimport { Decoration, DecorationSet } from '@milkdown/kit/prose/view'\nimport { findParent } from '@milkdown/kit/prose'\nimport type { DefineFeature } from '../shared'\nimport { isInCodeBlock, isInList } from '../../utils'\n\nfunction isDocEmpty(doc: Node) {\n return doc.childCount <= 1 && !doc.firstChild?.content.size\n}\n\nfunction createPlaceholderDecoration(\n state: EditorState,\n placeholderText: string,\n): Decoration | null {\n const { selection } = state\n if (!selection.empty)\n return null\n\n const $pos = selection.$anchor\n const node = $pos.parent\n if (node.content.size > 0)\n return null\n\n const inTable = findParent(node => node.type.name === 'table')($pos)\n if (inTable)\n return null\n\n const before = $pos.before()\n\n return Decoration.node(before, before + node.nodeSize, {\n 'class': 'crepe-placeholder',\n 'data-placeholder': placeholderText,\n })\n}\n\ninterface PlaceholderConfig {\n text: string\n mode: 'doc' | 'block'\n}\n\nexport type PlaceHolderFeatureConfig = Partial<PlaceholderConfig>\n\nexport const placeholderConfig = $ctx({\n text: 'Please enter...',\n mode: 'block',\n} as PlaceholderConfig, 'placeholderConfigCtx')\n\nexport const placeholderPlugin = $prose((ctx) => {\n return new Plugin({\n key: new PluginKey('CREPE_PLACEHOLDER'),\n props: {\n decorations: (state) => {\n const config = ctx.get(placeholderConfig.key)\n if (config.mode === 'doc' && !isDocEmpty(state.doc))\n return null\n\n if (isInCodeBlock(state.selection) || isInList(state.selection))\n return null\n\n const placeholderText = config.text ?? 'Please enter...'\n const deco = createPlaceholderDecoration(state, placeholderText)\n if (!deco)\n return null\n\n return DecorationSet.create(state.doc, [deco])\n },\n },\n })\n})\n\nexport const defineFeature: DefineFeature<PlaceHolderFeatureConfig> = (editor, config) => {\n editor\n .config((ctx) => {\n if (config) {\n ctx.update(placeholderConfig.key, (prev) => {\n return {\n ...prev,\n ...config,\n }\n })\n }\n })\n .use(placeholderPlugin)\n .use(placeholderConfig)\n}\n"],"names":["findParent","node","Decoration","$ctx","$prose","Plugin","PluginKey","isInCodeBlock","isInList","DecorationSet"],"mappings":";;;;;;;;;;;;;;;;AASA,SAAS,WAAW,GAAW,EAAA;AAT/B,EAAA,IAAA,EAAA,CAAA;AAUE,EAAA,OAAO,IAAI,UAAc,IAAA,CAAA,IAAK,GAAC,EAAI,GAAA,GAAA,CAAA,UAAA,KAAJ,mBAAgB,OAAQ,CAAA,IAAA,CAAA,CAAA;AACzD,CAAA;AAEA,SAAS,2BAAA,CACP,OACA,eACmB,EAAA;AACnB,EAAM,MAAA,EAAE,WAAc,GAAA,KAAA,CAAA;AACtB,EAAA,IAAI,CAAC,SAAU,CAAA,KAAA;AACb,IAAO,OAAA,IAAA,CAAA;AAET,EAAA,MAAM,OAAO,SAAU,CAAA,OAAA,CAAA;AACvB,EAAA,MAAM,OAAO,IAAK,CAAA,MAAA,CAAA;AAClB,EAAI,IAAA,IAAA,CAAK,QAAQ,IAAO,GAAA,CAAA;AACtB,IAAO,OAAA,IAAA,CAAA;AAET,EAAM,MAAA,OAAA,GAAUA,iBAAW,CAAAC,KAAAA,KAAQA,MAAK,IAAK,CAAA,IAAA,KAAS,OAAO,CAAA,CAAE,IAAI,CAAA,CAAA;AACnE,EAAI,IAAA,OAAA;AACF,IAAO,OAAA,IAAA,CAAA;AAET,EAAM,MAAA,MAAA,GAAS,KAAK,MAAO,EAAA,CAAA;AAE3B,EAAA,OAAOC,eAAW,CAAA,IAAA,CAAK,MAAQ,EAAA,MAAA,GAAS,KAAK,QAAU,EAAA;AAAA,IACrD,OAAS,EAAA,mBAAA;AAAA,IACT,kBAAoB,EAAA,eAAA;AAAA,GACrB,CAAA,CAAA;AACH,CAAA;AASO,MAAM,oBAAoBC,UAAK,CAAA;AAAA,EACpC,IAAM,EAAA,iBAAA;AAAA,EACN,IAAM,EAAA,OAAA;AACR,CAAA,EAAwB,sBAAsB,EAAA;AAEjC,MAAA,iBAAA,GAAoBC,YAAO,CAAA,CAAC,GAAQ,KAAA;AAC/C,EAAA,OAAO,IAAIC,YAAO,CAAA;AAAA,IAChB,GAAA,EAAK,IAAIC,eAAA,CAAU,mBAAmB,CAAA;AAAA,IACtC,KAAO,EAAA;AAAA,MACL,WAAA,EAAa,CAAC,KAAU,KAAA;AAtD9B,QAAA,IAAA,EAAA,CAAA;AAuDQ,QAAA,MAAM,MAAS,GAAA,GAAA,CAAI,GAAI,CAAA,iBAAA,CAAkB,GAAG,CAAA,CAAA;AAC5C,QAAA,IAAI,OAAO,IAAS,KAAA,KAAA,IAAS,CAAC,UAAA,CAAW,MAAM,GAAG,CAAA;AAChD,UAAO,OAAA,IAAA,CAAA;AAET,QAAA,IAAIC,sBAAc,KAAM,CAAA,SAAS,CAAK,IAAAC,gBAAA,CAAS,MAAM,SAAS,CAAA;AAC5D,UAAO,OAAA,IAAA,CAAA;AAET,QAAM,MAAA,eAAA,GAAA,CAAkB,EAAO,GAAA,MAAA,CAAA,IAAA,KAAP,IAAe,GAAA,EAAA,GAAA,iBAAA,CAAA;AACvC,QAAM,MAAA,IAAA,GAAO,2BAA4B,CAAA,KAAA,EAAO,eAAe,CAAA,CAAA;AAC/D,QAAA,IAAI,CAAC,IAAA;AACH,UAAO,OAAA,IAAA,CAAA;AAET,QAAA,OAAOC,mBAAc,MAAO,CAAA,KAAA,CAAM,GAAK,EAAA,CAAC,IAAI,CAAC,CAAA,CAAA;AAAA,OAC/C;AAAA,KACF;AAAA,GACD,CAAA,CAAA;AACH,CAAC,EAAA;AAEY,MAAA,aAAA,GAAyD,CAAC,MAAA,EAAQ,MAAW,KAAA;AACxF,EACG,MAAA,CAAA,MAAA,CAAO,CAAC,GAAQ,KAAA;AACf,IAAA,IAAI,MAAQ,EAAA;AACV,MAAA,GAAA,CAAI,MAAO,CAAA,iBAAA,CAAkB,GAAK,EAAA,CAAC,IAAS,KAAA;AAC1C,QAAO,OAAA;AAAA,UACL,GAAG,IAAA;AAAA,UACH,GAAG,MAAA;AAAA,SACL,CAAA;AAAA,OACD,CAAA,CAAA;AAAA,KACH;AAAA,GACD,CACA,CAAA,GAAA,CAAI,iBAAiB,CAAA,CACrB,IAAI,iBAAiB,CAAA,CAAA;AAC1B;;;;;;"}
1
+ {"version":3,"file":"index-rFFAL9YA.js","sources":["../../src/feature/placeholder/index.ts"],"sourcesContent":["import { $ctx, $prose } from '@milkdown/kit/utils'\nimport type { EditorState } from '@milkdown/kit/prose/state'\nimport { Plugin, PluginKey } from '@milkdown/kit/prose/state'\nimport type { Node } from '@milkdown/kit/prose/model'\nimport { Decoration, DecorationSet } from '@milkdown/kit/prose/view'\nimport { findParent } from '@milkdown/kit/prose'\nimport type { DefineFeature } from '../shared'\nimport { isInCodeBlock, isInList } from '../../utils'\n\nfunction isDocEmpty(doc: Node) {\n return doc.childCount <= 1 && !doc.firstChild?.content.size\n}\n\nfunction createPlaceholderDecoration(\n state: EditorState,\n placeholderText: string,\n): Decoration | null {\n const { selection } = state\n if (!selection.empty)\n return null\n\n const $pos = selection.$anchor\n const node = $pos.parent\n if (node.content.size > 0)\n return null\n\n const inTable = findParent(node => node.type.name === 'table')($pos)\n if (inTable)\n return null\n\n const before = $pos.before()\n\n return Decoration.node(before, before + node.nodeSize, {\n 'class': 'crepe-placeholder',\n 'data-placeholder': placeholderText,\n })\n}\n\ninterface PlaceholderConfig {\n text: string\n mode: 'doc' | 'block'\n}\n\nexport type PlaceHolderFeatureConfig = Partial<PlaceholderConfig>\n\nexport const placeholderConfig = $ctx({\n text: 'Please enter...',\n mode: 'block',\n} as PlaceholderConfig, 'placeholderConfigCtx')\n\nexport const placeholderPlugin = $prose((ctx) => {\n return new Plugin({\n key: new PluginKey('CREPE_PLACEHOLDER'),\n props: {\n decorations: (state) => {\n const config = ctx.get(placeholderConfig.key)\n if (config.mode === 'doc' && !isDocEmpty(state.doc))\n return null\n\n if (isInCodeBlock(state.selection) || isInList(state.selection))\n return null\n\n const placeholderText = config.text ?? 'Please enter...'\n const deco = createPlaceholderDecoration(state, placeholderText)\n if (!deco)\n return null\n\n return DecorationSet.create(state.doc, [deco])\n },\n },\n })\n})\n\nexport const defineFeature: DefineFeature<PlaceHolderFeatureConfig> = (editor, config) => {\n editor\n .config((ctx) => {\n if (config) {\n ctx.update(placeholderConfig.key, (prev) => {\n return {\n ...prev,\n ...config,\n }\n })\n }\n })\n .use(placeholderPlugin)\n .use(placeholderConfig)\n}\n"],"names":["findParent","node","Decoration","$ctx","$prose","Plugin","PluginKey","isInCodeBlock","isInList","DecorationSet"],"mappings":"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"}
@@ -0,0 +1,28 @@
1
+ 'use strict';
2
+
3
+ var listItemBlock = require('@milkdown/kit/component/list-item-block');
4
+ var atomico = require('atomico');
5
+ var clsx = require('clsx');
6
+ var todoList = require('./todoList-YYRQo7wG.js');
7
+
8
+ function configureListItem(ctx, config) {
9
+ ctx.set(listItemBlock.listItemBlockConfig.key, {
10
+ renderLabel: ({ label, listType, checked, readonly }) => {
11
+ var _a, _b, _c, _d, _e, _f;
12
+ if (checked == null) {
13
+ if (listType === "bullet")
14
+ return atomico.html`<span class='label'>${(_b = (_a = config == null ? void 0 : config.bulletIcon) == null ? void 0 : _a.call(config)) != null ? _b : todoList.bulletIcon}</span>`;
15
+ return atomico.html`<span class='label'>${label}</span>`;
16
+ }
17
+ if (checked)
18
+ return atomico.html`<span class=${clsx("label checkbox", readonly && "readonly")}>${(_d = (_c = config == null ? void 0 : config.checkBoxCheckedIcon) == null ? void 0 : _c.call(config)) != null ? _d : todoList.checkBoxCheckedIcon}</span>`;
19
+ return atomico.html`<span class=${clsx("label checkbox", readonly && "readonly")}>${(_f = (_e = config == null ? void 0 : config.checkBoxUncheckedIcon) == null ? void 0 : _e.call(config)) != null ? _f : todoList.checkBoxUncheckedIcon}</span>`;
20
+ }
21
+ });
22
+ }
23
+ const defineFeature = (editor, config) => {
24
+ editor.config((ctx) => configureListItem(ctx, config)).use(listItemBlock.listItemBlockComponent);
25
+ };
26
+
27
+ exports.defineFeature = defineFeature;
28
+ //# sourceMappingURL=index-rLAgJeYn.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-rLAgJeYn.js","sources":["../../src/feature/list-item/index.ts"],"sourcesContent":["import type { Ctx } from '@milkdown/kit/ctx'\nimport { listItemBlockComponent, listItemBlockConfig } from '@milkdown/kit/component/list-item-block'\nimport { html } from 'atomico'\nimport clsx from 'clsx'\nimport type { DefineFeature, Icon } from '../shared'\nimport { bulletIcon, checkBoxCheckedIcon, checkBoxUncheckedIcon } from '../../icons'\n\nexport interface ListItemConfig {\n bulletIcon: Icon\n checkBoxCheckedIcon: Icon\n checkBoxUncheckedIcon: Icon\n}\n\nexport type ListItemFeatureConfig = Partial<ListItemConfig>\n\nfunction configureListItem(ctx: Ctx, config?: ListItemFeatureConfig) {\n ctx.set(listItemBlockConfig.key, {\n renderLabel: ({ label, listType, checked, readonly }) => {\n if (checked == null) {\n if (listType === 'bullet')\n return html`<span class='label'>${config?.bulletIcon?.() ?? bulletIcon}</span>`\n\n return html`<span class='label'>${label}</span>`\n }\n\n if (checked)\n return html`<span class=${clsx('label checkbox', readonly && 'readonly')}>${config?.checkBoxCheckedIcon?.() ?? checkBoxCheckedIcon}</span>`\n\n return html`<span class=${clsx('label checkbox', readonly && 'readonly')}>${config?.checkBoxUncheckedIcon?.() ?? checkBoxUncheckedIcon}</span>`\n },\n })\n}\n\nexport const defineFeature: DefineFeature<ListItemFeatureConfig> = (editor, config) => {\n editor\n .config(ctx => configureListItem(ctx, config))\n .use(listItemBlockComponent)\n}\n"],"names":["listItemBlockConfig","html","bulletIcon","checkBoxCheckedIcon","checkBoxUncheckedIcon","listItemBlockComponent"],"mappings":";;;;;;;AAeA,SAAS,iBAAA,CAAkB,KAAU,MAAgC,EAAA;AACnE,EAAI,GAAA,CAAA,GAAA,CAAIA,kCAAoB,GAAK,EAAA;AAAA,IAC/B,aAAa,CAAC,EAAE,OAAO,QAAU,EAAA,OAAA,EAAS,UAAe,KAAA;AAjB7D,MAAA,IAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,CAAA;AAkBM,MAAA,IAAI,WAAW,IAAM,EAAA;AACnB,QAAA,IAAI,QAAa,KAAA,QAAA;AACf,UAAA,OAAOC,YAA2B,CAAA,oBAAA,EAAA,CAAA,EAAA,GAAA,CAAA,EAAA,GAAA,MAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,MAAA,CAAQ,UAAR,KAAA,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,IAAA,CAAA,MAAA,CAAA,KAAA,IAAA,GAAA,EAAA,GAA0BC,mBAAU,CAAA,OAAA,CAAA,CAAA;AAExE,QAAA,OAAOD,mCAA2B,KAAK,CAAA,OAAA,CAAA,CAAA;AAAA,OACzC;AAEA,MAAI,IAAA,OAAA;AACF,QAAO,OAAAA,YAAA,CAAA,YAAA,EAAmB,IAAK,CAAA,gBAAA,EAAkB,QAAY,IAAA,UAAU,CAAC,CAAI,CAAA,EAAA,CAAA,EAAA,GAAA,CAAA,EAAA,GAAA,MAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,MAAA,CAAQ,mBAAR,KAAA,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,IAAA,CAAA,MAAA,CAAA,KAAA,IAAA,GAAA,EAAA,GAAmCE,4BAAmB,CAAA,OAAA,CAAA,CAAA;AAEpI,MAAO,OAAAF,YAAA,CAAA,YAAA,EAAmB,IAAK,CAAA,gBAAA,EAAkB,QAAY,IAAA,UAAU,CAAC,CAAI,CAAA,EAAA,CAAA,EAAA,GAAA,CAAA,EAAA,GAAA,MAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,MAAA,CAAQ,qBAAR,KAAA,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,IAAA,CAAA,MAAA,CAAA,KAAA,IAAA,GAAA,EAAA,GAAqCG,8BAAqB,CAAA,OAAA,CAAA,CAAA;AAAA,KACxI;AAAA,GACD,CAAA,CAAA;AACH,CAAA;AAEa,MAAA,aAAA,GAAsD,CAAC,MAAA,EAAQ,MAAW,KAAA;AACrF,EACG,MAAA,CAAA,MAAA,CAAO,SAAO,iBAAkB,CAAA,GAAA,EAAK,MAAM,CAAC,CAAA,CAC5C,IAAIC,oCAAsB,CAAA,CAAA;AAC/B;;;;"}
@@ -0,0 +1,36 @@
1
+ 'use strict';
2
+
3
+ var imageBlock = require('@milkdown/kit/component/image-block');
4
+ var imageInline = require('@milkdown/kit/component/image-inline');
5
+ var todoList = require('./todoList-YYRQo7wG.js');
6
+ require('atomico');
7
+
8
+ const defineFeature = (editor, config) => {
9
+ editor.config((ctx) => {
10
+ ctx.update(imageInline.inlineImageConfig.key, (value) => {
11
+ var _a, _b, _c, _d, _e, _f;
12
+ return {
13
+ uploadButton: (_a = config == null ? void 0 : config.inlineUploadButton) != null ? _a : () => "Upload",
14
+ imageIcon: (_b = config == null ? void 0 : config.inlineImageIcon) != null ? _b : () => todoList.imageIcon,
15
+ confirmButton: (_c = config == null ? void 0 : config.inlineConfirmButton) != null ? _c : () => todoList.confirmIcon,
16
+ uploadPlaceholderText: (_d = config == null ? void 0 : config.inlineUploadPlaceholderText) != null ? _d : "or paste link",
17
+ onUpload: (_f = (_e = config == null ? void 0 : config.inlineOnUpload) != null ? _e : config == null ? void 0 : config.onUpload) != null ? _f : value.onUpload
18
+ };
19
+ });
20
+ ctx.update(imageBlock.imageBlockConfig.key, (value) => {
21
+ var _a, _b, _c, _d, _e, _f, _g, _h;
22
+ return {
23
+ uploadButton: (_a = config == null ? void 0 : config.blockUploadButton) != null ? _a : () => "Upload file",
24
+ imageIcon: (_b = config == null ? void 0 : config.blockImageIcon) != null ? _b : () => todoList.imageIcon,
25
+ captionIcon: (_c = config == null ? void 0 : config.blockCaptionIcon) != null ? _c : () => todoList.captionIcon,
26
+ confirmButton: (_d = config == null ? void 0 : config.blockConfirmButton) != null ? _d : () => "Confirm",
27
+ captionPlaceholderText: (_e = config == null ? void 0 : config.blockCaptionPlaceholderText) != null ? _e : "Write Image Caption",
28
+ uploadPlaceholderText: (_f = config == null ? void 0 : config.blockUploadPlaceholderText) != null ? _f : "or paste link",
29
+ onUpload: (_h = (_g = config == null ? void 0 : config.blockOnUpload) != null ? _g : config == null ? void 0 : config.onUpload) != null ? _h : value.onUpload
30
+ };
31
+ });
32
+ }).use(imageBlock.imageBlockComponent).use(imageInline.imageInlineComponent);
33
+ };
34
+
35
+ exports.defineFeature = defineFeature;
36
+ //# sourceMappingURL=index-tlx25I_m.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-tlx25I_m.js","sources":["../../src/feature/image-block/index.ts"],"sourcesContent":["import { imageBlockComponent, imageBlockConfig } from '@milkdown/kit/component/image-block'\nimport { imageInlineComponent, inlineImageConfig } from '@milkdown/kit/component/image-inline'\nimport type { DefineFeature, Icon } from '../shared'\nimport { captionIcon, confirmIcon, imageIcon } from '../../icons'\n\ninterface ImageBlockConfig {\n onUpload: (file: File) => Promise<string>\n\n inlineImageIcon: Icon\n inlineConfirmButton: Icon\n inlineUploadButton: Icon\n inlineUploadPlaceholderText: string\n inlineOnUpload: (file: File) => Promise<string>\n\n blockImageIcon: Icon\n blockConfirmButton: Icon\n blockCaptionIcon: Icon\n blockUploadButton: Icon\n blockCaptionPlaceholderText: string\n blockUploadPlaceholderText: string\n blockOnUpload: (file: File) => Promise<string>\n}\n\nexport type ImageBlockFeatureConfig = Partial<ImageBlockConfig>\n\nexport const defineFeature: DefineFeature<ImageBlockFeatureConfig> = (editor, config) => {\n editor\n .config((ctx) => {\n ctx.update(inlineImageConfig.key, value => ({\n uploadButton: config?.inlineUploadButton ?? (() => 'Upload'),\n imageIcon: config?.inlineImageIcon ?? (() => imageIcon),\n confirmButton: config?.inlineConfirmButton ?? (() => confirmIcon),\n uploadPlaceholderText: config?.inlineUploadPlaceholderText ?? 'or paste link',\n onUpload: config?.inlineOnUpload ?? config?.onUpload ?? value.onUpload,\n }))\n ctx.update(imageBlockConfig.key, value => ({\n uploadButton: config?.blockUploadButton ?? (() => 'Upload file'),\n imageIcon: config?.blockImageIcon ?? (() => imageIcon),\n captionIcon: config?.blockCaptionIcon ?? (() => captionIcon),\n confirmButton: config?.blockConfirmButton ?? (() => 'Confirm'),\n captionPlaceholderText: config?.blockCaptionPlaceholderText ?? 'Write Image Caption',\n uploadPlaceholderText: config?.blockUploadPlaceholderText ?? 'or paste link',\n onUpload: config?.blockOnUpload ?? config?.onUpload ?? value.onUpload,\n }))\n })\n .use(imageBlockComponent)\n .use(imageInlineComponent)\n}\n"],"names":["inlineImageConfig","imageIcon","confirmIcon","imageBlockConfig","captionIcon","imageBlockComponent","imageInlineComponent"],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ 'use strict';
2
+
3
+ var cursor = require('@milkdown/kit/plugin/cursor');
4
+
5
+ const defineFeature = (editor, config) => {
6
+ editor.config((ctx) => {
7
+ ctx.update(cursor.dropCursorConfig.key, () => {
8
+ var _a, _b;
9
+ return {
10
+ class: "crepe-drop-cursor",
11
+ width: (_a = config == null ? void 0 : config.width) != null ? _a : 4,
12
+ color: (_b = config == null ? void 0 : config.color) != null ? _b : false
13
+ };
14
+ });
15
+ }).use(cursor.cursor);
16
+ };
17
+
18
+ exports.defineFeature = defineFeature;
19
+ //# sourceMappingURL=index-uleaJDBC.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-uleaJDBC.js","sources":["../../src/feature/cursor/index.ts"],"sourcesContent":["import { cursor, dropCursorConfig } from '@milkdown/kit/plugin/cursor'\n\nimport type { DefineFeature } from '../shared'\n\ninterface CursorConfig {\n color: string | false\n width: number\n}\nexport type CursorFeatureConfig = Partial<CursorConfig>\n\nexport const defineFeature: DefineFeature<CursorFeatureConfig> = (editor, config) => {\n editor\n .config((ctx) => {\n ctx.update(dropCursorConfig.key, () => ({\n class: 'crepe-drop-cursor',\n width: config?.width ?? 4,\n color: config?.color ?? false,\n }))\n })\n .use(cursor)\n}\n"],"names":["dropCursorConfig","cursor"],"mappings":";;;;AAUa,MAAA,aAAA,GAAoD,CAAC,MAAA,EAAQ,MAAW,KAAA;AACnF,EACG,MAAA,CAAA,MAAA,CAAO,CAAC,GAAQ,KAAA;AACf,IAAI,GAAA,CAAA,MAAA,CAAOA,uBAAiB,CAAA,GAAA,EAAK,MAAG;AAb1C,MAAA,IAAA,EAAA,EAAA,EAAA,CAAA;AAa8C,MAAA,OAAA;AAAA,QACtC,KAAO,EAAA,mBAAA;AAAA,QACP,KAAA,EAAA,CAAO,EAAQ,GAAA,MAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,MAAA,CAAA,KAAA,KAAR,IAAiB,GAAA,EAAA,GAAA,CAAA;AAAA,QACxB,KAAA,EAAA,CAAO,EAAQ,GAAA,MAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,MAAA,CAAA,KAAA,KAAR,IAAiB,GAAA,EAAA,GAAA,KAAA;AAAA,OAC1B,CAAA;AAAA,KAAE,CAAA,CAAA;AAAA,GACH,CACA,CAAA,GAAA,CAAIC,aAAM,CAAA,CAAA;AACf;;;;"}
package/lib/cjs/index.js CHANGED
@@ -1,20 +1,156 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./index-tBw4NmwY.js');
4
- require('@milkdown/prose/model');
5
- require('@milkdown/prose');
6
- require('@milkdown/prose/commands');
7
- require('@milkdown/prose/inputrules');
8
- require('@milkdown/prose/keymap');
9
- require('@milkdown/prose/state');
10
- require('@milkdown/prose/view');
11
- require('@milkdown/prose/schema-list');
12
- require('@milkdown/prose/transform');
13
- require('@milkdown/prose/history');
14
- require('@milkdown/prose/tables');
3
+ var core = require('@milkdown/kit/core');
4
+ var commonmark = require('@milkdown/kit/preset/commonmark');
5
+ var gfm = require('@milkdown/kit/preset/gfm');
6
+ var history = require('@milkdown/kit/plugin/history');
7
+ var indent = require('@milkdown/kit/plugin/indent');
8
+ var utils = require('@milkdown/kit/utils');
9
+ var clipboard = require('@milkdown/kit/plugin/clipboard');
10
+ var trailing = require('@milkdown/kit/plugin/trailing');
11
+ var ctx = require('@milkdown/kit/ctx');
15
12
 
13
+ var CrepeFeature = /* @__PURE__ */ ((CrepeFeature2) => {
14
+ CrepeFeature2["CodeMirror"] = "code-mirror";
15
+ CrepeFeature2["ListItem"] = "list-item";
16
+ CrepeFeature2["LinkTooltip"] = "link-tooltip";
17
+ CrepeFeature2["Cursor"] = "cursor";
18
+ CrepeFeature2["ImageBlock"] = "image-block";
19
+ CrepeFeature2["BlockEdit"] = "block-edit";
20
+ CrepeFeature2["Toolbar"] = "toolbar";
21
+ CrepeFeature2["Placeholder"] = "placeholder";
22
+ CrepeFeature2["Table"] = "table";
23
+ return CrepeFeature2;
24
+ })(CrepeFeature || {});
25
+ const defaultFeatures = {
26
+ ["cursor" /* Cursor */]: true,
27
+ ["list-item" /* ListItem */]: true,
28
+ ["link-tooltip" /* LinkTooltip */]: true,
29
+ ["image-block" /* ImageBlock */]: true,
30
+ ["block-edit" /* BlockEdit */]: true,
31
+ ["placeholder" /* Placeholder */]: true,
32
+ ["toolbar" /* Toolbar */]: true,
33
+ ["code-mirror" /* CodeMirror */]: true,
34
+ ["table" /* Table */]: true
35
+ };
36
+ async function loadFeature(feature, editor, config) {
37
+ switch (feature) {
38
+ case "code-mirror" /* CodeMirror */: {
39
+ const { defineFeature } = await Promise.resolve().then(function () { return require('./index-fhKBUFkq.js'); });
40
+ return defineFeature(editor, config);
41
+ }
42
+ case "list-item" /* ListItem */: {
43
+ const { defineFeature } = await Promise.resolve().then(function () { return require('./index-rLAgJeYn.js'); });
44
+ return defineFeature(editor, config);
45
+ }
46
+ case "link-tooltip" /* LinkTooltip */: {
47
+ const { defineFeature } = await Promise.resolve().then(function () { return require('./index-dEVmN_aj.js'); });
48
+ return defineFeature(editor, config);
49
+ }
50
+ case "image-block" /* ImageBlock */: {
51
+ const { defineFeature } = await Promise.resolve().then(function () { return require('./index-tlx25I_m.js'); });
52
+ return defineFeature(editor, config);
53
+ }
54
+ case "cursor" /* Cursor */: {
55
+ const { defineFeature } = await Promise.resolve().then(function () { return require('./index-uleaJDBC.js'); });
56
+ return defineFeature(editor, config);
57
+ }
58
+ case "block-edit" /* BlockEdit */: {
59
+ const { defineFeature } = await Promise.resolve().then(function () { return require('./index-ocxd4A-M.js'); });
60
+ return defineFeature(editor, config);
61
+ }
62
+ case "placeholder" /* Placeholder */: {
63
+ const { defineFeature } = await Promise.resolve().then(function () { return require('./index-rFFAL9YA.js'); });
64
+ return defineFeature(editor, config);
65
+ }
66
+ case "toolbar" /* Toolbar */: {
67
+ const { defineFeature } = await Promise.resolve().then(function () { return require('./index-TGmNEvsj.js'); });
68
+ return defineFeature(editor, config);
69
+ }
70
+ case "table" /* Table */: {
71
+ const { defineFeature } = await Promise.resolve().then(function () { return require('./index-N1cRxqdw.js'); });
72
+ return defineFeature(editor, config);
73
+ }
74
+ }
75
+ }
16
76
 
77
+ const FeaturesCtx = ctx.createSlice([], "FeaturesCtx");
78
+ function configureFeatures(features) {
79
+ return (ctx) => {
80
+ ctx.inject(FeaturesCtx, features);
81
+ };
82
+ }
17
83
 
18
- exports.Crepe = index.Crepe;
19
- exports.CrepeFeature = index.CrepeFeature;
84
+ var __typeError = (msg) => {
85
+ throw TypeError(msg);
86
+ };
87
+ var __accessCheck = (obj, member, msg) => member.has(obj) || __typeError("Cannot " + msg);
88
+ var __privateGet = (obj, member, getter) => (__accessCheck(obj, member, "read from private field"), getter ? getter.call(obj) : member.get(obj));
89
+ var __privateAdd = (obj, member, value) => member.has(obj) ? __typeError("Cannot add the same private member more than once") : member instanceof WeakSet ? member.add(obj) : member.set(obj, value);
90
+ var __privateSet = (obj, member, value, setter) => (__accessCheck(obj, member, "write to private field"), setter ? setter.call(obj, value) : member.set(obj, value), value);
91
+ var _editor, _initPromise, _rootElement, _editable;
92
+ class Crepe {
93
+ constructor({
94
+ root,
95
+ features = {},
96
+ featureConfigs = {},
97
+ defaultValue = ""
98
+ }) {
99
+ __privateAdd(this, _editor);
100
+ __privateAdd(this, _initPromise);
101
+ __privateAdd(this, _rootElement);
102
+ __privateAdd(this, _editable, true);
103
+ var _a;
104
+ const enabledFeatures = Object.entries({
105
+ ...defaultFeatures,
106
+ ...features
107
+ }).filter(([, enabled]) => enabled).map(([feature]) => feature);
108
+ __privateSet(this, _rootElement, (_a = typeof root === "string" ? document.querySelector(root) : root) != null ? _a : document.body);
109
+ __privateSet(this, _editor, core.Editor.make().config(configureFeatures(enabledFeatures)).config((ctx) => {
110
+ ctx.set(core.rootCtx, __privateGet(this, _rootElement));
111
+ ctx.set(core.defaultValueCtx, defaultValue);
112
+ ctx.set(core.editorViewOptionsCtx, {
113
+ editable: () => __privateGet(this, _editable)
114
+ });
115
+ ctx.update(indent.indentConfig.key, (value) => ({
116
+ ...value,
117
+ size: 4
118
+ }));
119
+ }).use(commonmark.commonmark).use(history.history).use(indent.indent).use(trailing.trailing).use(clipboard.clipboard).use(gfm.gfm));
120
+ const promiseList = [];
121
+ enabledFeatures.forEach((feature) => {
122
+ const config = featureConfigs[feature];
123
+ promiseList.push(
124
+ loadFeature(feature, __privateGet(this, _editor), config)
125
+ );
126
+ });
127
+ __privateSet(this, _initPromise, Promise.all(promiseList));
128
+ }
129
+ async create() {
130
+ await __privateGet(this, _initPromise);
131
+ return __privateGet(this, _editor).create();
132
+ }
133
+ async destroy() {
134
+ await __privateGet(this, _initPromise);
135
+ return __privateGet(this, _editor).destroy();
136
+ }
137
+ get editor() {
138
+ return __privateGet(this, _editor);
139
+ }
140
+ setReadonly(value) {
141
+ __privateSet(this, _editable, !value);
142
+ return this;
143
+ }
144
+ getMarkdown() {
145
+ return __privateGet(this, _editor).action(utils.getMarkdown());
146
+ }
147
+ }
148
+ _editor = new WeakMap();
149
+ _initPromise = new WeakMap();
150
+ _rootElement = new WeakMap();
151
+ _editable = new WeakMap();
152
+ Crepe.Feature = CrepeFeature;
153
+
154
+ exports.Crepe = Crepe;
155
+ exports.CrepeFeature = CrepeFeature;
20
156
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../../src/feature/index.ts","../../src/core/slice.ts","../../src/core/crepe.ts"],"sourcesContent":["import type { Editor } from '@milkdown/kit/core'\nimport type { PlaceHolderFeatureConfig } from './placeholder'\nimport type { CodeMirrorFeatureConfig } from './code-mirror'\nimport type { BlockEditFeatureConfig } from './block-edit'\nimport type { CursorFeatureConfig } from './cursor'\nimport type { ImageBlockFeatureConfig } from './image-block'\nimport type { LinkTooltipFeatureConfig } from './link-tooltip'\nimport type { ListItemFeatureConfig } from './list-item'\nimport type { ToolbarFeatureConfig } from './toolbar'\nimport type { TableFeatureConfig } from './table'\n\nexport enum CrepeFeature {\n CodeMirror = 'code-mirror',\n ListItem = 'list-item',\n LinkTooltip = 'link-tooltip',\n Cursor = 'cursor',\n ImageBlock = 'image-block',\n BlockEdit = 'block-edit',\n Toolbar = 'toolbar',\n Placeholder = 'placeholder',\n Table = 'table',\n}\n\nexport interface CrepeFeatureConfig {\n [CrepeFeature.Cursor]?: CursorFeatureConfig\n [CrepeFeature.ListItem]?: ListItemFeatureConfig\n [CrepeFeature.LinkTooltip]?: LinkTooltipFeatureConfig\n [CrepeFeature.ImageBlock]?: ImageBlockFeatureConfig\n [CrepeFeature.BlockEdit]?: BlockEditFeatureConfig\n [CrepeFeature.Placeholder]?: PlaceHolderFeatureConfig\n [CrepeFeature.Toolbar]?: ToolbarFeatureConfig\n [CrepeFeature.CodeMirror]?: CodeMirrorFeatureConfig\n [CrepeFeature.Table]?: TableFeatureConfig\n}\n\nexport const defaultFeatures: Record<CrepeFeature, boolean> = {\n [CrepeFeature.Cursor]: true,\n [CrepeFeature.ListItem]: true,\n [CrepeFeature.LinkTooltip]: true,\n [CrepeFeature.ImageBlock]: true,\n [CrepeFeature.BlockEdit]: true,\n [CrepeFeature.Placeholder]: true,\n [CrepeFeature.Toolbar]: true,\n [CrepeFeature.CodeMirror]: true,\n [CrepeFeature.Table]: true,\n}\n\nexport async function loadFeature(feature: CrepeFeature, editor: Editor, config?: never) {\n switch (feature) {\n case CrepeFeature.CodeMirror: {\n const { defineFeature } = await import('./code-mirror')\n return defineFeature(editor, config)\n }\n case CrepeFeature.ListItem: {\n const { defineFeature } = await import('./list-item')\n return defineFeature(editor, config)\n }\n case CrepeFeature.LinkTooltip: {\n const { defineFeature } = await import('./link-tooltip')\n return defineFeature(editor, config)\n }\n case CrepeFeature.ImageBlock: {\n const { defineFeature } = await import('./image-block')\n return defineFeature(editor, config)\n }\n case CrepeFeature.Cursor: {\n const { defineFeature } = await import('./cursor')\n return defineFeature(editor, config)\n }\n case CrepeFeature.BlockEdit: {\n const { defineFeature } = await import('./block-edit')\n return defineFeature(editor, config)\n }\n case CrepeFeature.Placeholder: {\n const { defineFeature } = await import('./placeholder')\n return defineFeature(editor, config)\n }\n case CrepeFeature.Toolbar: {\n const { defineFeature } = await import('./toolbar')\n return defineFeature(editor, config)\n }\n case CrepeFeature.Table: {\n const { defineFeature } = await import('./table')\n return defineFeature(editor, config)\n }\n }\n}\n","import type { Ctx } from '@milkdown/kit/ctx'\nimport { createSlice } from '@milkdown/kit/ctx'\nimport type { CrepeFeature } from '../feature'\n\nexport const FeaturesCtx = createSlice([] as CrepeFeature[], 'FeaturesCtx')\n\nexport function configureFeatures(features: CrepeFeature[]) {\n return (ctx: Ctx) => {\n ctx.inject(FeaturesCtx, features)\n }\n}\n","import type { DefaultValue } from '@milkdown/kit/core'\nimport { Editor, defaultValueCtx, editorViewOptionsCtx, rootCtx } from '@milkdown/kit/core'\n\nimport { commonmark } from '@milkdown/kit/preset/commonmark'\nimport { gfm } from '@milkdown/kit/preset/gfm'\nimport { history } from '@milkdown/kit/plugin/history'\nimport { indent, indentConfig } from '@milkdown/kit/plugin/indent'\nimport { getMarkdown } from '@milkdown/kit/utils'\nimport { clipboard } from '@milkdown/kit/plugin/clipboard'\nimport { trailing } from '@milkdown/kit/plugin/trailing'\n\nimport type { CrepeFeatureConfig } from '../feature'\nimport { CrepeFeature, defaultFeatures, loadFeature } from '../feature'\nimport { configureFeatures } from './slice'\n\nexport interface CrepeConfig {\n features?: Partial<Record<CrepeFeature, boolean>>\n featureConfigs?: CrepeFeatureConfig\n root?: Node | string | null\n defaultValue?: DefaultValue\n}\n\nexport class Crepe {\n static Feature = CrepeFeature\n readonly #editor: Editor\n readonly #initPromise: Promise<unknown>\n readonly #rootElement: Node\n #editable = true\n\n constructor({\n root,\n features = {},\n featureConfigs = {},\n defaultValue = '',\n }: CrepeConfig) {\n const enabledFeatures = Object\n .entries({\n ...defaultFeatures,\n ...features,\n })\n .filter(([, enabled]) => enabled)\n .map(([feature]) => feature as CrepeFeature)\n\n this.#rootElement = (typeof root === 'string' ? document.querySelector(root) : root) ?? document.body\n this.#editor = Editor.make()\n .config(configureFeatures(enabledFeatures))\n .config((ctx) => {\n ctx.set(rootCtx, this.#rootElement)\n ctx.set(defaultValueCtx, defaultValue)\n ctx.set(editorViewOptionsCtx, {\n editable: () => this.#editable,\n })\n ctx.update(indentConfig.key, value => ({\n ...value,\n size: 4,\n }))\n })\n .use(commonmark)\n .use(history)\n .use(indent)\n .use(trailing)\n .use(clipboard)\n .use(gfm)\n\n const promiseList: Promise<unknown>[] = []\n\n enabledFeatures.forEach((feature) => {\n const config = (featureConfigs as Partial<Record<CrepeFeature, never>>)[feature]\n promiseList.push(\n loadFeature(feature, this.#editor, config),\n )\n })\n\n this.#initPromise = Promise.all(promiseList)\n }\n\n async create() {\n await this.#initPromise\n return this.#editor.create()\n }\n\n async destroy() {\n await this.#initPromise\n return this.#editor.destroy()\n }\n\n get editor(): Editor {\n return this.#editor\n }\n\n setReadonly(value: boolean) {\n this.#editable = !value\n return this\n }\n\n getMarkdown() {\n return this.#editor.action(getMarkdown())\n }\n}\n"],"names":["CrepeFeature","createSlice","Editor","rootCtx","defaultValueCtx","editorViewOptionsCtx","indentConfig","commonmark","history","indent","trailing","clipboard","gfm","getMarkdown"],"mappings":"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"}
@@ -2,16 +2,6 @@
2
2
 
3
3
  var atomico = require('atomico');
4
4
 
5
- function withMeta(plugin, meta) {
6
- Object.assign(plugin, {
7
- meta: {
8
- package: "@milkdown/components",
9
- ...meta
10
- }
11
- });
12
- return plugin;
13
- }
14
-
15
5
  const alignCenterIcon = atomico.html`
16
6
  <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24">
17
7
  <path d="M4.25 20.5C4.0375 20.5 3.85942 20.4281 3.71575 20.2843C3.57192 20.1404 3.5 19.9622 3.5 19.7498C3.5 19.5371 3.57192 19.359 3.71575 19.2155C3.85942 19.0718 4.0375 19 4.25 19H19.75C19.9625 19 20.1406 19.0719 20.2843 19.2158C20.4281 19.3596 20.5 19.5378 20.5 19.7502C20.5 19.9629 20.4281 20.141 20.2843 20.2845C20.1406 20.4282 19.9625 20.5 19.75 20.5H4.25ZM8.25 16.625C8.0375 16.625 7.85942 16.5531 7.71575 16.4093C7.57192 16.2654 7.5 16.0872 7.5 15.8748C7.5 15.6621 7.57192 15.484 7.71575 15.3405C7.85942 15.1968 8.0375 15.125 8.25 15.125H15.75C15.9625 15.125 16.1406 15.1969 16.2843 15.3408C16.4281 15.4846 16.5 15.6628 16.5 15.8753C16.5 16.0879 16.4281 16.266 16.2843 16.4095C16.1406 16.5532 15.9625 16.625 15.75 16.625H8.25ZM4.25 12.75C4.0375 12.75 3.85942 12.6781 3.71575 12.5343C3.57192 12.3904 3.5 12.2122 3.5 11.9998C3.5 11.7871 3.57192 11.609 3.71575 11.4655C3.85942 11.3218 4.0375 11.25 4.25 11.25H19.75C19.9625 11.25 20.1406 11.3219 20.2843 11.4658C20.4281 11.6096 20.5 11.7878 20.5 12.0003C20.5 12.2129 20.4281 12.391 20.2843 12.5345C20.1406 12.6782 19.9625 12.75 19.75 12.75H4.25ZM8.25 8.875C8.0375 8.875 7.85942 8.80308 7.71575 8.65925C7.57192 8.51542 7.5 8.33725 7.5 8.12475C7.5 7.91208 7.57192 7.734 7.71575 7.5905C7.85942 7.44683 8.0375 7.375 8.25 7.375H15.75C15.9625 7.375 16.1406 7.44692 16.2843 7.59075C16.4281 7.73458 16.5 7.91275 16.5 8.12525C16.5 8.33792 16.4281 8.516 16.2843 8.6595C16.1406 8.80317 15.9625 8.875 15.75 8.875H8.25ZM4.25 5C4.0375 5 3.85942 4.92808 3.71575 4.78425C3.57192 4.64042 3.5 4.46225 3.5 4.24975C3.5 4.03708 3.57192 3.859 3.71575 3.7155C3.85942 3.57183 4.0375 3.5 4.25 3.5H19.75C19.9625 3.5 20.1406 3.57192 20.2843 3.71575C20.4281 3.85958 20.5 4.03775 20.5 4.25025C20.5 4.46292 20.4281 4.641 20.2843 4.7845C20.1406 4.92817 19.9625 5 19.75 5H4.25Z"/>
@@ -411,5 +401,4 @@ exports.strikethroughIcon = strikethroughIcon;
411
401
  exports.tableIcon = tableIcon;
412
402
  exports.textIcon = textIcon;
413
403
  exports.todoListIcon = todoListIcon;
414
- exports.withMeta = withMeta;
415
- //# sourceMappingURL=todoList-Ze4FLMlx.js.map
404
+ //# sourceMappingURL=todoList-YYRQo7wG.js.map