@maketribe/ms-app 3.2.24 → 3.2.26

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 (451) hide show
  1. package/dist/cjs/assets/iconfonts/iconfont.js +1 -1
  2. package/dist/cjs/assets/iconfonts/iconfont.js.map +1 -1
  3. package/dist/cjs/components/basic/doc-editor/core/{element-module.js → element-block.js} +31 -12
  4. package/dist/cjs/components/basic/doc-editor/core/element-block.js.map +1 -0
  5. package/dist/cjs/components/basic/doc-editor/core/index.js +12 -6
  6. package/dist/cjs/components/basic/doc-editor/core/index.js.map +1 -1
  7. package/dist/cjs/components/basic/doc-editor/core/utils.js.map +1 -1
  8. package/dist/cjs/components/basic/doc-editor/editor.vue.js +11 -4
  9. package/dist/cjs/components/basic/doc-editor/editor.vue.js.map +1 -1
  10. package/dist/cjs/components/basic/doc-editor/index.js.map +1 -1
  11. package/dist/cjs/components/basic/doc-editor/plugins/{DecoratorModuleToolbarPlugin → ElementBlockSelectionPlugin}/index.vue.js +8 -8
  12. package/dist/cjs/components/basic/doc-editor/plugins/ElementBlockSelectionPlugin/index.vue.js.map +1 -0
  13. package/dist/cjs/components/basic/doc-editor/plugins/GridPlugin/GridNode.js +164 -0
  14. package/dist/cjs/components/basic/doc-editor/plugins/GridPlugin/GridNode.js.map +1 -0
  15. package/dist/cjs/components/basic/doc-editor/plugins/GridPlugin/ImageTextGridNode.js +89 -0
  16. package/dist/cjs/components/basic/doc-editor/plugins/GridPlugin/ImageTextGridNode.js.map +1 -0
  17. package/dist/cjs/components/basic/doc-editor/plugins/GridPlugin/LayoutGridNode.js +89 -0
  18. package/dist/cjs/components/basic/doc-editor/plugins/GridPlugin/LayoutGridNode.js.map +1 -0
  19. package/dist/cjs/components/basic/doc-editor/plugins/GridPlugin/ModuleGridNode.js +115 -0
  20. package/dist/cjs/components/basic/doc-editor/plugins/GridPlugin/ModuleGridNode.js.map +1 -0
  21. package/dist/cjs/components/basic/doc-editor/plugins/GridPlugin/TextGridNode.js +83 -0
  22. package/dist/cjs/components/basic/doc-editor/plugins/GridPlugin/TextGridNode.js.map +1 -0
  23. package/dist/cjs/components/basic/doc-editor/plugins/GridPlugin/index.vue.js +143 -0
  24. package/dist/cjs/components/basic/doc-editor/plugins/GridPlugin/index.vue.js.map +1 -0
  25. package/dist/cjs/components/basic/doc-editor/plugins/GridPlugin/utils.js +33 -0
  26. package/dist/cjs/components/basic/doc-editor/plugins/GridPlugin/utils.js.map +1 -0
  27. package/dist/cjs/components/basic/doc-editor/plugins/ImagePlugin/ImageNode.js +18 -24
  28. package/dist/cjs/components/basic/doc-editor/plugins/ImagePlugin/ImageNode.js.map +1 -1
  29. package/dist/cjs/components/basic/doc-editor/plugins/ImagePlugin/index.vue.js +18 -14
  30. package/dist/cjs/components/basic/doc-editor/plugins/ImagePlugin/index.vue.js.map +1 -1
  31. package/dist/cjs/components/basic/doc-editor/plugins/ImagePlugin/utils.js +66 -39
  32. package/dist/cjs/components/basic/doc-editor/plugins/ImagePlugin/utils.js.map +1 -1
  33. package/dist/cjs/components/basic/doc-editor/plugins/ModulePlugin/ModuleBlockNode.js +45 -30
  34. package/dist/cjs/components/basic/doc-editor/plugins/ModulePlugin/ModuleBlockNode.js.map +1 -1
  35. package/dist/cjs/components/basic/doc-editor/plugins/ModulePlugin/composables.js +2 -2
  36. package/dist/cjs/components/basic/doc-editor/plugins/ModulePlugin/composables.js.map +1 -1
  37. package/dist/cjs/components/basic/doc-editor/plugins/ModulePlugin/index.vue.js +45 -108
  38. package/dist/cjs/components/basic/doc-editor/plugins/ModulePlugin/index.vue.js.map +1 -1
  39. package/dist/cjs/components/basic/doc-editor/plugins/ModulePlugin/utils.js +3 -14
  40. package/dist/cjs/components/basic/doc-editor/plugins/ModulePlugin/utils.js.map +1 -1
  41. package/dist/cjs/components/basic/doc-editor/plugins/ToolbarPlugin/ContentStyleTool.vue.js +10 -1
  42. package/dist/cjs/components/basic/doc-editor/plugins/ToolbarPlugin/ContentStyleTool.vue.js.map +1 -1
  43. package/dist/cjs/components/basic/doc-editor/plugins/ToolbarPlugin/FontStyleTool.vue.js +26 -0
  44. package/dist/cjs/components/basic/doc-editor/plugins/ToolbarPlugin/FontStyleTool.vue.js.map +1 -1
  45. package/dist/cjs/components/basic/doc-editor/plugins/ToolbarPlugin/PreviewToolbar.vue.js +48 -34
  46. package/dist/cjs/components/basic/doc-editor/plugins/ToolbarPlugin/PreviewToolbar.vue.js.map +1 -1
  47. package/dist/cjs/components/basic/doc-editor/plugins/ToolbarPlugin/index.vue.js +43 -8
  48. package/dist/cjs/components/basic/doc-editor/plugins/ToolbarPlugin/index.vue.js.map +1 -1
  49. package/dist/cjs/components/basic/doc-editor/plugins/nodes.js +10 -4
  50. package/dist/cjs/components/basic/doc-editor/plugins/nodes.js.map +1 -1
  51. package/dist/cjs/components/basic/doc-editor/themes/doc-editor-edit.css.js +1 -1
  52. package/dist/cjs/components/basic/doc-editor/themes/doc-editor-edit.css.js.map +1 -1
  53. package/dist/cjs/components/basic/doc-editor/themes/doc-theme.css.js +8 -13
  54. package/dist/cjs/components/basic/doc-editor/themes/doc-theme.css.js.map +1 -1
  55. package/dist/cjs/components/basic/upload-file/context/UploadContext.js.map +1 -1
  56. package/dist/cjs/components/basic/upload-file/index.js +13 -3
  57. package/dist/cjs/components/basic/upload-file/index.js.map +1 -1
  58. package/dist/cjs/components/basic/upload-file/ui/upload-file/index.js +11 -0
  59. package/dist/cjs/components/basic/upload-file/ui/upload-file/index.js.map +1 -0
  60. package/dist/cjs/components/basic/upload-file/ui/upload-file/upload-file-options.js +38 -0
  61. package/dist/cjs/components/basic/upload-file/ui/upload-file/upload-file-options.js.map +1 -0
  62. package/dist/cjs/components/basic/upload-file/ui/upload-file/upload-file.js +224 -0
  63. package/dist/cjs/components/basic/upload-file/ui/upload-file/upload-file.js.map +1 -0
  64. package/dist/cjs/components/basic/upload-file/ui/upload-image/upload-image.js +2 -2
  65. package/dist/cjs/components/basic/upload-file/ui/upload-image/upload-image.js.map +1 -1
  66. package/dist/cjs/components/basic/upload-file/ui/upload-video/index.js +11 -0
  67. package/dist/cjs/components/basic/upload-file/ui/upload-video/index.js.map +1 -0
  68. package/dist/cjs/components/basic/upload-file/ui/upload-video/upload-video-options.js +38 -0
  69. package/dist/cjs/components/basic/upload-file/ui/upload-video/upload-video-options.js.map +1 -0
  70. package/dist/cjs/components/basic/upload-file/ui/upload-video/upload-video.js +222 -0
  71. package/dist/cjs/components/basic/upload-file/ui/upload-video/upload-video.js.map +1 -0
  72. package/dist/cjs/components/basic/upload-file/upload-file-options.js +2 -1
  73. package/dist/cjs/components/basic/upload-file/upload-file-options.js.map +1 -1
  74. package/dist/cjs/components/basic/upload-file/upload-file.js +1 -0
  75. package/dist/cjs/components/basic/upload-file/upload-file.js.map +1 -1
  76. package/dist/cjs/components/business/resource-list/components/resource-item/index.vue.js +2 -0
  77. package/dist/cjs/components/business/resource-list/components/resource-item/index.vue.js.map +1 -1
  78. package/dist/cjs/components/business/resource-manager/resource-manager.vue.js +2 -0
  79. package/dist/cjs/components/business/resource-manager/resource-manager.vue.js.map +1 -1
  80. package/dist/cjs/components/data-model/data-table/components/column-sort/column-sort.js +2 -0
  81. package/dist/cjs/components/data-model/data-table/components/column-sort/column-sort.js.map +1 -1
  82. package/dist/cjs/components/data-model/data-table/components/header-components/batch-opt/batch-opt.js +2 -0
  83. package/dist/cjs/components/data-model/data-table/components/header-components/batch-opt/batch-opt.js.map +1 -1
  84. package/dist/cjs/components/data-model/data-table/components/header-components/table-filter/table-filter.js +2 -0
  85. package/dist/cjs/components/data-model/data-table/components/header-components/table-filter/table-filter.js.map +1 -1
  86. package/dist/cjs/core/component/DataFormComponents.js +14 -0
  87. package/dist/cjs/core/component/DataFormComponents.js.map +1 -1
  88. package/dist/cjs/index.js +73 -61
  89. package/dist/cjs/index.js.map +1 -1
  90. package/dist/cjs/installer.js +17 -14
  91. package/dist/cjs/installer.js.map +1 -1
  92. package/dist/cjs/layouts/components/bar/index.js +2 -0
  93. package/dist/cjs/layouts/components/bar/index.js.map +1 -1
  94. package/dist/cjs/layouts/components/header/tools.js +2 -0
  95. package/dist/cjs/layouts/components/header/tools.js.map +1 -1
  96. package/dist/cjs/layouts/components/menu/menu-item.js +2 -0
  97. package/dist/cjs/layouts/components/menu/menu-item.js.map +1 -1
  98. package/dist/cjs/layouts/container/default.js +2 -0
  99. package/dist/cjs/layouts/container/default.js.map +1 -1
  100. package/dist/cjs/message-impl/DialogerImpl.js +2 -0
  101. package/dist/cjs/message-impl/DialogerImpl.js.map +1 -1
  102. package/dist/cjs/modules/cms/components/part-tree/index.vue.js +2 -0
  103. package/dist/cjs/modules/cms/components/part-tree/index.vue.js.map +1 -1
  104. package/dist/cjs/modules/cms/dataviews/cms-ad-contents/CmsAdContentsForm.js +15 -7
  105. package/dist/cjs/modules/cms/dataviews/cms-ad-contents/CmsAdContentsForm.js.map +1 -1
  106. package/dist/cjs/modules/cms/dataviews/cms-ad-defines/CmsAdDefinesForm.js +2 -0
  107. package/dist/cjs/modules/cms/dataviews/cms-ad-defines/CmsAdDefinesForm.js.map +1 -1
  108. package/dist/cjs/modules/cms/dataviews/cms-articles/CmsArticlesForm.js +3 -1
  109. package/dist/cjs/modules/cms/dataviews/cms-articles/CmsArticlesForm.js.map +1 -1
  110. package/dist/cjs/modules/cms/dataviews/cms-articles/cms-article-atlas/CmsArticleAtlasForm.js +3 -1
  111. package/dist/cjs/modules/cms/dataviews/cms-articles/cms-article-atlas/CmsArticleAtlasForm.js.map +1 -1
  112. package/dist/cjs/modules/cms/pages/cms-ad/index.vue2.js +11 -6
  113. package/dist/cjs/modules/cms/pages/cms-ad/index.vue2.js.map +1 -1
  114. package/dist/cjs/modules/cms/pages/cms-contents/article-edit-add-page.vue2.js +2 -0
  115. package/dist/cjs/modules/cms/pages/cms-contents/article-edit-add-page.vue2.js.map +1 -1
  116. package/dist/cjs/modules/cms/pages/cms-contents/components/article-atlas.vue.js +2 -0
  117. package/dist/cjs/modules/cms/pages/cms-contents/components/article-atlas.vue.js.map +1 -1
  118. package/dist/cjs/modules/cms/pages/cms-contents/components/article-list.vue.js +3 -1
  119. package/dist/cjs/modules/cms/pages/cms-contents/components/article-list.vue.js.map +1 -1
  120. package/dist/cjs/modules/cms/pages/cms-contents/components/part-banner-edit.vue.js +43 -12
  121. package/dist/cjs/modules/cms/pages/cms-contents/components/part-banner-edit.vue.js.map +1 -1
  122. package/dist/cjs/modules/cms/pages/cms-contents/components/part-info.vue.js +2 -0
  123. package/dist/cjs/modules/cms/pages/cms-contents/components/part-info.vue.js.map +1 -1
  124. package/dist/cjs/modules/cms/pages/cms-contents/index.vue2.js +2 -0
  125. package/dist/cjs/modules/cms/pages/cms-contents/index.vue2.js.map +1 -1
  126. package/dist/cjs/modules/cms/pages/cms-resource/index.vue2.js +2 -0
  127. package/dist/cjs/modules/cms/pages/cms-resource/index.vue2.js.map +1 -1
  128. package/dist/cjs/modules/ms/components/image-select/image-select-panel.js +7 -1
  129. package/dist/cjs/modules/ms/components/image-select/image-select-panel.js.map +1 -1
  130. package/dist/cjs/modules/ms/components/material-list/material-list-options.js +2 -0
  131. package/dist/cjs/modules/ms/components/material-list/material-list-options.js.map +1 -1
  132. package/dist/cjs/modules/ms/components/material-list/material-list.js +2 -0
  133. package/dist/cjs/modules/ms/components/material-list/material-list.js.map +1 -1
  134. package/dist/cjs/modules/ms/components/material-select/material-select-api.js +2 -0
  135. package/dist/cjs/modules/ms/components/material-select/material-select-api.js.map +1 -1
  136. package/dist/cjs/modules/ms/dataviews/ms-member/MsMemberTable.js +2 -0
  137. package/dist/cjs/modules/ms/dataviews/ms-member/MsMemberTable.js.map +1 -1
  138. package/dist/cjs/modules/ms/dataviews/ms-member/components/MemberRolesColumn.js +2 -0
  139. package/dist/cjs/modules/ms/dataviews/ms-member/components/MemberRolesColumn.js.map +1 -1
  140. package/dist/cjs/modules/ms/image-upload-context/index.js +2 -0
  141. package/dist/cjs/modules/ms/image-upload-context/index.js.map +1 -1
  142. package/dist/cjs/modules/ms/index.js +4 -2
  143. package/dist/cjs/modules/ms/index.js.map +1 -1
  144. package/dist/cjs/modules/ms/material-upload-context/MaterialUploadContext.js +17 -3
  145. package/dist/cjs/modules/ms/material-upload-context/MaterialUploadContext.js.map +1 -1
  146. package/dist/cjs/modules/ms/material-upload-context/material-upload-context.js +2 -0
  147. package/dist/cjs/modules/ms/material-upload-context/material-upload-context.js.map +1 -1
  148. package/dist/cjs/modules/ms/pages/icons/index.vue2.js +2 -0
  149. package/dist/cjs/modules/ms/pages/icons/index.vue2.js.map +1 -1
  150. package/dist/cjs/modules/ms/pages/local-log/index.vue2.js +2 -0
  151. package/dist/cjs/modules/ms/pages/local-log/index.vue2.js.map +1 -1
  152. package/dist/cjs/modules/ms/pages/ms-material/index.vue2.js +3 -0
  153. package/dist/cjs/modules/ms/pages/ms-material/index.vue2.js.map +1 -1
  154. package/dist/cjs/modules/ms/pages/ms-menu/index.vue2.js +2 -0
  155. package/dist/cjs/modules/ms/pages/ms-menu/index.vue2.js.map +1 -1
  156. package/dist/cjs/modules/ms/pages/ms-role/components/aside.vue.js +2 -0
  157. package/dist/cjs/modules/ms/pages/ms-role/components/aside.vue.js.map +1 -1
  158. package/dist/cjs/modules/ms/pages/ms-role/components/role-permission-config/role-permission-config-options.js +2 -0
  159. package/dist/cjs/modules/ms/pages/ms-role/components/role-permission-config/role-permission-config-options.js.map +1 -1
  160. package/dist/cjs/modules/ms/pages/ms-role/index.vue2.js +2 -0
  161. package/dist/cjs/modules/ms/pages/ms-role/index.vue2.js.map +1 -1
  162. package/dist/cjs/page/index/dv/default/edit.vue2.js +2 -0
  163. package/dist/cjs/page/index/dv/default/edit.vue2.js.map +1 -1
  164. package/dist/cjs/page/index/dv/default/single/list/dialog.vue2.js +2 -0
  165. package/dist/cjs/page/index/dv/default/single/list/dialog.vue2.js.map +1 -1
  166. package/dist/cjs/page/index/dv/default/single/list/normal.vue2.js +2 -0
  167. package/dist/cjs/page/index/dv/default/single/list/normal.vue2.js.map +1 -1
  168. package/dist/cjs/page/index/dv/default/single/table-tree/dialog.vue2.js +2 -0
  169. package/dist/cjs/page/index/dv/default/single/table-tree/dialog.vue2.js.map +1 -1
  170. package/dist/cjs/page/index/dv/default/single/table-tree/normal.vue2.js +2 -0
  171. package/dist/cjs/page/index/dv/default/single/table-tree/normal.vue2.js.map +1 -1
  172. package/dist/cjs/page/index/dv/default/single/tree/dialog.vue2.js +2 -0
  173. package/dist/cjs/page/index/dv/default/single/tree/dialog.vue2.js.map +1 -1
  174. package/dist/cjs/page/index/dv/default/table.vue2.js +2 -0
  175. package/dist/cjs/page/index/dv/default/table.vue2.js.map +1 -1
  176. package/dist/cjs/page/login/index.vue2.js +2 -0
  177. package/dist/cjs/page/login/index.vue2.js.map +1 -1
  178. package/dist/cjs/page/signup/index.vue2.js +2 -0
  179. package/dist/cjs/page/signup/index.vue2.js.map +1 -1
  180. package/dist/esm/assets/iconfonts/iconfont.js +1 -1
  181. package/dist/esm/assets/iconfonts/iconfont.js.map +1 -1
  182. package/dist/esm/components/basic/doc-editor/core/{element-module.js → element-block.js} +32 -13
  183. package/dist/esm/components/basic/doc-editor/core/element-block.js.map +1 -0
  184. package/dist/esm/components/basic/doc-editor/core/index.js +13 -7
  185. package/dist/esm/components/basic/doc-editor/core/index.js.map +1 -1
  186. package/dist/esm/components/basic/doc-editor/core/utils.js.map +1 -1
  187. package/dist/esm/components/basic/doc-editor/editor.vue.js +12 -5
  188. package/dist/esm/components/basic/doc-editor/editor.vue.js.map +1 -1
  189. package/dist/esm/components/basic/doc-editor/index.js.map +1 -1
  190. package/dist/esm/components/basic/doc-editor/plugins/{DecoratorModuleToolbarPlugin → ElementBlockSelectionPlugin}/index.vue.js +8 -8
  191. package/dist/esm/components/basic/doc-editor/plugins/ElementBlockSelectionPlugin/index.vue.js.map +1 -0
  192. package/dist/esm/components/basic/doc-editor/plugins/GridPlugin/GridNode.js +164 -0
  193. package/dist/esm/components/basic/doc-editor/plugins/GridPlugin/GridNode.js.map +1 -0
  194. package/dist/esm/components/basic/doc-editor/plugins/GridPlugin/ImageTextGridNode.js +89 -0
  195. package/dist/esm/components/basic/doc-editor/plugins/GridPlugin/ImageTextGridNode.js.map +1 -0
  196. package/dist/esm/components/basic/doc-editor/plugins/GridPlugin/LayoutGridNode.js +89 -0
  197. package/dist/esm/components/basic/doc-editor/plugins/GridPlugin/LayoutGridNode.js.map +1 -0
  198. package/dist/esm/components/basic/doc-editor/plugins/GridPlugin/ModuleGridNode.js +115 -0
  199. package/dist/esm/components/basic/doc-editor/plugins/GridPlugin/ModuleGridNode.js.map +1 -0
  200. package/dist/esm/components/basic/doc-editor/plugins/GridPlugin/TextGridNode.js +83 -0
  201. package/dist/esm/components/basic/doc-editor/plugins/GridPlugin/TextGridNode.js.map +1 -0
  202. package/dist/esm/components/basic/doc-editor/plugins/GridPlugin/index.vue.js +144 -0
  203. package/dist/esm/components/basic/doc-editor/plugins/GridPlugin/index.vue.js.map +1 -0
  204. package/dist/esm/components/basic/doc-editor/plugins/GridPlugin/utils.js +33 -0
  205. package/dist/esm/components/basic/doc-editor/plugins/GridPlugin/utils.js.map +1 -0
  206. package/dist/esm/components/basic/doc-editor/plugins/ImagePlugin/ImageNode.js +18 -24
  207. package/dist/esm/components/basic/doc-editor/plugins/ImagePlugin/ImageNode.js.map +1 -1
  208. package/dist/esm/components/basic/doc-editor/plugins/ImagePlugin/index.vue.js +18 -14
  209. package/dist/esm/components/basic/doc-editor/plugins/ImagePlugin/index.vue.js.map +1 -1
  210. package/dist/esm/components/basic/doc-editor/plugins/ImagePlugin/utils.js +66 -39
  211. package/dist/esm/components/basic/doc-editor/plugins/ImagePlugin/utils.js.map +1 -1
  212. package/dist/esm/components/basic/doc-editor/plugins/ModulePlugin/ModuleBlockNode.js +45 -30
  213. package/dist/esm/components/basic/doc-editor/plugins/ModulePlugin/ModuleBlockNode.js.map +1 -1
  214. package/dist/esm/components/basic/doc-editor/plugins/ModulePlugin/composables.js +2 -2
  215. package/dist/esm/components/basic/doc-editor/plugins/ModulePlugin/composables.js.map +1 -1
  216. package/dist/esm/components/basic/doc-editor/plugins/ModulePlugin/index.vue.js +49 -112
  217. package/dist/esm/components/basic/doc-editor/plugins/ModulePlugin/index.vue.js.map +1 -1
  218. package/dist/esm/components/basic/doc-editor/plugins/ModulePlugin/utils.js +3 -14
  219. package/dist/esm/components/basic/doc-editor/plugins/ModulePlugin/utils.js.map +1 -1
  220. package/dist/esm/components/basic/doc-editor/plugins/ToolbarPlugin/ContentStyleTool.vue.js +10 -1
  221. package/dist/esm/components/basic/doc-editor/plugins/ToolbarPlugin/ContentStyleTool.vue.js.map +1 -1
  222. package/dist/esm/components/basic/doc-editor/plugins/ToolbarPlugin/FontStyleTool.vue.js +26 -0
  223. package/dist/esm/components/basic/doc-editor/plugins/ToolbarPlugin/FontStyleTool.vue.js.map +1 -1
  224. package/dist/esm/components/basic/doc-editor/plugins/ToolbarPlugin/PreviewToolbar.vue.js +49 -35
  225. package/dist/esm/components/basic/doc-editor/plugins/ToolbarPlugin/PreviewToolbar.vue.js.map +1 -1
  226. package/dist/esm/components/basic/doc-editor/plugins/ToolbarPlugin/index.vue.js +44 -9
  227. package/dist/esm/components/basic/doc-editor/plugins/ToolbarPlugin/index.vue.js.map +1 -1
  228. package/dist/esm/components/basic/doc-editor/plugins/nodes.js +10 -4
  229. package/dist/esm/components/basic/doc-editor/plugins/nodes.js.map +1 -1
  230. package/dist/esm/components/basic/doc-editor/themes/doc-editor-edit.css.js +1 -1
  231. package/dist/esm/components/basic/doc-editor/themes/doc-editor-edit.css.js.map +1 -1
  232. package/dist/esm/components/basic/doc-editor/themes/doc-theme.css.js +8 -13
  233. package/dist/esm/components/basic/doc-editor/themes/doc-theme.css.js.map +1 -1
  234. package/dist/esm/components/basic/upload-file/context/UploadContext.js.map +1 -1
  235. package/dist/esm/components/basic/upload-file/index.js +10 -0
  236. package/dist/esm/components/basic/upload-file/index.js.map +1 -1
  237. package/dist/esm/components/basic/upload-file/ui/upload-file/index.js +11 -0
  238. package/dist/esm/components/basic/upload-file/ui/upload-file/index.js.map +1 -0
  239. package/dist/esm/components/basic/upload-file/ui/upload-file/upload-file-options.js +38 -0
  240. package/dist/esm/components/basic/upload-file/ui/upload-file/upload-file-options.js.map +1 -0
  241. package/dist/esm/components/basic/upload-file/ui/upload-file/upload-file.js +225 -0
  242. package/dist/esm/components/basic/upload-file/ui/upload-file/upload-file.js.map +1 -0
  243. package/dist/esm/components/basic/upload-file/ui/upload-image/upload-image.js +2 -2
  244. package/dist/esm/components/basic/upload-file/ui/upload-image/upload-image.js.map +1 -1
  245. package/dist/esm/components/basic/upload-file/ui/upload-video/index.js +11 -0
  246. package/dist/esm/components/basic/upload-file/ui/upload-video/index.js.map +1 -0
  247. package/dist/esm/components/basic/upload-file/ui/upload-video/upload-video-options.js +38 -0
  248. package/dist/esm/components/basic/upload-file/ui/upload-video/upload-video-options.js.map +1 -0
  249. package/dist/esm/components/basic/upload-file/ui/upload-video/upload-video.js +223 -0
  250. package/dist/esm/components/basic/upload-file/ui/upload-video/upload-video.js.map +1 -0
  251. package/dist/esm/components/basic/upload-file/upload-file-options.js +2 -1
  252. package/dist/esm/components/basic/upload-file/upload-file-options.js.map +1 -1
  253. package/dist/esm/components/basic/upload-file/upload-file.js +1 -0
  254. package/dist/esm/components/basic/upload-file/upload-file.js.map +1 -1
  255. package/dist/esm/components/business/resource-list/components/resource-item/index.vue.js +2 -0
  256. package/dist/esm/components/business/resource-list/components/resource-item/index.vue.js.map +1 -1
  257. package/dist/esm/components/business/resource-manager/resource-manager.vue.js +2 -0
  258. package/dist/esm/components/business/resource-manager/resource-manager.vue.js.map +1 -1
  259. package/dist/esm/components/data-model/data-table/components/column-sort/column-sort.js +2 -0
  260. package/dist/esm/components/data-model/data-table/components/column-sort/column-sort.js.map +1 -1
  261. package/dist/esm/components/data-model/data-table/components/header-components/batch-opt/batch-opt.js +2 -0
  262. package/dist/esm/components/data-model/data-table/components/header-components/batch-opt/batch-opt.js.map +1 -1
  263. package/dist/esm/components/data-model/data-table/components/header-components/table-filter/table-filter.js +2 -0
  264. package/dist/esm/components/data-model/data-table/components/header-components/table-filter/table-filter.js.map +1 -1
  265. package/dist/esm/core/component/DataFormComponents.js +14 -0
  266. package/dist/esm/core/component/DataFormComponents.js.map +1 -1
  267. package/dist/esm/index.js +14 -2
  268. package/dist/esm/index.js.map +1 -1
  269. package/dist/esm/installer.js +3 -0
  270. package/dist/esm/installer.js.map +1 -1
  271. package/dist/esm/layouts/components/bar/index.js +2 -0
  272. package/dist/esm/layouts/components/bar/index.js.map +1 -1
  273. package/dist/esm/layouts/components/header/tools.js +2 -0
  274. package/dist/esm/layouts/components/header/tools.js.map +1 -1
  275. package/dist/esm/layouts/components/menu/menu-item.js +2 -0
  276. package/dist/esm/layouts/components/menu/menu-item.js.map +1 -1
  277. package/dist/esm/layouts/container/default.js +2 -0
  278. package/dist/esm/layouts/container/default.js.map +1 -1
  279. package/dist/esm/message-impl/DialogerImpl.js +2 -0
  280. package/dist/esm/message-impl/DialogerImpl.js.map +1 -1
  281. package/dist/esm/modules/cms/components/part-tree/index.vue.js +2 -0
  282. package/dist/esm/modules/cms/components/part-tree/index.vue.js.map +1 -1
  283. package/dist/esm/modules/cms/dataviews/cms-ad-contents/CmsAdContentsForm.js +15 -7
  284. package/dist/esm/modules/cms/dataviews/cms-ad-contents/CmsAdContentsForm.js.map +1 -1
  285. package/dist/esm/modules/cms/dataviews/cms-ad-defines/CmsAdDefinesForm.js +2 -0
  286. package/dist/esm/modules/cms/dataviews/cms-ad-defines/CmsAdDefinesForm.js.map +1 -1
  287. package/dist/esm/modules/cms/dataviews/cms-articles/CmsArticlesForm.js +3 -1
  288. package/dist/esm/modules/cms/dataviews/cms-articles/CmsArticlesForm.js.map +1 -1
  289. package/dist/esm/modules/cms/dataviews/cms-articles/cms-article-atlas/CmsArticleAtlasForm.js +3 -1
  290. package/dist/esm/modules/cms/dataviews/cms-articles/cms-article-atlas/CmsArticleAtlasForm.js.map +1 -1
  291. package/dist/esm/modules/cms/pages/cms-ad/index.vue2.js +12 -7
  292. package/dist/esm/modules/cms/pages/cms-ad/index.vue2.js.map +1 -1
  293. package/dist/esm/modules/cms/pages/cms-contents/article-edit-add-page.vue2.js +2 -0
  294. package/dist/esm/modules/cms/pages/cms-contents/article-edit-add-page.vue2.js.map +1 -1
  295. package/dist/esm/modules/cms/pages/cms-contents/components/article-atlas.vue.js +2 -0
  296. package/dist/esm/modules/cms/pages/cms-contents/components/article-atlas.vue.js.map +1 -1
  297. package/dist/esm/modules/cms/pages/cms-contents/components/article-list.vue.js +3 -1
  298. package/dist/esm/modules/cms/pages/cms-contents/components/article-list.vue.js.map +1 -1
  299. package/dist/esm/modules/cms/pages/cms-contents/components/part-banner-edit.vue.js +43 -12
  300. package/dist/esm/modules/cms/pages/cms-contents/components/part-banner-edit.vue.js.map +1 -1
  301. package/dist/esm/modules/cms/pages/cms-contents/components/part-info.vue.js +2 -0
  302. package/dist/esm/modules/cms/pages/cms-contents/components/part-info.vue.js.map +1 -1
  303. package/dist/esm/modules/cms/pages/cms-contents/index.vue2.js +2 -0
  304. package/dist/esm/modules/cms/pages/cms-contents/index.vue2.js.map +1 -1
  305. package/dist/esm/modules/cms/pages/cms-resource/index.vue2.js +2 -0
  306. package/dist/esm/modules/cms/pages/cms-resource/index.vue2.js.map +1 -1
  307. package/dist/esm/modules/ms/components/image-select/image-select-panel.js +9 -3
  308. package/dist/esm/modules/ms/components/image-select/image-select-panel.js.map +1 -1
  309. package/dist/esm/modules/ms/components/material-list/material-list-options.js +2 -0
  310. package/dist/esm/modules/ms/components/material-list/material-list-options.js.map +1 -1
  311. package/dist/esm/modules/ms/components/material-list/material-list.js +2 -0
  312. package/dist/esm/modules/ms/components/material-list/material-list.js.map +1 -1
  313. package/dist/esm/modules/ms/components/material-select/material-select-api.js +2 -0
  314. package/dist/esm/modules/ms/components/material-select/material-select-api.js.map +1 -1
  315. package/dist/esm/modules/ms/dataviews/ms-member/MsMemberTable.js +2 -0
  316. package/dist/esm/modules/ms/dataviews/ms-member/MsMemberTable.js.map +1 -1
  317. package/dist/esm/modules/ms/dataviews/ms-member/components/MemberRolesColumn.js +2 -0
  318. package/dist/esm/modules/ms/dataviews/ms-member/components/MemberRolesColumn.js.map +1 -1
  319. package/dist/esm/modules/ms/image-upload-context/index.js +2 -0
  320. package/dist/esm/modules/ms/image-upload-context/index.js.map +1 -1
  321. package/dist/esm/modules/ms/index.js +4 -2
  322. package/dist/esm/modules/ms/index.js.map +1 -1
  323. package/dist/esm/modules/ms/material-upload-context/MaterialUploadContext.js +17 -3
  324. package/dist/esm/modules/ms/material-upload-context/MaterialUploadContext.js.map +1 -1
  325. package/dist/esm/modules/ms/material-upload-context/material-upload-context.js +2 -0
  326. package/dist/esm/modules/ms/material-upload-context/material-upload-context.js.map +1 -1
  327. package/dist/esm/modules/ms/pages/icons/index.vue2.js +2 -0
  328. package/dist/esm/modules/ms/pages/icons/index.vue2.js.map +1 -1
  329. package/dist/esm/modules/ms/pages/local-log/index.vue2.js +2 -0
  330. package/dist/esm/modules/ms/pages/local-log/index.vue2.js.map +1 -1
  331. package/dist/esm/modules/ms/pages/ms-material/index.vue2.js +3 -0
  332. package/dist/esm/modules/ms/pages/ms-material/index.vue2.js.map +1 -1
  333. package/dist/esm/modules/ms/pages/ms-menu/index.vue2.js +2 -0
  334. package/dist/esm/modules/ms/pages/ms-menu/index.vue2.js.map +1 -1
  335. package/dist/esm/modules/ms/pages/ms-role/components/aside.vue.js +2 -0
  336. package/dist/esm/modules/ms/pages/ms-role/components/aside.vue.js.map +1 -1
  337. package/dist/esm/modules/ms/pages/ms-role/components/role-permission-config/role-permission-config-options.js +2 -0
  338. package/dist/esm/modules/ms/pages/ms-role/components/role-permission-config/role-permission-config-options.js.map +1 -1
  339. package/dist/esm/modules/ms/pages/ms-role/index.vue2.js +2 -0
  340. package/dist/esm/modules/ms/pages/ms-role/index.vue2.js.map +1 -1
  341. package/dist/esm/page/index/dv/default/edit.vue2.js +2 -0
  342. package/dist/esm/page/index/dv/default/edit.vue2.js.map +1 -1
  343. package/dist/esm/page/index/dv/default/single/list/dialog.vue2.js +2 -0
  344. package/dist/esm/page/index/dv/default/single/list/dialog.vue2.js.map +1 -1
  345. package/dist/esm/page/index/dv/default/single/list/normal.vue2.js +2 -0
  346. package/dist/esm/page/index/dv/default/single/list/normal.vue2.js.map +1 -1
  347. package/dist/esm/page/index/dv/default/single/table-tree/dialog.vue2.js +2 -0
  348. package/dist/esm/page/index/dv/default/single/table-tree/dialog.vue2.js.map +1 -1
  349. package/dist/esm/page/index/dv/default/single/table-tree/normal.vue2.js +2 -0
  350. package/dist/esm/page/index/dv/default/single/table-tree/normal.vue2.js.map +1 -1
  351. package/dist/esm/page/index/dv/default/single/tree/dialog.vue2.js +2 -0
  352. package/dist/esm/page/index/dv/default/single/tree/dialog.vue2.js.map +1 -1
  353. package/dist/esm/page/index/dv/default/table.vue2.js +2 -0
  354. package/dist/esm/page/index/dv/default/table.vue2.js.map +1 -1
  355. package/dist/esm/page/login/index.vue2.js +2 -0
  356. package/dist/esm/page/login/index.vue2.js.map +1 -1
  357. package/dist/esm/page/signup/index.vue2.js +2 -0
  358. package/dist/esm/page/signup/index.vue2.js.map +1 -1
  359. package/dist/style/components/basic/doc-editor/index.css +1 -1
  360. package/dist/style/components/index.css +2 -2
  361. package/dist/style/components/upload-file-ui.css +1 -0
  362. package/dist/style/components/upload-image.css +1 -1
  363. package/dist/style/components/upload-video-ui.css +1 -0
  364. package/dist/style/index.css +3 -3
  365. package/dist/style/src/components/basic/doc-editor/index.scss +7 -3
  366. package/dist/style/src/components/index.scss +2 -0
  367. package/dist/style/src/components/upload-file-ui.scss +89 -0
  368. package/dist/style/src/components/upload-image.scss +3 -2
  369. package/dist/style/src/components/upload-video-ui.scss +139 -0
  370. package/dist/style/src/index.scss +4 -0
  371. package/dist/types/components/basic/doc-editor/core/element-block.d.ts +44 -0
  372. package/dist/types/components/basic/doc-editor/core/index.d.ts +23 -4
  373. package/dist/types/components/basic/doc-editor/index.d.ts +2 -2
  374. package/dist/types/components/basic/doc-editor/plugins/GridPlugin/GridNode.d.ts +88 -0
  375. package/dist/types/components/basic/doc-editor/plugins/GridPlugin/ImageTextGridNode.d.ts +50 -0
  376. package/dist/types/components/basic/doc-editor/plugins/GridPlugin/LayoutGridNode.d.ts +58 -0
  377. package/dist/types/components/basic/doc-editor/plugins/GridPlugin/ModuleGridNode.d.ts +58 -0
  378. package/dist/types/components/basic/doc-editor/plugins/GridPlugin/TextGridNode.d.ts +51 -0
  379. package/dist/types/components/basic/doc-editor/plugins/GridPlugin/index.d.ts +5 -0
  380. package/dist/types/components/basic/doc-editor/plugins/GridPlugin/utils.d.ts +3 -0
  381. package/dist/types/components/basic/doc-editor/plugins/ImagePlugin/ImageNode.d.ts +4 -13
  382. package/dist/types/components/basic/doc-editor/plugins/ModulePlugin/ModuleBlockNode.d.ts +24 -10
  383. package/dist/types/components/basic/doc-editor/plugins/ModulePlugin/composables.d.ts +2 -1
  384. package/dist/types/components/basic/doc-editor/plugins/ModulePlugin/index.d.ts +0 -1
  385. package/dist/types/components/basic/doc-editor/plugins/ModulePlugin/utils.d.ts +0 -6
  386. package/dist/types/components/basic/doc-editor/plugins/index.d.ts +3 -3
  387. package/dist/types/components/basic/dynamic-form-panel/type.d.ts +2 -2
  388. package/dist/types/components/basic/upload-file/context/UploadContext.d.ts +1 -0
  389. package/dist/types/components/basic/upload-file/ui/index.d.ts +2 -0
  390. package/dist/types/components/basic/upload-file/ui/upload-file/index.d.ts +67 -0
  391. package/dist/types/components/basic/upload-file/ui/upload-file/upload-file-options.d.ts +35 -0
  392. package/dist/types/components/basic/upload-file/ui/upload-file/upload-file.d.ts +67 -0
  393. package/dist/types/components/basic/upload-file/ui/upload-video/index.d.ts +67 -0
  394. package/dist/types/components/basic/upload-file/ui/upload-video/upload-video-options.d.ts +35 -0
  395. package/dist/types/components/basic/upload-file/ui/upload-video/upload-video.d.ts +67 -0
  396. package/dist/types/components/basic/upload-file/upload-file-options.d.ts +1 -0
  397. package/dist/types/components/basic/upload-file/upload-file.d.ts +2 -0
  398. package/dist/types/modules/cms/dataviews/cms-ad-contents/CmsAdContentsForm.d.ts +5 -1
  399. package/dist/types/modules/ms/components/index.d.ts +1 -0
  400. package/package.json +4 -4
  401. package/dist/cjs/components/basic/doc-editor/core/decorator-module.js +0 -13
  402. package/dist/cjs/components/basic/doc-editor/core/decorator-module.js.map +0 -1
  403. package/dist/cjs/components/basic/doc-editor/core/element-module.js.map +0 -1
  404. package/dist/cjs/components/basic/doc-editor/plugins/DecoratorModuleToolbarPlugin/index.vue.js.map +0 -1
  405. package/dist/cjs/components/basic/doc-editor/plugins/ImageTextPlugin/ImageTextNode.js +0 -106
  406. package/dist/cjs/components/basic/doc-editor/plugins/ImageTextPlugin/ImageTextNode.js.map +0 -1
  407. package/dist/cjs/components/basic/doc-editor/plugins/ImageTextPlugin/index.vue.js +0 -45
  408. package/dist/cjs/components/basic/doc-editor/plugins/ImageTextPlugin/index.vue.js.map +0 -1
  409. package/dist/cjs/components/basic/doc-editor/plugins/ModulePlugin/ModuleContainerNode.js +0 -128
  410. package/dist/cjs/components/basic/doc-editor/plugins/ModulePlugin/ModuleContainerNode.js.map +0 -1
  411. package/dist/cjs/components/basic/doc-editor/plugins/RichTextPlugin/nodes/BaseBlockCantainerNode.js +0 -123
  412. package/dist/cjs/components/basic/doc-editor/plugins/RichTextPlugin/nodes/BaseBlockCantainerNode.js.map +0 -1
  413. package/dist/cjs/components/basic/doc-editor/plugins/RichTextPlugin/nodes/BaseBlockNode.js +0 -84
  414. package/dist/cjs/components/basic/doc-editor/plugins/RichTextPlugin/nodes/BaseBlockNode.js.map +0 -1
  415. package/dist/cjs/components/basic/doc-editor/plugins/ToolbarPlugin/defines.js +0 -11
  416. package/dist/cjs/components/basic/doc-editor/plugins/ToolbarPlugin/defines.js.map +0 -1
  417. package/dist/esm/components/basic/doc-editor/core/decorator-module.js +0 -13
  418. package/dist/esm/components/basic/doc-editor/core/decorator-module.js.map +0 -1
  419. package/dist/esm/components/basic/doc-editor/core/element-module.js.map +0 -1
  420. package/dist/esm/components/basic/doc-editor/plugins/DecoratorModuleToolbarPlugin/index.vue.js.map +0 -1
  421. package/dist/esm/components/basic/doc-editor/plugins/ImageTextPlugin/ImageTextNode.js +0 -106
  422. package/dist/esm/components/basic/doc-editor/plugins/ImageTextPlugin/ImageTextNode.js.map +0 -1
  423. package/dist/esm/components/basic/doc-editor/plugins/ImageTextPlugin/index.vue.js +0 -46
  424. package/dist/esm/components/basic/doc-editor/plugins/ImageTextPlugin/index.vue.js.map +0 -1
  425. package/dist/esm/components/basic/doc-editor/plugins/ModulePlugin/ModuleContainerNode.js +0 -128
  426. package/dist/esm/components/basic/doc-editor/plugins/ModulePlugin/ModuleContainerNode.js.map +0 -1
  427. package/dist/esm/components/basic/doc-editor/plugins/RichTextPlugin/nodes/BaseBlockCantainerNode.js +0 -123
  428. package/dist/esm/components/basic/doc-editor/plugins/RichTextPlugin/nodes/BaseBlockCantainerNode.js.map +0 -1
  429. package/dist/esm/components/basic/doc-editor/plugins/RichTextPlugin/nodes/BaseBlockNode.js +0 -84
  430. package/dist/esm/components/basic/doc-editor/plugins/RichTextPlugin/nodes/BaseBlockNode.js.map +0 -1
  431. package/dist/esm/components/basic/doc-editor/plugins/ToolbarPlugin/defines.js +0 -11
  432. package/dist/esm/components/basic/doc-editor/plugins/ToolbarPlugin/defines.js.map +0 -1
  433. package/dist/types/components/basic/doc-editor/core/decorator-module.d.ts +0 -60
  434. package/dist/types/components/basic/doc-editor/core/element-module.d.ts +0 -15
  435. package/dist/types/components/basic/doc-editor/plugins/ImageTextPlugin/ImageTextNode.d.ts +0 -63
  436. package/dist/types/components/basic/doc-editor/plugins/ImageTextPlugin/index.d.ts +0 -1
  437. package/dist/types/components/basic/doc-editor/plugins/ModulePlugin/ModuleContainerNode.d.ts +0 -78
  438. package/dist/types/components/basic/doc-editor/plugins/ModulePlugin/ModuleRenderComponent.d.ts +0 -23
  439. package/dist/types/components/basic/doc-editor/plugins/RichTextPlugin/nodes/BaseBlockCantainerNode.d.ts +0 -63
  440. package/dist/types/components/basic/doc-editor/plugins/RichTextPlugin/nodes/BaseBlockNode.d.ts +0 -58
  441. package/dist/types/components/basic/doc-editor/plugins/ToolbarPlugin/defines.d.ts +0 -15
  442. /package/dist/cjs/components/basic/doc-editor/plugins/{DecoratorModuleToolbarPlugin → ElementBlockSelectionPlugin}/index.vue2.js +0 -0
  443. /package/dist/cjs/components/basic/doc-editor/plugins/{DecoratorModuleToolbarPlugin → ElementBlockSelectionPlugin}/index.vue2.js.map +0 -0
  444. /package/dist/cjs/components/basic/doc-editor/plugins/{ImageTextPlugin → GridPlugin}/index.vue2.js +0 -0
  445. /package/dist/cjs/components/basic/doc-editor/plugins/{ImageTextPlugin → GridPlugin}/index.vue2.js.map +0 -0
  446. /package/dist/esm/components/basic/doc-editor/plugins/{DecoratorModuleToolbarPlugin → ElementBlockSelectionPlugin}/index.vue2.js +0 -0
  447. /package/dist/esm/components/basic/doc-editor/plugins/{DecoratorModuleToolbarPlugin → ElementBlockSelectionPlugin}/index.vue2.js.map +0 -0
  448. /package/dist/esm/components/basic/doc-editor/plugins/{ImageTextPlugin → GridPlugin}/index.vue2.js +0 -0
  449. /package/dist/esm/components/basic/doc-editor/plugins/{ImageTextPlugin → GridPlugin}/index.vue2.js.map +0 -0
  450. /package/dist/types/components/basic/doc-editor/plugins/{DecoratorModuleToolbarPlugin → ElementBlockSelectionPlugin}/index.vue.d.ts +0 -0
  451. /package/dist/types/components/basic/doc-editor/plugins/{ImageTextPlugin → GridPlugin}/index.vue.d.ts +0 -0
