@maketribe/ms-app 3.2.24 → 3.2.25

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 (343) hide show
  1. package/dist/cjs/components/basic/doc-editor/core/index.js +7 -0
  2. package/dist/cjs/components/basic/doc-editor/core/index.js.map +1 -1
  3. package/dist/cjs/components/basic/doc-editor/editor.vue.js +7 -0
  4. package/dist/cjs/components/basic/doc-editor/editor.vue.js.map +1 -1
  5. package/dist/cjs/components/basic/doc-editor/index.js.map +1 -1
  6. package/dist/cjs/components/basic/doc-editor/plugins/ImagePlugin/ImageNode.js +0 -3
  7. package/dist/cjs/components/basic/doc-editor/plugins/ImagePlugin/ImageNode.js.map +1 -1
  8. package/dist/cjs/components/basic/doc-editor/plugins/ImagePlugin/index.vue.js +2 -3
  9. package/dist/cjs/components/basic/doc-editor/plugins/ImagePlugin/index.vue.js.map +1 -1
  10. package/dist/cjs/components/basic/doc-editor/plugins/ImagePlugin/utils.js +66 -39
  11. package/dist/cjs/components/basic/doc-editor/plugins/ImagePlugin/utils.js.map +1 -1
  12. package/dist/cjs/components/basic/doc-editor/plugins/ImageTextPlugin/index.vue.js +2 -2
  13. package/dist/cjs/components/basic/doc-editor/plugins/ImageTextPlugin/index.vue.js.map +1 -1
  14. package/dist/cjs/components/basic/doc-editor/plugins/ModulePlugin/ModuleBlockNode.js +21 -18
  15. package/dist/cjs/components/basic/doc-editor/plugins/ModulePlugin/ModuleBlockNode.js.map +1 -1
  16. package/dist/cjs/components/basic/doc-editor/plugins/ModulePlugin/ModuleContainerNode.js +15 -0
  17. package/dist/cjs/components/basic/doc-editor/plugins/ModulePlugin/ModuleContainerNode.js.map +1 -1
  18. package/dist/cjs/components/basic/doc-editor/plugins/ModulePlugin/composables.js +2 -2
  19. package/dist/cjs/components/basic/doc-editor/plugins/ModulePlugin/composables.js.map +1 -1
  20. package/dist/cjs/components/basic/doc-editor/plugins/ModulePlugin/index.vue.js +2 -3
  21. package/dist/cjs/components/basic/doc-editor/plugins/ModulePlugin/index.vue.js.map +1 -1
  22. package/dist/cjs/components/basic/doc-editor/plugins/ModulePlugin/utils.js +3 -2
  23. package/dist/cjs/components/basic/doc-editor/plugins/ModulePlugin/utils.js.map +1 -1
  24. package/dist/cjs/components/basic/doc-editor/plugins/ToolbarPlugin/ContentStyleTool.vue.js +10 -1
  25. package/dist/cjs/components/basic/doc-editor/plugins/ToolbarPlugin/ContentStyleTool.vue.js.map +1 -1
  26. package/dist/cjs/components/basic/doc-editor/plugins/ToolbarPlugin/PreviewToolbar.vue.js +49 -34
  27. package/dist/cjs/components/basic/doc-editor/plugins/ToolbarPlugin/PreviewToolbar.vue.js.map +1 -1
  28. package/dist/cjs/components/basic/doc-editor/plugins/ToolbarPlugin/index.vue.js +2 -3
  29. package/dist/cjs/components/basic/doc-editor/plugins/ToolbarPlugin/index.vue.js.map +1 -1
  30. package/dist/cjs/components/basic/doc-editor/themes/doc-editor-edit.css.js +1 -1
  31. package/dist/cjs/components/basic/doc-editor/themes/doc-editor-edit.css.js.map +1 -1
  32. package/dist/cjs/components/basic/doc-editor/themes/doc-theme.css.js +7 -10
  33. package/dist/cjs/components/basic/doc-editor/themes/doc-theme.css.js.map +1 -1
  34. package/dist/cjs/components/basic/upload-file/context/UploadContext.js.map +1 -1
  35. package/dist/cjs/components/basic/upload-file/index.js +13 -3
  36. package/dist/cjs/components/basic/upload-file/index.js.map +1 -1
  37. package/dist/cjs/components/basic/upload-file/ui/upload-file/index.js +11 -0
  38. package/dist/cjs/components/basic/upload-file/ui/upload-file/index.js.map +1 -0
  39. package/dist/cjs/components/basic/upload-file/ui/upload-file/upload-file-options.js +38 -0
  40. package/dist/cjs/components/basic/upload-file/ui/upload-file/upload-file-options.js.map +1 -0
  41. package/dist/cjs/components/basic/upload-file/ui/upload-file/upload-file.js +224 -0
  42. package/dist/cjs/components/basic/upload-file/ui/upload-file/upload-file.js.map +1 -0
  43. package/dist/cjs/components/basic/upload-file/ui/upload-image/upload-image.js +4 -2
  44. package/dist/cjs/components/basic/upload-file/ui/upload-image/upload-image.js.map +1 -1
  45. package/dist/cjs/components/basic/upload-file/ui/upload-video/index.js +11 -0
  46. package/dist/cjs/components/basic/upload-file/ui/upload-video/index.js.map +1 -0
  47. package/dist/cjs/components/basic/upload-file/ui/upload-video/upload-video-options.js +38 -0
  48. package/dist/cjs/components/basic/upload-file/ui/upload-video/upload-video-options.js.map +1 -0
  49. package/dist/cjs/components/basic/upload-file/ui/upload-video/upload-video.js +222 -0
  50. package/dist/cjs/components/basic/upload-file/ui/upload-video/upload-video.js.map +1 -0
  51. package/dist/cjs/components/basic/upload-file/upload-file-options.js +2 -1
  52. package/dist/cjs/components/basic/upload-file/upload-file-options.js.map +1 -1
  53. package/dist/cjs/components/basic/upload-file/upload-file.js +1 -0
  54. package/dist/cjs/components/basic/upload-file/upload-file.js.map +1 -1
  55. package/dist/cjs/components/business/resource-list/components/resource-item/index.vue.js +2 -0
  56. package/dist/cjs/components/business/resource-list/components/resource-item/index.vue.js.map +1 -1
  57. package/dist/cjs/components/business/resource-manager/resource-manager.vue.js +2 -0
  58. package/dist/cjs/components/business/resource-manager/resource-manager.vue.js.map +1 -1
  59. package/dist/cjs/components/data-model/data-table/components/column-sort/column-sort.js +2 -0
  60. package/dist/cjs/components/data-model/data-table/components/column-sort/column-sort.js.map +1 -1
  61. package/dist/cjs/components/data-model/data-table/components/header-components/batch-opt/batch-opt.js +2 -0
  62. package/dist/cjs/components/data-model/data-table/components/header-components/batch-opt/batch-opt.js.map +1 -1
  63. package/dist/cjs/components/data-model/data-table/components/header-components/table-filter/table-filter.js +2 -0
  64. package/dist/cjs/components/data-model/data-table/components/header-components/table-filter/table-filter.js.map +1 -1
  65. package/dist/cjs/core/component/DataFormComponents.js +14 -0
  66. package/dist/cjs/core/component/DataFormComponents.js.map +1 -1
  67. package/dist/cjs/index.js +73 -61
  68. package/dist/cjs/index.js.map +1 -1
  69. package/dist/cjs/installer.js +17 -14
  70. package/dist/cjs/installer.js.map +1 -1
  71. package/dist/cjs/layouts/components/bar/index.js +2 -0
  72. package/dist/cjs/layouts/components/bar/index.js.map +1 -1
  73. package/dist/cjs/layouts/components/header/tools.js +2 -0
  74. package/dist/cjs/layouts/components/header/tools.js.map +1 -1
  75. package/dist/cjs/layouts/components/menu/menu-item.js +2 -0
  76. package/dist/cjs/layouts/components/menu/menu-item.js.map +1 -1
  77. package/dist/cjs/layouts/container/default.js +2 -0
  78. package/dist/cjs/layouts/container/default.js.map +1 -1
  79. package/dist/cjs/message-impl/DialogerImpl.js +2 -0
  80. package/dist/cjs/message-impl/DialogerImpl.js.map +1 -1
  81. package/dist/cjs/modules/cms/components/part-tree/index.vue.js +2 -0
  82. package/dist/cjs/modules/cms/components/part-tree/index.vue.js.map +1 -1
  83. package/dist/cjs/modules/cms/dataviews/cms-ad-contents/CmsAdContentsForm.js +11 -7
  84. package/dist/cjs/modules/cms/dataviews/cms-ad-contents/CmsAdContentsForm.js.map +1 -1
  85. package/dist/cjs/modules/cms/dataviews/cms-articles/CmsArticlesForm.js +3 -1
  86. package/dist/cjs/modules/cms/dataviews/cms-articles/CmsArticlesForm.js.map +1 -1
  87. package/dist/cjs/modules/cms/dataviews/cms-articles/cms-article-atlas/CmsArticleAtlasForm.js +3 -1
  88. package/dist/cjs/modules/cms/dataviews/cms-articles/cms-article-atlas/CmsArticleAtlasForm.js.map +1 -1
  89. package/dist/cjs/modules/cms/pages/cms-ad/index.vue2.js +3 -1
  90. package/dist/cjs/modules/cms/pages/cms-ad/index.vue2.js.map +1 -1
  91. package/dist/cjs/modules/cms/pages/cms-contents/article-edit-add-page.vue2.js +2 -0
  92. package/dist/cjs/modules/cms/pages/cms-contents/article-edit-add-page.vue2.js.map +1 -1
  93. package/dist/cjs/modules/cms/pages/cms-contents/components/article-atlas.vue.js +2 -0
  94. package/dist/cjs/modules/cms/pages/cms-contents/components/article-atlas.vue.js.map +1 -1
  95. package/dist/cjs/modules/cms/pages/cms-contents/components/article-list.vue.js +3 -1
  96. package/dist/cjs/modules/cms/pages/cms-contents/components/article-list.vue.js.map +1 -1
  97. package/dist/cjs/modules/cms/pages/cms-contents/components/part-banner-edit.vue.js +8 -6
  98. package/dist/cjs/modules/cms/pages/cms-contents/components/part-banner-edit.vue.js.map +1 -1
  99. package/dist/cjs/modules/cms/pages/cms-contents/components/part-info.vue.js +2 -0
  100. package/dist/cjs/modules/cms/pages/cms-contents/components/part-info.vue.js.map +1 -1
  101. package/dist/cjs/modules/cms/pages/cms-contents/index.vue2.js +2 -0
  102. package/dist/cjs/modules/cms/pages/cms-contents/index.vue2.js.map +1 -1
  103. package/dist/cjs/modules/cms/pages/cms-resource/index.vue2.js +2 -0
  104. package/dist/cjs/modules/cms/pages/cms-resource/index.vue2.js.map +1 -1
  105. package/dist/cjs/modules/ms/components/material-list/material-list-options.js +2 -0
  106. package/dist/cjs/modules/ms/components/material-list/material-list-options.js.map +1 -1
  107. package/dist/cjs/modules/ms/components/material-list/material-list.js +2 -0
  108. package/dist/cjs/modules/ms/components/material-list/material-list.js.map +1 -1
  109. package/dist/cjs/modules/ms/components/material-select/material-select-api.js +2 -0
  110. package/dist/cjs/modules/ms/components/material-select/material-select-api.js.map +1 -1
  111. package/dist/cjs/modules/ms/dataviews/ms-member/MsMemberTable.js +2 -0
  112. package/dist/cjs/modules/ms/dataviews/ms-member/MsMemberTable.js.map +1 -1
  113. package/dist/cjs/modules/ms/dataviews/ms-member/components/MemberRolesColumn.js +2 -0
  114. package/dist/cjs/modules/ms/dataviews/ms-member/components/MemberRolesColumn.js.map +1 -1
  115. package/dist/cjs/modules/ms/image-upload-context/index.js +2 -0
  116. package/dist/cjs/modules/ms/image-upload-context/index.js.map +1 -1
  117. package/dist/cjs/modules/ms/index.js +4 -2
  118. package/dist/cjs/modules/ms/index.js.map +1 -1
  119. package/dist/cjs/modules/ms/material-upload-context/MaterialUploadContext.js +17 -3
  120. package/dist/cjs/modules/ms/material-upload-context/MaterialUploadContext.js.map +1 -1
  121. package/dist/cjs/modules/ms/material-upload-context/material-upload-context.js +2 -0
  122. package/dist/cjs/modules/ms/material-upload-context/material-upload-context.js.map +1 -1
  123. package/dist/cjs/modules/ms/pages/icons/index.vue2.js +2 -0
  124. package/dist/cjs/modules/ms/pages/icons/index.vue2.js.map +1 -1
  125. package/dist/cjs/modules/ms/pages/local-log/index.vue2.js +2 -0
  126. package/dist/cjs/modules/ms/pages/local-log/index.vue2.js.map +1 -1
  127. package/dist/cjs/modules/ms/pages/ms-material/index.vue2.js +3 -0
  128. package/dist/cjs/modules/ms/pages/ms-material/index.vue2.js.map +1 -1
  129. package/dist/cjs/modules/ms/pages/ms-menu/index.vue2.js +2 -0
  130. package/dist/cjs/modules/ms/pages/ms-menu/index.vue2.js.map +1 -1
  131. package/dist/cjs/modules/ms/pages/ms-role/components/aside.vue.js +2 -0
  132. package/dist/cjs/modules/ms/pages/ms-role/components/aside.vue.js.map +1 -1
  133. package/dist/cjs/modules/ms/pages/ms-role/components/role-permission-config/role-permission-config-options.js +2 -0
  134. package/dist/cjs/modules/ms/pages/ms-role/components/role-permission-config/role-permission-config-options.js.map +1 -1
  135. package/dist/cjs/modules/ms/pages/ms-role/index.vue2.js +2 -0
  136. package/dist/cjs/modules/ms/pages/ms-role/index.vue2.js.map +1 -1
  137. package/dist/cjs/page/index/dv/default/edit.vue2.js +2 -0
  138. package/dist/cjs/page/index/dv/default/edit.vue2.js.map +1 -1
  139. package/dist/cjs/page/index/dv/default/single/list/dialog.vue2.js +2 -0
  140. package/dist/cjs/page/index/dv/default/single/list/dialog.vue2.js.map +1 -1
  141. package/dist/cjs/page/index/dv/default/single/list/normal.vue2.js +2 -0
  142. package/dist/cjs/page/index/dv/default/single/list/normal.vue2.js.map +1 -1
  143. package/dist/cjs/page/index/dv/default/single/table-tree/dialog.vue2.js +2 -0
  144. package/dist/cjs/page/index/dv/default/single/table-tree/dialog.vue2.js.map +1 -1
  145. package/dist/cjs/page/index/dv/default/single/table-tree/normal.vue2.js +2 -0
  146. package/dist/cjs/page/index/dv/default/single/table-tree/normal.vue2.js.map +1 -1
  147. package/dist/cjs/page/index/dv/default/single/tree/dialog.vue2.js +2 -0
  148. package/dist/cjs/page/index/dv/default/single/tree/dialog.vue2.js.map +1 -1
  149. package/dist/cjs/page/index/dv/default/table.vue2.js +2 -0
  150. package/dist/cjs/page/index/dv/default/table.vue2.js.map +1 -1
  151. package/dist/cjs/page/login/index.vue2.js +2 -0
  152. package/dist/cjs/page/login/index.vue2.js.map +1 -1
  153. package/dist/cjs/page/signup/index.vue2.js +2 -0
  154. package/dist/cjs/page/signup/index.vue2.js.map +1 -1
  155. package/dist/esm/components/basic/doc-editor/core/index.js +9 -2
  156. package/dist/esm/components/basic/doc-editor/core/index.js.map +1 -1
  157. package/dist/esm/components/basic/doc-editor/editor.vue.js +8 -1
  158. package/dist/esm/components/basic/doc-editor/editor.vue.js.map +1 -1
  159. package/dist/esm/components/basic/doc-editor/index.js.map +1 -1
  160. package/dist/esm/components/basic/doc-editor/plugins/ImagePlugin/ImageNode.js +0 -3
  161. package/dist/esm/components/basic/doc-editor/plugins/ImagePlugin/ImageNode.js.map +1 -1
  162. package/dist/esm/components/basic/doc-editor/plugins/ImagePlugin/index.vue.js +1 -2
  163. package/dist/esm/components/basic/doc-editor/plugins/ImagePlugin/index.vue.js.map +1 -1
  164. package/dist/esm/components/basic/doc-editor/plugins/ImagePlugin/utils.js +66 -39
  165. package/dist/esm/components/basic/doc-editor/plugins/ImagePlugin/utils.js.map +1 -1
  166. package/dist/esm/components/basic/doc-editor/plugins/ImageTextPlugin/index.vue.js +1 -1
  167. package/dist/esm/components/basic/doc-editor/plugins/ImageTextPlugin/index.vue.js.map +1 -1
  168. package/dist/esm/components/basic/doc-editor/plugins/ModulePlugin/ModuleBlockNode.js +21 -18
  169. package/dist/esm/components/basic/doc-editor/plugins/ModulePlugin/ModuleBlockNode.js.map +1 -1
  170. package/dist/esm/components/basic/doc-editor/plugins/ModulePlugin/ModuleContainerNode.js +15 -0
  171. package/dist/esm/components/basic/doc-editor/plugins/ModulePlugin/ModuleContainerNode.js.map +1 -1
  172. package/dist/esm/components/basic/doc-editor/plugins/ModulePlugin/composables.js +2 -2
  173. package/dist/esm/components/basic/doc-editor/plugins/ModulePlugin/composables.js.map +1 -1
  174. package/dist/esm/components/basic/doc-editor/plugins/ModulePlugin/index.vue.js +1 -2
  175. package/dist/esm/components/basic/doc-editor/plugins/ModulePlugin/index.vue.js.map +1 -1
  176. package/dist/esm/components/basic/doc-editor/plugins/ModulePlugin/utils.js +3 -2
  177. package/dist/esm/components/basic/doc-editor/plugins/ModulePlugin/utils.js.map +1 -1
  178. package/dist/esm/components/basic/doc-editor/plugins/ToolbarPlugin/ContentStyleTool.vue.js +10 -1
  179. package/dist/esm/components/basic/doc-editor/plugins/ToolbarPlugin/ContentStyleTool.vue.js.map +1 -1
  180. package/dist/esm/components/basic/doc-editor/plugins/ToolbarPlugin/PreviewToolbar.vue.js +50 -35
  181. package/dist/esm/components/basic/doc-editor/plugins/ToolbarPlugin/PreviewToolbar.vue.js.map +1 -1
  182. package/dist/esm/components/basic/doc-editor/plugins/ToolbarPlugin/index.vue.js +1 -2
  183. package/dist/esm/components/basic/doc-editor/plugins/ToolbarPlugin/index.vue.js.map +1 -1
  184. package/dist/esm/components/basic/doc-editor/themes/doc-editor-edit.css.js +1 -1
  185. package/dist/esm/components/basic/doc-editor/themes/doc-editor-edit.css.js.map +1 -1
  186. package/dist/esm/components/basic/doc-editor/themes/doc-theme.css.js +7 -10
  187. package/dist/esm/components/basic/doc-editor/themes/doc-theme.css.js.map +1 -1
  188. package/dist/esm/components/basic/upload-file/context/UploadContext.js.map +1 -1
  189. package/dist/esm/components/basic/upload-file/index.js +10 -0
  190. package/dist/esm/components/basic/upload-file/index.js.map +1 -1
  191. package/dist/esm/components/basic/upload-file/ui/upload-file/index.js +11 -0
  192. package/dist/esm/components/basic/upload-file/ui/upload-file/index.js.map +1 -0
  193. package/dist/esm/components/basic/upload-file/ui/upload-file/upload-file-options.js +38 -0
  194. package/dist/esm/components/basic/upload-file/ui/upload-file/upload-file-options.js.map +1 -0
  195. package/dist/esm/components/basic/upload-file/ui/upload-file/upload-file.js +225 -0
  196. package/dist/esm/components/basic/upload-file/ui/upload-file/upload-file.js.map +1 -0
  197. package/dist/esm/components/basic/upload-file/ui/upload-image/upload-image.js +4 -2
  198. package/dist/esm/components/basic/upload-file/ui/upload-image/upload-image.js.map +1 -1
  199. package/dist/esm/components/basic/upload-file/ui/upload-video/index.js +11 -0
  200. package/dist/esm/components/basic/upload-file/ui/upload-video/index.js.map +1 -0
  201. package/dist/esm/components/basic/upload-file/ui/upload-video/upload-video-options.js +38 -0
  202. package/dist/esm/components/basic/upload-file/ui/upload-video/upload-video-options.js.map +1 -0
  203. package/dist/esm/components/basic/upload-file/ui/upload-video/upload-video.js +223 -0
  204. package/dist/esm/components/basic/upload-file/ui/upload-video/upload-video.js.map +1 -0
  205. package/dist/esm/components/basic/upload-file/upload-file-options.js +2 -1
  206. package/dist/esm/components/basic/upload-file/upload-file-options.js.map +1 -1
  207. package/dist/esm/components/basic/upload-file/upload-file.js +1 -0
  208. package/dist/esm/components/basic/upload-file/upload-file.js.map +1 -1
  209. package/dist/esm/components/business/resource-list/components/resource-item/index.vue.js +2 -0
  210. package/dist/esm/components/business/resource-list/components/resource-item/index.vue.js.map +1 -1
  211. package/dist/esm/components/business/resource-manager/resource-manager.vue.js +2 -0
  212. package/dist/esm/components/business/resource-manager/resource-manager.vue.js.map +1 -1
  213. package/dist/esm/components/data-model/data-table/components/column-sort/column-sort.js +2 -0
  214. package/dist/esm/components/data-model/data-table/components/column-sort/column-sort.js.map +1 -1
  215. package/dist/esm/components/data-model/data-table/components/header-components/batch-opt/batch-opt.js +2 -0
  216. package/dist/esm/components/data-model/data-table/components/header-components/batch-opt/batch-opt.js.map +1 -1
  217. package/dist/esm/components/data-model/data-table/components/header-components/table-filter/table-filter.js +2 -0
  218. package/dist/esm/components/data-model/data-table/components/header-components/table-filter/table-filter.js.map +1 -1
  219. package/dist/esm/core/component/DataFormComponents.js +14 -0
  220. package/dist/esm/core/component/DataFormComponents.js.map +1 -1
  221. package/dist/esm/index.js +14 -2
  222. package/dist/esm/index.js.map +1 -1
  223. package/dist/esm/installer.js +3 -0
  224. package/dist/esm/installer.js.map +1 -1
  225. package/dist/esm/layouts/components/bar/index.js +2 -0
  226. package/dist/esm/layouts/components/bar/index.js.map +1 -1
  227. package/dist/esm/layouts/components/header/tools.js +2 -0
  228. package/dist/esm/layouts/components/header/tools.js.map +1 -1
  229. package/dist/esm/layouts/components/menu/menu-item.js +2 -0
  230. package/dist/esm/layouts/components/menu/menu-item.js.map +1 -1
  231. package/dist/esm/layouts/container/default.js +2 -0
  232. package/dist/esm/layouts/container/default.js.map +1 -1
  233. package/dist/esm/message-impl/DialogerImpl.js +2 -0
  234. package/dist/esm/message-impl/DialogerImpl.js.map +1 -1
  235. package/dist/esm/modules/cms/components/part-tree/index.vue.js +2 -0
  236. package/dist/esm/modules/cms/components/part-tree/index.vue.js.map +1 -1
  237. package/dist/esm/modules/cms/dataviews/cms-ad-contents/CmsAdContentsForm.js +11 -7
  238. package/dist/esm/modules/cms/dataviews/cms-ad-contents/CmsAdContentsForm.js.map +1 -1
  239. package/dist/esm/modules/cms/dataviews/cms-articles/CmsArticlesForm.js +3 -1
  240. package/dist/esm/modules/cms/dataviews/cms-articles/CmsArticlesForm.js.map +1 -1
  241. package/dist/esm/modules/cms/dataviews/cms-articles/cms-article-atlas/CmsArticleAtlasForm.js +3 -1
  242. package/dist/esm/modules/cms/dataviews/cms-articles/cms-article-atlas/CmsArticleAtlasForm.js.map +1 -1
  243. package/dist/esm/modules/cms/pages/cms-ad/index.vue2.js +3 -1
  244. package/dist/esm/modules/cms/pages/cms-ad/index.vue2.js.map +1 -1
  245. package/dist/esm/modules/cms/pages/cms-contents/article-edit-add-page.vue2.js +2 -0
  246. package/dist/esm/modules/cms/pages/cms-contents/article-edit-add-page.vue2.js.map +1 -1
  247. package/dist/esm/modules/cms/pages/cms-contents/components/article-atlas.vue.js +2 -0
  248. package/dist/esm/modules/cms/pages/cms-contents/components/article-atlas.vue.js.map +1 -1
  249. package/dist/esm/modules/cms/pages/cms-contents/components/article-list.vue.js +3 -1
  250. package/dist/esm/modules/cms/pages/cms-contents/components/article-list.vue.js.map +1 -1
  251. package/dist/esm/modules/cms/pages/cms-contents/components/part-banner-edit.vue.js +8 -6
  252. package/dist/esm/modules/cms/pages/cms-contents/components/part-banner-edit.vue.js.map +1 -1
  253. package/dist/esm/modules/cms/pages/cms-contents/components/part-info.vue.js +2 -0
  254. package/dist/esm/modules/cms/pages/cms-contents/components/part-info.vue.js.map +1 -1
  255. package/dist/esm/modules/cms/pages/cms-contents/index.vue2.js +2 -0
  256. package/dist/esm/modules/cms/pages/cms-contents/index.vue2.js.map +1 -1
  257. package/dist/esm/modules/cms/pages/cms-resource/index.vue2.js +2 -0
  258. package/dist/esm/modules/cms/pages/cms-resource/index.vue2.js.map +1 -1
  259. package/dist/esm/modules/ms/components/material-list/material-list-options.js +2 -0
  260. package/dist/esm/modules/ms/components/material-list/material-list-options.js.map +1 -1
  261. package/dist/esm/modules/ms/components/material-list/material-list.js +2 -0
  262. package/dist/esm/modules/ms/components/material-list/material-list.js.map +1 -1
  263. package/dist/esm/modules/ms/components/material-select/material-select-api.js +2 -0
  264. package/dist/esm/modules/ms/components/material-select/material-select-api.js.map +1 -1
  265. package/dist/esm/modules/ms/dataviews/ms-member/MsMemberTable.js +2 -0
  266. package/dist/esm/modules/ms/dataviews/ms-member/MsMemberTable.js.map +1 -1
  267. package/dist/esm/modules/ms/dataviews/ms-member/components/MemberRolesColumn.js +2 -0
  268. package/dist/esm/modules/ms/dataviews/ms-member/components/MemberRolesColumn.js.map +1 -1
  269. package/dist/esm/modules/ms/image-upload-context/index.js +2 -0
  270. package/dist/esm/modules/ms/image-upload-context/index.js.map +1 -1
  271. package/dist/esm/modules/ms/index.js +4 -2
  272. package/dist/esm/modules/ms/index.js.map +1 -1
  273. package/dist/esm/modules/ms/material-upload-context/MaterialUploadContext.js +17 -3
  274. package/dist/esm/modules/ms/material-upload-context/MaterialUploadContext.js.map +1 -1
  275. package/dist/esm/modules/ms/material-upload-context/material-upload-context.js +2 -0
  276. package/dist/esm/modules/ms/material-upload-context/material-upload-context.js.map +1 -1
  277. package/dist/esm/modules/ms/pages/icons/index.vue2.js +2 -0
  278. package/dist/esm/modules/ms/pages/icons/index.vue2.js.map +1 -1
  279. package/dist/esm/modules/ms/pages/local-log/index.vue2.js +2 -0
  280. package/dist/esm/modules/ms/pages/local-log/index.vue2.js.map +1 -1
  281. package/dist/esm/modules/ms/pages/ms-material/index.vue2.js +3 -0
  282. package/dist/esm/modules/ms/pages/ms-material/index.vue2.js.map +1 -1
  283. package/dist/esm/modules/ms/pages/ms-menu/index.vue2.js +2 -0
  284. package/dist/esm/modules/ms/pages/ms-menu/index.vue2.js.map +1 -1
  285. package/dist/esm/modules/ms/pages/ms-role/components/aside.vue.js +2 -0
  286. package/dist/esm/modules/ms/pages/ms-role/components/aside.vue.js.map +1 -1
  287. package/dist/esm/modules/ms/pages/ms-role/components/role-permission-config/role-permission-config-options.js +2 -0
  288. package/dist/esm/modules/ms/pages/ms-role/components/role-permission-config/role-permission-config-options.js.map +1 -1
  289. package/dist/esm/modules/ms/pages/ms-role/index.vue2.js +2 -0
  290. package/dist/esm/modules/ms/pages/ms-role/index.vue2.js.map +1 -1
  291. package/dist/esm/page/index/dv/default/edit.vue2.js +2 -0
  292. package/dist/esm/page/index/dv/default/edit.vue2.js.map +1 -1
  293. package/dist/esm/page/index/dv/default/single/list/dialog.vue2.js +2 -0
  294. package/dist/esm/page/index/dv/default/single/list/dialog.vue2.js.map +1 -1
  295. package/dist/esm/page/index/dv/default/single/list/normal.vue2.js +2 -0
  296. package/dist/esm/page/index/dv/default/single/list/normal.vue2.js.map +1 -1
  297. package/dist/esm/page/index/dv/default/single/table-tree/dialog.vue2.js +2 -0
  298. package/dist/esm/page/index/dv/default/single/table-tree/dialog.vue2.js.map +1 -1
  299. package/dist/esm/page/index/dv/default/single/table-tree/normal.vue2.js +2 -0
  300. package/dist/esm/page/index/dv/default/single/table-tree/normal.vue2.js.map +1 -1
  301. package/dist/esm/page/index/dv/default/single/tree/dialog.vue2.js +2 -0
  302. package/dist/esm/page/index/dv/default/single/tree/dialog.vue2.js.map +1 -1
  303. package/dist/esm/page/index/dv/default/table.vue2.js +2 -0
  304. package/dist/esm/page/index/dv/default/table.vue2.js.map +1 -1
  305. package/dist/esm/page/login/index.vue2.js +2 -0
  306. package/dist/esm/page/login/index.vue2.js.map +1 -1
  307. package/dist/esm/page/signup/index.vue2.js +2 -0
  308. package/dist/esm/page/signup/index.vue2.js.map +1 -1
  309. package/dist/style/components/basic/doc-editor/index.css +1 -1
  310. package/dist/style/components/index.css +2 -2
  311. package/dist/style/components/upload-file-ui.css +1 -0
  312. package/dist/style/components/upload-image.css +1 -1
  313. package/dist/style/components/upload-video-ui.css +1 -0
  314. package/dist/style/index.css +3 -3
  315. package/dist/style/src/components/basic/doc-editor/index.scss +5 -3
  316. package/dist/style/src/components/index.scss +2 -0
  317. package/dist/style/src/components/upload-file-ui.scss +89 -0
  318. package/dist/style/src/components/upload-image.scss +3 -2
  319. package/dist/style/src/components/upload-video-ui.scss +139 -0
  320. package/dist/style/src/index.scss +4 -0
  321. package/dist/types/components/basic/doc-editor/core/index.d.ts +15 -0
  322. package/dist/types/components/basic/doc-editor/index.d.ts +2 -2
  323. package/dist/types/components/basic/doc-editor/plugins/ModulePlugin/ModuleBlockNode.d.ts +7 -1
  324. package/dist/types/components/basic/doc-editor/plugins/ModulePlugin/ModuleContainerNode.d.ts +8 -0
  325. package/dist/types/components/basic/doc-editor/plugins/ModulePlugin/composables.d.ts +2 -1
  326. package/dist/types/components/basic/upload-file/context/UploadContext.d.ts +1 -0
  327. package/dist/types/components/basic/upload-file/ui/index.d.ts +2 -0
  328. package/dist/types/components/basic/upload-file/ui/upload-file/index.d.ts +67 -0
  329. package/dist/types/components/basic/upload-file/ui/upload-file/upload-file-options.d.ts +35 -0
  330. package/dist/types/components/basic/upload-file/ui/upload-file/upload-file.d.ts +67 -0
  331. package/dist/types/components/basic/upload-file/ui/upload-video/index.d.ts +67 -0
  332. package/dist/types/components/basic/upload-file/ui/upload-video/upload-video-options.d.ts +35 -0
  333. package/dist/types/components/basic/upload-file/ui/upload-video/upload-video.d.ts +67 -0
  334. package/dist/types/components/basic/upload-file/upload-file-options.d.ts +1 -0
  335. package/dist/types/components/basic/upload-file/upload-file.d.ts +2 -0
  336. package/dist/types/modules/cms/dataviews/cms-ad-contents/CmsAdContentsForm.d.ts +4 -1
  337. package/dist/types/modules/ms/components/index.d.ts +1 -0
  338. package/package.json +2 -2
  339. package/dist/cjs/components/basic/doc-editor/plugins/ToolbarPlugin/defines.js +0 -11
  340. package/dist/cjs/components/basic/doc-editor/plugins/ToolbarPlugin/defines.js.map +0 -1
  341. package/dist/esm/components/basic/doc-editor/plugins/ToolbarPlugin/defines.js +0 -11
  342. package/dist/esm/components/basic/doc-editor/plugins/ToolbarPlugin/defines.js.map +0 -1
  343. package/dist/types/components/basic/doc-editor/plugins/ToolbarPlugin/defines.d.ts +0 -15
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const utils = require("@maketribe/utils");
4
+ const UploadContext = require("../../context/UploadContext.js");
5
+ const WebFileUploadContext = require("../../context/WebFileUploadContext.js");
6
+ require("../../context/web-file-upload-context.js");
7
+ require("../../context/web-file-upload-context-options.js");
8
+ const uploadVideoProps = utils.buildProps({
9
+ uploadContext: {
10
+ type: UploadContext.UploadContext,
11
+ default: () => new WebFileUploadContext.WebFileUploadContext()
12
+ },
13
+ modelValue: {
14
+ type: [String, Array]
15
+ },
16
+ multiple: {
17
+ type: Boolean,
18
+ default: false
19
+ },
20
+ width: {
21
+ type: String,
22
+ default: "180px"
23
+ },
24
+ height: {
25
+ type: String,
26
+ default: "180px"
27
+ },
28
+ icon: {
29
+ type: String,
30
+ default: "UploadFilled"
31
+ }
32
+ });
33
+ const uploadVideoEmits = {
34
+ "update:modelValue": (path) => true
35
+ };
36
+ exports.uploadVideoEmits = uploadVideoEmits;
37
+ exports.uploadVideoProps = uploadVideoProps;
38
+ //# sourceMappingURL=upload-video-options.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"upload-video-options.js","sources":["../../../../../../../src/components/basic/upload-file/ui/upload-video/upload-video-options.ts"],"sourcesContent":["import { ExtractPropTypes } from \"vue\";\r\nimport { buildProps } from \"@maketribe/utils\";\r\nimport { WebFileUploadContext, UploadContext } from \"../../context\";\r\n\r\nexport const uploadVideoProps = buildProps({\r\n uploadContext: {\r\n type: UploadContext,\r\n default: () => new WebFileUploadContext(),\r\n },\r\n modelValue: {\r\n type: [String, Array<String>],\r\n },\r\n multiple: {\r\n type: Boolean,\r\n default: false,\r\n },\r\n width: {\r\n type: String,\r\n default: \"180px\",\r\n },\r\n height: {\r\n type: String,\r\n default: \"180px\",\r\n },\r\n icon: {\r\n type: String,\r\n default: \"UploadFilled\",\r\n }\r\n} as const);\r\n\r\nexport type UploadVideoProps = ExtractPropTypes<typeof uploadVideoProps>;\r\n\r\nexport const uploadVideoEmits = {\r\n \"update:modelValue\": (path: string | string[]) => true,\r\n};\r\n\r\nexport type UploadVideoEmits = typeof uploadVideoEmits;\r\n"],"names":["buildProps","UploadContext","WebFileUploadContext"],"mappings":";;;;;;;AAIO,MAAM,mBAAmBA,MAAAA,WAAW;AAAA,EACzC,eAAe;AAAA,IACb,MAAMC,cAAA;AAAA,IACN,SAAS,MAAM,IAAIC,0CAAqB;AAAA,EAC1C;AAAA,EACA,YAAY;AAAA,IACV,MAAM,CAAC,QAAQ,KAAa;AAAA,EAC9B;AAAA,EACA,UAAU;AAAA,IACR,MAAM;AAAA,IACN,SAAS;AAAA,EACX;AAAA,EACA,OAAO;AAAA,IACL,MAAM;AAAA,IACN,SAAS;AAAA,EACX;AAAA,EACA,QAAQ;AAAA,IACN,MAAM;AAAA,IACN,SAAS;AAAA,EACX;AAAA,EACA,MAAM;AAAA,IACJ,MAAM;AAAA,IACN,SAAS;AAAA,EACX;AACF,CAAU;AAIH,MAAM,mBAAmB;AAAA,EAC9B,qBAAqB,CAAC,SAA4B;AACpD;;;"}
@@ -0,0 +1,222 @@
1
+ "use strict";
2
+ const vue = require("vue");
3
+ const elementPlus = require("element-plus");
4
+ const index = require("../../../svg-icon/index.js");
5
+ const uploadFile = require("../../upload-file.js");
6
+ const uploadVideoOptions = require("./upload-video-options.js");
7
+ const UploadContext = require("../../context/UploadContext.js");
8
+ require("@maketribe/request");
9
+ require("@maketribe/utils");
10
+ require("../../context/web-file-upload-context.js");
11
+ require("../../context/web-file-upload-context-options.js");
12
+ const MKUploadFileItem = /* @__PURE__ */ vue.defineComponent({
13
+ name: "MKUploadFileItem",
14
+ props: {
15
+ modelValue: {
16
+ type: String,
17
+ default: ""
18
+ },
19
+ uploadContext: {
20
+ type: UploadContext.UploadContext,
21
+ required: true
22
+ },
23
+ width: {
24
+ type: String,
25
+ default: "180px"
26
+ },
27
+ height: {
28
+ type: String,
29
+ default: "180px"
30
+ },
31
+ icon: {
32
+ type: String,
33
+ default: "Plus"
34
+ }
35
+ },
36
+ emits: ["update:modelValue", "view", "delete"],
37
+ setup(props, {
38
+ emit
39
+ }) {
40
+ const uploadFileInstance = vue.ref(null);
41
+ vue.ref(null);
42
+ vue.ref("");
43
+ const modelValue = vue.computed({
44
+ get: () => props.modelValue,
45
+ set: (v) => {
46
+ emit("update:modelValue", v);
47
+ }
48
+ });
49
+ const handleUpdateModelValue = (v) => {
50
+ modelValue.value = v;
51
+ };
52
+ const handleClick = (event) => {
53
+ var _a;
54
+ event.stopPropagation();
55
+ if (vue.unref(modelValue)) {
56
+ return;
57
+ }
58
+ (_a = vue.unref(uploadFileInstance)) == null ? void 0 : _a.handleUpload();
59
+ };
60
+ const handleView = (event) => {
61
+ event.stopPropagation();
62
+ emit("view", vue.unref(modelValue));
63
+ };
64
+ const handleDelete = (event) => {
65
+ event.stopPropagation();
66
+ emit("delete", vue.unref(modelValue));
67
+ };
68
+ return () => {
69
+ let content;
70
+ if (vue.unref(modelValue)) {
71
+ content = vue.createVNode(vue.Fragment, null, [vue.createVNode("div", {
72
+ "class": "mk-upload-video-item__file"
73
+ }, [vue.createVNode(index.MKSvgIcon, {
74
+ "iconClass": "video"
75
+ }, null)]), vue.createVNode("div", {
76
+ "class": "mk-upload-video-item__mask"
77
+ }, [vue.createVNode(elementPlus.ElTooltip, {
78
+ "content": "查看"
79
+ }, {
80
+ default: () => [vue.createVNode(index.MKSvgIcon, {
81
+ "iconClass": "View",
82
+ "onClick": handleView
83
+ }, null)]
84
+ }), vue.createVNode(elementPlus.ElTooltip, {
85
+ "content": "删除"
86
+ }, {
87
+ default: () => [vue.createVNode(index.MKSvgIcon, {
88
+ "iconClass": "Delete",
89
+ "onClick": handleDelete
90
+ }, null)]
91
+ })])]);
92
+ } else {
93
+ content = vue.createVNode("div", {
94
+ "class": "mk-upload-video-item__wrapper__desc"
95
+ }, [vue.createVNode(index.MKSvgIcon, {
96
+ "iconClass": props.icon,
97
+ "class": "mk-upload-video-item__wrapper__desc__icon"
98
+ }, null), vue.createVNode("span", {
99
+ "class": "mk-upload-video-item__wrapper__desc__text"
100
+ }, [vue.createTextVNode("点击上传视频")])]);
101
+ }
102
+ return vue.createVNode("div", {
103
+ "class": "mk-upload-video-item",
104
+ "style": {
105
+ width: props.width,
106
+ height: props.height
107
+ }
108
+ }, [vue.createVNode(uploadFile.MKUploadFile, {
109
+ "modelValue": props.modelValue,
110
+ "onUpdate:modelValue": handleUpdateModelValue,
111
+ "uploadContext": props.uploadContext,
112
+ "ref": (el) => uploadFileInstance.value = el
113
+ }, {
114
+ default: () => [vue.createVNode("div", {
115
+ "class": "mk-upload-video-item__wrapper",
116
+ "onClick": handleClick
117
+ }, [content])]
118
+ })]);
119
+ };
120
+ }
121
+ });
122
+ const UploadVideo = /* @__PURE__ */ vue.defineComponent({
123
+ name: "MKUploadFile",
124
+ props: uploadVideoOptions.uploadVideoProps,
125
+ emits: uploadVideoOptions.uploadVideoEmits,
126
+ setup(props, {
127
+ emit
128
+ }) {
129
+ const modelValue = vue.computed({
130
+ get: () => props.modelValue,
131
+ set: (v) => emit("update:modelValue", v)
132
+ });
133
+ const currentVideoSrc = vue.ref("");
134
+ const multiple = vue.computed(() => props.multiple);
135
+ const isShowVideoViewer = vue.ref(false);
136
+ vue.watch(vue.computed(() => [vue.unref(modelValue), vue.unref(multiple)]), ([value, multiple2]) => {
137
+ if (multiple2 && !Array.isArray(value)) {
138
+ modelValue.value = [];
139
+ }
140
+ }, {
141
+ immediate: true
142
+ });
143
+ const handleDelete = (src) => {
144
+ if (!vue.unref(multiple)) {
145
+ modelValue.value = "";
146
+ return;
147
+ }
148
+ const index2 = vue.unref(modelValue).indexOf(src);
149
+ if (index2 === -1) {
150
+ return;
151
+ }
152
+ modelValue.value.splice(index2, 1);
153
+ };
154
+ const handleShowImageViewer = (src) => {
155
+ isShowVideoViewer.value = true;
156
+ currentVideoSrc.value = src;
157
+ };
158
+ const handleAppendImage = (src) => {
159
+ const _value = vue.unref(modelValue);
160
+ if (Array.isArray(_value)) {
161
+ _value.push(src);
162
+ }
163
+ };
164
+ return () => {
165
+ const _multiple = vue.unref(multiple);
166
+ let content;
167
+ if (!_multiple) {
168
+ content = vue.createVNode(MKUploadFileItem, {
169
+ "onView": handleShowImageViewer,
170
+ "onDelete": handleDelete,
171
+ "modelValue": vue.unref(modelValue),
172
+ "onUpdate:modelValue": (value) => modelValue.value = value,
173
+ "uploadContext": props.uploadContext,
174
+ "width": props.width,
175
+ "height": props.height,
176
+ "icon": props.icon
177
+ }, null);
178
+ } else {
179
+ let images = null;
180
+ if (Array.isArray(vue.unref(modelValue))) {
181
+ images = vue.unref(modelValue).map((src) => vue.createVNode(MKUploadFileItem, {
182
+ "onView": handleShowImageViewer,
183
+ "onDelete": handleDelete,
184
+ "modelValue": src,
185
+ "uploadContext": props.uploadContext,
186
+ "width": props.width,
187
+ "height": props.height,
188
+ "icon": props.icon
189
+ }, null));
190
+ }
191
+ content = vue.createVNode(vue.Fragment, null, [images, vue.createVNode(MKUploadFileItem, {
192
+ "onUpdate:modelValue": handleAppendImage,
193
+ "uploadContext": props.uploadContext,
194
+ "width": props.width,
195
+ "height": props.height,
196
+ "icon": props.icon
197
+ }, null)]);
198
+ }
199
+ const videoViewer = vue.unref(isShowVideoViewer) ? vue.createVNode("div", {
200
+ "class": "mk-upload-video-viewer"
201
+ }, [vue.createVNode(index.MKSvgIcon, {
202
+ "class": "mk-upload-video-viewer__close",
203
+ "iconClass": "Close",
204
+ "onClick": () => isShowVideoViewer.value = false
205
+ }, null), vue.createVNode("div", {
206
+ "class": "mk-upload-video-viewer__mask"
207
+ }, null), vue.createVNode("video", {
208
+ "class": "mk-upload-video-viewer__video",
209
+ "src": currentVideoSrc.value,
210
+ "controls": true
211
+ }, null)]) : null;
212
+ return vue.createVNode("div", {
213
+ "class": "mk-upload-video",
214
+ "style": {
215
+ width: _multiple ? "" : props.width
216
+ }
217
+ }, [content, videoViewer]);
218
+ };
219
+ }
220
+ });
221
+ module.exports = UploadVideo;
222
+ //# sourceMappingURL=upload-video.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"upload-video.js","sources":["../../../../../../../src/components/basic/upload-file/ui/upload-video/upload-video.tsx"],"sourcesContent":["import {\r\n Fragment,\r\n Ref,\r\n VNode,\r\n computed,\r\n defineComponent,\r\n ref,\r\n unref,\r\n watch,\r\n} from \"vue\";\r\nimport { ElImage, ElTooltip, ElImageViewer } from \"element-plus\";\r\nimport { MKSvgIcon } from \"../../../svg-icon\";\r\nimport { MKUploadFile } from \"../../upload-file\";\r\nimport { uploadVideoEmits, uploadVideoProps } from \"./upload-video-options\";\r\nimport { UploadContext } from \"../../context\";\r\n\r\nconst MKUploadFileItem = defineComponent({\r\n name: \"MKUploadFileItem\",\r\n props: {\r\n modelValue: {\r\n type: String,\r\n default: \"\",\r\n },\r\n uploadContext: {\r\n type: UploadContext,\r\n required: true,\r\n },\r\n width: {\r\n type: String,\r\n default: \"180px\",\r\n },\r\n height: {\r\n type: String,\r\n default: \"180px\",\r\n },\r\n icon: {\r\n type: String,\r\n default: \"Plus\",\r\n }\r\n },\r\n emits: [\"update:modelValue\", \"view\", \"delete\"],\r\n setup(props, { emit }) {\r\n const uploadFileInstance: Ref<InstanceType<typeof MKUploadFile> | null> =\r\n ref(null);\r\n\r\n const imageInstance: Ref<InstanceType<typeof ElImage> | null> = ref(null);\r\n\r\n const currentFileName: Ref<string> = ref(\"\")\r\n\r\n const modelValue = computed({\r\n get: () => props.modelValue as string,\r\n set: (v: string) => {\r\n emit(\"update:modelValue\", v);\r\n },\r\n });\r\n\r\n\r\n\r\n const getFileIconBySuffix = (v: string) => {\r\n const index = v.lastIndexOf('.');\r\n const indexBias = v.lastIndexOf('/');\r\n const icon = [\"html\", \"apk\", \"eps\", \"ppt\", \"xml\", \"pdf\", \"exe\", \"psd\", \"visio\", \"xls\", \"doc\", \"txt\", \"dll\", \"tiff\", \"bmp\", \"audio\"]\r\n const zipIcon = [\"zip\", \"rar\", \"zip\", \"tar\", \"gz\", \"bz2\", \"7z\"]\r\n const suffixIcon = v.substring(index + 1)\r\n const suffix = v.substring(indexBias + 1)\r\n if (icon.includes(suffixIcon)) {\r\n return {\r\n icon: suffixIcon,\r\n suffix: suffix,\r\n }\r\n } else if (zipIcon.includes(suffixIcon)) {\r\n return {\r\n icon: \"yasuo\",\r\n suffix: suffix\r\n }\r\n } else {\r\n return {\r\n icon: \"weizhiwenjian\",\r\n suffix: suffix\r\n }\r\n }\r\n }\r\n\r\n const handleUpdateModelValue = (v: string) => {\r\n modelValue.value = v;\r\n };\r\n\r\n const handleClick = (event: MouseEvent) => {\r\n event.stopPropagation();\r\n\r\n if (unref(modelValue)) {\r\n return;\r\n }\r\n\r\n unref(uploadFileInstance)?.handleUpload();\r\n };\r\n\r\n const handleView = (event: MouseEvent) => {\r\n event.stopPropagation();\r\n\r\n emit(\"view\", unref(modelValue));\r\n };\r\n\r\n const handleDelete = (event: MouseEvent) => {\r\n event.stopPropagation();\r\n\r\n // modelValue.value = \"\";\r\n emit(\"delete\", unref(modelValue));\r\n };\r\n\r\n return () => {\r\n let content;\r\n\r\n if (unref(modelValue)) {\r\n content = (\r\n <Fragment>\r\n <div class=\"mk-upload-video-item__file\">\r\n <MKSvgIcon iconClass=\"video\" />\r\n </div>\r\n\r\n <div class=\"mk-upload-video-item__mask\">\r\n <ElTooltip content=\"查看\">\r\n <MKSvgIcon iconClass=\"View\" onClick={handleView} />\r\n </ElTooltip>\r\n <ElTooltip content=\"删除\">\r\n <MKSvgIcon iconClass=\"Delete\" onClick={handleDelete} />\r\n </ElTooltip>\r\n </div>\r\n </Fragment>\r\n );\r\n } else {\r\n content = <div class=\"mk-upload-video-item__wrapper__desc\">\r\n <MKSvgIcon iconClass={props.icon} class=\"mk-upload-video-item__wrapper__desc__icon\" />\r\n <span class=\"mk-upload-video-item__wrapper__desc__text\">点击上传视频</span>\r\n </div>;\r\n }\r\n\r\n return (\r\n <div class=\"mk-upload-video-item\" style={{ width: props.width, height: props.height }}>\r\n <MKUploadFile\r\n modelValue={props.modelValue}\r\n onUpdate:modelValue={handleUpdateModelValue}\r\n uploadContext={props.uploadContext}\r\n ref={\r\n ((el: InstanceType<typeof MKUploadFile>) =>\r\n (uploadFileInstance.value = el)) as any\r\n }\r\n >\r\n <div class=\"mk-upload-video-item__wrapper\" onClick={handleClick}>\r\n {content}\r\n </div>\r\n </MKUploadFile>\r\n </div>\r\n );\r\n };\r\n },\r\n});\r\n\r\nexport default defineComponent({\r\n name: \"MKUploadFile\",\r\n props: uploadVideoProps,\r\n emits: uploadVideoEmits,\r\n setup(props, { emit }) {\r\n const modelValue = computed({\r\n get: () => props.modelValue as string[] | string,\r\n set: (v: string[] | string) => emit(\"update:modelValue\", v),\r\n });\r\n\r\n const currentVideoSrc: Ref<string> = ref(\"\");\r\n\r\n const multiple = computed(() => props.multiple);\r\n\r\n const isShowVideoViewer: Ref<boolean> = ref(false);\r\n\r\n watch(\r\n computed(() => [unref(modelValue), unref(multiple)]),\r\n ([value, multiple]) => {\r\n if (multiple && !Array.isArray(value)) {\r\n modelValue.value = [];\r\n }\r\n },\r\n { immediate: true }\r\n );\r\n\r\n const handleDelete = (src: string) => {\r\n if (!unref(multiple)) {\r\n modelValue.value = \"\";\r\n return;\r\n }\r\n\r\n const index = unref(modelValue).indexOf(src);\r\n\r\n if (index === -1) {\r\n return;\r\n }\r\n\r\n (modelValue.value as string[]).splice(index, 1);\r\n };\r\n\r\n const handleShowImageViewer = (src: string) => {\r\n isShowVideoViewer.value = true;\r\n currentVideoSrc.value = src;\r\n };\r\n\r\n const handleCloseImageViewer = () => {\r\n isShowVideoViewer.value = false;\r\n };\r\n\r\n const handleAppendImage = (src: string) => {\r\n const _value = unref(modelValue);\r\n\r\n if (Array.isArray(_value)) {\r\n _value.push(src);\r\n }\r\n };\r\n\r\n return () => {\r\n const _multiple = unref(multiple);\r\n\r\n let content;\r\n\r\n if (!_multiple) {\r\n content = (\r\n <MKUploadFileItem\r\n onView={handleShowImageViewer}\r\n onDelete={handleDelete}\r\n modelValue={unref(modelValue) as string}\r\n onUpdate:modelValue={(value) => (modelValue.value = value)}\r\n uploadContext={props.uploadContext}\r\n width={props.width}\r\n height={props.height}\r\n icon={props.icon}\r\n />\r\n );\r\n } else {\r\n let images: VNode[] | null = null;\r\n\r\n if (Array.isArray(unref(modelValue))) {\r\n images = (unref(modelValue) as string[]).map((src) => (\r\n <MKUploadFileItem\r\n onView={handleShowImageViewer}\r\n onDelete={handleDelete}\r\n modelValue={src}\r\n uploadContext={props.uploadContext}\r\n width={props.width}\r\n height={props.height}\r\n icon={props.icon}\r\n />\r\n ));\r\n }\r\n\r\n content = (\r\n <Fragment>\r\n {images}\r\n <MKUploadFileItem\r\n onUpdate:modelValue={handleAppendImage}\r\n uploadContext={props.uploadContext}\r\n width={props.width}\r\n height={props.height}\r\n icon={props.icon}\r\n />\r\n </Fragment>\r\n );\r\n }\r\n\r\n const videoViewer = unref(isShowVideoViewer) ? (\r\n <div class=\"mk-upload-video-viewer\" >\r\n <MKSvgIcon class=\"mk-upload-video-viewer__close\" iconClass=\"Close\" onClick={() => isShowVideoViewer.value = false}></MKSvgIcon>\r\n <div class=\"mk-upload-video-viewer__mask\"></div>\r\n <video class=\"mk-upload-video-viewer__video\" src={currentVideoSrc.value} controls></video>\r\n </div>\r\n ) : null;\r\n\r\n return (\r\n <div class=\"mk-upload-video\" style={{ width: _multiple ? \"\" : props.width }}>\r\n {content}\r\n {videoViewer}\r\n </div>\r\n );\r\n };\r\n },\r\n});\r\n"],"names":["MKUploadFileItem","defineComponent","name","props","modelValue","type","String","default","uploadContext","UploadContext","required","width","height","icon","emits","setup","emit","uploadFileInstance","ref","computed","get","set","v","handleUpdateModelValue","value","handleClick","event","stopPropagation","unref","handleUpload","handleView","handleDelete","content","_createVNode","_Fragment","MKSvgIcon","ElTooltip","_createTextVNode","MKUploadFile","el","uploadVideoProps","uploadVideoEmits","currentVideoSrc","multiple","isShowVideoViewer","watch","Array","isArray","immediate","src","index","indexOf","splice","handleShowImageViewer","handleAppendImage","_value","push","_multiple","images","map","videoViewer","onClick"],"mappings":"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"}
@@ -15,7 +15,8 @@ const uploadFileProps = utils.buildProps({
15
15
  }
16
16
  });
