@maketribe/ms-app 3.2.2 → 3.2.4

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 (567) 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/assets/iconfonts/oa-iconfont.js +37 -0
  4. package/dist/cjs/assets/iconfonts/oa-iconfont.js.map +1 -0
  5. package/dist/cjs/components/abstract/abstract-select/abstract-select.js +5 -1
  6. package/dist/cjs/components/abstract/abstract-select/abstract-select.js.map +1 -1
  7. package/dist/cjs/components/basic/copy-container/copy-container.js +2 -2
  8. package/dist/cjs/components/basic/copy-container/copy-container.js.map +1 -1
  9. package/dist/cjs/components/basic/doc-editor/editor.vue.js +41 -18
  10. package/dist/cjs/components/basic/doc-editor/editor.vue.js.map +1 -1
  11. package/dist/cjs/components/basic/doc-editor/lexical-vue/components/LexicalAutoLinkPlugin/index.vue.js +2 -37
  12. package/dist/cjs/components/basic/doc-editor/lexical-vue/components/LexicalAutoLinkPlugin/index.vue.js.map +1 -1
  13. package/dist/cjs/components/basic/doc-editor/lexical-vue/components/LexicalAutoLinkPlugin/index.vue2.js +37 -2
  14. package/dist/cjs/components/basic/doc-editor/lexical-vue/components/LexicalAutoLinkPlugin/index.vue2.js.map +1 -1
  15. package/dist/cjs/components/basic/doc-editor/lexical-vue/components/LexicalDecoratorBlockNode.js +0 -4
  16. package/dist/cjs/components/basic/doc-editor/lexical-vue/components/LexicalDecoratorBlockNode.js.map +1 -1
  17. package/dist/cjs/components/basic/doc-editor/plugins/AutoLinkPlugin.vue.js +1 -1
  18. package/dist/cjs/components/basic/doc-editor/plugins/BaseBlockNode.js +44 -0
  19. package/dist/cjs/components/basic/doc-editor/plugins/BaseBlockNode.js.map +1 -0
  20. package/dist/cjs/components/basic/doc-editor/plugins/ImagePlugin/DocImageComponent.js +192 -15
  21. package/dist/cjs/components/basic/doc-editor/plugins/ImagePlugin/DocImageComponent.js.map +1 -1
  22. package/dist/cjs/components/basic/doc-editor/plugins/ImagePlugin/ImageEditPanel.js +304 -0
  23. package/dist/cjs/components/basic/doc-editor/plugins/ImagePlugin/ImageEditPanel.js.map +1 -0
  24. package/dist/cjs/components/basic/doc-editor/plugins/ImagePlugin/ImageTools.vue.js +112 -0
  25. package/dist/cjs/components/basic/doc-editor/plugins/ImagePlugin/ImageTools.vue.js.map +1 -0
  26. package/dist/cjs/components/basic/doc-editor/plugins/ImagePlugin/ImageTools.vue2.js +4 -0
  27. package/dist/cjs/components/basic/doc-editor/plugins/ImagePlugin/ImageTools.vue2.js.map +1 -0
  28. package/dist/cjs/components/basic/doc-editor/plugins/ImagePlugin/index.js +122 -6
  29. package/dist/cjs/components/basic/doc-editor/plugins/ImagePlugin/index.js.map +1 -1
  30. package/dist/cjs/components/basic/doc-editor/plugins/ImagePlugin/index.vue.js +50 -13
  31. package/dist/cjs/components/basic/doc-editor/plugins/ImagePlugin/index.vue.js.map +1 -1
  32. package/dist/cjs/components/basic/doc-editor/plugins/ImageTextPlugin/index.js +49 -0
  33. package/dist/cjs/components/basic/doc-editor/plugins/ImageTextPlugin/index.js.map +1 -0
  34. package/dist/cjs/components/basic/doc-editor/plugins/ImageTextPlugin/index.vue.js +80 -0
  35. package/dist/cjs/components/basic/doc-editor/plugins/ImageTextPlugin/index.vue.js.map +1 -0
  36. package/dist/cjs/components/basic/doc-editor/plugins/ImageTextPlugin/index.vue2.js +4 -0
  37. package/dist/cjs/components/basic/doc-editor/plugins/ImageTextPlugin/index.vue2.js.map +1 -0
  38. package/dist/cjs/components/basic/doc-editor/plugins/ToolbarPlugin/ContentStyleTool.vue.js +14 -5
  39. package/dist/cjs/components/basic/doc-editor/plugins/ToolbarPlugin/ContentStyleTool.vue.js.map +1 -1
  40. package/dist/cjs/components/basic/doc-editor/plugins/ToolbarPlugin/FontStyleTool.vue.js +50 -27
  41. package/dist/cjs/components/basic/doc-editor/plugins/ToolbarPlugin/FontStyleTool.vue.js.map +1 -1
  42. package/dist/cjs/components/basic/doc-editor/plugins/ToolbarPlugin/InlineToolsPlugin.vue.js +89 -0
  43. package/dist/cjs/components/basic/doc-editor/plugins/ToolbarPlugin/InlineToolsPlugin.vue.js.map +1 -0
  44. package/dist/cjs/components/basic/doc-editor/plugins/ToolbarPlugin/InlineToolsPlugin.vue2.js +4 -0
  45. package/dist/cjs/components/basic/doc-editor/plugins/ToolbarPlugin/InlineToolsPlugin.vue2.js.map +1 -0
  46. package/dist/cjs/components/basic/doc-editor/plugins/ToolbarPlugin/defines.js +11 -0
  47. package/dist/cjs/components/basic/doc-editor/plugins/ToolbarPlugin/defines.js.map +1 -0
  48. package/dist/cjs/components/basic/doc-editor/plugins/ToolbarPlugin/index.vue.js +52 -6
  49. package/dist/cjs/components/basic/doc-editor/plugins/ToolbarPlugin/index.vue.js.map +1 -1
  50. package/dist/cjs/components/basic/doc-editor/plugins/commands.js +8 -0
  51. package/dist/cjs/components/basic/doc-editor/plugins/commands.js.map +1 -0
  52. package/dist/cjs/components/basic/doc-editor/plugins/index.vue.js +5 -1
  53. package/dist/cjs/components/basic/doc-editor/plugins/index.vue.js.map +1 -1
  54. package/dist/cjs/components/basic/doc-editor/plugins/nodes.js +11 -13
  55. package/dist/cjs/components/basic/doc-editor/plugins/nodes.js.map +1 -1
  56. package/dist/cjs/components/basic/doc-editor/themes/doc-editor.css.js +1 -1
  57. package/dist/cjs/components/basic/doc-editor/themes/doc-editor.css.js.map +1 -1
  58. package/dist/cjs/components/basic/doc-editor/themes/doc-theme.css.js +453 -1
  59. package/dist/cjs/components/basic/doc-editor/themes/doc-theme.css.js.map +1 -1
  60. package/dist/cjs/components/basic/image-cropper/image-cropper-api.js +63 -0
  61. package/dist/cjs/components/basic/image-cropper/image-cropper-api.js.map +1 -0
  62. package/dist/cjs/components/basic/image-cropper/image-cropper-content-options.js +18 -0
  63. package/dist/cjs/components/basic/image-cropper/image-cropper-content-options.js.map +1 -0
  64. package/dist/cjs/components/basic/image-cropper/image-cropper-content.js +204 -0
  65. package/dist/cjs/components/basic/image-cropper/image-cropper-content.js.map +1 -0
  66. package/dist/cjs/components/basic/image-cropper/index.js +15 -0
  67. package/dist/cjs/components/basic/image-cropper/index.js.map +1 -0
  68. package/dist/cjs/components/basic/svg-icon/svg-icon.js +5 -3
  69. package/dist/cjs/components/basic/svg-icon/svg-icon.js.map +1 -1
  70. package/dist/cjs/components/basic/upload-file/context/WebFileUploadContext.js +3 -30
  71. package/dist/cjs/components/basic/upload-file/context/WebFileUploadContext.js.map +1 -1
  72. package/dist/cjs/components/basic/upload-file/ui/upload-image/upload-image.js +0 -4
  73. package/dist/cjs/components/basic/upload-file/ui/upload-image/upload-image.js.map +1 -1
  74. package/dist/cjs/components/basic/upload-file/upload-file.js +0 -4
  75. package/dist/cjs/components/basic/upload-file/upload-file.js.map +1 -1
  76. package/dist/cjs/components/business/resource-list/ResourceManager.js +40 -0
  77. package/dist/cjs/components/business/resource-list/ResourceManager.js.map +1 -1
  78. package/dist/cjs/components/business/resource-list/components/resource-item/index.vue.js +1 -4
  79. package/dist/cjs/components/business/resource-list/components/resource-item/index.vue.js.map +1 -1
  80. package/dist/cjs/components/business/resource-manager/resource-manager.vue.js +121 -21
  81. package/dist/cjs/components/business/resource-manager/resource-manager.vue.js.map +1 -1
  82. package/dist/cjs/components/business/resource-select/resource-select-api.js.map +1 -1
  83. package/dist/cjs/components/data-model/data-form/views/form/form.js.map +1 -1
  84. package/dist/cjs/components/data-model/data-table/components/column-sort/column-sort.js +1 -4
  85. package/dist/cjs/components/data-model/data-table/components/column-sort/column-sort.js.map +1 -1
  86. package/dist/cjs/components/data-model/data-table/components/header-components/batch-opt/batch-opt.js +2 -4
  87. package/dist/cjs/components/data-model/data-table/components/header-components/batch-opt/batch-opt.js.map +1 -1
  88. package/dist/cjs/components/data-model/data-table/components/header-components/table-filter/table-filter.js +1 -4
  89. package/dist/cjs/components/data-model/data-table/components/header-components/table-filter/table-filter.js.map +1 -1
  90. package/dist/cjs/components/data-model/data-table/views/table/table-options.js +7 -0
  91. package/dist/cjs/components/data-model/data-table/views/table/table-options.js.map +1 -1
  92. package/dist/cjs/components/data-model/data-table/views/table/table.js +6 -4
  93. package/dist/cjs/components/data-model/data-table/views/table/table.js.map +1 -1
  94. package/dist/cjs/components/data-model/data-table/views/table-tree/table-tree-options.js +4 -0
  95. package/dist/cjs/components/data-model/data-table/views/table-tree/table-tree-options.js.map +1 -1
  96. package/dist/cjs/components/data-model/data-table/views/table-tree/table-tree.js +4 -1
  97. package/dist/cjs/components/data-model/data-table/views/table-tree/table-tree.js.map +1 -1
  98. package/dist/cjs/components/data-model/data-table/views/tree/index.js +1 -0
  99. package/dist/cjs/components/data-model/data-table/views/tree/index.js.map +1 -1
  100. package/dist/cjs/components/data-model/data-table/views/tree/tree-options.js +7 -1
  101. package/dist/cjs/components/data-model/data-table/views/tree/tree-options.js.map +1 -1
  102. package/dist/cjs/components/data-model/data-table/views/tree/tree.js +33 -6
  103. package/dist/cjs/components/data-model/data-table/views/tree/tree.js.map +1 -1
  104. package/dist/cjs/core/MSAppClient.js +3 -2
  105. package/dist/cjs/core/MSAppClient.js.map +1 -1
  106. package/dist/cjs/index.js +56 -48
  107. package/dist/cjs/index.js.map +1 -1
  108. package/dist/cjs/installer.js +3 -4
  109. package/dist/cjs/installer.js.map +1 -1
  110. package/dist/cjs/layouts/components/bar/index.js +6 -5
  111. package/dist/cjs/layouts/components/bar/index.js.map +1 -1
  112. package/dist/cjs/layouts/components/header/tools.js +26 -14
  113. package/dist/cjs/layouts/components/header/tools.js.map +1 -1
  114. package/dist/cjs/layouts/components/menu/menu-item.js +6 -5
  115. package/dist/cjs/layouts/components/menu/menu-item.js.map +1 -1
  116. package/dist/cjs/layouts/container/default.js +4 -3
  117. package/dist/cjs/layouts/container/default.js.map +1 -1
  118. package/dist/cjs/message-impl/DialogerImpl.js +2 -3
  119. package/dist/cjs/message-impl/DialogerImpl.js.map +1 -1
  120. package/dist/cjs/modules/cms/components/part-tree/index.vue.js +14 -4
  121. package/dist/cjs/modules/cms/components/part-tree/index.vue.js.map +1 -1
  122. package/dist/cjs/modules/cms/dataviews/cms-ad-contents/CmsAdContentsForm.js +4 -4
  123. package/dist/cjs/modules/cms/dataviews/cms-articles/CmsArticlesForm.js +7 -4
  124. package/dist/cjs/modules/cms/dataviews/cms-articles/CmsArticlesForm.js.map +1 -1
  125. package/dist/cjs/modules/cms/dataviews/cms-articles/cms-article-atlas/CmsArticleAtlasForm.js +5 -5
  126. package/dist/cjs/modules/cms/dataviews/cms-articles/cms-article-atlas/CmsArticleAtlasForm.js.map +1 -1
  127. package/dist/cjs/modules/cms/dataviews/cms-parts/CmsPartForm.js +40 -3
  128. package/dist/cjs/modules/cms/dataviews/cms-parts/CmsPartForm.js.map +1 -1
  129. package/dist/cjs/modules/cms/dataviews/cms-parts/CmsPartTree.js +1 -1
  130. package/dist/cjs/modules/cms/dataviews/cms-parts/CmsPartTree.js.map +1 -1
  131. package/dist/cjs/modules/cms/pages/cms-ad/index.vue2.js +4 -4
  132. package/dist/cjs/modules/cms/pages/cms-contents/article-edit-add-page.vue2.js +121 -76
  133. package/dist/cjs/modules/cms/pages/cms-contents/article-edit-add-page.vue2.js.map +1 -1
  134. package/dist/cjs/modules/cms/pages/cms-contents/components/article-atlas.vue.js +182 -85
  135. package/dist/cjs/modules/cms/pages/cms-contents/components/article-atlas.vue.js.map +1 -1
  136. package/dist/cjs/modules/cms/pages/cms-contents/components/article-list.vue.js +37 -8
  137. package/dist/cjs/modules/cms/pages/cms-contents/components/article-list.vue.js.map +1 -1
  138. package/dist/cjs/modules/cms/pages/cms-contents/components/part-info.vue.js +17 -18
  139. package/dist/cjs/modules/cms/pages/cms-contents/components/part-info.vue.js.map +1 -1
  140. package/dist/cjs/modules/cms/pages/cms-contents/index.vue2.js +279 -19
  141. package/dist/cjs/modules/cms/pages/cms-contents/index.vue2.js.map +1 -1
  142. package/dist/cjs/modules/cms/pages/cms-resource/index.vue2.js +2 -4
  143. package/dist/cjs/modules/cms/pages/cms-resource/index.vue2.js.map +1 -1
  144. package/dist/cjs/modules/ms/components/material-list/components/file-view/file-view.js.map +1 -1
  145. package/dist/cjs/modules/ms/components/material-list/components/image-view/image-view.js +1 -1
  146. package/dist/cjs/modules/ms/components/material-list/components/image-view/image-view.js.map +1 -1
  147. package/dist/cjs/modules/ms/components/material-list/index.js +2 -3
  148. package/dist/cjs/modules/ms/components/material-list/index.js.map +1 -1
  149. package/dist/cjs/modules/ms/components/material-list/material-group-form-popover.js +77 -0
  150. package/dist/cjs/modules/ms/components/material-list/material-group-form-popover.js.map +1 -0
  151. package/dist/cjs/modules/ms/components/material-list/material-group.js +146 -0
  152. package/dist/cjs/modules/ms/components/material-list/material-group.js.map +1 -0
  153. package/dist/cjs/modules/ms/components/material-list/material-item.vue.js +84 -47
  154. package/dist/cjs/modules/ms/components/material-list/material-item.vue.js.map +1 -1
  155. package/dist/cjs/modules/ms/components/material-list/material-list-options.js +8 -13
  156. package/dist/cjs/modules/ms/components/material-list/material-list-options.js.map +1 -1
  157. package/dist/cjs/modules/ms/components/material-list/material-list.js +332 -0
  158. package/dist/cjs/modules/ms/components/material-list/material-list.js.map +1 -0
  159. package/dist/cjs/modules/ms/components/material-select/index.js +2 -6
  160. package/dist/cjs/modules/ms/components/material-select/index.js.map +1 -1
  161. package/dist/cjs/modules/ms/components/material-select/material-select-api.js +100 -28
  162. package/dist/cjs/modules/ms/components/material-select/material-select-api.js.map +1 -1
  163. package/dist/cjs/modules/ms/dataviews/ms-config/MsConfigTable.js +3 -1
  164. package/dist/cjs/modules/ms/dataviews/ms-config/MsConfigTable.js.map +1 -1
  165. package/dist/cjs/modules/ms/dataviews/ms-material/MsMaterialMan.js.map +1 -1
  166. package/dist/cjs/modules/ms/dataviews/ms-material/MsMaterialTable.js +92 -30
  167. package/dist/cjs/modules/ms/dataviews/ms-material/MsMaterialTable.js.map +1 -1
  168. package/dist/cjs/modules/ms/dataviews/ms-member/MsMemberTable.js +49 -18
  169. package/dist/cjs/modules/ms/dataviews/ms-member/MsMemberTable.js.map +1 -1
  170. package/dist/cjs/modules/ms/dataviews/ms-member/components/MemberNickNameColumn.js +0 -29
  171. package/dist/cjs/modules/ms/dataviews/ms-member/components/MemberNickNameColumn.js.map +1 -1
  172. package/dist/cjs/modules/ms/dataviews/ms-member/components/MemberRolesColumn.js +2 -4
  173. package/dist/cjs/modules/ms/dataviews/ms-member/components/MemberRolesColumn.js.map +1 -1
  174. package/dist/cjs/modules/ms/dataviews/ms-menu/MsMenuTree.js +17 -0
  175. package/dist/cjs/modules/ms/dataviews/ms-menu/MsMenuTree.js.map +1 -1
  176. package/dist/cjs/modules/ms/dataviews/ms-role/MsRolePermissionConfigTable.js +0 -1
  177. package/dist/cjs/modules/ms/dataviews/ms-role/MsRolePermissionConfigTable.js.map +1 -1
  178. package/dist/cjs/modules/ms/index.js +6 -3
  179. package/dist/cjs/modules/ms/index.js.map +1 -1
  180. package/dist/cjs/modules/ms/material-upload-context/MaterialUploadContext.js +0 -6
  181. package/dist/cjs/modules/ms/material-upload-context/MaterialUploadContext.js.map +1 -1
  182. package/dist/cjs/modules/ms/material-upload-context/material-upload-context.js +0 -5
  183. package/dist/cjs/modules/ms/material-upload-context/material-upload-context.js.map +1 -1
  184. package/dist/cjs/modules/ms/pages/local-log/index.vue2.js +1 -0
  185. package/dist/cjs/modules/ms/pages/local-log/index.vue2.js.map +1 -1
  186. package/dist/cjs/modules/ms/pages/ms-material/index.vue2.js +4 -4
  187. package/dist/cjs/modules/ms/pages/ms-menu/index.vue.js +4 -0
  188. package/dist/cjs/modules/ms/pages/ms-menu/index.vue.js.map +1 -0
  189. package/dist/cjs/modules/ms/pages/ms-menu/index.vue2.js +102 -0
  190. package/dist/cjs/modules/ms/pages/ms-menu/index.vue2.js.map +1 -0
  191. package/dist/cjs/modules/ms/pages/ms-role/components/aside.vue.js +4 -3
  192. package/dist/cjs/modules/ms/pages/ms-role/components/aside.vue.js.map +1 -1
  193. package/dist/cjs/modules/ms/pages/ms-role/components/role-permission-config/role-permission-config-options.js +4 -3
  194. package/dist/cjs/modules/ms/pages/ms-role/components/role-permission-config/role-permission-config-options.js.map +1 -1
  195. package/dist/cjs/modules/ms/pages/ms-role/index.vue2.js +4 -3
  196. package/dist/cjs/modules/ms/pages/ms-role/index.vue2.js.map +1 -1
  197. package/dist/cjs/page/index/dv/default/edit.vue2.js +1 -0
  198. package/dist/cjs/page/index/dv/default/edit.vue2.js.map +1 -1
  199. package/dist/cjs/page/index/dv/default/single/list/dialog.vue2.js +4 -3
  200. package/dist/cjs/page/index/dv/default/single/list/dialog.vue2.js.map +1 -1
  201. package/dist/cjs/page/index/dv/default/single/list/normal.vue2.js +4 -3
  202. package/dist/cjs/page/index/dv/default/single/list/normal.vue2.js.map +1 -1
  203. package/dist/cjs/page/index/dv/default/single/table-tree/dialog.vue2.js +1 -0
  204. package/dist/cjs/page/index/dv/default/single/table-tree/dialog.vue2.js.map +1 -1
  205. package/dist/cjs/page/index/dv/default/single/table-tree/normal.vue2.js +1 -0
  206. package/dist/cjs/page/index/dv/default/single/table-tree/normal.vue2.js.map +1 -1
  207. package/dist/cjs/page/index/dv/default/single/tree/dialog.vue2.js +4 -3
  208. package/dist/cjs/page/index/dv/default/single/tree/dialog.vue2.js.map +1 -1
  209. package/dist/cjs/page/index/dv/default/table.vue2.js +1 -0
  210. package/dist/cjs/page/index/dv/default/table.vue2.js.map +1 -1
  211. package/dist/cjs/page/login/index.vue2.js +1 -0
  212. package/dist/cjs/page/login/index.vue2.js.map +1 -1
  213. package/dist/cjs/page/signup/index.vue2.js +1 -0
  214. package/dist/cjs/page/signup/index.vue2.js.map +1 -1
  215. package/dist/esm/assets/iconfonts/iconfont.js +1 -1
  216. package/dist/esm/assets/iconfonts/iconfont.js.map +1 -1
  217. package/dist/esm/assets/iconfonts/oa-iconfont.js +36 -0
  218. package/dist/esm/assets/iconfonts/oa-iconfont.js.map +1 -0
  219. package/dist/esm/components/abstract/abstract-select/abstract-select.js +5 -1
  220. package/dist/esm/components/abstract/abstract-select/abstract-select.js.map +1 -1
  221. package/dist/esm/components/basic/copy-container/copy-container.js +2 -2
  222. package/dist/esm/components/basic/copy-container/copy-container.js.map +1 -1
  223. package/dist/esm/components/basic/doc-editor/editor.vue.js +44 -21
  224. package/dist/esm/components/basic/doc-editor/editor.vue.js.map +1 -1
  225. package/dist/esm/components/basic/doc-editor/lexical-vue/components/LexicalAutoLinkPlugin/index.vue.js +1 -36
  226. package/dist/esm/components/basic/doc-editor/lexical-vue/components/LexicalAutoLinkPlugin/index.vue.js.map +1 -1
  227. package/dist/esm/components/basic/doc-editor/lexical-vue/components/LexicalAutoLinkPlugin/index.vue2.js +36 -1
  228. package/dist/esm/components/basic/doc-editor/lexical-vue/components/LexicalAutoLinkPlugin/index.vue2.js.map +1 -1
  229. package/dist/esm/components/basic/doc-editor/lexical-vue/components/LexicalDecoratorBlockNode.js +0 -4
  230. package/dist/esm/components/basic/doc-editor/lexical-vue/components/LexicalDecoratorBlockNode.js.map +1 -1
  231. package/dist/esm/components/basic/doc-editor/plugins/AutoLinkPlugin.vue.js +1 -1
  232. package/dist/esm/components/basic/doc-editor/plugins/BaseBlockNode.js +44 -0
  233. package/dist/esm/components/basic/doc-editor/plugins/BaseBlockNode.js.map +1 -0
  234. package/dist/esm/components/basic/doc-editor/plugins/ImagePlugin/DocImageComponent.js +193 -16
  235. package/dist/esm/components/basic/doc-editor/plugins/ImagePlugin/DocImageComponent.js.map +1 -1
  236. package/dist/esm/components/basic/doc-editor/plugins/ImagePlugin/ImageEditPanel.js +304 -0
  237. package/dist/esm/components/basic/doc-editor/plugins/ImagePlugin/ImageEditPanel.js.map +1 -0
  238. package/dist/esm/components/basic/doc-editor/plugins/ImagePlugin/ImageTools.vue.js +113 -0
  239. package/dist/esm/components/basic/doc-editor/plugins/ImagePlugin/ImageTools.vue.js.map +1 -0
  240. package/dist/esm/components/basic/doc-editor/plugins/ImagePlugin/ImageTools.vue2.js +5 -0
  241. package/dist/esm/components/basic/doc-editor/plugins/ImagePlugin/ImageTools.vue2.js.map +1 -0
  242. package/dist/esm/components/basic/doc-editor/plugins/ImagePlugin/index.js +123 -7
  243. package/dist/esm/components/basic/doc-editor/plugins/ImagePlugin/index.js.map +1 -1
  244. package/dist/esm/components/basic/doc-editor/plugins/ImagePlugin/index.vue.js +50 -13
  245. package/dist/esm/components/basic/doc-editor/plugins/ImagePlugin/index.vue.js.map +1 -1
  246. package/dist/esm/components/basic/doc-editor/plugins/ImageTextPlugin/index.js +49 -0
  247. package/dist/esm/components/basic/doc-editor/plugins/ImageTextPlugin/index.js.map +1 -0
  248. package/dist/esm/components/basic/doc-editor/plugins/ImageTextPlugin/index.vue.js +81 -0
  249. package/dist/esm/components/basic/doc-editor/plugins/ImageTextPlugin/index.vue.js.map +1 -0
  250. package/dist/esm/components/basic/doc-editor/plugins/ImageTextPlugin/index.vue2.js +5 -0
  251. package/dist/esm/components/basic/doc-editor/plugins/ImageTextPlugin/index.vue2.js.map +1 -0
  252. package/dist/esm/components/basic/doc-editor/plugins/ToolbarPlugin/ContentStyleTool.vue.js +14 -5
  253. package/dist/esm/components/basic/doc-editor/plugins/ToolbarPlugin/ContentStyleTool.vue.js.map +1 -1
  254. package/dist/esm/components/basic/doc-editor/plugins/ToolbarPlugin/FontStyleTool.vue.js +50 -27
  255. package/dist/esm/components/basic/doc-editor/plugins/ToolbarPlugin/FontStyleTool.vue.js.map +1 -1
  256. package/dist/esm/components/basic/doc-editor/plugins/ToolbarPlugin/InlineToolsPlugin.vue.js +90 -0
  257. package/dist/esm/components/basic/doc-editor/plugins/ToolbarPlugin/InlineToolsPlugin.vue.js.map +1 -0
  258. package/dist/esm/components/basic/doc-editor/plugins/ToolbarPlugin/InlineToolsPlugin.vue2.js +5 -0
  259. package/dist/esm/components/basic/doc-editor/plugins/ToolbarPlugin/InlineToolsPlugin.vue2.js.map +1 -0
  260. package/dist/esm/components/basic/doc-editor/plugins/ToolbarPlugin/defines.js +11 -0
  261. package/dist/esm/components/basic/doc-editor/plugins/ToolbarPlugin/defines.js.map +1 -0
  262. package/dist/esm/components/basic/doc-editor/plugins/ToolbarPlugin/index.vue.js +53 -7
  263. package/dist/esm/components/basic/doc-editor/plugins/ToolbarPlugin/index.vue.js.map +1 -1
  264. package/dist/esm/components/basic/doc-editor/plugins/commands.js +8 -0
  265. package/dist/esm/components/basic/doc-editor/plugins/commands.js.map +1 -0
  266. package/dist/esm/components/basic/doc-editor/plugins/index.vue.js +7 -3
  267. package/dist/esm/components/basic/doc-editor/plugins/index.vue.js.map +1 -1
  268. package/dist/esm/components/basic/doc-editor/plugins/nodes.js +12 -14
  269. package/dist/esm/components/basic/doc-editor/plugins/nodes.js.map +1 -1
  270. package/dist/esm/components/basic/doc-editor/themes/doc-editor.css.js +1 -1
  271. package/dist/esm/components/basic/doc-editor/themes/doc-editor.css.js.map +1 -1
  272. package/dist/esm/components/basic/doc-editor/themes/doc-theme.css.js +453 -1
  273. package/dist/esm/components/basic/doc-editor/themes/doc-theme.css.js.map +1 -1
  274. package/dist/esm/components/basic/image-cropper/image-cropper-api.js +63 -0
  275. package/dist/esm/components/basic/image-cropper/image-cropper-api.js.map +1 -0
  276. package/dist/esm/components/basic/image-cropper/image-cropper-content-options.js +18 -0
  277. package/dist/esm/components/basic/image-cropper/image-cropper-content-options.js.map +1 -0
  278. package/dist/esm/components/basic/image-cropper/image-cropper-content.js +205 -0
  279. package/dist/esm/components/basic/image-cropper/image-cropper-content.js.map +1 -0
  280. package/dist/esm/components/basic/image-cropper/index.js +15 -0
  281. package/dist/esm/components/basic/image-cropper/index.js.map +1 -0
  282. package/dist/esm/components/basic/svg-icon/svg-icon.js +5 -3
  283. package/dist/esm/components/basic/svg-icon/svg-icon.js.map +1 -1
  284. package/dist/esm/components/basic/upload-file/context/WebFileUploadContext.js +3 -30
  285. package/dist/esm/components/basic/upload-file/context/WebFileUploadContext.js.map +1 -1
  286. package/dist/esm/components/basic/upload-file/ui/upload-image/upload-image.js +0 -4
  287. package/dist/esm/components/basic/upload-file/ui/upload-image/upload-image.js.map +1 -1
  288. package/dist/esm/components/basic/upload-file/upload-file.js +0 -4
  289. package/dist/esm/components/basic/upload-file/upload-file.js.map +1 -1
  290. package/dist/esm/components/business/resource-list/ResourceManager.js +41 -1
  291. package/dist/esm/components/business/resource-list/ResourceManager.js.map +1 -1
  292. package/dist/esm/components/business/resource-list/components/resource-item/index.vue.js +1 -4
  293. package/dist/esm/components/business/resource-list/components/resource-item/index.vue.js.map +1 -1
  294. package/dist/esm/components/business/resource-manager/resource-manager.vue.js +123 -23
  295. package/dist/esm/components/business/resource-manager/resource-manager.vue.js.map +1 -1
  296. package/dist/esm/components/business/resource-select/resource-select-api.js.map +1 -1
  297. package/dist/esm/components/data-model/data-form/views/form/form.js.map +1 -1
  298. package/dist/esm/components/data-model/data-table/components/column-sort/column-sort.js +1 -4
  299. package/dist/esm/components/data-model/data-table/components/column-sort/column-sort.js.map +1 -1
  300. package/dist/esm/components/data-model/data-table/components/header-components/batch-opt/batch-opt.js +2 -4
  301. package/dist/esm/components/data-model/data-table/components/header-components/batch-opt/batch-opt.js.map +1 -1
  302. package/dist/esm/components/data-model/data-table/components/header-components/table-filter/table-filter.js +1 -4
  303. package/dist/esm/components/data-model/data-table/components/header-components/table-filter/table-filter.js.map +1 -1
  304. package/dist/esm/components/data-model/data-table/views/table/table-options.js +7 -0
  305. package/dist/esm/components/data-model/data-table/views/table/table-options.js.map +1 -1
  306. package/dist/esm/components/data-model/data-table/views/table/table.js +6 -4
  307. package/dist/esm/components/data-model/data-table/views/table/table.js.map +1 -1
  308. package/dist/esm/components/data-model/data-table/views/table-tree/table-tree-options.js +4 -0
  309. package/dist/esm/components/data-model/data-table/views/table-tree/table-tree-options.js.map +1 -1
  310. package/dist/esm/components/data-model/data-table/views/table-tree/table-tree.js +4 -1
  311. package/dist/esm/components/data-model/data-table/views/table-tree/table-tree.js.map +1 -1
  312. package/dist/esm/components/data-model/data-table/views/tree/index.js +2 -1
  313. package/dist/esm/components/data-model/data-table/views/tree/tree-options.js +7 -1
  314. package/dist/esm/components/data-model/data-table/views/tree/tree-options.js.map +1 -1
  315. package/dist/esm/components/data-model/data-table/views/tree/tree.js +34 -7
  316. package/dist/esm/components/data-model/data-table/views/tree/tree.js.map +1 -1
  317. package/dist/esm/core/MSAppClient.js +3 -2
  318. package/dist/esm/core/MSAppClient.js.map +1 -1
  319. package/dist/esm/index.js +11 -3
  320. package/dist/esm/index.js.map +1 -1
  321. package/dist/esm/installer.js +3 -4
  322. package/dist/esm/installer.js.map +1 -1
  323. package/dist/esm/layouts/components/bar/index.js +6 -5
  324. package/dist/esm/layouts/components/bar/index.js.map +1 -1
  325. package/dist/esm/layouts/components/header/tools.js +22 -10
  326. package/dist/esm/layouts/components/header/tools.js.map +1 -1
  327. package/dist/esm/layouts/components/menu/menu-item.js +6 -5
  328. package/dist/esm/layouts/components/menu/menu-item.js.map +1 -1
  329. package/dist/esm/layouts/container/default.js +4 -3
  330. package/dist/esm/layouts/container/default.js.map +1 -1
  331. package/dist/esm/message-impl/DialogerImpl.js +2 -3
  332. package/dist/esm/message-impl/DialogerImpl.js.map +1 -1
  333. package/dist/esm/modules/cms/components/part-tree/index.vue.js +15 -5
  334. package/dist/esm/modules/cms/components/part-tree/index.vue.js.map +1 -1
  335. package/dist/esm/modules/cms/dataviews/cms-ad-contents/CmsAdContentsForm.js +4 -4
  336. package/dist/esm/modules/cms/dataviews/cms-articles/CmsArticlesForm.js +7 -4
  337. package/dist/esm/modules/cms/dataviews/cms-articles/CmsArticlesForm.js.map +1 -1
  338. package/dist/esm/modules/cms/dataviews/cms-articles/cms-article-atlas/CmsArticleAtlasForm.js +5 -5
  339. package/dist/esm/modules/cms/dataviews/cms-articles/cms-article-atlas/CmsArticleAtlasForm.js.map +1 -1
  340. package/dist/esm/modules/cms/dataviews/cms-parts/CmsPartForm.js +40 -3
  341. package/dist/esm/modules/cms/dataviews/cms-parts/CmsPartForm.js.map +1 -1
  342. package/dist/esm/modules/cms/dataviews/cms-parts/CmsPartTree.js +1 -1
  343. package/dist/esm/modules/cms/dataviews/cms-parts/CmsPartTree.js.map +1 -1
  344. package/dist/esm/modules/cms/pages/cms-ad/index.vue2.js +4 -4
  345. package/dist/esm/modules/cms/pages/cms-contents/article-edit-add-page.vue2.js +121 -76
  346. package/dist/esm/modules/cms/pages/cms-contents/article-edit-add-page.vue2.js.map +1 -1
  347. package/dist/esm/modules/cms/pages/cms-contents/components/article-atlas.vue.js +183 -86
  348. package/dist/esm/modules/cms/pages/cms-contents/components/article-atlas.vue.js.map +1 -1
  349. package/dist/esm/modules/cms/pages/cms-contents/components/article-list.vue.js +37 -8
  350. package/dist/esm/modules/cms/pages/cms-contents/components/article-list.vue.js.map +1 -1
  351. package/dist/esm/modules/cms/pages/cms-contents/components/part-info.vue.js +18 -19
  352. package/dist/esm/modules/cms/pages/cms-contents/components/part-info.vue.js.map +1 -1
  353. package/dist/esm/modules/cms/pages/cms-contents/index.vue2.js +280 -20
  354. package/dist/esm/modules/cms/pages/cms-contents/index.vue2.js.map +1 -1
  355. package/dist/esm/modules/cms/pages/cms-resource/index.vue2.js +2 -4
  356. package/dist/esm/modules/cms/pages/cms-resource/index.vue2.js.map +1 -1
  357. package/dist/esm/modules/ms/components/material-list/components/file-view/file-view.js.map +1 -1
  358. package/dist/esm/modules/ms/components/material-list/components/image-view/image-view.js +1 -1
  359. package/dist/esm/modules/ms/components/material-list/components/image-view/image-view.js.map +1 -1
  360. package/dist/esm/modules/ms/components/material-list/index.js +3 -4
  361. package/dist/esm/modules/ms/components/material-list/index.js.map +1 -1
  362. package/dist/esm/modules/ms/components/material-list/material-group-form-popover.js +78 -0
  363. package/dist/esm/modules/ms/components/material-list/material-group-form-popover.js.map +1 -0
  364. package/dist/esm/modules/ms/components/material-list/material-group.js +147 -0
  365. package/dist/esm/modules/ms/components/material-list/material-group.js.map +1 -0
  366. package/dist/esm/modules/ms/components/material-list/material-item.vue.js +85 -48
  367. package/dist/esm/modules/ms/components/material-list/material-item.vue.js.map +1 -1
  368. package/dist/esm/modules/ms/components/material-list/material-list-options.js +8 -13
  369. package/dist/esm/modules/ms/components/material-list/material-list-options.js.map +1 -1
  370. package/dist/esm/modules/ms/components/material-list/material-list.js +333 -0
  371. package/dist/esm/modules/ms/components/material-list/material-list.js.map +1 -0
  372. package/dist/esm/modules/ms/components/material-select/index.js +2 -6
  373. package/dist/esm/modules/ms/components/material-select/index.js.map +1 -1
  374. package/dist/esm/modules/ms/components/material-select/material-select-api.js +101 -29
  375. package/dist/esm/modules/ms/components/material-select/material-select-api.js.map +1 -1
  376. package/dist/esm/modules/ms/dataviews/ms-config/MsConfigTable.js +3 -1
  377. package/dist/esm/modules/ms/dataviews/ms-config/MsConfigTable.js.map +1 -1
  378. package/dist/esm/modules/ms/dataviews/ms-material/MsMaterialMan.js.map +1 -1
  379. package/dist/esm/modules/ms/dataviews/ms-material/MsMaterialTable.js +93 -31
  380. package/dist/esm/modules/ms/dataviews/ms-material/MsMaterialTable.js.map +1 -1
  381. package/dist/esm/modules/ms/dataviews/ms-member/MsMemberTable.js +49 -18
  382. package/dist/esm/modules/ms/dataviews/ms-member/MsMemberTable.js.map +1 -1
  383. package/dist/esm/modules/ms/dataviews/ms-member/components/MemberNickNameColumn.js +0 -29
  384. package/dist/esm/modules/ms/dataviews/ms-member/components/MemberNickNameColumn.js.map +1 -1
  385. package/dist/esm/modules/ms/dataviews/ms-member/components/MemberRolesColumn.js +2 -4
  386. package/dist/esm/modules/ms/dataviews/ms-member/components/MemberRolesColumn.js.map +1 -1
  387. package/dist/esm/modules/ms/dataviews/ms-menu/MsMenuTree.js +17 -0
  388. package/dist/esm/modules/ms/dataviews/ms-menu/MsMenuTree.js.map +1 -1
  389. package/dist/esm/modules/ms/dataviews/ms-role/MsRolePermissionConfigTable.js +0 -1
  390. package/dist/esm/modules/ms/dataviews/ms-role/MsRolePermissionConfigTable.js.map +1 -1
  391. package/dist/esm/modules/ms/index.js +6 -3
  392. package/dist/esm/modules/ms/index.js.map +1 -1
  393. package/dist/esm/modules/ms/material-upload-context/MaterialUploadContext.js +0 -6
  394. package/dist/esm/modules/ms/material-upload-context/MaterialUploadContext.js.map +1 -1
  395. package/dist/esm/modules/ms/material-upload-context/material-upload-context.js +0 -5
  396. package/dist/esm/modules/ms/material-upload-context/material-upload-context.js.map +1 -1
  397. package/dist/esm/modules/ms/pages/local-log/index.vue2.js +1 -0
  398. package/dist/esm/modules/ms/pages/local-log/index.vue2.js.map +1 -1
  399. package/dist/esm/modules/ms/pages/ms-material/index.vue2.js +4 -4
  400. package/dist/esm/modules/ms/pages/ms-menu/index.vue.js +5 -0
  401. package/dist/esm/modules/ms/pages/ms-menu/index.vue.js.map +1 -0
  402. package/dist/esm/modules/ms/pages/ms-menu/index.vue2.js +103 -0
  403. package/dist/esm/modules/ms/pages/ms-menu/index.vue2.js.map +1 -0
  404. package/dist/esm/modules/ms/pages/ms-role/components/aside.vue.js +4 -3
  405. package/dist/esm/modules/ms/pages/ms-role/components/aside.vue.js.map +1 -1
  406. package/dist/esm/modules/ms/pages/ms-role/components/role-permission-config/role-permission-config-options.js +4 -3
  407. package/dist/esm/modules/ms/pages/ms-role/components/role-permission-config/role-permission-config-options.js.map +1 -1
  408. package/dist/esm/modules/ms/pages/ms-role/index.vue2.js +4 -3
  409. package/dist/esm/modules/ms/pages/ms-role/index.vue2.js.map +1 -1
  410. package/dist/esm/page/index/dv/default/edit.vue2.js +1 -0
  411. package/dist/esm/page/index/dv/default/edit.vue2.js.map +1 -1
  412. package/dist/esm/page/index/dv/default/single/list/dialog.vue2.js +4 -3
  413. package/dist/esm/page/index/dv/default/single/list/dialog.vue2.js.map +1 -1
  414. package/dist/esm/page/index/dv/default/single/list/normal.vue2.js +4 -3
  415. package/dist/esm/page/index/dv/default/single/list/normal.vue2.js.map +1 -1
  416. package/dist/esm/page/index/dv/default/single/table-tree/dialog.vue2.js +1 -0
  417. package/dist/esm/page/index/dv/default/single/table-tree/dialog.vue2.js.map +1 -1
  418. package/dist/esm/page/index/dv/default/single/table-tree/normal.vue2.js +1 -0
  419. package/dist/esm/page/index/dv/default/single/table-tree/normal.vue2.js.map +1 -1
  420. package/dist/esm/page/index/dv/default/single/tree/dialog.vue2.js +4 -3
  421. package/dist/esm/page/index/dv/default/single/tree/dialog.vue2.js.map +1 -1
  422. package/dist/esm/page/index/dv/default/table.vue2.js +1 -0
  423. package/dist/esm/page/index/dv/default/table.vue2.js.map +1 -1
  424. package/dist/esm/page/login/index.vue2.js +1 -0
  425. package/dist/esm/page/login/index.vue2.js.map +1 -1
  426. package/dist/esm/page/signup/index.vue2.js +1 -0
  427. package/dist/esm/page/signup/index.vue2.js.map +1 -1
  428. package/dist/style/components/basic/doc-editor/index.css +1 -1
  429. package/dist/style/components/data-table-select-dialog.css +1 -1
  430. package/dist/style/components/image-cropper.css +1 -0
  431. package/dist/style/components/index.css +2 -2
  432. package/dist/style/components/material-item.css +1 -1
  433. package/dist/style/components/material-list.css +1 -1
  434. package/dist/style/index.css +3 -3
  435. package/dist/style/modules/cms/components/part-tree/index.css +1 -1
  436. package/dist/style/modules/cms/index.css +1 -1
  437. package/dist/style/modules/cms/pages/cms-contents/article-edit-add-page.css +1 -1
  438. package/dist/style/modules/cms/pages/cms-contents/components/article-atlas.css +1 -1
  439. package/dist/style/modules/cms/pages/cms-contents/index.css +1 -1
  440. package/dist/style/modules/cms/resource-manager.css +1 -1
  441. package/dist/style/modules/ms/index.css +1 -1
  442. package/dist/style/modules/ms/pages/index.css +1 -1
  443. package/dist/style/modules/ms/pages/ms-member.css +1 -0
  444. package/dist/style/page/dv/index.css +1 -1
  445. package/dist/style/page/dv/ms-menu.css +1 -0
  446. package/dist/style/page/index.css +1 -1
  447. package/dist/style/src/components/basic/doc-editor/index.scss +22 -2
  448. package/dist/style/src/components/data-table-select-dialog.scss +30 -30
  449. package/dist/style/src/components/image-cropper.scss +34 -0
  450. package/dist/style/src/components/index.scss +59 -61
  451. package/dist/style/src/components/material-item.scss +63 -23
  452. package/dist/style/src/components/material-list.scss +10 -5
  453. package/dist/style/src/index.scss +28 -27
  454. package/dist/style/src/modules/cms/components/part-tree/index.scss +18 -5
  455. package/dist/style/src/modules/cms/pages/cms-contents/article-edit-add-page.scss +1 -2
  456. package/dist/style/src/modules/cms/pages/cms-contents/components/article-atlas.scss +55 -1
  457. package/dist/style/src/modules/cms/pages/cms-contents/index.scss +37 -15
  458. package/dist/style/src/modules/cms/resource-manager.scss +88 -86
  459. package/dist/style/src/modules/ms/pages/index.scss +2 -1
  460. package/dist/style/src/modules/ms/pages/ms-member.scss +15 -0
  461. package/dist/style/src/page/dv/index.scss +3 -2
  462. package/dist/style/src/page/dv/ms-menu.scss +9 -0
  463. package/dist/style/theme/theme.css +1 -1
  464. package/dist/types/components/abstract/abstract-select/abstract-select.d.ts +1 -0
  465. package/dist/types/components/basic/doc-editor/editor.vue.d.ts +3 -2
  466. package/dist/types/components/basic/doc-editor/index.d.ts +7 -4
  467. package/dist/types/components/basic/doc-editor/plugins/BaseBlockNode.d.ts +20 -0
  468. package/dist/types/components/basic/doc-editor/plugins/ImagePlugin/DocImageComponent.d.ts +13 -12
  469. package/dist/types/components/basic/doc-editor/plugins/ImagePlugin/ImageEditPanel.d.ts +6 -0
  470. package/dist/types/components/basic/doc-editor/plugins/ImagePlugin/index.d.ts +71 -4
  471. package/dist/types/components/basic/doc-editor/plugins/ImageTextPlugin/index.d.ts +34 -0
  472. package/dist/types/components/basic/doc-editor/plugins/ToolbarPlugin/InlineToolsPlugin.vue.d.ts +2 -0
  473. package/dist/types/components/basic/doc-editor/plugins/ToolbarPlugin/defines.d.ts +14 -14
  474. package/dist/types/components/basic/doc-editor/plugins/commands.d.ts +17 -0
  475. package/dist/types/components/basic/image-cropper/image-cropper-api.d.ts +15 -0
  476. package/dist/types/components/basic/image-cropper/image-cropper-content-options.d.ts +14 -0
  477. package/dist/types/components/basic/image-cropper/image-cropper-content.d.ts +46 -0
  478. package/dist/types/components/basic/image-cropper/index.d.ts +41 -0
  479. package/dist/types/components/basic/index.d.ts +1 -0
  480. package/dist/types/components/basic/text/index.d.ts +17 -0
  481. package/dist/types/components/basic/text/text-options.d.ts +10 -0
  482. package/dist/types/components/basic/text/text.d.ts +16 -0
  483. package/dist/types/components/business/resource-list/ResourceManager.d.ts +5 -0
  484. package/dist/types/components/data-model/data-table/views/table/index.d.ts +15 -0
  485. package/dist/types/components/data-model/data-table/views/table/table-options.d.ts +7 -0
  486. package/dist/types/components/data-model/data-table/views/table/table.d.ts +15 -0
  487. package/dist/types/components/data-model/data-table/views/table-tree/index.d.ts +5 -1
  488. package/dist/types/components/data-model/data-table/views/table-tree/table-tree-options.d.ts +1 -0
  489. package/dist/types/components/data-model/data-table/views/table-tree/table-tree.d.ts +5 -1
  490. package/dist/types/components/data-model/data-table/views/tree/index.d.ts +457 -7
  491. package/dist/types/components/data-model/data-table/views/tree/tree-options.d.ts +7 -1
  492. package/dist/types/components/data-model/data-table/views/tree/tree.d.ts +459 -8
  493. package/dist/types/core/MSAppClient.d.ts +1 -1
  494. package/dist/types/index.d.ts +1 -0
  495. package/dist/types/modules/cms/dataviews/cms-articles/CmsArticlesForm.d.ts +2 -0
  496. package/dist/types/modules/cms/pages/cms-contents/components/part-info.vue.d.ts +10 -0
  497. package/dist/types/modules/ms/components/material-list/index.d.ts +8 -14
  498. package/dist/types/modules/ms/components/material-list/material-group-form-popover.d.ts +29 -0
  499. package/dist/types/modules/ms/components/material-list/material-group.d.ts +17 -0
  500. package/dist/types/modules/ms/components/material-list/material-item.vue.d.ts +13 -3
  501. package/dist/types/modules/ms/components/material-list/material-list-options.d.ts +4 -8
  502. package/dist/types/modules/ms/components/material-list/{material-list.vue.d.ts → material-list.d.ts} +9 -15
  503. package/dist/types/modules/ms/components/material-select/index.d.ts +2 -5
  504. package/dist/types/modules/ms/components/material-select/material-select-api.d.ts +10 -3
  505. package/dist/types/modules/ms/dataviews/ms-config/MsConfigForm.d.ts +2 -2
  506. package/dist/types/modules/ms/dataviews/ms-material/MsMaterialTable.d.ts +12 -3
  507. package/dist/types/modules/ms/dataviews/ms-member/MsMemberTable.d.ts +2 -2
  508. package/dist/types/modules/ms/dataviews/ms-menu/MsMenuTree.d.ts +3 -0
  509. package/dist/types/modules/ms/pages/ms-menu/index.vue.d.ts +2 -0
  510. package/package.json +5 -4
  511. package/dist/cjs/components/basic/doc-editor/lexical-vue/components/LexicalBlockWithAlignableContents.vue.js +0 -4
  512. package/dist/cjs/components/basic/doc-editor/lexical-vue/components/LexicalBlockWithAlignableContents.vue.js.map +0 -1
  513. package/dist/cjs/components/basic/doc-editor/lexical-vue/components/LexicalBlockWithAlignableContents.vue2.js +0 -108
  514. package/dist/cjs/components/basic/doc-editor/lexical-vue/components/LexicalBlockWithAlignableContents.vue2.js.map +0 -1
  515. package/dist/cjs/components/basic/doc-editor/plugins/ImagePlugin/ImageNode.js +0 -106
  516. package/dist/cjs/components/basic/doc-editor/plugins/ImagePlugin/ImageNode.js.map +0 -1
  517. package/dist/cjs/modules/ms/components/material-list/material-group-form-popover.vue.js +0 -123
  518. package/dist/cjs/modules/ms/components/material-list/material-group-form-popover.vue.js.map +0 -1
  519. package/dist/cjs/modules/ms/components/material-list/material-group-form-popover.vue2.js +0 -4
  520. package/dist/cjs/modules/ms/components/material-list/material-group-form-popover.vue2.js.map +0 -1
  521. package/dist/cjs/modules/ms/components/material-list/material-group.vue.js +0 -235
  522. package/dist/cjs/modules/ms/components/material-list/material-group.vue.js.map +0 -1
  523. package/dist/cjs/modules/ms/components/material-list/material-group.vue2.js +0 -4
  524. package/dist/cjs/modules/ms/components/material-list/material-group.vue2.js.map +0 -1
  525. package/dist/cjs/modules/ms/components/material-list/material-list.vue.js +0 -211
  526. package/dist/cjs/modules/ms/components/material-list/material-list.vue.js.map +0 -1
  527. package/dist/cjs/modules/ms/components/material-list/material-list.vue2.js +0 -4
  528. package/dist/cjs/modules/ms/components/material-list/material-list.vue2.js.map +0 -1
  529. package/dist/cjs/modules/ms/components/material-select/material-select-options.js +0 -61
  530. package/dist/cjs/modules/ms/components/material-select/material-select-options.js.map +0 -1
  531. package/dist/cjs/modules/ms/components/material-select/material-select.js +0 -120
  532. package/dist/cjs/modules/ms/components/material-select/material-select.js.map +0 -1
  533. package/dist/esm/components/basic/doc-editor/lexical-vue/components/LexicalBlockWithAlignableContents.vue.js +0 -5
  534. package/dist/esm/components/basic/doc-editor/lexical-vue/components/LexicalBlockWithAlignableContents.vue.js.map +0 -1
  535. package/dist/esm/components/basic/doc-editor/lexical-vue/components/LexicalBlockWithAlignableContents.vue2.js +0 -109
  536. package/dist/esm/components/basic/doc-editor/lexical-vue/components/LexicalBlockWithAlignableContents.vue2.js.map +0 -1
  537. package/dist/esm/components/basic/doc-editor/plugins/ImagePlugin/ImageNode.js +0 -106
  538. package/dist/esm/components/basic/doc-editor/plugins/ImagePlugin/ImageNode.js.map +0 -1
  539. package/dist/esm/modules/ms/components/material-list/material-group-form-popover.vue.js +0 -124
  540. package/dist/esm/modules/ms/components/material-list/material-group-form-popover.vue.js.map +0 -1
  541. package/dist/esm/modules/ms/components/material-list/material-group-form-popover.vue2.js +0 -5
  542. package/dist/esm/modules/ms/components/material-list/material-group-form-popover.vue2.js.map +0 -1
  543. package/dist/esm/modules/ms/components/material-list/material-group.vue.js +0 -236
  544. package/dist/esm/modules/ms/components/material-list/material-group.vue.js.map +0 -1
  545. package/dist/esm/modules/ms/components/material-list/material-group.vue2.js +0 -5
  546. package/dist/esm/modules/ms/components/material-list/material-group.vue2.js.map +0 -1
  547. package/dist/esm/modules/ms/components/material-list/material-list.vue.js +0 -212
  548. package/dist/esm/modules/ms/components/material-list/material-list.vue.js.map +0 -1
  549. package/dist/esm/modules/ms/components/material-list/material-list.vue2.js +0 -5
  550. package/dist/esm/modules/ms/components/material-list/material-list.vue2.js.map +0 -1
  551. package/dist/esm/modules/ms/components/material-select/material-select-options.js +0 -61
  552. package/dist/esm/modules/ms/components/material-select/material-select-options.js.map +0 -1
  553. package/dist/esm/modules/ms/components/material-select/material-select.js +0 -121
  554. package/dist/esm/modules/ms/components/material-select/material-select.js.map +0 -1
  555. package/dist/style/components/data-form-page.css +0 -1
  556. package/dist/style/components/data-table-page.css +0 -1
  557. package/dist/style/src/components/data-form-page.scss +0 -10
  558. package/dist/style/src/components/data-table-page.scss +0 -19
  559. package/dist/types/components/basic/doc-editor/plugins/DivPlugin/DivNode.d.ts +0 -40
  560. package/dist/types/components/basic/doc-editor/plugins/ImagePlugin/ImageNode.d.ts +0 -38
  561. package/dist/types/modules/ms/components/material-list/material-group-form-popover.vue.d.ts +0 -30
  562. package/dist/types/modules/ms/components/material-list/material-group.vue.d.ts +0 -13
  563. package/dist/types/modules/ms/components/material-select/material-select-options.d.ts +0 -30
  564. package/dist/types/modules/ms/components/material-select/material-select-type.d.ts +0 -15
  565. package/dist/types/modules/ms/components/material-select/material-select.d.ts +0 -51
  566. /package/dist/types/components/basic/doc-editor/plugins/{DivPlugin/index.vue.d.ts → ImagePlugin/ImageTools.vue.d.ts} +0 -0
  567. /package/dist/types/{modules/ms/pages/ms-role/indexold.vue.d.ts → components/basic/doc-editor/plugins/ImageTextPlugin/index.vue.d.ts} +0 -0
