@maketribe/ms-app 3.2.5 → 3.2.7

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 (629) 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/abstract/abstract-select/abstract-select-options.js.map +1 -1
  4. package/dist/cjs/components/abstract/abstract-select/abstract-select.js.map +1 -1
  5. package/dist/cjs/components/abstract/abstract-select/index.js.map +1 -1
  6. package/dist/cjs/components/basic/button/button-options.js.map +1 -1
  7. package/dist/cjs/components/basic/code-editor/code-editor-options.js.map +1 -1
  8. package/dist/cjs/components/basic/code-editor/code-editor.js.map +1 -1
  9. package/dist/cjs/components/basic/code-editor/index.js.map +1 -1
  10. package/dist/cjs/components/basic/config-provider/config-provider-options.js.map +1 -1
  11. package/dist/cjs/components/basic/data-select/data-select-options.js.map +1 -1
  12. package/dist/cjs/components/basic/data-select/data-select.js.map +1 -1
  13. package/dist/cjs/components/basic/data-table-select/data-table-select-options.js.map +1 -1
  14. package/dist/cjs/components/basic/data-table-select/data-table-select.js.map +1 -1
  15. package/dist/cjs/components/basic/data-table-select/index.js.map +1 -1
  16. package/dist/cjs/components/basic/data-tree-select/data-tree-select-options.js +4 -0
  17. package/dist/cjs/components/basic/data-tree-select/data-tree-select-options.js.map +1 -1
  18. package/dist/cjs/components/basic/data-tree-select/data-tree-select.js +1 -0
  19. package/dist/cjs/components/basic/data-tree-select/data-tree-select.js.map +1 -1
  20. package/dist/cjs/components/basic/data-tree-select/index.js.map +1 -1
  21. package/dist/cjs/components/basic/date-picker/date-picker-options.js.map +1 -1
  22. package/dist/cjs/components/basic/date-picker/date-picker.js.map +1 -1
  23. package/dist/cjs/components/basic/date-picker/index.js.map +1 -1
  24. package/dist/cjs/components/basic/doc-editor/editor.vue.js.map +1 -1
  25. package/dist/cjs/components/basic/doc-editor/lexical-vue/components/LexicalAutoLinkPlugin/index.vue.js +2 -37
  26. package/dist/cjs/components/basic/doc-editor/lexical-vue/components/LexicalAutoLinkPlugin/index.vue.js.map +1 -1
  27. package/dist/cjs/components/basic/doc-editor/lexical-vue/components/LexicalAutoLinkPlugin/index.vue2.js +37 -2
  28. package/dist/cjs/components/basic/doc-editor/lexical-vue/components/LexicalAutoLinkPlugin/index.vue2.js.map +1 -1
  29. package/dist/cjs/components/basic/doc-editor/lexical-vue/components/LexicalBlockWithAlignableContents.vue.js +4 -0
  30. package/dist/cjs/components/basic/doc-editor/lexical-vue/components/LexicalBlockWithAlignableContents.vue.js.map +1 -0
  31. package/dist/cjs/components/basic/doc-editor/lexical-vue/components/LexicalBlockWithAlignableContents.vue2.js +108 -0
  32. package/dist/cjs/components/basic/doc-editor/lexical-vue/components/LexicalBlockWithAlignableContents.vue2.js.map +1 -0
  33. package/dist/cjs/components/basic/doc-editor/lexical-vue/components/LexicalDecoratorBlockNode.js +4 -0
  34. package/dist/cjs/components/basic/doc-editor/lexical-vue/components/LexicalDecoratorBlockNode.js.map +1 -1
  35. package/dist/cjs/components/basic/doc-editor/lexical-vue/components/LexicalRichTextPlugin.vue.js +24 -18
  36. package/dist/cjs/components/basic/doc-editor/lexical-vue/components/LexicalRichTextPlugin.vue.js.map +1 -1
  37. package/dist/cjs/components/basic/doc-editor/plugins/AutoLinkPlugin.vue.js +1 -1
  38. package/dist/cjs/components/basic/doc-editor/plugins/HtmlBlockPlugin/DocHtmlBlockComponent.js +93 -0
  39. package/dist/cjs/components/basic/doc-editor/plugins/HtmlBlockPlugin/DocHtmlBlockComponent.js.map +1 -0
  40. package/dist/cjs/components/basic/doc-editor/plugins/HtmlBlockPlugin/index.js +128 -0
  41. package/dist/cjs/components/basic/doc-editor/plugins/HtmlBlockPlugin/index.js.map +1 -0
  42. package/dist/cjs/components/basic/doc-editor/plugins/HtmlBlockPlugin/index.vue.js +51 -0
  43. package/dist/cjs/components/basic/doc-editor/plugins/HtmlBlockPlugin/index.vue.js.map +1 -0
  44. package/dist/cjs/components/basic/doc-editor/plugins/HtmlBlockPlugin/index.vue2.js +4 -0
  45. package/dist/cjs/components/basic/doc-editor/plugins/HtmlBlockPlugin/index.vue2.js.map +1 -0
  46. package/dist/cjs/components/basic/doc-editor/plugins/ImagePlugin/ImageEditPanel.js +0 -1
  47. package/dist/cjs/components/basic/doc-editor/plugins/ImagePlugin/ImageEditPanel.js.map +1 -1
  48. package/dist/cjs/components/basic/doc-editor/plugins/ImageTextPlugin/index.js +7 -0
  49. package/dist/cjs/components/basic/doc-editor/plugins/ImageTextPlugin/index.js.map +1 -1
  50. package/dist/cjs/components/basic/doc-editor/plugins/ImageTextPlugin/index.vue.js.map +1 -1
  51. package/dist/cjs/components/basic/doc-editor/plugins/ToolbarPlugin/{HtmlCodeTool.vue.js → PreviewToolbar.vue.js} +56 -43
  52. package/dist/cjs/components/basic/doc-editor/plugins/ToolbarPlugin/PreviewToolbar.vue.js.map +1 -0
  53. package/dist/cjs/components/basic/doc-editor/plugins/ToolbarPlugin/PreviewToolbar.vue2.js +4 -0
  54. package/dist/cjs/components/basic/doc-editor/plugins/ToolbarPlugin/PreviewToolbar.vue2.js.map +1 -0
  55. package/dist/cjs/components/basic/doc-editor/plugins/ToolbarPlugin/index.vue.js +2 -2
  56. package/dist/cjs/components/basic/doc-editor/plugins/ToolbarPlugin/index.vue.js.map +1 -1
  57. package/dist/cjs/components/basic/doc-editor/plugins/index.vue.js +3 -1
  58. package/dist/cjs/components/basic/doc-editor/plugins/index.vue.js.map +1 -1
  59. package/dist/cjs/components/basic/doc-editor/plugins/nodes.js +3 -1
  60. package/dist/cjs/components/basic/doc-editor/plugins/nodes.js.map +1 -1
  61. package/dist/cjs/components/basic/icon-select/icon-select-options.js.map +1 -1
  62. package/dist/cjs/components/basic/icon-select/icon-select.js.map +1 -1
  63. package/dist/cjs/components/basic/icon-select/index.js.map +1 -1
  64. package/dist/cjs/components/basic/image-cropper/image-cropper-api.js.map +1 -1
  65. package/dist/cjs/components/basic/image-cropper/image-cropper-content.js.map +1 -1
  66. package/dist/cjs/components/basic/image-cropper/index.js.map +1 -1
  67. package/dist/cjs/components/basic/json-editor/json-editor-options.js.map +1 -1
  68. package/dist/cjs/components/basic/json-editor/json-editor.js.map +1 -1
  69. package/dist/cjs/components/basic/page-container/index.js.map +1 -1
  70. package/dist/cjs/components/basic/page-container/page-container.js.map +1 -1
  71. package/dist/cjs/components/basic/radio/index.js.map +1 -1
  72. package/dist/cjs/components/basic/radio/radio-options.js.map +1 -1
  73. package/dist/cjs/components/basic/radio/radio.js.map +1 -1
  74. package/dist/cjs/components/basic/system-provider/system-provider.js.map +1 -1
  75. package/dist/cjs/components/basic/upload-file/context/WebFileUploadContext.js.map +1 -1
  76. package/dist/cjs/components/basic/upload-file/ui/upload-image/upload-image.js +0 -85
  77. package/dist/cjs/components/basic/upload-file/ui/upload-image/upload-image.js.map +1 -1
  78. package/dist/cjs/components/business/resource-list/ResourceManager.js +0 -24
  79. package/dist/cjs/components/business/resource-list/ResourceManager.js.map +1 -1
  80. package/dist/cjs/components/business/resource-list/components/resource-item/index.vue.js.map +1 -1
  81. package/dist/cjs/components/business/resource-list/index.js.map +1 -1
  82. package/dist/cjs/components/business/resource-list/resource-list.vue.js +38 -15
  83. package/dist/cjs/components/business/resource-list/resource-list.vue.js.map +1 -1
  84. package/dist/cjs/components/business/resource-manager/index.js.map +1 -1
  85. package/dist/cjs/components/business/resource-manager/resource-manager.vue.js +1 -12
  86. package/dist/cjs/components/business/resource-manager/resource-manager.vue.js.map +1 -1
  87. package/dist/cjs/components/business/resource-select/index.js.map +1 -1
  88. package/dist/cjs/components/business/resource-select/resource-select-api.js.map +1 -1
  89. package/dist/cjs/components/business/verify-dialog/verify-dialog.js.map +1 -1
  90. package/dist/cjs/components/data-model/data-filter-form/components/condition-date/condition-date-options.js.map +1 -1
  91. package/dist/cjs/components/data-model/data-filter-form/components/condition-date/condition-date.js.map +1 -1
  92. package/dist/cjs/components/data-model/data-filter-form/components/condition-input/condition-input-options.js.map +1 -1
  93. package/dist/cjs/components/data-model/data-filter-form/components/condition-input/condition-input.js.map +1 -1
  94. package/dist/cjs/components/data-model/data-filter-form/components/condition-number/condition-number-options.js.map +1 -1
  95. package/dist/cjs/components/data-model/data-filter-form/components/condition-number/condition-number.js.map +1 -1
  96. package/dist/cjs/components/data-model/data-filter-form/components/condition-select/condition-select-options.js.map +1 -1
  97. package/dist/cjs/components/data-model/data-filter-form/components/condition-select/condition-select.js.map +1 -1
  98. package/dist/cjs/components/data-model/data-filter-form/data-filter-form-item/data-filter-form-item.js.map +1 -1
  99. package/dist/cjs/components/data-model/data-filter-form/data-filter-form-options.js.map +1 -1
  100. package/dist/cjs/components/data-model/data-filter-form/data-filter-form.js.map +1 -1
  101. package/dist/cjs/components/data-model/data-filter-form/index.js.map +1 -1
  102. package/dist/cjs/components/data-model/data-filter-form/token.js.map +1 -1
  103. package/dist/cjs/components/data-model/data-filter-popover/data-filter-popover-options.js.map +1 -1
  104. package/dist/cjs/components/data-model/data-filter-popover/data-filter-popover.js.map +1 -1
  105. package/dist/cjs/components/data-model/data-form/components/form-detail/form-detail-options.js.map +1 -1
  106. package/dist/cjs/components/data-model/data-form/components/form-detail/form-detail.js.map +1 -1
  107. package/dist/cjs/components/data-model/data-form/composables/use-form-item.js.map +1 -1
  108. package/dist/cjs/components/data-model/data-form/data-form-item/data-form-item.js.map +1 -1
  109. package/dist/cjs/components/data-model/data-form/data-form.js.map +1 -1
  110. package/dist/cjs/components/data-model/data-form/index.js.map +1 -1
  111. package/dist/cjs/components/data-model/data-form/token.js.map +1 -1
  112. package/dist/cjs/components/data-model/data-form/views/form/form-options.js.map +1 -1
  113. package/dist/cjs/components/data-model/data-form/views/form/form.js.map +1 -1
  114. package/dist/cjs/components/data-model/data-form/views/form-view/form-view.js.map +1 -1
  115. package/dist/cjs/components/data-model/data-table/components/column-action/column-action-options.js.map +1 -1
  116. package/dist/cjs/components/data-model/data-table/components/column-action/column-action.js.map +1 -1
  117. package/dist/cjs/components/data-model/data-table/components/column-date/column-date.js.map +1 -1
  118. package/dist/cjs/components/data-model/data-table/components/column-icon/column-icon.js.map +1 -1
  119. package/dist/cjs/components/data-model/data-table/components/column-image/column-image-options.js.map +1 -1
  120. package/dist/cjs/components/data-model/data-table/components/column-json/column-json-options.js.map +1 -1
  121. package/dist/cjs/components/data-model/data-table/components/column-json/column-json.js.map +1 -1
  122. package/dist/cjs/components/data-model/data-table/components/column-link/column-link-options.js.map +1 -1
  123. package/dist/cjs/components/data-model/data-table/components/column-object-mapping-text/column-object-mapping-text-options.js.map +1 -1
  124. package/dist/cjs/components/data-model/data-table/components/column-select/column-select-header.js.map +1 -1
  125. package/dist/cjs/components/data-model/data-table/components/column-select/column-select-options.js.map +1 -1
  126. package/dist/cjs/components/data-model/data-table/components/column-select/column-select.js.map +1 -1
  127. package/dist/cjs/components/data-model/data-table/components/column-sort/column-sort-options.js.map +1 -1
  128. package/dist/cjs/components/data-model/data-table/components/column-sort/column-sort.js.map +1 -1
  129. package/dist/cjs/components/data-model/data-table/components/column-sort/index.js.map +1 -1
  130. package/dist/cjs/components/data-model/data-table/components/column-switch/column-switch-options.js.map +1 -1
  131. package/dist/cjs/components/data-model/data-table/components/column-switch/column-switch.js.map +1 -1
  132. package/dist/cjs/components/data-model/data-table/components/column-tag/column-tag-options.js.map +1 -1
  133. package/dist/cjs/components/data-model/data-table/components/column-tag/column-tag.js.map +1 -1
  134. package/dist/cjs/components/data-model/data-table/components/column-text/column-text-options.js.map +1 -1
  135. package/dist/cjs/components/data-model/data-table/components/column-text/column-text.js.map +1 -1
  136. package/dist/cjs/components/data-model/data-table/components/header-components/batch-opt/batch-opt.js.map +1 -1
  137. package/dist/cjs/components/data-model/data-table/components/header-components/batch-opt/index.js.map +1 -1
  138. package/dist/cjs/components/data-model/data-table/components/header-components/table-filter/index.js.map +1 -1
  139. package/dist/cjs/components/data-model/data-table/components/header-components/table-filter/table-filter.js.map +1 -1
  140. package/dist/cjs/components/data-model/data-table/composables/use-query-params.js.map +1 -1
  141. package/dist/cjs/components/data-model/data-table/data-table-column/data-table-column-options.js.map +1 -1
  142. package/dist/cjs/components/data-model/data-table/data-table-column/data-table-column.js.map +1 -1
  143. package/dist/cjs/components/data-model/data-table/data-table-column/index.js.map +1 -1
  144. package/dist/cjs/components/data-model/data-table/data-table-options.js.map +1 -1
  145. package/dist/cjs/components/data-model/data-table/data-table.js.map +1 -1
  146. package/dist/cjs/components/data-model/data-table/index.js.map +1 -1
  147. package/dist/cjs/components/data-model/data-table/token.js.map +1 -1
  148. package/dist/cjs/components/data-model/data-table/views/table/table-options.js.map +1 -1
  149. package/dist/cjs/components/data-model/data-table/views/table/table.js.map +1 -1
  150. package/dist/cjs/components/data-model/data-table/views/table-tree/table-tree-options.js.map +1 -1
  151. package/dist/cjs/components/data-model/data-table/views/table-tree/table-tree.js.map +1 -1
  152. package/dist/cjs/components/data-model/data-table/views/table-view/classify-search/classify-search.js.map +1 -1
  153. package/dist/cjs/components/data-model/data-table/views/table-view/header/header.js.map +1 -1
  154. package/dist/cjs/components/data-model/data-table/views/table-view/table-view-options.js.map +1 -1
  155. package/dist/cjs/components/data-model/data-table/views/table-view/table-view.js.map +1 -1
  156. package/dist/cjs/components/data-model/data-table/views/tree/index.js.map +1 -1
  157. package/dist/cjs/components/data-model/data-table/views/tree/tree-options.js.map +1 -1
  158. package/dist/cjs/components/data-model/data-table/views/tree/tree.js +14 -2
  159. package/dist/cjs/components/data-model/data-table/views/tree/tree.js.map +1 -1
  160. package/dist/cjs/components/data-model/data-table/views/tree-view/tree-view-options.js.map +1 -1
  161. package/dist/cjs/components/data-model/data-table/views/tree-view/tree-view.js.map +1 -1
  162. package/dist/cjs/components/data-model/data-table-pagination/data-table-pagination-options.js.map +1 -1
  163. package/dist/cjs/components/data-model/data-table-pagination/data-table-pagination.js.map +1 -1
  164. package/dist/cjs/composables/use-column-component.js.map +1 -1
  165. package/dist/cjs/composables/use-i18n.js.map +1 -1
  166. package/dist/cjs/composables/use-single-view.js.map +1 -1
  167. package/dist/cjs/constants/data-model.js.map +1 -1
  168. package/dist/cjs/constants/menu.js.map +1 -1
  169. package/dist/cjs/core/MSAppClient.js.map +1 -1
  170. package/dist/cjs/core/MkModule.js.map +1 -1
  171. package/dist/cjs/core/PageManager.js.map +1 -1
  172. package/dist/cjs/core/Router.js.map +1 -1
  173. package/dist/cjs/core/UserInfo.js.map +1 -1
  174. package/dist/cjs/core/UserSession.js.map +1 -1
  175. package/dist/cjs/core/component/ConfigComponents.js.map +1 -1
  176. package/dist/cjs/core/component/DataFilterComponents.js.map +1 -1
  177. package/dist/cjs/core/component/DataFormComponents.js.map +1 -1
  178. package/dist/cjs/core/component/DataTableComponents.js.map +1 -1
  179. package/dist/cjs/core/component/DataTableHeaderComponents.js.map +1 -1
  180. package/dist/cjs/core/menu/Menu.js.map +1 -1
  181. package/dist/cjs/core/menu/MenuNode.js.map +1 -1
  182. package/dist/cjs/core/tabs/Tab.js.map +1 -1
  183. package/dist/cjs/define-data-form.js.map +1 -1
  184. package/dist/cjs/define-data-table.js.map +1 -1
  185. package/dist/cjs/define-data-tree.js.map +1 -1
  186. package/dist/cjs/index.js +4 -2
  187. package/dist/cjs/index.js.map +1 -1
  188. package/dist/cjs/init-application.js.map +1 -1
  189. package/dist/cjs/installer.js.map +1 -1
  190. package/dist/cjs/layouts/components/dialogs/dialogs.js.map +1 -1
  191. package/dist/cjs/layouts/components/header/index.js.map +1 -1
  192. package/dist/cjs/message-impl/DialogerImpl.js.map +1 -1
  193. package/dist/cjs/modules/cms/components/part-tree/index.vue.js +24 -9
  194. package/dist/cjs/modules/cms/components/part-tree/index.vue.js.map +1 -1
  195. package/dist/cjs/modules/cms/composables/part-extensions.js +12 -0
  196. package/dist/cjs/modules/cms/composables/part-extensions.js.map +1 -0
  197. package/dist/cjs/modules/cms/constants/index.js.map +1 -1
  198. package/dist/cjs/modules/cms/dataviews/cms-ad-contents/CmsAdContentsTable.js.map +1 -1
  199. package/dist/cjs/modules/cms/dataviews/cms-articles/cms-article-atlas/CmsArticleAtlasTable.js.map +1 -1
  200. package/dist/cjs/modules/cms/dataviews/cms-parts/CmsContentManPartForm.js +26 -0
  201. package/dist/cjs/modules/cms/dataviews/cms-parts/CmsContentManPartForm.js.map +1 -0
  202. package/dist/cjs/modules/cms/dataviews/cms-parts/CmsPartTree.js.map +1 -1
  203. package/dist/cjs/modules/cms/index.js +2 -1
  204. package/dist/cjs/modules/cms/index.js.map +1 -1
  205. package/dist/cjs/modules/cms/pages/cms-ad/index.vue2.js +28 -6
  206. package/dist/cjs/modules/cms/pages/cms-ad/index.vue2.js.map +1 -1
  207. package/dist/cjs/modules/cms/pages/cms-contents/article-edit-add-page.vue2.js +44 -22
  208. package/dist/cjs/modules/cms/pages/cms-contents/article-edit-add-page.vue2.js.map +1 -1
  209. package/dist/cjs/modules/cms/pages/cms-contents/components/article-list.vue.js +2 -2
  210. package/dist/cjs/modules/cms/pages/cms-contents/components/article-list.vue.js.map +1 -1
  211. package/dist/cjs/modules/cms/pages/cms-contents/index.vue2.js +135 -102
  212. package/dist/cjs/modules/cms/pages/cms-contents/index.vue2.js.map +1 -1
  213. package/dist/cjs/modules/cms/pages/cms-resource/index.vue2.js +45 -5
  214. package/dist/cjs/modules/cms/pages/cms-resource/index.vue2.js.map +1 -1
  215. package/dist/cjs/modules/ms/components/markdown-editor/markdown-editor.js.map +1 -1
  216. package/dist/cjs/modules/ms/components/material-list/components/file-view/file-view.js.map +1 -1
  217. package/dist/cjs/modules/ms/components/material-list/components/image-view/image-view.js.map +1 -1
  218. package/dist/cjs/modules/ms/components/material-list/index.js.map +1 -1
  219. package/dist/cjs/modules/ms/components/material-list/material-group-form-popover.js.map +1 -1
  220. package/dist/cjs/modules/ms/components/material-list/material-group.js.map +1 -1
  221. package/dist/cjs/modules/ms/components/material-list/material-item.vue.js +0 -1
  222. package/dist/cjs/modules/ms/components/material-list/material-item.vue.js.map +1 -1
  223. package/dist/cjs/modules/ms/components/material-list/material-list-options.js +4 -3
  224. package/dist/cjs/modules/ms/components/material-list/material-list-options.js.map +1 -1
  225. package/dist/cjs/modules/ms/components/material-list/material-list.js +16 -0
  226. package/dist/cjs/modules/ms/components/material-list/material-list.js.map +1 -1
  227. package/dist/cjs/modules/ms/components/material-select/index.js.map +1 -1
  228. package/dist/cjs/modules/ms/components/material-select/material-select-api.js +3 -2
  229. package/dist/cjs/modules/ms/components/material-select/material-select-api.js.map +1 -1
  230. package/dist/cjs/modules/ms/components/rich-text-editor/index.js.map +1 -1
  231. package/dist/cjs/modules/ms/dataviews/log/local-log/LocalLogTree.js.map +1 -1
  232. package/dist/cjs/modules/ms/dataviews/ms-config/MsConfigForm.js.map +1 -1
  233. package/dist/cjs/modules/ms/dataviews/ms-config/MsConfigTable.js.map +1 -1
  234. package/dist/cjs/modules/ms/dataviews/ms-deny-ip-access-list/MsDenyIPAccessListTable.js.map +1 -1
  235. package/dist/cjs/modules/ms/dataviews/ms-ip-white-list/MsIPWhitelistTable.js.map +1 -1
  236. package/dist/cjs/modules/ms/dataviews/ms-material/MsMaterialTable.js +11 -1
  237. package/dist/cjs/modules/ms/dataviews/ms-material/MsMaterialTable.js.map +1 -1
  238. package/dist/cjs/modules/ms/dataviews/ms-material/ms-material-group/MsMaterialGroupTree.js.map +1 -1
  239. package/dist/cjs/modules/ms/dataviews/ms-member/MsMemberForm.js.map +1 -1
  240. package/dist/cjs/modules/ms/dataviews/ms-member/MsMemberTable.js.map +1 -1
  241. package/dist/cjs/modules/ms/dataviews/ms-member/components/MemberNickNameColumn.js.map +1 -1
  242. package/dist/cjs/modules/ms/dataviews/ms-member/components/MemberRolesColumn.js.map +1 -1
  243. package/dist/cjs/modules/ms/dataviews/ms-member-role/MsMemberRoleForm.js.map +1 -1
  244. package/dist/cjs/modules/ms/dataviews/ms-member-role/MsMemberRoleTable.js.map +1 -1
  245. package/dist/cjs/modules/ms/dataviews/ms-menu/MsMenuForm.js +2 -1
  246. package/dist/cjs/modules/ms/dataviews/ms-menu/MsMenuForm.js.map +1 -1
  247. package/dist/cjs/modules/ms/dataviews/ms-menu/MsMenuTable.js.map +1 -1
  248. package/dist/cjs/modules/ms/dataviews/ms-menu/MsMenuTree.js +18 -0
  249. package/dist/cjs/modules/ms/dataviews/ms-menu/MsMenuTree.js.map +1 -1
  250. package/dist/cjs/modules/ms/dataviews/ms-menu/ms-permission-point/MsPermissionPointDefineForm.js.map +1 -1
  251. package/dist/cjs/modules/ms/dataviews/ms-menu/ms-route/MsRouteForm.js.map +1 -1
  252. package/dist/cjs/modules/ms/dataviews/ms-role/MsRoleForm.js.map +1 -1
  253. package/dist/cjs/modules/ms/dataviews/ms-role/MsRolePermissionConfigTable.js +4 -1
  254. package/dist/cjs/modules/ms/dataviews/ms-role/MsRolePermissionConfigTable.js.map +1 -1
  255. package/dist/cjs/modules/ms/dataviews/ms-role/MsRoleTable.js.map +1 -1
  256. package/dist/cjs/modules/ms/index.js +2 -2
  257. package/dist/cjs/modules/ms/index.js.map +1 -1
  258. package/dist/cjs/modules/ms/material-upload-context/MaterialUploadContext.js.map +1 -1
  259. package/dist/cjs/modules/ms/material-upload-context/material-upload-context-options.js.map +1 -1
  260. package/dist/cjs/modules/ms/material-upload-context/material-upload-context.js.map +1 -1
  261. package/dist/cjs/modules/ms/pages/local-log/index.vue2.js.map +1 -1
  262. package/dist/cjs/modules/ms/pages/ms-material/index.vue2.js +13 -16
  263. package/dist/cjs/modules/ms/pages/ms-material/index.vue2.js.map +1 -1
  264. package/dist/cjs/modules/ms/pages/ms-menu/index.vue2.js +47 -6
  265. package/dist/cjs/modules/ms/pages/ms-menu/index.vue2.js.map +1 -1
  266. package/dist/cjs/modules/ms/pages/ms-role/components/role-permission-config/role-permission-config-options.js.map +1 -1
  267. package/dist/cjs/modules/ms/pages/ms-role/components/role-permission-config/role-permission-config.js.map +1 -1
  268. package/dist/cjs/page/index/404.vue.js.map +1 -1
  269. package/dist/cjs/page/index/dv/default/edit.vue2.js.map +1 -1
  270. package/dist/cjs/page/index/dv/default/single/list/dialog.vue2.js.map +1 -1
  271. package/dist/cjs/page/index/dv/default/single/list/normal.vue2.js.map +1 -1
  272. package/dist/cjs/page/index/dv/default/single/table-tree/dialog.vue2.js.map +1 -1
  273. package/dist/cjs/page/index/dv/default/single/table-tree/normal.vue2.js.map +1 -1
  274. package/dist/cjs/page/index/dv/default/single/tree/dialog.vue2.js.map +1 -1
  275. package/dist/cjs/page/index/dv/default/table.vue2.js.map +1 -1
  276. package/dist/cjs/page/login/index.vue2.js.map +1 -1
  277. package/dist/cjs/page/signup/index.vue2.js.map +1 -1
  278. package/dist/cjs/router-middleware/auth.js.map +1 -1
  279. package/dist/esm/assets/iconfonts/iconfont.js +1 -1
  280. package/dist/esm/assets/iconfonts/iconfont.js.map +1 -1
  281. package/dist/esm/components/abstract/abstract-select/abstract-select-options.js.map +1 -1
  282. package/dist/esm/components/abstract/abstract-select/abstract-select.js.map +1 -1
  283. package/dist/esm/components/abstract/abstract-select/index.js.map +1 -1
  284. package/dist/esm/components/basic/button/button-options.js.map +1 -1
  285. package/dist/esm/components/basic/code-editor/code-editor-options.js.map +1 -1
  286. package/dist/esm/components/basic/code-editor/code-editor.js.map +1 -1
  287. package/dist/esm/components/basic/code-editor/index.js.map +1 -1
  288. package/dist/esm/components/basic/config-provider/config-provider-options.js.map +1 -1
  289. package/dist/esm/components/basic/data-select/data-select-options.js.map +1 -1
  290. package/dist/esm/components/basic/data-select/data-select.js.map +1 -1
  291. package/dist/esm/components/basic/data-table-select/data-table-select-options.js.map +1 -1
  292. package/dist/esm/components/basic/data-table-select/data-table-select.js.map +1 -1
  293. package/dist/esm/components/basic/data-table-select/index.js.map +1 -1
  294. package/dist/esm/components/basic/data-tree-select/data-tree-select-options.js +4 -0
  295. package/dist/esm/components/basic/data-tree-select/data-tree-select-options.js.map +1 -1
  296. package/dist/esm/components/basic/data-tree-select/data-tree-select.js +1 -0
  297. package/dist/esm/components/basic/data-tree-select/data-tree-select.js.map +1 -1
  298. package/dist/esm/components/basic/data-tree-select/index.js.map +1 -1
  299. package/dist/esm/components/basic/date-picker/date-picker-options.js.map +1 -1
  300. package/dist/esm/components/basic/date-picker/date-picker.js.map +1 -1
  301. package/dist/esm/components/basic/date-picker/index.js.map +1 -1
  302. package/dist/esm/components/basic/doc-editor/editor.vue.js.map +1 -1
  303. package/dist/esm/components/basic/doc-editor/lexical-vue/components/LexicalAutoLinkPlugin/index.vue.js +1 -36
  304. package/dist/esm/components/basic/doc-editor/lexical-vue/components/LexicalAutoLinkPlugin/index.vue.js.map +1 -1
  305. package/dist/esm/components/basic/doc-editor/lexical-vue/components/LexicalAutoLinkPlugin/index.vue2.js +36 -1
  306. package/dist/esm/components/basic/doc-editor/lexical-vue/components/LexicalAutoLinkPlugin/index.vue2.js.map +1 -1
  307. package/dist/esm/components/basic/doc-editor/lexical-vue/components/LexicalBlockWithAlignableContents.vue.js +5 -0
  308. package/dist/esm/components/basic/doc-editor/lexical-vue/components/LexicalBlockWithAlignableContents.vue.js.map +1 -0
  309. package/dist/esm/components/basic/doc-editor/lexical-vue/components/LexicalBlockWithAlignableContents.vue2.js +109 -0
  310. package/dist/esm/components/basic/doc-editor/lexical-vue/components/LexicalBlockWithAlignableContents.vue2.js.map +1 -0
  311. package/dist/esm/components/basic/doc-editor/lexical-vue/components/LexicalDecoratorBlockNode.js +4 -0
  312. package/dist/esm/components/basic/doc-editor/lexical-vue/components/LexicalDecoratorBlockNode.js.map +1 -1
  313. package/dist/esm/components/basic/doc-editor/lexical-vue/components/LexicalRichTextPlugin.vue.js +25 -19
  314. package/dist/esm/components/basic/doc-editor/lexical-vue/components/LexicalRichTextPlugin.vue.js.map +1 -1
  315. package/dist/esm/components/basic/doc-editor/plugins/AutoLinkPlugin.vue.js +1 -1
  316. package/dist/esm/components/basic/doc-editor/plugins/HtmlBlockPlugin/DocHtmlBlockComponent.js +94 -0
  317. package/dist/esm/components/basic/doc-editor/plugins/HtmlBlockPlugin/DocHtmlBlockComponent.js.map +1 -0
  318. package/dist/esm/components/basic/doc-editor/plugins/HtmlBlockPlugin/index.js +128 -0
  319. package/dist/esm/components/basic/doc-editor/plugins/HtmlBlockPlugin/index.js.map +1 -0
  320. package/dist/esm/components/basic/doc-editor/plugins/HtmlBlockPlugin/index.vue.js +52 -0
  321. package/dist/esm/components/basic/doc-editor/plugins/HtmlBlockPlugin/index.vue.js.map +1 -0
  322. package/dist/esm/components/basic/doc-editor/plugins/HtmlBlockPlugin/index.vue2.js +5 -0
  323. package/dist/esm/components/basic/doc-editor/plugins/HtmlBlockPlugin/index.vue2.js.map +1 -0
  324. package/dist/esm/components/basic/doc-editor/plugins/ImagePlugin/ImageEditPanel.js +0 -1
  325. package/dist/esm/components/basic/doc-editor/plugins/ImagePlugin/ImageEditPanel.js.map +1 -1
  326. package/dist/esm/components/basic/doc-editor/plugins/ImageTextPlugin/index.js +7 -0
  327. package/dist/esm/components/basic/doc-editor/plugins/ImageTextPlugin/index.js.map +1 -1
  328. package/dist/esm/components/basic/doc-editor/plugins/ImageTextPlugin/index.vue.js.map +1 -1
  329. package/dist/esm/components/basic/doc-editor/plugins/ToolbarPlugin/PreviewToolbar.vue.js +117 -0
  330. package/dist/esm/components/basic/doc-editor/plugins/ToolbarPlugin/PreviewToolbar.vue.js.map +1 -0
  331. package/dist/esm/components/basic/doc-editor/plugins/ToolbarPlugin/PreviewToolbar.vue2.js +5 -0
  332. package/dist/esm/components/basic/doc-editor/plugins/ToolbarPlugin/PreviewToolbar.vue2.js.map +1 -0
  333. package/dist/esm/components/basic/doc-editor/plugins/ToolbarPlugin/index.vue.js +1 -1
  334. package/dist/esm/components/basic/doc-editor/plugins/ToolbarPlugin/index.vue.js.map +1 -1
  335. package/dist/esm/components/basic/doc-editor/plugins/index.vue.js +3 -1
  336. package/dist/esm/components/basic/doc-editor/plugins/index.vue.js.map +1 -1
  337. package/dist/esm/components/basic/doc-editor/plugins/nodes.js +3 -1
  338. package/dist/esm/components/basic/doc-editor/plugins/nodes.js.map +1 -1
  339. package/dist/esm/components/basic/icon-select/icon-select-options.js.map +1 -1
  340. package/dist/esm/components/basic/icon-select/icon-select.js.map +1 -1
  341. package/dist/esm/components/basic/icon-select/index.js.map +1 -1
  342. package/dist/esm/components/basic/image-cropper/image-cropper-api.js.map +1 -1
  343. package/dist/esm/components/basic/image-cropper/image-cropper-content.js.map +1 -1
  344. package/dist/esm/components/basic/image-cropper/index.js.map +1 -1
  345. package/dist/esm/components/basic/json-editor/json-editor-options.js.map +1 -1
  346. package/dist/esm/components/basic/json-editor/json-editor.js.map +1 -1
  347. package/dist/esm/components/basic/page-container/index.js.map +1 -1
  348. package/dist/esm/components/basic/page-container/page-container.js.map +1 -1
  349. package/dist/esm/components/basic/radio/index.js.map +1 -1
  350. package/dist/esm/components/basic/radio/radio-options.js.map +1 -1
  351. package/dist/esm/components/basic/radio/radio.js.map +1 -1
  352. package/dist/esm/components/basic/system-provider/system-provider.js.map +1 -1
  353. package/dist/esm/components/basic/upload-file/context/WebFileUploadContext.js.map +1 -1
  354. package/dist/esm/components/basic/upload-file/ui/upload-image/upload-image.js +0 -85
  355. package/dist/esm/components/basic/upload-file/ui/upload-image/upload-image.js.map +1 -1
  356. package/dist/esm/components/business/resource-list/ResourceManager.js +1 -25
  357. package/dist/esm/components/business/resource-list/ResourceManager.js.map +1 -1
  358. package/dist/esm/components/business/resource-list/components/resource-item/index.vue.js.map +1 -1
  359. package/dist/esm/components/business/resource-list/index.js.map +1 -1
  360. package/dist/esm/components/business/resource-list/resource-list.vue.js +39 -16
  361. package/dist/esm/components/business/resource-list/resource-list.vue.js.map +1 -1
  362. package/dist/esm/components/business/resource-manager/index.js.map +1 -1
  363. package/dist/esm/components/business/resource-manager/resource-manager.vue.js +2 -13
  364. package/dist/esm/components/business/resource-manager/resource-manager.vue.js.map +1 -1
  365. package/dist/esm/components/business/resource-select/index.js.map +1 -1
  366. package/dist/esm/components/business/resource-select/resource-select-api.js.map +1 -1
  367. package/dist/esm/components/business/verify-dialog/verify-dialog.js.map +1 -1
  368. package/dist/esm/components/data-model/data-filter-form/components/condition-date/condition-date-options.js.map +1 -1
  369. package/dist/esm/components/data-model/data-filter-form/components/condition-date/condition-date.js.map +1 -1
  370. package/dist/esm/components/data-model/data-filter-form/components/condition-input/condition-input-options.js.map +1 -1
  371. package/dist/esm/components/data-model/data-filter-form/components/condition-input/condition-input.js.map +1 -1
  372. package/dist/esm/components/data-model/data-filter-form/components/condition-number/condition-number-options.js.map +1 -1
  373. package/dist/esm/components/data-model/data-filter-form/components/condition-number/condition-number.js.map +1 -1
  374. package/dist/esm/components/data-model/data-filter-form/components/condition-select/condition-select-options.js.map +1 -1
  375. package/dist/esm/components/data-model/data-filter-form/components/condition-select/condition-select.js.map +1 -1
  376. package/dist/esm/components/data-model/data-filter-form/data-filter-form-item/data-filter-form-item.js.map +1 -1
  377. package/dist/esm/components/data-model/data-filter-form/data-filter-form-options.js.map +1 -1
  378. package/dist/esm/components/data-model/data-filter-form/data-filter-form.js.map +1 -1
  379. package/dist/esm/components/data-model/data-filter-form/index.js.map +1 -1
  380. package/dist/esm/components/data-model/data-filter-form/token.js.map +1 -1
  381. package/dist/esm/components/data-model/data-filter-popover/data-filter-popover-options.js.map +1 -1
  382. package/dist/esm/components/data-model/data-filter-popover/data-filter-popover.js.map +1 -1
  383. package/dist/esm/components/data-model/data-form/components/form-detail/form-detail-options.js.map +1 -1
  384. package/dist/esm/components/data-model/data-form/components/form-detail/form-detail.js.map +1 -1
  385. package/dist/esm/components/data-model/data-form/composables/use-form-item.js.map +1 -1
  386. package/dist/esm/components/data-model/data-form/data-form-item/data-form-item.js.map +1 -1
  387. package/dist/esm/components/data-model/data-form/data-form.js.map +1 -1
  388. package/dist/esm/components/data-model/data-form/index.js.map +1 -1
  389. package/dist/esm/components/data-model/data-form/token.js.map +1 -1
  390. package/dist/esm/components/data-model/data-form/views/form/form-options.js.map +1 -1
  391. package/dist/esm/components/data-model/data-form/views/form/form.js.map +1 -1
  392. package/dist/esm/components/data-model/data-form/views/form-view/form-view.js.map +1 -1
  393. package/dist/esm/components/data-model/data-table/components/column-action/column-action-options.js.map +1 -1
  394. package/dist/esm/components/data-model/data-table/components/column-action/column-action.js.map +1 -1
  395. package/dist/esm/components/data-model/data-table/components/column-date/column-date.js.map +1 -1
  396. package/dist/esm/components/data-model/data-table/components/column-icon/column-icon.js.map +1 -1
  397. package/dist/esm/components/data-model/data-table/components/column-image/column-image-options.js.map +1 -1
  398. package/dist/esm/components/data-model/data-table/components/column-json/column-json-options.js.map +1 -1
  399. package/dist/esm/components/data-model/data-table/components/column-json/column-json.js.map +1 -1
  400. package/dist/esm/components/data-model/data-table/components/column-link/column-link-options.js.map +1 -1
  401. package/dist/esm/components/data-model/data-table/components/column-object-mapping-text/column-object-mapping-text-options.js.map +1 -1
  402. package/dist/esm/components/data-model/data-table/components/column-select/column-select-header.js.map +1 -1
  403. package/dist/esm/components/data-model/data-table/components/column-select/column-select-options.js.map +1 -1
  404. package/dist/esm/components/data-model/data-table/components/column-select/column-select.js.map +1 -1
  405. package/dist/esm/components/data-model/data-table/components/column-sort/column-sort-options.js.map +1 -1
  406. package/dist/esm/components/data-model/data-table/components/column-sort/column-sort.js.map +1 -1
  407. package/dist/esm/components/data-model/data-table/components/column-sort/index.js.map +1 -1
  408. package/dist/esm/components/data-model/data-table/components/column-switch/column-switch-options.js.map +1 -1
  409. package/dist/esm/components/data-model/data-table/components/column-switch/column-switch.js.map +1 -1
  410. package/dist/esm/components/data-model/data-table/components/column-tag/column-tag-options.js.map +1 -1
  411. package/dist/esm/components/data-model/data-table/components/column-tag/column-tag.js.map +1 -1
  412. package/dist/esm/components/data-model/data-table/components/column-text/column-text-options.js.map +1 -1
  413. package/dist/esm/components/data-model/data-table/components/column-text/column-text.js.map +1 -1
  414. package/dist/esm/components/data-model/data-table/components/header-components/batch-opt/batch-opt.js.map +1 -1
  415. package/dist/esm/components/data-model/data-table/components/header-components/batch-opt/index.js.map +1 -1
  416. package/dist/esm/components/data-model/data-table/components/header-components/table-filter/index.js.map +1 -1
  417. package/dist/esm/components/data-model/data-table/components/header-components/table-filter/table-filter.js.map +1 -1
  418. package/dist/esm/components/data-model/data-table/composables/use-query-params.js.map +1 -1
  419. package/dist/esm/components/data-model/data-table/data-table-column/data-table-column-options.js.map +1 -1
  420. package/dist/esm/components/data-model/data-table/data-table-column/data-table-column.js.map +1 -1
  421. package/dist/esm/components/data-model/data-table/data-table-column/index.js.map +1 -1
  422. package/dist/esm/components/data-model/data-table/data-table-options.js.map +1 -1
  423. package/dist/esm/components/data-model/data-table/data-table.js.map +1 -1
  424. package/dist/esm/components/data-model/data-table/index.js.map +1 -1
  425. package/dist/esm/components/data-model/data-table/token.js.map +1 -1
  426. package/dist/esm/components/data-model/data-table/views/table/table-options.js.map +1 -1
  427. package/dist/esm/components/data-model/data-table/views/table/table.js.map +1 -1
  428. package/dist/esm/components/data-model/data-table/views/table-tree/table-tree-options.js.map +1 -1
  429. package/dist/esm/components/data-model/data-table/views/table-tree/table-tree.js.map +1 -1
  430. package/dist/esm/components/data-model/data-table/views/table-view/classify-search/classify-search.js.map +1 -1
  431. package/dist/esm/components/data-model/data-table/views/table-view/header/header.js.map +1 -1
  432. package/dist/esm/components/data-model/data-table/views/table-view/table-view-options.js.map +1 -1
  433. package/dist/esm/components/data-model/data-table/views/table-view/table-view.js.map +1 -1
  434. package/dist/esm/components/data-model/data-table/views/tree/index.js.map +1 -1
  435. package/dist/esm/components/data-model/data-table/views/tree/tree-options.js.map +1 -1
  436. package/dist/esm/components/data-model/data-table/views/tree/tree.js +15 -3
  437. package/dist/esm/components/data-model/data-table/views/tree/tree.js.map +1 -1
  438. package/dist/esm/components/data-model/data-table/views/tree-view/tree-view-options.js.map +1 -1
  439. package/dist/esm/components/data-model/data-table/views/tree-view/tree-view.js.map +1 -1
  440. package/dist/esm/components/data-model/data-table-pagination/data-table-pagination-options.js.map +1 -1
  441. package/dist/esm/components/data-model/data-table-pagination/data-table-pagination.js.map +1 -1
  442. package/dist/esm/composables/use-column-component.js.map +1 -1
  443. package/dist/esm/composables/use-i18n.js.map +1 -1
  444. package/dist/esm/composables/use-single-view.js.map +1 -1
  445. package/dist/esm/constants/data-model.js.map +1 -1
  446. package/dist/esm/constants/menu.js.map +1 -1
  447. package/dist/esm/core/MSAppClient.js.map +1 -1
  448. package/dist/esm/core/MkModule.js.map +1 -1
  449. package/dist/esm/core/PageManager.js.map +1 -1
  450. package/dist/esm/core/Router.js.map +1 -1
  451. package/dist/esm/core/UserInfo.js.map +1 -1
  452. package/dist/esm/core/UserSession.js.map +1 -1
  453. package/dist/esm/core/component/ConfigComponents.js.map +1 -1
  454. package/dist/esm/core/component/DataFilterComponents.js.map +1 -1
  455. package/dist/esm/core/component/DataFormComponents.js.map +1 -1
  456. package/dist/esm/core/component/DataTableComponents.js.map +1 -1
  457. package/dist/esm/core/component/DataTableHeaderComponents.js.map +1 -1
  458. package/dist/esm/core/menu/Menu.js.map +1 -1
  459. package/dist/esm/core/menu/MenuNode.js.map +1 -1
  460. package/dist/esm/core/tabs/Tab.js.map +1 -1
  461. package/dist/esm/define-data-form.js.map +1 -1
  462. package/dist/esm/define-data-table.js.map +1 -1
  463. package/dist/esm/define-data-tree.js.map +1 -1
  464. package/dist/esm/index.js +4 -2
  465. package/dist/esm/index.js.map +1 -1
  466. package/dist/esm/init-application.js.map +1 -1
  467. package/dist/esm/installer.js.map +1 -1
  468. package/dist/esm/layouts/components/dialogs/dialogs.js.map +1 -1
  469. package/dist/esm/layouts/components/header/index.js.map +1 -1
  470. package/dist/esm/message-impl/DialogerImpl.js.map +1 -1
  471. package/dist/esm/modules/cms/components/part-tree/index.vue.js +25 -10
  472. package/dist/esm/modules/cms/components/part-tree/index.vue.js.map +1 -1
  473. package/dist/esm/modules/cms/composables/part-extensions.js +12 -0
  474. package/dist/esm/modules/cms/composables/part-extensions.js.map +1 -0
  475. package/dist/esm/modules/cms/constants/index.js.map +1 -1
  476. package/dist/esm/modules/cms/dataviews/cms-ad-contents/CmsAdContentsTable.js.map +1 -1
  477. package/dist/esm/modules/cms/dataviews/cms-articles/cms-article-atlas/CmsArticleAtlasTable.js.map +1 -1
  478. package/dist/esm/modules/cms/dataviews/cms-parts/CmsContentManPartForm.js +26 -0
  479. package/dist/esm/modules/cms/dataviews/cms-parts/CmsContentManPartForm.js.map +1 -0
  480. package/dist/esm/modules/cms/dataviews/cms-parts/CmsPartTree.js.map +1 -1
  481. package/dist/esm/modules/cms/index.js +2 -1
  482. package/dist/esm/modules/cms/index.js.map +1 -1
  483. package/dist/esm/modules/cms/pages/cms-ad/index.vue2.js +30 -8
  484. package/dist/esm/modules/cms/pages/cms-ad/index.vue2.js.map +1 -1
  485. package/dist/esm/modules/cms/pages/cms-contents/article-edit-add-page.vue2.js +46 -24
  486. package/dist/esm/modules/cms/pages/cms-contents/article-edit-add-page.vue2.js.map +1 -1
  487. package/dist/esm/modules/cms/pages/cms-contents/components/article-list.vue.js +2 -2
  488. package/dist/esm/modules/cms/pages/cms-contents/components/article-list.vue.js.map +1 -1
  489. package/dist/esm/modules/cms/pages/cms-contents/index.vue2.js +137 -104
  490. package/dist/esm/modules/cms/pages/cms-contents/index.vue2.js.map +1 -1
  491. package/dist/esm/modules/cms/pages/cms-resource/index.vue2.js +46 -6
  492. package/dist/esm/modules/cms/pages/cms-resource/index.vue2.js.map +1 -1
  493. package/dist/esm/modules/ms/components/markdown-editor/markdown-editor.js.map +1 -1
  494. package/dist/esm/modules/ms/components/material-list/components/file-view/file-view.js.map +1 -1
  495. package/dist/esm/modules/ms/components/material-list/components/image-view/image-view.js.map +1 -1
  496. package/dist/esm/modules/ms/components/material-list/index.js.map +1 -1
  497. package/dist/esm/modules/ms/components/material-list/material-group-form-popover.js.map +1 -1
  498. package/dist/esm/modules/ms/components/material-list/material-group.js.map +1 -1
  499. package/dist/esm/modules/ms/components/material-list/material-item.vue.js +0 -1
  500. package/dist/esm/modules/ms/components/material-list/material-item.vue.js.map +1 -1
  501. package/dist/esm/modules/ms/components/material-list/material-list-options.js +4 -3
  502. package/dist/esm/modules/ms/components/material-list/material-list-options.js.map +1 -1
  503. package/dist/esm/modules/ms/components/material-list/material-list.js +17 -1
  504. package/dist/esm/modules/ms/components/material-list/material-list.js.map +1 -1
  505. package/dist/esm/modules/ms/components/material-select/index.js.map +1 -1
  506. package/dist/esm/modules/ms/components/material-select/material-select-api.js +3 -2
  507. package/dist/esm/modules/ms/components/material-select/material-select-api.js.map +1 -1
  508. package/dist/esm/modules/ms/components/rich-text-editor/index.js.map +1 -1
  509. package/dist/esm/modules/ms/dataviews/log/local-log/LocalLogTree.js.map +1 -1
  510. package/dist/esm/modules/ms/dataviews/ms-config/MsConfigForm.js.map +1 -1
  511. package/dist/esm/modules/ms/dataviews/ms-config/MsConfigTable.js.map +1 -1
  512. package/dist/esm/modules/ms/dataviews/ms-deny-ip-access-list/MsDenyIPAccessListTable.js.map +1 -1
  513. package/dist/esm/modules/ms/dataviews/ms-ip-white-list/MsIPWhitelistTable.js.map +1 -1
  514. package/dist/esm/modules/ms/dataviews/ms-material/MsMaterialTable.js +11 -1
  515. package/dist/esm/modules/ms/dataviews/ms-material/MsMaterialTable.js.map +1 -1
  516. package/dist/esm/modules/ms/dataviews/ms-material/ms-material-group/MsMaterialGroupTree.js.map +1 -1
  517. package/dist/esm/modules/ms/dataviews/ms-member/MsMemberForm.js.map +1 -1
  518. package/dist/esm/modules/ms/dataviews/ms-member/MsMemberTable.js.map +1 -1
  519. package/dist/esm/modules/ms/dataviews/ms-member/components/MemberNickNameColumn.js.map +1 -1
  520. package/dist/esm/modules/ms/dataviews/ms-member/components/MemberRolesColumn.js.map +1 -1
  521. package/dist/esm/modules/ms/dataviews/ms-member-role/MsMemberRoleForm.js.map +1 -1
  522. package/dist/esm/modules/ms/dataviews/ms-member-role/MsMemberRoleTable.js.map +1 -1
  523. package/dist/esm/modules/ms/dataviews/ms-menu/MsMenuForm.js +2 -1
  524. package/dist/esm/modules/ms/dataviews/ms-menu/MsMenuForm.js.map +1 -1
  525. package/dist/esm/modules/ms/dataviews/ms-menu/MsMenuTable.js.map +1 -1
  526. package/dist/esm/modules/ms/dataviews/ms-menu/MsMenuTree.js +18 -0
  527. package/dist/esm/modules/ms/dataviews/ms-menu/MsMenuTree.js.map +1 -1
  528. package/dist/esm/modules/ms/dataviews/ms-menu/ms-permission-point/MsPermissionPointDefineForm.js.map +1 -1
  529. package/dist/esm/modules/ms/dataviews/ms-menu/ms-route/MsRouteForm.js.map +1 -1
  530. package/dist/esm/modules/ms/dataviews/ms-role/MsRoleForm.js.map +1 -1
  531. package/dist/esm/modules/ms/dataviews/ms-role/MsRolePermissionConfigTable.js +4 -1
  532. package/dist/esm/modules/ms/dataviews/ms-role/MsRolePermissionConfigTable.js.map +1 -1
  533. package/dist/esm/modules/ms/dataviews/ms-role/MsRoleTable.js.map +1 -1
  534. package/dist/esm/modules/ms/index.js +2 -2
  535. package/dist/esm/modules/ms/index.js.map +1 -1
  536. package/dist/esm/modules/ms/material-upload-context/MaterialUploadContext.js.map +1 -1
  537. package/dist/esm/modules/ms/material-upload-context/material-upload-context-options.js.map +1 -1
  538. package/dist/esm/modules/ms/material-upload-context/material-upload-context.js.map +1 -1
  539. package/dist/esm/modules/ms/pages/local-log/index.vue2.js.map +1 -1
  540. package/dist/esm/modules/ms/pages/ms-material/index.vue2.js +14 -17
  541. package/dist/esm/modules/ms/pages/ms-material/index.vue2.js.map +1 -1
  542. package/dist/esm/modules/ms/pages/ms-menu/index.vue2.js +48 -7
  543. package/dist/esm/modules/ms/pages/ms-menu/index.vue2.js.map +1 -1
  544. package/dist/esm/modules/ms/pages/ms-role/components/role-permission-config/role-permission-config-options.js.map +1 -1
  545. package/dist/esm/modules/ms/pages/ms-role/components/role-permission-config/role-permission-config.js.map +1 -1
  546. package/dist/esm/page/index/404.vue.js.map +1 -1
  547. package/dist/esm/page/index/dv/default/edit.vue2.js.map +1 -1
  548. package/dist/esm/page/index/dv/default/single/list/dialog.vue2.js.map +1 -1
  549. package/dist/esm/page/index/dv/default/single/list/normal.vue2.js.map +1 -1
  550. package/dist/esm/page/index/dv/default/single/table-tree/dialog.vue2.js.map +1 -1
  551. package/dist/esm/page/index/dv/default/single/table-tree/normal.vue2.js.map +1 -1
  552. package/dist/esm/page/index/dv/default/single/tree/dialog.vue2.js.map +1 -1
  553. package/dist/esm/page/index/dv/default/table.vue2.js.map +1 -1
  554. package/dist/esm/page/login/index.vue2.js.map +1 -1
  555. package/dist/esm/page/signup/index.vue2.js.map +1 -1
  556. package/dist/esm/router-middleware/auth.js.map +1 -1
  557. package/dist/style/components/basic/doc-editor/index.css +1 -1
  558. package/dist/style/components/index.css +2 -2
  559. package/dist/style/components/material-item.css +1 -1
  560. package/dist/style/index.css +3 -3
  561. package/dist/style/modules/cms/index.css +1 -1
  562. package/dist/style/modules/cms/pages/cms-contents/index.css +1 -1
  563. package/dist/style/modules/cms/resource-manager.css +1 -1
  564. package/dist/style/src/components/basic/data-tree-select/data-tree-select.scss +11 -11
  565. package/dist/style/src/components/basic/doc-editor/index.scss +22 -2
  566. package/dist/style/src/components/classify-search.scss +31 -31
  567. package/dist/style/src/components/code-editor.scss +7 -7
  568. package/dist/style/src/components/data-table-select-dialog.scss +30 -30
  569. package/dist/style/src/components/form/form-detail.scss +28 -28
  570. package/dist/style/src/components/image-cropper.scss +34 -34
  571. package/dist/style/src/components/index.scss +59 -59
  572. package/dist/style/src/components/material-item.scss +66 -64
  573. package/dist/style/src/components/material-list.scss +83 -83
  574. package/dist/style/src/components/page-container.scss +20 -20
  575. package/dist/style/src/components/pagination.scss +21 -21
  576. package/dist/style/src/components/table/column-sort.scss +17 -17
  577. package/dist/style/src/components/table/index.scss +5 -5
  578. package/dist/style/src/components/table-view.scss +77 -77
  579. package/dist/style/src/index.scss +28 -28
  580. package/dist/style/src/modules/cms/index.scss +0 -1
  581. package/dist/style/src/modules/cms/pages/cms-contents/index.scss +1 -2
  582. package/dist/style/src/modules/cms/resource-manager.scss +63 -0
  583. package/dist/style/src/page/dv/index.scss +3 -3
  584. package/dist/style/src/page/dv/ms-menu.scss +9 -9
  585. package/dist/style/src/theme/theme.scss +22 -15
  586. package/dist/style/theme/theme.css +1 -1
  587. package/dist/types/components/basic/data-tree-select/data-tree-select-options.d.ts +1 -0
  588. package/dist/types/components/basic/data-tree-select/data-tree-select.d.ts +3 -0
  589. package/dist/types/components/basic/data-tree-select/index.d.ts +3 -0
  590. package/dist/types/components/basic/doc-editor/plugins/HtmlBlockPlugin/DocHtmlBlockComponent.d.ts +20 -0
  591. package/dist/types/components/basic/doc-editor/plugins/HtmlBlockPlugin/index.d.ts +57 -0
  592. package/dist/types/components/basic/doc-editor/plugins/ImageTextPlugin/index.d.ts +1 -0
  593. package/dist/types/components/business/resource-list/ResourceManager.d.ts +0 -1
  594. package/dist/types/components/business/resource-manager/index.d.ts +32 -6
  595. package/dist/types/components/business/resource-manager/resource-manager.vue.d.ts +10 -1
  596. package/dist/types/components/data-model/data-table/views/table/index.d.ts +1 -1
  597. package/dist/types/components/data-model/data-table/views/table/table.d.ts +1 -1
  598. package/dist/types/modules/cms/components/part-tree/index.d.ts +5 -9
  599. package/dist/types/modules/cms/components/part-tree/index.vue.d.ts +16 -15
  600. package/dist/types/modules/cms/composables/part-extensions.d.ts +18 -0
  601. package/dist/types/modules/cms/dataviews/cms-parts/CmsContentManPartForm.d.ts +8 -0
  602. package/dist/types/modules/cms/dataviews/cms-parts/index.d.ts +1 -0
  603. package/dist/types/modules/cms/index.d.ts +2 -0
  604. package/dist/types/modules/ms/components/material-list/index.d.ts +3 -12
  605. package/dist/types/modules/ms/components/material-list/material-list-options.d.ts +1 -6
  606. package/dist/types/modules/ms/components/material-list/material-list.d.ts +3 -12
  607. package/dist/types/modules/ms/dataviews/ms-material/MsMaterialTable.d.ts +2 -0
  608. package/dist/types/modules/ms/dataviews/ms-material/index.d.ts +0 -1
  609. package/dist/types/modules/ms/dataviews/ms-menu/MsMenuTree.d.ts +1 -0
  610. package/package.json +2 -2
  611. package/dist/cjs/components/basic/doc-editor/plugins/ToolbarPlugin/HtmlCodeTool.vue.js.map +0 -1
  612. package/dist/cjs/components/basic/doc-editor/plugins/ToolbarPlugin/HtmlCodeTool.vue2.js +0 -4
  613. package/dist/cjs/components/basic/doc-editor/plugins/ToolbarPlugin/HtmlCodeTool.vue2.js.map +0 -1
  614. package/dist/cjs/modules/ms/dataviews/ms-material/MsMaterialMan.js +0 -130
  615. package/dist/cjs/modules/ms/dataviews/ms-material/MsMaterialMan.js.map +0 -1
  616. package/dist/esm/components/basic/doc-editor/plugins/ToolbarPlugin/HtmlCodeTool.vue.js +0 -104
  617. package/dist/esm/components/basic/doc-editor/plugins/ToolbarPlugin/HtmlCodeTool.vue.js.map +0 -1
  618. package/dist/esm/components/basic/doc-editor/plugins/ToolbarPlugin/HtmlCodeTool.vue2.js +0 -5
  619. package/dist/esm/components/basic/doc-editor/plugins/ToolbarPlugin/HtmlCodeTool.vue2.js.map +0 -1
  620. package/dist/esm/modules/ms/dataviews/ms-material/MsMaterialMan.js +0 -130
  621. package/dist/esm/modules/ms/dataviews/ms-material/MsMaterialMan.js.map +0 -1
  622. package/dist/style/modules/cms/pages/cms-contents/part-edit-add-page.css +0 -1
  623. package/dist/style/modules/cms/pages/cms-publish/index.css +0 -1
  624. package/dist/style/src/modules/cms/pages/cms-contents/part-edit-add-page.scss +0 -127
  625. package/dist/style/src/modules/cms/pages/cms-publish/index.scss +0 -15
  626. package/dist/types/modules/ms/dataviews/ms-material/MsMaterialMan.d.ts +0 -31
  627. /package/dist/types/{modules/cms/pages/cms-publish → components/basic/doc-editor/plugins/HtmlBlockPlugin}/index.vue.d.ts +0 -0
  628. /package/dist/types/components/basic/doc-editor/plugins/ToolbarPlugin/{HtmlCodeTool.vue.d.ts → PreviewToolba-back.vue.d.ts} +0 -0
  629. /package/dist/types/{modules/cms/pages/cms-contents/part-edit-add-page.vue.d.ts → components/basic/doc-editor/plugins/ToolbarPlugin/PreviewToolbar.vue.d.ts} +0 -0