17
17
  const uploadFileEmits = {
18
- "update:modelValue": (path) => true
18
+ "update:modelValue": (path) => true,
19
+ "getSelectFileName": (name) => true
19
20
  };
20
21
  exports.uploadFileEmits = uploadFileEmits;
21
22
  exports.uploadFileProps = uploadFileProps;
@@ -1 +1 @@
1
- {"version":3,"file":"upload-file-options.js","sources":["../../../../../src/components/basic/upload-file/upload-file-options.ts"],"sourcesContent":["import { ExtractPropTypes } from \"vue\";\r\nimport { buildProps } from \"@maketribe/utils\";\r\nimport { UploadContext, WebFileUploadContext } from \"./context\";\r\n\r\nexport const uploadFileProps = buildProps({\r\n modelValue: {\r\n type: String,\r\n },\r\n uploadContext: {\r\n type: UploadContext,\r\n default: () => new WebFileUploadContext(),\r\n },\r\n} as const);\r\n\r\nexport type UploadFileProps = ExtractPropTypes<typeof uploadFileProps>;\r\n\r\nexport const uploadFileEmits = {\r\n \"update:modelValue\": (path: string) => true,\r\n};\r\n\r\nexport type UploadFileEmits = typeof uploadFileEmits;\r\n"],"names":["buildProps","UploadContext","WebFileUploadContext"],"mappings":";;;;;;;AAIO,MAAM,kBAAkBA,MAAAA,WAAW;AAAA,EACxC,YAAY;AAAA,IACV,MAAM;AAAA,EACR;AAAA,EACA,eAAe;AAAA,IACb,MAAMC,cAAA;AAAA,IACN,SAAS,MAAM,IAAIC,0CAAqB;AAAA,EAC1C;AACF,CAAU;AAIH,MAAM,kBAAkB;AAAA,EAC7B,qBAAqB,CAAC,SAAiB;AACzC;;;"}
1
+ {"version":3,"file":"upload-file-options.js","sources":["../../../../../src/components/basic/upload-file/upload-file-options.ts"],"sourcesContent":["import { ExtractPropTypes } from \"vue\";\r\nimport { buildProps } from \"@maketribe/utils\";\r\nimport { UploadContext, WebFileUploadContext } from \"./context\";\r\n\r\nexport const uploadFileProps = buildProps({\r\n modelValue: {\r\n type: String,\r\n },\r\n uploadContext: {\r\n type: UploadContext,\r\n default: () => new WebFileUploadContext(),\r\n },\r\n} as const);\r\n\r\nexport type UploadFileProps = ExtractPropTypes<typeof uploadFileProps>;\r\n\r\nexport const uploadFileEmits = {\r\n \"update:modelValue\": (path: string) => true,\r\n \"getSelectFileName\": (name: string) => true,\r\n};\r\n\r\nexport type UploadFileEmits = typeof uploadFileEmits;\r\n"],"names":["buildProps","UploadContext","WebFileUploadContext"],"mappings":";;;;;;;AAIO,MAAM,kBAAkBA,MAAAA,WAAW;AAAA,EACxC,YAAY;AAAA,IACV,MAAM;AAAA,EACR;AAAA,EACA,eAAe;AAAA,IACb,MAAMC,cAAA;AAAA,IACN,SAAS,MAAM,IAAIC,0CAAqB;AAAA,EAC1C;AACF,CAAU;AAIH,MAAM,kBAAkB;AAAA,EAC7B,qBAAqB,CAAC,SAAiB;AAAA,EACvC,qBAAqB,CAAC,SAAiB;AACzC;;;"}
@@ -26,6 +26,7 @@ const _UploadFile = /* @__PURE__ */ vue.defineComponent({
26
26
  const uploadResult = await vue.unref(uploadContext).selectFile();
27
27
  if (uploadResult.success) {
28
28
  value.value = uploadResult.path || value.value;
29
+ emit("getSelectFileName", uploadResult.name || "");
29
30
  return;
30
31
  }
31
32
  elementPlus.ElMessage.error(uploadResult.msg);
@@ -1 +1 @@
1
- {"version":3,"file":"upload-file.js","sources":["../../../../../src/components/basic/upload-file/upload-file.tsx"],"sourcesContent":["import { computed, defineComponent, inject, unref } from \"vue\";\r\nimport { uploadFileEmits, uploadFileProps } from \"./upload-file-options\";\r\nimport { ElMessage } from \"element-plus\";\r\nimport { UploadContextCtxKey } from \"./context\";\r\nimport { withInstall } from \"@maketribe/utils\";\r\n\r\n/**\r\n * 文件上传\r\n *\r\n * 文件上传在本后台中有两大分类\r\n * 1.直接上传文件\r\n * 2.使用素材库文件\r\n *\r\n * 文件上传的界面交互又会分为几种情况\r\n * 1.单文件上传(单文件上传,可能会根据。文件情况的不同,界面显示方式不一样)\r\n * 2.多文件上传(多文件上传基于单文件的逻辑,不过是会变成多个文件)\r\n *\r\n * 希望文件交互组件不需要用了解是直接上传文件或使用素材库。\r\n *\r\n */\r\n\r\nconst _UploadFile = defineComponent({\r\n name: \"MKUploadFile\",\r\n props: uploadFileProps,\r\n emits: uploadFileEmits,\r\n setup(props, { emit }) {\r\n const uploadContextCtx = inject(UploadContextCtxKey, null);\r\n\r\n const value = computed({\r\n get: () => props.modelValue as string,\r\n set: (v: string) => emit(\"update:modelValue\", v),\r\n });\r\n\r\n const uploadContext = computed(\r\n () => uploadContextCtx?.uploadContext || props.uploadContext\r\n );\r\n\r\n const handleUpload = async () => {\r\n try {\r\n \r\n const uploadResult = await unref(uploadContext).selectFile();\r\n \r\n if (uploadResult.success) {\r\n value.value = uploadResult.path || value.value;\r\n return;\r\n }\r\n\r\n ElMessage.error(uploadResult.msg);\r\n } catch (e) {\r\n console.error(e);\r\n ElMessage.error(\"网络异常\");\r\n }\r\n };\r\n\r\n return {\r\n handleUpload,\r\n };\r\n },\r\n render() {\r\n const { handleUpload, $slots } = this;\r\n\r\n return (\r\n <span class=\"mk-upload-file\" onClick={handleUpload}>\r\n {$slots.default?.()}\r\n </span>\r\n );\r\n },\r\n});\r\n\r\nexport const MKUploadFile = withInstall(_UploadFile);\r\n"],"names":["_UploadFile","defineComponent","name","props","uploadFileProps","emits","uploadFileEmits","setup","emit","uploadContextCtx","inject","UploadContextCtxKey","value","computed","get","modelValue","set","v","uploadContext","handleUpload","uploadResult","unref","selectFile","success","path","ElMessage","error","msg","e","console","render","$slots","_createVNode","default","MKUploadFile","withInstall"],"mappings":";;;;;;;;;;AAqBA,MAAMA,cAAcC,oBAAAA,gBAAgB;AAAA,EAClCC,MAAM;AAAA,EACNC,OAAOC,kBAAe;AAAA,EACtBC,OAAOC,kBAAe;AAAA,EACtBC,MAAMJ,OAAO;AAAA,IAAEK;AAAAA,EAAK,GAAG;AACrB,UAAMC,mBAAmBC,IAAAA,OAAOC,cAAmB,qBAAE,IAAI;AAEzD,UAAMC,QAAQC,IAAAA,SAAS;AAAA,MACrBC,KAAKA,MAAMX,MAAMY;AAAAA,MACjBC,KAAMC,OAAcT,KAAK,qBAAqBS,CAAC;AAAA,IACjD,CAAC;AAED,UAAMC,gBAAgBL,IAAAA,SACpB,OAAMJ,qDAAkBS,kBAAiBf,MAAMe,aACjD;AAEA,UAAMC,eAAe,YAAY;AAC/B,UAAI;AAEF,cAAMC,eAAe,MAAMC,IAAAA,MAAMH,aAAa,EAAEI,WAAU;AAE1D,YAAIF,aAAaG,SAAS;AACxBX,gBAAMA,QAAQQ,aAAaI,QAAQZ,MAAMA;AACzC;AAAA,QACF;AAEAa,oBAAAA,UAAUC,MAAMN,aAAaO,GAAG;AAAA,MACjC,SAAQC,GAAG;AACVC,gBAAQH,MAAME,CAAC;AACfH,8BAAUC,MAAM,MAAM;AAAA,MACxB;AAAA;AAGF,WAAO;AAAA,MACLP;AAAAA;EAEH;AAAA,EACDW,SAAS;;AACP,UAAM;AAAA,MAAEX;AAAAA,MAAcY;AAAAA,IAAQ,IAAG;AAEjC,WAAAC,IAAAA,YAAA,QAAA;AAAA,MAAA,SAAA;AAAA,MAAA,WACwCb;AAAAA,IAAY,GAAA,EAC/CY,YAAOE,YAAPF,+BAAkB,CAAA;AAAA,EAGzB;AACF,CAAC;MAEYG,eAAeC,MAAW,YAACnC,WAAW;;"}
1
+ {"version":3,"file":"upload-file.js","sources":["../../../../../src/components/basic/upload-file/upload-file.tsx"],"sourcesContent":["import { computed, defineComponent, inject, unref } from \"vue\";\r\nimport { uploadFileEmits, uploadFileProps } from \"./upload-file-options\";\r\nimport { ElMessage } from \"element-plus\";\r\nimport { UploadContextCtxKey } from \"./context\";\r\nimport { withInstall } from \"@maketribe/utils\";\r\n\r\n/**\r\n * 文件上传\r\n *\r\n * 文件上传在本后台中有两大分类\r\n * 1.直接上传文件\r\n * 2.使用素材库文件\r\n *\r\n * 文件上传的界面交互又会分为几种情况\r\n * 1.单文件上传(单文件上传,可能会根据。文件情况的不同,界面显示方式不一样)\r\n * 2.多文件上传(多文件上传基于单文件的逻辑,不过是会变成多个文件)\r\n *\r\n * 希望文件交互组件不需要用了解是直接上传文件或使用素材库。\r\n *\r\n */\r\n\r\nconst _UploadFile = defineComponent({\r\n name: \"MKUploadFile\",\r\n props: uploadFileProps,\r\n emits: uploadFileEmits,\r\n setup(props, { emit }) {\r\n const uploadContextCtx = inject(UploadContextCtxKey, null);\r\n\r\n const value = computed({\r\n get: () => props.modelValue as string,\r\n set: (v: string) => emit(\"update:modelValue\", v),\r\n });\r\n\r\n const uploadContext = computed(\r\n () => uploadContextCtx?.uploadContext || props.uploadContext\r\n );\r\n\r\n const handleUpload = async () => {\r\n try {\r\n\r\n const uploadResult = await unref(uploadContext).selectFile();\r\n\r\n if (uploadResult.success) {\r\n value.value = uploadResult.path || value.value;\r\n emit(\"getSelectFileName\", uploadResult.name || \"\");\r\n return;\r\n }\r\n\r\n ElMessage.error(uploadResult.msg);\r\n } catch (e) {\r\n console.error(e);\r\n ElMessage.error(\"网络异常\");\r\n }\r\n };\r\n\r\n return {\r\n handleUpload,\r\n };\r\n },\r\n render() {\r\n const { handleUpload, $slots } = this;\r\n\r\n return (\r\n <span class=\"mk-upload-file\" onClick={handleUpload}>\r\n {$slots.default?.()}\r\n </span>\r\n );\r\n },\r\n});\r\n\r\nexport const MKUploadFile = withInstall(_UploadFile);\r\n"],"names":["_UploadFile","defineComponent","name","props","uploadFileProps","emits","uploadFileEmits","setup","emit","uploadContextCtx","inject","UploadContextCtxKey","value","computed","get","modelValue","set","v","uploadContext","handleUpload","uploadResult","unref","selectFile","success","path","ElMessage","error","msg","e","console","render","$slots","_createVNode","default","MKUploadFile","withInstall"],"mappings":";;;;;;;;;;AAqBA,MAAMA,cAAcC,oBAAAA,gBAAgB;AAAA,EAClCC,MAAM;AAAA,EACNC,OAAOC,kBAAe;AAAA,EACtBC,OAAOC,kBAAe;AAAA,EACtBC,MAAMJ,OAAO;AAAA,IAAEK;AAAAA,EAAK,GAAG;AACrB,UAAMC,mBAAmBC,IAAAA,OAAOC,cAAmB,qBAAE,IAAI;AAEzD,UAAMC,QAAQC,IAAAA,SAAS;AAAA,MACrBC,KAAKA,MAAMX,MAAMY;AAAAA,MACjBC,KAAMC,OAAcT,KAAK,qBAAqBS,CAAC;AAAA,IACjD,CAAC;AAED,UAAMC,gBAAgBL,IAAAA,SACpB,OAAMJ,qDAAkBS,kBAAiBf,MAAMe,aACjD;AAEA,UAAMC,eAAe,YAAY;AAC/B,UAAI;AAEF,cAAMC,eAAe,MAAMC,IAAAA,MAAMH,aAAa,EAAEI,WAAU;AAE1D,YAAIF,aAAaG,SAAS;AACxBX,gBAAMA,QAAQQ,aAAaI,QAAQZ,MAAMA;AACzCJ,eAAK,qBAAqBY,aAAalB,QAAQ,EAAE;AACjD;AAAA,QACF;AAEAuB,oBAAAA,UAAUC,MAAMN,aAAaO,GAAG;AAAA,MACjC,SAAQC,GAAG;AACVC,gBAAQH,MAAME,CAAC;AACfH,8BAAUC,MAAM,MAAM;AAAA,MACxB;AAAA;AAGF,WAAO;AAAA,MACLP;AAAAA;EAEH;AAAA,EACDW,SAAS;;AACP,UAAM;AAAA,MAAEX;AAAAA,MAAcY;AAAAA,IAAQ,IAAG;AAEjC,WAAAC,IAAAA,YAAA,QAAA;AAAA,MAAA,SAAA;AAAA,MAAA,WACwCb;AAAAA,IAAY,GAAA,EAC/CY,YAAOE,YAAPF,+BAAkB,CAAA;AAAA,EAGzB;AACF,CAAC;MAEYG,eAAeC,MAAW,YAACnC,WAAW;;"}
@@ -19,6 +19,8 @@ require("@maketribe/utils");
19
19
  require("../../../../basic/upload-file/context/web-file-upload-context.js");
20
20
  require("../../../../basic/upload-file/context/web-file-upload-context-options.js");
21
21
  require("../../../../basic/upload-file/ui/upload-image/index.js");
22
+ require("../../../../basic/upload-file/ui/upload-file/index.js");
23
+ require("../../../../basic/upload-file/ui/upload-video/index.js");
22
24
  require("../../../../basic/upload-file/upload-file-options.js");
23
25
  require("../../../../basic/doc-editor/index.js");
24
26
  require("../../../../basic/copy-container/index.js");
@@ -1 +1 @@
1
- {"version":3,"file":"index.vue.js","sources":["../../../../../../../src/components/business/resource-list/components/resource-item/index.vue"],"sourcesContent":["<template>\r\n <div :class=\"['resource-item', resourceItem.isSelected ? 'is-selected' : '']\">\r\n <div class=\"resource-item__wrapper\">\r\n <div class=\"resource-item__main\">\r\n <MKSvgIcon :icon-class=\"iconClass\" />\r\n </div>\r\n <div class=\"resource-item__label\">\r\n <span :title=\"resourceItem.name\">{{ resourceItem.name }}</span>\r\n </div>\r\n <div class=\"resource-item__time\">\r\n <span>{{ resourceItem.lastModified }}</span>\r\n </div>\r\n <div class=\"resource-item__size\">\r\n <span v-if=\"resourceItem.isDirectory\"> - </span>\r\n <span v-else> {{ resourceItem.length > 1024 ?\r\n (resourceItem.length > 1024*1024 ? Math.ceil(resourceItem.length/1024/1024*100)/100+\" MB\":Math.ceil(resourceItem.length/1024*100)/100+\" KB\") \r\n : resourceItem.length+\" 字节\" }}</span>\r\n </div>\r\n </div>\r\n </div>\r\n</template>\r\n\r\n<script setup lang=\"ts\">\r\nimport { computed } from \"vue\";\r\nimport { MKSvgIcon } from \"../../../../basic\";\r\n\r\nconst props = defineProps({\r\n resourceItem: {\r\n type: Object,\r\n required: true,\r\n },\r\n});\r\n\r\nconst iconClass = computed(() => {\r\n if (props.resourceItem.isDirectory) {\r\n return \"wenjianjia\";\r\n }\r\n\r\n switch (props.resourceItem.extension) {\r\n case \".html\":\r\n return \"html\";\r\n case \".jpeg\":\r\n case \".jpg\":\r\n case \".png\":\r\n return \"image1\";\r\n case \".pdf\":\r\n return \"pdf\";\r\n case \".dll\":\r\n return \"dll\";\r\n }\r\n\r\n return \"weizhiwenjian\";\r\n});\r\n</script>\r\n"],"names":["computed"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA0BA,UAAM,QAAQ;AAOR,UAAA,YAAYA,IAAAA,SAAS,MAAM;AAC3B,UAAA,MAAM,aAAa,aAAa;AAC3B,eAAA;AAAA,MACT;AAEQ,cAAA,MAAM,aAAa,WAAW;AAAA,QACpC,KAAK;AACI,iBAAA;AAAA,QACT,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AACI,iBAAA;AAAA,QACT,KAAK;AACI,iBAAA;AAAA,QACT,KAAK;AACI,iBAAA;AAAA,MACX;AAEO,aAAA;AAAA,IAAA,CACR;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.vue.js","sources":["../../../../../../../src/components/business/resource-list/components/resource-item/index.vue"],"sourcesContent":["<template>\r\n <div :class=\"['resource-item', resourceItem.isSelected ? 'is-selected' : '']\">\r\n <div class=\"resource-item__wrapper\">\r\n <div class=\"resource-item__main\">\r\n <MKSvgIcon :icon-class=\"iconClass\" />\r\n </div>\r\n <div class=\"resource-item__label\">\r\n <span :title=\"resourceItem.name\">{{ resourceItem.name }}</span>\r\n </div>\r\n <div class=\"resource-item__time\">\r\n <span>{{ resourceItem.lastModified }}</span>\r\n </div>\r\n <div class=\"resource-item__size\">\r\n <span v-if=\"resourceItem.isDirectory\"> - </span>\r\n <span v-else> {{ resourceItem.length > 1024 ?\r\n (resourceItem.length > 1024*1024 ? Math.ceil(resourceItem.length/1024/1024*100)/100+\" MB\":Math.ceil(resourceItem.length/1024*100)/100+\" KB\") \r\n : resourceItem.length+\" 字节\" }}</span>\r\n </div>\r\n </div>\r\n </div>\r\n</template>\r\n\r\n<script setup lang=\"ts\">\r\nimport { computed } from \"vue\";\r\nimport { MKSvgIcon } from \"../../../../basic\";\r\n\r\nconst props = defineProps({\r\n resourceItem: {\r\n type: Object,\r\n required: true,\r\n },\r\n});\r\n\r\nconst iconClass = computed(() => {\r\n if (props.resourceItem.isDirectory) {\r\n return \"wenjianjia\";\r\n }\r\n\r\n switch (props.resourceItem.extension) {\r\n case \".html\":\r\n return \"html\";\r\n case \".jpeg\":\r\n case \".jpg\":\r\n case \".png\":\r\n return \"image1\";\r\n case \".pdf\":\r\n return \"pdf\";\r\n case \".dll\":\r\n return \"dll\";\r\n }\r\n\r\n return \"weizhiwenjian\";\r\n});\r\n</script>\r\n"],"names":["computed"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA0BA,UAAM,QAAQ;AAOR,UAAA,YAAYA,IAAAA,SAAS,MAAM;AAC3B,UAAA,MAAM,aAAa,aAAa;AAC3B,eAAA;AAAA,MACT;AAEQ,cAAA,MAAM,aAAa,WAAW;AAAA,QACpC,KAAK;AACI,iBAAA;AAAA,QACT,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AACI,iBAAA;AAAA,QACT,KAAK;AACI,iBAAA;AAAA,QACT,KAAK;AACI,iBAAA;AAAA,MACX;AAEO,aAAA;AAAA,IAAA,CACR;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -19,6 +19,8 @@ require("@maketribe/utils");
19
19
  require("../../basic/upload-file/context/web-file-upload-context.js");
20
20
  require("../../basic/upload-file/context/web-file-upload-context-options.js");
21
21
  require("../../basic/upload-file/ui/upload-image/index.js");
22
+ require("../../basic/upload-file/ui/upload-file/index.js");
23
+ require("../../basic/upload-file/ui/upload-video/index.js");
22
24
  require("../../basic/upload-file/upload-file-options.js");
23
25
  require("../../basic/doc-editor/index.js");
24
26
  require("../../basic/copy-container/index.js");
@@ -1 +1 @@
1
- {"version":3,"file":"resource-manager.vue.js","sources":["../../../../../src/components/business/resource-manager/resource-manager.vue"],"sourcesContent":["<template>\r\n <div v-loading=\"resourceManager.loading\" class=\"resource-manager\">\r\n <el-page-header style=\"background-color: #fff;padding: 10px;\" :icon=\"null\">\r\n <template #title>\r\n <h3 style=\"color: var(--el-text-color-regular); margin-left: 10px\">\r\n <MKSvgIcon iconClass=\"sucaiku\" style=\"margin-right: 5px\" />\r\n <span style=\"margin-left:10px\">{{props.title}}</span>\r\n </h3>\r\n </template>\r\n <template #extra>\r\n <ElButton\r\n v-if=\"selectResourceCount > 0\"\r\n type=\"danger\"\r\n @click=\"handleDeleteClick\"\r\n >\r\n 删除\r\n </ElButton>\r\n <ElButton\r\n v-if=\"\r\n selectResourceCount === 1 &&\r\n !resourceManager.selectResourceList[0].isDirectory\r\n \"\r\n @click=\"handleEdit\"\r\n >\r\n 编辑\r\n </ElButton>\r\n <ElButton\r\n v-if=\"\r\n selectResourceCount === 1 &&\r\n !resourceManager.selectResourceList[0].isDirectory\r\n \"\r\n @click=\"handleDownload()\"\r\n >\r\n 下载\r\n </ElButton>\r\n <!-- <ElButton type=\"primary\" @click=\"handleUploadClick\">上传</ElButton> -->\r\n <slot name=\"tools\"></slot>\r\n </template>\r\n </el-page-header>\r\n <MKResourceList :resourceManager=\"resourceManager\" @drop=\"handleDrop\" />\r\n </div>\r\n\r\n <ElDialog v-model=\"isShowEditDialog\" @close=\"handleEditDialogClose\">\r\n <MKCodeEditor\r\n v-if=\"isShowEditDialog\"\r\n v-model=\"resourceManager.currentEditText\"\r\n />\r\n <template #footer>\r\n <ElButton @click=\"handleEditDialogClose\">取消</ElButton>\r\n <ElButton\r\n type=\"primary\"\r\n v-loading=\"resourceManager.loading\"\r\n @click=\"handleEditDialogConfirm\"\r\n >\r\n 保存\r\n </ElButton>\r\n </template>\r\n </ElDialog>\r\n\r\n <ElDialog\r\n v-model=\"isShowConfirmDialog\"\r\n title=\"文件已存在\"\r\n @close=\"handleDialogCancelClick\"\r\n >\r\n <div v-for=\"path in existPathList\" :key=\"path\">{{ path }}</div>\r\n\r\n <template #footer>\r\n <ElButton type=\"danger\" @click=\"handleDialogOverrideClick\">覆盖</ElButton>\r\n <ElButton type=\"warning\" @click=\"handleDialogSkipClick\">跳过</ElButton>\r\n <ElButton @click=\"handleDialogCancelClick\">取消</ElButton>\r\n </template>\r\n </ElDialog>\r\n</template>\r\n\r\n<script setup lang=\"ts\">\r\nimport { onMounted, computed, unref, ref } from \"vue\";\r\nimport { ElButton, ElMessageBox, ElMessage, ElDialog } from \"element-plus\";\r\nimport { MKCodeEditor } from \"../../basic\";\r\nimport { MKResourceList, ResourceManager } from \"../resource-list\";\r\n\r\nconst props = defineProps({\r\n title:{type:String,default:\"\"},\r\n resourceManager: {\r\n type: ResourceManager,\r\n required: true,\r\n },\r\n});\r\n\r\nconst isShowConfirmDialog = ref(false);\r\n\r\nlet waitUploadFiles: File[] = [];\r\nconst existPathList = ref([] as string[]);\r\n\r\nconst resourceManager = computed(() => props.resourceManager);\r\n\r\nconst isShowEditDialog = computed(\r\n () => unref(resourceManager).isShowEditDialog\r\n);\r\n\r\nconst selectResourceCount = computed(\r\n () => unref(resourceManager).selectResourceList.length\r\n);\r\n\r\nconst handleDeleteClick = async () => {\r\n const isConfirm = await ElMessageBox.confirm(\"是否删除选中文件\", {\r\n type: \"warning\",\r\n }).then(\r\n () => true,\r\n () => false\r\n );\r\n\r\n if (!isConfirm) {\r\n return;\r\n }\r\n\r\n unref(resourceManager).deleteSelectResourceList();\r\n};\r\n\r\nconst handleEdit = () => {\r\n unref(resourceManager).editSelectFile();\r\n};\r\n\r\nconst handleEditDialogConfirm = () => {\r\n unref(resourceManager).saveEditFile();\r\n};\r\n\r\nconst handleEditDialogClose = () => {\r\n unref(resourceManager).isShowEditDialog = false;\r\n unref(resourceManager).currentEditText = \"\";\r\n};\r\n\r\n// const handleUploadClick = () => {\r\n// /** @type {HTMLInputElement} */\r\n// var input = document.createElement(\"input\");\r\n// input.type = \"file\";\r\n// input.multiple = true;\r\n\r\n// input.addEventListener(\"change\", () => {\r\n// var files = new Array(input.files!.length)\r\n// .fill(0)\r\n// .map((_, i) => input.files![i]);\r\n\r\n// unref(resourceManager).uploadResourceList(files);\r\n// });\r\n\r\n// input.click();\r\n// };\r\n\r\nconst handleDownload = () => {\r\n unref(resourceManager).downloadSelectResource();\r\n};\r\n\r\nconst handleDrop = async (event: DragEvent) => {\r\n waitUploadFiles = [];\r\n\r\n var _items = event.dataTransfer?.items;\r\n\r\n var fileSystemEntry = _items![0].webkitGetAsEntry() as any;\r\n\r\n const internalProcess = async (item: any, path: string = \"\") => {\r\n if (item.isFile) {\r\n return [\r\n await new Promise((resolve) => {\r\n item.file((file: File) => {\r\n resolve(\r\n new File([file], `${path}${file.name}`, { type: file.type })\r\n );\r\n });\r\n }),\r\n ] as File[];\r\n } else if (item.isDirectory) {\r\n var directoryReader = item.createReader();\r\n\r\n const entries = (await new Promise((resolve) => {\r\n directoryReader.readEntries(resolve);\r\n })) as any[];\r\n\r\n var result: File[] = [];\r\n\r\n for (let i = 0; i < entries.length; i++) {\r\n result = result.concat(\r\n await internalProcess(entries[i], `${path}${item.name}/`)\r\n );\r\n }\r\n\r\n return result;\r\n }\r\n\r\n return [];\r\n };\r\n\r\n const files = (waitUploadFiles = await internalProcess(fileSystemEntry));\r\n\r\n try {\r\n unref(resourceManager).loadingManager.startLoading();\r\n\r\n const checkResponse = await unref(resourceManager).getExistPathList(\r\n files.map((file) => file.name)\r\n );\r\n\r\n if (checkResponse.data.code !== 200) {\r\n ElMessage.error({ message: checkResponse.data.msg });\r\n return;\r\n }\r\n\r\n if (checkResponse.data.data?.length === 0) {\r\n await unref(resourceManager).uploadResourceList(files);\r\n\r\n waitUploadFiles = [];\r\n return;\r\n }\r\n existPathList.value = checkResponse.data.data ?? [];\r\n\r\n isShowConfirmDialog.value = true;\r\n } catch (e) {\r\n console.log(e);\r\n ElMessage.error(\"网络异常,上传失败\");\r\n } finally {\r\n unref(resourceManager).loadingManager.completeLoading();\r\n }\r\n};\r\n\r\nconst handleDialogOverrideClick = async () => {\r\n try {\r\n await unref(resourceManager).uploadResourceList(waitUploadFiles);\r\n } catch (e) {\r\n console.log(e);\r\n ElMessage.error(\"网络异常,上传失败\");\r\n }\r\n\r\n handleDialogCancelClick();\r\n};\r\n\r\nconst handleDialogSkipClick = async () => {\r\n try {\r\n const files = waitUploadFiles.filter(\r\n (file) => !unref(existPathList).includes(file.name)\r\n );\r\n if (files.length) {\r\n await unref(resourceManager).uploadResourceList(files);\r\n }\r\n } catch (e) {\r\n console.log(e);\r\n ElMessage.error(\"网络异常,上传失败\");\r\n }\r\n\r\n handleDialogCancelClick();\r\n};\r\n\r\nconst handleDialogCancelClick = () => {\r\n isShowConfirmDialog.value = false;\r\n existPathList.value = [];\r\n waitUploadFiles = [];\r\n};\r\n\r\nonMounted(() => {\r\n unref(resourceManager).loadResourceInfoList();\r\n});\r\n</script>\r\n"],"names":["ref","computed","unref","ElMessageBox","ElMessage","onMounted"],"mappings":"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"}
1
+ {"version":3,"file":"resource-manager.vue.js","sources":["../../../../../src/components/business/resource-manager/resource-manager.vue"],"sourcesContent":["<template>\r\n <div v-loading=\"resourceManager.loading\" class=\"resource-manager\">\r\n <el-page-header style=\"background-color: #fff;padding: 10px;\" :icon=\"null\">\r\n <template #title>\r\n <h3 style=\"color: var(--el-text-color-regular); margin-left: 10px\">\r\n <MKSvgIcon iconClass=\"sucaiku\" style=\"margin-right: 5px\" />\r\n <span style=\"margin-left:10px\">{{props.title}}</span>\r\n </h3>\r\n </template>\r\n <template #extra>\r\n <ElButton\r\n v-if=\"selectResourceCount > 0\"\r\n type=\"danger\"\r\n @click=\"handleDeleteClick\"\r\n >\r\n 删除\r\n </ElButton>\r\n <ElButton\r\n v-if=\"\r\n selectResourceCount === 1 &&\r\n !resourceManager.selectResourceList[0].isDirectory\r\n \"\r\n @click=\"handleEdit\"\r\n >\r\n 编辑\r\n </ElButton>\r\n <ElButton\r\n v-if=\"\r\n selectResourceCount === 1 &&\r\n !resourceManager.selectResourceList[0].isDirectory\r\n \"\r\n @click=\"handleDownload()\"\r\n >\r\n 下载\r\n </ElButton>\r\n <!-- <ElButton type=\"primary\" @click=\"handleUploadClick\">上传</ElButton> -->\r\n <slot name=\"tools\"></slot>\r\n </template>\r\n </el-page-header>\r\n <MKResourceList :resourceManager=\"resourceManager\" @drop=\"handleDrop\" />\r\n </div>\r\n\r\n <ElDialog v-model=\"isShowEditDialog\" @close=\"handleEditDialogClose\">\r\n <MKCodeEditor\r\n v-if=\"isShowEditDialog\"\r\n v-model=\"resourceManager.currentEditText\"\r\n />\r\n <template #footer>\r\n <ElButton @click=\"handleEditDialogClose\">取消</ElButton>\r\n <ElButton\r\n type=\"primary\"\r\n v-loading=\"resourceManager.loading\"\r\n @click=\"handleEditDialogConfirm\"\r\n >\r\n 保存\r\n </ElButton>\r\n </template>\r\n </ElDialog>\r\n\r\n <ElDialog\r\n v-model=\"isShowConfirmDialog\"\r\n title=\"文件已存在\"\r\n @close=\"handleDialogCancelClick\"\r\n >\r\n <div v-for=\"path in existPathList\" :key=\"path\">{{ path }}</div>\r\n\r\n <template #footer>\r\n <ElButton type=\"danger\" @click=\"handleDialogOverrideClick\">覆盖</ElButton>\r\n <ElButton type=\"warning\" @click=\"handleDialogSkipClick\">跳过</ElButton>\r\n <ElButton @click=\"handleDialogCancelClick\">取消</ElButton>\r\n </template>\r\n </ElDialog>\r\n</template>\r\n\r\n<script setup lang=\"ts\">\r\nimport { onMounted, computed, unref, ref } from \"vue\";\r\nimport { ElButton, ElMessageBox, ElMessage, ElDialog } from \"element-plus\";\r\nimport { MKCodeEditor } from \"../../basic\";\r\nimport { MKResourceList, ResourceManager } from \"../resource-list\";\r\n\r\nconst props = defineProps({\r\n title:{type:String,default:\"\"},\r\n resourceManager: {\r\n type: ResourceManager,\r\n required: true,\r\n },\r\n});\r\n\r\nconst isShowConfirmDialog = ref(false);\r\n\r\nlet waitUploadFiles: File[] = [];\r\nconst existPathList = ref([] as string[]);\r\n\r\nconst resourceManager = computed(() => props.resourceManager);\r\n\r\nconst isShowEditDialog = computed(\r\n () => unref(resourceManager).isShowEditDialog\r\n);\r\n\r\nconst selectResourceCount = computed(\r\n () => unref(resourceManager).selectResourceList.length\r\n);\r\n\r\nconst handleDeleteClick = async () => {\r\n const isConfirm = await ElMessageBox.confirm(\"是否删除选中文件\", {\r\n type: \"warning\",\r\n }).then(\r\n () => true,\r\n () => false\r\n );\r\n\r\n if (!isConfirm) {\r\n return;\r\n }\r\n\r\n unref(resourceManager).deleteSelectResourceList();\r\n};\r\n\r\nconst handleEdit = () => {\r\n unref(resourceManager).editSelectFile();\r\n};\r\n\r\nconst handleEditDialogConfirm = () => {\r\n unref(resourceManager).saveEditFile();\r\n};\r\n\r\nconst handleEditDialogClose = () => {\r\n unref(resourceManager).isShowEditDialog = false;\r\n unref(resourceManager).currentEditText = \"\";\r\n};\r\n\r\n// const handleUploadClick = () => {\r\n// /** @type {HTMLInputElement} */\r\n// var input = document.createElement(\"input\");\r\n// input.type = \"file\";\r\n// input.multiple = true;\r\n\r\n// input.addEventListener(\"change\", () => {\r\n// var files = new Array(input.files!.length)\r\n// .fill(0)\r\n// .map((_, i) => input.files![i]);\r\n\r\n// unref(resourceManager).uploadResourceList(files);\r\n// });\r\n\r\n// input.click();\r\n// };\r\n\r\nconst handleDownload = () => {\r\n unref(resourceManager).downloadSelectResource();\r\n};\r\n\r\nconst handleDrop = async (event: DragEvent) => {\r\n waitUploadFiles = [];\r\n\r\n var _items = event.dataTransfer?.items;\r\n\r\n var fileSystemEntry = _items![0].webkitGetAsEntry() as any;\r\n\r\n const internalProcess = async (item: any, path: string = \"\") => {\r\n if (item.isFile) {\r\n return [\r\n await new Promise((resolve) => {\r\n item.file((file: File) => {\r\n resolve(\r\n new File([file], `${path}${file.name}`, { type: file.type })\r\n );\r\n });\r\n }),\r\n ] as File[];\r\n } else if (item.isDirectory) {\r\n var directoryReader = item.createReader();\r\n\r\n const entries = (await new Promise((resolve) => {\r\n directoryReader.readEntries(resolve);\r\n })) as any[];\r\n\r\n var result: File[] = [];\r\n\r\n for (let i = 0; i < entries.length; i++) {\r\n result = result.concat(\r\n await internalProcess(entries[i], `${path}${item.name}/`)\r\n );\r\n }\r\n\r\n return result;\r\n }\r\n\r\n return [];\r\n };\r\n\r\n const files = (waitUploadFiles = await internalProcess(fileSystemEntry));\r\n\r\n try {\r\n unref(resourceManager).loadingManager.startLoading();\r\n\r\n const checkResponse = await unref(resourceManager).getExistPathList(\r\n files.map((file) => file.name)\r\n );\r\n\r\n if (checkResponse.data.code !== 200) {\r\n ElMessage.error({ message: checkResponse.data.msg });\r\n return;\r\n }\r\n\r\n if (checkResponse.data.data?.length === 0) {\r\n await unref(resourceManager).uploadResourceList(files);\r\n\r\n waitUploadFiles = [];\r\n return;\r\n }\r\n existPathList.value = checkResponse.data.data ?? [];\r\n\r\n isShowConfirmDialog.value = true;\r\n } catch (e) {\r\n console.log(e);\r\n ElMessage.error(\"网络异常,上传失败\");\r\n } finally {\r\n unref(resourceManager).loadingManager.completeLoading();\r\n }\r\n};\r\n\r\nconst handleDialogOverrideClick = async () => {\r\n try {\r\n await unref(resourceManager).uploadResourceList(waitUploadFiles);\r\n } catch (e) {\r\n console.log(e);\r\n ElMessage.error(\"网络异常,上传失败\");\r\n }\r\n\r\n handleDialogCancelClick();\r\n};\r\n\r\nconst handleDialogSkipClick = async () => {\r\n try {\r\n const files = waitUploadFiles.filter(\r\n (file) => !unref(existPathList).includes(file.name)\r\n );\r\n if (files.length) {\r\n await unref(resourceManager).uploadResourceList(files);\r\n }\r\n } catch (e) {\r\n console.log(e);\r\n ElMessage.error(\"网络异常,上传失败\");\r\n }\r\n\r\n handleDialogCancelClick();\r\n};\r\n\r\nconst handleDialogCancelClick = () => {\r\n isShowConfirmDialog.value = false;\r\n existPathList.value = [];\r\n waitUploadFiles = [];\r\n};\r\n\r\nonMounted(() => {\r\n unref(resourceManager).loadResourceInfoList();\r\n});\r\n</script>\r\n"],"names":["ref","computed","unref","ElMessageBox","ElMessage","onMounted"],"mappings":"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"}
@@ -20,6 +20,8 @@ require("@maketribe/utils");
20
20
  require("../../../../basic/upload-file/context/web-file-upload-context.js");
21
21
  require("../../../../basic/upload-file/context/web-file-upload-context-options.js");
22
22
  require("../../../../basic/upload-file/ui/upload-image/index.js");
23
+ require("../../../../basic/upload-file/ui/upload-file/index.js");
24
+ require("../../../../basic/upload-file/ui/upload-video/index.js");
23
25
  require("../../../../basic/upload-file/upload-file-options.js");
24
26
  require("../../../../basic/doc-editor/index.js");
25
27
  require("../../../../basic/copy-container/index.js");
@@ -1 +1 @@
1
- {"version":3,"file":"column-sort.js","sources":["../../../../../../../src/components/data-model/data-table/components/column-sort/column-sort.tsx"],"sourcesContent":["import { defineComponent } from \"vue\";\r\nimport { columnSortProps } from \"./column-sort-options\";\r\nimport { MKSvgIcon } from \"../../../../basic\";\r\nimport { ElTooltip } from \"element-plus\";\r\n\r\nexport default defineComponent({\r\n name: \"MKColumnSort\",\r\n props: columnSortProps,\r\n setup(props) {\r\n return () => {\r\n let children = null;\r\n\r\n if (props.drag) {\r\n children = (\r\n <span class=\"mk-column-sort__drag\">\r\n <MKSvgIcon iconClass=\"sort\" />\r\n </span>\r\n );\r\n } else {\r\n children = (\r\n <span class=\"mk-column-sort__switch\">\r\n <ElTooltip content=\"置顶\" placement=\"top\">\r\n <MKSvgIcon iconClass=\"top\" />\r\n </ElTooltip>\r\n <ElTooltip content=\"上移\" placement=\"top\">\r\n <MKSvgIcon iconClass=\"up\" />\r\n </ElTooltip>\r\n <ElTooltip content=\"下移\" placement=\"top\">\r\n <MKSvgIcon iconClass=\"down\" />\r\n </ElTooltip>\r\n <ElTooltip content=\"置底\" placement=\"top\">\r\n <MKSvgIcon iconClass=\"bottom\" />\r\n </ElTooltip>\r\n </span>\r\n );\r\n }\r\n\r\n return <span class=\"mk-column-sort\">{children}</span>;\r\n };\r\n },\r\n});\r\n"],"names":["defineComponent","name","props","columnSortProps","setup","children","drag","_createVNode","MKSvgIcon","ElTooltip","default"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAKA,MAAeA,iDAAgB;AAAA,EAC7BC,MAAM;AAAA,EACNC,OAAOC,kBAAe;AAAA,EACtBC,MAAMF,OAAO;AACX,WAAO,MAAM;AACX,UAAIG,WAAW;AAEf,UAAIH,MAAMI,MAAM;AACdD,mBAAQE,IAAA,YAAA,QAAA;AAAA,UAAA,SAAA;AAAA,WAAAA,CAAAA,IAAA,YAAAC,iBAAA;AAAA,UAAA,aAAA;AAAA,WAIP,IAAA,CAAA,CAAA;AAAA,MACH,OAAO;AACLH,mBAAQE,IAAA,YAAA,QAAA;AAAA,UAAA,SAAA;AAAA,WAAAA,CAAAA,IAAA,YAAAE,uBAAA;AAAA,UAAA,WAAA;AAAA,UAAA,aAAA;AAAA,QAAA,GAAA;AAAA,UAAAC,SAAAA,MAAAH,CAAAA,IAAA,YAAAC,iBAAA;AAAA,YAAA,aAAA;AAAA,UAAA,GAAA,IAAA,CAAA;AAAA,SAAAD,GAAAA,IAAA,YAAAE,uBAAA;AAAA,UAAA,WAAA;AAAA,UAAA,aAAA;AAAA,QAAA,GAAA;AAAA,UAAAC,SAAAA,MAAAH,CAAAA,IAAA,YAAAC,iBAAA;AAAA,YAAA,aAAA;AAAA,UAAA,GAAA,IAAA,CAAA;AAAA,SAAAD,GAAAA,IAAA,YAAAE,uBAAA;AAAA,UAAA,WAAA;AAAA,UAAA,aAAA;AAAA,QAAA,GAAA;AAAA,UAAAC,SAAAA,MAAAH,CAAAA,IAAA,YAAAC,iBAAA;AAAA,YAAA,aAAA;AAAA,UAAA,GAAA,IAAA,CAAA;AAAA,SAAAD,GAAAA,IAAA,YAAAE,uBAAA;AAAA,UAAA,WAAA;AAAA,UAAA,aAAA;AAAA,QAAA,GAAA;AAAA,UAAAC,SAAAA,MAAAH,CAAAA,IAAA,YAAAC,iBAAA;AAAA,YAAA,aAAA;AAAA,UAAA,GAAA,IAAA,CAAA;AAAA,QAeP,CAAA,CAAA,CAAA;AAAA,MACH;AAEA,aAAAD,IAAAA,YAAA,QAAA;AAAA,QAAA,SAAA;AAAA,MAAA,GAAA,CAAqCF,QAAQ,CAAA;AAAA;EAEjD;AACF,CAAC;;"}
1
+ {"version":3,"file":"column-sort.js","sources":["../../../../../../../src/components/data-model/data-table/components/column-sort/column-sort.tsx"],"sourcesContent":["import { defineComponent } from \"vue\";\r\nimport { columnSortProps } from \"./column-sort-options\";\r\nimport { MKSvgIcon } from \"../../../../basic\";\r\nimport { ElTooltip } from \"element-plus\";\r\n\r\nexport default defineComponent({\r\n name: \"MKColumnSort\",\r\n props: columnSortProps,\r\n setup(props) {\r\n return () => {\r\n let children = null;\r\n\r\n if (props.drag) {\r\n children = (\r\n <span class=\"mk-column-sort__drag\">\r\n <MKSvgIcon iconClass=\"sort\" />\r\n </span>\r\n );\r\n } else {\r\n children = (\r\n <span class=\"mk-column-sort__switch\">\r\n <ElTooltip content=\"置顶\" placement=\"top\">\r\n <MKSvgIcon iconClass=\"top\" />\r\n </ElTooltip>\r\n <ElTooltip content=\"上移\" placement=\"top\">\r\n <MKSvgIcon iconClass=\"up\" />\r\n </ElTooltip>\r\n <ElTooltip content=\"下移\" placement=\"top\">\r\n <MKSvgIcon iconClass=\"down\" />\r\n </ElTooltip>\r\n <ElTooltip content=\"置底\" placement=\"top\">\r\n <MKSvgIcon iconClass=\"bottom\" />\r\n </ElTooltip>\r\n </span>\r\n );\r\n }\r\n\r\n return <span class=\"mk-column-sort\">{children}</span>;\r\n };\r\n },\r\n});\r\n"],"names":["defineComponent","name","props","columnSortProps","setup","children","drag","_createVNode","MKSvgIcon","ElTooltip","default"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAKA,MAAeA,iDAAgB;AAAA,EAC7BC,MAAM;AAAA,EACNC,OAAOC,kBAAe;AAAA,EACtBC,MAAMF,OAAO;AACX,WAAO,MAAM;AACX,UAAIG,WAAW;AAEf,UAAIH,MAAMI,MAAM;AACdD,mBAAQE,IAAA,YAAA,QAAA;AAAA,UAAA,SAAA;AAAA,WAAAA,CAAAA,IAAA,YAAAC,iBAAA;AAAA,UAAA,aAAA;AAAA,WAIP,IAAA,CAAA,CAAA;AAAA,MACH,OAAO;AACLH,mBAAQE,IAAA,YAAA,QAAA;AAAA,UAAA,SAAA;AAAA,WAAAA,CAAAA,IAAA,YAAAE,uBAAA;AAAA,UAAA,WAAA;AAAA,UAAA,aAAA;AAAA,QAAA,GAAA;AAAA,UAAAC,SAAAA,MAAAH,CAAAA,IAAA,YAAAC,iBAAA;AAAA,YAAA,aAAA;AAAA,UAAA,GAAA,IAAA,CAAA;AAAA,SAAAD,GAAAA,IAAA,YAAAE,uBAAA;AAAA,UAAA,WAAA;AAAA,UAAA,aAAA;AAAA,QAAA,GAAA;AAAA,UAAAC,SAAAA,MAAAH,CAAAA,IAAA,YAAAC,iBAAA;AAAA,YAAA,aAAA;AAAA,UAAA,GAAA,IAAA,CAAA;AAAA,SAAAD,GAAAA,IAAA,YAAAE,uBAAA;AAAA,UAAA,WAAA;AAAA,UAAA,aAAA;AAAA,QAAA,GAAA;AAAA,UAAAC,SAAAA,MAAAH,CAAAA,IAAA,YAAAC,iBAAA;AAAA,YAAA,aAAA;AAAA,UAAA,GAAA,IAAA,CAAA;AAAA,SAAAD,GAAAA,IAAA,YAAAE,uBAAA;AAAA,UAAA,WAAA;AAAA,UAAA,aAAA;AAAA,QAAA,GAAA;AAAA,UAAAC,SAAAA,MAAAH,CAAAA,IAAA,YAAAC,iBAAA;AAAA,YAAA,aAAA;AAAA,UAAA,GAAA,IAAA,CAAA;AAAA,QAeP,CAAA,CAAA,CAAA;AAAA,MACH;AAEA,aAAAD,IAAAA,YAAA,QAAA;AAAA,QAAA,SAAA;AAAA,MAAA,GAAA,CAAqCF,QAAQ,CAAA;AAAA;EAEjD;AACF,CAAC;;"}
@@ -19,6 +19,8 @@ require("@maketribe/utils");
19
19
  require("../../../../../basic/upload-file/context/web-file-upload-context.js");
20
20
  require("../../../../../basic/upload-file/context/web-file-upload-context-options.js");
21
21
  require("../../../../../basic/upload-file/ui/upload-image/index.js");
22
+ require("../../../../../basic/upload-file/ui/upload-file/index.js");
23
+ require("../../../../../basic/upload-file/ui/upload-video/index.js");
22
24
  require("../../../../../basic/upload-file/upload-file-options.js");
23
25
  require("../../../../../basic/doc-editor/index.js");
24
26
  require("../../../../../basic/copy-container/index.js");
@@ -1 +1 @@
1
- {"version":3,"file":"batch-opt.js","sources":["../../../../../../../../src/components/data-model/data-table/components/header-components/batch-opt/batch-opt.tsx"],"sourcesContent":["import { computed, defineComponent, inject, unref } from \"vue\";\r\nimport { ElDropdown, ElDropdownItem, ElDropdownMenu } from \"element-plus\";\r\nimport { MKSvgIcon } from \"../../../../../basic\";\r\nimport { DATA_TABLE_CONTEXT_KEY } from \"../../../token\";\r\nimport { Dialoger, Messager } from \"@maketribe/dm\";\r\n\r\nexport default defineComponent({\r\n name: \"MKBatchOpt\",\r\n setup(props) {\r\n const dataTable = inject(DATA_TABLE_CONTEXT_KEY)?.dataTable!;\r\n\r\n var disallowBatchOpt = computed(\r\n () => (dataTable?.getSelection().length ?? 0) === 0\r\n );\r\n\r\n const handleExport = (...args: any[]) => {\r\n dataTable.exportData();\r\n };\r\n\r\n const handleBatchDelete = async () => {\r\n const isConfirm = await Dialoger.confirm({\r\n message: \"是否删除选中项\",\r\n type: \"warning\",\r\n title: \"批量删除\",\r\n });\r\n\r\n if (!isConfirm) {\r\n return;\r\n }\r\n\r\n const response = await dataTable.batchDelete(dataTable.getSelection());\r\n\r\n if (response.data.code !== 200) {\r\n Messager.error({ message: response.data.msg });\r\n return;\r\n }\r\n\r\n dataTable.load();\r\n };\r\n\r\n return () => {\r\n return (\r\n <ElDropdown\r\n onClick={handleExport}\r\n splitButton\r\n v-slots={{\r\n dropdown: () => {\r\n return (\r\n <ElDropdownMenu>\r\n <ElDropdownItem\r\n disabled={unref(disallowBatchOpt)}\r\n onClick={handleBatchDelete}\r\n >\r\n <MKSvgIcon iconClass=\"Delete\" /> 批量删除\r\n </ElDropdownItem>\r\n </ElDropdownMenu>\r\n );\r\n },\r\n }}\r\n >\r\n <MKSvgIcon iconClass=\"Download\" />\r\n </ElDropdown>\r\n );\r\n };\r\n },\r\n});\r\n"],"names":["defineComponent","name","setup","props","dataTable","inject","DATA_TABLE_CONTEXT_KEY","disallowBatchOpt","computed","getSelection","length","handleExport","args","exportData","handleBatchDelete","isConfirm","Dialoger","confirm","message","type","title","response","batchDelete","data","code","Messager","error","msg","load","_createVNode","ElDropdown","default","MKSvgIcon","dropdown","ElDropdownMenu","ElDropdownItem","unref","_createTextVNode"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAMA,MAAeA,+CAAgB;AAAA,EAC7BC,MAAM;AAAA,EACNC,MAAMC,OAAO;;AACX,UAAMC,aAAYC,SAAAA,OAAOC,MAAsB,sBAAA,MAA7BD,mBAAgCD;AAElD,QAAIG,mBAAmBC,aACrB,QAAOJ,uCAAWK,eAAeC,WAAU,OAAO,CACpD;AAEA,UAAMC,eAAeA,IAAIC,SAAgB;AACvCR,gBAAUS,WAAU;AAAA;AAGtB,UAAMC,oBAAoB,YAAY;AACpC,YAAMC,YAAY,MAAMC,GAAQ,SAACC,QAAQ;AAAA,QACvCC,SAAS;AAAA,QACTC,MAAM;AAAA,QACNC,OAAO;AAAA,MACT,CAAC;AAED,UAAI,CAACL,WAAW;AACd;AAAA,MACF;AAEA,YAAMM,WAAW,MAAMjB,UAAUkB,YAAYlB,UAAUK,aAAY,CAAE;AAErE,UAAIY,SAASE,KAAKC,SAAS,KAAK;AAC9BC,WAAAA,SAASC,MAAM;AAAA,UAAER,SAASG,SAASE,KAAKI;AAAAA,QAAI,CAAC;AAC7C;AAAA,MACF;AAEAvB,gBAAUwB,KAAI;AAAA;AAGhB,WAAO,MAAM;AACX,aAAAC,IAAAA,YAAAC,YAAAA,YAAA;AAAA,QAAA,WAEanB;AAAAA,QAAY,eAAA;AAAA,MAAA,GAAA;AAAA,QAAAoB,SAAAA,MAAAF,CAAAA,IAAA,YAAAG,iBAAA;AAAA,UAAA,aAAA;AAAA,QAAA,GAAA,IAAA,CAAA;AAAA,QAGnBC,UAAUA,MAAM;AACd,iBAAAJ,IAAA,YAAAK,YAAA,gBAAA,MAAA;AAAA,YAAAH,SAAAA,MAAAF,CAAAA,IAAA,YAAAM,4BAAA;AAAA,cAAA,YAGgBC,IAAK,MAAC7B,gBAAgB;AAAA,cAAC,WACxBO;AAAAA,YAAiB,GAAA;AAAA,cAAAiB,SAAAA,MAAAF,CAAAA,IAAA,YAAAG,iBAAA;AAAA,gBAAA,aAAA;AAAA,cAAA,GAAA,IAAA,GAAAK,oBAAA,OAAA,CAAA;AAAA,YAAA,CAAA,CAAA;AAAA,UAAA,CAAA;AAAA,QAMlC;AAAA,MAAC,CAAA;AAAA;EAOX;AACF,CAAC;;"}
1
+ {"version":3,"file":"batch-opt.js","sources":["../../../../../../../../src/components/data-model/data-table/components/header-components/batch-opt/batch-opt.tsx"],"sourcesContent":["import { computed, defineComponent, inject, unref } from \"vue\";\r\nimport { ElDropdown, ElDropdownItem, ElDropdownMenu } from \"element-plus\";\r\nimport { MKSvgIcon } from \"../../../../../basic\";\r\nimport { DATA_TABLE_CONTEXT_KEY } from \"../../../token\";\r\nimport { Dialoger, Messager } from \"@maketribe/dm\";\r\n\r\nexport default defineComponent({\r\n name: \"MKBatchOpt\",\r\n setup(props) {\r\n const dataTable = inject(DATA_TABLE_CONTEXT_KEY)?.dataTable!;\r\n\r\n var disallowBatchOpt = computed(\r\n () => (dataTable?.getSelection().length ?? 0) === 0\r\n );\r\n\r\n const handleExport = (...args: any[]) => {\r\n dataTable.exportData();\r\n };\r\n\r\n const handleBatchDelete = async () => {\r\n const isConfirm = await Dialoger.confirm({\r\n message: \"是否删除选中项\",\r\n type: \"warning\",\r\n title: \"批量删除\",\r\n });\r\n\r\n if (!isConfirm) {\r\n return;\r\n }\r\n\r\n const response = await dataTable.batchDelete(dataTable.getSelection());\r\n\r\n if (response.data.code !== 200) {\r\n Messager.error({ message: response.data.msg });\r\n return;\r\n }\r\n\r\n dataTable.load();\r\n };\r\n\r\n return () => {\r\n return (\r\n <ElDropdown\r\n onClick={handleExport}\r\n splitButton\r\n v-slots={{\r\n dropdown: () => {\r\n return (\r\n <ElDropdownMenu>\r\n <ElDropdownItem\r\n disabled={unref(disallowBatchOpt)}\r\n onClick={handleBatchDelete}\r\n >\r\n <MKSvgIcon iconClass=\"Delete\" /> 批量删除\r\n </ElDropdownItem>\r\n </ElDropdownMenu>\r\n );\r\n },\r\n }}\r\n >\r\n <MKSvgIcon iconClass=\"Download\" />\r\n </ElDropdown>\r\n );\r\n };\r\n },\r\n});\r\n"],"names":["defineComponent","name","setup","props","dataTable","inject","DATA_TABLE_CONTEXT_KEY","disallowBatchOpt","computed","getSelection","length","handleExport","args","exportData","handleBatchDelete","isConfirm","Dialoger","confirm","message","type","title","response","batchDelete","data","code","Messager","error","msg","load","_createVNode","ElDropdown","default","MKSvgIcon","dropdown","ElDropdownMenu","ElDropdownItem","unref","_createTextVNode"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAMA,MAAeA,+CAAgB;AAAA,EAC7BC,MAAM;AAAA,EACNC,MAAMC,OAAO;;AACX,UAAMC,aAAYC,SAAAA,OAAOC,MAAsB,sBAAA,MAA7BD,mBAAgCD;AAElD,QAAIG,mBAAmBC,aACrB,QAAOJ,uCAAWK,eAAeC,WAAU,OAAO,CACpD;AAEA,UAAMC,eAAeA,IAAIC,SAAgB;AACvCR,gBAAUS,WAAU;AAAA;AAGtB,UAAMC,oBAAoB,YAAY;AACpC,YAAMC,YAAY,MAAMC,GAAQ,SAACC,QAAQ;AAAA,QACvCC,SAAS;AAAA,QACTC,MAAM;AAAA,QACNC,OAAO;AAAA,MACT,CAAC;AAED,UAAI,CAACL,WAAW;AACd;AAAA,MACF;AAEA,YAAMM,WAAW,MAAMjB,UAAUkB,YAAYlB,UAAUK,aAAY,CAAE;AAErE,UAAIY,SAASE,KAAKC,SAAS,KAAK;AAC9BC,WAAAA,SAASC,MAAM;AAAA,UAAER,SAASG,SAASE,KAAKI;AAAAA,QAAI,CAAC;AAC7C;AAAA,MACF;AAEAvB,gBAAUwB,KAAI;AAAA;AAGhB,WAAO,MAAM;AACX,aAAAC,IAAAA,YAAAC,YAAAA,YAAA;AAAA,QAAA,WAEanB;AAAAA,QAAY,eAAA;AAAA,MAAA,GAAA;AAAA,QAAAoB,SAAAA,MAAAF,CAAAA,IAAA,YAAAG,iBAAA;AAAA,UAAA,aAAA;AAAA,QAAA,GAAA,IAAA,CAAA;AAAA,QAGnBC,UAAUA,MAAM;AACd,iBAAAJ,IAAA,YAAAK,YAAA,gBAAA,MAAA;AAAA,YAAAH,SAAAA,MAAAF,CAAAA,IAAA,YAAAM,4BAAA;AAAA,cAAA,YAGgBC,IAAK,MAAC7B,gBAAgB;AAAA,cAAC,WACxBO;AAAAA,YAAiB,GAAA;AAAA,cAAAiB,SAAAA,MAAAF,CAAAA,IAAA,YAAAG,iBAAA;AAAA,gBAAA,aAAA;AAAA,cAAA,GAAA,IAAA,GAAAK,oBAAA,OAAA,CAAA;AAAA,YAAA,CAAA,CAAA;AAAA,UAAA,CAAA;AAAA,QAMlC;AAAA,MAAC,CAAA;AAAA;EAOX;AACF,CAAC;;"}
@@ -23,6 +23,8 @@ require("@maketribe/utils");
23
23
  require("../../../../../basic/upload-file/context/web-file-upload-context.js");
24
24
  require("../../../../../basic/upload-file/context/web-file-upload-context-options.js");
25
25
  require("../../../../../basic/upload-file/ui/upload-image/index.js");
26
+ require("../../../../../basic/upload-file/ui/upload-file/index.js");
27
+ require("../../../../../basic/upload-file/ui/upload-video/index.js");
26
28
  require("../../../../../basic/upload-file/upload-file-options.js");
27
29
  require("../../../../../basic/doc-editor/index.js");
28
30
  require("../../../../../basic/copy-container/index.js");
@@ -1 +1 @@
1
- {"version":3,"file":"table-filter.js","sources":["../../../../../../../../src/components/data-model/data-table/components/header-components/table-filter/table-filter.tsx"],"sourcesContent":["import { defineComponent, inject, computed, unref, watch, ref } from \"vue\";\r\nimport { ElButton, ElInput, ElTooltip } from \"element-plus\";\r\nimport { Search } from \"@element-plus/icons-vue\";\r\nimport { debounce } from \"lodash-es\";\r\nimport { isWhereFilter } from \"@maketribe/dm\";\r\nimport { DATA_TABLE_CONTEXT_KEY } from \"../../../token\";\r\nimport { MKSvgIcon } from \"../../../../../basic\";\r\nimport { MKDataFilterDrawer } from \"../../../../data-filter-drawer\";\r\nimport { MKDataFilterForm } from \"../../../../data-filter-form\";\r\n\r\nexport default defineComponent({\r\n name: \"MKTableFilter\",\r\n setup() {\r\n const search = ref(\"\");\r\n\r\n const isShowDrawer = ref(false);\r\n\r\n const dataTableContext = inject(DATA_TABLE_CONTEXT_KEY);\r\n\r\n const dataTable = computed(() => dataTableContext!.dataTable);\r\n\r\n const dataTableInitd = computed(() => unref(dataTable)?.initd ?? false);\r\n\r\n const searchFilterColumns = computed(() =>\r\n unref(dataTable)\r\n .dataFilter.getColumns()\r\n .filter((column) => column.search)\r\n );\r\n\r\n const searchPlaceholder = computed(\r\n () =>\r\n `通过${unref(searchFilterColumns)\r\n .map((column) => column.label)\r\n .join(\"、\")}搜索`\r\n );\r\n\r\n watch(\r\n dataTable,\r\n (dataTable, _, onCleanup) => {\r\n onCleanup(() => {\r\n const dataFilter = dataTable.dataFilter;\r\n if (isWhereFilter(dataFilter)) {\r\n dataFilter.getSearchGroup().clear();\r\n }\r\n });\r\n },\r\n { immediate: true }\r\n );\r\n\r\n const handleSearch = () => {\r\n debounceSearch.cancel();\r\n\r\n const dataFilter = unref(dataTable).dataFilter;\r\n if (isWhereFilter(dataFilter)) {\r\n const searchGroup = dataFilter.getSearchGroup();\r\n searchGroup.clear();\r\n\r\n const searchValue = unref(search);\r\n\r\n for (const searchFilterColumn of unref(searchFilterColumns)) {\r\n searchGroup.addOrCondition(\r\n searchFilterColumn.name,\r\n \"like\",\r\n `%${searchValue}%`\r\n );\r\n }\r\n }\r\n\r\n unref(dataTable).load();\r\n };\r\n\r\n const debounceSearch = debounce(handleSearch, 1000);\r\n\r\n const handleSearchKeydown = (event: KeyboardEvent) => {\r\n if (event.key === \"Enter\") {\r\n handleSearch();\r\n }\r\n };\r\n\r\n const handleSearchFocus = (event: FocusEvent) => {\r\n const target = event.target as HTMLInputElement;\r\n\r\n target.addEventListener(\"input\", debounceSearch);\r\n };\r\n\r\n const handleSearchBlur = (event: any) => {\r\n const target = event.target as HTMLInputElement;\r\n\r\n target.removeEventListener(\"input\", debounceSearch);\r\n };\r\n\r\n const handleShowDrawer = () => {\r\n isShowDrawer.value = true;\r\n };\r\n\r\n return () => {\r\n if (!unref(dataTableInitd)) {\r\n return null;\r\n }\r\n\r\n const _dataTable = unref(dataTable);\r\n\r\n if (_dataTable.dataFilter.getColumns().length === 0) {\r\n return null;\r\n }\r\n\r\n let searchInputVNode = null;\r\n\r\n if (unref(searchFilterColumns).length) {\r\n searchInputVNode = (\r\n <ElTooltip content={unref(searchPlaceholder)} effect=\"dark\" placement=\"top\">\r\n <ElInput\r\n prefixIcon={Search}\r\n class=\"mk-table-filter__search\"\r\n modelValue={unref(search)}\r\n onUpdate:modelValue={(v) => (search.value = v)}\r\n onKeydown={handleSearchKeydown as any}\r\n placeholder={unref(searchPlaceholder)}\r\n onFocus={handleSearchFocus}\r\n onBlur={handleSearchBlur}\r\n onClear={handleSearch}\r\n clearable\r\n />\r\n </ElTooltip>\r\n );\r\n }\r\n\r\n return (\r\n <div class=\"mk-table-filter\">\r\n {searchInputVNode}\r\n <ElTooltip content=\"筛选\" effect=\"dark\" placement=\"top\">\r\n <ElButton onClick={handleShowDrawer}>\r\n <MKSvgIcon iconClass=\"Filter\" />\r\n </ElButton>\r\n </ElTooltip>\r\n\r\n <MKDataFilterDrawer\r\n visible={unref(isShowDrawer)}\r\n onUpdate:visible={(v) => (isShowDrawer.value = v)}\r\n dataTable={_dataTable}\r\n />\r\n\r\n <div class=\"mk-table-filter__hidden\">\r\n <MKDataFilterForm dataTable={_dataTable} />\r\n </div>\r\n </div>\r\n );\r\n };\r\n },\r\n});\r\n"],"names":["defineComponent","name","setup","search","ref","isShowDrawer","dataTableContext","inject","DATA_TABLE_CONTEXT_KEY","dataTable","computed","dataTableInitd","unref","initd","searchFilterColumns","dataFilter","getColumns","filter","column","searchPlaceholder","map","label","join","watch","_","onCleanup","isWhereFilter","getSearchGroup","clear","immediate","handleSearch","debounceSearch","cancel","searchGroup","searchValue","searchFilterColumn","addOrCondition","load","debounce","handleSearchKeydown","event","key","handleSearchFocus","target","addEventListener","handleSearchBlur","removeEventListener","handleShowDrawer","value","_dataTable","length","searchInputVNode","_createVNode","ElTooltip","default","ElInput","Search","v","ElButton","MKSvgIcon","MKDataFilterDrawer","MKDataFilterForm"],"mappings":"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"}
1
+ {"version":3,"file":"table-filter.js","sources":["../../../../../../../../src/components/data-model/data-table/components/header-components/table-filter/table-filter.tsx"],"sourcesContent":["import { defineComponent, inject, computed, unref, watch, ref } from \"vue\";\r\nimport { ElButton, ElInput, ElTooltip } from \"element-plus\";\r\nimport { Search } from \"@element-plus/icons-vue\";\r\nimport { debounce } from \"lodash-es\";\r\nimport { isWhereFilter } from \"@maketribe/dm\";\r\nimport { DATA_TABLE_CONTEXT_KEY } from \"../../../token\";\r\nimport { MKSvgIcon } from \"../../../../../basic\";\r\nimport { MKDataFilterDrawer } from \"../../../../data-filter-drawer\";\r\nimport { MKDataFilterForm } from \"../../../../data-filter-form\";\r\n\r\nexport default defineComponent({\r\n name: \"MKTableFilter\",\r\n setup() {\r\n const search = ref(\"\");\r\n\r\n const isShowDrawer = ref(false);\r\n\r\n const dataTableContext = inject(DATA_TABLE_CONTEXT_KEY);\r\n\r\n const dataTable = computed(() => dataTableContext!.dataTable);\r\n\r\n const dataTableInitd = computed(() => unref(dataTable)?.initd ?? false);\r\n\r\n const searchFilterColumns = computed(() =>\r\n unref(dataTable)\r\n .dataFilter.getColumns()\r\n .filter((column) => column.search)\r\n );\r\n\r\n const searchPlaceholder = computed(\r\n () =>\r\n `通过${unref(searchFilterColumns)\r\n .map((column) => column.label)\r\n .join(\"、\")}搜索`\r\n );\r\n\r\n watch(\r\n dataTable,\r\n (dataTable, _, onCleanup) => {\r\n onCleanup(() => {\r\n const dataFilter = dataTable.dataFilter;\r\n if (isWhereFilter(dataFilter)) {\r\n dataFilter.getSearchGroup().clear();\r\n }\r\n });\r\n },\r\n { immediate: true }\r\n );\r\n\r\n const handleSearch = () => {\r\n debounceSearch.cancel();\r\n\r\n const dataFilter = unref(dataTable).dataFilter;\r\n if (isWhereFilter(dataFilter)) {\r\n const searchGroup = dataFilter.getSearchGroup();\r\n searchGroup.clear();\r\n\r\n const searchValue = unref(search);\r\n\r\n for (const searchFilterColumn of unref(searchFilterColumns)) {\r\n searchGroup.addOrCondition(\r\n searchFilterColumn.name,\r\n \"like\",\r\n `%${searchValue}%`\r\n );\r\n }\r\n }\r\n\r\n unref(dataTable).load();\r\n };\r\n\r\n const debounceSearch = debounce(handleSearch, 1000);\r\n\r\n const handleSearchKeydown = (event: KeyboardEvent) => {\r\n if (event.key === \"Enter\") {\r\n handleSearch();\r\n }\r\n };\r\n\r\n const handleSearchFocus = (event: FocusEvent) => {\r\n const target = event.target as HTMLInputElement;\r\n\r\n target.addEventListener(\"input\", debounceSearch);\r\n };\r\n\r\n const handleSearchBlur = (event: any) => {\r\n const target = event.target as HTMLInputElement;\r\n\r\n target.removeEventListener(\"input\", debounceSearch);\r\n };\r\n\r\n const handleShowDrawer = () => {\r\n isShowDrawer.value = true;\r\n };\r\n\r\n return () => {\r\n if (!unref(dataTableInitd)) {\r\n return null;\r\n }\r\n\r\n const _dataTable = unref(dataTable);\r\n\r\n if (_dataTable.dataFilter.getColumns().length === 0) {\r\n return null;\r\n }\r\n\r\n let searchInputVNode = null;\r\n\r\n if (unref(searchFilterColumns).length) {\r\n searchInputVNode = (\r\n <ElTooltip content={unref(searchPlaceholder)} effect=\"dark\" placement=\"top\">\r\n <ElInput\r\n prefixIcon={Search}\r\n class=\"mk-table-filter__search\"\r\n modelValue={unref(search)}\r\n onUpdate:modelValue={(v) => (search.value = v)}\r\n onKeydown={handleSearchKeydown as any}\r\n placeholder={unref(searchPlaceholder)}\r\n onFocus={handleSearchFocus}\r\n onBlur={handleSearchBlur}\r\n onClear={handleSearch}\r\n clearable\r\n />\r\n </ElTooltip>\r\n );\r\n }\r\n\r\n return (\r\n <div class=\"mk-table-filter\">\r\n {searchInputVNode}\r\n <ElTooltip content=\"筛选\" effect=\"dark\" placement=\"top\">\r\n <ElButton onClick={handleShowDrawer}>\r\n <MKSvgIcon iconClass=\"Filter\" />\r\n </ElButton>\r\n </ElTooltip>\r\n\r\n <MKDataFilterDrawer\r\n visible={unref(isShowDrawer)}\r\n onUpdate:visible={(v) => (isShowDrawer.value = v)}\r\n dataTable={_dataTable}\r\n />\r\n\r\n <div class=\"mk-table-filter__hidden\">\r\n <MKDataFilterForm dataTable={_dataTable} />\r\n </div>\r\n </div>\r\n );\r\n };\r\n },\r\n});\r\n"],"names":["defineComponent","name","setup","search","ref","isShowDrawer","dataTableContext","inject","DATA_TABLE_CONTEXT_KEY","dataTable","computed","dataTableInitd","unref","initd","searchFilterColumns","dataFilter","getColumns","filter","column","searchPlaceholder","map","label","join","watch","_","onCleanup","isWhereFilter","getSearchGroup","clear","immediate","handleSearch","debounceSearch","cancel","searchGroup","searchValue","searchFilterColumn","addOrCondition","load","debounce","handleSearchKeydown","event","key","handleSearchFocus","target","addEventListener","handleSearchBlur","removeEventListener","handleShowDrawer","value","_dataTable","length","searchInputVNode","_createVNode","ElTooltip","default","ElInput","Search","v","ElButton","MKSvgIcon","MKDataFilterDrawer","MKDataFilterForm"],"mappings":"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"}
@@ -52,6 +52,20 @@ class DataFormComponents extends dm.Components {
52
52
  async () => (await Promise.resolve().then(() => require("../../components/basic/upload-file/index.js"))).MKUploadImage
53
53
  )
54
54
  });
55
+ this.registerComponent({
56
+ name: "MKFormFileUpload",
57
+ title: "文件上传",
58
+ component: vue.defineAsyncComponent(
59
+ async () => (await Promise.resolve().then(() => require("../../components/basic/upload-file/index.js"))).MKUploadFileUi
60
+ )
61
+ });
62
+ this.registerComponent({
63
+ name: "MKFormVideoUpload",
64
+ title: "视频选择",
65
+ component: vue.defineAsyncComponent(
66
+ async () => (await Promise.resolve().then(() => require("../../components/basic/upload-file/index.js"))).MKUploadVideo
67
+ )
68
+ });
55
69
  this.registerComponent({
56
70
  name: "MKFormDataTableSelect",
57
71
  title: "数据表选择",