@maketribe/ms-app 3.2.9 → 3.2.11

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 (334) hide show
  1. package/dist/cjs/components/basic/image-cropper/image-cropper-api.js +3 -1
  2. package/dist/cjs/components/basic/image-cropper/image-cropper-api.js.map +1 -1
  3. package/dist/cjs/components/basic/image-cropper/image-cropper-content-options.js +2 -0
  4. package/dist/cjs/components/basic/image-cropper/image-cropper-content-options.js.map +1 -1
  5. package/dist/cjs/components/basic/image-cropper/image-cropper-content.js +24 -23
  6. package/dist/cjs/components/basic/image-cropper/image-cropper-content.js.map +1 -1
  7. package/dist/cjs/components/basic/upload-file/ui/upload-image/upload-image.js +2 -0
  8. package/dist/cjs/components/basic/upload-file/ui/upload-image/upload-image.js.map +1 -1
  9. package/dist/cjs/components/business/resource-list/ResourceManager.js +36 -37
  10. package/dist/cjs/components/business/resource-list/ResourceManager.js.map +1 -1
  11. package/dist/cjs/components/business/resource-list/components/resource-item/index.vue.js +10 -0
  12. package/dist/cjs/components/business/resource-list/components/resource-item/index.vue.js.map +1 -1
  13. package/dist/cjs/components/business/resource-list/resource-list.vue.js +43 -17
  14. package/dist/cjs/components/business/resource-list/resource-list.vue.js.map +1 -1
  15. package/dist/cjs/components/business/resource-manager/resource-manager.vue.js.map +1 -1
  16. package/dist/cjs/components/business/resource-select/resource-select-input.js +50 -0
  17. package/dist/cjs/components/business/resource-select/resource-select-input.js.map +1 -0
  18. package/dist/cjs/components/data-model/data-filter-drawer/data-filter-drawer-options.js +20 -0
  19. package/dist/cjs/components/data-model/data-filter-drawer/data-filter-drawer-options.js.map +1 -0
  20. package/dist/cjs/components/data-model/data-filter-drawer/data-filter-drawer.js +68 -0
  21. package/dist/cjs/components/data-model/data-filter-drawer/data-filter-drawer.js.map +1 -0
  22. package/dist/cjs/components/data-model/data-filter-drawer/index.js +11 -0
  23. package/dist/cjs/components/data-model/data-filter-drawer/index.js.map +1 -0
  24. package/dist/cjs/components/data-model/data-filter-form/components/condition-date/condition-date-options.js +8 -5
  25. package/dist/cjs/components/data-model/data-filter-form/components/condition-date/condition-date-options.js.map +1 -1
  26. package/dist/cjs/components/data-model/data-filter-form/components/condition-date/condition-date.js +9 -22
  27. package/dist/cjs/components/data-model/data-filter-form/components/condition-date/condition-date.js.map +1 -1
  28. package/dist/cjs/components/data-model/data-filter-form/components/condition-date/index.js +1 -0
  29. package/dist/cjs/components/data-model/data-filter-form/components/condition-date/index.js.map +1 -1
  30. package/dist/cjs/components/data-model/data-filter-form/components/condition-input/condition-input-options.js +4 -0
  31. package/dist/cjs/components/data-model/data-filter-form/components/condition-input/condition-input-options.js.map +1 -1
  32. package/dist/cjs/components/data-model/data-filter-form/components/condition-input/condition-input.js +7 -19
  33. package/dist/cjs/components/data-model/data-filter-form/components/condition-input/condition-input.js.map +1 -1
  34. package/dist/cjs/components/data-model/data-filter-form/components/condition-input/index.js +1 -0
  35. package/dist/cjs/components/data-model/data-filter-form/components/condition-input/index.js.map +1 -1
  36. package/dist/cjs/components/data-model/data-filter-form/components/condition-number/condition-number-options.js +7 -7
  37. package/dist/cjs/components/data-model/data-filter-form/components/condition-number/condition-number-options.js.map +1 -1
  38. package/dist/cjs/components/data-model/data-filter-form/components/condition-number/condition-number.js +13 -26
  39. package/dist/cjs/components/data-model/data-filter-form/components/condition-number/condition-number.js.map +1 -1
  40. package/dist/cjs/components/data-model/data-filter-form/components/condition-number/index.js +1 -0
  41. package/dist/cjs/components/data-model/data-filter-form/components/condition-number/index.js.map +1 -1
  42. package/dist/cjs/components/data-model/data-filter-form/components/condition-select/condition-select-options.js +2 -2
  43. package/dist/cjs/components/data-model/data-filter-form/components/condition-select/condition-select-options.js.map +1 -1
  44. package/dist/cjs/components/data-model/data-filter-form/components/condition-select/condition-select.js +7 -27
  45. package/dist/cjs/components/data-model/data-filter-form/components/condition-select/condition-select.js.map +1 -1
  46. package/dist/cjs/components/data-model/data-filter-form/components/condition-select/index.js +1 -1
  47. package/dist/cjs/components/data-model/data-filter-form/composables/use-condition.js +8 -38
  48. package/dist/cjs/components/data-model/data-filter-form/composables/use-condition.js.map +1 -1
  49. package/dist/cjs/components/data-model/data-filter-form/data-filter-form-item/data-filter-form-item.js +31 -67
  50. package/dist/cjs/components/data-model/data-filter-form/data-filter-form-item/data-filter-form-item.js.map +1 -1
  51. package/dist/cjs/components/data-model/data-filter-form/data-filter-form.js +9 -6
  52. package/dist/cjs/components/data-model/data-filter-form/data-filter-form.js.map +1 -1
  53. package/dist/cjs/components/data-model/data-filter-form/index.js +1 -11
  54. package/dist/cjs/components/data-model/data-filter-form/index.js.map +1 -1
  55. package/dist/cjs/components/data-model/data-filter-form/operator-options.js +18 -28
  56. package/dist/cjs/components/data-model/data-filter-form/operator-options.js.map +1 -1
  57. package/dist/cjs/components/data-model/data-filter-form/token.js +0 -2
  58. package/dist/cjs/components/data-model/data-filter-form/token.js.map +1 -1
  59. package/dist/cjs/components/data-model/data-table/components/header-components/table-filter/table-filter.js +44 -21
  60. package/dist/cjs/components/data-model/data-table/components/header-components/table-filter/table-filter.js.map +1 -1
  61. package/dist/cjs/composables/use-column-component.js +3 -3
  62. package/dist/cjs/composables/use-column-component.js.map +1 -1
  63. package/dist/cjs/core/component/DataFilterComponents.js +4 -0
  64. package/dist/cjs/core/component/DataFilterComponents.js.map +1 -1
  65. package/dist/cjs/core/component/DataFormComponents.js +8 -0
  66. package/dist/cjs/core/component/DataFormComponents.js.map +1 -1
  67. package/dist/cjs/index.js +2 -0
  68. package/dist/cjs/index.js.map +1 -1
  69. package/dist/cjs/modules/cms/cms-settings.js +43 -0
  70. package/dist/cjs/modules/cms/cms-settings.js.map +1 -0
  71. package/dist/cjs/modules/cms/components/part-tree/index.vue.js +2 -0
  72. package/dist/cjs/modules/cms/components/part-tree/index.vue.js.map +1 -1
  73. package/dist/cjs/modules/cms/dataviews/cms-ad-contents/CmsAdContentsForm.js +3 -0
  74. package/dist/cjs/modules/cms/dataviews/cms-ad-contents/CmsAdContentsForm.js.map +1 -1
  75. package/dist/cjs/modules/cms/dataviews/cms-articles/CmsArticlesForm.js +33 -2
  76. package/dist/cjs/modules/cms/dataviews/cms-articles/CmsArticlesForm.js.map +1 -1
  77. package/dist/cjs/modules/cms/dataviews/cms-articles/CmsArticlesTable.js +5 -1
  78. package/dist/cjs/modules/cms/dataviews/cms-articles/CmsArticlesTable.js.map +1 -1
  79. package/dist/cjs/modules/cms/dataviews/cms-articles/cms-article-atlas/CmsArticleAtlasForm.js +3 -0
  80. package/dist/cjs/modules/cms/dataviews/cms-articles/cms-article-atlas/CmsArticleAtlasForm.js.map +1 -1
  81. package/dist/cjs/modules/cms/dataviews/cms-parts/CmsPartForm.js +4 -37
  82. package/dist/cjs/modules/cms/dataviews/cms-parts/CmsPartForm.js.map +1 -1
  83. package/dist/cjs/modules/cms/index.js +5 -0
  84. package/dist/cjs/modules/cms/index.js.map +1 -1
  85. package/dist/cjs/modules/cms/pages/cms-ad/index.vue2.js +3 -1
  86. package/dist/cjs/modules/cms/pages/cms-ad/index.vue2.js.map +1 -1
  87. package/dist/cjs/modules/cms/pages/cms-contents/article-edit-add-page.vue2.js +143 -165
  88. package/dist/cjs/modules/cms/pages/cms-contents/article-edit-add-page.vue2.js.map +1 -1
  89. package/dist/cjs/modules/cms/pages/cms-contents/components/article-atlas.vue.js.map +1 -1
  90. package/dist/cjs/modules/cms/pages/cms-contents/components/article-list.vue.js +37 -40
  91. package/dist/cjs/modules/cms/pages/cms-contents/components/article-list.vue.js.map +1 -1
  92. package/dist/cjs/modules/cms/pages/cms-contents/components/part-info.vue.js +63 -59
  93. package/dist/cjs/modules/cms/pages/cms-contents/components/part-info.vue.js.map +1 -1
  94. package/dist/cjs/modules/cms/pages/cms-contents/index.vue2.js +13 -6
  95. package/dist/cjs/modules/cms/pages/cms-contents/index.vue2.js.map +1 -1
  96. package/dist/cjs/modules/cms/pages/cms-resource/index.vue2.js +2 -6
  97. package/dist/cjs/modules/cms/pages/cms-resource/index.vue2.js.map +1 -1
  98. package/dist/cjs/modules/cms/pages/cms-settigns/index.vue.js +4 -0
  99. package/dist/cjs/modules/cms/pages/cms-settigns/index.vue.js.map +1 -0
  100. package/dist/cjs/modules/cms/pages/cms-settigns/index.vue2.js +338 -0
  101. package/dist/cjs/modules/cms/pages/cms-settigns/index.vue2.js.map +1 -0
  102. package/dist/cjs/modules/ms/components/image-select/image-select-api.js +76 -0
  103. package/dist/cjs/modules/ms/components/image-select/image-select-api.js.map +1 -0
  104. package/dist/cjs/modules/ms/components/image-select/image-select-panel.js +111 -0
  105. package/dist/cjs/modules/ms/components/image-select/image-select-panel.js.map +1 -0
  106. package/dist/cjs/modules/ms/components/image-select/index.js +7 -0
  107. package/dist/cjs/modules/ms/components/image-select/index.js.map +1 -0
  108. package/dist/cjs/modules/ms/components/material-list/material-group-form-popover.js +2 -0
  109. package/dist/cjs/modules/ms/components/material-list/material-group-form-popover.js.map +1 -1
  110. package/dist/cjs/modules/ms/components/material-list/material-group.js +2 -0
  111. package/dist/cjs/modules/ms/components/material-list/material-group.js.map +1 -1
  112. package/dist/cjs/modules/ms/components/material-list/material-list-options.js +1 -0
  113. package/dist/cjs/modules/ms/components/material-list/material-list-options.js.map +1 -1
  114. package/dist/cjs/modules/ms/components/material-list/material-list.js +1 -0
  115. package/dist/cjs/modules/ms/components/material-list/material-list.js.map +1 -1
  116. package/dist/cjs/modules/ms/components/material-select/material-select-api.js +1 -0
  117. package/dist/cjs/modules/ms/components/material-select/material-select-api.js.map +1 -1
  118. package/dist/cjs/modules/ms/dataviews/ms-config/MsConfigForm.js +1 -0
  119. package/dist/cjs/modules/ms/dataviews/ms-config/MsConfigForm.js.map +1 -1
  120. package/dist/cjs/modules/ms/dataviews/ms-config/MsConfigTable.js +34 -0
  121. package/dist/cjs/modules/ms/dataviews/ms-config/MsConfigTable.js.map +1 -1
  122. package/dist/cjs/modules/ms/dataviews/ms-material/MsMaterialTable.js +12 -2
  123. package/dist/cjs/modules/ms/dataviews/ms-material/MsMaterialTable.js.map +1 -1
  124. package/dist/cjs/modules/ms/image-upload-context/index.js +55 -0
  125. package/dist/cjs/modules/ms/image-upload-context/index.js.map +1 -0
  126. package/dist/cjs/modules/ms/index.js +2 -0
  127. package/dist/cjs/modules/ms/index.js.map +1 -1
  128. package/dist/cjs/modules/ms/pages/ms-material/index.vue2.js +2 -0
  129. package/dist/cjs/modules/ms/pages/ms-material/index.vue2.js.map +1 -1
  130. package/dist/cjs/modules/ms/pages/ms-menu/index.vue2.js +2 -0
  131. package/dist/cjs/modules/ms/pages/ms-menu/index.vue2.js.map +1 -1
  132. package/dist/cjs/modules/ms/pages/ms-role/components/aside.vue.js +2 -0
  133. package/dist/cjs/modules/ms/pages/ms-role/components/aside.vue.js.map +1 -1
  134. package/dist/cjs/modules/ms/pages/ms-role/components/role-permission-config/role-permission-config-options.js +2 -0
  135. package/dist/cjs/modules/ms/pages/ms-role/components/role-permission-config/role-permission-config-options.js.map +1 -1
  136. package/dist/cjs/modules/ms/pages/ms-role/index.vue2.js +2 -0
  137. package/dist/cjs/modules/ms/pages/ms-role/index.vue2.js.map +1 -1
  138. package/dist/esm/components/basic/image-cropper/image-cropper-api.js +3 -1
  139. package/dist/esm/components/basic/image-cropper/image-cropper-api.js.map +1 -1
  140. package/dist/esm/components/basic/image-cropper/image-cropper-content-options.js +2 -0
  141. package/dist/esm/components/basic/image-cropper/image-cropper-content-options.js.map +1 -1
  142. package/dist/esm/components/basic/image-cropper/image-cropper-content.js +25 -24
  143. package/dist/esm/components/basic/image-cropper/image-cropper-content.js.map +1 -1
  144. package/dist/esm/components/basic/upload-file/ui/upload-image/upload-image.js +2 -0
  145. package/dist/esm/components/basic/upload-file/ui/upload-image/upload-image.js.map +1 -1
  146. package/dist/esm/components/business/resource-list/ResourceManager.js +36 -37
  147. package/dist/esm/components/business/resource-list/ResourceManager.js.map +1 -1
  148. package/dist/esm/components/business/resource-list/components/resource-item/index.vue.js +10 -0
  149. package/dist/esm/components/business/resource-list/components/resource-item/index.vue.js.map +1 -1
  150. package/dist/esm/components/business/resource-list/resource-list.vue.js +44 -18
  151. package/dist/esm/components/business/resource-list/resource-list.vue.js.map +1 -1
  152. package/dist/esm/components/business/resource-manager/resource-manager.vue.js.map +1 -1
  153. package/dist/esm/components/business/resource-select/resource-select-input.js +51 -0
  154. package/dist/esm/components/business/resource-select/resource-select-input.js.map +1 -0
  155. package/dist/esm/components/data-model/data-filter-drawer/data-filter-drawer-options.js +20 -0
  156. package/dist/esm/components/data-model/data-filter-drawer/data-filter-drawer-options.js.map +1 -0
  157. package/dist/esm/components/data-model/data-filter-drawer/data-filter-drawer.js +69 -0
  158. package/dist/esm/components/data-model/data-filter-drawer/data-filter-drawer.js.map +1 -0
  159. package/dist/esm/components/data-model/data-filter-drawer/index.js +11 -0
  160. package/dist/esm/components/data-model/data-filter-drawer/index.js.map +1 -0
  161. package/dist/esm/components/data-model/data-filter-form/components/condition-date/condition-date-options.js +8 -5
  162. package/dist/esm/components/data-model/data-filter-form/components/condition-date/condition-date-options.js.map +1 -1
  163. package/dist/esm/components/data-model/data-filter-form/components/condition-date/condition-date.js +10 -23
  164. package/dist/esm/components/data-model/data-filter-form/components/condition-date/condition-date.js.map +1 -1
  165. package/dist/esm/components/data-model/data-filter-form/components/condition-date/index.js +2 -1
  166. package/dist/esm/components/data-model/data-filter-form/components/condition-input/condition-input-options.js +4 -0
  167. package/dist/esm/components/data-model/data-filter-form/components/condition-input/condition-input-options.js.map +1 -1
  168. package/dist/esm/components/data-model/data-filter-form/components/condition-input/condition-input.js +9 -21
  169. package/dist/esm/components/data-model/data-filter-form/components/condition-input/condition-input.js.map +1 -1
  170. package/dist/esm/components/data-model/data-filter-form/components/condition-input/index.js +2 -1
  171. package/dist/esm/components/data-model/data-filter-form/components/condition-number/condition-number-options.js +7 -7
  172. package/dist/esm/components/data-model/data-filter-form/components/condition-number/condition-number-options.js.map +1 -1
  173. package/dist/esm/components/data-model/data-filter-form/components/condition-number/condition-number.js +15 -28
  174. package/dist/esm/components/data-model/data-filter-form/components/condition-number/condition-number.js.map +1 -1
  175. package/dist/esm/components/data-model/data-filter-form/components/condition-number/index.js +2 -1
  176. package/dist/esm/components/data-model/data-filter-form/components/condition-select/condition-select-options.js +2 -2
  177. package/dist/esm/components/data-model/data-filter-form/components/condition-select/condition-select-options.js.map +1 -1
  178. package/dist/esm/components/data-model/data-filter-form/components/condition-select/condition-select.js +9 -29
  179. package/dist/esm/components/data-model/data-filter-form/components/condition-select/condition-select.js.map +1 -1
  180. package/dist/esm/components/data-model/data-filter-form/components/condition-select/index.js +2 -2
  181. package/dist/esm/components/data-model/data-filter-form/composables/use-condition.js +9 -39
  182. package/dist/esm/components/data-model/data-filter-form/composables/use-condition.js.map +1 -1
  183. package/dist/esm/components/data-model/data-filter-form/data-filter-form-item/data-filter-form-item.js +33 -69
  184. package/dist/esm/components/data-model/data-filter-form/data-filter-form-item/data-filter-form-item.js.map +1 -1
  185. package/dist/esm/components/data-model/data-filter-form/data-filter-form.js +9 -6
  186. package/dist/esm/components/data-model/data-filter-form/data-filter-form.js.map +1 -1
  187. package/dist/esm/components/data-model/data-filter-form/index.js +3 -13
  188. package/dist/esm/components/data-model/data-filter-form/operator-options.js +18 -29
  189. package/dist/esm/components/data-model/data-filter-form/operator-options.js.map +1 -1
  190. package/dist/esm/components/data-model/data-filter-form/token.js +1 -3
  191. package/dist/esm/components/data-model/data-filter-form/token.js.map +1 -1
  192. package/dist/esm/components/data-model/data-table/components/header-components/table-filter/table-filter.js +43 -20
  193. package/dist/esm/components/data-model/data-table/components/header-components/table-filter/table-filter.js.map +1 -1
  194. package/dist/esm/composables/use-column-component.js +3 -3
  195. package/dist/esm/composables/use-column-component.js.map +1 -1
  196. package/dist/esm/core/component/DataFilterComponents.js +5 -1
  197. package/dist/esm/core/component/DataFilterComponents.js.map +1 -1
  198. package/dist/esm/core/component/DataFormComponents.js +7 -0
  199. package/dist/esm/core/component/DataFormComponents.js.map +1 -1
  200. package/dist/esm/index.js +2 -0
  201. package/dist/esm/index.js.map +1 -1
  202. package/dist/esm/modules/cms/cms-settings.js +43 -0
  203. package/dist/esm/modules/cms/cms-settings.js.map +1 -0
  204. package/dist/esm/modules/cms/components/part-tree/index.vue.js +2 -0
  205. package/dist/esm/modules/cms/components/part-tree/index.vue.js.map +1 -1
  206. package/dist/esm/modules/cms/dataviews/cms-ad-contents/CmsAdContentsForm.js +3 -0
  207. package/dist/esm/modules/cms/dataviews/cms-ad-contents/CmsAdContentsForm.js.map +1 -1
  208. package/dist/esm/modules/cms/dataviews/cms-articles/CmsArticlesForm.js +33 -2
  209. package/dist/esm/modules/cms/dataviews/cms-articles/CmsArticlesForm.js.map +1 -1
  210. package/dist/esm/modules/cms/dataviews/cms-articles/CmsArticlesTable.js +5 -1
  211. package/dist/esm/modules/cms/dataviews/cms-articles/CmsArticlesTable.js.map +1 -1
  212. package/dist/esm/modules/cms/dataviews/cms-articles/cms-article-atlas/CmsArticleAtlasForm.js +3 -0
  213. package/dist/esm/modules/cms/dataviews/cms-articles/cms-article-atlas/CmsArticleAtlasForm.js.map +1 -1
  214. package/dist/esm/modules/cms/dataviews/cms-parts/CmsPartForm.js +4 -37
  215. package/dist/esm/modules/cms/dataviews/cms-parts/CmsPartForm.js.map +1 -1
  216. package/dist/esm/modules/cms/index.js +5 -0
  217. package/dist/esm/modules/cms/index.js.map +1 -1
  218. package/dist/esm/modules/cms/pages/cms-ad/index.vue2.js +3 -1
  219. package/dist/esm/modules/cms/pages/cms-ad/index.vue2.js.map +1 -1
  220. package/dist/esm/modules/cms/pages/cms-contents/article-edit-add-page.vue2.js +144 -166
  221. package/dist/esm/modules/cms/pages/cms-contents/article-edit-add-page.vue2.js.map +1 -1
  222. package/dist/esm/modules/cms/pages/cms-contents/components/article-atlas.vue.js.map +1 -1
  223. package/dist/esm/modules/cms/pages/cms-contents/components/article-list.vue.js +38 -41
  224. package/dist/esm/modules/cms/pages/cms-contents/components/article-list.vue.js.map +1 -1
  225. package/dist/esm/modules/cms/pages/cms-contents/components/part-info.vue.js +64 -60
  226. package/dist/esm/modules/cms/pages/cms-contents/components/part-info.vue.js.map +1 -1
  227. package/dist/esm/modules/cms/pages/cms-contents/index.vue2.js +14 -7
  228. package/dist/esm/modules/cms/pages/cms-contents/index.vue2.js.map +1 -1
  229. package/dist/esm/modules/cms/pages/cms-resource/index.vue2.js +2 -6
  230. package/dist/esm/modules/cms/pages/cms-resource/index.vue2.js.map +1 -1
  231. package/dist/esm/modules/cms/pages/cms-settigns/index.vue.js +5 -0
  232. package/dist/esm/modules/cms/pages/cms-settigns/index.vue.js.map +1 -0
  233. package/dist/esm/modules/cms/pages/cms-settigns/index.vue2.js +339 -0
  234. package/dist/esm/modules/cms/pages/cms-settigns/index.vue2.js.map +1 -0
  235. package/dist/esm/modules/ms/components/image-select/image-select-api.js +77 -0
  236. package/dist/esm/modules/ms/components/image-select/image-select-api.js.map +1 -0
  237. package/dist/esm/modules/ms/components/image-select/image-select-panel.js +112 -0
  238. package/dist/esm/modules/ms/components/image-select/image-select-panel.js.map +1 -0
  239. package/dist/esm/modules/ms/components/image-select/index.js +7 -0
  240. package/dist/esm/modules/ms/components/image-select/index.js.map +1 -0
  241. package/dist/esm/modules/ms/components/material-list/material-group-form-popover.js +2 -0
  242. package/dist/esm/modules/ms/components/material-list/material-group-form-popover.js.map +1 -1
  243. package/dist/esm/modules/ms/components/material-list/material-group.js +2 -0
  244. package/dist/esm/modules/ms/components/material-list/material-group.js.map +1 -1
  245. package/dist/esm/modules/ms/components/material-list/material-list-options.js +1 -0
  246. package/dist/esm/modules/ms/components/material-list/material-list-options.js.map +1 -1
  247. package/dist/esm/modules/ms/components/material-list/material-list.js +1 -0
  248. package/dist/esm/modules/ms/components/material-list/material-list.js.map +1 -1
  249. package/dist/esm/modules/ms/components/material-select/material-select-api.js +1 -0
  250. package/dist/esm/modules/ms/components/material-select/material-select-api.js.map +1 -1
  251. package/dist/esm/modules/ms/dataviews/ms-config/MsConfigForm.js +1 -0
  252. package/dist/esm/modules/ms/dataviews/ms-config/MsConfigForm.js.map +1 -1
  253. package/dist/esm/modules/ms/dataviews/ms-config/MsConfigTable.js +34 -0
  254. package/dist/esm/modules/ms/dataviews/ms-config/MsConfigTable.js.map +1 -1
  255. package/dist/esm/modules/ms/dataviews/ms-material/MsMaterialTable.js +12 -2
  256. package/dist/esm/modules/ms/dataviews/ms-material/MsMaterialTable.js.map +1 -1
  257. package/dist/esm/modules/ms/image-upload-context/index.js +55 -0
  258. package/dist/esm/modules/ms/image-upload-context/index.js.map +1 -0
  259. package/dist/esm/modules/ms/index.js +2 -0
  260. package/dist/esm/modules/ms/index.js.map +1 -1
  261. package/dist/esm/modules/ms/pages/ms-material/index.vue2.js +2 -0
  262. package/dist/esm/modules/ms/pages/ms-material/index.vue2.js.map +1 -1
  263. package/dist/esm/modules/ms/pages/ms-menu/index.vue2.js +2 -0
  264. package/dist/esm/modules/ms/pages/ms-menu/index.vue2.js.map +1 -1
  265. package/dist/esm/modules/ms/pages/ms-role/components/aside.vue.js +2 -0
  266. package/dist/esm/modules/ms/pages/ms-role/components/aside.vue.js.map +1 -1
  267. package/dist/esm/modules/ms/pages/ms-role/components/role-permission-config/role-permission-config-options.js +2 -0
  268. package/dist/esm/modules/ms/pages/ms-role/components/role-permission-config/role-permission-config-options.js.map +1 -1
  269. package/dist/esm/modules/ms/pages/ms-role/index.vue2.js +2 -0
  270. package/dist/esm/modules/ms/pages/ms-role/index.vue2.js.map +1 -1
  271. package/dist/style/components/data-filter-drawer.css +1 -0
  272. package/dist/style/components/index.css +1 -1
  273. package/dist/style/components/table/index.css +1 -1
  274. package/dist/style/components/table/table-filter.css +1 -1
  275. package/dist/style/index.css +1 -1
  276. package/dist/style/modules/cms/index.css +1 -1
  277. package/dist/style/modules/cms/resource-manager.css +1 -1
  278. package/dist/style/src/components/data-filter-drawer.scss +5 -0
  279. package/dist/style/src/components/index.scss +1 -0
  280. package/dist/style/src/components/table/table-filter.scss +4 -0
  281. package/dist/style/src/modules/cms/resource-manager.scss +37 -7
  282. package/dist/style/src/theme/theme.scss +26 -12
  283. package/dist/style/theme/theme.css +1 -1
  284. package/dist/types/components/basic/config-provider/config-provider-options.d.ts +5 -5
  285. package/dist/types/components/basic/config-provider/config-provider.d.ts +10 -10
  286. package/dist/types/components/basic/config-provider/index.d.ts +10 -10
  287. package/dist/types/components/basic/config-provider/use-global-config.d.ts +1 -1
  288. package/dist/types/components/basic/image-cropper/image-cropper-api.d.ts +2 -0
  289. package/dist/types/components/basic/image-cropper/image-cropper-content-options.d.ts +2 -0
  290. package/dist/types/components/basic/image-cropper/image-cropper-content.d.ts +6 -0
  291. package/dist/types/components/basic/image-cropper/index.d.ts +6 -0
  292. package/dist/types/components/business/resource-list/ResourceManager.d.ts +2 -0
  293. package/dist/types/components/business/resource-select/resource-select-input.d.ts +16 -0
  294. package/dist/types/components/data-model/data-filter-drawer/data-filter-drawer-options.d.ts +16 -0
  295. package/dist/types/components/data-model/data-filter-drawer/data-filter-drawer.d.ts +24 -0
  296. package/dist/types/components/data-model/data-filter-drawer/index.d.ts +25 -0
  297. package/dist/types/components/data-model/data-filter-form/components/condition-date/condition-date-options.d.ts +17 -1
  298. package/dist/types/components/data-model/data-filter-form/components/condition-date/condition-date.d.ts +33 -6
  299. package/dist/types/components/data-model/data-filter-form/components/condition-date/index.d.ts +33 -5
  300. package/dist/types/components/data-model/data-filter-form/components/condition-input/condition-input-options.d.ts +16 -0
  301. package/dist/types/components/data-model/data-filter-form/components/condition-input/condition-input.d.ts +30 -2
  302. package/dist/types/components/data-model/data-filter-form/components/condition-input/index.d.ts +30 -2
  303. package/dist/types/components/data-model/data-filter-form/components/condition-number/condition-number-options.d.ts +17 -1
  304. package/dist/types/components/data-model/data-filter-form/components/condition-number/condition-number.d.ts +33 -6
  305. package/dist/types/components/data-model/data-filter-form/components/condition-number/index.d.ts +33 -5
  306. package/dist/types/components/data-model/data-filter-form/components/condition-select/condition-select-options.d.ts +14 -2
  307. package/dist/types/components/data-model/data-filter-form/components/condition-select/condition-select.d.ts +30 -2
  308. package/dist/types/components/data-model/data-filter-form/components/condition-select/index.d.ts +30 -2
  309. package/dist/types/components/data-model/data-filter-form/composables/use-condition.d.ts +13 -7
  310. package/dist/types/components/data-model/data-filter-form/token.d.ts +1 -13
  311. package/dist/types/core/component/DataFilterComponents.d.ts +5 -2
  312. package/dist/types/modules/cms/cms-settings.d.ts +102 -0
  313. package/dist/types/modules/cms/dataviews/cms-articles/CmsArticlesForm.d.ts +11 -0
  314. package/dist/types/modules/cms/pages/cms-settigns/index.vue.d.ts +2 -0
  315. package/dist/types/modules/ms/components/image-select/image-select-api.d.ts +5 -0
  316. package/dist/types/modules/ms/components/image-select/image-select-panel.d.ts +8 -0
  317. package/dist/types/modules/ms/components/image-select/index.d.ts +3 -0
  318. package/dist/types/modules/ms/dataviews/ms-config/MsConfigTable.d.ts +2 -0
  319. package/dist/types/modules/ms/dataviews/ms-material/MsMaterialTable.d.ts +1 -1
  320. package/dist/types/modules/ms/image-upload-context/index.d.ts +13 -0
  321. package/dist/types/modules/ms/index.d.ts +1 -0
  322. package/package.json +2 -2
  323. package/dist/cjs/components/data-model/data-filter-popover/data-filter-popover-options.js +0 -9
  324. package/dist/cjs/components/data-model/data-filter-popover/data-filter-popover-options.js.map +0 -1
  325. package/dist/cjs/components/data-model/data-filter-popover/data-filter-popover.js +0 -59
  326. package/dist/cjs/components/data-model/data-filter-popover/data-filter-popover.js.map +0 -1
  327. package/dist/cjs/components/data-model/data-filter-popover/index.js +0 -8
  328. package/dist/cjs/components/data-model/data-filter-popover/index.js.map +0 -1
  329. package/dist/esm/components/data-model/data-filter-popover/data-filter-popover-options.js +0 -9
  330. package/dist/esm/components/data-model/data-filter-popover/data-filter-popover-options.js.map +0 -1
  331. package/dist/esm/components/data-model/data-filter-popover/data-filter-popover.js +0 -60
  332. package/dist/esm/components/data-model/data-filter-popover/data-filter-popover.js.map +0 -1
  333. package/dist/esm/components/data-model/data-filter-popover/index.js +0 -8
  334. package/dist/esm/components/data-model/data-filter-popover/index.js.map +0 -1