@@ -0,0 +1,94 @@
1
+ import { defineComponent, ref, createVNode, mergeProps } from "vue";
2
+ import { CLICK_COMMAND, COMMAND_PRIORITY_LOW } from "lexical";
3
+ import { mergeRegister } from "@lexical/utils";
4
+ import "@lexical/text";
5
+ import { useMounted } from "../../lexical-vue/composables/useMounted.js";
6
+ import "@lexical/overflow";
7
+ import "tiny-invariant";
8
+ import "@lexical/history";
9
+ import { useLexicalComposer } from "../../lexical-vue/composables/useLexicalComposer.js";
10
+ import { useLexicalNodeSelection } from "../../lexical-vue/composables/useLexicalNodeSelection.js";
11
+ import "@lexical/list";
12
+ import "@lexical/dragon";
13
+ import "@lexical/plain-text";
14
+ import "@lexical/rich-text";
15
+ import "@lexical/yjs";
16
+ import "yjs";
17
+ import "../../lexical-vue/components/LexicalDecoratedTeleports.js";
18
+ import "@lexical/html";
19
+ import "@lexical/link";
20
+ import "@lexical/mark";
21
+ import "@lexical/table";
22
+ import "@lexical/hashtag";
23
+ import _sfc_main from "../../lexical-vue/components/LexicalBlockWithAlignableContents.vue2.js";
24
+ import "@lexical/markdown";
25
+ import "../../lexical-vue/composables/useCollaborationContext.js";
26
+ import "../../lexical-vue/components/LexicalMenu/shared.js";
27
+ import "../../lexical-vue/components/LexicalAutoEmbedPlugin/shared.js";
28
+ import "../../lexical-vue/components/LexicalTypeaheadMenuPlugin/shared.js";
29
+ const DocHtmlBlockComponent = /* @__PURE__ */ defineComponent({
30
+ name: "DocHtmlBlockComponent",
31
+ props: ["baseClass", "focusClass", "nodeKey", "attrs"],
32
+ setup(props) {
33
+ const editor = useLexicalComposer();
34
+ const {
35
+ isSelected,
36
+ setSelected,
37
+ clearSelection
38
+ } = useLexicalNodeSelection(props.nodeKey);
39
+ const selfElRef = ref(null);
40
+ useMounted(() => {
41
+ return mergeRegister(
42
+ // 选中图
43
+ editor.registerCommand(CLICK_COMMAND, (event) => {
44
+ console.log(event.target);
45
+ if (event.target === selfElRef.value) {
46
+ event.preventDefault();
47
+ if (!event.shiftKey) {
48
+ clearSelection();
49
+ }
50
+ setSelected(true);
51
+ return true;
52
+ }
53
+ return false;
54
+ }, COMMAND_PRIORITY_LOW)
55
+ );
56
+ });
57
+ return () => {
58
+ return createVNode(_sfc_main, {
59
+ "nodeKey": "props.nodeKey"
60
+ }, {
61
+ default: () => [createVNode("iframe", mergeProps({
62
+ "ref": (el) => selfElRef.value = el,
63
+ "srcdoc": `
64
+ <html>
65
+ <head>
66
+ <style type="text/css">
67
+ ${props.attrs.css}
68
+ </style>
69
+ <script>
70
+ ${props.attrs.js}
71
+ <\/script>
72
+ </head>
73
+ <body>${props.attrs.content}</body>
74
+ </html>
75
+ `,
76
+ "style": {
77
+ width: "100%",
78
+ padding: 0,
79
+ margin: 0
80
+ }
81
+ }, {
82
+ frameborder: 0,
83
+ allowFullScreen: true
84
+ }, {
85
+ "allow": "accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture"
86
+ }), null)]
87
+ });
88
+ };
89
+ }
90
+ });
91
+ export {
92
+ DocHtmlBlockComponent as default
93
+ };
94
+ //# sourceMappingURL=DocHtmlBlockComponent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DocHtmlBlockComponent.js","sources":["../../../../../../../src/components/basic/doc-editor/plugins/HtmlBlockPlugin/DocHtmlBlockComponent.tsx"],"sourcesContent":["import type { ElementFormatType } from \"lexical\";\r\nimport {\r\n $getSelection,\r\n $isNodeSelection,\r\n CLICK_COMMAND,\r\n COMMAND_PRIORITY_LOW,\r\n} from \"lexical\";\r\nimport { mergeRegister } from \"@lexical/utils\";\r\nimport {\r\n useLexicalComposer,\r\n useLexicalNodeSelection,\r\n useMounted,\r\n DecoratorBlockNode,\r\n LexicalBlockWithAlignableContents,\r\n} from \"../../lexical-vue\";\r\nimport { defineComponent, ref, reactive, computed, watch } from \"vue\";\r\nimport { Messager } from \"@maketribe/dm\";\r\n\r\n/**\r\n * 图片渲染组件\r\n */\r\nexport default defineComponent({\r\n name: \"DocHtmlBlockComponent\",\r\n props: [\"baseClass\", \"focusClass\", \"nodeKey\", \"attrs\"],\r\n setup(props) {\r\n const editor = useLexicalComposer();\r\n const { isSelected, setSelected, clearSelection } = useLexicalNodeSelection(\r\n props.nodeKey\r\n );\r\n const selfElRef = ref<any>(null);\r\n\r\n // 编辑器挂载的时候\r\n useMounted(() => {\r\n return mergeRegister(\r\n // 选中图\r\n editor.registerCommand<MouseEvent>(\r\n CLICK_COMMAND,\r\n (event) => {\r\n console.log(event.target);\r\n if (event.target === selfElRef.value) {\r\n event.preventDefault();\r\n\r\n if (!event.shiftKey) {\r\n clearSelection();\r\n }\r\n\r\n setSelected(true);\r\n\r\n return true;\r\n }\r\n\r\n return false;\r\n },\r\n COMMAND_PRIORITY_LOW\r\n )\r\n );\r\n });\r\n\r\n return () => {\r\n return (\r\n <LexicalBlockWithAlignableContents nodeKey=\"props.nodeKey\">\r\n <iframe\r\n ref={(el) => (selfElRef.value = el)}\r\n srcdoc={`\r\n <html>\r\n <head>\r\n <style type=\"text/css\">\r\n ${props.attrs.css}\r\n </style>\r\n <script>\r\n ${props.attrs.js}\r\n </script>\r\n </head>\r\n <body>${props.attrs.content}</body>\r\n </html>\r\n `}\r\n style={{ width: \"100%\", padding: 0, margin: 0 }}\r\n {...{ frameborder: 0, allowFullScreen: true }}\r\n allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\"\r\n ></iframe>\r\n </LexicalBlockWithAlignableContents>\r\n );\r\n };\r\n },\r\n});\r\n"],"names":["defineComponent","name","props","setup","editor","useLexicalComposer","isSelected","setSelected","clearSelection","useLexicalNodeSelection","nodeKey","selfElRef","ref","useMounted","mergeRegister","registerCommand","CLICK_COMMAND","event","console","log","target","value","preventDefault","shiftKey","COMMAND_PRIORITY_LOW","_createVNode","LexicalBlockWithAlignableContents","default","_mergeProps","el","attrs","css","js","content","width","padding","margin","frameborder","allowFullScreen"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAqBA,MAAeA,wDAAgB;AAAA,EAC7BC,MAAM;AAAA,EACNC,OAAO,CAAC,aAAa,cAAc,WAAW,OAAO;AAAA,EACrDC,MAAMD,OAAO;AACX,UAAME,SAASC;AACf,UAAM;AAAA,MAAEC;AAAAA,MAAYC;AAAAA,MAAaC;AAAAA,IAAe,IAAIC,wBAClDP,MAAMQ,OACR;AACA,UAAMC,YAAYC,IAAS,IAAI;AAG/BC,eAAW,MAAM;AACf,aAAOC;AAAAA;AAAAA,QAELV,OAAOW,gBACLC,eACCC,WAAU;AACTC,kBAAQC,IAAIF,MAAMG,MAAM;AACxB,cAAIH,MAAMG,WAAWT,UAAUU,OAAO;AACpCJ,kBAAMK,eAAc;AAEpB,gBAAI,CAACL,MAAMM,UAAU;AACnBf;YACF;AAEAD,wBAAY,IAAI;AAEhB,mBAAO;AAAA,UACT;AAEA,iBAAO;AAAA,WAETiB,oBACF;AAAA,MACF;AAAA,IACF,CAAC;AAED,WAAO,MAAM;AACX,aAAAC,YAAAC,WAAA;AAAA,QAAA,WAAA;AAAA,MAAA,GAAA;AAAA,QAAAC,SAAAA,MAAAF,CAAAA,sBAAAG,WAAA;AAAA,UAAA,OAGYC,QAAQlB,UAAUU,QAAQQ;AAAAA,UAAG,UAC3B;AAAA;AAAA;AAAA;AAAA,kBAIF3B,MAAM4B,MAAMC,GAAG;AAAA;AAAA;AAAA,kBAGf7B,MAAM4B,MAAME,EAAE;AAAA;AAAA;AAAA,oBAGZ9B,MAAM4B,MAAMG,OAAO;AAAA;AAAA;AAAA,UAE5B,SACQ;AAAA,YAAEC,OAAO;AAAA,YAAQC,SAAS;AAAA,YAAGC,QAAQ;AAAA,UAAE;AAAA,QAAC,GAAA;AAAA,UACzCC,aAAa;AAAA,UAAGC,iBAAiB;AAAA,QAAI,GAAA;AAAA,UAAA,SAAA;AAAA,QAAA,CAAA,GAAA,IAAA,CAAA;AAAA,MAAA,CAAA;AAAA;EAMrD;AACF,CAAC;"}
@@ -0,0 +1,128 @@
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 { h } from "vue";
6
+ import "@lexical/text";
7
+ import "@lexical/utils";
8
+ import "@lexical/overflow";
9
+ import "tiny-invariant";
10
+ import "@lexical/history";
11
+ import "@lexical/list";
12
+ import "@lexical/dragon";
13
+ import "@lexical/plain-text";
14
+ import "@lexical/rich-text";
15
+ import "@lexical/yjs";
16
+ import "yjs";
17
+ import "../../lexical-vue/components/LexicalDecoratedTeleports.js";
18
+ import "@lexical/html";
19
+ import "@lexical/link";
20
+ import "@lexical/mark";
21
+ import "@lexical/table";
22
+ import "@lexical/hashtag";
23
+ import { DecoratorBlockNode } from "../../lexical-vue/components/LexicalDecoratorBlockNode.js";
24
+ import "@lexical/markdown";
25
+ import "../../lexical-vue/composables/useCollaborationContext.js";
26
+ import "../../lexical-vue/components/LexicalMenu/shared.js";
27
+ import "../../lexical-vue/components/LexicalAutoEmbedPlugin/shared.js";
28
+ import "../../lexical-vue/components/LexicalTypeaheadMenuPlugin/shared.js";
29
+ import DocHtmlBlockComponent from "./DocHtmlBlockComponent.js";
30
+ createCommand("HTML_BLOCK_CHANGE");
31
+ createCommand("REMOVE_HTML_BLOCK_COMMAND");
32
+ const INSERT_HTML_BLOCK_COMMAND = createCommand("INSERT_HTML_BLOCK_COMMAND");
33
+ class HtmlBlockNode extends DecoratorBlockNode {
34
+ constructor(attrs, format, key) {
35
+ super(format, key);
36
+ __publicField(this, "__attrs");
37
+ this.__attrs = attrs;
38
+ }
39
+ static getType() {
40
+ return "HtmlBlock";
41
+ }
42
+ static clone(node) {
43
+ return new HtmlBlockNode(node.__attrs, node.__format, node.__key);
44
+ }
45
+ static importJSON(serializedNode) {
46
+ const node = $createHtmlBlockNode(serializedNode.attrs);
47
+ node.setFormat(serializedNode.format);
48
+ return node;
49
+ }
50
+ exportJSON() {
51
+ return {
52
+ ...super.exportJSON(),
53
+ type: this.getType(),
54
+ version: 1,
55
+ attrs: this.__attrs
56
+ };
57
+ }
58
+ exportDOM() {
59
+ const element = document.createElement("div");
60
+ element.innerHTML = this.__attrs.content;
61
+ if (this.__attrs.js) {
62
+ const script = document.createElement("script");
63
+ script.innerHTML = this.__attrs.js;
64
+ element.append(script);
65
+ }
66
+ if (this.__attrs.css) {
67
+ const style = document.createElement("style");
68
+ style.innerHTML = this.__attrs.css;
69
+ element.append(style);
70
+ }
71
+ element.setAttribute("class", "mk-doc-html-block");
72
+ return { element };
73
+ }
74
+ static importDOM() {
75
+ return {
76
+ img: (dn) => {
77
+ return {
78
+ conversion: (domNode) => {
79
+ let css = "";
80
+ let js = "";
81
+ domNode.childNodes.forEach((node) => {
82
+ if (node.nodeName.toLowerCase() == "style") {
83
+ css += "\r\n" + node.textContent;
84
+ node.remove();
85
+ } else if (node.nodeName.toLowerCase() == "script") {
86
+ js += "\r\n" + node.textContent;
87
+ node.remove();
88
+ }
89
+ });
90
+ return domNode.classList.contains("mk-doc-html-block") ? {
91
+ node: $createHtmlBlockNode({
92
+ content: domNode.innerHTML,
93
+ css,
94
+ js
95
+ })
96
+ } : null;
97
+ },
98
+ priority: 0
99
+ };
100
+ }
101
+ };
102
+ }
103
+ updateDOM() {
104
+ return false;
105
+ }
106
+ getTextContent(_includeInert, _includeDirectionless) {
107
+ return this.__attrs.content;
108
+ }
109
+ decorate(_editor, config) {
110
+ const embedBlockTheme = config.theme.embedBlock || {};
111
+ return h(DocHtmlBlockComponent, {
112
+ baseClass: embedBlockTheme.base || "",
113
+ focusClass: embedBlockTheme.focus || "",
114
+ format: this.__format,
115
+ nodeKey: this.getKey(),
116
+ attrs: this.__attrs
117
+ });
118
+ }
119
+ }
120
+ function $createHtmlBlockNode(attrs) {
121
+ return new HtmlBlockNode(attrs);
122
+ }
123
+ export {
124
+ $createHtmlBlockNode,
125
+ HtmlBlockNode,
126
+ INSERT_HTML_BLOCK_COMMAND
127
+ };
128
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../../../../../../src/components/basic/doc-editor/plugins/HtmlBlockPlugin/index.ts"],"sourcesContent":["\r\nimport type {\r\n DOMConversionMap,\r\n DOMConversionOutput,\r\n DOMExportOutput,\r\n EditorConfig,\r\n ElementFormatType,\r\n LexicalEditor,\r\n LexicalNode,\r\n NodeKey,\r\n Spread,\r\n LexicalCommand\r\n} from 'lexical'\r\nimport { createCommand } from 'lexical'\r\nimport { DecoratorBlockNode,type SerializedDecoratorBlockNode } from '../../lexical-vue'\r\nimport { h ,type Component} from 'vue'\r\nimport DocHtmlBlockComponent from \"./DocHtmlBlockComponent\"\r\n\r\n/**\r\n * html块类型\r\n */\r\nexport type HtmlBlockAttrs = { content:string, css?:string, js?:string };\r\n\r\n/**\r\n * html块改变\r\n */\r\nexport const HTML_BLOCK_CHANGE: LexicalCommand<HtmlBlockAttrs> = createCommand('HTML_BLOCK_CHANGE')\r\n\r\n/**\r\n * 删除html块\r\n */\r\nexport const REMOVE_HTML_BLOCK_COMMAND: LexicalCommand<undefined|null> = createCommand('REMOVE_HTML_BLOCK_COMMAND')\r\n\r\n\r\n/**\r\n * 插入html块指令\r\n */\r\nexport const INSERT_HTML_BLOCK_COMMAND: LexicalCommand<HtmlBlockAttrs> = createCommand('INSERT_HTML_BLOCK_COMMAND')\r\n\r\n/**\r\n * 图片节点序列化\r\n */\r\nexport type SerializedHtmlBlockNode = Spread<\r\n {\r\n attrs: HtmlBlockAttrs\r\n },\r\n SerializedDecoratorBlockNode\r\n>\r\n\r\n/**\r\n * 定义图片节点\r\n */\r\nexport class HtmlBlockNode extends DecoratorBlockNode {\r\n __attrs: HtmlBlockAttrs\r\n\r\n static getType(): string {\r\n return 'HtmlBlock'\r\n }\r\n\r\n static clone(node: HtmlBlockNode): HtmlBlockNode {\r\n return new HtmlBlockNode(node.__attrs, node.__format, node.__key)\r\n }\r\n\r\n static importJSON(serializedNode: SerializedHtmlBlockNode): HtmlBlockNode {\r\n const node = $createHtmlBlockNode(serializedNode.attrs)\r\n node.setFormat(serializedNode.format)\r\n return node\r\n }\r\n\r\n constructor(attrs: HtmlBlockAttrs, format?: ElementFormatType, key?: NodeKey) {\r\n super(format, key)\r\n this.__attrs = attrs\r\n }\r\n\r\n exportJSON(): SerializedHtmlBlockNode {\r\n\r\n return {\r\n ...super.exportJSON(),\r\n type: this.getType(),\r\n version: 1,\r\n attrs: this.__attrs,\r\n }\r\n }\r\n\r\n exportDOM(): DOMExportOutput {\r\n\r\n const element = document.createElement('div') \r\n\r\n // 内容\r\n element.innerHTML = this.__attrs.content;\r\n\r\n if(this.__attrs.js){\r\n const script = document.createElement('script') \r\n script.innerHTML = this.__attrs.js;\r\n element.append(script);\r\n }\r\n\r\n if(this.__attrs.css){\r\n const style = document.createElement('style')\r\n style.innerHTML = this.__attrs.css;\r\n element.append(style);\r\n }\r\n\r\n\r\n element.setAttribute(\"class\",\"mk-doc-html-block\")\r\n \r\n return { element }\r\n }\r\n\r\n static importDOM(): DOMConversionMap | null {\r\n return {\r\n img: (dn: HTMLElement) => {\r\n return {\r\n conversion: (domNode: HTMLElement) => {\r\n\r\n let css = \"\";\r\n let js = \"\";\r\n\r\n domNode.childNodes.forEach((node:ChildNode)=>{\r\n\r\n if(node.nodeName.toLowerCase() == \"style\"){\r\n css+=\"\\r\\n\"+node.textContent;\r\n node.remove()\r\n }\r\n else if(node.nodeName.toLowerCase() == \"script\"){\r\n js+=\"\\r\\n\"+node.textContent;\r\n node.remove()\r\n }\r\n });\r\n \r\n return domNode.classList.contains(\"mk-doc-html-block\") ? { \r\n node:$createHtmlBlockNode({\r\n content:domNode.innerHTML, css, js\r\n } as HtmlBlockAttrs) \r\n } : null;\r\n },\r\n priority: 0\r\n }\r\n },\r\n }\r\n }\r\n\r\n updateDOM(): false {\r\n return false\r\n }\r\n\r\n getTextContent(\r\n _includeInert?: boolean | undefined,\r\n _includeDirectionless?: false | undefined,\r\n ): string {\r\n return this.__attrs.content\r\n }\r\n\r\n decorate(_editor: LexicalEditor, config: EditorConfig): Component {\r\n const embedBlockTheme = config.theme.embedBlock || {}\r\n return h(DocHtmlBlockComponent, {\r\n baseClass: embedBlockTheme.base || '',\r\n focusClass: embedBlockTheme.focus || '',\r\n format: this.__format,\r\n nodeKey: this.getKey(),\r\n attrs: this.__attrs\r\n })\r\n }\r\n}\r\n\r\n/**\r\n * 创建图片节点\r\n * @param src \r\n * @returns \r\n */\r\nexport function $createHtmlBlockNode(attrs: HtmlBlockAttrs): HtmlBlockNode {\r\n return new HtmlBlockNode(attrs)\r\n}\r\n\r\n/**\r\n * 判断是否是图片节点\r\n * @param node \r\n * @returns \r\n */\r\nexport function $isHtmlBlockNode(\r\n node: HtmlBlockNode | LexicalNode | null | undefined,\r\n): node is HtmlBlockNode {\r\n return node instanceof HtmlBlockNode\r\n}\r\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA0BiE,cAAc,mBAAmB;AAKzB,cAAc,2BAA2B;AAMrG,MAAA,4BAA4D,cAAc,2BAA2B;AAe3G,MAAM,sBAAsB,mBAAmB;AAAA,EAiBpD,YAAY,OAAuB,QAA4B,KAAe;AAC5E,UAAM,QAAQ,GAAG;AAjBnB;AAkBE,SAAK,UAAU;AAAA,EACjB;AAAA,EAjBA,OAAO,UAAkB;AAChB,WAAA;AAAA,EACT;AAAA,EAEA,OAAO,MAAM,MAAoC;AAC/C,WAAO,IAAI,cAAc,KAAK,SAAS,KAAK,UAAU,KAAK,KAAK;AAAA,EAClE;AAAA,EAEA,OAAO,WAAW,gBAAwD;AAClE,UAAA,OAAO,qBAAqB,eAAe,KAAK;AACjD,SAAA,UAAU,eAAe,MAAM;AAC7B,WAAA;AAAA,EACT;AAAA,EAOA,aAAsC;AAE7B,WAAA;AAAA,MACL,GAAG,MAAM,WAAW;AAAA,MACpB,MAAM,KAAK,QAAQ;AAAA,MACnB,SAAS;AAAA,MACT,OAAO,KAAK;AAAA,IAAA;AAAA,EAEhB;AAAA,EAEA,YAA6B;AAErB,UAAA,UAAU,SAAS,cAAc,KAAK;AAGpC,YAAA,YAAY,KAAK,QAAQ;AAE9B,QAAA,KAAK,QAAQ,IAAG;AACX,YAAA,SAAS,SAAS,cAAc,QAAQ;AACvC,aAAA,YAAY,KAAK,QAAQ;AAChC,cAAQ,OAAO,MAAM;AAAA,IACvB;AAEG,QAAA,KAAK,QAAQ,KAAI;AACZ,YAAA,QAAQ,SAAS,cAAc,OAAO;AACtC,YAAA,YAAY,KAAK,QAAQ;AAC/B,cAAQ,OAAO,KAAK;AAAA,IACtB;AAGQ,YAAA,aAAa,SAAQ,mBAAmB;AAEhD,WAAO,EAAE,QAAQ;AAAA,EACnB;AAAA,EAEA,OAAO,YAAqC;AACnC,WAAA;AAAA,MACL,KAAK,CAAC,OAAoB;AAChB,eAAA;AAAA,UACN,YAAY,CAAC,YAAyB;AAEpC,gBAAI,MAAM;AACV,gBAAI,KAAK;AAED,oBAAA,WAAW,QAAQ,CAAC,SAAiB;AAE3C,kBAAG,KAAK,SAAS,YAAY,KAAK,SAAQ;AACxC,uBAAK,SAAO,KAAK;AACjB,qBAAK,OAAO;AAAA,cAEN,WAAA,KAAK,SAAS,YAAA,KAAiB,UAAS;AAC9C,sBAAI,SAAO,KAAK;AAChB,qBAAK,OAAO;AAAA,cACd;AAAA,YAAA,CACD;AAED,mBAAO,QAAQ,UAAU,SAAS,mBAAmB,IAAK;AAAA,cACxD,MAAK,qBAAqB;AAAA,gBACxB,SAAQ,QAAQ;AAAA,gBAAW;AAAA,gBAAK;AAAA,cAAA,CACf;AAAA,YACjB,IAAA;AAAA,UACN;AAAA,UACA,UAAU;AAAA,QAAA;AAAA,MAEd;AAAA,IAAA;AAAA,EAEJ;AAAA,EAEA,YAAmB;AACV,WAAA;AAAA,EACT;AAAA,EAEA,eACE,eACA,uBACQ;AACR,WAAO,KAAK,QAAQ;AAAA,EACtB;AAAA,EAEA,SAAS,SAAwB,QAAiC;AAChE,UAAM,kBAAkB,OAAO,MAAM,cAAc,CAAA;AACnD,WAAO,EAAE,uBAAuB;AAAA,MAC9B,WAAW,gBAAgB,QAAQ;AAAA,MACnC,YAAY,gBAAgB,SAAS;AAAA,MACrC,QAAQ,KAAK;AAAA,MACb,SAAS,KAAK,OAAO;AAAA,MACrB,OAAO,KAAK;AAAA,IAAA,CACb;AAAA,EACH;AACF;AAOO,SAAS,qBAAqB,OAAsC;AAClE,SAAA,IAAI,cAAc,KAAK;AAChC;"}
@@ -0,0 +1,52 @@
1
+ import { defineComponent, onMounted, onUnmounted } from "vue";
2
+ import "@lexical/text";
3
+ import { mergeRegister, $insertNodeToNearestRoot } from "@lexical/utils";
4
+ import "@lexical/overflow";
5
+ import { COMMAND_PRIORITY_EDITOR } from "lexical";
6
+ import "tiny-invariant";
7
+ import "@lexical/history";
8
+ import { useLexicalComposer } from "../../lexical-vue/composables/useLexicalComposer.js";
9
+ import "@lexical/list";
10
+ import "@lexical/dragon";
11
+ import "@lexical/plain-text";
12
+ import "@lexical/rich-text";
13
+ import "@lexical/yjs";
14
+ import "yjs";
15
+ import "../../lexical-vue/components/LexicalDecoratedTeleports.js";
16
+ import "@lexical/html";
17
+ import "@lexical/link";
18
+ import "@lexical/mark";
19
+ import "@lexical/table";
20
+ import "@lexical/hashtag";
21
+ import "@lexical/markdown";
22
+ import "../../lexical-vue/composables/useCollaborationContext.js";
23
+ import "../../lexical-vue/components/LexicalMenu/shared.js";
24
+ import "../../lexical-vue/components/LexicalAutoEmbedPlugin/shared.js";
25
+ import "../../lexical-vue/components/LexicalTypeaheadMenuPlugin/shared.js";
26
+ import { HtmlBlockNode, INSERT_HTML_BLOCK_COMMAND, $createHtmlBlockNode } from "./index.js";
27
+ const _sfc_main = /* @__PURE__ */ defineComponent({
28
+ __name: "index",
29
+ setup(__props) {
30
+ const editor = useLexicalComposer();
31
+ onMounted(() => {
32
+ if (!editor.hasNodes([HtmlBlockNode])) {
33
+ throw new Error("HtmlBlockPlugin: 自定义HTML代码块节点未注册!");
34
+ }
35
+ const unregister = mergeRegister(
36
+ // 插入
37
+ editor.registerCommand(INSERT_HTML_BLOCK_COMMAND, (payload) => {
38
+ $insertNodeToNearestRoot($createHtmlBlockNode(payload));
39
+ return true;
40
+ }, COMMAND_PRIORITY_EDITOR)
41
+ );
42
+ onUnmounted(() => unregister());
43
+ });
44
+ return (_ctx, _cache) => {
45
+ return null;
46
+ };
47
+ }
48
+ });
49
+ export {
50
+ _sfc_main as default
51
+ };
52
+ //# sourceMappingURL=index.vue.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.vue.js","sources":["../../../../../../../src/components/basic/doc-editor/plugins/HtmlBlockPlugin/index.vue"],"sourcesContent":["<script setup lang=\"ts\">\r\nimport { useLexicalComposer } from '../../lexical-vue'\r\nimport { $insertNodeToNearestRoot,mergeRegister } from '@lexical/utils'\r\nimport { COMMAND_PRIORITY_EDITOR,COMMAND_PRIORITY_LOW,$getSelection,CLICK_COMMAND } from 'lexical'\r\n\r\nimport { onMounted, onUnmounted } from 'vue'\r\nimport { INSERT_HTML_BLOCK_COMMAND,HtmlBlockNode,$createHtmlBlockNode,HtmlBlockAttrs } from './index'\r\nimport { RegisterToolbarExtend,type ToolbarExtendPlugin } from \"../ToolbarPlugin/defines\"\r\n\r\n\r\nconst editor = useLexicalComposer()\r\n\r\nonMounted(() => {\r\n\r\n if (!editor.hasNodes([HtmlBlockNode])){\r\n throw new Error('HtmlBlockPlugin: 自定义HTML代码块节点未注册!')\r\n }\r\n \r\n // 注册到工具条\r\n // RegisterToolbarExtend({\r\n // icon:\"html-code\",\r\n // text:\"自定义代码块\",\r\n // action:async ()=>{\r\n // editor.dispatchCommand(INSERT_HTML_BLOCK_COMMAND,{\r\n // content:`<div class=\"aa\">我是自定义代码块</div>`,\r\n // css:\"div.aa{ width:100%;height:300px }\"\r\n // })\r\n // },\r\n // sort:9\r\n // } as ToolbarExtendPlugin)\r\n\r\n // 注册指令\r\n const unregister = mergeRegister(\r\n\r\n // 插入\r\n editor.registerCommand<HtmlBlockAttrs>(INSERT_HTML_BLOCK_COMMAND,(payload) => {\r\n $insertNodeToNearestRoot($createHtmlBlockNode(payload))\r\n return true\r\n },COMMAND_PRIORITY_EDITOR),\r\n );\r\n\r\n onUnmounted(() => unregister())\r\n})\r\n</script>\r\n\r\n<template />\r\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAUA,UAAM,SAAS;AAEf,cAAU,MAAM;AAEd,UAAI,CAAC,OAAO,SAAS,CAAC,aAAa,CAAC,GAAE;AAC9B,cAAA,IAAI,MAAM,mCAAmC;AAAA,MACrD;AAgBA,YAAM,aAAa;AAAA;AAAA,QAGjB,OAAO,gBAAgC,2BAA0B,CAAC,YAAY;AACnD,mCAAA,qBAAqB,OAAO,CAAC;AAC/C,iBAAA;AAAA,WACP,uBAAuB;AAAA,MAAA;AAGf,kBAAA,MAAM,YAAY;AAAA,IAAA,CAC/B;;;;;;"}
@@ -0,0 +1,5 @@
1
+ import _sfc_main from "./index.vue.js";
2
+ export {
3
+ _sfc_main as default
4
+ };
5
+ //# sourceMappingURL=index.vue2.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.vue2.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
@@ -3,7 +3,6 @@ import { Dialoger } from "@maketribe/dm";
3
3
  import { ElButton, ElImage, ElIcon, ElTabs, ElTabPane, ElInput, ElRow, ElCol, ElForm, ElFormItem } from "element-plus";
