@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,225 @@
1
+ import { defineComponent, computed, ref, watch, unref, createVNode, Fragment, createTextVNode } from "vue";
2
+ import { ElTooltip } from "element-plus";
3
+ import { MKSvgIcon } from "../../../svg-icon/index.js";
4
+ import { MKUploadFile } from "../../upload-file.js";
5
+ import { uploadFileUiProps, uploadFileUiEmits } from "./upload-file-options.js";
6
+ import { UploadContext } from "../../context/UploadContext.js";
7
+ import "@maketribe/request";
8
+ import "@maketribe/utils";
9
+ import "../../context/web-file-upload-context.js";
10
+ import "../../context/web-file-upload-context-options.js";
11
+ const MKUploadFileItem = /* @__PURE__ */ defineComponent({
12
+ name: "MKUploadFileItem",
13
+ props: {
14
+ modelValue: {
15
+ type: String,
16
+ default: ""
17
+ },
18
+ uploadContext: {
19
+ type: UploadContext,
20
+ required: true
21
+ },
22
+ width: {
23
+ type: String,
24
+ default: "180px"
25
+ },
26
+ height: {
27
+ type: String,
28
+ default: "180px"
29
+ },
30
+ icon: {
31
+ type: String,
32
+ default: "Plus"
33
+ }
34
+ },
35
+ emits: ["update:modelValue", "view", "delete"],
36
+ setup(props, {
37
+ emit
38
+ }) {
39
+ const uploadFileInstance = ref(null);
40
+ ref(null);
41
+ ref("");
42
+ const modelValue = computed({
43
+ get: () => props.modelValue,
44
+ set: (v) => {
45
+ emit("update:modelValue", v);
46
+ }
47
+ });
48
+ const getFileIconBySuffix = (v) => {
49
+ const index = v.lastIndexOf(".");
50
+ const indexBias = v.lastIndexOf("/");
51
+ const icon = ["html", "apk", "eps", "ppt", "xml", "pdf", "exe", "psd", "visio", "xls", "doc", "txt", "dll", "tiff", "bmp", "audio"];
52
+ const zipIcon = ["zip", "rar", "zip", "tar", "gz", "bz2", "7z"];
53
+ const suffixIcon = v.substring(index + 1);
54
+ const suffix = v.substring(indexBias + 1);
55
+ if (icon.includes(suffixIcon)) {
56
+ return {
57
+ icon: suffixIcon,
58
+ suffix
59
+ };
60
+ } else if (zipIcon.includes(suffixIcon)) {
61
+ return {
62
+ icon: "yasuo",
63
+ suffix
64
+ };
65
+ } else {
66
+ return {
67
+ icon: "weizhiwenjian",
68
+ suffix
69
+ };
70
+ }
71
+ };
72
+ const handleUpdateModelValue = (v) => {
73
+ modelValue.value = v;
74
+ };
75
+ const handleClick = (event) => {
76
+ var _a;
77
+ event.stopPropagation();
78
+ if (unref(modelValue)) {
79
+ return;
80
+ }
81
+ (_a = unref(uploadFileInstance)) == null ? void 0 : _a.handleUpload();
82
+ };
83
+ const handleDelete = (event) => {
84
+ event.stopPropagation();
85
+ emit("delete", unref(modelValue));
86
+ };
87
+ return () => {
88
+ let content;
89
+ if (unref(modelValue)) {
90
+ content = createVNode(Fragment, null, [createVNode("div", {
91
+ "class": "mk-upload-file-ui-item__file"
92
+ }, [createVNode(MKSvgIcon, {
93
+ "iconClass": getFileIconBySuffix(props.modelValue).icon
94
+ }, null), createVNode("div", {
95
+ "class": "mk-upload-file-ui-item__file__name"
96
+ }, [getFileIconBySuffix(props.modelValue).suffix])]), createVNode("div", {
97
+ "class": "mk-upload-file-ui-item__mask"
98
+ }, [createVNode(ElTooltip, {
99
+ "content": "删除"
100
+ }, {
101
+ default: () => [createVNode(MKSvgIcon, {
102
+ "iconClass": "Delete",
103
+ "onClick": handleDelete
104
+ }, null)]
105
+ })])]);
106
+ } else {
107
+ content = createVNode("div", {
108
+ "class": "mk-upload-file-ui-item__wrapper__desc"
109
+ }, [createVNode(MKSvgIcon, {
110
+ "iconClass": props.icon,
111
+ "class": "mk-upload-file-ui-item__wrapper__desc__icon"
112
+ }, null), createVNode("span", {
113
+ "class": "mk-upload-file-ui-item__wrapper__desc__text"
114
+ }, [createTextVNode("点击上传文件")])]);
115
+ }
116
+ return createVNode("div", {
117
+ "class": "mk-upload-file-ui-item",
118
+ "style": {
119
+ width: props.width,
120
+ height: props.height
121
+ }
122
+ }, [createVNode(MKUploadFile, {
123
+ "modelValue": props.modelValue,
124
+ "onUpdate:modelValue": handleUpdateModelValue,
125
+ "uploadContext": props.uploadContext,
126
+ "ref": (el) => uploadFileInstance.value = el
127
+ }, {
128
+ default: () => [createVNode("div", {
129
+ "class": "mk-upload-file-ui-item__wrapper",
130
+ "onClick": handleClick
131
+ }, [content])]
132
+ })]);
133
+ };
134
+ }
135
+ });
136
+ const UploadFile = /* @__PURE__ */ defineComponent({
137
+ name: "MKUploadFile",
138
+ props: uploadFileUiProps,
139
+ emits: uploadFileUiEmits,
140
+ setup(props, {
141
+ emit
142
+ }) {
143
+ const modelValue = computed({
144
+ get: () => props.modelValue,
145
+ set: (v) => emit("update:modelValue", v)
146
+ });
147
+ const currentImageSrc = ref("");
148
+ const multiple = computed(() => props.multiple);
149
+ const isShowImageViewer = ref(false);
150
+ watch(computed(() => [unref(modelValue), unref(multiple)]), ([value, multiple2]) => {
151
+ if (multiple2 && !Array.isArray(value)) {
152
+ modelValue.value = [];
153
+ }
154
+ }, {
155
+ immediate: true
156
+ });
157
+ const handleDelete = (src) => {
158
+ if (!unref(multiple)) {
159
+ modelValue.value = "";
160
+ return;
161
+ }
162
+ const index = unref(modelValue).indexOf(src);
163
+ if (index === -1) {
164
+ return;
165
+ }
166
+ modelValue.value.splice(index, 1);
167
+ };
168
+ const handleShowImageViewer = (src) => {
169
+ isShowImageViewer.value = true;
170
+ currentImageSrc.value = src;
171
+ };
172
+ const handleAppendImage = (src) => {
173
+ const _value = unref(modelValue);
174
+ if (Array.isArray(_value)) {
175
+ _value.push(src);
176
+ }
177
+ };
178
+ return () => {
179
+ const _multiple = unref(multiple);
180
+ let content;
181
+ if (!_multiple) {
182
+ content = createVNode(MKUploadFileItem, {
183
+ "onView": handleShowImageViewer,
184
+ "onDelete": handleDelete,
185
+ "modelValue": unref(modelValue),
186
+ "onUpdate:modelValue": (value) => modelValue.value = value,
187
+ "uploadContext": props.uploadContext,
188
+ "width": props.width,
189
+ "height": props.height,
190
+ "icon": props.icon
191
+ }, null);
192
+ } else {
193
+ let images = null;
194
+ if (Array.isArray(unref(modelValue))) {
195
+ images = unref(modelValue).map((src) => createVNode(MKUploadFileItem, {
196
+ "onView": handleShowImageViewer,
197
+ "onDelete": handleDelete,
198
+ "modelValue": src,
199
+ "uploadContext": props.uploadContext,
200
+ "width": props.width,
201
+ "height": props.height,
202
+ "icon": props.icon
203
+ }, null));
204
+ }
205
+ content = createVNode(Fragment, null, [images, createVNode(MKUploadFileItem, {
206
+ "onUpdate:modelValue": handleAppendImage,
207
+ "uploadContext": props.uploadContext,
208
+ "width": props.width,
209
+ "height": props.height,
210
+ "icon": props.icon
211
+ }, null)]);
212
+ }
213
+ return createVNode("div", {
214
+ "class": "mk-upload-file-ui",
215
+ "style": {
216
+ width: _multiple ? "" : props.width
217
+ }
218
+ }, [content]);
219
+ };
220
+ }
221
+ });
222
+ export {
223
+ UploadFile as default
224
+ };
225
+ //# sourceMappingURL=upload-file.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"upload-file.js","sources":["../../../../../../../src/components/basic/upload-file/ui/upload-file/upload-file.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 { uploadFileUiEmits, uploadFileUiProps } from \"./upload-file-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 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-file-ui-item__file\">\r\n <MKSvgIcon iconClass={getFileIconBySuffix(props.modelValue).icon} />\r\n <div class=\"mk-upload-file-ui-item__file__name\">\r\n {getFileIconBySuffix(props.modelValue).suffix}\r\n </div>\r\n </div>\r\n\r\n <div class=\"mk-upload-file-ui-item__mask\">\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-file-ui-item__wrapper__desc\">\r\n <MKSvgIcon iconClass={props.icon} class=\"mk-upload-file-ui-item__wrapper__desc__icon\" />\r\n <span class=\"mk-upload-file-ui-item__wrapper__desc__text\">点击上传文件</span>\r\n </div>;\r\n }\r\n\r\n return (\r\n <div class=\"mk-upload-file-ui-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-file-ui-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: uploadFileUiProps,\r\n emits: uploadFileUiEmits,\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 currentImageSrc: Ref<string> = ref(\"\");\r\n\r\n const multiple = computed(() => props.multiple);\r\n\r\n const isShowImageViewer: 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 isShowImageViewer.value = true;\r\n currentImageSrc.value = src;\r\n };\r\n\r\n const handleCloseImageViewer = () => {\r\n isShowImageViewer.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 return (\r\n <div class=\"mk-upload-file-ui\" style={{ width: _multiple ? \"\" : props.width }}>\r\n {content}\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","getFileIconBySuffix","index","lastIndexOf","indexBias","zipIcon","suffixIcon","substring","suffix","includes","handleUpdateModelValue","value","handleClick","event","stopPropagation","unref","handleUpload","handleDelete","content","_createVNode","_Fragment","MKSvgIcon","ElTooltip","_createTextVNode","MKUploadFile","el","uploadFileUiProps","uploadFileUiEmits","currentImageSrc","multiple","isShowImageViewer","watch","Array","isArray","immediate","src","indexOf","splice","handleShowImageViewer","handleAppendImage","_value","push","_multiple","images","map"],"mappings":"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"}
@@ -44,6 +44,7 @@ const MKUploadImageItem = /* @__PURE__ */ defineComponent({
44
44
  emit("update:modelValue", v);
45
45
  }
46
46
  });