@@ -1,11 +1,14 @@
1
1
  "use strict";
2
2
  const vue = require("vue");
3
+ const lexical = require("lexical");
4
+ const utils$1 = require("@lexical/utils");
3
5
  require("@lexical/text");
4
- require("@lexical/utils");
6
+ const useMounted = require("../../lexical-vue/composables/useMounted.js");
5
7
  require("@lexical/overflow");
6
- require("lexical");
7
8
  require("tiny-invariant");
8
9
  require("@lexical/history");
10
+ const useLexicalComposer = require("../../lexical-vue/composables/useLexicalComposer.js");
11
+ const useLexicalNodeSelection = require("../../lexical-vue/composables/useLexicalNodeSelection.js");
9
12
  require("@lexical/list");
10
13
  require("@lexical/dragon");
11
14
  require("@lexical/plain-text");
@@ -18,26 +21,200 @@ require("@lexical/link");
18
21
  require("@lexical/mark");
19
22
  require("@lexical/table");
20
23
  require("@lexical/hashtag");
21
- const LexicalBlockWithAlignableContents_vue_vue_type_script_setup_true_lang = require("../../lexical-vue/components/LexicalBlockWithAlignableContents.vue2.js");
22
24
  require("@lexical/markdown");
23
25
  require("../../lexical-vue/composables/useCollaborationContext.js");