@@ -1,13 +0,0 @@
1
- import { createCommand } from "lexical";
2
- import "@lexical/utils";
3
- import "vue";
4
- import "lexical-vue";
5
- const SELECTED_DECORATORMODULE_COMMAND = createCommand("SELECTED_DECORATORMODULE_COMMAND");
6
- const REMOVE_DECORATORMODULE_COMMAND = createCommand("REMOVE_DECORATORMODULE_COMMAND");
7
- const UPDATE_DECORATORMODULE_TOOLBAR_POS_COMMAND = createCommand("UPDATE_DECORATORMODULE_TOOLBAR_POS_COMMAND");
8
- export {
9
- REMOVE_DECORATORMODULE_COMMAND,
10
- SELECTED_DECORATORMODULE_COMMAND,
11
- UPDATE_DECORATORMODULE_TOOLBAR_POS_COMMAND
12
- };
13
- //# sourceMappingURL=decorator-module.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"decorator-module.js","sources":["../../../../../../src/components/basic/doc-editor/core/decorator-module.ts"],"sourcesContent":["\r\nimport type { BaseSelection, LexicalCommand,NodeKey } from 'lexical'\r\nimport {\r\n createCommand,DecoratorNode,\r\n $getSelection, $isNodeSelection,\r\n CLICK_COMMAND, COMMAND_PRIORITY_LOW,\r\n TextNode,\r\n EditorConfig\r\n} from \"lexical\";\r\nimport { mergeRegister } from \"@lexical/utils\";\r\nimport { type Component,watch,ref } from \"vue\"\r\nimport {\r\n useLexicalComposer,\r\n useLexicalNodeSelection,\r\n useMounted,\r\n} from \"lexical-vue\";\r\n\r\n/**\r\n * toolsbar的函数\r\n */\r\nexport type ToolsbarFunction = (selection:BaseSelection|null)=>Array<any>|null;\r\n\r\n/**\r\n * 组件选中\r\n */\r\nexport type DecoratorModuleSelectEventType = {\r\n element:HTMLElement,\r\n toolsbars:Array<any>|ToolsbarFunction\r\n}\r\n\r\n/**\r\n * 选中装饰模块\r\n */\r\nexport const SELECTED_DECORATORMODULE_COMMAND: LexicalCommand<DecoratorModuleSelectEventType|null> = createCommand('SELECTED_DECORATORMODULE_COMMAND')\r\n\r\n/**\r\n * 移除装饰器模块\r\n */\r\nexport const REMOVE_DECORATORMODULE_COMMAND: LexicalCommand<undefined|null> = createCommand('REMOVE_DECORATORMODULE_COMMAND')\r\n\r\n/**\r\n * 更新模块工具条位置信息\r\n */\r\nexport const UPDATE_DECORATORMODULE_TOOLBAR_POS_COMMAND: LexicalCommand<undefined|null> = createCommand('UPDATE_DECORATORMODULE_TOOLBAR_POS_COMMAND')\r\n\r\n/**\r\n * 装饰模块\r\n */\r\nexport class DecoratorModuleBlockNode extends DecoratorNode<Component> {\r\n\r\n constructor( key?: NodeKey) {\r\n super(key)\r\n }\r\n\r\n createDOM() {\r\n return document.createElement('div')\r\n }\r\n\r\n updateDOM(\r\n prevNode: TextNode,\r\n dom: HTMLElement,\r\n config: EditorConfig,\r\n ): boolean {\r\n return false\r\n }\r\n \r\n /**\r\n * 标识非行内组件\r\n * @returns \r\n */\r\n isInline() { return false; }\r\n\r\n /**\r\n * 是否隔离\r\n * @returns \r\n */\r\n isIsolated(){ return true; }\r\n \r\n /**\r\n * 允许键盘选中\r\n * @returns \r\n */\r\n isKeyboardSelectable(){ return true; }\r\n \r\n}\r\n\r\n\r\n/**\r\n * 使用装饰模块\r\n */\r\nexport const useDecoratorModule = (nodeKey:any,toolsbars:Array<any>|ToolsbarFunction)=>{\r\n\r\n // 编辑器\r\n\r\n const curSelectEl = ref<any>(null)\r\n const editor = useLexicalComposer();\r\n const { isSelected, setSelected, clearSelection } = useLexicalNodeSelection(nodeKey);\r\n\r\n // 是否选中\r\n watch(isSelected,(v)=>{\r\n if(v && curSelectEl.value != null){\r\n // 选中后显示工具条\r\n editor.dispatchCommand(SELECTED_DECORATORMODULE_COMMAND,{ \r\n element:curSelectEl.value,\r\n toolsbars:toolsbars\r\n });\r\n }\r\n else{\r\n // 没选中\r\n curSelectEl.value = null;\r\n editor.dispatchCommand(SELECTED_DECORATORMODULE_COMMAND,null);\r\n }\r\n })\r\n\r\n // 编辑器挂载的时候\r\n useMounted(() => {\r\n\r\n return mergeRegister(\r\n // \r\n // 选中\r\n editor.registerCommand<MouseEvent>(CLICK_COMMAND,(event) => {\r\n \r\n // 选中当前对象\r\n if (event.target === curSelectEl.value) {\r\n\r\n event.preventDefault();\r\n\r\n if (!event.shiftKey) { clearSelection(); }\r\n\r\n setSelected(true);\r\n\r\n return true;\r\n }\r\n \r\n return false;\r\n }, COMMAND_PRIORITY_LOW)\r\n );\r\n });\r\n\r\n return { isSelected,curSelectEl }\r\n}\r\n\r\n/**\r\n * 使用装饰模块工具条\r\n */\r\nexport const useDecoratorModuleTools = (selectFunc:Function)=>{\r\n\r\n // 编辑器\r\n const editor = useLexicalComposer();\r\n\r\n // 编辑器挂载的时候\r\n useMounted(() => {\r\n\r\n return mergeRegister(\r\n editor.registerCommand(SELECTED_DECORATORMODULE_COMMAND, () => {\r\n \r\n const selection = $getSelection();\r\n \r\n if($isNodeSelection(selection)){\r\n selectFunc(selection);\r\n }\r\n\r\n return false;\r\n },1)\r\n );\r\n });\r\n\r\n}\r\n\r\n\r\n"],"names":[],"mappings":";;;;AAiCa,MAAA,mCAAwF,cAAc,kCAAkC;AAKxI,MAAA,iCAAiE,cAAc,gCAAgC;AAK/G,MAAA,6CAA6E,cAAc,4CAA4C;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"element-module.js","sources":["../../../../../../src/components/basic/doc-editor/core/element-module.ts"],"sourcesContent":["\r\n\r\nimport { mergeRegister } from '@lexical/utils'\r\nimport { COMMAND_PRIORITY_LOW,CLICK_COMMAND } from 'lexical'\r\nimport { useLexicalComposer,useMounted } from 'lexical-vue'\r\nimport { ref,computed,watch } from 'vue'\r\nimport { \r\n SELECTED_DECORATORMODULE_COMMAND,\r\n ToolsbarFunction\r\n} from './decorator-module'\r\nimport { \r\n isNodeSelected,setSelected,clearSelection,\r\n} from './utils'\r\n\r\n/**\r\n * 判断选中的方法\r\n */\r\nexport type SelectExistFunc = (el:HTMLElement)=>HTMLElement|null\r\n\r\n/**\r\n * 使用元素模块\r\n * @param toolsbars \r\n */\r\nexport const useElementModule = (func:SelectExistFunc,toolsbars:Array<any>|ToolsbarFunction)=>{\r\n\r\n const editor = useLexicalComposer()\r\n const isSelected = ref(false)\r\n const curSelectKey = ref<any>(null)\r\n const curSelectPos = ref<any>(null)\r\n const curSelectEl = ref<any>(null)\r\n \r\n // 更新选中\r\n const updateActiveViewState = (el:Element|null)=>{\r\n \r\n if(el){\r\n \r\n const selectRect = el.getBoundingClientRect();\r\n \r\n curSelectPos.value = {\r\n top:`${selectRect.y}px`,left:`${selectRect.x}px`,\r\n width:`${selectRect.width}px`,height:`${selectRect.height}px`\r\n };\r\n \r\n editor.dispatchCommand(SELECTED_DECORATORMODULE_COMMAND,{ \r\n element:curSelectEl.value,\r\n toolsbars:toolsbars\r\n });\r\n }\r\n else{\r\n curSelectEl.value = null;\r\n curSelectKey.value = null;\r\n curSelectPos.value = null;\r\n editor.dispatchCommand(SELECTED_DECORATORMODULE_COMMAND,null);\r\n }\r\n }\r\n \r\n // 是否选中\r\n watch(isSelected,(state)=>{\r\n return updateActiveViewState(state ? curSelectEl.value : null);\r\n })\r\n \r\n // 编辑器挂载\r\n useMounted(()=>{\r\n // 注册事件\r\n return mergeRegister(\r\n // 更新选中状态\r\n editor.registerUpdateListener(() => {\r\n isSelected.value = isNodeSelected(editor, curSelectKey.value);\r\n }),\r\n // 点击选中\r\n editor.registerCommand<MouseEvent>(CLICK_COMMAND,(event) => {\r\n \r\n const el = func(event.target as HTMLElement);\r\n const nodeKey = el?.getAttribute(\"node-key\");\r\n\r\n // 不为null的话则视为点击选中\r\n if(nodeKey != null){\r\n \r\n event.preventDefault();\r\n \r\n if (!event.shiftKey) { clearSelection(editor); }\r\n\r\n setSelected(editor,true,nodeKey);\r\n \r\n setTimeout(() => {\r\n curSelectEl.value = el;\r\n curSelectKey.value = nodeKey;\r\n isSelected.value = isNodeSelected(editor, nodeKey);\r\n }, 1);\r\n return true;\r\n }\r\n \r\n return false;\r\n }, COMMAND_PRIORITY_LOW)\r\n )\r\n })\r\n\r\n\r\n return { isSelected, curSelectKey,curSelectPos,updateActiveViewState };\r\n\r\n}\r\n"],"names":[],"mappings":";;;;;;AAuBa,MAAA,mBAAmB,CAAC,MAAqB,cAAwC;AAE5F,QAAM,SAAS;AACT,QAAA,aAAa,IAAI,KAAK;AACtB,QAAA,eAAe,IAAS,IAAI;AAC5B,QAAA,eAAe,IAAS,IAAI;AAC5B,QAAA,cAAc,IAAS,IAAI;AAG3B,QAAA,wBAAwB,CAAC,OAAkB;AAE/C,QAAG,IAAG;AAEE,YAAA,aAAa,GAAG;AAEtB,mBAAa,QAAQ;AAAA,QACnB,KAAI,GAAG,WAAW,CAAC;AAAA,QAAK,MAAK,GAAG,WAAW,CAAC;AAAA,QAC5C,OAAM,GAAG,WAAW,KAAK;AAAA,QAAK,QAAO,GAAG,WAAW,MAAM;AAAA,MAAA;AAG3D,aAAO,gBAAgB,kCAAiC;AAAA,QACtD,SAAQ,YAAY;AAAA,QACpB;AAAA,MAAA,CACD;AAAA,IAAA,OAEC;AACF,kBAAY,QAAQ;AACpB,mBAAa,QAAQ;AACrB,mBAAa,QAAQ;AACd,aAAA,gBAAgB,kCAAiC,IAAI;AAAA,IAC9D;AAAA,EAAA;AAII,QAAA,YAAW,CAAC,UAAQ;AACxB,WAAO,sBAAsB,QAAQ,YAAY,QAAQ,IAAI;AAAA,EAAA,CAC9D;AAGD,aAAW,MAAI;AAEN,WAAA;AAAA;AAAA,MAEL,OAAO,uBAAuB,MAAM;AAClC,mBAAW,QAAQ,eAAe,QAAQ,aAAa,KAAK;AAAA,MAAA,CAC7D;AAAA;AAAA,MAED,OAAO,gBAA4B,eAAc,CAAC,UAAU;AAEpD,cAAA,KAAK,KAAK,MAAM,MAAqB;AACrC,cAAA,UAAU,yBAAI,aAAa;AAGjC,YAAG,WAAW,MAAK;AAEjB,gBAAM,eAAe;AAEjB,cAAA,CAAC,MAAM,UAAU;AAAE,2BAAe,MAAM;AAAA,UAAI;AAEpC,sBAAA,QAAO,MAAK,OAAO;AAE/B,qBAAW,MAAM;AACf,wBAAY,QAAQ;AACpB,yBAAa,QAAQ;AACV,uBAAA,QAAQ,eAAe,QAAQ,OAAO;AAAA,aAChD,CAAC;AACG,iBAAA;AAAA,QACT;AAEO,eAAA;AAAA,SACN,oBAAoB;AAAA,IAAA;AAAA,EACzB,CACD;AAGD,SAAO,EAAE,YAAY,cAAa,cAAa,sBAAsB;AAEvE;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.vue.js","sources":["../../../../../../../src/components/basic/doc-editor/plugins/DecoratorModuleToolbarPlugin/index.vue"],"sourcesContent":["<script setup lang=\"ts\">\r\nimport { type CommandListenerPriority, $isNodeSelection, $getSelection } from 'lexical'\r\nimport { mergeRegister } from '@lexical/utils'\r\nimport { useLexicalComposer, useMounted } from 'lexical-vue'\r\nimport { ref, reactive, shallowRef, nextTick, watch } from 'vue'\r\nimport {\r\n UPDATE_DECORATORMODULE_TOOLBAR_POS_COMMAND, SELECTED_DECORATORMODULE_COMMAND, REMOVE_DECORATORMODULE_COMMAND,\r\n type DecoratorModuleSelectEventType, DEVICE_VIEW_MODE,\r\n ToolsbarFunction\r\n} from \"../../core\"\r\n\r\n// 点击工具条按钮\r\nconst lowPriority: CommandListenerPriority = 1\r\nconst editor = useLexicalComposer()\r\nconst toolbarRef = ref<HTMLDivElement | null>(null)\r\nconst selectPayload = shallowRef<DecoratorModuleSelectEventType | null>(null);\r\nconst toolsPos = reactive({ left: \"px\", top: \"0px\" });\r\n\r\nwatch(DEVICE_VIEW_MODE, () => {\r\n editor.dispatchCommand(UPDATE_DECORATORMODULE_TOOLBAR_POS_COMMAND, null);\r\n})\r\n\r\n\r\n// 更新工具条坐标\r\nconst updateToolsPos = () => {\r\n\r\n nextTick(() => {\r\n if (selectPayload.value != null && toolbarRef.value != null) {\r\n const editIframeRect = (toolbarRef.value.getRootNode() as any).body.querySelector(\".mk-doc-editor__stage_iframe\").getBoundingClientRect();\r\n const editBodyRect = (toolbarRef.value.getRootNode() as any).body.querySelector(\".mk-doc-editor__stage_body\").getBoundingClientRect();\r\n const baseY = editIframeRect.y - editBodyRect.y;\r\n const selectRect = selectPayload.value.element.getBoundingClientRect();\r\n const toolsRect = toolbarRef.value.getBoundingClientRect();\r\n if (toolsRect) {\r\n // 中心点\r\n toolsPos.top = Math.max(selectRect.y - toolsRect.height - 5 + baseY, 5 + baseY) + \"px\"\r\n toolsPos.left = toolsRect.width / -2 + selectRect.x + selectRect.width / 2 + \"px\";\r\n }\r\n }\r\n })\r\n return false;\r\n}\r\n\r\nuseMounted(() => {\r\n return mergeRegister(\r\n editor.registerCommand(UPDATE_DECORATORMODULE_TOOLBAR_POS_COMMAND, () => updateToolsPos(), lowPriority),\r\n editor.registerUpdateListener(({ editorState }) => editorState.read(() => updateToolsPos())),\r\n // 选中模块\r\n editor.registerCommand(SELECTED_DECORATORMODULE_COMMAND, (payload: DecoratorModuleSelectEventType) => {\r\n\r\n\r\n if (payload != null) {\r\n let toolsbarList = [];\r\n\r\n // 如果是函数的话\r\n if (typeof payload.toolsbars == \"function\") {\r\n\r\n const selection = $getSelection();\r\n\r\n if ($isNodeSelection(selection)) {\r\n toolsbarList = payload.toolsbars(selection) ?? [];\r\n }\r\n else {\r\n toolsbarList = payload.toolsbars(null) ?? [];\r\n }\r\n }\r\n else {\r\n toolsbarList = payload.toolsbars;\r\n }\r\n\r\n selectPayload.value = {\r\n element: payload.element,\r\n toolsbars: toolsbarList\r\n };\r\n }\r\n else {\r\n selectPayload.value = null;\r\n }\r\n\r\n return updateToolsPos();\r\n }, lowPriority),\r\n // 删除模块\r\n editor.registerCommand(REMOVE_DECORATORMODULE_COMMAND, () => {\r\n\r\n const selection = $getSelection();\r\n\r\n if ($isNodeSelection(selection)) {\r\n\r\n selection.getNodes().forEach(node => node.remove());\r\n\r\n // 没选中\r\n editor.dispatchCommand(SELECTED_DECORATORMODULE_COMMAND, null);\r\n }\r\n return false;\r\n }, lowPriority)\r\n // editor.registerCommand(SELECTION_CHANGE_COMMAND, (payload, newEditor) => {\r\n\r\n // const selection = $getSelection();\r\n\r\n // if($isNodeSelection(selection)){\r\n\r\n // const node = selection.getNodes()[0]\r\n\r\n // console.log(node,node.getTopLevelElement());\r\n // }\r\n\r\n // return updateToolsPos();\r\n // },lowPriority)\r\n )\r\n})\r\n\r\n</script>\r\n\r\n<template>\r\n <div v-if=\"selectPayload != null\" ref=\"toolbarRef\" class=\"mk-doc-editor-decorator-module-toolbar\" :style=\"toolsPos\">\r\n <el-button-group>\r\n\r\n <template v-for=\"item in selectPayload.toolsbars as any[]\">\r\n <el-tooltip effect=\"dark\" :content=\"item.title\" placement=\"top\">\r\n <el-button text @click=\"item.action()\">\r\n <MKSvgIcon :iconClass=\"item.icon\" />\r\n </el-button>\r\n </el-tooltip>\r\n </template>\r\n <el-tooltip effect=\"dark\" content=\"删除\" placement=\"top\">\r\n <el-button text type=\"danger\" @click=\"editor.dispatchCommand(REMOVE_DECORATORMODULE_COMMAND, null)\">\r\n <MKSvgIcon :iconClass=\"`Delete`\" />\r\n </el-button>\r\n </el-tooltip>\r\n\r\n </el-button-group>\r\n </div>\r\n</template>\r\n"],"names":[],"mappings":";;;;;;AAYA,MAAM,cAAuC;;;;AAC7C,UAAM,SAAS;AACT,UAAA,aAAa,IAA2B,IAAI;AAC5C,UAAA,gBAAgB,WAAkD,IAAI;AAC5E,UAAM,WAAW,SAAS,EAAE,MAAM,MAAM,KAAK,OAAO;AAEpD,UAAM,kBAAkB,MAAM;AACrB,aAAA,gBAAgB,4CAA4C,IAAI;AAAA,IAAA,CACxE;AAID,UAAM,iBAAiB,MAAM;AAE3B,eAAS,MAAM;AACb,YAAI,cAAc,SAAS,QAAQ,WAAW,SAAS,MAAM;AACrD,gBAAA,iBAAkB,WAAW,MAAM,YAAA,EAAsB,KAAK,cAAc,8BAA8B,EAAE;AAC5G,gBAAA,eAAgB,WAAW,MAAM,YAAA,EAAsB,KAAK,cAAc,4BAA4B,EAAE;AACxG,gBAAA,QAAQ,eAAe,IAAI,aAAa;AAC9C,gBAAM,aAAa,cAAc,MAAM,QAAQ,sBAAsB;AAC/D,gBAAA,YAAY,WAAW,MAAM,sBAAsB;AACzD,cAAI,WAAW;AAEJ,qBAAA,MAAM,KAAK,IAAI,WAAW,IAAI,UAAU,SAAS,IAAI,OAAO,IAAI,KAAK,IAAI;AACzE,qBAAA,OAAO,UAAU,QAAQ,KAAK,WAAW,IAAI,WAAW,QAAQ,IAAI;AAAA,UAC/E;AAAA,QACF;AAAA,MAAA,CACD;AACM,aAAA;AAAA,IAAA;AAGT,eAAW,MAAM;AACR,aAAA;AAAA,QACL,OAAO,gBAAgB,4CAA4C,MAAM,eAAA,GAAkB,WAAW;AAAA,QACtG,OAAO,uBAAuB,CAAC,EAAE,YAAA,MAAkB,YAAY,KAAK,MAAM,eAAe,CAAC,CAAC;AAAA;AAAA,QAE3F,OAAO,gBAAgB,kCAAkC,CAAC,YAA4C;AAGpG,cAAI,WAAW,MAAM;AACnB,gBAAI,eAAe,CAAA;AAGf,gBAAA,OAAO,QAAQ,aAAa,YAAY;AAE1C,oBAAM,YAAY;AAEd,kBAAA,iBAAiB,SAAS,GAAG;AAC/B,+BAAe,QAAQ,UAAU,SAAS,KAAK,CAAA;AAAA,cAAC,OAE7C;AACH,+BAAe,QAAQ,UAAU,IAAI,KAAK,CAAA;AAAA,cAC5C;AAAA,YAAA,OAEG;AACH,6BAAe,QAAQ;AAAA,YACzB;AAEA,0BAAc,QAAQ;AAAA,cACpB,SAAS,QAAQ;AAAA,cACjB,WAAW;AAAA,YAAA;AAAA,UACb,OAEG;AACH,0BAAc,QAAQ;AAAA,UACxB;AAEA,iBAAO,eAAe;AAAA,WACrB,WAAW;AAAA;AAAA,QAEd,OAAO,gBAAgB,gCAAgC,MAAM;AAE3D,gBAAM,YAAY;AAEd,cAAA,iBAAiB,SAAS,GAAG;AAE/B,sBAAU,WAAW,QAAQ,CAAQ,SAAA,KAAK,QAAQ;AAG3C,mBAAA,gBAAgB,kCAAkC,IAAI;AAAA,UAC/D;AACO,iBAAA;AAAA,WACN,WAAW;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MAAA;AAAA,IAchB,CACD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,106 +0,0 @@
1
- import { createCommand, ElementNode, $createParagraphNode } from "lexical";
2
- import "../ImagePlugin/commands.js";
3
- import { InlineImageNode } from "../ImagePlugin/ImageNode.js";
4
- const INSERT_IMAGETEXT_COMMAND = createCommand("INSERT_IMAGETEXT_COMMAND");
5
- const MarkClassName = "mk-doc__image-text";
6
- class ImageTextNode extends ElementNode {
7
- static getType() {
8
- return "image-text";
9
- }
10
- static clone(node) {
11
- return new ImageTextNode(node.__key);
12
- }
13
- static importJSON(serializedNode) {
14
- return $createImageTextNode();
15
- }
16
- static importDOM() {
17
- return {
18
- div: (domNode) => {
19
- return domNode.classList.contains(MarkClassName) ? {
20
- conversion: () => {
21
- return { node: $createImageTextNode() };
22
- },
23
- priority: 4
24
- } : null;
25
- }
26
- };
27
- }
28
- constructor(key) {
29
- super(key);
30
- }
31
- /**
32
- * 导出JSON
33
- * @returns
34
- */
35
- exportJSON() {
36
- return {
37
- ...super.exportJSON(),
38
- type: this.getType(),
39
- version: 1
40
- };
41
- }
42
- /**
43
- * 导出DOM
44
- * @returns
45
- */
46
- exportDOM() {
47
- const element = document.createElement("div");
48
- if (!element.classList.contains(MarkClassName)) {
49
- element.classList.add(MarkClassName);
50
- }
51
- return { element };
52
- }
53
- /**
54
- * 创建渲染DOM
55
- * @param config
56
- * @returns
57
- */
58
- createDOM(config) {
59
- const el = this.exportDOM().element;
60
- el.setAttribute("node-key", this.__key);
61
- el.setAttribute("contenteditable", "true");
62
- el.setAttribute("data-lexical-decorator", "true");
63
- return el;
64
- }
65
- /**
66
- * 更新DOM
67
- * @param prevNode
68
- * @param dom
69
- * @param config
70
- * @returns
71
- */
72
- updateDOM(prevNode, dom, config) {
73
- return false;
74
- }
75
- /* 不允许空
76
- * @returns
77
- */
78
- canBeEmpty() {
79
- return false;
80
- }
81
- /**
82
- * 非内联
83
- * @returns
84
- */
85
- isInline() {
86
- return false;
87
- }
88
- }
89
- function $createImageTextNode(attrs) {
90
- const imageText = new ImageTextNode();
91
- if (attrs != null) {
92
- imageText.append(new InlineImageNode(attrs));
93
- imageText.append($createParagraphNode());
94
- }
95
- return imageText;
96
- }
97
- function $isImageTextNode(node) {
98
- return node instanceof ImageTextNode;
99
- }
100
- export {
101
- $createImageTextNode,
102
- $isImageTextNode,
103
- INSERT_IMAGETEXT_COMMAND,
104
- ImageTextNode
105
- };
106
- //# sourceMappingURL=ImageTextNode.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ImageTextNode.js","sources":["../../../../../../../src/components/basic/doc-editor/plugins/ImageTextPlugin/ImageTextNode.ts"],"sourcesContent":["\r\n\r\n\r\n\r\n\r\nimport type { DOMConversionMap, LexicalCommand, LexicalNode, NodeKey,EditorConfig, Spread,SerializedElementNode, DOMExportOutput } from 'lexical'\r\nimport { createCommand,$createParagraphNode,ElementNode } from 'lexical'\r\nimport { ImageAttrType,InlineImageNode } from '../ImagePlugin'\r\n\r\n/**\r\n * 插入图文\r\n */\r\nexport const INSERT_IMAGETEXT_COMMAND: LexicalCommand<ImageAttrType> = createCommand('INSERT_IMAGETEXT_COMMAND')\r\n\r\n/**\r\n * 图文节点序列化\r\n */\r\nexport type SerializedImageTextNode = Spread<{},SerializedElementNode>\r\n\r\n\r\n// 类标识\r\nconst MarkClassName = \"mk-doc__image-text\";\r\n\r\n/**\r\n * 图文节点\r\n */\r\nexport class ImageTextNode extends ElementNode{\r\n\r\n static getType(): string {\r\n return \"image-text\";\r\n }\r\n\r\n static clone(node: ImageTextNode): ImageTextNode {\r\n return new ImageTextNode(node.__key)\r\n }\r\n\r\n static importJSON(serializedNode: SerializedImageTextNode): ImageTextNode {\r\n return $createImageTextNode()\r\n }\r\n\r\n static importDOM(): DOMConversionMap | null {\r\n return {\r\n div : (domNode: HTMLElement) => {\r\n return domNode.classList.contains(MarkClassName) ? {\r\n conversion: ()=>{ \r\n return { node:$createImageTextNode() };\r\n },\r\n priority: 4\r\n } : null;\r\n }\r\n }\r\n }\r\n\r\n constructor(key?: NodeKey) {\r\n super(key)\r\n }\r\n\r\n /**\r\n * 导出JSON\r\n * @returns \r\n */\r\n exportJSON(): SerializedImageTextNode {\r\n return {\r\n ...super.exportJSON(),\r\n type: this.getType(),\r\n version: 1\r\n }\r\n }\r\n\r\n /**\r\n * 导出DOM\r\n * @returns \r\n */\r\n exportDOM(): DOMExportOutput {\r\n \r\n const element = document.createElement('div')\r\n\r\n if (!element.classList.contains(MarkClassName)) {\r\n element.classList.add(MarkClassName);\r\n }\r\n\r\n return { element }\r\n }\r\n\r\n /**\r\n * 创建渲染DOM\r\n * @param config \r\n * @returns \r\n */\r\n createDOM(config: EditorConfig): HTMLElement {\r\n const el = this.exportDOM().element as HTMLElement;\r\n el.setAttribute(\"node-key\",this.__key)\r\n el.setAttribute(\"contenteditable\",\"true\")\r\n el.setAttribute(\"data-lexical-decorator\",\"true\")\r\n return el;\r\n }\r\n\r\n /**\r\n * 更新DOM\r\n * @param prevNode \r\n * @param dom \r\n * @param config \r\n * @returns \r\n */\r\n updateDOM(prevNode: ImageTextNode, dom: HTMLElement, config: EditorConfig): boolean {\r\n return false\r\n }\r\n\r\n /* 不允许空\r\n * @returns \r\n */\r\n canBeEmpty(): boolean {\r\n return false\r\n }\r\n\r\n /**\r\n * 非内联\r\n * @returns \r\n */\r\n isInline(): boolean {\r\n return false;\r\n }\r\n}\r\n\r\n/**\r\n * 创建图文节点\r\n * @param src \r\n * @returns \r\n */\r\nexport function $createImageTextNode(attrs?: ImageAttrType): ImageTextNode {\r\n\r\n const imageText = new ImageTextNode()\r\n\r\n if(attrs != null){\r\n imageText.append(new InlineImageNode(attrs))\r\n imageText.append($createParagraphNode())\r\n }\r\n\r\n return imageText;\r\n}\r\n\r\n/**\r\n * 判断是否是图文节点\r\n * @param node \r\n * @returns \r\n */\r\nexport function $isImageTextNode(\r\n node: ImageTextNode | LexicalNode | null | undefined,\r\n): node is ImageTextNode {\r\n return node instanceof ImageTextNode\r\n}\r\n"],"names":[],"mappings":";;;AAYa,MAAA,2BAA0D,cAAc,0BAA0B;AAS/G,MAAM,gBAAgB;AAKf,MAAM,sBAAsB,YAAW;AAAA,EAE5C,OAAO,UAAkB;AAChB,WAAA;AAAA,EACT;AAAA,EAEA,OAAO,MAAM,MAAoC;AACxC,WAAA,IAAI,cAAc,KAAK,KAAK;AAAA,EACrC;AAAA,EAEA,OAAO,WAAW,gBAAwD;AACxE,WAAO,qBAAqB;AAAA,EAC9B;AAAA,EAEA,OAAO,YAAqC;AACnC,WAAA;AAAA,MACL,KAAM,CAAC,YAAyB;AAC9B,eAAO,QAAQ,UAAU,SAAS,aAAa,IAAI;AAAA,UACjD,YAAY,MAAI;AACN,mBAAA,EAAE,MAAK,qBAAA;UACjB;AAAA,UACA,UAAU;AAAA,QACR,IAAA;AAAA,MACN;AAAA,IAAA;AAAA,EAEJ;AAAA,EAEA,YAAY,KAAe;AACzB,UAAM,GAAG;AAAA,EACX;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,aAAsC;AAC7B,WAAA;AAAA,MACL,GAAG,MAAM,WAAW;AAAA,MACpB,MAAM,KAAK,QAAQ;AAAA,MACnB,SAAS;AAAA,IAAA;AAAA,EAEb;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,YAA6B;AAErB,UAAA,UAAU,SAAS,cAAc,KAAK;AAE5C,QAAI,CAAC,QAAQ,UAAU,SAAS,aAAa,GAAG;AACtC,cAAA,UAAU,IAAI,aAAa;AAAA,IACrC;AAEA,WAAO,EAAE,QAAQ;AAAA,EACnB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,UAAU,QAAmC;AACrC,UAAA,KAAK,KAAK,UAAA,EAAY;AACzB,OAAA,aAAa,YAAW,KAAK,KAAK;AAClC,OAAA,aAAa,mBAAkB,MAAM;AACrC,OAAA,aAAa,0BAAyB,MAAM;AACxC,WAAA;AAAA,EACT;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASA,UAAU,UAAyB,KAAkB,QAA+B;AAC3E,WAAA;AAAA,EACT;AAAA;AAAA;AAAA;AAAA,EAKA,aAAsB;AACb,WAAA;AAAA,EACT;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,WAAoB;AACX,WAAA;AAAA,EACT;AACF;AAOO,SAAS,qBAAqB,OAAsC;AAEnE,QAAA,YAAY,IAAI;AAEtB,MAAG,SAAS,MAAK;AACf,cAAU,OAAO,IAAI,gBAAgB,KAAK,CAAC;AACjC,cAAA,OAAO,sBAAsB;AAAA,EACzC;AAEO,SAAA;AACT;AAOO,SAAS,iBACd,MACuB;AACvB,SAAO,gBAAgB;AACzB;"}
@@ -1,46 +0,0 @@
1
- import { defineComponent, onMounted } from "vue";
2
- import { mergeRegister, $insertNodeToNearestRoot } from "@lexical/utils";
3
- import { COMMAND_PRIORITY_EDITOR } from "lexical";
4
- import { useLexicalComposer, useMounted } from "lexical-vue";
5
- import { registerDocEditorToolbarExtend } from "../ToolbarPlugin/defines.js";
6
- import { INSERT_IMAGETEXT_COMMAND, $createImageTextNode, ImageTextNode } from "./ImageTextNode.js";
7
- const _sfc_main = /* @__PURE__ */ defineComponent({
8
- __name: "index",
9
- setup(__props) {
10
- registerDocEditorToolbarExtend({
11
- icon: "richtext-outline",
12
- text: "图文",
13
- action: async () => {
14
- editor.dispatchCommand(INSERT_IMAGETEXT_COMMAND, {
15
- src: "",
16
- float: "left",
17
- width: "200px",
18
- margin: "0 10px 10px 0"
19
- });
20
- },
21
- sort: 10
22
- });
23
- const editor = useLexicalComposer();
24
- useMounted(() => {
25
- return mergeRegister(
26
- // 插入图文
27
- editor.registerCommand(INSERT_IMAGETEXT_COMMAND, (payload) => {
28
- $insertNodeToNearestRoot($createImageTextNode(payload));
29
- return true;
30
- }, COMMAND_PRIORITY_EDITOR)
31
- );
32
- });
33
- onMounted(() => {
34
- if (!editor.hasNodes([ImageTextNode])) {
35
- throw new Error("ImageTextPlugin: 图文节点未注册!");
36
- }
37
- });
38
- return (_ctx, _cache) => {
39
- return null;
40
- };
41
- }
42
- });
43
- export {
44
- _sfc_main as default
45
- };
46
- //# sourceMappingURL=index.vue.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.vue.js","sources":["../../../../../../../src/components/basic/doc-editor/plugins/ImageTextPlugin/index.vue"],"sourcesContent":["<script setup lang=\"ts\">\r\nimport { $insertNodeToNearestRoot,mergeRegister } from '@lexical/utils'\r\nimport { COMMAND_PRIORITY_EDITOR,COMMAND_PRIORITY_LOW,$getSelection,CLICK_COMMAND } from 'lexical'\r\nimport { useLexicalComposer,useMounted } from 'lexical-vue'\r\nimport { onMounted, onUnmounted } from 'vue'\r\nimport { registerDocEditorToolbarExtend,type ToolbarExtendPlugin } from \"../ToolbarPlugin/defines\"\r\nimport { useElementModule } from '../../core'\r\nimport { ImageAttrType } from '../ImagePlugin'\r\nimport { INSERT_IMAGETEXT_COMMAND,ImageTextNode,$createImageTextNode } from './index'\r\n\r\n\r\n// 注册到工具条\r\nregisterDocEditorToolbarExtend({\r\n icon:\"richtext-outline\",\r\n text:\"图文\",\r\n action:async ()=>{ \r\n editor.dispatchCommand(INSERT_IMAGETEXT_COMMAND,{\r\n src:\"\",\r\n float:\"left\",\r\n width:\"200px\",\r\n margin:\"0 10px 10px 0\"\r\n })\r\n },\r\n sort:10\r\n} as ToolbarExtendPlugin)\r\n\r\nconst editor = useLexicalComposer()\r\n\r\n// 使用元素模块 集成了模块选中删除以及工具条\r\n// const { isSelected, curSelectKey, curSelectPos,updateActiveViewState } = useElementModule(el=>{\r\n \r\n// var imageTextEl:any = el\r\n\r\n// while (imageTextEl != null && !imageTextEl.classList.contains(\"mk-doc-block-image-text\")) {\r\n// imageTextEl = imageTextEl.parentElement;\r\n// }\r\n\r\n// return imageTextEl\r\n\r\n// },[\r\n// {\r\n// title:\"编辑\",icon:\"Edit\",action:()=>{\r\n// // 编辑的节点\r\n// editor.getEditorState().read(async () => {\r\n \r\n \r\n// })\r\n// } \r\n// }\r\n// ])\r\n\r\n\r\nuseMounted(()=>{\r\n return mergeRegister(\r\n // 插入图文\r\n editor.registerCommand<ImageAttrType>(INSERT_IMAGETEXT_COMMAND,(payload) => {\r\n $insertNodeToNearestRoot($createImageTextNode(payload))\r\n return true\r\n },COMMAND_PRIORITY_EDITOR)\r\n )\r\n})\r\n\r\nonMounted(() => {\r\n\r\n if (!editor.hasNodes([ImageTextNode])){\r\n throw new Error('ImageTextPlugin: 图文节点未注册!')\r\n }\r\n})\r\n</script>\r\n\r\n\r\n<template>\r\n <!-- <div class=\"mk-doc-active-mark mk-doc-active-box-mark\" v-if=\"isSelected\" :style=\"curSelectPos\">\r\n \r\n </div> -->\r\n</template>\r\n\r\n"],"names":[],"mappings":";;;;;;;;;AAY+B,mCAAA;AAAA,MAC7B,MAAK;AAAA,MACL,MAAK;AAAA,MACL,QAAO,YAAU;AACf,eAAO,gBAAgB,0BAAyB;AAAA,UAC9C,KAAI;AAAA,UACJ,OAAM;AAAA,UACN,OAAM;AAAA,UACN,QAAO;AAAA,QAAA,CACR;AAAA,MACH;AAAA,MACA,MAAK;AAAA,IAAA,CACiB;AAExB,UAAM,SAAS;AA0Bf,eAAW,MAAI;AACN,aAAA;AAAA;AAAA,QAEL,OAAO,gBAA+B,0BAAyB,CAAC,YAAY;AACjD,mCAAA,qBAAqB,OAAO,CAAC;AAC/C,iBAAA;AAAA,WACP,uBAAuB;AAAA,MAAA;AAAA,IAC3B,CACD;AAED,cAAU,MAAM;AAEd,UAAI,CAAC,OAAO,SAAS,CAAC,aAAa,CAAC,GAAE;AAC9B,cAAA,IAAI,MAAM,2BAA2B;AAAA,MAC7C;AAAA,IAAA,CACD;;;;;;"}
@@ -1,128 +0,0 @@
1
- var __defProp = Object.defineProperty;
2
- var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
3
- var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
4
- import { createCommand } from "lexical";
5
- import { BaseBlockCantainerNode } from "../RichTextPlugin/nodes/BaseBlockCantainerNode.js";
6
- const INSERT_MODULECONTAINER_COMMAND = createCommand("INSERT_MODULECONTAINER_COMMAND");
7
- class ModuleContainerNode extends BaseBlockCantainerNode {
8
- constructor(attrs, key) {
9
- super(ModuleContainerNode.getType(), key);
10
- __publicField(this, "__attrs");
11
- this.__attrs = attrs;
12
- }
13
- static getType() {
14
- return "module-container";
15
- }
16
- /**
17
- * 获取模块类标识
18
- * @returns
19
- */
20
- static getMarkClassName() {
21
- return BaseBlockCantainerNode.getMarkClassName(ModuleContainerNode.getType());
22
- }
23
- static clone(node) {
24
- return new ModuleContainerNode(node.__attrs, node.__key);
25
- }
26
- static importJSON(serializedNode) {
27
- return new ModuleContainerNode(serializedNode.attrs);
28
- }
29
- static importDOM() {
30
- return {
31
- div: (domNode) => {
32
- const data = {};
33
- return BaseBlockCantainerNode.hasBlockByType(domNode, ModuleContainerNode.getType()) ? {
34
- conversion: () => {
35
- const className = domNode.className.replace(ModuleContainerNode.getMarkClassName(), "").trim();
36
- return {
37
- node: $createModuleContainerNode(Object.assign({
38
- isFlex: false,
39
- direction: "",
40
- wrap: false,
41
- alignContent: "",
42
- justifyContent: "",
43
- alignItems: "",
44
- class: className
45
- }, data))
46
- };
47
- },
48
- priority: 4
49
- } : null;
50
- }
51
- };
52
- }
53
- /**
54
- * 设置属性
55
- * @param pos
56
- */
57
- setAttrs(data) {
58
- const writable = this.getWritable();
59
- Object.assign(writable.__attrs, data);
60
- }
61
- /**
62
- * 获取属性
63
- * @param pos
64
- */
65
- getAttrs() {
66
- return this.__attrs;
67
- }
68
- /**
69
- * 导出JSON
70
- * @returns
71
- */
72
- exportJSON() {
73
- return {
74
- ...super.exportJSON(),
75
- type: this.getType(),
76
- attrs: this.__attrs,
77
- version: 1
78
- };
79
- }
80
- /**
81
- * 导出DOM
82
- * @returns
83
- */
84
- exportDOM() {
85
- const out = super.exportDOM();
86
- const el = out.element;
87
- if (this.__attrs.class && !el.classList.contains(this.__attrs.class)) {
88
- el.classList.add(this.__attrs.class);
89
- }
90
- return out;
91
- }
92
- /**
93
- * 创建渲染DOM
94
- * @param config
95
- * @returns
96
- */
97
- createDOM(config) {
98
- const el = super.createDOM(config);
99
- if (this.__attrs.class && !el.classList.contains(this.__attrs.class)) {
100
- el.classList.add(this.__attrs.class);
101
- }
102
- if (this.getChildrenSize() <= 0) {
103
- el.classList.add("empty");
104
- }
105
- return el;
106
- }
107
- }
108
- function $isModuleContainerNode(node) {
109
- return node instanceof ModuleContainerNode;
110
- }
111
- function $createModuleContainerNode(data) {
112
- return new ModuleContainerNode(Object.assign({
113
- isFlex: false,
114
- direction: "",
115
- wrap: false,
116
- alignContent: "",
117
- justifyContent: "",
118
- alignItems: "",
119
- class: ""
120
- }, data));
121
- }
122
- export {
123
- $createModuleContainerNode,
124
- $isModuleContainerNode,
125
- INSERT_MODULECONTAINER_COMMAND,
126
- ModuleContainerNode
127
- };
128
- //# sourceMappingURL=ModuleContainerNode.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ModuleContainerNode.js","sources":["../../../../../../../src/components/basic/doc-editor/plugins/ModulePlugin/ModuleContainerNode.ts"],"sourcesContent":["\r\n\r\n\r\n\r\n\r\nimport type { DOMConversionMap, LexicalCommand, LexicalNode, NodeKey, Spread,EditorConfig, DOMExportOutput } from 'lexical'\r\nimport { createCommand } from 'lexical'\r\nimport { BaseBlockCantainerNode,SerializedBlockCantainerNode } from '../RichTextPlugin/nodes/BaseBlockCantainerNode'\r\n\r\n/**\r\n * 容器属性\r\n */\r\nexport type ModuleContainerAttrType = {\r\n isFlex:boolean,\r\n direction:'column'|'row'|'row-reverse'|'column-reverse',\r\n wrap:boolean,\r\n alignContent:'center'|'flex-start',\r\n justifyContent:'center'|'flex-start',\r\n alignItems:'center'|'flex-start',\r\n class:string\r\n};\r\n\r\n/**\r\n * 插入模块容器\r\n */\r\nexport const INSERT_MODULECONTAINER_COMMAND: LexicalCommand<ModuleContainerAttrType> = createCommand('INSERT_MODULECONTAINER_COMMAND')\r\n\r\n/**\r\n * 图文节点序列化\r\n */\r\nexport type SerializedModuleContainerNode = Spread<{\r\n attrs:ModuleContainerAttrType\r\n},SerializedBlockCantainerNode>\r\n\r\n/**\r\n * 模块容器\r\n */\r\nexport class ModuleContainerNode extends BaseBlockCantainerNode{\r\n __attrs:ModuleContainerAttrType\r\n\r\n static getType(): string {\r\n return \"module-container\";\r\n }\r\n /**\r\n * 获取模块类标识\r\n * @returns \r\n */\r\n static getMarkClassName(): string {\r\n return BaseBlockCantainerNode.getMarkClassName(ModuleContainerNode.getType())\r\n }\r\n\r\n static clone(node: ModuleContainerNode): ModuleContainerNode {\r\n return new ModuleContainerNode(node.__attrs,node.__key)\r\n }\r\n\r\n static importJSON(serializedNode: SerializedModuleContainerNode): ModuleContainerNode {\r\n return new ModuleContainerNode(serializedNode.attrs)\r\n }\r\n\r\n static importDOM(): DOMConversionMap | null {\r\n return {\r\n div : (domNode: HTMLElement) => {\r\n\r\n const data = {};\r\n\r\n return BaseBlockCantainerNode.hasBlockByType(domNode,ModuleContainerNode.getType()) ? {\r\n conversion: ()=>{ \r\n\r\n // 标识类名\r\n const className = domNode.className.replace(ModuleContainerNode.getMarkClassName(),\"\").trim();\r\n\r\n return { \r\n node:$createModuleContainerNode(Object.assign({\r\n isFlex:false,\r\n direction:\"\",\r\n wrap:false,\r\n alignContent:\"\",\r\n justifyContent:'',\r\n alignItems:'',\r\n class:className\r\n },data) as ModuleContainerAttrType) \r\n };\r\n },\r\n priority: 4\r\n } : null;\r\n }\r\n }\r\n }\r\n\r\n constructor(attrs:ModuleContainerAttrType,key?: NodeKey) {\r\n super(ModuleContainerNode.getType(),key)\r\n this.__attrs = attrs;\r\n }\r\n\r\n /**\r\n * 设置属性\r\n * @param pos \r\n */\r\n setAttrs(data?:any){\r\n const writable = this.getWritable();\r\n Object.assign(writable.__attrs,data)\r\n }\r\n\r\n /**\r\n * 获取属性\r\n * @param pos \r\n */\r\n getAttrs(){\r\n return this.__attrs;\r\n }\r\n\r\n /**\r\n * 导出JSON\r\n * @returns \r\n */\r\n exportJSON(): SerializedModuleContainerNode {\r\n return {\r\n ...super.exportJSON(),\r\n type: this.getType(),\r\n attrs:this.__attrs,\r\n version: 1\r\n }\r\n }\r\n\r\n /**\r\n * 导出DOM\r\n * @returns \r\n */\r\n exportDOM(): DOMExportOutput {\r\n \r\n const out = super.exportDOM();\r\n const el = out.element as HTMLElement\r\n\r\n if (this.__attrs.class && !el.classList.contains(this.__attrs.class)) {\r\n el.classList.add(this.__attrs.class);\r\n }\r\n\r\n return out\r\n }\r\n\r\n /**\r\n * 创建渲染DOM\r\n * @param config \r\n * @returns \r\n */\r\n createDOM(config: EditorConfig): HTMLElement {\r\n \r\n const el = super.createDOM(config);\r\n\r\n if (this.__attrs.class && !el.classList.contains(this.__attrs.class)) {\r\n el.classList.add(this.__attrs.class);\r\n }\r\n\r\n if(this.getChildrenSize() <= 0){\r\n el.classList.add(\"empty\")\r\n }\r\n \r\n return el;\r\n }\r\n\r\n}\r\n\r\n/**\r\n * 判断是否是模块容器节点\r\n * @param node \r\n * @returns \r\n */\r\nexport function $isModuleContainerNode(\r\n node: ModuleContainerNode | LexicalNode | null | undefined,\r\n): node is ModuleContainerNode {\r\n return node instanceof ModuleContainerNode\r\n}\r\n\r\n\r\n/**\r\n * 创建模块容器\r\n * @param src \r\n * @returns \r\n */\r\nexport function $createModuleContainerNode(data: ModuleContainerAttrType): ModuleContainerNode {\r\n return new ModuleContainerNode(Object.assign({\r\n isFlex:false,\r\n direction:\"\",\r\n wrap:false,\r\n alignContent:\"\",\r\n justifyContent:'',\r\n alignItems:'',\r\n class:\"\"\r\n },data))\r\n}\r\n"],"names":[],"mappings":";;;;;AAyBa,MAAA,iCAA0E,cAAc,gCAAgC;AAY9H,MAAM,4BAA4B,uBAAsB;AAAA,EAoD7D,YAAY,OAA8B,KAAe;AACjD,UAAA,oBAAoB,QAAQ,GAAE,GAAG;AApDzC;AAqDE,SAAK,UAAU;AAAA,EACjB;AAAA,EApDA,OAAO,UAAkB;AAChB,WAAA;AAAA,EACT;AAAA;AAAA;AAAA;AAAA;AAAA,EAKA,OAAO,mBAA2B;AAChC,WAAO,uBAAuB,iBAAiB,oBAAoB,QAAS,CAAA;AAAA,EAC9E;AAAA,EAEA,OAAO,MAAM,MAAgD;AAC3D,WAAO,IAAI,oBAAoB,KAAK,SAAQ,KAAK,KAAK;AAAA,EACxD;AAAA,EAEA,OAAO,WAAW,gBAAoE;AAC7E,WAAA,IAAI,oBAAoB,eAAe,KAAK;AAAA,EACrD;AAAA,EAEA,OAAO,YAAqC;AACnC,WAAA;AAAA,MACL,KAAM,CAAC,YAAyB;AAE9B,cAAM,OAAO,CAAA;AAEb,eAAQ,uBAAuB,eAAe,SAAQ,oBAAoB,QAAS,CAAA,IAAI;AAAA,UACrF,YAAY,MAAI;AAGR,kBAAA,YAAY,QAAQ,UAAU,QAAQ,oBAAoB,oBAAmB,EAAE,EAAE;AAE/E,mBAAA;AAAA,cACN,MAAK,2BAA2B,OAAO,OAAO;AAAA,gBAC5C,QAAO;AAAA,gBACP,WAAU;AAAA,gBACV,MAAK;AAAA,gBACL,cAAa;AAAA,gBACb,gBAAe;AAAA,gBACf,YAAW;AAAA,gBACX,OAAM;AAAA,cACR,GAAE,IAAI,CAA4B;AAAA,YAAA;AAAA,UAEtC;AAAA,UACA,UAAU;AAAA,QACR,IAAA;AAAA,MACN;AAAA,IAAA;AAAA,EAEJ;AAAA;AAAA;AAAA;AAAA;AAAA,EAWA,SAAS,MAAU;AACX,UAAA,WAAW,KAAK;AACf,WAAA,OAAO,SAAS,SAAQ,IAAI;AAAA,EACrC;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,WAAU;AACR,WAAO,KAAK;AAAA,EACd;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,aAA4C;AACnC,WAAA;AAAA,MACL,GAAG,MAAM,WAAW;AAAA,MACpB,MAAM,KAAK,QAAQ;AAAA,MACnB,OAAM,KAAK;AAAA,MACX,SAAS;AAAA,IAAA;AAAA,EAEb;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,YAA6B;AAErB,UAAA,MAAM,MAAM;AAClB,UAAM,KAAK,IAAI;AAEX,QAAA,KAAK,QAAQ,SAAS,CAAC,GAAG,UAAU,SAAS,KAAK,QAAQ,KAAK,GAAG;AACpE,SAAG,UAAU,IAAI,KAAK,QAAQ,KAAK;AAAA,IACrC;AAEO,WAAA;AAAA,EACT;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,UAAU,QAAmC;AAErC,UAAA,KAAK,MAAM,UAAU,MAAM;AAE7B,QAAA,KAAK,QAAQ,SAAS,CAAC,GAAG,UAAU,SAAS,KAAK,QAAQ,KAAK,GAAG;AACpE,SAAG,UAAU,IAAI,KAAK,QAAQ,KAAK;AAAA,IACrC;AAEG,QAAA,KAAK,gBAAgB,KAAK,GAAE;AAC1B,SAAA,UAAU,IAAI,OAAO;AAAA,IAC1B;AAEO,WAAA;AAAA,EACT;AAEF;AAOO,SAAS,uBACd,MAC6B;AAC7B,SAAO,gBAAgB;AACzB;AAQO,SAAS,2BAA2B,MAAoD;AACtF,SAAA,IAAI,oBAAoB,OAAO,OAAO;AAAA,IAC3C,QAAO;AAAA,IACP,WAAU;AAAA,IACV,MAAK;AAAA,IACL,cAAa;AAAA,IACb,gBAAe;AAAA,IACf,YAAW;AAAA,IACX,OAAM;AAAA,EAAA,GACN,IAAI,CAAC;AACT;"}
@@ -1,123 +0,0 @@
1
- import { ElementNode } from "lexical";
2
- const BaseMarkClassName = "mk-doc-block-container";
3
- class BaseBlockCantainerNode extends ElementNode {
4
- constructor(type, key) {
5
- super(key);
6
- this.__type = type;
7
- }
8
- /**
9
- * 获取指定类型模块类标识
10
- * @param type
11
- * @returns
12
- */
13
- static getMarkClassName(type) {
14
- return `${BaseMarkClassName}__${type}`;
15
- }
16
- /**
17
- * 是否是指定类型模块
18
- * @param dom
19
- * @param type
20
- * @returns
21
- */
22
- static hasBlockByType(dom, type) {
23
- return dom.classList.contains(BaseBlockCantainerNode.getMarkClassName(type));
24
- }
25
- /**
26
- * 导出json
27
- * @returns
28
- */
29
- exportJSON() {
30
- return {
31
- ...super.exportJSON(),
32
- type: this.__type,
33
- version: 1
34
- };
35
- }
36
- /**
37
- * 获取标识类名
38
- */
39
- getMarkClassName() {
40
- return BaseBlockCantainerNode.getMarkClassName(this.__type);
41
- }
42
- /**
43
- * 导出DOM
44
- * @returns
45
- */
46
- exportDOM() {
47
- const element = document.createElement("div");
48
- if (!element.classList.contains(this.getMarkClassName())) {
49
- element.classList.add(this.getMarkClassName());
50
- }
51
- return { element };
52
- }
53
- /**
54
- * 创建渲染DOM
55
- * @param config
56
- * @returns
57
- */
58
- createDOM(config) {
59
- const el = this.exportDOM().element;
60
- el.setAttribute("node-key", this.__key);
61
- el.setAttribute("contenteditable", "false");
62
- el.setAttribute("data-lexical-decorator", "true");
63
- return el;
64
- }
65
- /**
66
- * 更新DOM
67
- * @param prevNode
68
- * @param dom
69
- * @param config
70
- * @returns
71
- */
72
- updateDOM(prevNode, dom, config) {
73
- return false;
74
- }
75
- /**
76
- * 非内联
77
- * @returns
78
- */
79
- isInline() {
80
- return false;
81
- }
82
- /**
83
- * 定义为影子根
84
- * @returns
85
- */
86
- isShadowRoot() {
87
- return true;
88
- }
89
- // // Mutation
90
- // insertNewAfter(rangeSelection:RangeSelection, restoreSelection:boolean) {
91
- // // const newElement = $createParagraphNode();
92
- // // newElement.setTextFormat(rangeSelection.format);
93
- // // const direction = this.getDirection();
94
- // // newElement.setDirection(direction);
95
- // // newElement.setFormat(this.getFormatType());
96
- // // this.insertAfter(newElement, restoreSelection);
97
- // console.log(rangeSelection,restoreSelection)
98
- // return null;
99
- // }
100
- // collapseAtStart() {
101
- // const children = this.getChildren();
102
- // console.log("asdasdas")
103
- // if (children.length === 0 || $isTextNode(children[0]) && children[0].getTextContent().trim() === "") {
104
- // const nextSibling = this.getNextSibling();
105
- // if (nextSibling !== null) {
106
- // this.selectNext();
107
- // this.remove();
108
- // return true;
109
- // }
110
- // const prevSibling = this.getPreviousSibling();
111
- // if (prevSibling !== null) {
112
- // this.selectPrevious();
113
- // this.remove();
114
- // return true;
115
- // }
116
- // }
117
- // return false;
118
- // }
119
- }
120
- export {
121
- BaseBlockCantainerNode
122
- };
123
- //# sourceMappingURL=BaseBlockCantainerNode.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"BaseBlockCantainerNode.js","sources":["../../../../../../../../src/components/basic/doc-editor/plugins/RichTextPlugin/nodes/BaseBlockCantainerNode.ts"],"sourcesContent":["import type {\r\n DOMExportOutput,\r\n EditorConfig,\r\n NodeKey,\r\n Spread,\r\n SerializedElementNode,\r\n} from 'lexical'\r\nimport { ElementNode} from 'lexical'\r\n\r\n/**\r\n * 可编辑组件块容器节点\r\n */\r\nexport type SerializedBlockCantainerNode = Spread<{},SerializedElementNode>\r\n\r\n// 基础类标识\r\nconst BaseMarkClassName = \"mk-doc-block-container\";\r\n\r\n/**\r\n * 定义组件块容器点\r\n */\r\nexport class BaseBlockCantainerNode extends ElementNode {\r\n\r\n constructor(type: string, key?: NodeKey) {\r\n super(key)\r\n this.__type = type\r\n }\r\n\r\n /**\r\n * 获取指定类型模块类标识\r\n * @param type \r\n * @returns \r\n */\r\n static getMarkClassName(type:string): string {\r\n return `${BaseMarkClassName}__${type}`\r\n }\r\n\r\n /**\r\n * 是否是指定类型模块\r\n * @param dom \r\n * @param type \r\n * @returns \r\n */\r\n static hasBlockByType(dom: HTMLElement,type:string): boolean {\r\n return dom.classList.contains(BaseBlockCantainerNode.getMarkClassName(type))\r\n }\r\n\r\n /**\r\n * 导出json\r\n * @returns \r\n */\r\n exportJSON(): SerializedBlockCantainerNode {\r\n return {\r\n ...super.exportJSON(),\r\n type: this.__type,\r\n version: 1\r\n }\r\n }\r\n\r\n /**\r\n * 获取标识类名\r\n */\r\n getMarkClassName(){\r\n return BaseBlockCantainerNode.getMarkClassName(this.__type)\r\n }\r\n\r\n /**\r\n * 导出DOM\r\n * @returns \r\n */\r\n exportDOM(): DOMExportOutput {\r\n \r\n const element = document.createElement('div')\r\n\r\n if (!element.classList.contains(this.getMarkClassName())) {\r\n element.classList.add(this.getMarkClassName());\r\n }\r\n\r\n return { element }\r\n }\r\n\r\n /**\r\n * 创建渲染DOM\r\n * @param config \r\n * @returns \r\n */\r\n createDOM(config: EditorConfig): HTMLElement {\r\n const el = this.exportDOM().element as HTMLElement;\r\n el.setAttribute(\"node-key\",this.__key)\r\n el.setAttribute(\"contenteditable\",\"false\")\r\n el.setAttribute(\"data-lexical-decorator\",\"true\")\r\n return el;\r\n }\r\n\r\n /**\r\n * 更新DOM\r\n * @param prevNode \r\n * @param dom \r\n * @param config \r\n * @returns \r\n */\r\n updateDOM(prevNode: BaseBlockCantainerNode, dom: HTMLElement, config: EditorConfig): boolean {\r\n // console.log(\"Image Text updateDOM\",prevNode,dom);\r\n // const position = this.__pos\r\n // if (position !== prevNode.__pos) {\r\n // const className = `${config.theme.image} position-${position}`\r\n // if (className !== undefined) {\r\n // dom.className = className\r\n // }\r\n // }\r\n // const inner = dom.firstChild\r\n // if (inner === null){ return true }\r\n // super.updateDOM(prevNode, inner as HTMLElement, config)\r\n return false\r\n }\r\n\r\n\r\n /**\r\n * 非内联\r\n * @returns \r\n */\r\n isInline(): boolean {\r\n return false;\r\n }\r\n\r\n /**\r\n * 定义为影子根\r\n * @returns \r\n */\r\n isShadowRoot(): boolean {\r\n return true;\r\n }\r\n\r\n \r\n // // Mutation\r\n // insertNewAfter(rangeSelection:RangeSelection, restoreSelection:boolean) {\r\n // // const newElement = $createParagraphNode();\r\n // // newElement.setTextFormat(rangeSelection.format);\r\n // // const direction = this.getDirection();\r\n // // newElement.setDirection(direction);\r\n // // newElement.setFormat(this.getFormatType());\r\n // // this.insertAfter(newElement, restoreSelection);\r\n // console.log(rangeSelection,restoreSelection)\r\n // return null;\r\n // }\r\n\r\n\r\n // collapseAtStart() {\r\n // const children = this.getChildren();\r\n // console.log(\"asdasdas\")\r\n // if (children.length === 0 || $isTextNode(children[0]) && children[0].getTextContent().trim() === \"\") {\r\n // const nextSibling = this.getNextSibling();\r\n // if (nextSibling !== null) {\r\n // this.selectNext();\r\n // this.remove();\r\n // return true;\r\n // }\r\n // const prevSibling = this.getPreviousSibling();\r\n // if (prevSibling !== null) {\r\n // this.selectPrevious();\r\n // this.remove();\r\n // return true;\r\n // }\r\n // }\r\n // return false;\r\n // }\r\n}\r\n"],"names":[],"mappings":";AAeA,MAAM,oBAAoB;AAKnB,MAAM,+BAA+B,YAAY;AAAA,EAEtD,YAAY,MAAe,KAAe;AACxC,UAAM,GAAG;AACT,SAAK,SAAS;AAAA,EAChB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,OAAO,iBAAiB,MAAqB;AACpC,WAAA,GAAG,iBAAiB,KAAK,IAAI;AAAA,EACtC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,OAAO,eAAe,KAAiB,MAAsB;AAC3D,WAAO,IAAI,UAAU,SAAS,uBAAuB,iBAAiB,IAAI,CAAC;AAAA,EAC7E;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,aAA2C;AAClC,WAAA;AAAA,MACL,GAAG,MAAM,WAAW;AAAA,MACpB,MAAM,KAAK;AAAA,MACX,SAAS;AAAA,IAAA;AAAA,EAEb;AAAA;AAAA;AAAA;AAAA,EAKA,mBAAkB;AACT,WAAA,uBAAuB,iBAAiB,KAAK,MAAM;AAAA,EAC5D;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,YAA6B;AAErB,UAAA,UAAU,SAAS,cAAc,KAAK;AAE5C,QAAI,CAAC,QAAQ,UAAU,SAAS,KAAK,iBAAA,CAAkB,GAAG;AACxD,cAAQ,UAAU,IAAI,KAAK,iBAAkB,CAAA;AAAA,IAC/C;AAEA,WAAO,EAAE,QAAQ;AAAA,EACnB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,UAAU,QAAmC;AACrC,UAAA,KAAK,KAAK,UAAA,EAAY;AACzB,OAAA,aAAa,YAAW,KAAK,KAAK;AAClC,OAAA,aAAa,mBAAkB,OAAO;AACtC,OAAA,aAAa,0BAAyB,MAAM;AACxC,WAAA;AAAA,EACT;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASA,UAAU,UAAkC,KAAkB,QAA+B;AAYpF,WAAA;AAAA,EACT;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,WAAoB;AACX,WAAA;AAAA,EACT;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,eAAwB;AACf,WAAA;AAAA,EACT;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAmCF;"}
@@ -1,84 +0,0 @@
1
- import { ElementNode } from "lexical";
2
- const BaseMarkClassName = "mk-doc-block";
3
- class BaseBlockNode extends ElementNode {
4
- constructor(type, key) {
5
- super(key);
6
- this.__type = type;
7
- }
8
- /**
9
- * 获取指定类型模块类标识
10
- * @param type
11
- * @returns
12
- */
13
- static getMarkClassName(type) {
14
- return `${BaseMarkClassName}__${type}`;
15
- }
16
- /**
17
- * 是否是指定类型模块
18
- * @param dom
19
- * @param type
20
- * @returns
21
- */
22
- static hasBlockByType(dom, type) {
23
- return dom.classList.contains(BaseBlockNode.getMarkClassName(type));
24
- }
25
- /**
26
- * 导出json
27
- * @returns
28
- */
29
- exportJSON() {
30
- return {
31
- ...super.exportJSON(),
32
- type: this.__type,
33
- version: 1
34
- };
35
- }
36
- /**
37
- * 获取标识类名
38
- */
39
- getMarkClassName() {
40
- return BaseBlockNode.getMarkClassName(this.__type);
41
- }
42
- /**
43
- * 导出DOM
44
- * @returns
45
- */
46
- exportDOM() {
47
- const element = document.createElement("div");
48
- if (!element.classList.contains(this.getMarkClassName())) {
49
- element.classList.add(this.getMarkClassName());
50
- }
51
- return { element };
52
- }
53
- /**
54
- * 创建渲染DOM
55
- * @param config
56
- * @returns
57
- */
58
- createDOM(config) {
59
- const el = this.exportDOM().element;
60
- el.setAttribute("node-key", this.__key);
61
- return el;
62
- }
63
- /**
64
- * 更新DOM
65
- * @param prevNode
66
- * @param dom
67
- * @param config
68
- * @returns
69
- */
70
- updateDOM(prevNode, dom, config) {
71
- return false;
72
- }
73
- /**
74
- * 非内联
75
- * @returns
76
- */
77
- isInline() {
78
- return false;
79
- }
80
- }
81
- export {
82
- BaseBlockNode
83
- };
84
- //# sourceMappingURL=BaseBlockNode.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"BaseBlockNode.js","sources":["../../../../../../../../src/components/basic/doc-editor/plugins/RichTextPlugin/nodes/BaseBlockNode.ts"],"sourcesContent":["import type {\r\n DOMExportOutput,\r\n EditorConfig,\r\n NodeKey,\r\n Spread,\r\n SerializedElementNode,\r\n\r\n} from 'lexical'\r\nimport { isBlockDomNode, $isBlockElementNode,ElementNode } from 'lexical'\r\nimport { type Component} from \"vue\"\r\n \r\n/**\r\n * 可编辑组件块节点\r\n */\r\nexport type SerializedBlockNode = Spread<{},SerializedElementNode>\r\n\r\n// 基础类标识\r\nconst BaseMarkClassName = \"mk-doc-block\";\r\n\r\n/**\r\n * 定义组件块节点\r\n */\r\nexport class BaseBlockNode extends ElementNode {\r\n\r\n constructor(type: string, key?: NodeKey) {\r\n super(key)\r\n this.__type = type\r\n }\r\n\r\n /**\r\n * 获取指定类型模块类标识\r\n * @param type \r\n * @returns \r\n */\r\n static getMarkClassName(type:string): string {\r\n return `${BaseMarkClassName}__${type}`\r\n }\r\n\r\n /**\r\n * 是否是指定类型模块\r\n * @param dom \r\n * @param type \r\n * @returns \r\n */\r\n static hasBlockByType(dom: HTMLElement,type:string): boolean {\r\n return dom.classList.contains(BaseBlockNode.getMarkClassName(type))\r\n }\r\n\r\n /**\r\n * 导出json\r\n * @returns \r\n */\r\n exportJSON(): SerializedBlockNode {\r\n return {\r\n ...super.exportJSON(),\r\n type: this.__type,\r\n version: 1\r\n }\r\n }\r\n\r\n /**\r\n * 获取标识类名\r\n */\r\n getMarkClassName(){\r\n return BaseBlockNode.getMarkClassName(this.__type)\r\n }\r\n\r\n /**\r\n * 导出DOM\r\n * @returns \r\n */\r\n exportDOM(): DOMExportOutput {\r\n \r\n const element = document.createElement('div')\r\n\r\n if (!element.classList.contains(this.getMarkClassName())) {\r\n element.classList.add(this.getMarkClassName());\r\n }\r\n\r\n return { element }\r\n }\r\n\r\n /**\r\n * 创建渲染DOM\r\n * @param config \r\n * @returns \r\n */\r\n createDOM(config: EditorConfig): HTMLElement {\r\n const el = this.exportDOM().element as HTMLElement;\r\n el.setAttribute(\"node-key\",this.__key)\r\n return el;\r\n }\r\n\r\n /**\r\n * 更新DOM\r\n * @param prevNode \r\n * @param dom \r\n * @param config \r\n * @returns \r\n */\r\n updateDOM(prevNode: BaseBlockNode, dom: HTMLElement, config: EditorConfig): boolean {\r\n // console.log(\"Image Text updateDOM\",prevNode,dom);\r\n // const position = this.__pos\r\n // if (position !== prevNode.__pos) {\r\n // const className = `${config.theme.image} position-${position}`\r\n // if (className !== undefined) {\r\n // dom.className = className\r\n // }\r\n // }\r\n // const inner = dom.firstChild\r\n // if (inner === null){ return true }\r\n // super.updateDOM(prevNode, inner as HTMLElement, config)\r\n return false\r\n }\r\n\r\n /**\r\n * 非内联\r\n * @returns \r\n */\r\n isInline(): boolean {\r\n return false;\r\n }\r\n\r\n}\r\n"],"names":[],"mappings":";AAiBA,MAAM,oBAAoB;AAKnB,MAAM,sBAAsB,YAAY;AAAA,EAE7C,YAAY,MAAe,KAAe;AACxC,UAAM,GAAG;AACT,SAAK,SAAS;AAAA,EAChB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOC,OAAO,iBAAiB,MAAqB;AACrC,WAAA,GAAG,iBAAiB,KAAK,IAAI;AAAA,EACtC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,OAAO,eAAe,KAAiB,MAAsB;AAC3D,WAAO,IAAI,UAAU,SAAS,cAAc,iBAAiB,IAAI,CAAC;AAAA,EACpE;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,aAAkC;AACzB,WAAA;AAAA,MACL,GAAG,MAAM,WAAW;AAAA,MACpB,MAAM,KAAK;AAAA,MACX,SAAS;AAAA,IAAA;AAAA,EAEb;AAAA;AAAA;AAAA;AAAA,EAKA,mBAAkB;AACT,WAAA,cAAc,iBAAiB,KAAK,MAAM;AAAA,EACnD;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,YAA6B;AAErB,UAAA,UAAU,SAAS,cAAc,KAAK;AAE5C,QAAI,CAAC,QAAQ,UAAU,SAAS,KAAK,iBAAA,CAAkB,GAAG;AACxD,cAAQ,UAAU,IAAI,KAAK,iBAAkB,CAAA;AAAA,IAC/C;AAEA,WAAO,EAAE,QAAQ;AAAA,EACnB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,UAAU,QAAmC;AACrC,UAAA,KAAK,KAAK,UAAA,EAAY;AACzB,OAAA,aAAa,YAAW,KAAK,KAAK;AAC9B,WAAA;AAAA,EACT;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASA,UAAU,UAAyB,KAAkB,QAA+B;AAY3E,WAAA;AAAA,EACT;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,WAAoB;AACX,WAAA;AAAA,EACT;AAEF;"}
@@ -1,11 +0,0 @@
1
- import { reactive } from "vue";
2
- const ToolbarExtendPlugins = reactive([]);
3
- const registerDocEditorToolbarExtend = function(options) {
4
- ToolbarExtendPlugins.push(options);
5
- ToolbarExtendPlugins.sort((a, b) => a.sort < b.sort ? 1 : -1);
6
- };
7
- export {
8
- ToolbarExtendPlugins,
9
- registerDocEditorToolbarExtend
10
- };
11
- //# sourceMappingURL=defines.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"defines.js","sources":["../../../../../../../src/components/basic/doc-editor/plugins/ToolbarPlugin/defines.ts"],"sourcesContent":["\r\nimport { reactive } from 'vue'\r\n\r\n/**\r\n * 工具条扩展\r\n */\r\nexport type ToolbarExtendPlugin = {\r\n icon: string;\r\n text:string,\r\n action:Function,\r\n sort:number\r\n};\r\n\r\n// 插入的插件列表\r\nexport const ToolbarExtendPlugins = reactive<ToolbarExtendPlugin[]>([]);\r\n\r\n/**\r\n * 注册工具条的扩展\r\n * @param options \r\n */\r\nexport const registerDocEditorToolbarExtend = function(options:ToolbarExtendPlugin){\r\n ToolbarExtendPlugins.push(options);\r\n ToolbarExtendPlugins.sort((a,b)=>a.sort<b.sort ? 1:-1);\r\n}\r\n"],"names":[],"mappings":";AAca,MAAA,uBAAuB,SAAgC,EAAE;AAMzD,MAAA,iCAAiC,SAAS,SAA4B;AACjF,uBAAqB,KAAK,OAAO;AACZ,uBAAA,KAAK,CAAC,GAAE,MAAI,EAAE,OAAK,EAAE,OAAO,IAAE,EAAE;AACvD;"}