4
4
  import { Picture, UploadFilled, Share } from "@element-plus/icons-vue";
5
5
  import { MsMaterialTable } from "../../../../../modules/ms/dataviews/ms-material/MsMaterialTable.js";
6
- import "@maketribe/request";
7
6
  import { MKMaterialList } from "../../../../../modules/ms/components/material-list/index.js";
8
7
  import { fileSelect } from "@maketribe/utils";
9
8
  import "../../../image-cropper/index.js";
@@ -1 +1 @@
1
- {"version":3,"file":"ImageEditPanel.js","sources":["../../../../../../../src/components/basic/doc-editor/plugins/ImagePlugin/ImageEditPanel.tsx"],"sourcesContent":["\r\nimport { Fragment,h,onMounted, onUnmounted,ref,reactive,defineComponent, computed } from 'vue'\r\nimport { Dialoger } from '@maketribe/dm'\r\nimport { \r\n ElButton,ElTabs,ElTabPane,ElInput,ElImage,ElIcon,\r\n ElForm,ElFormItem,ElRow,ElCol\r\n} from \"element-plus\";\r\nimport { Crop,Share,UploadFilled,Picture } from \"@element-plus/icons-vue\";\r\nimport { MsMaterial, MsMaterialTable } from \"../../../../../modules/ms/dataviews/ms-material\";\r\nimport { MKMaterialList } from \"../../../../../modules/ms/components/material-list\";\r\nimport { MKImageCropperContent } from \"../../../image-cropper\"\r\nimport { fileSelect } from \"@maketribe/utils\"\r\nimport { ImageCropper } from \"../../../image-cropper\"\r\n\r\n// 选择状态\r\nconst selectState = ref(\"select\");\r\n\r\n/**\r\n * 图片编辑面板\r\n */\r\nconst ImageEditPanelComponent = defineComponent({\r\n name: 'ImageEditPanelComponent',\r\n props: ['attrs'],\r\n setup(props,{ expose }){\r\n\r\n const attrs = reactive(props.attrs)\r\n const materialTable = reactive(new MsMaterialTable()) as MsMaterialTable;\r\n const margin = computed<any>({\r\n set(v){\r\n attrs.margin = `${v.t} ${v.r} ${v.b} ${v.l}`\r\n },\r\n get(){\r\n var vals = attrs.margin.split(/[\\s]+/g);\r\n if(vals.length == 1){\r\n return {t:vals[0],r:vals[0],b:vals[0],l:vals[0]}\r\n }\r\n else if(vals.length == 2){\r\n return {t:vals[0],r:vals[1],b:vals[0],l:vals[1]}\r\n }\r\n else if(vals.length == 3){\r\n return {t:vals[0],r:vals[1],b:vals[2],l:vals[1]}\r\n }\r\n else if(vals.length <= 0){\r\n vals = [\"\",\"\",\"\",\"\"];\r\n }\r\n return {t:vals[0],r:vals[1],b:vals[2],l:vals[3]}\r\n }\r\n })\r\n\r\n // 选择素材\r\n materialTable.selectionChangeEvent.on(()=>{\r\n let id = materialTable.getSelection()[0];\r\n if(id){\r\n attrs.src = materialTable.getList().find(item=>item.id == id)?.path;\r\n }\r\n else{\r\n attrs.src = \"\";\r\n }\r\n })\r\n\r\n //\r\n const selectImage = async ()=>{\r\n\r\n const file = await fileSelect({ accept:\"image/*\"});\r\n \r\n if (file) {\r\n\r\n const fileRender = new FileReader();\r\n fileRender.onload = async (data:any)=>{\r\n attrs.src = data.target.result;\r\n \r\n }\r\n fileRender.readAsDataURL(file)\r\n }\r\n }\r\n\r\n // 导出可用的方法\r\n expose({ \r\n getResult:()=>{ return {...attrs} } ,\r\n setSrc:(src:string)=>{ attrs.src = src }\r\n });\r\n\r\n return ()=>{\r\n\r\n // 图片预览\r\n const ImageView = <ElImage style=\"background: #dedede;width: 100%; height: 480px;margin-top:10px\" src={attrs.src} fit=\"contain\" v-slots={{\r\n error:()=>{\r\n return <div style=\"\r\n font-size: 50px;\r\n display: flex;\r\n align-content: center;\r\n justify-content: center;\r\n align-items: center;\r\n height: 100%;\r\n \">\r\n <ElIcon><Picture /></ElIcon>\r\n </div>\r\n }\r\n }}>\r\n </ElImage>\r\n \r\n // 面板内容\r\n let panel = <ElTabs style=\"min-height: 520px\">\r\n <ElTabPane label=\"本地选择\">\r\n <ElButton icon={UploadFilled} type=\"primary\" style=\"width: 100%\" onClick={selectImage}>\r\n 选择本地文件\r\n </ElButton>\r\n {ImageView}\r\n </ElTabPane>\r\n <ElTabPane label=\"素材库选择\">\r\n <MKMaterialList class=\"mk-material-select__list\" selectable materialTable={materialTable} />\r\n </ElTabPane>\r\n <ElTabPane label=\"网络图片\">\r\n <ElInput v-model={attrs.src} prefix-icon={Share} style=\"width: 100%\" placeholder=\"请输入链接地址\">\r\n </ElInput>\r\n {ImageView}\r\n </ElTabPane>\r\n </ElTabs>\r\n\r\n if(selectState.value == \"attrs\"){\r\n panel = <ElRow gutter={20}>\r\n <ElCol span={14}>\r\n {ImageView}\r\n </ElCol>\r\n <ElCol span={10}>\r\n <ElForm label-position=\"top\" model={attrs}>\r\n <ElFormItem label=\"图片描述\">\r\n <ElInput v-model={attrs.alt} type=\"textarea\" {...{ rows:3 }} style=\"width: 100%\" placeholder=\"请输入\">\r\n </ElInput>\r\n </ElFormItem>\r\n <ElFormItem label=\"图片显示宽度\">\r\n <ElInput v-model={attrs.width} style=\"width: 100%\" placeholder=\"请输入宽度(可支持%)\">\r\n </ElInput>\r\n </ElFormItem>\r\n <ElFormItem label=\"图片显示高度\">\r\n <ElInput v-model={attrs.height} style=\"width: 100%\" placeholder=\"请输入宽度(可支持%)\">\r\n </ElInput>\r\n </ElFormItem>\r\n <ElFormItem label=\"图片最大显示宽度\">\r\n <ElInput v-model={attrs.maxWidth} style=\"width: 100%\" placeholder=\"请输入宽度(可支持%)\">\r\n </ElInput>\r\n </ElFormItem>\r\n <ElFormItem label=\"图片最大显示高度\">\r\n <ElInput v-model={attrs.maxHeight} style=\"width: 100%\" placeholder=\"请输入宽度(可支持%)\">\r\n </ElInput>\r\n </ElFormItem>\r\n <ElFormItem label=\"图片显示外边距\">\r\n <div style=\"display: flex;flex-wrap: nowrap;gap: 10px;justify-content: space-around;\">\r\n <div>\r\n 上:\r\n <ElInput v-model={margin.value.t} placeholder=\"\">\r\n </ElInput>\r\n </div>\r\n <div>\r\n 右:\r\n <ElInput v-model={margin.value.r} placeholder=\"\">\r\n </ElInput>\r\n </div>\r\n \r\n <div>\r\n 下:\r\n <ElInput v-model={margin.value.b} placeholder=\"\">\r\n </ElInput>\r\n </div>\r\n \r\n <div>\r\n 左:\r\n <ElInput v-model={margin.value.l} placeholder=\"\">\r\n </ElInput>\r\n </div>\r\n </div>\r\n </ElFormItem>\r\n </ElForm>\r\n </ElCol>\r\n </ElRow>\r\n }\r\n\r\n return panel;\r\n }\r\n }\r\n})\r\n\r\n/**\r\n * \r\n * @param attrs 显示图片编辑面板\r\n * @returns \r\n */\r\nexport const ShowImageEditPanel = async (attrs:any) => {\r\n return new Promise((resolve,reject) => {\r\n\r\n // 初始化\r\n selectState.value = attrs.src ? \"attrs\":\"select\";\r\n\r\n const imageEditPanelRef = ref<any>(null);\r\n const editResult = computed<any>(()=>imageEditPanelRef.value?.getResult())\r\n\r\n // 去裁切\r\n const toCropImageHandle = async ()=>{\r\n \r\n if(editResult.value.src){\r\n var result = await ImageCropper({ src: editResult.value.src});\r\n if(result.data){\r\n imageEditPanelRef.value?.setSrc(result.data);\r\n }\r\n }\r\n \r\n }\r\n\r\n // 取消编辑\r\n const handleCancelClick = () => {\r\n dialogInstance.destroy();\r\n reject();\r\n };\r\n\r\n // 确认编辑\r\n const handleConfirmClick = () => {\r\n dialogInstance.destroy();\r\n resolve({...editResult.value});\r\n };\r\n\r\n const dialogInstance = Dialoger.customRender({\r\n title: \"素材选择\",\r\n class: \"mk-material-select\",\r\n width: \"70%\",\r\n onClose: () => {\r\n dialogInstance.destroy();\r\n },\r\n body: () => {\r\n return h(ImageEditPanelComponent,{attrs,ref:r=>imageEditPanelRef.value = r});\r\n },\r\n footer: () => {\r\n\r\n // 下一步按钮\r\n let nextBtns = [\r\n <ElButton type=\"primary\" onClick={()=>selectState.value = 'attrs'}>\r\n 下一步\r\n </ElButton>\r\n ]\r\n\r\n if(selectState.value == \"attrs\"){\r\n nextBtns = [\r\n <ElButton type=\"primary\" onClick={()=>selectState.value='select'}>\r\n 重新选图\r\n </ElButton>,\r\n <ElButton type=\"primary\" onClick={toCropImageHandle}>\r\n 裁切图\r\n </ElButton>,\r\n <ElButton type=\"primary\" onClick={handleConfirmClick}>\r\n 确定\r\n </ElButton>\r\n ];\r\n }\r\n\r\n return (\r\n <Fragment>\r\n <ElButton onClick={handleCancelClick}>取消</ElButton>\r\n {...nextBtns}\r\n </Fragment>\r\n );\r\n },\r\n });\r\n });\r\n}\r\n"],"names":["_isSlot","s","Object","prototype","toString","call","_isVNode","selectState","ref","ImageEditPanelComponent","defineComponent","name","props","setup","expose","attrs","reactive","materialTable","MsMaterialTable","margin","computed","set","v","t","r","b","l","get","vals","split","length","selectionChangeEvent","on","id","getSelection","src","getList","find","item","path","selectImage","file","fileSelect","accept","fileRender","FileReader","onload","data","target","result","readAsDataURL","getResult","setSrc","ImageView","_createVNode","ElImage","error","ElIcon","default","Picture","panel","ElTabs","ElTabPane","ElButton","UploadFilled","_createTextVNode","MKMaterialList","ElInput","$event","Share","value","ElRow","ElCol","ElForm","ElFormItem","_mergeProps","alt","rows","width","height","maxWidth","maxHeight","ShowImageEditPanel","Promise","resolve","reject","imageEditPanelRef","editResult","toCropImageHandle","ImageCropper","handleCancelClick","dialogInstance","destroy","handleConfirmClick","Dialoger","customRender","title","class","onClose","body","h","footer","nextBtns","onClick","_Fragment"],"mappings":"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"}
1
+ {"version":3,"file":"ImageEditPanel.js","sources":["../../../../../../../src/components/basic/doc-editor/plugins/ImagePlugin/ImageEditPanel.tsx"],"sourcesContent":["\r\nimport { Fragment,h,onMounted, onUnmounted,ref,reactive,defineComponent, computed } from 'vue'\r\nimport { Dialoger } from '@maketribe/dm'\r\nimport { \r\n ElButton,ElTabs,ElTabPane,ElInput,ElImage,ElIcon,\r\n ElForm,ElFormItem,ElRow,ElCol\r\n} from \"element-plus\";\r\nimport { Crop,Share,UploadFilled,Picture } from \"@element-plus/icons-vue\";\r\nimport { MsMaterial, MsMaterialTable } from \"../../../../../modules/ms/dataviews/ms-material\";\r\nimport { MKMaterialList } from \"../../../../../modules/ms/components/material-list\";\r\nimport { MKImageCropperContent } from \"../../../image-cropper\"\r\nimport { fileSelect } from \"@maketribe/utils\"\r\nimport { ImageCropper } from \"../../../image-cropper\"\r\n\r\n// 选择状态\r\nconst selectState = ref(\"select\");\r\n\r\n/**\r\n * 图片编辑面板\r\n */\r\nconst ImageEditPanelComponent = defineComponent({\r\n name: 'ImageEditPanelComponent',\r\n props: ['attrs'],\r\n setup(props,{ expose }){\r\n\r\n const attrs = reactive(props.attrs)\r\n const materialTable = reactive(new MsMaterialTable()) as MsMaterialTable;\r\n const margin = computed<any>({\r\n set(v){\r\n attrs.margin = `${v.t} ${v.r} ${v.b} ${v.l}`\r\n },\r\n get(){\r\n var vals = attrs.margin.split(/[\\s]+/g);\r\n if(vals.length == 1){\r\n return {t:vals[0],r:vals[0],b:vals[0],l:vals[0]}\r\n }\r\n else if(vals.length == 2){\r\n return {t:vals[0],r:vals[1],b:vals[0],l:vals[1]}\r\n }\r\n else if(vals.length == 3){\r\n return {t:vals[0],r:vals[1],b:vals[2],l:vals[1]}\r\n }\r\n else if(vals.length <= 0){\r\n vals = [\"\",\"\",\"\",\"\"];\r\n }\r\n return {t:vals[0],r:vals[1],b:vals[2],l:vals[3]}\r\n }\r\n })\r\n\r\n // 选择素材\r\n materialTable.selectionChangeEvent.on(()=>{\r\n let id = materialTable.getSelection()[0];\r\n if(id){\r\n attrs.src = materialTable.getList().find(item=>item.id == id)?.path;\r\n }\r\n else{\r\n attrs.src = \"\";\r\n }\r\n })\r\n\r\n //\r\n const selectImage = async ()=>{\r\n\r\n const file = await fileSelect({ accept:\"image/*\"});\r\n \r\n if (file) {\r\n\r\n const fileRender = new FileReader();\r\n fileRender.onload = async (data:any)=>{\r\n attrs.src = data.target.result;\r\n \r\n }\r\n fileRender.readAsDataURL(file)\r\n }\r\n }\r\n\r\n // 导出可用的方法\r\n expose({ \r\n getResult:()=>{ return {...attrs} } ,\r\n setSrc:(src:string)=>{ attrs.src = src }\r\n });\r\n\r\n return ()=>{\r\n\r\n // 图片预览\r\n const ImageView = <ElImage style=\"background: #dedede;width: 100%; height: 480px;margin-top:10px\" src={attrs.src} fit=\"contain\" v-slots={{\r\n error:()=>{\r\n return <div style=\"\r\n font-size: 50px;\r\n display: flex;\r\n align-content: center;\r\n justify-content: center;\r\n align-items: center;\r\n height: 100%;\r\n \">\r\n <ElIcon><Picture /></ElIcon>\r\n </div>\r\n }\r\n }}>\r\n </ElImage>\r\n \r\n // 面板内容\r\n let panel = <ElTabs style=\"min-height: 520px\">\r\n <ElTabPane label=\"本地选择\">\r\n <ElButton icon={UploadFilled} type=\"primary\" style=\"width: 100%\" onClick={selectImage}>\r\n 选择本地文件\r\n </ElButton>\r\n {ImageView}\r\n </ElTabPane>\r\n <ElTabPane label=\"素材库选择\">\r\n <MKMaterialList class=\"mk-material-select__list\" selectable materialTable={materialTable} />\r\n </ElTabPane>\r\n <ElTabPane label=\"网络图片\">\r\n <ElInput v-model={attrs.src} prefix-icon={Share} style=\"width: 100%\" placeholder=\"请输入链接地址\">\r\n </ElInput>\r\n {ImageView}\r\n </ElTabPane>\r\n </ElTabs>\r\n\r\n if(selectState.value == \"attrs\"){\r\n panel = <ElRow gutter={20}>\r\n <ElCol span={14}>\r\n {ImageView}\r\n </ElCol>\r\n <ElCol span={10}>\r\n <ElForm label-position=\"top\" model={attrs}>\r\n <ElFormItem label=\"图片描述\">\r\n <ElInput v-model={attrs.alt} type=\"textarea\" {...{ rows:3 }} style=\"width: 100%\" placeholder=\"请输入\">\r\n </ElInput>\r\n </ElFormItem>\r\n <ElFormItem label=\"图片显示宽度\">\r\n <ElInput v-model={attrs.width} style=\"width: 100%\" placeholder=\"请输入宽度(可支持%)\">\r\n </ElInput>\r\n </ElFormItem>\r\n <ElFormItem label=\"图片显示高度\">\r\n <ElInput v-model={attrs.height} style=\"width: 100%\" placeholder=\"请输入宽度(可支持%)\">\r\n </ElInput>\r\n </ElFormItem>\r\n <ElFormItem label=\"图片最大显示宽度\">\r\n <ElInput v-model={attrs.maxWidth} style=\"width: 100%\" placeholder=\"请输入宽度(可支持%)\">\r\n </ElInput>\r\n </ElFormItem>\r\n <ElFormItem label=\"图片最大显示高度\">\r\n <ElInput v-model={attrs.maxHeight} style=\"width: 100%\" placeholder=\"请输入宽度(可支持%)\">\r\n </ElInput>\r\n </ElFormItem>\r\n <ElFormItem label=\"图片显示外边距\">\r\n <div style=\"display: flex;flex-wrap: nowrap;gap: 10px;justify-content: space-around;\">\r\n <div>\r\n 上:\r\n <ElInput v-model={margin.value.t} placeholder=\"\">\r\n </ElInput>\r\n </div>\r\n <div>\r\n 右:\r\n <ElInput v-model={margin.value.r} placeholder=\"\">\r\n </ElInput>\r\n </div>\r\n \r\n <div>\r\n 下:\r\n <ElInput v-model={margin.value.b} placeholder=\"\">\r\n </ElInput>\r\n </div>\r\n \r\n <div>\r\n 左:\r\n <ElInput v-model={margin.value.l} placeholder=\"\">\r\n </ElInput>\r\n </div>\r\n </div>\r\n </ElFormItem>\r\n </ElForm>\r\n </ElCol>\r\n </ElRow>\r\n }\r\n\r\n return panel;\r\n }\r\n }\r\n})\r\n\r\n/**\r\n * \r\n * @param attrs 显示图片编辑面板\r\n * @returns \r\n */\r\nexport const ShowImageEditPanel = async (attrs:any) => {\r\n return new Promise((resolve,reject) => {\r\n\r\n // 初始化\r\n selectState.value = attrs.src ? \"attrs\":\"select\";\r\n\r\n const imageEditPanelRef = ref<any>(null);\r\n const editResult = computed<any>(()=>imageEditPanelRef.value?.getResult())\r\n\r\n // 去裁切\r\n const toCropImageHandle = async ()=>{\r\n \r\n if(editResult.value.src){\r\n var result = await ImageCropper({ src: editResult.value.src});\r\n if(result.data){\r\n imageEditPanelRef.value?.setSrc(result.data);\r\n }\r\n }\r\n \r\n }\r\n\r\n // 取消编辑\r\n const handleCancelClick = () => {\r\n dialogInstance.destroy();\r\n reject();\r\n };\r\n\r\n // 确认编辑\r\n const handleConfirmClick = () => {\r\n dialogInstance.destroy();\r\n resolve({...editResult.value});\r\n };\r\n\r\n const dialogInstance = Dialoger.customRender({\r\n title: \"素材选择\",\r\n class: \"mk-material-select\",\r\n width: \"70%\",\r\n onClose: () => {\r\n dialogInstance.destroy();\r\n },\r\n body: () => {\r\n return h(ImageEditPanelComponent,{attrs,ref:r=>imageEditPanelRef.value = r});\r\n },\r\n footer: () => {\r\n\r\n // 下一步按钮\r\n let nextBtns = [\r\n <ElButton type=\"primary\" onClick={()=>selectState.value = 'attrs'}>\r\n 下一步\r\n </ElButton>\r\n ]\r\n\r\n if(selectState.value == \"attrs\"){\r\n nextBtns = [\r\n <ElButton type=\"primary\" onClick={()=>selectState.value='select'}>\r\n 重新选图\r\n </ElButton>,\r\n <ElButton type=\"primary\" onClick={toCropImageHandle}>\r\n 裁切图\r\n </ElButton>,\r\n <ElButton type=\"primary\" onClick={handleConfirmClick}>\r\n 确定\r\n </ElButton>\r\n ];\r\n }\r\n\r\n return (\r\n <Fragment>\r\n <ElButton onClick={handleCancelClick}>取消</ElButton>\r\n {...nextBtns}\r\n </Fragment>\r\n );\r\n },\r\n });\r\n });\r\n}\r\n"],"names":["_isSlot","s","Object","prototype","toString","call","_isVNode","selectState","ref","ImageEditPanelComponent","defineComponent","name","props","setup","expose","attrs","reactive","materialTable","MsMaterialTable","margin","computed","set","v","t","r","b","l","get","vals","split","length","selectionChangeEvent","on","id","getSelection","src","getList","find","item","path","selectImage","file","fileSelect","accept","fileRender","FileReader","onload","data","target","result","readAsDataURL","getResult","setSrc","ImageView","_createVNode","ElImage","error","ElIcon","default","Picture","panel","ElTabs","ElTabPane","ElButton","UploadFilled","_createTextVNode","MKMaterialList","ElInput","$event","Share","value","ElRow","ElCol","ElForm","ElFormItem","_mergeProps","alt","rows","width","height","maxWidth","maxHeight","ShowImageEditPanel","Promise","resolve","reject","imageEditPanelRef","editResult","toCropImageHandle","ImageCropper","handleCancelClick","dialogInstance","destroy","handleConfirmClick","Dialoger","customRender","title","class","onClose","body","h","footer","nextBtns","onClick","_Fragment"],"mappings":"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"}
@@ -32,6 +32,13 @@ class ImageTextNode extends BaseBlockNode {
32
32
  constructor(key) {
33
33
  super(ImageTextNode.getType(), key);
34
34
  }
35
+ exportJSON() {
36
+ return {
37
+ ...super.exportJSON(),
38
+ type: this.getType(),
39
+ version: 1
40
+ };
41
+ }
35
42
  }