24
26
  require("../../lexical-vue/components/LexicalMenu/shared.js");
25
27
  require("../../lexical-vue/components/LexicalAutoEmbedPlugin/shared.js");
26
28
  require("../../lexical-vue/components/LexicalTypeaheadMenuPlugin/shared.js");
27
- const DocImageComponent = vue.defineComponent({
29
+ const dm = require("@maketribe/dm");
30
+ const commands = require("../commands.js");
31
+ const request = require("@maketribe/request");
32
+ const index = require("./index.js");
33
+ const utils = require("@maketribe/utils");
34
+ const ImageEditPanel = require("./ImageEditPanel.js");
35
+ const ImageTools_vue_vue_type_script_setup_true_lang = require("./ImageTools.vue.js");
36
+ const ImageDefaultSrc = "data:image/png;base64,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";
37
+ const DocImageComponent = /* @__PURE__ */ vue.defineComponent({
28
38
  name: "DocImageComponent",
29
- props: ["format", "nodeKey", "src", "alt", "style"],
39
+ props: ["format", "baseClass", "focusClass", "nodeKey", "attrs"],
30
40
  setup(props) {
31
- return () => vue.h(LexicalBlockWithAlignableContents_vue_vue_type_script_setup_true_lang, {
32
- format: props.format,
33
- nodeKey: props.nodeKey
34
- }, () => vue.h("img", {
35
- width: "560",
36
- height: "315",
37
- src: props.src,
38
- alt: props.alt,
39
- style: props.style
40
- }));
41
+ const editor = useLexicalComposer.useLexicalComposer();
42
+ const {
43
+ isSelected,
44
+ setSelected,
45
+ clearSelection
46
+ } = useLexicalNodeSelection.useLexicalNodeSelection(props.nodeKey);
47
+ const selfElRef = vue.ref(null);
48
+ const imageActiveBoxStyle = vue.reactive({
49
+ width: "",
50
+ height: "",
51
+ top: "",
52
+ left: ""
53
+ });
54
+ const updateImageActiveBox = () => {
55
+ let stageRect = selfElRef.value.parentElement.getBoundingClientRect();
56
+ let rect = selfElRef.value.getBoundingClientRect();
57
+ imageActiveBoxStyle.width = rect.width + "px";
58
+ imageActiveBoxStyle.height = rect.height + "px";
59
+ imageActiveBoxStyle.left = rect.x - stageRect.x + "px";
60
+ imageActiveBoxStyle.top = "0px";
61
+ };
62
+ const styles = vue.computed(() => {
63
+ return Object.keys(attrs).filter((k) => attrs[k] && k != "float" && k != "margin" && k != "src" && k != "alt").map((k) => {
64
+ return k.replace(/([A-Z])/g, "-$1").toLowerCase() + ":" + attrs[k];
65
+ });
66
+ });
67
+ const viewSrc = vue.ref(ImageDefaultSrc);
68
+ const loading = vue.ref(true);
69
+ const loadingText = vue.ref("");
70
+ const attrs = vue.reactive(props.attrs);
71
+ const webFileUpload = new request.WebFileUpload();
72
+ const imageLoad = (src) => {
73
+ loadingText.value = "加载中...";
74
+ loading.value = true;
75
+ return new Promise((resolve, reject) => {
76
+ const image = new Image();
77
+ image.onload = () => resolve(image.src);
78
+ image.onerror = reject;
79
+ image.src = src;
80
+ if (image.complete) {
81
+ resolve(image.src);
82
+ }
83
+ });
84
+ };
85
+ vue.onMounted(() => {
86
+ loadingText.value = "";
87
+ if (props.attrs.src && props.attrs.src.indexOf("data:image/") == 0) {
88
+ loadingText.value = "上传中...";
89
+ const blob = utils.base64ToBlob(props.attrs.src);
90
+ console.log(blob.type);
91
+ webFileUpload.upload(new File([blob], `${utils.md5(Math.random().toString())}.png`, {
92
+ type: blob.type
93
+ })).then((result) => {
94
+ if (result.data.code !== 200) {
95
+ dm.Messager.error({
96
+ message: result.data.msg
97
+ });
98
+ return;
99
+ }
100
+ imageLoad(props.attrs.src).then((src) => {
101
+ viewSrc.value = src;
102
+ }).finally(() => {
103
+ loading.value = false;
104
+ });
105
+ });
106
+ } else {
107
+ imageLoad(props.attrs.src).then((src) => {
108
+ viewSrc.value = src;
109
+ }).finally(() => {
110
+ loading.value = false;
111
+ });
112
+ }
113
+ });
114
+ useMounted.useMounted(() => {
115
+ return utils$1.mergeRegister(
116
+ // editor.registerCommand<ElementFormatType>(FORMAT_ELEMENT_COMMAND,(formatType) => {
117
+ // if (isSelected.value) {
118
+ // const selection = $getSelection()
119
+ // if ($isNodeSelection(selection)) {
120
+ // const node = $getNodeByKey(props.nodeKey)
121
+ // if (node && $isImageNode(node)){
122
+ // node.setFormat(formatType)
123
+ // }
124
+ // }
125
+ // else if ($isRangeSelection(selection)) {
126
+ // const nodes = selection.getNodes()
127
+ // for (const node of nodes) {
128
+ // if ($isImageNode(node)) {
129
+ // node.setFormat(formatType)
130
+ // }
131
+ // else {
132
+ // const element = $getNearestBlockElementAncestorOrThrow(node)
133
+ // element.setFormat(formatType)
134
+ // }
135
+ // }
136
+ // }
137
+ // setTimeout(()=>updateImageActiveBox(),10)
138
+ // return true
139
+ // }
140
+ // return false
141
+ // },
142
+ // COMMAND_PRIORITY_LOW,
143
+ // ),
144
+ // 选中图
145
+ editor.registerCommand(lexical.CLICK_COMMAND, (event) => {
146
+ if (event.target === selfElRef.value) {
147
+ event.preventDefault();
148
+ if (!event.shiftKey) {
149
+ clearSelection();
150
+ }
151
+ setSelected(true);
152
+ updateImageActiveBox();
153
+ editor.dispatchCommand(commands.SELECTED_COMPONENT_COMMAND, {
154
+ el: selfElRef.value,
155
+ component: ImageTools_vue_vue_type_script_setup_true_lang
156
+ });
157
+ return true;
158
+ }
159
+ editor.dispatchCommand(commands.SELECTED_COMPONENT_COMMAND, null);
160
+ return false;
161
+ }, lexical.COMMAND_PRIORITY_LOW),
162
+ // 删除
163
+ editor.registerCommand(index.REMOVE_IMAGE_COMMAND, () => {
164
+ const selection = lexical.$getSelection();
165
+ if (lexical.$isNodeSelection(selection)) {
166
+ selection.getNodes().forEach((node) => node.remove());
167
+ editor.dispatchCommand(commands.SELECTED_COMPONENT_COMMAND, null);
168
+ }
169
+ return false;
170
+ }, lexical.COMMAND_PRIORITY_LOW),
171
+ // 修改图片属性
172
+ editor.registerCommand(index.IMAGE_ATTRS_CHANGE, (payload) => {
173
+ var _a;
174
+ const selection = lexical.$getSelection();
175
+ if (lexical.$isNodeSelection(selection)) {
176
+ const node = selection.getNodes()[0];
177
+ if (node.__key == props.nodeKey) {
178
+ if (payload.name == "align") {
179
+ if (attrs.float != null && attrs.float != "") {
180
+ attrs.float = payload.value;
181
+ } else {
182
+ (_a = node == null ? void 0 : node.getParent()) == null ? void 0 : _a.setFormat(payload.value);
183
+ }
184
+ } else if (payload.name == "edit") {
185
+ ImageEditPanel.ShowImageEditPanel(attrs).then((data) => {
186
+ Object.assign(attrs, data || {});
187
+ });
188
+ } else {
189
+ attrs[payload.name] = payload.value;
190
+ }
191
+ }
192
+ }
193
+ setTimeout(() => updateImageActiveBox(), 10);
194
+ return false;
195
+ }, lexical.COMMAND_PRIORITY_LOW),
196
+ editor.registerCommand(commands.DEVICE_VIEW_MODE, (payload) => {
197
+ setTimeout(() => updateImageActiveBox(), 10);
198
+ return false;
199
+ }, lexical.COMMAND_PRIORITY_LOW)
200
+ );
201
+ });
202
+ return () => {
203
+ return vue.createVNode("div", {
204
+ "class": `${props.baseClass} ${isSelected.value ? props.focusClass : ""}`,
205
+ "style": `text-align: ${props.format};float:${attrs.float};margin:${attrs.margin}`
206
+ }, [vue.createVNode("img", {
207
+ "ref": (el) => selfElRef.value = el,
208
+ "src": viewSrc.value,
209
+ "style": styles.value.join(";"),
210
+ "class": attrs.className
211
+ }, null), isSelected.value ? vue.createVNode("div", {
212
+ "style": imageActiveBoxStyle,
213
+ "class": "mk-doc-active-mark"
214
+ }, null) : null, loading.value ? vue.createVNode("div", {
215
+ "class": "mk-doc-loading-mark"
216
+ }, [loadingText.value]) : null]);
217
+ };
41
218
  }
42
219
  });
43
220
  module.exports = DocImageComponent;
@@ -1 +1 @@
1
- {"version":3,"file":"DocImageComponent.js","sources":["../../../../../../../src/components/basic/doc-editor/plugins/ImagePlugin/DocImageComponent.ts"],"sourcesContent":["import { defineComponent, h } from 'vue'\r\n\r\nimport { LexicalBlockWithAlignableContents } from '../../lexical-vue'\r\n\r\n\r\nexport default defineComponent({\r\n name: 'DocImageComponent',\r\n props: ['format', 'nodeKey', 'src','alt','style'],\r\n setup(props) {\r\n return () => h(LexicalBlockWithAlignableContents, {\r\n format: props.format,\r\n nodeKey: props.nodeKey,\r\n }, () => h('img', {\r\n width: '560',\r\n height: '315',\r\n src: props.src,\r\n alt:props.alt,\r\n style:props.style\r\n }))\r\n },\r\n})\r\n"],"names":["defineComponent","h","LexicalBlockWithAlignableContents"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAKA,MAAA,oBAAeA,oBAAgB;AAAA,EAC7B,MAAM;AAAA,EACN,OAAO,CAAC,UAAU,WAAW,OAAM,OAAM,OAAO;AAAA,EAChD,MAAM,OAAO;AACJ,WAAA,MAAMC,MAAEC,uEAAmC;AAAA,MAChD,QAAQ,MAAM;AAAA,MACd,SAAS,MAAM;AAAA,IAAA,GACd,MAAMD,IAAA,EAAE,OAAO;AAAA,MAChB,OAAO;AAAA,MACP,QAAQ;AAAA,MACR,KAAK,MAAM;AAAA,MACX,KAAI,MAAM;AAAA,MACV,OAAM,MAAM;AAAA,IACb,CAAA,CAAC;AAAA,EACJ;AACF,CAAC;;"}
1
+ {"version":3,"file":"DocImageComponent.js","sources":["../../../../../../../src/components/basic/doc-editor/plugins/ImagePlugin/DocImageComponent.tsx"],"sourcesContent":["import type { ElementFormatType } from 'lexical'\r\nimport { $getSelection,$isNodeSelection, CLICK_COMMAND,COMMAND_PRIORITY_LOW } from 'lexical'\r\nimport { mergeRegister } from '@lexical/utils'\r\nimport { useLexicalComposer,useLexicalNodeSelection,useMounted } from '../../lexical-vue'\r\nimport { defineComponent, ref,reactive,computed,onMounted } from 'vue'\r\nimport { Messager } from \"@maketribe/dm\";\r\nimport { DEVICE_VIEW_MODE,SELECTED_COMPONENT_COMMAND,ComponentSelectEvent } from \"../commands\"\r\nimport { WebFileUpload } from \"@maketribe/request\";\r\nimport { REMOVE_IMAGE_COMMAND,ImageAttrData,IMAGE_ATTRS_CHANGE,ImageNode } from './index'\r\nimport { base64ToBlob,md5 } from \"@maketribe/utils\";\r\nimport { ShowImageEditPanel } from \"./ImageEditPanel\"\r\nimport ImageTools from './ImageTools.vue'\r\n\r\n// 默认图片\r\nconst ImageDefaultSrc = \"data:image/png;base64,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\";\r\n\r\n/**\r\n * 图片渲染组件\r\n */\r\nexport default defineComponent({\r\n name: 'DocImageComponent',\r\n props: ['format','baseClass','focusClass', 'nodeKey', 'attrs'],\r\n setup(props) {\r\n\r\n const editor = useLexicalComposer()\r\n const { isSelected, setSelected, clearSelection } = useLexicalNodeSelection(props.nodeKey)\r\n const selfElRef = ref<any>(null);\r\n const imageActiveBoxStyle = reactive({ width:\"\", height:\"\", top:\"\", left:\"\" });\r\n const updateImageActiveBox = ()=>{\r\n let stageRect = selfElRef.value.parentElement.getBoundingClientRect();\r\n let rect = selfElRef.value.getBoundingClientRect();\r\n imageActiveBoxStyle.width = rect.width+ \"px\";\r\n imageActiveBoxStyle.height = rect.height+ \"px\";\r\n imageActiveBoxStyle.left = rect.x - stageRect.x + \"px\";\r\n imageActiveBoxStyle.top = \"0px\";\r\n }\r\n\r\n const styles = computed<string[]>(()=>{\r\n return Object.keys(attrs).filter(k=>attrs[k] && k != \"float\" && k!=\"margin\" && k!=\"src\" && k!=\"alt\").map(k=>{\r\n return k.replace(/([A-Z])/g,\"-$1\").toLowerCase()+\":\"+attrs[k]\r\n });\r\n })\r\n\r\n // 显示的图\r\n const viewSrc = ref<string>(ImageDefaultSrc)\r\n const loading = ref(true);\r\n const loadingText = ref(\"\");\r\n const attrs = reactive(props.attrs)\r\n const webFileUpload = new WebFileUpload();\r\n // 图片加载\r\n const imageLoad = (src:string)=>{\r\n // 加载文案\r\n loadingText.value = \"加载中...\";\r\n loading.value = true;\r\n return new Promise((resolve,reject)=>{\r\n // 加载一下\r\n const image = new Image();\r\n image.onload = ()=>resolve(image.src)\r\n image.onerror = reject\r\n image.src = src;\r\n if(image.complete){\r\n resolve(image.src);\r\n }\r\n })\r\n }\r\n\r\n onMounted(()=>{\r\n // 初始化\r\n loadingText.value = \"\";\r\n // 多半 base64\r\n if(props.attrs.src && props.attrs.src.indexOf(\"data:image/\") == 0){\r\n\r\n // 文件上传\r\n loadingText.value = \"上传中...\";\r\n\r\n // 开始上传\r\n const blob = base64ToBlob(props.attrs.src); \r\n\r\n console.log(blob.type);\r\n\r\n webFileUpload.upload(new File([blob], `${md5(Math.random().toString())}.png`, { type: blob.type })).then(result=>{\r\n\r\n if (result.data.code !== 200) {\r\n Messager.error({ message: result.data.msg });\r\n return;\r\n }\r\n\r\n // 加载一下\r\n imageLoad(props.attrs.src).then(src=>{\r\n viewSrc.value = src as string;\r\n }).finally(()=>{\r\n loading.value = false;\r\n });\r\n\r\n });\r\n\r\n \r\n }\r\n else{\r\n // 加载一下\r\n imageLoad(props.attrs.src).then(src=>{\r\n viewSrc.value = src as string;\r\n }).finally(()=>{\r\n loading.value = false;\r\n });\r\n }\r\n })\r\n\r\n useMounted(() => {\r\n return mergeRegister(\r\n // editor.registerCommand<ElementFormatType>(FORMAT_ELEMENT_COMMAND,(formatType) => {\r\n // if (isSelected.value) {\r\n\r\n // const selection = $getSelection()\r\n\r\n // if ($isNodeSelection(selection)) {\r\n\r\n // const node = $getNodeByKey(props.nodeKey)\r\n\r\n // if (node && $isImageNode(node)){ \r\n // node.setFormat(formatType) \r\n // }\r\n // }\r\n // else if ($isRangeSelection(selection)) {\r\n\r\n // const nodes = selection.getNodes()\r\n \r\n // for (const node of nodes) {\r\n // if ($isImageNode(node)) {\r\n // node.setFormat(formatType)\r\n // }\r\n // else {\r\n // const element = $getNearestBlockElementAncestorOrThrow(node)\r\n // element.setFormat(formatType)\r\n // }\r\n // }\r\n // }\r\n // setTimeout(()=>updateImageActiveBox(),10)\r\n // return true\r\n // }\r\n // return false\r\n // },\r\n // COMMAND_PRIORITY_LOW,\r\n // ),\r\n // 选中图\r\n editor.registerCommand<MouseEvent>(CLICK_COMMAND,(event) => {\r\n\r\n if (event.target === selfElRef.value) {\r\n\r\n event.preventDefault();\r\n\r\n if (!event.shiftKey){ clearSelection() }\r\n \r\n setSelected(true)\r\n updateImageActiveBox();\r\n \r\n editor.dispatchCommand(SELECTED_COMPONENT_COMMAND,{ \r\n el:selfElRef.value,\r\n component:ImageTools\r\n } as ComponentSelectEvent);\r\n return true\r\n }\r\n\r\n // 没选中\r\n editor.dispatchCommand(SELECTED_COMPONENT_COMMAND,null);\r\n return false\r\n },\r\n COMMAND_PRIORITY_LOW,\r\n ),\r\n // 删除\r\n editor.registerCommand(REMOVE_IMAGE_COMMAND, () => {\r\n \r\n const selection = $getSelection();\r\n \r\n if($isNodeSelection(selection)){\r\n \r\n selection.getNodes().forEach(node=>node.remove());\r\n // 没选中\r\n editor.dispatchCommand(SELECTED_COMPONENT_COMMAND,null);\r\n }\r\n return false;\r\n },COMMAND_PRIORITY_LOW),\r\n // 修改图片属性\r\n editor.registerCommand(IMAGE_ATTRS_CHANGE,(payload:ImageAttrData) => {\r\n\r\n const selection = $getSelection();\r\n\r\n if($isNodeSelection(selection)){\r\n \r\n const node = selection.getNodes()[0] as ImageNode;\r\n \r\n // 是图片\r\n if(node.__key == props.nodeKey){\r\n\r\n // 对齐方式的改变\r\n if(payload.name == \"align\"){\r\n\r\n // 有浮动走浮动的逻辑\r\n if(attrs.float != null && attrs.float != \"\"){ attrs.float = payload.value }\r\n else{\r\n // 否则走文本对齐\r\n node?.getParent()?.setFormat(payload.value as ElementFormatType)\r\n }\r\n }\r\n else if(payload.name==\"edit\"){\r\n // 更新属性\r\n ShowImageEditPanel(attrs).then(data=>{\r\n Object.assign(attrs,data||{});\r\n });\r\n }\r\n else{\r\n // 单个其他属性的改变\r\n attrs[payload.name] = payload.value\r\n }\r\n }\r\n }\r\n setTimeout(()=>updateImageActiveBox(),10)\r\n return false\r\n },COMMAND_PRIORITY_LOW),\r\n editor.registerCommand(DEVICE_VIEW_MODE,(payload: string) => {\r\n setTimeout(()=>updateImageActiveBox(),10)\r\n return false\r\n },COMMAND_PRIORITY_LOW)\r\n )\r\n })\r\n\r\n return () =>{\r\n return <div class={`${props.baseClass} ${isSelected.value ? props.focusClass : ''}`}\r\n style={`text-align: ${props.format};float:${ attrs.float };margin:${attrs.margin}`}>\r\n <img ref={el=>selfElRef.value=el} src={viewSrc.value} style={styles.value.join(\";\")} class={attrs.className} />\r\n {isSelected.value ? <div style={imageActiveBoxStyle} class=\"mk-doc-active-mark\"></div> : null}\r\n {loading.value ? <div class=\"mk-doc-loading-mark\">\r\n {loadingText.value}\r\n </div> : null}\r\n </div>\r\n }\r\n },\r\n})\r\n"],"names":["ImageDefaultSrc","defineComponent","name","props","setup","editor","useLexicalComposer","isSelected","setSelected","clearSelection","useLexicalNodeSelection","nodeKey","selfElRef","ref","imageActiveBoxStyle","reactive","width","height","top","left","updateImageActiveBox","stageRect","value","parentElement","getBoundingClientRect","rect","x","styles","computed","Object","keys","attrs","filter","k","map","replace","toLowerCase","viewSrc","loading","loadingText","webFileUpload","WebFileUpload","imageLoad","src","Promise","resolve","reject","image","Image","onload","onerror","complete","onMounted","indexOf","blob","base64ToBlob","console","log","type","upload","File","md5","Math","random","toString","then","result","data","code","Messager","error","message","msg","finally","useMounted","mergeRegister","registerCommand","CLICK_COMMAND","event","target","preventDefault","shiftKey","dispatchCommand","SELECTED_COMPONENT_COMMAND","el","component","ImageTools","COMMAND_PRIORITY_LOW","REMOVE_IMAGE_COMMAND","selection","$getSelection","$isNodeSelection","getNodes","forEach","node","remove","IMAGE_ATTRS_CHANGE","payload","__key","float","getParent","setFormat","ShowImageEditPanel","assign","setTimeout","DEVICE_VIEW_MODE","_createVNode","baseClass","focusClass","format","margin","join","className"],"mappings":"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"}
@@ -0,0 +1,304 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const vue = require("vue");
4
+ const dm = require("@maketribe/dm");
5
+ const elementPlus = require("element-plus");
6
+ const icons = require("@element-plus/icons-vue");
7
+ const MsMaterialTable = require("../../../../../modules/ms/dataviews/ms-material/MsMaterialTable.js");
8
+ require("@maketribe/request");
9
+ const index = require("../../../../../modules/ms/components/material-list/index.js");
10
+ const utils = require("@maketribe/utils");
11
+ require("../../../image-cropper/index.js");
12
+ const imageCropperApi = require("../../../image-cropper/image-cropper-api.js");
13
+ function _isSlot(s) {
14
+ return typeof s === "function" || Object.prototype.toString.call(s) === "[object Object]" && !vue.isVNode(s);
15
+ }
16
+ const selectState = vue.ref("select");
17
+ const ImageEditPanelComponent = /* @__PURE__ */ vue.defineComponent({
18
+ name: "ImageEditPanelComponent",
19
+ props: ["attrs"],
20
+ setup(props, {
21
+ expose
22
+ }) {
23
+ const attrs = vue.reactive(props.attrs);
24
+ const materialTable = vue.reactive(new MsMaterialTable.MsMaterialTable());
25
+ const margin = vue.computed({
26
+ set(v) {
27
+ attrs.margin = `${v.t} ${v.r} ${v.b} ${v.l}`;
28
+ },
29
+ get() {
30
+ var vals = attrs.margin.split(/[\s]+/g);
31
+ if (vals.length == 1) {
32
+ return {
33
+ t: vals[0],
34
+ r: vals[0],
35
+ b: vals[0],
36
+ l: vals[0]
37
+ };
38
+ } else if (vals.length == 2) {
39
+ return {
40
+ t: vals[0],
41
+ r: vals[1],
42
+ b: vals[0],
43
+ l: vals[1]
44
+ };
45
+ } else if (vals.length == 3) {
46
+ return {
47
+ t: vals[0],
48
+ r: vals[1],
49
+ b: vals[2],
50
+ l: vals[1]
51
+ };
52
+ } else if (vals.length <= 0) {
53
+ vals = ["", "", "", ""];
54
+ }
55
+ return {
56
+ t: vals[0],
57
+ r: vals[1],
58
+ b: vals[2],
59
+ l: vals[3]
60
+ };
61
+ }
62
+ });
63
+ materialTable.selectionChangeEvent.on(() => {
64
+ var _a;
65
+ let id = materialTable.getSelection()[0];
66
+ if (id) {
67
+ attrs.src = (_a = materialTable.getList().find((item) => item.id == id)) == null ? void 0 : _a.path;
68
+ } else {
69
+ attrs.src = "";
70
+ }
71
+ });
72
+ const selectImage = async () => {
73
+ const file = await utils.fileSelect({
74
+ accept: "image/*"
75
+ });
76
+ if (file) {
77
+ const fileRender = new FileReader();
78
+ fileRender.onload = async (data) => {
79
+ attrs.src = data.target.result;
80
+ };
81
+ fileRender.readAsDataURL(file);
82
+ }
83
+ };
84
+ expose({
85
+ getResult: () => {
86
+ return {
87
+ ...attrs
88
+ };
89
+ }
90
+ });
91
+ return () => {
92
+ const ImageView = vue.createVNode(elementPlus.ElImage, {
93
+ "style": "background: #dedede;width: 100%; height: 480px;margin-top:10px",
94
+ "src": attrs.src,
95
+ "fit": "contain"
96
+ }, {
97
+ error: () => {
98
+ return vue.createVNode("div", {
99
+ "style": "font-size: 50px; display: flex; align-content: center; justify-content: center; align-items: center; height: 100%;"
100
+ }, [vue.createVNode(elementPlus.ElIcon, null, {
101
+ default: () => [vue.createVNode(icons.Picture, null, null)]
102
+ })]);
103
+ }
104
+ });
105
+ let panel = vue.createVNode(elementPlus.ElTabs, {
106
+ "style": "min-height: 520px"
107
+ }, {
108
+ default: () => [vue.createVNode(elementPlus.ElTabPane, {
109
+ "label": "本地选择"
110
+ }, {
111
+ default: () => [vue.createVNode(elementPlus.ElButton, {
112
+ "icon": icons.UploadFilled,
113
+ "type": "primary",
114
+ "style": "width: 100%",
115
+ "onClick": selectImage
116
+ }, {
117
+ default: () => [vue.createTextVNode("选择本地文件")]
118
+ }), ImageView]
119
+ }), vue.createVNode(elementPlus.ElTabPane, {
120
+ "label": "素材库选择"
121
+ }, {
122
+ default: () => [vue.createVNode(index.MKMaterialList, {
123
+ "class": "mk-material-select__list",
124
+ "selectable": true,
125
+ "materialTable": materialTable
126
+ }, null)]
127
+ }), vue.createVNode(elementPlus.ElTabPane, {
128
+ "label": "网络图片"
129
+ }, {
130
+ default: () => [vue.createVNode(elementPlus.ElInput, {
131
+ "modelValue": attrs.src,
132
+ "onUpdate:modelValue": ($event) => attrs.src = $event,
133
+ "prefix-icon": icons.Share,
134
+ "style": "width: 100%",
135
+ "placeholder": "请输入链接地址"
136
+ }, null), ImageView]
137
+ })]
138
+ });
139
+ if (selectState.value == "attrs") {
140
+ panel = vue.createVNode(elementPlus.ElRow, {
141
+ "gutter": 20
142
+ }, {
143
+ default: () => [vue.createVNode(elementPlus.ElCol, {
144
+ "span": 14
145
+ }, _isSlot(ImageView) ? ImageView : {
146
+ default: () => [ImageView]
147
+ }), vue.createVNode(elementPlus.ElCol, {
148
+ "span": 10
149
+ }, {
150
+ default: () => [vue.createVNode(elementPlus.ElForm, {
151
+ "label-position": "top",
152
+ "model": attrs
153
+ }, {
154
+ default: () => [vue.createVNode(elementPlus.ElFormItem, {
155
+ "label": "图片描述"
156
+ }, {
157
+ default: () => [vue.createVNode(elementPlus.ElInput, vue.mergeProps({
158
+ "modelValue": attrs.alt,
159
+ "onUpdate:modelValue": ($event) => attrs.alt = $event,
160
+ "type": "textarea"
161
+ }, {
162
+ rows: 3
163
+ }, {
164
+ "style": "width: 100%",
165
+ "placeholder": "请输入"
166
+ }), null)]
167
+ }), vue.createVNode(elementPlus.ElFormItem, {
168
+ "label": "图片显示宽度"
169
+ }, {
170
+ default: () => [vue.createVNode(elementPlus.ElInput, {
171
+ "modelValue": attrs.width,
172
+ "onUpdate:modelValue": ($event) => attrs.width = $event,
173
+ "style": "width: 100%",
174
+ "placeholder": "请输入宽度(可支持%)"
175
+ }, null)]
176
+ }), vue.createVNode(elementPlus.ElFormItem, {
177
+ "label": "图片显示高度"
178
+ }, {
179
+ default: () => [vue.createVNode(elementPlus.ElInput, {
180
+ "modelValue": attrs.height,
181
+ "onUpdate:modelValue": ($event) => attrs.height = $event,
182
+ "style": "width: 100%",
183
+ "placeholder": "请输入宽度(可支持%)"
184
+ }, null)]
185
+ }), vue.createVNode(elementPlus.ElFormItem, {
186
+ "label": "图片最大显示宽度"
187
+ }, {
188
+ default: () => [vue.createVNode(elementPlus.ElInput, {
189
+ "modelValue": attrs.maxWidth,
190
+ "onUpdate:modelValue": ($event) => attrs.maxWidth = $event,
191
+ "style": "width: 100%",
192
+ "placeholder": "请输入宽度(可支持%)"
193
+ }, null)]
194
+ }), vue.createVNode(elementPlus.ElFormItem, {
195
+ "label": "图片最大显示高度"
196
+ }, {
197
+ default: () => [vue.createVNode(elementPlus.ElInput, {
198
+ "modelValue": attrs.maxHeight,
199
+ "onUpdate:modelValue": ($event) => attrs.maxHeight = $event,
200
+ "style": "width: 100%",
201
+ "placeholder": "请输入宽度(可支持%)"
202
+ }, null)]
203
+ }), vue.createVNode(elementPlus.ElFormItem, {
204
+ "label": "图片显示外边距"
205
+ }, {
206
+ default: () => [vue.createVNode("div", {
207
+ "style": "display: flex;flex-wrap: nowrap;gap: 10px;justify-content: space-around;"
208
+ }, [vue.createVNode("div", null, [vue.createTextVNode("上:"), vue.createVNode(elementPlus.ElInput, {
209
+ "modelValue": margin.value.t,
210
+ "onUpdate:modelValue": ($event) => margin.value.t = $event,
211
+ "placeholder": ""
212
+ }, null)]), vue.createVNode("div", null, [vue.createTextVNode("右:"), vue.createVNode(elementPlus.ElInput, {
213
+ "modelValue": margin.value.r,
214
+ "onUpdate:modelValue": ($event) => margin.value.r = $event,
215
+ "placeholder": ""
216
+ }, null)]), vue.createVNode("div", null, [vue.createTextVNode("下:"), vue.createVNode(elementPlus.ElInput, {
217
+ "modelValue": margin.value.b,
218
+ "onUpdate:modelValue": ($event) => margin.value.b = $event,
219
+ "placeholder": ""
220
+ }, null)]), vue.createVNode("div", null, [vue.createTextVNode("左:"), vue.createVNode(elementPlus.ElInput, {
221
+ "modelValue": margin.value.l,
222
+ "onUpdate:modelValue": ($event) => margin.value.l = $event,
223
+ "placeholder": ""
224
+ }, null)])])]
225
+ })]
226
+ })]
227
+ })]
228
+ });
229
+ }
230
+ return panel;
231
+ };
232
+ }
233
+ });
234
+ const ShowImageEditPanel = async (attrs) => {
235
+ return new Promise((resolve, reject) => {
236
+ selectState.value = attrs.src ? "attrs" : "select";
237
+ const imageEditPanelRef = vue.ref(null);
238
+ const editResult = vue.computed(() => {
239
+ var _a;
240
+ return (_a = imageEditPanelRef.value) == null ? void 0 : _a.getResult();
241
+ });
242
+ const toCropImageHandle = async () => {
243
+ if (editResult.value.src) {
244
+ var result = await imageCropperApi.ImageCropper({
245
+ src: editResult.value.src
246
+ });
247
+ if (result.data) {
248
+ attrs.src = result.data;
249
+ }
250
+ selectState.value = "attrs";
251
+ }
252
+ };
253
+ const handleCancelClick = () => {
254
+ dialogInstance.destroy();
255
+ reject();
256
+ };
257
+ const handleConfirmClick = () => {
258
+ dialogInstance.destroy();
259
+ resolve(editResult.value);
260
+ };
261
+ const dialogInstance = dm.Dialoger.customRender({
262
+ title: "素材选择",
263
+ class: "mk-material-select",
264
+ width: "70%",
265
+ onClose: () => {
266
+ dialogInstance.destroy();
267
+ },
268
+ body: () => {
269
+ return vue.h(ImageEditPanelComponent, {
270
+ attrs,
271
+ ref: (r) => imageEditPanelRef.value = r
272
+ });
273
+ },
274
+ footer: () => {
275
+ let nextBtns = [vue.createVNode(elementPlus.ElButton, {
276
+ "type": "primary",
277
+ "onClick": toCropImageHandle
278
+ }, {
279
+ default: () => [vue.createTextVNode("下一步")]
280
+ })];
281
+ if (selectState.value == "attrs") {
282
+ nextBtns = [vue.createVNode(elementPlus.ElButton, {
283
+ "type": "primary",
284
+ "onClick": () => selectState.value = "select"
285
+ }, {
286
+ default: () => [vue.createTextVNode("重新选图")]
287
+ }), vue.createVNode(elementPlus.ElButton, {
288
+ "type": "primary",
289
+ "onClick": handleConfirmClick
290
+ }, {
291
+ default: () => [vue.createTextVNode("确定")]
292
+ })];
293
+ }
294
+ return vue.createVNode(vue.Fragment, null, [vue.createVNode(elementPlus.ElButton, {
295
+ "onClick": handleCancelClick
296
+ }, {
297
+ default: () => [vue.createTextVNode("取消")]
298
+ }), ...nextBtns]);
299
+ }
300
+ });
301
+ });
302
+ };
303
+ exports.ShowImageEditPanel = ShowImageEditPanel;
304
+ //# sourceMappingURL=ImageEditPanel.js.map
@@ -0,0 +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({ getResult:()=>{ return {...attrs} } });\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\r\n if(result.data){\r\n attrs.src = result.data;\r\n }\r\n \r\n selectState.value = 'attrs';\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={toCropImageHandle}>\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={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","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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"}