cosey 0.9.5 → 0.10.1

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 (427) hide show
  1. package/README.md +1 -1
  2. package/components/audio-card/audio-card.js +1 -1
  3. package/components/close/close.js +1 -1
  4. package/components/col/col.api.d.ts +1 -1
  5. package/components/context-menu/content.js +1 -1
  6. package/components/dnd-sort/dnd-sort-item.js +1 -1
  7. package/components/editor/button-group.d.ts +2 -0
  8. package/components/editor/button-group.js +20 -0
  9. package/components/editor/button-select.d.ts +14 -0
  10. package/components/editor/button-select.js +51 -0
  11. package/components/editor/button-split.d.ts +25 -0
  12. package/components/editor/button-split.js +68 -0
  13. package/components/editor/button.d.ts +19 -0
  14. package/components/editor/button.js +40 -0
  15. package/components/editor/contents/content-code-block.d.ts +18 -0
  16. package/components/editor/contents/content-code-block.js +51 -0
  17. package/components/editor/contents/content-formula.d.ts +12 -0
  18. package/components/editor/contents/content-formula.js +48 -0
  19. package/components/editor/contents/content-formula.style.js +14 -0
  20. package/components/editor/contents/content-image.d.ts +29 -0
  21. package/components/editor/contents/content-image.js +89 -0
  22. package/components/editor/{components/list/list.style.d.ts → contents/content-image.style.d.ts} +1 -1
  23. package/components/editor/contents/content-image.style.js +20 -0
  24. package/components/editor/contents/content-link.d.ts +16 -0
  25. package/components/editor/contents/content-link.js +74 -0
  26. package/components/editor/contents/content-link.stye.d.ts +4 -0
  27. package/components/editor/contents/content-link.stye.js +17 -0
  28. package/components/editor/contents/content-list-item.d.ts +21 -0
  29. package/components/editor/contents/content-list-item.js +41 -0
  30. package/components/editor/contents/content-list-item.style.d.ts +4 -0
  31. package/components/editor/contents/content-list-item.style.js +52 -0
  32. package/components/editor/contents/content-placeholder.d.ts +2 -0
  33. package/components/editor/contents/content-placeholder.js +24 -0
  34. package/components/editor/contents/content-placeholder.style.d.ts +4 -0
  35. package/components/editor/contents/content-placeholder.style.js +19 -0
  36. package/components/editor/contents/content-table.d.ts +2 -0
  37. package/components/editor/contents/content-table.js +133 -0
  38. package/components/editor/contents/content-table.style.d.ts +4 -0
  39. package/components/editor/contents/content-table.style.js +21 -0
  40. package/components/editor/contents/content-video.d.ts +26 -0
  41. package/components/editor/contents/content-video.js +73 -0
  42. package/components/editor/contents/content-video.style.d.ts +4 -0
  43. package/components/editor/contents/content-video.style.js +20 -0
  44. package/components/editor/contents/resize.d.ts +37 -0
  45. package/components/editor/contents/resize.js +133 -0
  46. package/components/editor/{components/resize → contents}/resize.style.d.ts +1 -1
  47. package/components/editor/{components/resize → contents}/resize.style.js +14 -34
  48. package/components/editor/contents/upload.d.ts +17 -0
  49. package/components/editor/contents/upload.js +80 -0
  50. package/components/editor/contents/upload.style.d.ts +4 -0
  51. package/components/editor/contents/upload.style.js +38 -0
  52. package/components/editor/contents/widget-popover.d.ts +389 -0
  53. package/components/editor/contents/widget-popover.js +36 -0
  54. package/components/editor/contents/widget-popover.style.d.ts +4 -0
  55. package/components/editor/contents/widget-popover.style.js +15 -0
  56. package/components/editor/editor.api.d.ts +14 -6
  57. package/components/editor/editor.api.js +10 -6
  58. package/components/editor/editor.d.ts +15 -8
  59. package/components/editor/editor.js +178 -76
  60. package/components/editor/editor.style.d.ts +5 -1
  61. package/components/editor/editor.style.js +121 -253
  62. package/components/editor/{components/color-picker/color-picker.js → formats/color-picker.api.js} +3 -3
  63. package/components/editor/formats/color-picker.d.ts +20 -0
  64. package/components/editor/formats/color-picker.js +154 -0
  65. package/components/editor/{components/color-picker → formats}/color-picker.style.d.ts +1 -1
  66. package/components/editor/{components/color-picker → formats}/color-picker.style.js +1 -1
  67. package/components/editor/formats/format-align.d.ts +22 -0
  68. package/components/editor/formats/format-align.js +38 -0
  69. package/components/editor/formats/format-background.d.ts +2 -0
  70. package/components/editor/formats/format-background.js +60 -0
  71. package/components/editor/formats/format-block-quote.d.ts +2 -0
  72. package/components/editor/formats/format-block-quote.js +27 -0
  73. package/components/editor/formats/format-clear.d.ts +2 -0
  74. package/components/editor/formats/format-clear.js +25 -0
  75. package/components/editor/formats/format-code-block.d.ts +2 -0
  76. package/components/editor/formats/format-code-block.js +27 -0
  77. package/components/editor/formats/format-color.d.ts +2 -0
  78. package/components/editor/formats/format-color.js +59 -0
  79. package/components/editor/formats/format-font.d.ts +2 -0
  80. package/components/editor/formats/format-font.js +46 -0
  81. package/components/editor/formats/format-formula.d.ts +2 -0
  82. package/components/editor/formats/format-formula.js +133 -0
  83. package/components/editor/formats/format-heading.d.ts +2 -0
  84. package/components/editor/formats/format-heading.js +52 -0
  85. package/components/editor/formats/format-image.d.ts +2 -0
  86. package/components/editor/formats/format-image.js +140 -0
  87. package/components/editor/formats/format-indent.d.ts +20 -0
  88. package/components/editor/formats/format-indent.js +35 -0
  89. package/components/editor/formats/format-link.d.ts +2 -0
  90. package/components/editor/formats/format-link.js +114 -0
  91. package/components/editor/formats/format-list.d.ts +22 -0
  92. package/components/editor/formats/format-list.js +39 -0
  93. package/components/editor/formats/format-mark.d.ts +20 -0
  94. package/components/editor/formats/format-mark.js +38 -0
  95. package/components/editor/formats/format-size-delta.d.ts +24 -0
  96. package/components/editor/formats/format-size-delta.js +43 -0
  97. package/components/editor/formats/format-size.d.ts +2 -0
  98. package/components/editor/formats/format-size.js +51 -0
  99. package/components/editor/formats/format-source.d.ts +2 -0
  100. package/components/editor/formats/format-source.js +69 -0
  101. package/components/editor/formats/format-table.d.ts +2 -0
  102. package/components/editor/formats/format-table.js +85 -0
  103. package/components/editor/formats/format-table.style.d.ts +4 -0
  104. package/components/editor/{components/toolbar/formats/table.style.js → formats/format-table.style.js} +2 -2
  105. package/components/editor/formats/format-video.d.ts +2 -0
  106. package/components/editor/formats/format-video.js +117 -0
  107. package/components/editor/formats/picker.d.ts +45 -0
  108. package/components/editor/formats/picker.js +91 -0
  109. package/components/editor/{components/picker → formats}/picker.style.d.ts +1 -1
  110. package/components/editor/{components/picker → formats}/picker.style.js +1 -1
  111. package/components/editor/formats/select-list.d.ts +28 -0
  112. package/components/editor/formats/select-list.js +47 -0
  113. package/components/editor/formats/select-list.style.d.ts +4 -0
  114. package/components/editor/{components/list/list.style.js → formats/select-list.style.js} +2 -2
  115. package/components/editor/formats/select.d.ts +32 -0
  116. package/components/editor/formats/select.js +61 -0
  117. package/components/editor/hooks/useBlockValueActive.d.ts +1 -0
  118. package/components/editor/hooks/useBlockValueActive.js +21 -0
  119. package/components/editor/hooks/useFocus.d.ts +5 -0
  120. package/components/editor/hooks/useFocus.js +18 -0
  121. package/components/editor/{components/color-picker → hooks}/useHistoryColor.js +1 -1
  122. package/components/editor/hooks/useMarkActive.d.ts +1 -0
  123. package/components/editor/hooks/useMarkActive.js +13 -0
  124. package/components/editor/hooks/useMarkValue.d.ts +1 -0
  125. package/components/editor/hooks/useMarkValue.js +21 -0
  126. package/components/editor/index.d.ts +25 -13
  127. package/components/editor/index.js +3 -21
  128. package/components/editor/plugins/align.d.ts +8 -0
  129. package/components/editor/plugins/align.js +13 -0
  130. package/components/editor/plugins/background.d.ts +7 -0
  131. package/components/editor/plugins/background.js +19 -0
  132. package/components/editor/plugins/block-quote.d.ts +8 -0
  133. package/components/editor/plugins/block-quote.js +34 -0
  134. package/components/editor/plugins/clear.d.ts +7 -0
  135. package/components/editor/plugins/clear.js +53 -0
  136. package/components/editor/plugins/code-block.d.ts +13 -0
  137. package/components/editor/plugins/code-block.js +356 -0
  138. package/components/editor/plugins/color.d.ts +7 -0
  139. package/components/editor/plugins/color.js +21 -0
  140. package/components/editor/plugins/font.d.ts +7 -0
  141. package/components/editor/plugins/font.js +17 -0
  142. package/components/editor/plugins/formula.d.ts +11 -0
  143. package/components/editor/{components/toolbar/formats → plugins}/formula.js +50 -1
  144. package/components/editor/plugins/heading.d.ts +9 -0
  145. package/components/editor/plugins/heading.js +70 -0
  146. package/components/editor/plugins/html.d.ts +7 -0
  147. package/components/editor/plugins/html.js +30 -0
  148. package/components/editor/plugins/image.d.ts +8 -0
  149. package/components/editor/plugins/image.js +63 -0
  150. package/components/editor/plugins/indent.d.ts +7 -0
  151. package/components/editor/plugins/indent.js +47 -0
  152. package/components/editor/plugins/index.d.ts +2 -0
  153. package/components/editor/plugins/index.js +50 -0
  154. package/components/editor/plugins/keyboard.d.ts +41 -0
  155. package/components/editor/plugins/keyboard.js +120 -0
  156. package/components/editor/plugins/link.d.ts +8 -0
  157. package/components/editor/plugins/link.js +56 -0
  158. package/components/editor/plugins/list/deserialize.d.ts +3 -0
  159. package/components/editor/plugins/list/deserialize.js +106 -0
  160. package/components/editor/plugins/list/format.d.ts +3 -0
  161. package/components/editor/plugins/list/format.js +155 -0
  162. package/components/editor/plugins/list/indent.d.ts +2 -0
  163. package/components/editor/plugins/list/indent.js +38 -0
  164. package/components/editor/plugins/list/index.d.ts +10 -0
  165. package/components/editor/plugins/list/index.js +61 -0
  166. package/components/editor/plugins/list/insert-break.d.ts +2 -0
  167. package/components/editor/plugins/list/insert-break.js +19 -0
  168. package/components/editor/plugins/list/normalize.d.ts +3 -0
  169. package/components/editor/plugins/list/normalize.js +168 -0
  170. package/components/editor/plugins/list/serialize.d.ts +3 -0
  171. package/components/editor/plugins/list/serialize.js +63 -0
  172. package/components/editor/plugins/list/utils.d.ts +6 -0
  173. package/components/editor/plugins/list/utils.js +24 -0
  174. package/components/editor/plugins/mark.d.ts +7 -0
  175. package/components/editor/plugins/mark.js +27 -0
  176. package/components/editor/plugins/render.d.ts +11 -0
  177. package/components/editor/plugins/render.js +54 -0
  178. package/components/editor/plugins/serialize.d.ts +10 -0
  179. package/components/editor/plugins/serialize.js +342 -0
  180. package/components/editor/plugins/size.d.ts +8 -0
  181. package/components/editor/plugins/size.js +47 -0
  182. package/components/editor/plugins/table.d.ts +21 -0
  183. package/components/editor/plugins/table.js +702 -0
  184. package/components/editor/plugins/video.d.ts +8 -0
  185. package/components/editor/plugins/video.js +40 -0
  186. package/components/editor/toolbar.d.ts +2 -0
  187. package/components/editor/toolbar.js +20 -0
  188. package/components/editor/types.d.ts +194 -0
  189. package/components/editor/types.js +55 -0
  190. package/components/editor/usePopoverContainer.d.ts +8 -0
  191. package/components/editor/usePopoverContainer.js +31 -0
  192. package/components/editor/utils.d.ts +77 -0
  193. package/components/editor/utils.js +165 -0
  194. package/components/field/components/checkbox-group/checkbox-group.vue.js +1 -1
  195. package/components/field/components/editor/editor.d.ts +16 -0
  196. package/components/field/components/editor/editor.vue.d.ts +4 -0
  197. package/components/field/components/editor/editor.vue.js +21 -0
  198. package/components/field/components/password/password.vue.js +1 -1
  199. package/components/field/components/select/select.vue.js +1 -1
  200. package/components/field/field.api.d.ts +3 -0
  201. package/components/field/field.api.js +18 -16
  202. package/components/file-card/file-card.js +1 -1
  203. package/components/form/form-item.vue.js +2 -2
  204. package/components/form/form.api.d.ts +3 -3
  205. package/components/form/form.api.js +1 -1
  206. package/components/form/form.d.ts +6 -6
  207. package/components/form/index.d.ts +17 -17
  208. package/components/form/useBubbleTemplate.js +1 -1
  209. package/components/form-dialog/form-dialog.api.js +1 -1
  210. package/components/form-dialog/form-dialog.d.ts +5 -5
  211. package/components/form-drawer/form-drawer.d.ts +5 -5
  212. package/components/form-drawer/index.d.ts +15 -15
  213. package/components/form-group/form-group.js +1 -1
  214. package/components/form-list/index.d.ts +5 -5
  215. package/components/form-query/form-query.d.ts +5 -5
  216. package/components/form-query/form-query.js +1 -1
  217. package/components/form-query/index.d.ts +15 -15
  218. package/components/highlight/highlight.api.d.ts +30 -12
  219. package/components/highlight/highlight.api.js +3 -19
  220. package/components/highlight/highlight.d.ts +7 -3
  221. package/components/highlight/highlight.js +6 -6
  222. package/components/highlight/highlight.style.d.ts +1 -0
  223. package/components/highlight/highlight.style.js +288 -54
  224. package/components/highlight/index.d.ts +15 -6
  225. package/components/highlight/index.js +1 -1
  226. package/components/icon/icon.api.d.ts +11 -0
  227. package/components/icon/icon.api.js +10 -0
  228. package/components/icon/icon.d.ts +16 -5
  229. package/components/icon/icon.js +59 -0
  230. package/components/icon/icon.style.d.ts +4 -0
  231. package/components/icon/{style/index.js → icon.style.js} +1 -1
  232. package/components/icon/index.d.ts +24 -7
  233. package/components/icon/index.js +2 -1
  234. package/components/iconify-icon/iconify-icon.api.d.ts +15 -0
  235. package/components/iconify-icon/iconify-icon.api.js +20 -0
  236. package/components/iconify-icon/iconify-icon.d.ts +21 -6
  237. package/components/iconify-icon/iconify-icon.js +22 -8
  238. package/components/iconify-icon/index.d.ts +37 -4
  239. package/components/iconify-icon/index.js +2 -2
  240. package/components/index.d.ts +1 -0
  241. package/components/index.js +5 -4
  242. package/components/input-number-range/index.d.ts +39 -30
  243. package/components/input-number-range/input-number-range.api.d.ts +10 -10
  244. package/components/input-number-range/input-number-range.d.ts +23 -20
  245. package/components/input-number-range/input-number-range.js +1 -1
  246. package/components/snug-menu/snug-menu-item.vue.js +2 -2
  247. package/components/stack-dialog/index.d.ts +3 -3
  248. package/components/stack-dialog/stack-dialog.d.ts +1 -1
  249. package/components/svg-icon/index.d.ts +16 -4
  250. package/components/svg-icon/index.js +2 -1
  251. package/components/svg-icon/svg-icon.api.d.ts +7 -0
  252. package/components/svg-icon/svg-icon.api.js +7 -0
  253. package/components/svg-icon/svg-icon.d.ts +10 -3
  254. package/components/svg-icon/svg-icon.js +18 -0
  255. package/components/table/index.d.ts +12 -12
  256. package/components/table/table-column/table-column.js +1 -1
  257. package/components/table/table-export/table-export.d.ts +5 -5
  258. package/components/table/table-query/table-query.d.ts +5 -5
  259. package/components/table/table.d.ts +5 -5
  260. package/components/table/table.js +1 -1
  261. package/components/table/table.vue.d.ts +7 -7
  262. package/components/table/table.vue.js +5 -5
  263. package/components/table-action/item.js +1 -1
  264. package/components/toggle/toggle.js +1 -1
  265. package/components/upload/index.d.ts +3 -4
  266. package/components/upload/index.js +0 -1
  267. package/components/upload/upload-item.js +1 -1
  268. package/components/upload/upload.api.d.ts +2 -2
  269. package/components/upload/upload.d.ts +2 -2
  270. package/components/upload/upload.js +4 -4
  271. package/components/video-card/video-card.js +1 -1
  272. package/config/root-config-provider.js +2 -2
  273. package/{components/upload-context.d.ts → config/upload.d.ts} +2 -2
  274. package/{components/upload-context.js → config/upload.js} +3 -3
  275. package/hooks/index.d.ts +2 -0
  276. package/hooks/index.js +2 -0
  277. package/hooks/useObjectUrl.d.ts +2 -0
  278. package/hooks/useObjectUrl.js +27 -0
  279. package/hooks/useSingleUpload.d.ts +15 -0
  280. package/hooks/useSingleUpload.js +64 -0
  281. package/layout/layout-menu/style/index.js +1 -1
  282. package/locale/lang/ar.d.ts +2 -0
  283. package/locale/lang/ar.js +3 -1
  284. package/locale/lang/en.d.ts +2 -0
  285. package/locale/lang/en.js +3 -1
  286. package/locale/lang/zh-cn.d.ts +2 -0
  287. package/locale/lang/zh-cn.js +3 -1
  288. package/package.json +11 -7
  289. package/utils/array.d.ts +1 -1
  290. package/utils/browser.d.ts +1 -0
  291. package/utils/browser.js +3 -2
  292. package/utils/file.d.ts +5 -0
  293. package/utils/file.js +24 -1
  294. package/utils/index.js +2 -2
  295. package/utils/url.d.ts +4 -0
  296. package/utils/url.js +10 -0
  297. package/components/editor/components/button-group.vue.d.ts +0 -12
  298. package/components/editor/components/button-group.vue.js +0 -19
  299. package/components/editor/components/button.vue.d.ts +0 -17
  300. package/components/editor/components/button.vue.js +0 -35
  301. package/components/editor/components/color-picker/color-picker.vue.d.ts +0 -23
  302. package/components/editor/components/color-picker/color-picker.vue.js +0 -181
  303. package/components/editor/components/list/list.d.ts +0 -6
  304. package/components/editor/components/list/list.vue.d.ts +0 -11
  305. package/components/editor/components/list/list.vue.js +0 -51
  306. package/components/editor/components/picker/picker.vue.d.ts +0 -25
  307. package/components/editor/components/picker/picker.vue.js +0 -95
  308. package/components/editor/components/resize/resize.d.ts +0 -23
  309. package/components/editor/components/resize/resize.js +0 -88
  310. package/components/editor/components/resize/resize.vue.d.ts +0 -2
  311. package/components/editor/components/resize/resize.vue.js +0 -204
  312. package/components/editor/components/select-button.vue.d.ts +0 -15
  313. package/components/editor/components/select-button.vue.js +0 -46
  314. package/components/editor/components/select.vue.d.ts +0 -14
  315. package/components/editor/components/select.vue.js +0 -67
  316. package/components/editor/components/split-button.vue.d.ts +0 -22
  317. package/components/editor/components/split-button.vue.js +0 -69
  318. package/components/editor/components/table-toolbar/table-toolbar.style.d.ts +0 -4
  319. package/components/editor/components/table-toolbar/table-toolbar.style.js +0 -22
  320. package/components/editor/components/table-toolbar/table-toolbar.vue.d.ts +0 -2
  321. package/components/editor/components/table-toolbar/table-toolbar.vue.js +0 -182
  322. package/components/editor/components/toolbar/formats/align.vue.d.ts +0 -5
  323. package/components/editor/components/toolbar/formats/align.vue.js +0 -52
  324. package/components/editor/components/toolbar/formats/background.vue.d.ts +0 -2
  325. package/components/editor/components/toolbar/formats/background.vue.js +0 -70
  326. package/components/editor/components/toolbar/formats/blockquote.vue.d.ts +0 -2
  327. package/components/editor/components/toolbar/formats/blockquote.vue.js +0 -39
  328. package/components/editor/components/toolbar/formats/bold.vue.d.ts +0 -2
  329. package/components/editor/components/toolbar/formats/bold.vue.js +0 -39
  330. package/components/editor/components/toolbar/formats/clean.vue.d.ts +0 -2
  331. package/components/editor/components/toolbar/formats/clean.vue.js +0 -26
  332. package/components/editor/components/toolbar/formats/code-block.vue.d.ts +0 -2
  333. package/components/editor/components/toolbar/formats/code-block.vue.js +0 -39
  334. package/components/editor/components/toolbar/formats/code.vue.d.ts +0 -2
  335. package/components/editor/components/toolbar/formats/code.vue.js +0 -39
  336. package/components/editor/components/toolbar/formats/color.vue.d.ts +0 -2
  337. package/components/editor/components/toolbar/formats/color.vue.js +0 -69
  338. package/components/editor/components/toolbar/formats/font.vue.d.ts +0 -2
  339. package/components/editor/components/toolbar/formats/font.vue.js +0 -59
  340. package/components/editor/components/toolbar/formats/formula.d.ts +0 -4
  341. package/components/editor/components/toolbar/formats/formula.vue.d.ts +0 -2
  342. package/components/editor/components/toolbar/formats/formula.vue.js +0 -154
  343. package/components/editor/components/toolbar/formats/header.vue.d.ts +0 -2
  344. package/components/editor/components/toolbar/formats/header.vue.js +0 -68
  345. package/components/editor/components/toolbar/formats/image.vue.d.ts +0 -2
  346. package/components/editor/components/toolbar/formats/image.vue.js +0 -26
  347. package/components/editor/components/toolbar/formats/indent.vue.d.ts +0 -5
  348. package/components/editor/components/toolbar/formats/indent.vue.js +0 -36
  349. package/components/editor/components/toolbar/formats/italic.vue.d.ts +0 -2
  350. package/components/editor/components/toolbar/formats/italic.vue.js +0 -39
  351. package/components/editor/components/toolbar/formats/link.vue.d.ts +0 -2
  352. package/components/editor/components/toolbar/formats/link.vue.js +0 -218
  353. package/components/editor/components/toolbar/formats/list.vue.d.ts +0 -5
  354. package/components/editor/components/toolbar/formats/list.vue.js +0 -50
  355. package/components/editor/components/toolbar/formats/script.vue.d.ts +0 -5
  356. package/components/editor/components/toolbar/formats/script.vue.js +0 -50
  357. package/components/editor/components/toolbar/formats/size-delta.vue.d.ts +0 -5
  358. package/components/editor/components/toolbar/formats/size-delta.vue.js +0 -79
  359. package/components/editor/components/toolbar/formats/size.vue.d.ts +0 -2
  360. package/components/editor/components/toolbar/formats/size.vue.js +0 -56
  361. package/components/editor/components/toolbar/formats/source.vue.d.ts +0 -2
  362. package/components/editor/components/toolbar/formats/source.vue.js +0 -78
  363. package/components/editor/components/toolbar/formats/strike.vue.d.ts +0 -2
  364. package/components/editor/components/toolbar/formats/strike.vue.js +0 -39
  365. package/components/editor/components/toolbar/formats/strikethrough.vue.d.ts +0 -2
  366. package/components/editor/components/toolbar/formats/strikethrough.vue.js +0 -39
  367. package/components/editor/components/toolbar/formats/table.style.d.ts +0 -4
  368. package/components/editor/components/toolbar/formats/table.vue.d.ts +0 -2
  369. package/components/editor/components/toolbar/formats/table.vue.js +0 -100
  370. package/components/editor/components/toolbar/formats/underline.vue.d.ts +0 -2
  371. package/components/editor/components/toolbar/formats/underline.vue.js +0 -39
  372. package/components/editor/components/toolbar/formats/video.vue.d.ts +0 -2
  373. package/components/editor/components/toolbar/formats/video.vue.js +0 -123
  374. package/components/editor/components/toolbar/toolbar.d.ts +0 -36
  375. package/components/editor/components/toolbar/toolbar.js +0 -137
  376. package/components/editor/components/toolbar/toolbar.vue.d.ts +0 -3
  377. package/components/editor/components/toolbar/toolbar.vue.js +0 -130
  378. package/components/editor/components/toolbar/toolbarContext.d.ts +0 -8
  379. package/components/editor/components/toolbar/toolbarContext.js +0 -3
  380. package/components/editor/formats/align.d.ts +0 -2
  381. package/components/editor/formats/align.js +0 -6
  382. package/components/editor/formats/font.d.ts +0 -7
  383. package/components/editor/formats/font.js +0 -36
  384. package/components/editor/formats/formula.d.ts +0 -9
  385. package/components/editor/formats/formula.js +0 -29
  386. package/components/editor/formats/image.d.ts +0 -13
  387. package/components/editor/formats/image.js +0 -46
  388. package/components/editor/formats/indent.d.ts +0 -10
  389. package/components/editor/formats/indent.js +0 -37
  390. package/components/editor/formats/kbd.d.ts +0 -7
  391. package/components/editor/formats/kbd.js +0 -13
  392. package/components/editor/formats/link.d.ts +0 -28
  393. package/components/editor/formats/link.js +0 -51
  394. package/components/editor/formats/list.d.ts +0 -13
  395. package/components/editor/formats/list.js +0 -57
  396. package/components/editor/formats/size.d.ts +0 -3
  397. package/components/editor/formats/size.js +0 -9
  398. package/components/editor/formats/video.d.ts +0 -16
  399. package/components/editor/formats/video.js +0 -44
  400. package/components/editor/modules/custom-list.d.ts +0 -5
  401. package/components/editor/modules/custom-list.js +0 -23
  402. package/components/editor/modules/image-uploader/formats/image-loading.d.ts +0 -16
  403. package/components/editor/modules/image-uploader/formats/image-loading.js +0 -31
  404. package/components/editor/modules/image-uploader/formats/image-loading.style.d.ts +0 -2
  405. package/components/editor/modules/image-uploader/formats/image-loading.style.js +0 -46
  406. package/components/editor/modules/image-uploader/image-uploader.d.ts +0 -18
  407. package/components/editor/modules/image-uploader/image-uploader.js +0 -134
  408. package/components/editor/modules/syntax/index.d.ts +0 -2
  409. package/components/editor/modules/syntax/index.js +0 -1
  410. package/components/editor/modules/syntax/syntaxOptions.d.ts +0 -8
  411. package/components/editor/modules/syntax/syntaxOptions.js +0 -23
  412. package/components/editor/quill.d.ts +0 -1
  413. package/components/editor/quill.js +0 -33
  414. package/components/editor/quillContext.d.ts +0 -6
  415. package/components/editor/quillContext.js +0 -3
  416. package/components/icon/icon.vue.d.ts +0 -13
  417. package/components/icon/icon.vue.js +0 -76
  418. package/components/iconify-icon/iconify-icon.vue.d.ts +0 -3
  419. package/components/iconify-icon/iconify-icon.vue.js +0 -38
  420. package/components/svg-icon/svg-icon.vue.d.ts +0 -3
  421. package/components/svg-icon/svg-icon.vue.js +0 -29
  422. /package/components/{icon/style/index.d.ts → editor/contents/content-formula.style.d.ts} +0 -0
  423. /package/components/editor/{components/color-picker/color-picker.d.ts → formats/color-picker.api.d.ts} +0 -0
  424. /package/components/editor/{components/picker/picker.d.ts → formats/picker.api.d.ts} +0 -0
  425. /package/components/editor/{components/picker/picker.js → formats/picker.api.js} +0 -0
  426. /package/components/editor/{components/color-picker → hooks}/useHistoryColor.d.ts +0 -0
  427. /package/components/{editor/components/list/list.js → field/components/editor/editor.js} +0 -0