36
43
  function $createImageTextNode(attrs) {
37
44
  const imageText = new ImageTextNode();
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../../../../src/components/basic/doc-editor/plugins/ImageTextPlugin/index.ts"],"sourcesContent":["\r\n\r\n\r\n\r\n\r\nimport type { DOMConversionMap, LexicalCommand, LexicalNode, NodeKey, Spread } from 'lexical'\r\nimport { createCommand,$createParagraphNode } from 'lexical'\r\nimport { ImageAttrs,$createImageNode } from '../ImagePlugin'\r\nimport { BaseBlockNode,SerializedMkDocEditBlockComponentNode } from '../BaseBlockNode'\r\n\r\n/**\r\n * 插入图文\r\n */\r\nexport const INSERT_IMAGETEXT_COMMAND: LexicalCommand<ImageAttrs> = createCommand(\r\n 'INSERT_IMAGETEXT_COMMAND',\r\n)\r\n\r\n\r\n/**\r\n * 图文节点序列化\r\n */\r\nexport type SerializedImageTextNode = Spread<{},SerializedMkDocEditBlockComponentNode>\r\n\r\n/**\r\n * 图文节点\r\n */\r\nexport class ImageTextNode extends BaseBlockNode{\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 getMakeClassName(): string {\r\n return `${BaseBlockNode.MarkClassName}-${ImageTextNode.getType()}`\r\n }\r\n\r\n static importDOM(): DOMConversionMap | null {\r\n return {\r\n \"div\" : (domNode: HTMLElement) => {\r\n return {\r\n conversion: (domNode : HTMLElement)=>{\r\n return domNode.classList.contains(ImageTextNode.getMakeClassName()) ? { node:$createImageTextNode() } : null;\r\n },\r\n priority: 0\r\n }\r\n },\r\n }\r\n }\r\n\r\n\r\n constructor(key?: NodeKey) {\r\n super(ImageTextNode.getType(),key)\r\n }\r\n}\r\n\r\n/**\r\n * 创建图片节点\r\n * @param src \r\n * @returns \r\n */\r\nexport function $createImageTextNode(attrs?: ImageAttrs): ImageTextNode {\r\n\r\n const imageText = new ImageTextNode()\r\n\r\n if(attrs != null){\r\n imageText.append($createImageNode(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":["domNode"],"mappings":";;;AAaO,MAAM,2BAAuD;AAAA,EAClE;AACF;AAWO,MAAM,sBAAsB,cAAa;AAAA,EAE9C,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,mBAA2B;AAChC,WAAO,GAAG,cAAc,aAAa,IAAI,cAAc,QAAS,CAAA;AAAA,EAClE;AAAA,EAEA,OAAO,YAAqC;AACnC,WAAA;AAAA,MACL,OAAQ,CAAC,YAAyB;AACxB,eAAA;AAAA,UACN,YAAY,CAACA,aAAwB;AAC5BA,mBAAAA,SAAQ,UAAU,SAAS,cAAc,kBAAkB,IAAI,EAAE,MAAK,qBAAqB,EAAA,IAAM;AAAA,UAC1G;AAAA,UACA,UAAU;AAAA,QAAA;AAAA,MAEd;AAAA,IAAA;AAAA,EAEJ;AAAA,EAGA,YAAY,KAAe;AACnB,UAAA,cAAc,QAAQ,GAAE,GAAG;AAAA,EACnC;AACF;AAOO,SAAS,qBAAqB,OAAmC;AAEhE,QAAA,YAAY,IAAI;AAEtB,MAAG,SAAS,MAAK;AACL,cAAA,OAAO,iBAAiB,KAAK,CAAC;AAC9B,cAAA,OAAO,sBAAsB;AAAA,EACzC;AAEO,SAAA;AACT;"}
1
+ {"version":3,"file":"index.js","sources":["../../../../../../../src/components/basic/doc-editor/plugins/ImageTextPlugin/index.ts"],"sourcesContent":["\r\n\r\n\r\n\r\n\r\nimport type { DOMConversionMap, LexicalCommand, LexicalNode, NodeKey, Spread } from 'lexical'\r\nimport { createCommand,$createParagraphNode } from 'lexical'\r\nimport { ImageAttrs,$createImageNode } from '../ImagePlugin'\r\nimport { BaseBlockNode,SerializedMkDocEditBlockComponentNode } from '../BaseBlockNode'\r\n\r\n/**\r\n * 插入图文\r\n */\r\nexport const INSERT_IMAGETEXT_COMMAND: LexicalCommand<ImageAttrs> = createCommand(\r\n 'INSERT_IMAGETEXT_COMMAND',\r\n)\r\n\r\n\r\n/**\r\n * 图文节点序列化\r\n */\r\nexport type SerializedImageTextNode = Spread<{},SerializedMkDocEditBlockComponentNode>\r\n\r\n/**\r\n * 图文节点\r\n */\r\nexport class ImageTextNode extends BaseBlockNode{\r\n\r\n static getType(): string {\r\n return \"image-text\";\r\n }\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 getMakeClassName(): string {\r\n return `${BaseBlockNode.MarkClassName}-${ImageTextNode.getType()}`\r\n }\r\n\r\n static importDOM(): DOMConversionMap | null {\r\n return {\r\n \"div\" : (domNode: HTMLElement) => {\r\n return {\r\n conversion: (domNode : HTMLElement)=>{\r\n return domNode.classList.contains(ImageTextNode.getMakeClassName()) ? { node:$createImageTextNode() } : null;\r\n },\r\n priority: 0\r\n }\r\n },\r\n }\r\n }\r\n\r\n constructor(key?: NodeKey) {\r\n super(ImageTextNode.getType(),key)\r\n }\r\n\r\n exportJSON(): SerializedMkDocEditBlockComponentNode {\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/**\r\n * 创建图片节点\r\n * @param src \r\n * @returns \r\n */\r\nexport function $createImageTextNode(attrs?: ImageAttrs): ImageTextNode {\r\n\r\n const imageText = new ImageTextNode()\r\n\r\n if(attrs != null){\r\n imageText.append($createImageNode(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":["domNode"],"mappings":";;;AAaO,MAAM,2BAAuD;AAAA,EAClE;AACF;AAWO,MAAM,sBAAsB,cAAa;AAAA,EAE9C,OAAO,UAAkB;AAChB,WAAA;AAAA,EACT;AAAA,EAGA,OAAO,MAAM,MAAoC;AACxC,WAAA,IAAI,cAAc,KAAK,KAAK;AAAA,EACrC;AAAA,EAEA,OAAO,WAAW,gBAAwD;AACxE,WAAO,qBAAqB;AAAA,EAC9B;AAAA,EAEA,OAAO,mBAA2B;AAChC,WAAO,GAAG,cAAc,aAAa,IAAI,cAAc,QAAS,CAAA;AAAA,EAClE;AAAA,EAEA,OAAO,YAAqC;AACnC,WAAA;AAAA,MACL,OAAQ,CAAC,YAAyB;AACxB,eAAA;AAAA,UACN,YAAY,CAACA,aAAwB;AAC5BA,mBAAAA,SAAQ,UAAU,SAAS,cAAc,kBAAkB,IAAI,EAAE,MAAK,qBAAqB,EAAA,IAAM;AAAA,UAC1G;AAAA,UACA,UAAU;AAAA,QAAA;AAAA,MAEd;AAAA,IAAA;AAAA,EAEJ;AAAA,EAEA,YAAY,KAAe;AACnB,UAAA,cAAc,QAAQ,GAAE,GAAG;AAAA,EACnC;AAAA,EAEA,aAAoD;AAC3C,WAAA;AAAA,MACL,GAAG,MAAM,WAAW;AAAA,MACpB,MAAM,KAAK,QAAQ;AAAA,MACnB,SAAS;AAAA,IAAA;AAAA,EAEb;AACF;AAOO,SAAS,qBAAqB,OAAmC;AAEhE,QAAA,YAAY,IAAI;AAEtB,MAAG,SAAS,MAAK;AACL,cAAA,OAAO,iBAAiB,KAAK,CAAC;AAC9B,cAAA,OAAO,sBAAsB;AAAA,EACzC;AAEO,SAAA;AACT;"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.vue.js","sources":["../../../../../../../src/components/basic/doc-editor/plugins/ImageTextPlugin/index.vue"],"sourcesContent":["<script setup lang=\"ts\">\r\nimport { useLexicalComposer } from '../../lexical-vue'\r\nimport { $insertNodeToNearestRoot,mergeRegister } from '@lexical/utils'\r\nimport { COMMAND_PRIORITY_EDITOR,COMMAND_PRIORITY_LOW,$getSelection,CLICK_COMMAND } from 'lexical'\r\n\r\nimport { onMounted, onUnmounted } from 'vue'\r\nimport { INSERT_IMAGETEXT_COMMAND,ImageTextNode,$createImageTextNode } from './index'\r\nimport { ImageAttrs } from '../ImagePlugin/index'\r\nimport { RegisterToolbarExtend,type ToolbarExtendPlugin } from \"../ToolbarPlugin/defines\"\r\n\r\n\r\nconst editor = useLexicalComposer()\r\n\r\nonMounted(() => {\r\n\r\n if (!editor.hasNodes([ImageTextNode])){\r\n throw new Error('ImageTextPlugin: 图文节点未注册!')\r\n }\r\n\r\n // 注册到工具条\r\n RegisterToolbarExtend({\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\n // 注册指令\r\n const unregister = mergeRegister(\r\n\r\n // 插入图片\r\n editor.registerCommand<ImageAttrs>(INSERT_IMAGETEXT_COMMAND,(payload) => {\r\n $insertNodeToNearestRoot($createImageTextNode(payload))\r\n return true\r\n },COMMAND_PRIORITY_EDITOR),\r\n // editor.registerCommand<MouseEvent>(CLICK_COMMAND,(event) => {\r\n\r\n // let dom = event.target as HTMLElement\r\n // let block = dom.parentElement\r\n\r\n // if(block?.classList.contains(ImageTextNode.getMakeClassName())){\r\n\r\n // event.preventDefault();\r\n // console.log(block);\r\n\r\n // // if (!event.shiftKey){ clearSelection() }\r\n \r\n // // setSelected(true)\r\n // // updateImageActiveBox();\r\n\r\n // return true\r\n // }\r\n\r\n // // if (event.target === selfElRef.value) {\r\n\r\n \r\n // // }\r\n // return false\r\n // },COMMAND_PRIORITY_LOW),\r\n );\r\n\r\n onUnmounted(() => unregister())\r\n})\r\n</script>\r\n\r\n<template />\r\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAWA,UAAM,SAAS;AAEf,cAAU,MAAM;AAEd,UAAI,CAAC,OAAO,SAAS,CAAC,aAAa,CAAC,GAAE;AAC9B,cAAA,IAAI,MAAM,2BAA2B;AAAA,MAC7C;AAGsB,4BAAA;AAAA,QACpB,MAAK;AAAA,QACL,MAAK;AAAA,QACL,QAAO,YAAU;AACf,iBAAO,gBAAgB,0BAAyB;AAAA,YAC9C,KAAI;AAAA,YACJ,OAAM;AAAA,YACN,OAAM;AAAA,YACN,QAAO;AAAA,UAAA,CACR;AAAA,QACH;AAAA,QACA,MAAK;AAAA,MAAA,CACiB;AAGxB,YAAM,aAAa;AAAA;AAAA,QAGjB,OAAO,gBAA4B,0BAAyB,CAAC,YAAY;AAC9C,mCAAA,qBAAqB,OAAO,CAAC;AAC/C,iBAAA;AAAA,WACP,uBAAuB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MAAA;AA2Bf,kBAAA,MAAM,YAAY;AAAA,IAAA,CAC/B;;;;;;"}
1
+ {"version":3,"file":"index.vue.js","sources":["../../../../../../../src/components/basic/doc-editor/plugins/ImageTextPlugin/index.vue"],"sourcesContent":["<script setup lang=\"ts\">\r\nimport { useLexicalComposer } from '../../lexical-vue'\r\nimport { $insertNodeToNearestRoot,mergeRegister } from '@lexical/utils'\r\nimport { COMMAND_PRIORITY_EDITOR,COMMAND_PRIORITY_LOW,$getSelection,CLICK_COMMAND } from 'lexical'\r\n\r\nimport { onMounted, onUnmounted } from 'vue'\r\nimport { INSERT_IMAGETEXT_COMMAND,ImageTextNode,$createImageTextNode } from './index'\r\nimport { ImageAttrs } from '../ImagePlugin/index'\r\nimport { RegisterToolbarExtend,type ToolbarExtendPlugin } from \"../ToolbarPlugin/defines\"\r\n\r\n\r\nconst editor = useLexicalComposer()\r\n\r\nonMounted(() => {\r\n\r\n if (!editor.hasNodes([ImageTextNode])){\r\n throw new Error('ImageTextPlugin: 图文节点未注册!')\r\n }\r\n \r\n // 注册到工具条\r\n RegisterToolbarExtend({\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\n // 注册指令\r\n const unregister = mergeRegister(\r\n\r\n // 插入图片\r\n editor.registerCommand<ImageAttrs>(INSERT_IMAGETEXT_COMMAND,(payload) => {\r\n $insertNodeToNearestRoot($createImageTextNode(payload))\r\n return true\r\n },COMMAND_PRIORITY_EDITOR),\r\n // editor.registerCommand<MouseEvent>(CLICK_COMMAND,(event) => {\r\n\r\n // let dom = event.target as HTMLElement\r\n // let block = dom.parentElement\r\n\r\n // if(block?.classList.contains(ImageTextNode.getMakeClassName())){\r\n\r\n // event.preventDefault();\r\n // console.log(block);\r\n\r\n // // if (!event.shiftKey){ clearSelection() }\r\n \r\n // // setSelected(true)\r\n // // updateImageActiveBox();\r\n\r\n // return true\r\n // }\r\n\r\n // // if (event.target === selfElRef.value) {\r\n\r\n \r\n // // }\r\n // return false\r\n // },COMMAND_PRIORITY_LOW),\r\n );\r\n\r\n onUnmounted(() => unregister())\r\n})\r\n</script>\r\n\r\n<template />\r\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAWA,UAAM,SAAS;AAEf,cAAU,MAAM;AAEd,UAAI,CAAC,OAAO,SAAS,CAAC,aAAa,CAAC,GAAE;AAC9B,cAAA,IAAI,MAAM,2BAA2B;AAAA,MAC7C;AAGsB,4BAAA;AAAA,QACpB,MAAK;AAAA,QACL,MAAK;AAAA,QACL,QAAO,YAAU;AACf,iBAAO,gBAAgB,0BAAyB;AAAA,YAC9C,KAAI;AAAA,YACJ,OAAM;AAAA,YACN,OAAM;AAAA,YACN,QAAO;AAAA,UAAA,CACR;AAAA,QACH;AAAA,QACA,MAAK;AAAA,MAAA,CACiB;AAGxB,YAAM,aAAa;AAAA;AAAA,QAGjB,OAAO,gBAA4B,0BAAyB,CAAC,YAAY;AAC9C,mCAAA,qBAAqB,OAAO,CAAC;AAC/C,iBAAA;AAAA,WACP,uBAAuB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MAAA;AA2Bf,kBAAA,MAAM,YAAY;AAAA,IAAA,CAC/B;;;;;;"}
@@ -0,0 +1,117 @@
1
+ import { defineComponent, ref, computed, onMounted, resolveComponent, openBlock, createElementBlock, Fragment, createVNode, withCtx, normalizeClass, createElementVNode, createCommentVNode } from "vue";
2
+ import "@lexical/text";
3
+ import "@lexical/utils";
4
+ import "@lexical/overflow";
5
+ import "lexical";
6
+ import "tiny-invariant";
7
+ import "@lexical/history";
8
+ import { useLexicalComposer } from "../../lexical-vue/composables/useLexicalComposer.js";
9
+ import "@lexical/list";
10
+ import "@lexical/dragon";
11
+ import "@lexical/plain-text";
12
+ import "@lexical/rich-text";
13
+ import "@lexical/yjs";
14
+ import "yjs";
15
+ import "../../lexical-vue/components/LexicalDecoratedTeleports.js";
16
+ import { $generateHtmlFromNodes } from "@lexical/html";
17
+ import "@lexical/link";
18
+ import "@lexical/mark";
19
+ import "@lexical/table";
20
+ import "@lexical/hashtag";
21
+ import "@lexical/markdown";
22
+ import "../../lexical-vue/composables/useCollaborationContext.js";
23
+ import "../../lexical-vue/components/LexicalMenu/shared.js";
24
+ import "../../lexical-vue/components/LexicalAutoEmbedPlugin/shared.js";
25
+ import "../../lexical-vue/components/LexicalTypeaheadMenuPlugin/shared.js";
26
+ import { DEVICE_VIEW_MODE } from "../commands.js";
27
+ import DocThemeCss from "../../themes/doc-theme.css.js";
28
+ import DocEditorCss from "../../themes/doc-editor.css.js";
29
+ const _hoisted_1 = ["srcdoc"];
30
+ const _sfc_main = /* @__PURE__ */ defineComponent({
31
+ __name: "PreviewToolbar",
32
+ setup(__props) {
33
+ const editor = useLexicalComposer();
34
+ const iframeContentRef = ref(null);
35
+ const iframeBody = computed(() => {
36
+ var _a, _b, _c;
37
+ return (_c = (_b = (_a = iframeContentRef.value) == null ? void 0 : _a.contentWindow) == null ? void 0 : _b.document) == null ? void 0 : _c.body;
38
+ });
39
+ const codeDialogVisible = ref(false);
40
+ const srcdoc = ref("");
41
+ const createViewContent = (content) => {
42
+ srcdoc.value = `
43
+ <html>
44
+ <head>
45
+ <style type="text/css">
46
+ ${DocEditorCss}
47
+ ${DocThemeCss}
48
+ </style>
49
+ </head>
50
+ <body style="font-size:${viewDevice.value == "pc" ? "14px" : "18px"}">${content}</body>
51
+ </html>
52
+ `;
53
+ };
54
+ const viewDevice = ref("pc");
55
+ const show = function() {
56
+ editor.getEditorState().read(() => {
57
+ createViewContent($generateHtmlFromNodes(editor));
58
+ setTimeout(() => {
59
+ var _a;
60
+ if (iframeBody.value.scrollHeight > iframeBody.value.offsetHeight) {
61
+ iframeContentRef.value.style.height = ((_a = iframeBody.value) == null ? void 0 : _a.scrollHeight) + 10 + "px";
62
+ }
63
+ }, 100);
64
+ });
65
+ codeDialogVisible.value = true;
66
+ };
67
+ onMounted(() => {
68
+ editor.registerCommand(DEVICE_VIEW_MODE, (payload) => {
69
+ viewDevice.value = payload;
70
+ return false;
71
+ }, 1);
72
+ });
73
+ return (_ctx, _cache) => {
74
+ const _component_MKSvgIcon = resolveComponent("MKSvgIcon");
75
+ const _component_el_button = resolveComponent("el-button");
76
+ const _component_el_dialog = resolveComponent("el-dialog");
77
+ return openBlock(), createElementBlock(Fragment, null, [
78
+ createVNode(_component_el_button, {
79
+ text: "",
80
+ onClick: show
81
+ }, {
82
+ default: withCtx(() => [
83
+ createVNode(_component_MKSvgIcon, { iconClass: "View" })
84
+ ]),
85
+ _: 1
86
+ }),
87
+ createVNode(_component_el_dialog, {
88
+ modelValue: codeDialogVisible.value,
89
+ "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => codeDialogVisible.value = $event),
90
+ "append-to-body": "",
91
+ title: "预览",
92
+ width: "80%",
93
+ fullscreen: ""
94
+ }, {
95
+ default: withCtx(() => [
96
+ codeDialogVisible.value ? (openBlock(), createElementBlock("div", {
97
+ key: 0,
98
+ class: normalizeClass(["mk-doc-editor__view_warp", viewDevice.value])
99
+ }, [
100
+ createElementVNode("iframe", {
101
+ class: "mk-doc-editor__view_iframe",
102
+ ref_key: "iframeContentRef",
103
+ ref: iframeContentRef,
104
+ srcdoc: srcdoc.value
105
+ }, null, 8, _hoisted_1)
106
+ ], 2)) : createCommentVNode("", true)
107
+ ]),
108
+ _: 1
109
+ }, 8, ["modelValue"])
110
+ ], 64);
111
+ };
112
+ }
113
+ });
114
+ export {
115
+ _sfc_main as default
116
+ };
117
+ //# sourceMappingURL=PreviewToolbar.vue.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PreviewToolbar.vue.js","sources":["../../../../../../../src/components/basic/doc-editor/plugins/ToolbarPlugin/PreviewToolbar.vue"],"sourcesContent":["<script setup lang=\"ts\">\r\nimport { useLexicalComposer } from '../../lexical-vue'\r\nimport { DEVICE_VIEW_MODE } from \"../commands\"\r\nimport { $generateHtmlFromNodes} from '@lexical/html'\r\nimport { onMounted,ref,computed } from \"vue\"\r\nimport DocThemeCss from \"../../themes/doc-theme.css?raw\";\r\nimport DocEditorCss from \"../../themes/doc-editor.css?raw\";\r\n\r\nconst editor = useLexicalComposer()\r\n// iframe 编辑器\r\nconst iframeContentRef = ref(null as any);\r\nconst iframeBody = computed<any>(()=>iframeContentRef.value?.contentWindow?.document?.body)\r\n\r\nconst codeDialogVisible = ref(false);\r\nconst srcdoc = ref(\"\");\r\n// 创建预览内容\r\nconst createViewContent = (content:string)=>{\r\n srcdoc.value = `\r\n <html>\r\n <head>\r\n <style type=\"text/css\">\r\n ${DocEditorCss}\r\n ${DocThemeCss}\r\n </style>\r\n </head>\r\n <body style=\"font-size:${viewDevice.value=='pc'?\"14px\":\"18px\"}\">${content}</body>\r\n </html>\r\n `\r\n}\r\n\r\n// pc | mobile\r\nconst viewDevice = ref('pc')\r\n// 显示\r\nconst show = function(){\r\n\r\n editor.getEditorState().read(() => {\r\n createViewContent($generateHtmlFromNodes(editor))\r\n setTimeout(() => {\r\n if(iframeBody.value.scrollHeight > iframeBody.value.offsetHeight){\r\n iframeContentRef.value.style.height = (iframeBody.value?.scrollHeight + 10)+\"px\";\r\n }\r\n }, 100);\r\n })\r\n\r\n codeDialogVisible.value = true;\r\n \r\n}\r\nonMounted(()=>{\r\n editor.registerCommand(DEVICE_VIEW_MODE,(payload: string) => {\r\n viewDevice.value = payload;\r\n return false\r\n },1)\r\n});\r\n\r\n</script>\r\n\r\n<template>\r\n <el-button text @click=\"show\">\r\n <MKSvgIcon iconClass=\"View\" /> \r\n </el-button>\r\n <el-dialog v-model=\"codeDialogVisible\" append-to-body title=\"预览\" width=\"80%\" fullscreen>\r\n <div class=\"mk-doc-editor__view_warp\" :class=\"viewDevice\" v-if=\"codeDialogVisible\">\r\n <iframe class=\"mk-doc-editor__view_iframe\" ref=\"iframeContentRef\" :srcdoc=\"srcdoc\"></iframe>\r\n </div>\r\n \r\n </el-dialog>\r\n</template>\r\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAQA,UAAM,SAAS;AAET,UAAA,mBAAmB,IAAI,IAAW;AACxC,UAAM,aAAa,SAAc;;AAAI,gDAAiB,UAAjB,mBAAwB,kBAAxB,mBAAuC,aAAvC,mBAAiD;AAAA,KAAI;AAEpF,UAAA,oBAAoB,IAAI,KAAK;AAC7B,UAAA,SAAS,IAAI,EAAE;AAEf,UAAA,oBAAoB,CAAC,YAAiB;AAC1C,aAAO,QAAQ;AAAA;AAAA;AAAA;AAAA,YAIL,YAAY;AAAA,YACZ,WAAW;AAAA;AAAA;AAAA,+BAGQ,WAAW,SAAO,OAAK,SAAO,MAAM,KAAK,OAAO;AAAA;AAAA;AAAA,IAAA;AAMzE,UAAA,aAAa,IAAI,IAAI;AAE3B,UAAM,OAAO,WAAU;AAEd,aAAA,iBAAiB,KAAK,MAAM;AACf,0BAAA,uBAAuB,MAAM,CAAC;AAChD,mBAAW,MAAM;;AACf,cAAG,WAAW,MAAM,eAAe,WAAW,MAAM,cAAa;AAC/D,6BAAiB,MAAM,MAAM,WAAU,gBAAW,UAAX,mBAAkB,gBAAe,KAAI;AAAA,UAC9E;AAAA,WACC,GAAG;AAAA,MAAA,CACP;AAED,wBAAkB,QAAQ;AAAA,IAAA;AAG5B,cAAU,MAAI;AACL,aAAA,gBAAgB,kBAAiB,CAAC,YAAoB;AAC3D,mBAAW,QAAQ;AACZ,eAAA;AAAA,SACP,CAAC;AAAA,IAAA,CACJ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -0,0 +1,5 @@
1
+ import _sfc_main from "./PreviewToolbar.vue.js";
2
+ export {
3
+ _sfc_main as default
4
+ };
5
+ //# sourceMappingURL=PreviewToolbar.vue2.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PreviewToolbar.vue2.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
@@ -23,7 +23,7 @@ import "../../lexical-vue/composables/useCollaborationContext.js";
23
23
  import "../../lexical-vue/components/LexicalMenu/shared.js";
24
24
  import "../../lexical-vue/components/LexicalAutoEmbedPlugin/shared.js";
25
25
  import "../../lexical-vue/components/LexicalTypeaheadMenuPlugin/shared.js";
26
- import _sfc_main$3 from "./HtmlCodeTool.vue.js";
26
+ import _sfc_main$3 from "./PreviewToolbar.vue.js";
27
27
  import _sfc_main$2 from "./FontStyleTool.vue.js";
28
28
  import _sfc_main$1 from "./ContentStyleTool.vue.js";
29
29
  import { ToolbarExtendPlugins } from "./defines.js";