47
+ console.log(props.uploadContext);
47
48
  const handleUpdateModelValue = (v) => {
48
49
  modelValue.value = v;
49
50
  };
@@ -70,7 +71,7 @@ const MKUploadImageItem = /* @__PURE__ */ defineComponent({
70
71
  "ref": (el) => imageInstance.value = el,
71
72
  "src": unref(modelValue),
72
73
  "class": "mk-upload-image-item__image",
73
- "fit": "cover"
74
+ "fit": "contain"
74
75
  }, null), createVNode("div", {
75
76
  "class": "mk-upload-image-item__mask"
76
77
  }, [createVNode(ElTooltip, {
@@ -160,6 +161,7 @@ const UploadImage = /* @__PURE__ */ defineComponent({
160
161
  };
161
162
  return () => {
162
163
  const _multiple = unref(multiple);
164
+ console.log(_multiple);
163
165
  let content;
164
166
  if (!_multiple) {
165
167
  content = createVNode(MKUploadImageItem, {
@@ -202,7 +204,7 @@ const UploadImage = /* @__PURE__ */ defineComponent({
202
204
  return createVNode("div", {
203
205
  "class": "mk-upload-image",
204
206
  "style": {
205
- width: _multiple ? "" : props.width
207
+ width: !_multiple ? "" : props.width
206
208
  }
207
209
  }, [content, imageViewer]);
208
210
  };
@@ -1 +1 @@
1
- {"version":3,"file":"upload-image.js","sources":["../../../../../../../src/components/basic/upload-file/ui/upload-image/upload-image.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 { uploadImageEmits, uploadImageProps } from \"./upload-image-options\";\r\nimport { UploadContext } from \"../../context\";\r\n\r\nconst MKUploadImageItem = defineComponent({\r\n name: \"MKUploadImageItem\",\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 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 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 <ElImage ref={\r\n ((el: InstanceType<typeof ElImage>) =>\r\n (imageInstance.value = el)) as any\r\n }\r\n src={unref(modelValue)}\r\n class=\"mk-upload-image-item__image\"\r\n fit=\"cover\"\r\n />\r\n\r\n <div class=\"mk-upload-image-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 = <MKSvgIcon iconClass={props.icon} />;\r\n }\r\n\r\n return (\r\n <div class=\"mk-upload-image-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-image-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: \"MKUploadImage\",\r\n props: uploadImageProps,\r\n emits: uploadImageEmits,\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 currentImageSrc: Ref<string> = ref(\"\");\r\n\r\n const multiple = computed(() => props.multiple);\r\n\r\n const isShowImageViewer: 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 isShowImageViewer.value = true;\r\n currentImageSrc.value = src;\r\n };\r\n\r\n const handleCloseImageViewer = () => {\r\n isShowImageViewer.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 <MKUploadImageItem\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 <MKUploadImageItem\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 <MKUploadImageItem\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 imageViewer = unref(isShowImageViewer) ? (\r\n <ElImageViewer teleported zIndex={99}\r\n onClose={handleCloseImageViewer}\r\n urlList={[unref(currentImageSrc)]}\r\n />\r\n ) : null;\r\n\r\n return (\r\n <div class=\"mk-upload-image\" style={{width:_multiple?\"\":props.width}}>\r\n {content}\r\n {imageViewer}\r\n </div>\r\n );\r\n };\r\n },\r\n});\r\n"],"names":["MKUploadImageItem","defineComponent","name","props","modelValue","type","String","default","uploadContext","UploadContext","required","width","height","icon","emits","setup","emit","uploadFileInstance","ref","imageInstance","computed","get","set","v","handleUpdateModelValue","value","handleClick","event","stopPropagation","unref","handleUpload","handleView","handleDelete","content","_createVNode","_Fragment","ElImage","el","ElTooltip","MKSvgIcon","MKUploadFile","uploadImageProps","uploadImageEmits","currentImageSrc","multiple","isShowImageViewer","watch","Array","isArray","immediate","src","index","indexOf","splice","handleShowImageViewer","handleCloseImageViewer","handleAppendImage","_value","push","_multiple","images","map","imageViewer","ElImageViewer"],"mappings":"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"}
1
+ {"version":3,"file":"upload-image.js","sources":["../../../../../../../src/components/basic/upload-file/ui/upload-image/upload-image.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 { uploadImageEmits, uploadImageProps } from \"./upload-image-options\";\r\nimport { UploadContext } from \"../../context\";\r\n\r\nconst MKUploadImageItem = defineComponent({\r\n name: \"MKUploadImageItem\",\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 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 console.log(props.uploadContext)\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 <ElImage ref={\r\n ((el: InstanceType<typeof ElImage>) =>\r\n (imageInstance.value = el)) as any\r\n }\r\n src={unref(modelValue)}\r\n class=\"mk-upload-image-item__image\"\r\n fit=\"contain\"\r\n />\r\n\r\n <div class=\"mk-upload-image-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 = <MKSvgIcon iconClass={props.icon} />;\r\n }\r\n\r\n return (\r\n <div class=\"mk-upload-image-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-image-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: \"MKUploadImage\",\r\n props: uploadImageProps,\r\n emits: uploadImageEmits,\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 currentImageSrc: Ref<string> = ref(\"\");\r\n\r\n const multiple = computed(() => props.multiple);\r\n\r\n const isShowImageViewer: 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 isShowImageViewer.value = true;\r\n currentImageSrc.value = src;\r\n };\r\n\r\n const handleCloseImageViewer = () => {\r\n isShowImageViewer.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 console.log(_multiple)\r\n let content;\r\n\r\n if (!_multiple) {\r\n content = (\r\n <MKUploadImageItem\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 <MKUploadImageItem\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 <MKUploadImageItem\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 imageViewer = unref(isShowImageViewer) ? (\r\n <ElImageViewer teleported zIndex={99}\r\n onClose={handleCloseImageViewer}\r\n urlList={[unref(currentImageSrc)]}\r\n />\r\n ) : null;\r\n\r\n return (\r\n <div class=\"mk-upload-image\" style={{ width: !_multiple ? \"\" : props.width }}>\r\n {content}\r\n {imageViewer}\r\n </div>\r\n );\r\n };\r\n },\r\n});\r\n"],"names":["MKUploadImageItem","defineComponent","name","props","modelValue","type","String","default","uploadContext","UploadContext","required","width","height","icon","emits","setup","emit","uploadFileInstance","ref","imageInstance","computed","get","set","v","console","log","handleUpdateModelValue","value","handleClick","event","stopPropagation","unref","handleUpload","handleView","handleDelete","content","_createVNode","_Fragment","ElImage","el","ElTooltip","MKSvgIcon","MKUploadFile","uploadImageProps","uploadImageEmits","currentImageSrc","multiple","isShowImageViewer","watch","Array","isArray","immediate","src","index","indexOf","splice","handleShowImageViewer","handleCloseImageViewer","handleAppendImage","_value","push","_multiple","images","map","imageViewer","ElImageViewer"],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ import { withInstall } from "@maketribe/utils";
2
+ import UploadVideo from "./upload-video.js";
3
+ import { uploadVideoEmits, uploadVideoProps } from "./upload-video-options.js";
4
+ const MKUploadVideo = withInstall(UploadVideo);
5
+ export {
6
+ MKUploadVideo,
7
+ MKUploadVideo as default,
8
+ uploadVideoEmits,
9
+ uploadVideoProps
10
+ };
11
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../../../../../../src/components/basic/upload-file/ui/upload-video/index.ts"],"sourcesContent":["import { withInstall } from \"@maketribe/utils\";\r\nimport UploadVideo from \"./upload-video\"\r\n\r\nexport const MKUploadVideo = withInstall(UploadVideo);\r\nexport default MKUploadVideo;\r\n\r\nexport * from \"./upload-video-options\";\r\n"],"names":[],"mappings":";;;AAGa,MAAA,gBAAgB,YAAY,WAAW;"}
@@ -0,0 +1,38 @@
1
+ import { buildProps } from "@maketribe/utils";
2
+ import { UploadContext } from "../../context/UploadContext.js";
3
+ import { WebFileUploadContext } from "../../context/WebFileUploadContext.js";
4
+ import "../../context/web-file-upload-context.js";
5
+ import "../../context/web-file-upload-context-options.js";
6
+ const uploadVideoProps = buildProps({
7
+ uploadContext: {
8
+ type: UploadContext,
9
+ default: () => new WebFileUploadContext()
10
+ },
11
+ modelValue: {
12
+ type: [String, Array]
13
+ },
14
+ multiple: {
15
+ type: Boolean,
16
+ default: false
17
+ },
18
+ width: {
19
+ type: String,
20
+ default: "180px"
21
+ },
22
+ height: {
23
+ type: String,
24
+ default: "180px"
25
+ },
26
+ icon: {
27
+ type: String,
28
+ default: "UploadFilled"
29
+ }
30
+ });
31
+ const uploadVideoEmits = {
32
+ "update:modelValue": (path) => true
33
+ };
34
+ export {
35
+ uploadVideoEmits,
36
+ uploadVideoProps
37
+ };
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":[],"mappings":";;;;;AAIO,MAAM,mBAAmB,WAAW;AAAA,EACzC,eAAe;AAAA,IACb,MAAM;AAAA,IACN,SAAS,MAAM,IAAI,qBAAqB;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,223 @@
1
+ import { defineComponent, computed, ref, watch, unref, createVNode, Fragment, createTextVNode } from "vue";
2
+ import { ElTooltip } from "element-plus";
3
+ import { MKSvgIcon } from "../../../svg-icon/index.js";
4
+ import { MKUploadFile } from "../../upload-file.js";
5
+ import { uploadVideoProps, uploadVideoEmits } from "./upload-video-options.js";
6
+ import { UploadContext } from "../../context/UploadContext.js";
7
+ import "@maketribe/request";
8
+ import "@maketribe/utils";
9
+ import "../../context/web-file-upload-context.js";
10
+ import "../../context/web-file-upload-context-options.js";
11
+ const MKUploadFileItem = /* @__PURE__ */ defineComponent({
12
+ name: "MKUploadFileItem",
13
+ props: {
14
+ modelValue: {
15
+ type: String,
16
+ default: ""
17
+ },
18
+ uploadContext: {
19
+ type: UploadContext,
20
+ required: true
21
+ },
22
+ width: {
23
+ type: String,
24
+ default: "180px"
25
+ },
26
+ height: {
27
+ type: String,
28
+ default: "180px"
29
+ },
30
+ icon: {
31
+ type: String,
32
+ default: "Plus"
33
+ }
34
+ },
35
+ emits: ["update:modelValue", "view", "delete"],
36
+ setup(props, {
37
+ emit
38
+ }) {
39
+ const uploadFileInstance = ref(null);
40
+ ref(null);
41
+ ref("");
42
+ const modelValue = computed({
43
+ get: () => props.modelValue,
44
+ set: (v) => {
45
+ emit("update:modelValue", v);
46
+ }
47
+ });
48
+ const handleUpdateModelValue = (v) => {
49
+ modelValue.value = v;
50
+ };
51
+ const handleClick = (event) => {
52
+ var _a;
53
+ event.stopPropagation();
54
+ if (unref(modelValue)) {
55
+ return;
56
+ }
57
+ (_a = unref(uploadFileInstance)) == null ? void 0 : _a.handleUpload();
58
+ };
59
+ const handleView = (event) => {
60
+ event.stopPropagation();
61
+ emit("view", unref(modelValue));
62
+ };
63
+ const handleDelete = (event) => {
64
+ event.stopPropagation();
65
+ emit("delete", unref(modelValue));
66
+ };
67
+ return () => {
68
+ let content;
69
+ if (unref(modelValue)) {
70
+ content = createVNode(Fragment, null, [createVNode("div", {
71
+ "class": "mk-upload-video-item__file"
72
+ }, [createVNode(MKSvgIcon, {
73
+ "iconClass": "video"
74
+ }, null)]), createVNode("div", {
75
+ "class": "mk-upload-video-item__mask"
76
+ }, [createVNode(ElTooltip, {
77
+ "content": "查看"
78
+ }, {
79
+ default: () => [createVNode(MKSvgIcon, {
80
+ "iconClass": "View",
81
+ "onClick": handleView
82
+ }, null)]
83
+ }), createVNode(ElTooltip, {
84
+ "content": "删除"
85
+ }, {
86
+ default: () => [createVNode(MKSvgIcon, {
87
+ "iconClass": "Delete",
88
+ "onClick": handleDelete
89
+ }, null)]
90
+ })])]);
91
+ } else {
92
+ content = createVNode("div", {
93
+ "class": "mk-upload-video-item__wrapper__desc"
94
+ }, [createVNode(MKSvgIcon, {
95
+ "iconClass": props.icon,
96
+ "class": "mk-upload-video-item__wrapper__desc__icon"
97
+ }, null), createVNode("span", {
98
+ "class": "mk-upload-video-item__wrapper__desc__text"
99
+ }, [createTextVNode("点击上传视频")])]);
100
+ }
101
+ return createVNode("div", {
102
+ "class": "mk-upload-video-item",
103
+ "style": {
104
+ width: props.width,
105
+ height: props.height
106
+ }
107
+ }, [createVNode(MKUploadFile, {
108
+ "modelValue": props.modelValue,
109
+ "onUpdate:modelValue": handleUpdateModelValue,
110
+ "uploadContext": props.uploadContext,
111
+ "ref": (el) => uploadFileInstance.value = el
112
+ }, {
113
+ default: () => [createVNode("div", {
114
+ "class": "mk-upload-video-item__wrapper",
115
+ "onClick": handleClick
116
+ }, [content])]
117
+ })]);
118
+ };
119
+ }
120
+ });
121
+ const UploadVideo = /* @__PURE__ */ defineComponent({
122
+ name: "MKUploadFile",
123
+ props: uploadVideoProps,
124
+ emits: uploadVideoEmits,
125
+ setup(props, {
126
+ emit
127
+ }) {
128
+ const modelValue = computed({
129
+ get: () => props.modelValue,
130
+ set: (v) => emit("update:modelValue", v)
131
+ });
132
+ const currentVideoSrc = ref("");
133
+ const multiple = computed(() => props.multiple);
134
+ const isShowVideoViewer = ref(false);
135
+ watch(computed(() => [unref(modelValue), unref(multiple)]), ([value, multiple2]) => {
136
+ if (multiple2 && !Array.isArray(value)) {
137
+ modelValue.value = [];
138
+ }
139
+ }, {
140
+ immediate: true
141
+ });
142
+ const handleDelete = (src) => {
143
+ if (!unref(multiple)) {
144
+ modelValue.value = "";
145
+ return;
146
+ }
147
+ const index = unref(modelValue).indexOf(src);
148
+ if (index === -1) {
149
+ return;
150
+ }
151
+ modelValue.value.splice(index, 1);
152
+ };
153
+ const handleShowImageViewer = (src) => {
154
+ isShowVideoViewer.value = true;
155
+ currentVideoSrc.value = src;
156
+ };
157
+ const handleAppendImage = (src) => {
158
+ const _value = unref(modelValue);
159
+ if (Array.isArray(_value)) {
160
+ _value.push(src);
161
+ }
162
+ };
163
+ return () => {
164
+ const _multiple = unref(multiple);
165
+ let content;
166
+ if (!_multiple) {
167
+ content = createVNode(MKUploadFileItem, {
168
+ "onView": handleShowImageViewer,
169
+ "onDelete": handleDelete,
170
+ "modelValue": unref(modelValue),
171
+ "onUpdate:modelValue": (value) => modelValue.value = value,
172
+ "uploadContext": props.uploadContext,
173
+ "width": props.width,
174
+ "height": props.height,
175
+ "icon": props.icon
176
+ }, null);
177
+ } else {
178
+ let images = null;
179
+ if (Array.isArray(unref(modelValue))) {
180
+ images = unref(modelValue).map((src) => createVNode(MKUploadFileItem, {
181
+ "onView": handleShowImageViewer,
182
+ "onDelete": handleDelete,
183
+ "modelValue": src,
184
+ "uploadContext": props.uploadContext,
185
+ "width": props.width,
186
+ "height": props.height,
187
+ "icon": props.icon
188
+ }, null));
189
+ }
190
+ content = createVNode(Fragment, null, [images, createVNode(MKUploadFileItem, {
191
+ "onUpdate:modelValue": handleAppendImage,
192
+ "uploadContext": props.uploadContext,
193
+ "width": props.width,
194
+ "height": props.height,
195
+ "icon": props.icon
196
+ }, null)]);
197
+ }
198
+ const videoViewer = unref(isShowVideoViewer) ? createVNode("div", {
199
+ "class": "mk-upload-video-viewer"
200
+ }, [createVNode(MKSvgIcon, {
201
+ "class": "mk-upload-video-viewer__close",
202
+ "iconClass": "Close",
203
+ "onClick": () => isShowVideoViewer.value = false
204
+ }, null), createVNode("div", {
205
+ "class": "mk-upload-video-viewer__mask"
206
+ }, null), createVNode("video", {
207
+ "class": "mk-upload-video-viewer__video",
208
+ "src": currentVideoSrc.value,
209
+ "controls": true
210
+ }, null)]) : null;
211
+ return createVNode("div", {
212
+ "class": "mk-upload-video",
213
+ "style": {
214
+ width: _multiple ? "" : props.width
215
+ }
216
+ }, [content, videoViewer]);
217
+ };
218
+ }
219
+ });
220
+ export {
221
+ UploadVideo as default
222
+ };
223
+ //# sourceMappingURL=upload-video.js.map