@@ -0,0 +1,9 @@
1
+ import { Editor } from 'slate-vue3/core';
2
+ import { type HeadingParagraphType } from '../types';
3
+ declare module 'slate-vue3/core' {
4
+ interface BaseEditor {
5
+ formatHeading: (value: HeadingParagraphType) => void;
6
+ getActiveHeadingType: () => HeadingParagraphType;
7
+ }
8
+ }
9
+ export declare function withHeading(editor: Editor): import("../types").CustomEditor;
@@ -0,0 +1,70 @@
1
+ import { Editor, Path } from 'slate-vue3/core';
2
+ import { isNormalBlock, isHeading } from '../utils.js';
3
+
4
+ function getActiveHeadingType(editor) {
5
+ if (!editor.selection) return "paragraph";
6
+ const nodes = editor.nodes({
7
+ at: editor.edges(editor.selection)[0],
8
+ match: isHeading
9
+ });
10
+ const { done, value } = nodes.next();
11
+ return done ? "paragraph" : value[0].type;
12
+ }
13
+ function formatHeading(editor, value) {
14
+ if (!editor.selection) return;
15
+ const activeType = getActiveHeadingType(editor);
16
+ if (activeType === value) {
17
+ editor.setNodes(
18
+ {
19
+ type: "paragraph"
20
+ },
21
+ { match: isNormalBlock }
22
+ );
23
+ } else {
24
+ editor.setNodes(
25
+ {
26
+ type: value
27
+ },
28
+ { match: isNormalBlock }
29
+ );
30
+ }
31
+ }
32
+ function insertBreak(editor) {
33
+ const [match] = editor.nodes({
34
+ match: isHeading
35
+ });
36
+ if (match) {
37
+ const [, path] = match;
38
+ const isAtEnd = Editor.isEnd(editor, editor.selection.focus, path);
39
+ if (isAtEnd) {
40
+ editor.insertNodes(
41
+ {
42
+ type: "paragraph",
43
+ children: [{ text: "" }]
44
+ },
45
+ {
46
+ at: Path.next(path)
47
+ }
48
+ );
49
+ editor.select(Path.next(path));
50
+ return true;
51
+ }
52
+ }
53
+ }
54
+ function withHeading(editor) {
55
+ const { insertBreak: srcInsertBreak } = editor;
56
+ editor.formatHeading = (value) => {
57
+ formatHeading(editor, value);
58
+ };
59
+ editor.insertBreak = () => {
60
+ if (!insertBreak(editor)) {
61
+ srcInsertBreak();
62
+ }
63
+ };
64
+ editor.getActiveHeadingType = () => {
65
+ return getActiveHeadingType(editor);
66
+ };
67
+ return editor;
68
+ }
69
+
70
+ export { withHeading };
@@ -0,0 +1,7 @@
1
+ import { Descendant, Editor } from 'slate-vue3/core';
2
+ declare module 'slate-vue3/core' {
3
+ interface BaseEditor {
4
+ getInsertFragment: () => Descendant[];
5
+ }
6
+ }
7
+ export declare function withHtml(editor: Editor): import("../types").CustomEditor;
@@ -0,0 +1,30 @@
1
+ function isTransferCode(data) {
2
+ for (const type of data.types) {
3
+ if (type === "text/rtf" || type.includes("code") || type.includes("editor")) {
4
+ return true;
5
+ }
6
+ }
7
+ }
8
+ function insertData(editor, data) {
9
+ if (editor.insertFragmentData(data)) {
10
+ return true;
11
+ }
12
+ if (isTransferCode(data)) return;
13
+ const html = data.getData("text/html");
14
+ if (html) {
15
+ const fragment = editor.deserialize(html);
16
+ editor.insertFragment(fragment);
17
+ return true;
18
+ }
19
+ }
20
+ function withHtml(editor) {
21
+ const { insertData: srcInsertData } = editor;
22
+ editor.insertData = (data) => {
23
+ if (!insertData(editor, data)) {
24
+ srcInsertData(data);
25
+ }
26
+ };
27
+ return editor;
28
+ }
29
+
30
+ export { withHtml };
@@ -0,0 +1,8 @@
1
+ import { Editor } from 'slate-vue3/core';
2
+ import type { CustomEditor } from '../types';
3
+ declare module 'slate-vue3/core' {
4
+ interface BaseEditor {
5
+ insertImage: (url: string, file?: File, width?: number | string, height?: number | string) => void;
6
+ }
7
+ }
8
+ export declare function withImage(editor: Editor): CustomEditor;
@@ -0,0 +1,63 @@
1
+ import { useInheritRef } from 'slate-vue3';
2
+ import { h } from 'vue';
3
+ import stdin_default from '../contents/content-image.js';
4
+ import { isImageUrl } from '../../../utils/file.js';
5
+
6
+ const insertImage = (editor, url, file, width, height) => {
7
+ const image = { type: "image", url, width, height, file, children: [{ text: "" }] };
8
+ editor.insertNodes(image);
9
+ editor.move();
10
+ };
11
+ function insertData(editor, data) {
12
+ const text = data.getData("text/plain");
13
+ const { files } = data;
14
+ if (files.length > 0) {
15
+ Array.from(files).forEach((file) => {
16
+ const [mime] = file.type.split("/");
17
+ if (mime === "image") {
18
+ insertImage(editor, "", file);
19
+ }
20
+ });
21
+ return true;
22
+ } else if (isImageUrl(text)) {
23
+ insertImage(editor, text);
24
+ return true;
25
+ }
26
+ }
27
+ function withImage(editor) {
28
+ const { isInline, isVoid, renderElement, insertData: srcInsertData } = editor;
29
+ editor.isInline = (element) => {
30
+ return element.type === "image" ? true : isInline(element);
31
+ };
32
+ editor.isVoid = (element) => {
33
+ return element.type === "image" ? true : isVoid(element);
34
+ };
35
+ editor.renderElement = (props) => {
36
+ const { attributes, children, element } = props;
37
+ if (element.type === "image") {
38
+ return h(
39
+ stdin_default,
40
+ {
41
+ ...useInheritRef(attributes),
42
+ url: element.url,
43
+ width: element.width,
44
+ height: element.height,
45
+ file: element.file
46
+ },
47
+ () => children
48
+ );
49
+ }
50
+ return renderElement(props);
51
+ };
52
+ editor.insertData = (data) => {
53
+ if (!insertData(editor, data)) {
54
+ srcInsertData(data);
55
+ }
56
+ };
57
+ editor.insertImage = (url, file, width, height) => {
58
+ insertImage(editor, url, file, width, height);
59
+ };
60
+ return editor;
61
+ }
62
+
63
+ export { withImage };
@@ -0,0 +1,7 @@
1
+ import { Editor } from 'slate-vue3/core';
2
+ declare module 'slate-vue3/core' {
3
+ interface BaseEditor {
4
+ formatIndent: (value: number) => void;
5
+ }
6
+ }
7
+ export declare function withIndent(editor: Editor): import("../types").CustomEditor;
@@ -0,0 +1,47 @@
1
+ import { Element } from 'slate-vue3/core';
2
+
3
+ const indentableElements = [
4
+ "paragraph",
5
+ "heading-one",
6
+ "heading-two",
7
+ "heading-three",
8
+ "heading-four",
9
+ "heading-five",
10
+ "heading-six",
11
+ "block-quote"
12
+ ];
13
+ function formatIndent(editor, value) {
14
+ if (!editor.selection) return;
15
+ const nodeEntries = [
16
+ ...editor.nodes({
17
+ match(node) {
18
+ return Element.isElement(node) && indentableElements.includes(node.type);
19
+ }
20
+ })
21
+ ];
22
+ for (const entry of nodeEntries) {
23
+ const element = entry[0];
24
+ const path = entry[1];
25
+ let indent = "indent" in element ? element.indent || 0 : 0;
26
+ indent += value;
27
+ if (indent < 0) {
28
+ indent = 0;
29
+ }
30
+ editor.setNodes(
31
+ {
32
+ indent
33
+ },
34
+ {
35
+ at: path
36
+ }
37
+ );
38
+ }
39
+ }
40
+ function withIndent(editor) {
41
+ editor.formatIndent = (value) => {
42
+ formatIndent(editor, value);
43
+ };
44
+ return editor;
45
+ }
46
+
47
+ export { withIndent };
@@ -0,0 +1,2 @@
1
+ import { Editor } from 'slate-vue3/core';
2
+ export declare function withDefaultPlugins(editor: Editor): import("../types").CustomEditor;
@@ -0,0 +1,50 @@
1
+ import { withKeyboard } from './keyboard.js';
2
+ import { withList } from './list/index.js';
3
+ import { withHeading } from './heading.js';
4
+ import { withFont } from './font.js';
5
+ import { withColor } from './color.js';
6
+ import { withBackground } from './background.js';
7
+ import { withSize } from './size.js';
8
+ import { withIndent } from './indent.js';
9
+ import { withMark } from './mark.js';
10
+ import { withBlockQuote } from './block-quote.js';
11
+ import { withAlign } from './align.js';
12
+ import { withClear } from './clear.js';
13
+ import { withSerialize } from './serialize.js';
14
+ import { withRender } from './render.js';
15
+ import { withLink } from './link.js';
16
+ import { withCodeBlock } from './code-block.js';
17
+ import { withImage } from './image.js';
18
+ import { withVideo } from './video.js';
19
+ import { withHtml } from './html.js';
20
+ import { withTable } from './table.js';
21
+ import { withFormula } from './formula.js';
22
+
23
+ const plugins = [
24
+ withKeyboard,
25
+ withRender,
26
+ withIndent,
27
+ withHtml,
28
+ withList,
29
+ withHeading,
30
+ withFont,
31
+ withColor,
32
+ withBackground,
33
+ withSize,
34
+ withMark,
35
+ withBlockQuote,
36
+ withAlign,
37
+ withClear,
38
+ withSerialize,
39
+ withLink,
40
+ withCodeBlock,
41
+ withImage,
42
+ withVideo,
43
+ withTable,
44
+ withFormula
45
+ ];
46
+ function withDefaultPlugins(editor) {
47
+ return plugins.reduce((editor2, plugin) => plugin(editor2), editor);
48
+ }
49
+
50
+ export { withDefaultPlugins };
@@ -0,0 +1,41 @@
1
+ import { Editor } from 'slate-vue3/core';
2
+ /**
3
+ * Hotkeys.
4
+ */
5
+ export declare const Hotkeys: {
6
+ isBold: (event: KeyboardEvent) => boolean;
7
+ isCompose: (event: KeyboardEvent) => boolean;
8
+ isMoveBackward: (event: KeyboardEvent) => boolean;
9
+ isMoveForward: (event: KeyboardEvent) => boolean;
10
+ isMoveUp: (event: KeyboardEvent) => boolean;
11
+ isMoveDown: (event: KeyboardEvent) => boolean;
12
+ isDeleteBackward: (event: KeyboardEvent) => boolean;
13
+ isDeleteForward: (event: KeyboardEvent) => boolean;
14
+ isDeleteLineBackward: (event: KeyboardEvent) => boolean;
15
+ isDeleteLineForward: (event: KeyboardEvent) => boolean;
16
+ isDeleteWordBackward: (event: KeyboardEvent) => boolean;
17
+ isDeleteWordForward: (event: KeyboardEvent) => boolean;
18
+ isExtendBackward: (event: KeyboardEvent) => boolean;
19
+ isExtendForward: (event: KeyboardEvent) => boolean;
20
+ isExtendLineBackward: (event: KeyboardEvent) => boolean;
21
+ isExtendLineForward: (event: KeyboardEvent) => boolean;
22
+ isItalic: (event: KeyboardEvent) => boolean;
23
+ isMoveLineBackward: (event: KeyboardEvent) => boolean;
24
+ isMoveLineForward: (event: KeyboardEvent) => boolean;
25
+ isMoveWordBackward: (event: KeyboardEvent) => boolean;
26
+ isMoveWordForward: (event: KeyboardEvent) => boolean;
27
+ isRedo: (event: KeyboardEvent) => boolean;
28
+ isSoftBreak: (event: KeyboardEvent) => boolean;
29
+ isSplitBlock: (event: KeyboardEvent) => boolean;
30
+ isTransposeCharacter: (event: KeyboardEvent) => boolean;
31
+ isUndo: (event: KeyboardEvent) => boolean;
32
+ isUnderline: (event: KeyboardEvent) => boolean;
33
+ isIndent: (event: KeyboardEvent) => boolean;
34
+ isOutdent: (event: KeyboardEvent) => boolean;
35
+ };
36
+ declare module 'slate-vue3/core' {
37
+ interface BaseEditor {
38
+ onKeydown: (event: KeyboardEvent) => void;
39
+ }
40
+ }
41
+ export declare function withKeyboard(editor: Editor): import("../types").CustomEditor;
@@ -0,0 +1,120 @@
1
+ import { isHotkey } from 'is-hotkey';
2
+ import { IS_APPLE } from '../../../utils/browser.js';
3
+
4
+ const HOTKEYS = {
5
+ bold: "mod+b",
6
+ compose: ["down", "left", "right", "up", "backspace", "enter"],
7
+ moveBackward: "left",
8
+ moveForward: "right",
9
+ moveUp: "up",
10
+ moveDown: "down",
11
+ moveWordBackward: "ctrl+left",
12
+ moveWordForward: "ctrl+right",
13
+ deleteBackward: "shift?+backspace",
14
+ deleteForward: "shift?+delete",
15
+ extendBackward: "shift+left",
16
+ extendForward: "shift+right",
17
+ italic: "mod+i",
18
+ insertSoftBreak: "shift+enter",
19
+ splitBlock: "enter",
20
+ undo: "mod+z",
21
+ underline: "mod+u",
22
+ indent: "tab",
23
+ outdent: "shift+tab"
24
+ };
25
+ const APPLE_HOTKEYS = {
26
+ moveLineBackward: "opt+up",
27
+ moveLineForward: "opt+down",
28
+ moveWordBackward: "opt+left",
29
+ moveWordForward: "opt+right",
30
+ deleteBackward: ["ctrl+backspace", "ctrl+h"],
31
+ deleteForward: ["ctrl+delete", "ctrl+d"],
32
+ deleteLineBackward: "cmd+shift?+backspace",
33
+ deleteLineForward: ["cmd+shift?+delete", "ctrl+k"],
34
+ deleteWordBackward: "opt+shift?+backspace",
35
+ deleteWordForward: "opt+shift?+delete",
36
+ extendLineBackward: "opt+shift+up",
37
+ extendLineForward: "opt+shift+down",
38
+ redo: "cmd+shift+z",
39
+ transposeCharacter: "ctrl+t"
40
+ };
41
+ const WINDOWS_HOTKEYS = {
42
+ deleteWordBackward: "ctrl+shift?+backspace",
43
+ deleteWordForward: "ctrl+shift?+delete",
44
+ redo: ["ctrl+y", "ctrl+shift+z"]
45
+ };
46
+ const create = (key) => {
47
+ const generic = HOTKEYS[key];
48
+ const apple = APPLE_HOTKEYS[key];
49
+ const windows = WINDOWS_HOTKEYS[key];
50
+ const isGeneric = generic && isHotkey(generic);
51
+ const isApple = apple && isHotkey(apple);
52
+ const isWindows = windows && isHotkey(windows);
53
+ return (event) => {
54
+ if (isGeneric && isGeneric(event)) return true;
55
+ if (IS_APPLE && isApple && isApple(event)) return true;
56
+ if (!IS_APPLE && isWindows && isWindows(event)) return true;
57
+ return false;
58
+ };
59
+ };
60
+ const Hotkeys = {
61
+ isBold: create("bold"),
62
+ isCompose: create("compose"),
63
+ isMoveBackward: create("moveBackward"),
64
+ isMoveForward: create("moveForward"),
65
+ isMoveUp: create("moveUp"),
66
+ isMoveDown: create("moveDown"),
67
+ isDeleteBackward: create("deleteBackward"),
68
+ isDeleteForward: create("deleteForward"),
69
+ isDeleteLineBackward: create("deleteLineBackward"),
70
+ isDeleteLineForward: create("deleteLineForward"),
71
+ isDeleteWordBackward: create("deleteWordBackward"),
72
+ isDeleteWordForward: create("deleteWordForward"),
73
+ isExtendBackward: create("extendBackward"),
74
+ isExtendForward: create("extendForward"),
75
+ isExtendLineBackward: create("extendLineBackward"),
76
+ isExtendLineForward: create("extendLineForward"),
77
+ isItalic: create("italic"),
78
+ isMoveLineBackward: create("moveLineBackward"),
79
+ isMoveLineForward: create("moveLineForward"),
80
+ isMoveWordBackward: create("moveWordBackward"),
81
+ isMoveWordForward: create("moveWordForward"),
82
+ isRedo: create("redo"),
83
+ isSoftBreak: create("insertSoftBreak"),
84
+ isSplitBlock: create("splitBlock"),
85
+ isTransposeCharacter: create("transposeCharacter"),
86
+ isUndo: create("undo"),
87
+ isUnderline: create("underline"),
88
+ isIndent: create("indent"),
89
+ isOutdent: create("outdent")
90
+ };
91
+ function onKeydown(editor, event) {
92
+ if (Hotkeys.isBold(event)) {
93
+ event.preventDefault();
94
+ return editor.formatMark("bold");
95
+ }
96
+ if (Hotkeys.isItalic(event)) {
97
+ event.preventDefault();
98
+ return editor.formatMark("italic");
99
+ }
100
+ if (Hotkeys.isUnderline(event)) {
101
+ event.preventDefault();
102
+ return editor.formatMark("underline");
103
+ }
104
+ if (Hotkeys.isIndent(event)) {
105
+ event.preventDefault();
106
+ return editor.formatIndent(1);
107
+ }
108
+ if (Hotkeys.isOutdent(event)) {
109
+ event.preventDefault();
110
+ return editor.formatIndent(-1);
111
+ }
112
+ }
113
+ function withKeyboard(editor) {
114
+ editor.onKeydown = (event) => {
115
+ onKeydown(editor, event);
116
+ };
117
+ return editor;
118
+ }
119
+
120
+ export { Hotkeys, withKeyboard };
@@ -0,0 +1,8 @@
1
+ import { Editor, Location } from 'slate-vue3/core';
2
+ declare module 'slate-vue3/core' {
3
+ interface BaseEditor {
4
+ formatLink: (url: string, target: string, text: string) => void;
5
+ unwrapLink: (at?: Location) => void;
6
+ }
7
+ }
8
+ export declare function withLink(editor: Editor): import("../types").CustomEditor;
@@ -0,0 +1,56 @@
1
+ import { Element } from 'slate-vue3/core';
2
+ import { useInheritRef } from 'slate-vue3';
3
+ import { h } from 'vue';
4
+ import stdin_default from '../contents/content-link.js';
5
+
6
+ function unwrapLink(editor, at) {
7
+ editor.unwrapNodes({
8
+ match: (n) => Element.isElement(n) && n.type === "link",
9
+ at
10
+ });
11
+ }
12
+ function wrapLink(editor, url, target, text) {
13
+ const link = {
14
+ type: "link",
15
+ url,
16
+ target,
17
+ children: [{ text }]
18
+ };
19
+ editor.delete();
20
+ editor.insertNodes(link);
21
+ }
22
+ function formatLink(editor, url, target, text) {
23
+ unwrapLink(editor);
24
+ wrapLink(editor, url, target, text);
25
+ }
26
+ function withLink(editor) {
27
+ const { isInline, renderElement } = editor;
28
+ editor.isInline = (element) => {
29
+ return element.type === "link" ? true : isInline(element);
30
+ };
31
+ editor.renderElement = (props) => {
32
+ const { attributes, children, element } = props;
33
+ if (element.type === "link") {
34
+ return h(
35
+ stdin_default,
36
+ {
37
+ ...useInheritRef(attributes),
38
+ url: element.url,
39
+ target: element.target,
40
+ element
41
+ },
42
+ () => children
43
+ );
44
+ }
45
+ return renderElement(props);
46
+ };
47
+ editor.formatLink = (url, target, text) => {
48
+ formatLink(editor, url, target, text);
49
+ };
50
+ editor.unwrapLink = (at) => {
51
+ unwrapLink(editor, at);
52
+ };
53
+ return editor;
54
+ }
55
+
56
+ export { withLink };
@@ -0,0 +1,3 @@
1
+ import { Descendant } from 'slate-vue3/core';
2
+ import { BulletedListElement, NumberedListElement } from '../../types';
3
+ export declare function deserializeList(node: HTMLUListElement | HTMLOListElement, deserialize: (node: Node, markAttributes?: {}) => Descendant | null | Descendant[]): BulletedListElement | NumberedListElement;
@@ -0,0 +1,106 @@
1
+ import { tagToElementTypeMap } from '../../types.js';
2
+ import { LIST_MAX_LEVEL } from './utils.js';
3
+ import { toArray } from '../../../../utils/array.js';
4
+
5
+ function deserializeListItemLike(node, deserialize) {
6
+ const textChildren = [];
7
+ const listChildren = [];
8
+ let listType = "";
9
+ for (const childNode of node.childNodes) {
10
+ if (childNode instanceof HTMLUListElement || childNode instanceof HTMLOListElement) {
11
+ if (!listType) {
12
+ listType = tagToElementTypeMap[childNode.tagName];
13
+ }
14
+ listChildren.push(...deserializeListLike(childNode, deserialize).children);
15
+ } else {
16
+ const result = deserialize(childNode);
17
+ if (Array.isArray(result)) {
18
+ textChildren.push(...result);
19
+ } else if (result) {
20
+ textChildren.push(result);
21
+ }
22
+ }
23
+ }
24
+ if (textChildren.length === 0) {
25
+ textChildren.push({ text: "" });
26
+ }
27
+ const children = [
28
+ {
29
+ type: "list-item-text-like",
30
+ children: textChildren
31
+ }
32
+ ];
33
+ if (listChildren.length > 0) {
34
+ children[1] = {
35
+ type: "list-like",
36
+ subType: listType,
37
+ children: listChildren
38
+ };
39
+ }
40
+ return {
41
+ type: "list-item-like",
42
+ children
43
+ };
44
+ }
45
+ function deserializeListLike(node, deserialize) {
46
+ const children = [];
47
+ for (const childNode of node.childNodes) {
48
+ if (childNode instanceof HTMLLIElement) {
49
+ children.push(deserializeListItemLike(childNode, deserialize));
50
+ } else if (childNode instanceof HTMLUListElement || childNode instanceof HTMLOListElement) {
51
+ children.push({
52
+ type: "list-item-like",
53
+ children: [
54
+ {
55
+ type: "list-item-text-like",
56
+ children: [{ text: "" }]
57
+ },
58
+ deserializeListLike(childNode, deserialize)
59
+ ]
60
+ });
61
+ } else {
62
+ const result = deserialize(childNode);
63
+ if (result) {
64
+ children.push({
65
+ type: "list-item-like",
66
+ children: [
67
+ {
68
+ type: "list-item-text-like",
69
+ children: toArray(result)
70
+ }
71
+ ]
72
+ });
73
+ }
74
+ }
75
+ }
76
+ return {
77
+ type: "list-like",
78
+ subType: tagToElementTypeMap[node.tagName],
79
+ children
80
+ };
81
+ }
82
+ function flatList(list, level = 0) {
83
+ return list.children.map(({ children: [text, subList] }) => {
84
+ const item = [
85
+ {
86
+ type: "list-item",
87
+ listType: list.subType,
88
+ level: Math.min(level, LIST_MAX_LEVEL - 1),
89
+ children: text.children
90
+ }
91
+ ];
92
+ if (subList) {
93
+ item.push(...flatList(subList, level + 1));
94
+ }
95
+ return item;
96
+ }).flat(1);
97
+ }
98
+ function deserializeList(node, deserialize) {
99
+ const listLike = deserializeListLike(node, deserialize);
100
+ return {
101
+ type: tagToElementTypeMap[node.tagName],
102
+ children: flatList(listLike)
103
+ };
104
+ }
105
+
106
+ export { deserializeList };
@@ -0,0 +1,3 @@
1
+ import { Editor } from 'slate-vue3/core';
2
+ import { type ListType } from '../../types';
3
+ export declare function formatList(editor: Editor, value: ListType): void;