@@ -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\r\n 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\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\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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"}
@@ -35,7 +35,7 @@ class ResourceManager extends Disposable {
35
35
  try {
36
36
  this.loadingManager.startLoading();
37
37
  const response = await httpRequest.post(
38
- `${this.baseURL}/resource/resource-list`,
38
+ `${this.baseURL}/list`,
39
39
  {
40
40
  directoryPath: toPath,
41
41
  extensions: this.filterExtensions
@@ -63,10 +63,9 @@ class ResourceManager extends Disposable {
63
63
  const httpRequest = MSAppClient.instance.httpRequest;
64
64
  try {
65
65
  this.loadingManager.startLoading();
66
- const response = await httpRequest.post(
67
- `${this.baseURL}/resource/delete-resource-list`,
68
- { paths: this.selectResourceList.map((item) => item.path) }
69
- );
66
+ const response = await httpRequest.post(`${this.baseURL}/delete`, {
67
+ paths: this.selectResourceList.map((item) => item.path)
68
+ });
70
69
  if (response.data.code !== 200) {
71
70
  Messager.error({ message: response.data.msg });
72
71
  this.loadResourceInfoList();
@@ -80,15 +79,16 @@ class ResourceManager extends Disposable {
80
79
  this.loadingManager.completeLoading();
81
80
  }
82
81
  }
82
+ // 暂不做调整
83
83
  async getExistPathList(pathList) {
84
84
  const httpRequest = MSAppClient.instance.httpRequest;
85
85
  try {
86
86
  this.loadingManager.startLoading();
87
87
  const directoryPath = this.directories.length ? `/${this.directories.join("/")}` : "";
88
- return await httpRequest.post(
89
- `${this.baseURL}/resource/get-exist-path-list`,
90
- { pathList, directoryPath }
91
- );
88
+ return await httpRequest.post(`${this.baseURL}/exist-path-list`, {
89
+ pathList,
90
+ directoryPath
91
+ });
92
92
  } catch (e) {
93
93
  console.error(e);
94
94
  Messager.error({ message: "网络异常" });
@@ -107,10 +107,7 @@ class ResourceManager extends Disposable {
107
107
  formData.append(files[i].name, files[i]);
108
108
  }
109
109
  formData.append("directory", directory);
110
- const response = await httpRequest.post(
111
- `${this.baseURL}/resource/update-resource-list`,
112
- formData
113
- );
110
+ const response = await httpRequest.post(`${this.baseURL}/save`, formData);
114
111
  if (response.data.code !== 200) {
115
112
  Messager.error({ message: response.data.msg });
116
113
  this.loadResourceInfoList();
@@ -126,30 +123,34 @@ class ResourceManager extends Disposable {
126
123
  }
127
124
  async downloadSelectResource() {
128
125
  const httpRequest = MSAppClient.instance.httpRequest;
129
- const response = await httpRequest.post(
130
- `${this.baseURL}/resource/get-download-resource-url`,
131
- { filePath: this.selectResourceList[0].path }
132
- );
133
- if (response.data.code !== 200) {
134
- Messager.error({ message: response.data.msg });
135
- return;
126
+ try {
127
+ const response = await httpRequest.post(
128
+ `${this.baseURL}/download`,
129
+ {
130
+ path: this.selectResourceList[0].path
131
+ },
132
+ { responseType: "blob" }
133
+ );
134
+ const url = URL.createObjectURL(response.data);
135
+ var aElement = document.createElement("a");
136
+ aElement.href = url;
137
+ aElement.target = "_blank";
138
+ aElement.download = this.selectResourceList[0].name;
139
+ aElement.click();
140
+ URL.revokeObjectURL(url);
141
+ } catch (e) {
142
+ console.error(e);
143
+ Messager.error({ message: "网络异常" });
136
144
  }
137
- var aElement = document.createElement("a");
138
- aElement.href = response.data.data;
139
- aElement.target = "_blank";
140
- aElement.click();
141
145
  }
142
146
  async editSelectFile() {
143
147
  const httpRequest = MSAppClient.instance.httpRequest;
144
148
  try {
145
149
  this.loadingManager.startLoading();
146
150
  var resourceInfo = this.selectResourceList[0];
147
- const response = await httpRequest.post(
148
- `${this.baseURL}/resource/get-text`,
149
- {
150
- path: resourceInfo.path
151
- }
152
- );
151
+ const response = await httpRequest.post(`${this.baseURL}/text/read`, {
152
+ path: resourceInfo.path
153
+ });
153
154
  this.isShowEditDialog = true;
154
155
  this.currentEditText = response.data.data;
155
156
  } finally {
@@ -161,17 +162,15 @@ class ResourceManager extends Disposable {
161
162
  try {
162
163
  this.loadingManager.startLoading();
163
164
  var resourceInfo = this.selectResourceList[0];
164
- const response = await httpRequest.post(
165
- `${this.baseURL}/resource/set-text`,
166
- {
167
- path: resourceInfo.path,
168
- content: this.currentEditText
169
- }
170
- );
165
+ const response = await httpRequest.post(`${this.baseURL}/text/write`, {
166
+ path: resourceInfo.path,
167
+ content: this.currentEditText
168
+ });
171
169
  if (response.data.code !== 200) {
172
170
  Messager.error({ message: response.data.msg });
173
171
  return;
174
172
  }
173
+ await this.loadResourceInfoList();
175
174
  this.isShowEditDialog = false;
176
175
  this.currentEditText = "";
177
176
  } finally {
@@ -1 +1 @@
1
- {"version":3,"file":"ResourceManager.js","sources":["../../../../../src/components/business/resource-list/ResourceManager.ts"],"sourcesContent":["import { Disposable } from \"@maketribe/utils\";\r\nimport { MSAppClient } from \"../../../core\";\r\nimport { Dialoger, LoadingManager, Messager } from \"@maketribe/dm\";\r\nimport { R } from \"@maketribe/request\";\r\n\r\nexport type ResourceInfo = {\r\n name: string;\r\n path: string;\r\n isDirectory: boolean;\r\n extension: string;\r\n isSelected: boolean;\r\n};\r\n\r\nexport type ResourceManagerOptions = {\r\n extensions?: string[];\r\n baseURL: string;\r\n};\r\n\r\nexport class ResourceManager extends Disposable {\r\n directories: string[];\r\n\r\n resourceInfoList: ResourceInfo[];\r\n\r\n loadingManager: LoadingManager;\r\n\r\n isShowEditDialog: boolean = false;\r\n\r\n currentEditText: string = \"\";\r\n\r\n filterExtensions: string[] = [];\r\n\r\n baseURL: string = \"\";\r\n\r\n get selectResourceList() {\r\n return this.resourceInfoList.filter((item) => item.isSelected);\r\n }\r\n\r\n get loading() {\r\n return this.loadingManager.loading;\r\n }\r\n\r\n constructor(options: ResourceManagerOptions) {\r\n super();\r\n\r\n this.directories = [];\r\n\r\n this.resourceInfoList = [];\r\n\r\n this.loadingManager = new LoadingManager();\r\n\r\n this.filterExtensions = options.extensions ?? [];\r\n this.baseURL = options.baseURL;\r\n }\r\n\r\n async loadResourceInfoList(\r\n toPath: string = this.directories.length\r\n ? `/${this.directories.join(\"/\")}`\r\n : \"\"\r\n ) {\r\n const httpRequest = MSAppClient.instance!.httpRequest;\r\n\r\n try {\r\n this.loadingManager.startLoading();\r\n\r\n const response = await httpRequest.post<R<ResourceInfo[]>>(\r\n `${this.baseURL}/resource/resource-list`,\r\n {\r\n directoryPath: toPath,\r\n extensions: this.filterExtensions,\r\n }\r\n );\r\n\r\n if (response.data.code !== 200) {\r\n Messager.error({ message: response.data.msg });\r\n this.resourceInfoList = [];\r\n return;\r\n }\r\n\r\n this.resourceInfoList = response.data.data.map((item) => ({\r\n ...item,\r\n isSelected: false,\r\n }));\r\n\r\n var directorySegments = toPath.startsWith(\"/\")\r\n ? toPath.slice(1).split(\"/\")\r\n : toPath.split(\"/\");\r\n\r\n this.directories = directorySegments.filter(Boolean);\r\n } catch (e) {\r\n console.error(e);\r\n\r\n Messager.error({ message: \"网络异常\" });\r\n } finally {\r\n this.loadingManager.completeLoading();\r\n }\r\n }\r\n\r\n async deleteSelectResourceList() {\r\n const httpRequest = MSAppClient.instance!.httpRequest;\r\n\r\n try {\r\n this.loadingManager.startLoading();\r\n\r\n const response = await httpRequest.post(\r\n `${this.baseURL}/resource/delete-resource-list`,\r\n { paths: this.selectResourceList.map((item) => item.path) }\r\n );\r\n\r\n if (response.data.code !== 200) {\r\n Messager.error({ message: response.data.msg });\r\n this.loadResourceInfoList();\r\n return;\r\n }\r\n\r\n await this.loadResourceInfoList();\r\n } catch (e) {\r\n console.error(e);\r\n\r\n Messager.error({ message: \"网络异常\" });\r\n } finally {\r\n this.loadingManager.completeLoading();\r\n }\r\n }\r\n\r\n async getExistPathList(pathList: string[]) {\r\n const httpRequest = MSAppClient.instance!.httpRequest;\r\n\r\n try {\r\n this.loadingManager.startLoading();\r\n\r\n const directoryPath = this.directories.length\r\n ? `/${this.directories.join(\"/\")}`\r\n : \"\";\r\n\r\n return await httpRequest.post(\r\n `${this.baseURL}/resource/get-exist-path-list`,\r\n { pathList, directoryPath }\r\n );\r\n } catch (e) {\r\n console.error(e);\r\n\r\n Messager.error({ message: \"网络异常\" });\r\n\r\n throw e;\r\n } finally {\r\n this.loadingManager.completeLoading();\r\n }\r\n }\r\n\r\n async uploadResourceList(files: File[]) {\r\n const httpRequest = MSAppClient.instance!.httpRequest;\r\n\r\n try {\r\n this.loadingManager.startLoading();\r\n\r\n var directory = this.directories.length\r\n ? `/${this.directories.join(\"/\")}`\r\n : \"\";\r\n\r\n var formData = new FormData();\r\n for (var i = 0; i < files.length; i++) {\r\n formData.append(files[i].name, files[i]);\r\n }\r\n formData.append(\"directory\", directory);\r\n\r\n const response = await httpRequest.post(\r\n `${this.baseURL}/resource/update-resource-list`,\r\n formData\r\n );\r\n\r\n if (response.data.code !== 200) {\r\n Messager.error({ message: response.data.msg });\r\n this.loadResourceInfoList();\r\n return;\r\n }\r\n\r\n await this.loadResourceInfoList();\r\n } catch (e) {\r\n console.error(e);\r\n\r\n Messager.error({ message: \"网络异常\" });\r\n } finally {\r\n this.loadingManager.completeLoading();\r\n }\r\n }\r\n\r\n async downloadSelectResource() {\r\n const httpRequest = MSAppClient.instance!.httpRequest;\r\n\r\n const response = await httpRequest.post(\r\n `${this.baseURL}/resource/get-download-resource-url`,\r\n { filePath: this.selectResourceList[0].path }\r\n );\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 var aElement = document.createElement(\"a\");\r\n aElement.href = response.data.data;\r\n aElement.target = \"_blank\";\r\n\r\n aElement.click();\r\n }\r\n\r\n async editSelectFile() {\r\n const httpRequest = MSAppClient.instance!.httpRequest;\r\n\r\n try {\r\n this.loadingManager.startLoading();\r\n\r\n var resourceInfo = this.selectResourceList[0];\r\n\r\n const response = await httpRequest.post(\r\n `${this.baseURL}/resource/get-text`,\r\n {\r\n path: resourceInfo.path,\r\n }\r\n );\r\n\r\n this.isShowEditDialog = true;\r\n this.currentEditText = response.data.data;\r\n } finally {\r\n this.loadingManager.completeLoading();\r\n }\r\n }\r\n\r\n async saveEditFile() {\r\n const httpRequest = MSAppClient.instance!.httpRequest;\r\n\r\n try {\r\n this.loadingManager.startLoading();\r\n\r\n var resourceInfo = this.selectResourceList[0];\r\n\r\n const response = await httpRequest.post(\r\n `${this.baseURL}/resource/set-text`,\r\n {\r\n path: resourceInfo.path,\r\n content: this.currentEditText,\r\n }\r\n );\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 this.isShowEditDialog = false;\r\n this.currentEditText = \"\";\r\n } finally {\r\n this.loadingManager.completeLoading();\r\n }\r\n }\r\n\r\n clearAllSelect() {\r\n for (var resourceInfo of this.selectResourceList) {\r\n resourceInfo.isSelected = false;\r\n }\r\n }\r\n\r\n handleSelectClick(event: MouseEvent, item: ResourceInfo) {\r\n if (!event.ctrlKey) {\r\n this.clearAllSelect();\r\n\r\n item.isSelected = true;\r\n return;\r\n }\r\n\r\n item.isSelected = !item.isSelected;\r\n }\r\n}\r\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ResourceManager.js","sources":["../../../../../src/components/business/resource-list/ResourceManager.ts"],"sourcesContent":["import { Disposable } from \"@maketribe/utils\";\r\nimport { MSAppClient } from \"../../../core\";\r\nimport { Dialoger, LoadingManager, Messager } from \"@maketribe/dm\";\r\nimport { R } from \"@maketribe/request\";\r\n\r\nexport type ResourceInfo = {\r\n name: string;\r\n path: string;\r\n isDirectory: boolean;\r\n extension: string;\r\n length: string;\r\n lastModified: string;\r\n isSelected: boolean;\r\n};\r\n\r\nexport type ResourceManagerOptions = {\r\n extensions?: string[];\r\n baseURL: string;\r\n};\r\n\r\nexport class ResourceManager extends Disposable {\r\n directories: string[];\r\n\r\n resourceInfoList: ResourceInfo[];\r\n\r\n loadingManager: LoadingManager;\r\n\r\n isShowEditDialog: boolean = false;\r\n\r\n currentEditText: string = \"\";\r\n\r\n filterExtensions: string[] = [];\r\n\r\n baseURL: string = \"\";\r\n\r\n get selectResourceList() {\r\n return this.resourceInfoList.filter((item) => item.isSelected);\r\n }\r\n\r\n get loading() {\r\n return this.loadingManager.loading;\r\n }\r\n\r\n constructor(options: ResourceManagerOptions) {\r\n super();\r\n\r\n this.directories = [];\r\n\r\n this.resourceInfoList = [];\r\n\r\n this.loadingManager = new LoadingManager();\r\n\r\n this.filterExtensions = options.extensions ?? [];\r\n this.baseURL = options.baseURL;\r\n }\r\n\r\n async loadResourceInfoList(\r\n toPath: string = this.directories.length\r\n ? `/${this.directories.join(\"/\")}`\r\n : \"\"\r\n ) {\r\n const httpRequest = MSAppClient.instance!.httpRequest;\r\n\r\n try {\r\n this.loadingManager.startLoading();\r\n\r\n const response = await httpRequest.post<R<ResourceInfo[]>>(\r\n `${this.baseURL}/list`,\r\n {\r\n directoryPath: toPath,\r\n extensions: this.filterExtensions,\r\n }\r\n );\r\n\r\n if (response.data.code !== 200) {\r\n Messager.error({ message: response.data.msg });\r\n this.resourceInfoList = [];\r\n return;\r\n }\r\n\r\n this.resourceInfoList = response.data.data.map((item) => ({\r\n ...item,\r\n isSelected: false,\r\n }));\r\n\r\n var directorySegments = toPath.startsWith(\"/\")\r\n ? toPath.slice(1).split(\"/\")\r\n : toPath.split(\"/\");\r\n\r\n this.directories = directorySegments.filter(Boolean);\r\n } catch (e) {\r\n console.error(e);\r\n\r\n Messager.error({ message: \"网络异常\" });\r\n } finally {\r\n this.loadingManager.completeLoading();\r\n }\r\n }\r\n\r\n async deleteSelectResourceList() {\r\n const httpRequest = MSAppClient.instance!.httpRequest;\r\n\r\n try {\r\n this.loadingManager.startLoading();\r\n\r\n const response = await httpRequest.post(`${this.baseURL}/delete`, {\r\n paths: this.selectResourceList.map((item) => item.path),\r\n });\r\n\r\n if (response.data.code !== 200) {\r\n Messager.error({ message: response.data.msg });\r\n this.loadResourceInfoList();\r\n return;\r\n }\r\n\r\n await this.loadResourceInfoList();\r\n } catch (e) {\r\n console.error(e);\r\n\r\n Messager.error({ message: \"网络异常\" });\r\n } finally {\r\n this.loadingManager.completeLoading();\r\n }\r\n }\r\n // 暂不做调整\r\n async getExistPathList(pathList: string[]) {\r\n const httpRequest = MSAppClient.instance!.httpRequest;\r\n\r\n try {\r\n this.loadingManager.startLoading();\r\n\r\n const directoryPath = this.directories.length\r\n ? `/${this.directories.join(\"/\")}`\r\n : \"\";\r\n\r\n return await httpRequest.post(`${this.baseURL}/exist-path-list`, {\r\n pathList,\r\n directoryPath,\r\n });\r\n } catch (e) {\r\n console.error(e);\r\n\r\n Messager.error({ message: \"网络异常\" });\r\n\r\n throw e;\r\n } finally {\r\n this.loadingManager.completeLoading();\r\n }\r\n }\r\n\r\n async uploadResourceList(files: File[]) {\r\n const httpRequest = MSAppClient.instance!.httpRequest;\r\n\r\n try {\r\n this.loadingManager.startLoading();\r\n\r\n var directory = this.directories.length\r\n ? `/${this.directories.join(\"/\")}`\r\n : \"\";\r\n\r\n var formData = new FormData();\r\n for (var i = 0; i < files.length; i++) {\r\n formData.append(files[i].name, files[i]);\r\n }\r\n formData.append(\"directory\", directory);\r\n\r\n const response = await httpRequest.post(`${this.baseURL}/save`, formData);\r\n\r\n if (response.data.code !== 200) {\r\n Messager.error({ message: response.data.msg });\r\n this.loadResourceInfoList();\r\n return;\r\n }\r\n\r\n await this.loadResourceInfoList();\r\n } catch (e) {\r\n console.error(e);\r\n\r\n Messager.error({ message: \"网络异常\" });\r\n } finally {\r\n this.loadingManager.completeLoading();\r\n }\r\n }\r\n\r\n async downloadSelectResource() {\r\n const httpRequest = MSAppClient.instance!.httpRequest;\r\n\r\n try {\r\n const response = await httpRequest.post<Blob>(\r\n `${this.baseURL}/download`,\r\n {\r\n path: this.selectResourceList[0].path,\r\n },\r\n { responseType: \"blob\" }\r\n );\r\n\r\n const url = URL.createObjectURL(response.data);\r\n\r\n var aElement = document.createElement(\"a\");\r\n aElement.href = url;\r\n aElement.target = \"_blank\";\r\n aElement.download = this.selectResourceList[0].name;\r\n\r\n aElement.click();\r\n\r\n URL.revokeObjectURL(url);\r\n } catch (e) {\r\n console.error(e);\r\n\r\n Messager.error({ message: \"网络异常\" });\r\n }\r\n }\r\n\r\n async editSelectFile() {\r\n const httpRequest = MSAppClient.instance!.httpRequest;\r\n\r\n try {\r\n this.loadingManager.startLoading();\r\n\r\n var resourceInfo = this.selectResourceList[0];\r\n\r\n const response = await httpRequest.post(`${this.baseURL}/text/read`, {\r\n path: resourceInfo.path,\r\n });\r\n\r\n this.isShowEditDialog = true;\r\n this.currentEditText = response.data.data;\r\n } finally {\r\n this.loadingManager.completeLoading();\r\n }\r\n }\r\n\r\n async saveEditFile() {\r\n const httpRequest = MSAppClient.instance!.httpRequest;\r\n\r\n try {\r\n this.loadingManager.startLoading();\r\n\r\n var resourceInfo = this.selectResourceList[0];\r\n\r\n const response = await httpRequest.post(`${this.baseURL}/text/write`, {\r\n path: resourceInfo.path,\r\n content: this.currentEditText,\r\n });\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 await this.loadResourceInfoList();\r\n\r\n this.isShowEditDialog = false;\r\n this.currentEditText = \"\";\r\n } finally {\r\n this.loadingManager.completeLoading();\r\n }\r\n }\r\n\r\n clearAllSelect() {\r\n for (var resourceInfo of this.selectResourceList) {\r\n resourceInfo.isSelected = false;\r\n }\r\n }\r\n\r\n handleSelectClick(event: MouseEvent, item: ResourceInfo) {\r\n if (!event.ctrlKey) {\r\n this.clearAllSelect();\r\n\r\n item.isSelected = true;\r\n return;\r\n }\r\n\r\n item.isSelected = !item.isSelected;\r\n }\r\n}\r\n"],"names":[],"mappings":"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"}
@@ -26,6 +26,10 @@ const _hoisted_1 = { class: "resource-item__wrapper" };
26
26
  const _hoisted_2 = { class: "resource-item__main" };
27
27
  const _hoisted_3 = { class: "resource-item__label" };
28
28
  const _hoisted_4 = ["title"];
29
+ const _hoisted_5 = { class: "resource-item__time" };
30
+ const _hoisted_6 = { class: "resource-item__size" };
31
+ const _hoisted_7 = { key: 0 };
32
+ const _hoisted_8 = { key: 1 };
29
33
  const _sfc_main = /* @__PURE__ */ defineComponent({
30
34
  __name: "index",
31
35
  props: {
@@ -66,6 +70,12 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
66
70
  createElementVNode("span", {
67
71
  title: __props.resourceItem.name
68
72
  }, toDisplayString(__props.resourceItem.name), 9, _hoisted_4)
73
+ ]),
74
+ createElementVNode("div", _hoisted_5, [
75
+ createElementVNode("span", null, toDisplayString(__props.resourceItem.lastModified), 1)
76
+ ]),
77
+ createElementVNode("div", _hoisted_6, [
78
+ __props.resourceItem.isDirectory ? (openBlock(), createElementBlock("span", _hoisted_7, " - ")) : (openBlock(), createElementBlock("span", _hoisted_8, toDisplayString(__props.resourceItem.length > 1024 ? __props.resourceItem.length > 1024 * 1024 ? Math.ceil(__props.resourceItem.length / 1024 / 1024 * 100) / 100 + " MB" : Math.ceil(__props.resourceItem.length / 1024 * 100) / 100 + " KB" : __props.resourceItem.length + " 字节"), 1))
69
79
  ])
70
80
  ])
71
81
  ], 2);
@@ -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>\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":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAiBA,UAAM,QAAQ;AAOR,UAAA,YAAY,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":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA0BA,UAAM,QAAQ;AAOR,UAAA,YAAY,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,11 +1,12 @@
1
- import { defineComponent, ref, onMounted, resolveComponent, openBlock, createElementBlock, normalizeClass, createElementVNode, createVNode, withCtx, createTextVNode, createCommentVNode, Fragment, renderList, createBlock, toDisplayString, withModifiers, unref } from "vue";
1
+ import { defineComponent, ref, computed, onMounted, resolveComponent, openBlock, createElementBlock, normalizeClass, createElementVNode, createVNode, withCtx, createTextVNode, createCommentVNode, Fragment, renderList, createBlock, toDisplayString, withModifiers, unref } from "vue";
2
2
  import { ElScrollbar } from "element-plus";
3
3
  import { ResourceManager } from "./ResourceManager.js";
4
4
  import _sfc_main$1 from "./components/resource-item/index.vue.js";
5
5
  const _hoisted_1 = { class: "resource-list-header" };
6
6
  const _hoisted_2 = ["onClick"];
7
- const _hoisted_3 = { class: "resource-list-list" };
8
- const _hoisted_4 = ["onClick", "onDblclick"];
7
+ const _hoisted_3 = { class: "resource-list-mode" };
8
+ const _hoisted_4 = { class: "resource-list-list" };
9
+ const _hoisted_5 = ["onClick", "onDblclick"];
9
10
  const _sfc_main = /* @__PURE__ */ defineComponent({
10
11
  __name: "resource-list",
11
12
  props: {
@@ -17,6 +18,16 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
17
18
  emits: ["drop"],
18
19
  setup(__props, { emit: __emit }) {
19
20
  const props = __props;
21
+ const sortMethodName = ref("time");
22
+ const resourceInfoList = computed(() => {
23
+ if (sortMethodName.value == "name") {
24
+ return [
25
+ ...props.resourceManager.resourceInfoList.filter((item) => item.isDirectory).sort((a, b) => a.name > b.name ? 1 : -1),
26
+ ...props.resourceManager.resourceInfoList.filter((item) => !item.isDirectory).sort((a, b) => a.name > b.name ? 1 : -1)
27
+ ];
28
+ }
29
+ return props.resourceManager.resourceInfoList.sort((a, b) => a.lastModified < b.lastModified ? 1 : -1);
30
+ });
20
31
  const emit = __emit;
21
32
  const listMode = ref("row");
22
33
  const handleBreadcrumbClick = (index) => {
@@ -50,6 +61,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
50
61
  const _component_MKSvgIcon = resolveComponent("MKSvgIcon");
51
62
  const _component_ElBreadcrumbItem = resolveComponent("ElBreadcrumbItem");
52
63
  const _component_ElBreadcrumb = resolveComponent("ElBreadcrumb");
64
+ const _component_el_button = resolveComponent("el-button");
53
65
  return openBlock(), createElementBlock("div", {
54
66
  class: normalizeClass(["resource-list", { row: listMode.value == "row" }])
55
67
  }, [
@@ -90,30 +102,44 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
90
102
  ]),
91
103
  _: 1
92
104
  }),
93
- createElementVNode("div", {
94
- class: "resource-list-mode",
95
- onClick: _cache[2] || (_cache[2] = ($event) => listMode.value = listMode.value == "row" ? "col" : "row")
96
- }, [
97
- listMode.value == "row" ? (openBlock(), createBlock(_component_MKSvgIcon, {
98
- key: 0,
99
- iconClass: "Grid"
100
- })) : (openBlock(), createBlock(_component_MKSvgIcon, {
101
- key: 1,
102
- iconClass: "Fold"
103
- }))
105
+ createElementVNode("div", _hoisted_3, [
106
+ createVNode(_component_el_button, {
107
+ text: "",
108
+ onClick: _cache[2] || (_cache[2] = ($event) => sortMethodName.value = sortMethodName.value == "time" ? "name" : "time")
109
+ }, {
110
+ default: withCtx(() => [
111
+ createTextVNode(toDisplayString(sortMethodName.value == "name" ? "按照时间排序" : "按照文件名排序"), 1)
112
+ ]),
113
+ _: 1
114
+ }),
115
+ createVNode(_component_el_button, {
116
+ text: "",
117
+ onClick: _cache[3] || (_cache[3] = ($event) => listMode.value = listMode.value == "row" ? "col" : "row")
118
+ }, {
119
+ default: withCtx(() => [
120
+ listMode.value == "row" ? (openBlock(), createBlock(_component_MKSvgIcon, {
121
+ key: 0,
122
+ iconClass: "Grid"
123
+ })) : (openBlock(), createBlock(_component_MKSvgIcon, {
124
+ key: 1,
125
+ iconClass: "Fold"
126
+ }))
127
+ ]),
128
+ _: 1
129
+ })
104
130
  ])
105
131
  ]),
106
132
  createElementVNode("div", {
107
133
  class: "resource-list-main",
108
134
  onClick: handleMainClick,
109
- onDragover: _cache[3] || (_cache[3] = withModifiers(() => {
135
+ onDragover: _cache[4] || (_cache[4] = withModifiers(() => {
110
136
  }, ["prevent"])),
111
137
  onDrop: withModifiers(handleDrop, ["prevent"])
112
138
  }, [
113
139
  createVNode(unref(ElScrollbar), { height: "100%" }, {
114
140
  default: withCtx(() => [
115
- createElementVNode("div", _hoisted_3, [
116
- (openBlock(true), createElementBlock(Fragment, null, renderList(__props.resourceManager.resourceInfoList, (item) => {
141
+ createElementVNode("div", _hoisted_4, [
142
+ (openBlock(true), createElementBlock(Fragment, null, renderList(resourceInfoList.value, (item) => {
117
143
  return openBlock(), createElementBlock("div", {
118
144
  class: "resource-list__item",
119
145
  onClick: withModifiers(($event) => handleClick($event, item), ["stop"]),
@@ -123,7 +149,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
123
149
  key: item.path,
124
150
  resourceItem: item
125
151
  }, null, 8, ["resourceItem"]))
126
- ], 40, _hoisted_4);
152
+ ], 40, _hoisted_5);
127
153
  }), 256))
128
154
  ])
129
155
  ]),
@@ -1 +1 @@
1
- {"version":3,"file":"resource-list.vue.js","sources":["../../../../../src/components/business/resource-list/resource-list.vue"],"sourcesContent":["<template>\r\n <div class=\"resource-list\" :class=\"{row:listMode=='row'}\">\r\n <div class=\"resource-list-header\">\r\n <ElBreadcrumb>\r\n <ElBreadcrumbItem>\r\n <span class=\"resource-list-breadcrumb-item\" v-if=\"resourceManager.directories.length>=1\"\r\n @click=\"handleBreadcrumbClick(resourceManager.directories.length-2)\"\r\n >\r\n <MKSvgIcon iconClass=\"ArrowLeftBold\" />\r\n 返回\r\n </span>\r\n <span\r\n class=\"resource-list-breadcrumb-item\"\r\n @click=\"handleBreadcrumbClick()\"\r\n >\r\n <MKSvgIcon iconClass=\"HomeFilled\" />\r\n 根目录\r\n </span>\r\n </ElBreadcrumbItem>\r\n <ElBreadcrumbItem\r\n v-for=\"(item, i) in resourceManager.directories\"\r\n :key=\"item\"\r\n >\r\n <span\r\n class=\"resource-list-breadcrumb-item\"\r\n @click=\"handleBreadcrumbClick(i)\"\r\n >\r\n {{ item }}\r\n </span>\r\n </ElBreadcrumbItem>\r\n </ElBreadcrumb>\r\n <div class=\"resource-list-mode\" @click=\"listMode = listMode=='row' ? 'col':'row'\">\r\n <MKSvgIcon v-if=\"listMode=='row'\" iconClass=\"Grid\" />\r\n <MKSvgIcon v-else iconClass=\"Fold\" />\r\n </div>\r\n </div>\r\n\r\n <div\r\n class=\"resource-list-main\"\r\n @click=\"handleMainClick\"\r\n @dragover.prevent\r\n @drop.prevent=\"handleDrop\"\r\n >\r\n <ElScrollbar height=\"100%\">\r\n <div class=\"resource-list-list\">\r\n <div\r\n v-for=\"item in resourceManager.resourceInfoList\"\r\n class=\"resource-list__item\"\r\n @click.stop=\"handleClick($event, item)\"\r\n @dblclick=\"handleDbClick(item)\"\r\n >\r\n <ResourceItem :key=\"item.path\" :resourceItem=\"item\" />\r\n </div>\r\n </div>\r\n </ElScrollbar>\r\n </div>\r\n </div>\r\n</template>\r\n\r\n<script setup lang=\"ts\">\r\nimport { onMounted,ref } from \"vue\";\r\nimport { ElScrollbar } from \"element-plus\";\r\nimport { ResourceManager, ResourceInfo } from \"./ResourceManager\";\r\nimport ResourceItem from \"./components/resource-item/index.vue\";\r\n\r\nconst props = defineProps({\r\n resourceManager: {\r\n type: ResourceManager,\r\n required: true,\r\n }\r\n});\r\n\r\nconst emit = defineEmits([\"drop\"]);\r\nconst listMode = ref(\"row\")\r\n\r\nconst handleBreadcrumbClick = (index?: number) => {\r\n if (typeof index !== \"number\") {\r\n props.resourceManager.loadResourceInfoList(\"/\");\r\n\r\n return;\r\n }\r\n\r\n props.resourceManager.loadResourceInfoList(\r\n props.resourceManager.directories.splice(0, index + 1).join(\"/\")\r\n );\r\n};\r\n\r\nconst handleMainClick = () => {\r\n props.resourceManager.clearAllSelect();\r\n};\r\n\r\nconst handleClick = (event: MouseEvent, item: ResourceInfo) => {\r\n props.resourceManager.handleSelectClick(event, item);\r\n};\r\n\r\nconst handleDbClick = (item: ResourceInfo) => {\r\n if (!item.isDirectory) {\r\n return;\r\n }\r\n\r\n props.resourceManager.loadResourceInfoList(item.path);\r\n};\r\n\r\nconst handleDrop = async (event: DragEvent) => {\r\n emit(\"drop\", event);\r\n};\r\n\r\nonMounted(() => {\r\n props.resourceManager.loadResourceInfoList();\r\n});\r\n</script>\r\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAiEA,UAAM,QAAQ;AAOd,UAAM,OAAO;AACP,UAAA,WAAW,IAAI,KAAK;AAEpB,UAAA,wBAAwB,CAAC,UAAmB;AAC5C,UAAA,OAAO,UAAU,UAAU;AACvB,cAAA,gBAAgB,qBAAqB,GAAG;AAE9C;AAAA,MACF;AAEA,YAAM,gBAAgB;AAAA,QACpB,MAAM,gBAAgB,YAAY,OAAO,GAAG,QAAQ,CAAC,EAAE,KAAK,GAAG;AAAA,MAAA;AAAA,IACjE;AAGF,UAAM,kBAAkB,MAAM;AAC5B,YAAM,gBAAgB;IAAe;AAGjC,UAAA,cAAc,CAAC,OAAmB,SAAuB;AACvD,YAAA,gBAAgB,kBAAkB,OAAO,IAAI;AAAA,IAAA;AAG/C,UAAA,gBAAgB,CAAC,SAAuB;AACxC,UAAA,CAAC,KAAK,aAAa;AACrB;AAAA,MACF;AAEM,YAAA,gBAAgB,qBAAqB,KAAK,IAAI;AAAA,IAAA;AAGhD,UAAA,aAAa,OAAO,UAAqB;AAC7C,WAAK,QAAQ,KAAK;AAAA,IAAA;AAGpB,cAAU,MAAM;AACd,YAAM,gBAAgB;IAAqB,CAC5C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"resource-list.vue.js","sources":["../../../../../src/components/business/resource-list/resource-list.vue"],"sourcesContent":["<template>\r\n <div class=\"resource-list\" :class=\"{row:listMode=='row'}\">\r\n <div class=\"resource-list-header\">\r\n <ElBreadcrumb>\r\n <ElBreadcrumbItem>\r\n <span class=\"resource-list-breadcrumb-item\" v-if=\"resourceManager.directories.length>=1\"\r\n @click=\"handleBreadcrumbClick(resourceManager.directories.length-2)\"\r\n >\r\n <MKSvgIcon iconClass=\"ArrowLeftBold\" />\r\n 返回\r\n </span>\r\n <span\r\n class=\"resource-list-breadcrumb-item\"\r\n @click=\"handleBreadcrumbClick()\"\r\n >\r\n <MKSvgIcon iconClass=\"HomeFilled\" />\r\n 根目录\r\n </span>\r\n </ElBreadcrumbItem>\r\n <ElBreadcrumbItem\r\n v-for=\"(item, i) in resourceManager.directories\"\r\n :key=\"item\"\r\n >\r\n <span\r\n class=\"resource-list-breadcrumb-item\"\r\n @click=\"handleBreadcrumbClick(i)\"\r\n >\r\n {{ item }}\r\n </span>\r\n </ElBreadcrumbItem>\r\n </ElBreadcrumb>\r\n <div class=\"resource-list-mode\">\r\n <el-button text @click=\"sortMethodName=sortMethodName=='time'?'name':'time'\">{{sortMethodName=='name'?\"按照时间排序\":\"按照文件名排序\"}}</el-button>\r\n <el-button text @click=\"listMode = listMode=='row' ? 'col':'row'\">\r\n <MKSvgIcon v-if=\"listMode=='row'\" iconClass=\"Grid\" />\r\n <MKSvgIcon v-else iconClass=\"Fold\" />\r\n </el-button>\r\n </div>\r\n </div>\r\n\r\n <div\r\n class=\"resource-list-main\"\r\n @click=\"handleMainClick\"\r\n @dragover.prevent\r\n @drop.prevent=\"handleDrop\"\r\n >\r\n <ElScrollbar height=\"100%\">\r\n <div class=\"resource-list-list\">\r\n <div\r\n v-for=\"item in resourceInfoList\"\r\n class=\"resource-list__item\"\r\n @click.stop=\"handleClick($event, item)\"\r\n @dblclick=\"handleDbClick(item)\"\r\n >\r\n <ResourceItem :key=\"item.path\" :resourceItem=\"item\" />\r\n </div>\r\n </div>\r\n </ElScrollbar>\r\n </div>\r\n </div>\r\n</template>\r\n\r\n<script setup lang=\"ts\">\r\nimport { onMounted,ref , computed} from \"vue\";\r\nimport { ElScrollbar } from \"element-plus\";\r\nimport { ResourceManager, ResourceInfo } from \"./ResourceManager\";\r\nimport ResourceItem from \"./components/resource-item/index.vue\";\r\n\r\nconst props = defineProps({\r\n resourceManager: {\r\n type: ResourceManager,\r\n required: true,\r\n }\r\n});\r\n\r\n// 排序方法 修改时间排序 名称排序 time | name\r\nconst sortMethodName = ref(\"time\")\r\n\r\n/**\r\n * 资源列表\r\n */\r\nconst resourceInfoList = computed(()=>{\r\n\r\n if(sortMethodName.value == \"name\"){\r\n return [\r\n ...props.resourceManager.resourceInfoList.\r\n filter(item=>item.isDirectory).sort((a,b)=>a.name > b.name ? 1 : -1),\r\n ...props.resourceManager.resourceInfoList.\r\n filter(item=>!item.isDirectory).sort((a,b)=>a.name > b.name ? 1 : -1)\r\n ];\r\n }\r\n\r\n return props.resourceManager.resourceInfoList.sort((a,b)=>a.lastModified < b.lastModified ? 1 : -1)\r\n})\r\n\r\nconst emit = defineEmits([\"drop\"]);\r\nconst listMode = ref(\"row\")\r\n\r\nconst handleBreadcrumbClick = (index?: number) => {\r\n if (typeof index !== \"number\") {\r\n props.resourceManager.loadResourceInfoList(\"/\");\r\n\r\n return;\r\n }\r\n\r\n props.resourceManager.loadResourceInfoList(\r\n props.resourceManager.directories.splice(0, index + 1).join(\"/\")\r\n );\r\n};\r\n\r\nconst handleMainClick = () => {\r\n props.resourceManager.clearAllSelect();\r\n};\r\n\r\nconst handleClick = (event: MouseEvent, item: ResourceInfo) => {\r\n props.resourceManager.handleSelectClick(event, item);\r\n};\r\n\r\nconst handleDbClick = (item: ResourceInfo) => {\r\n if (!item.isDirectory) {\r\n return;\r\n }\r\n\r\n props.resourceManager.loadResourceInfoList(item.path);\r\n};\r\n\r\nconst handleDrop = async (event: DragEvent) => {\r\n emit(\"drop\", event);\r\n};\r\n\r\nonMounted(() => {\r\n props.resourceManager.loadResourceInfoList();\r\n});\r\n</script>\r\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;AAoEA,UAAM,QAAQ;AAQR,UAAA,iBAAiB,IAAI,MAAM;AAK3B,UAAA,mBAAmB,SAAS,MAAI;AAEjC,UAAA,eAAe,SAAS,QAAO;AACzB,eAAA;AAAA,UACL,GAAG,MAAM,gBAAgB,iBACzB,OAAO,CAAA,SAAM,KAAK,WAAW,EAAE,KAAK,CAAC,GAAE,MAAI,EAAE,OAAO,EAAE,OAAO,IAAI,EAAE;AAAA,UACnE,GAAG,MAAM,gBAAgB,iBACzB,OAAO,CAAA,SAAM,CAAC,KAAK,WAAW,EAAE,KAAK,CAAC,GAAE,MAAI,EAAE,OAAO,EAAE,OAAO,IAAI,EAAE;AAAA,QAAA;AAAA,MAExE;AAEA,aAAO,MAAM,gBAAgB,iBAAiB,KAAK,CAAC,GAAE,MAAI,EAAE,eAAe,EAAE,eAAe,IAAI,EAAE;AAAA,IAAA,CACnG;AAED,UAAM,OAAO;AACP,UAAA,WAAW,IAAI,KAAK;AAEpB,UAAA,wBAAwB,CAAC,UAAmB;AAC5C,UAAA,OAAO,UAAU,UAAU;AACvB,cAAA,gBAAgB,qBAAqB,GAAG;AAE9C;AAAA,MACF;AAEA,YAAM,gBAAgB;AAAA,QACpB,MAAM,gBAAgB,YAAY,OAAO,GAAG,QAAQ,CAAC,EAAE,KAAK,GAAG;AAAA,MAAA;AAAA,IACjE;AAGF,UAAM,kBAAkB,MAAM;AAC5B,YAAM,gBAAgB;IAAe;AAGjC,UAAA,cAAc,CAAC,OAAmB,SAAuB;AACvD,YAAA,gBAAgB,kBAAkB,OAAO,IAAI;AAAA,IAAA;AAG/C,UAAA,gBAAgB,CAAC,SAAuB;AACxC,UAAA,CAAC,KAAK,aAAa;AACrB;AAAA,MACF;AAEM,YAAA,gBAAgB,qBAAqB,KAAK,IAAI;AAAA,IAAA;AAGhD,UAAA,aAAa,OAAO,UAAqB;AAC7C,WAAK,QAAQ,KAAK;AAAA,IAAA;AAGpB,cAAU,MAAM;AACd,YAAM,gBAAgB;IAAqB,CAC5C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -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 <div class=\"resource-manager-tools\">\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 </div>\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 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\nconst 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\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\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":[],"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 <div class=\"resource-manager-tools\">\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 </div>\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 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\nconst 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":[],"mappings":"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"}
@@ -0,0 +1,51 @@
1
+ import { defineComponent, computed, createVNode, unref, createTextVNode } from "vue";
2
+ import { ElInput, ElButton } from "element-plus";
3
+ import ResourceSelect from "./resource-select-api.js";
4
+ const resourceSelectInput = /* @__PURE__ */ defineComponent({
5
+ name: "MKResourceSelectInput",
6
+ props: {
7
+ modelValue: {
8
+ type: String,
9
+ default: ""
10
+ }
11
+ },
12
+ emits: ["update:model-value"],
13
+ setup(props, {
14
+ emit
15
+ }) {
16
+ const modelValue = computed({
17
+ get: () => props.modelValue || "",
18
+ set: (v) => emit("update:model-value", v)
19
+ });
20
+ return () => {
21
+ return createVNode("div", {
22
+ "class": "mk-resource-select-input",
23
+ "style": {
24
+ width: "100%",
25
+ display: "flex"
26
+ }
27
+ }, [createVNode(ElInput, {
28
+ "modelValue": unref(modelValue),
29
+ "clearable": true,
30
+ "onUpdate:modelValue": (v) => modelValue.value = v
31
+ }, null), createVNode(ElButton, {
32
+ "onClick": async () => {
33
+ const fileInfo = await ResourceSelect({
34
+ extensions: [".cshtml"],
35
+ baseURL: "cms/template/resource"
36
+ });
37
+ if (!fileInfo.confirmed) {
38
+ return;
39
+ }
40
+ modelValue.value = fileInfo.path.slice(1);
41
+ }
42
+ }, {
43
+ default: () => [createTextVNode("选择模版")]
44
+ })]);
45
+ };
46
+ }
47
+ });
48
+ export {
49
+ resourceSelectInput as default
50
+ };
51
+ //# sourceMappingURL=resource-select-input.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resource-select-input.js","sources":["../../../../../src/components/business/resource-select/resource-select-input.tsx"],"sourcesContent":["import { computed, defineComponent, unref } from \"vue\";\r\nimport { ElInput, ElButton } from \"element-plus\";\r\nimport ResourceSelect from \"./resource-select-api\";\r\n\r\nexport default defineComponent({\r\n name: \"MKResourceSelectInput\",\r\n props: {\r\n modelValue:{ type:String,default:\"\"}\r\n },\r\n emits: [\"update:model-value\"],\r\n setup(props, { emit }) {\r\n\r\n const modelValue = computed({\r\n get: () => (props.modelValue as string) || \"\",\r\n set: (v: string) => emit(\"update:model-value\", v),\r\n });\r\n\r\n return () => {\r\n return (\r\n <div class=\"mk-resource-select-input\" style={{width:\"100%\",display:\"flex\"}}>\r\n <ElInput\r\n modelValue={unref(modelValue)} clearable\r\n onUpdate:modelValue={(v: string) => (modelValue.value = v)} />\r\n <ElButton onClick={async ()=>{\r\n \tconst fileInfo = await ResourceSelect({ extensions: [\".cshtml\"], baseURL: \"cms/template/resource\" })\r\n if (!fileInfo.confirmed) {\r\n return;\r\n }\r\n modelValue.value = fileInfo.path.slice(1)\r\n }}>选择模版</ElButton>\r\n </div>\r\n );\r\n };\r\n },\r\n});\r\n"],"names":["defineComponent","name","props","modelValue","type","String","default","emits","setup","emit","computed","get","set","v","_createVNode","width","display","ElInput","unref","value","ElButton","fileInfo","ResourceSelect","extensions","baseURL","confirmed","path","slice","_createTextVNode"],"mappings":";;;AAIA,MAAeA,sDAAgB;AAAA,EAC7BC,MAAM;AAAA,EACNC,OAAO;AAAA,IACLC,YAAW;AAAA,MAAEC,MAAKC;AAAAA,MAAOC,SAAQ;AAAA,IAAE;AAAA,EACpC;AAAA,EACDC,OAAO,CAAC,oBAAoB;AAAA,EAC5BC,MAAMN,OAAO;AAAA,IAAEO;AAAAA,EAAK,GAAG;AAErB,UAAMN,aAAaO,SAAS;AAAA,MAC1BC,KAAKA,MAAOT,MAAMC,cAAyB;AAAA,MAC3CS,KAAMC,OAAcJ,KAAK,sBAAsBI,CAAC;AAAA,IAClD,CAAC;AAED,WAAO,MAAM;AACX,aAAAC,YAAA,OAAA;AAAA,QAAA,SAAA;AAAA,QAAA,SAC+C;AAAA,UAACC,OAAM;AAAA,UAAOC,SAAQ;AAAA,QAAM;AAAA,SAACF,CAAAA,YAAAG,SAAA;AAAA,QAAA,cAE1DC,MAAMf,UAAU;AAAA,QAAC,aAAA;AAAA,QAAA,uBACPU,OAAeV,WAAWgB,QAAQN;AAAAA,SAAEC,IAAAA,GAAAA,YAAAM,UAAA;AAAA,QAAA,WACvC,YAAU;AAC1B,gBAAMC,WAAW,MAAMC,eAAe;AAAA,YAAEC,YAAY,CAAC,SAAS;AAAA,YAAGC,SAAS;AAAA,UAAwB,CAAC;AAClG,cAAI,CAACH,SAASI,WAAW;AACvB;AAAA,UACF;AACAtB,qBAAWgB,QAAQE,SAASK,KAAKC,MAAM,CAAC;AAAA,QAC5C;AAAA,MAAC,GAAA;AAAA,QAAArB,SAAAA,MAAA,CAAAsB,gBAAA,MAAA,CAAA;AAAA,MAAA,CAAA,CAAA,CAAA;AAAA;EAIX;AACF,CAAC;"}
@@ -0,0 +1,20 @@
1
+ import { buildProps } from "@maketribe/utils";
2
+ import { DataTable } from "@maketribe/dm";
3
+ const dataFilterDrawerProps = buildProps({
4
+ visible: {
5
+ type: Boolean,
6
+ default: false
7
+ },
8
+ dataTable: {
9
+ type: DataTable,
10
+ required: true
11
+ }
12
+ });
13
+ const dataFilterDrawerEmits = {
14
+ "update:visible": (visible) => true
15
+ };
16
+ export {
17
+ dataFilterDrawerEmits,
18
+ dataFilterDrawerProps
19
+ };
20
+ //# sourceMappingURL=data-filter-drawer-options.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"data-filter-drawer-options.js","sources":["../../../../../src/components/data-model/data-filter-drawer/data-filter-drawer-options.ts"],"sourcesContent":["import { ExtractPropTypes } from \"vue\";\r\nimport { buildProps } from \"@maketribe/utils\";\r\nimport { DataTable } from \"@maketribe/dm\";\r\n\r\nexport const dataFilterDrawerProps = buildProps({\r\n visible: {\r\n type: Boolean,\r\n default: false,\r\n },\r\n dataTable: {\r\n type: DataTable,\r\n required: true,\r\n },\r\n} as const);\r\n\r\nexport type DataFilterDrawerProps = ExtractPropTypes<\r\n typeof dataFilterDrawerProps\r\n>;\r\n\r\nexport const dataFilterDrawerEmits = {\r\n \"update:visible\": (visible: boolean) => true,\r\n};\r\n\r\nexport type DataFilterDrawerEmits = typeof dataFilterDrawerEmits;\r\n"],"names":[],"mappings":";;AAIO,MAAM,wBAAwB,WAAW;AAAA,EAC9C,SAAS;AAAA,IACP,MAAM;AAAA,IACN,SAAS;AAAA,EACX;AAAA,EACA,WAAW;AAAA,IACT,MAAM;AAAA,IACN,UAAU;AAAA,EACZ;AACF,CAAU;AAMH,MAAM,wBAAwB;AAAA,EACnC,kBAAkB,CAAC,YAAqB;AAC1C;"}