@maketribe/ms-app 3.2.5 → 3.2.6

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 (195) hide show
  1. package/dist/cjs/assets/iconfonts/iconfont.js +1 -1
  2. package/dist/cjs/assets/iconfonts/iconfont.js.map +1 -1
  3. package/dist/cjs/components/basic/doc-editor/lexical-vue/components/LexicalAutoLinkPlugin/index.vue.js +2 -37
  4. package/dist/cjs/components/basic/doc-editor/lexical-vue/components/LexicalAutoLinkPlugin/index.vue.js.map +1 -1
  5. package/dist/cjs/components/basic/doc-editor/lexical-vue/components/LexicalAutoLinkPlugin/index.vue2.js +37 -2
  6. package/dist/cjs/components/basic/doc-editor/lexical-vue/components/LexicalAutoLinkPlugin/index.vue2.js.map +1 -1
  7. package/dist/cjs/components/basic/doc-editor/lexical-vue/components/LexicalBlockWithAlignableContents.vue.js +4 -0
  8. package/dist/cjs/components/basic/doc-editor/lexical-vue/components/LexicalBlockWithAlignableContents.vue.js.map +1 -0
  9. package/dist/cjs/components/basic/doc-editor/lexical-vue/components/LexicalBlockWithAlignableContents.vue2.js +108 -0
  10. package/dist/cjs/components/basic/doc-editor/lexical-vue/components/LexicalBlockWithAlignableContents.vue2.js.map +1 -0
  11. package/dist/cjs/components/basic/doc-editor/lexical-vue/components/LexicalDecoratorBlockNode.js +4 -0
  12. package/dist/cjs/components/basic/doc-editor/lexical-vue/components/LexicalDecoratorBlockNode.js.map +1 -1
  13. package/dist/cjs/components/basic/doc-editor/lexical-vue/components/LexicalRichTextPlugin.vue.js +24 -18
  14. package/dist/cjs/components/basic/doc-editor/lexical-vue/components/LexicalRichTextPlugin.vue.js.map +1 -1
  15. package/dist/cjs/components/basic/doc-editor/plugins/AutoLinkPlugin.vue.js +1 -1
  16. package/dist/cjs/components/basic/doc-editor/plugins/HtmlBlockPlugin/DocHtmlBlockComponent.js +93 -0
  17. package/dist/cjs/components/basic/doc-editor/plugins/HtmlBlockPlugin/DocHtmlBlockComponent.js.map +1 -0
  18. package/dist/cjs/components/basic/doc-editor/plugins/HtmlBlockPlugin/index.js +128 -0
  19. package/dist/cjs/components/basic/doc-editor/plugins/HtmlBlockPlugin/index.js.map +1 -0
  20. package/dist/cjs/components/basic/doc-editor/plugins/HtmlBlockPlugin/index.vue.js +51 -0
  21. package/dist/cjs/components/basic/doc-editor/plugins/HtmlBlockPlugin/index.vue.js.map +1 -0
  22. package/dist/cjs/components/basic/doc-editor/plugins/HtmlBlockPlugin/index.vue2.js +4 -0
  23. package/dist/cjs/components/basic/doc-editor/plugins/HtmlBlockPlugin/index.vue2.js.map +1 -0
  24. package/dist/cjs/components/basic/doc-editor/plugins/ImagePlugin/ImageEditPanel.js +0 -1
  25. package/dist/cjs/components/basic/doc-editor/plugins/ImagePlugin/ImageEditPanel.js.map +1 -1
  26. package/dist/cjs/components/basic/doc-editor/plugins/ImageTextPlugin/index.js +7 -0
  27. package/dist/cjs/components/basic/doc-editor/plugins/ImageTextPlugin/index.js.map +1 -1
  28. package/dist/cjs/components/basic/doc-editor/plugins/ImageTextPlugin/index.vue.js.map +1 -1
  29. package/dist/cjs/components/basic/doc-editor/plugins/ToolbarPlugin/{HtmlCodeTool.vue.js → PreviewToolbar.vue.js} +56 -43
  30. package/dist/cjs/components/basic/doc-editor/plugins/ToolbarPlugin/PreviewToolbar.vue.js.map +1 -0
  31. package/dist/cjs/components/basic/doc-editor/plugins/ToolbarPlugin/PreviewToolbar.vue2.js +4 -0
  32. package/dist/cjs/components/basic/doc-editor/plugins/ToolbarPlugin/PreviewToolbar.vue2.js.map +1 -0
  33. package/dist/cjs/components/basic/doc-editor/plugins/ToolbarPlugin/index.vue.js +2 -2
  34. package/dist/cjs/components/basic/doc-editor/plugins/ToolbarPlugin/index.vue.js.map +1 -1
  35. package/dist/cjs/components/basic/doc-editor/plugins/index.vue.js +3 -1
  36. package/dist/cjs/components/basic/doc-editor/plugins/index.vue.js.map +1 -1
  37. package/dist/cjs/components/basic/doc-editor/plugins/nodes.js +3 -1
  38. package/dist/cjs/components/basic/doc-editor/plugins/nodes.js.map +1 -1
  39. package/dist/cjs/components/business/resource-list/ResourceManager.js +0 -24
  40. package/dist/cjs/components/business/resource-list/ResourceManager.js.map +1 -1
  41. package/dist/cjs/components/business/resource-list/resource-list.vue.js +38 -15
  42. package/dist/cjs/components/business/resource-list/resource-list.vue.js.map +1 -1
  43. package/dist/cjs/components/business/resource-manager/resource-manager.vue.js +1 -12
  44. package/dist/cjs/components/business/resource-manager/resource-manager.vue.js.map +1 -1
  45. package/dist/cjs/components/data-model/data-table/views/tree/tree.js +14 -2
  46. package/dist/cjs/components/data-model/data-table/views/tree/tree.js.map +1 -1
  47. package/dist/cjs/index.js +2 -2
  48. package/dist/cjs/modules/cms/components/part-tree/index.vue.js +24 -9
  49. package/dist/cjs/modules/cms/components/part-tree/index.vue.js.map +1 -1
  50. package/dist/cjs/modules/cms/dataviews/cms-parts/CmsContentManPartForm.js +26 -0
  51. package/dist/cjs/modules/cms/dataviews/cms-parts/CmsContentManPartForm.js.map +1 -0
  52. package/dist/cjs/modules/cms/index.js +2 -1
  53. package/dist/cjs/modules/cms/index.js.map +1 -1
  54. package/dist/cjs/modules/cms/pages/cms-contents/article-edit-add-page.vue2.js +44 -22
  55. package/dist/cjs/modules/cms/pages/cms-contents/article-edit-add-page.vue2.js.map +1 -1
  56. package/dist/cjs/modules/cms/pages/cms-contents/components/article-list.vue.js +2 -2
  57. package/dist/cjs/modules/cms/pages/cms-contents/components/article-list.vue.js.map +1 -1
  58. package/dist/cjs/modules/cms/pages/cms-contents/index.vue2.js +99 -87
  59. package/dist/cjs/modules/cms/pages/cms-contents/index.vue2.js.map +1 -1
  60. package/dist/cjs/modules/cms/pages/cms-resource/index.vue2.js +45 -5
  61. package/dist/cjs/modules/cms/pages/cms-resource/index.vue2.js.map +1 -1
  62. package/dist/cjs/modules/ms/components/material-list/material-item.vue.js +0 -1
  63. package/dist/cjs/modules/ms/components/material-list/material-item.vue.js.map +1 -1
  64. package/dist/cjs/modules/ms/components/material-list/material-list-options.js +1 -1
  65. package/dist/cjs/modules/ms/components/material-list/material-list-options.js.map +1 -1
  66. package/dist/cjs/modules/ms/components/material-select/material-select-api.js +1 -1
  67. package/dist/cjs/modules/ms/dataviews/ms-menu/MsMenuTree.js +18 -0
  68. package/dist/cjs/modules/ms/dataviews/ms-menu/MsMenuTree.js.map +1 -1
  69. package/dist/cjs/modules/ms/dataviews/ms-role/MsRolePermissionConfigTable.js +4 -1
  70. package/dist/cjs/modules/ms/dataviews/ms-role/MsRolePermissionConfigTable.js.map +1 -1
  71. package/dist/cjs/modules/ms/index.js +2 -2
  72. package/dist/cjs/modules/ms/pages/ms-material/index.vue2.js +13 -16
  73. package/dist/cjs/modules/ms/pages/ms-material/index.vue2.js.map +1 -1
  74. package/dist/cjs/modules/ms/pages/ms-menu/index.vue2.js +47 -6
  75. package/dist/cjs/modules/ms/pages/ms-menu/index.vue2.js.map +1 -1
  76. package/dist/esm/assets/iconfonts/iconfont.js +1 -1
  77. package/dist/esm/assets/iconfonts/iconfont.js.map +1 -1
  78. package/dist/esm/components/basic/doc-editor/lexical-vue/components/LexicalAutoLinkPlugin/index.vue.js +1 -36
  79. package/dist/esm/components/basic/doc-editor/lexical-vue/components/LexicalAutoLinkPlugin/index.vue.js.map +1 -1
  80. package/dist/esm/components/basic/doc-editor/lexical-vue/components/LexicalAutoLinkPlugin/index.vue2.js +36 -1
  81. package/dist/esm/components/basic/doc-editor/lexical-vue/components/LexicalAutoLinkPlugin/index.vue2.js.map +1 -1
  82. package/dist/esm/components/basic/doc-editor/lexical-vue/components/LexicalBlockWithAlignableContents.vue.js +5 -0
  83. package/dist/esm/components/basic/doc-editor/lexical-vue/components/LexicalBlockWithAlignableContents.vue.js.map +1 -0
  84. package/dist/esm/components/basic/doc-editor/lexical-vue/components/LexicalBlockWithAlignableContents.vue2.js +109 -0
  85. package/dist/esm/components/basic/doc-editor/lexical-vue/components/LexicalBlockWithAlignableContents.vue2.js.map +1 -0
  86. package/dist/esm/components/basic/doc-editor/lexical-vue/components/LexicalDecoratorBlockNode.js +4 -0
  87. package/dist/esm/components/basic/doc-editor/lexical-vue/components/LexicalDecoratorBlockNode.js.map +1 -1
  88. package/dist/esm/components/basic/doc-editor/lexical-vue/components/LexicalRichTextPlugin.vue.js +25 -19
  89. package/dist/esm/components/basic/doc-editor/lexical-vue/components/LexicalRichTextPlugin.vue.js.map +1 -1
  90. package/dist/esm/components/basic/doc-editor/plugins/AutoLinkPlugin.vue.js +1 -1
  91. package/dist/esm/components/basic/doc-editor/plugins/HtmlBlockPlugin/DocHtmlBlockComponent.js +94 -0
  92. package/dist/esm/components/basic/doc-editor/plugins/HtmlBlockPlugin/DocHtmlBlockComponent.js.map +1 -0
  93. package/dist/esm/components/basic/doc-editor/plugins/HtmlBlockPlugin/index.js +128 -0
  94. package/dist/esm/components/basic/doc-editor/plugins/HtmlBlockPlugin/index.js.map +1 -0
  95. package/dist/esm/components/basic/doc-editor/plugins/HtmlBlockPlugin/index.vue.js +52 -0
  96. package/dist/esm/components/basic/doc-editor/plugins/HtmlBlockPlugin/index.vue.js.map +1 -0
  97. package/dist/esm/components/basic/doc-editor/plugins/HtmlBlockPlugin/index.vue2.js +5 -0
  98. package/dist/esm/components/basic/doc-editor/plugins/HtmlBlockPlugin/index.vue2.js.map +1 -0
  99. package/dist/esm/components/basic/doc-editor/plugins/ImagePlugin/ImageEditPanel.js +0 -1
  100. package/dist/esm/components/basic/doc-editor/plugins/ImagePlugin/ImageEditPanel.js.map +1 -1
  101. package/dist/esm/components/basic/doc-editor/plugins/ImageTextPlugin/index.js +7 -0
  102. package/dist/esm/components/basic/doc-editor/plugins/ImageTextPlugin/index.js.map +1 -1
  103. package/dist/esm/components/basic/doc-editor/plugins/ImageTextPlugin/index.vue.js.map +1 -1
  104. package/dist/esm/components/basic/doc-editor/plugins/ToolbarPlugin/PreviewToolbar.vue.js +117 -0
  105. package/dist/esm/components/basic/doc-editor/plugins/ToolbarPlugin/PreviewToolbar.vue.js.map +1 -0
  106. package/dist/esm/components/basic/doc-editor/plugins/ToolbarPlugin/PreviewToolbar.vue2.js +5 -0
  107. package/dist/esm/components/basic/doc-editor/plugins/ToolbarPlugin/PreviewToolbar.vue2.js.map +1 -0
  108. package/dist/esm/components/basic/doc-editor/plugins/ToolbarPlugin/index.vue.js +1 -1
  109. package/dist/esm/components/basic/doc-editor/plugins/ToolbarPlugin/index.vue.js.map +1 -1
  110. package/dist/esm/components/basic/doc-editor/plugins/index.vue.js +3 -1
  111. package/dist/esm/components/basic/doc-editor/plugins/index.vue.js.map +1 -1
  112. package/dist/esm/components/basic/doc-editor/plugins/nodes.js +3 -1
  113. package/dist/esm/components/basic/doc-editor/plugins/nodes.js.map +1 -1
  114. package/dist/esm/components/business/resource-list/ResourceManager.js +1 -25
  115. package/dist/esm/components/business/resource-list/ResourceManager.js.map +1 -1
  116. package/dist/esm/components/business/resource-list/resource-list.vue.js +39 -16
  117. package/dist/esm/components/business/resource-list/resource-list.vue.js.map +1 -1
  118. package/dist/esm/components/business/resource-manager/resource-manager.vue.js +2 -13
  119. package/dist/esm/components/business/resource-manager/resource-manager.vue.js.map +1 -1
  120. package/dist/esm/components/data-model/data-table/views/tree/tree.js +15 -3
  121. package/dist/esm/components/data-model/data-table/views/tree/tree.js.map +1 -1
  122. package/dist/esm/index.js +2 -2
  123. package/dist/esm/modules/cms/components/part-tree/index.vue.js +25 -10
  124. package/dist/esm/modules/cms/components/part-tree/index.vue.js.map +1 -1
  125. package/dist/esm/modules/cms/dataviews/cms-parts/CmsContentManPartForm.js +26 -0
  126. package/dist/esm/modules/cms/dataviews/cms-parts/CmsContentManPartForm.js.map +1 -0
  127. package/dist/esm/modules/cms/index.js +2 -1
  128. package/dist/esm/modules/cms/index.js.map +1 -1
  129. package/dist/esm/modules/cms/pages/cms-contents/article-edit-add-page.vue2.js +46 -24
  130. package/dist/esm/modules/cms/pages/cms-contents/article-edit-add-page.vue2.js.map +1 -1
  131. package/dist/esm/modules/cms/pages/cms-contents/components/article-list.vue.js +2 -2
  132. package/dist/esm/modules/cms/pages/cms-contents/components/article-list.vue.js.map +1 -1
  133. package/dist/esm/modules/cms/pages/cms-contents/index.vue2.js +101 -89
  134. package/dist/esm/modules/cms/pages/cms-contents/index.vue2.js.map +1 -1
  135. package/dist/esm/modules/cms/pages/cms-resource/index.vue2.js +46 -6
  136. package/dist/esm/modules/cms/pages/cms-resource/index.vue2.js.map +1 -1
  137. package/dist/esm/modules/ms/components/material-list/material-item.vue.js +0 -1
  138. package/dist/esm/modules/ms/components/material-list/material-item.vue.js.map +1 -1
  139. package/dist/esm/modules/ms/components/material-list/material-list-options.js +1 -1
  140. package/dist/esm/modules/ms/components/material-list/material-list-options.js.map +1 -1
  141. package/dist/esm/modules/ms/components/material-select/material-select-api.js +1 -1
  142. package/dist/esm/modules/ms/dataviews/ms-menu/MsMenuTree.js +18 -0
  143. package/dist/esm/modules/ms/dataviews/ms-menu/MsMenuTree.js.map +1 -1
  144. package/dist/esm/modules/ms/dataviews/ms-role/MsRolePermissionConfigTable.js +4 -1
  145. package/dist/esm/modules/ms/dataviews/ms-role/MsRolePermissionConfigTable.js.map +1 -1
  146. package/dist/esm/modules/ms/index.js +2 -2
  147. package/dist/esm/modules/ms/pages/ms-material/index.vue2.js +14 -17
  148. package/dist/esm/modules/ms/pages/ms-material/index.vue2.js.map +1 -1
  149. package/dist/esm/modules/ms/pages/ms-menu/index.vue2.js +48 -7
  150. package/dist/esm/modules/ms/pages/ms-menu/index.vue2.js.map +1 -1
  151. package/dist/style/components/basic/doc-editor/index.css +1 -1
  152. package/dist/style/components/index.css +2 -2
  153. package/dist/style/components/material-item.css +1 -1
  154. package/dist/style/index.css +2 -2
  155. package/dist/style/modules/cms/index.css +1 -1
  156. package/dist/style/modules/cms/pages/cms-contents/index.css +1 -1
  157. package/dist/style/modules/cms/resource-manager.css +1 -1
  158. package/dist/style/src/components/basic/doc-editor/index.scss +22 -2
  159. package/dist/style/src/components/material-item.scss +66 -64
  160. package/dist/style/src/modules/cms/pages/cms-contents/index.scss +1 -2
  161. package/dist/style/src/modules/cms/resource-manager.scss +63 -0
  162. package/dist/style/src/theme/theme.scss +310 -303
  163. package/dist/style/theme/theme.css +1 -1
  164. package/dist/types/components/basic/doc-editor/plugins/HtmlBlockPlugin/DocHtmlBlockComponent.d.ts +20 -0
  165. package/dist/types/components/basic/doc-editor/plugins/HtmlBlockPlugin/index.d.ts +57 -0
  166. package/dist/types/components/basic/doc-editor/plugins/ImageTextPlugin/index.d.ts +1 -0
  167. package/dist/types/components/basic/doc-editor/plugins/ToolbarPlugin/PreviewToolbar.vue.d.ts +2 -0
  168. package/dist/types/components/business/resource-list/ResourceManager.d.ts +0 -1
  169. package/dist/types/components/business/resource-manager/index.d.ts +32 -6
  170. package/dist/types/components/business/resource-manager/resource-manager.vue.d.ts +10 -1
  171. package/dist/types/components/data-model/data-table/views/table/index.d.ts +1 -1
  172. package/dist/types/components/data-model/data-table/views/table/table.d.ts +1 -1
  173. package/dist/types/modules/cms/components/part-tree/index.d.ts +5 -9
  174. package/dist/types/modules/cms/components/part-tree/index.vue.d.ts +16 -15
  175. package/dist/types/modules/cms/dataviews/cms-parts/CmsContentManPartForm.d.ts +8 -0
  176. package/dist/types/modules/cms/dataviews/cms-parts/index.d.ts +1 -0
  177. package/dist/types/modules/ms/dataviews/ms-material/index.d.ts +0 -1
  178. package/dist/types/modules/ms/dataviews/ms-menu/MsMenuTree.d.ts +1 -0
  179. package/package.json +2 -2
  180. package/dist/cjs/components/basic/doc-editor/plugins/ToolbarPlugin/HtmlCodeTool.vue.js.map +0 -1
  181. package/dist/cjs/components/basic/doc-editor/plugins/ToolbarPlugin/HtmlCodeTool.vue2.js +0 -4
  182. package/dist/cjs/components/basic/doc-editor/plugins/ToolbarPlugin/HtmlCodeTool.vue2.js.map +0 -1
  183. package/dist/cjs/modules/ms/dataviews/ms-material/MsMaterialMan.js +0 -130
  184. package/dist/cjs/modules/ms/dataviews/ms-material/MsMaterialMan.js.map +0 -1
  185. package/dist/esm/components/basic/doc-editor/plugins/ToolbarPlugin/HtmlCodeTool.vue.js +0 -104
  186. package/dist/esm/components/basic/doc-editor/plugins/ToolbarPlugin/HtmlCodeTool.vue.js.map +0 -1
  187. package/dist/esm/components/basic/doc-editor/plugins/ToolbarPlugin/HtmlCodeTool.vue2.js +0 -5
  188. package/dist/esm/components/basic/doc-editor/plugins/ToolbarPlugin/HtmlCodeTool.vue2.js.map +0 -1
  189. package/dist/esm/modules/ms/dataviews/ms-material/MsMaterialMan.js +0 -130
  190. package/dist/esm/modules/ms/dataviews/ms-material/MsMaterialMan.js.map +0 -1
  191. package/dist/style/modules/cms/pages/cms-contents/part-edit-add-page.css +0 -1
  192. package/dist/style/src/modules/cms/pages/cms-contents/part-edit-add-page.scss +0 -127
  193. package/dist/types/modules/ms/dataviews/ms-material/MsMaterialMan.d.ts +0 -31
  194. /package/dist/types/components/basic/doc-editor/plugins/{ToolbarPlugin/HtmlCodeTool.vue.d.ts → HtmlBlockPlugin/index.vue.d.ts} +0 -0
  195. /package/dist/types/{modules/cms/pages/cms-contents/part-edit-add-page.vue.d.ts → components/basic/doc-editor/plugins/ToolbarPlugin/PreviewToolba-back.vue.d.ts} +0 -0
@@ -1,4 +1,4 @@
1
- import { defineComponent, reactive, ref, computed, onMounted, resolveComponent, resolveDirective, openBlock, createElementBlock, createVNode, withCtx, createBlock, createTextVNode, toDisplayString, unref, createElementVNode, withDirectives, normalizeClass, createCommentVNode } from "vue";
1
+ import { defineComponent, reactive, ref, computed, onMounted, resolveComponent, resolveDirective, openBlock, createElementBlock, createVNode, unref, withCtx, createBlock, createTextVNode, toDisplayString, createElementVNode, withDirectives, normalizeClass, createCommentVNode } from "vue";
2
2
  import "../../../../components/abstract/abstract-select/abstract-select.js";
3
3
  import "../../../../components/abstract/abstract-select/abstract-select-options.js";
4
4
  import "element-plus";
@@ -15,7 +15,7 @@ import "../../../../components/basic/page-container/index.js";
15
15
  import "../../../../components/basic/date-picker/index.js";
16
16
  import "../../../../components/basic/icon-select/index.js";
17
17
  import "../../../../components/basic/upload-file/upload-file.js";
18
- import { DvOpt } from "@maketribe/request";
18
+ import "@maketribe/request";
19
19
  import "@maketribe/utils";
20
20
  import "../../../../components/basic/upload-file/context/web-file-upload-context.js";
21
21
  import "../../../../components/basic/upload-file/context/web-file-upload-context-options.js";
@@ -33,7 +33,7 @@ import "../../../../components/business/resource-manager/index.js";
33
33
  import "@maketribe/dm";
34
34
  import _sfc_main$1 from "./components/article-atlas.vue.js";
35
35
  import "../../../../core/DataModelDefines.js";
36
- import { useRoute } from "vue-router";
36
+ import { useRoute, useRouter } from "vue-router";
37
37
  import "@maketribe/locale";
38
38
  import "../../../ms/dataviews/department/DepartmentForm.js";
39
39
  import "../../../ms/dataviews/department/DepartmentTable.js";
@@ -54,7 +54,10 @@ import { MKForm } from "../../../../components/data-model/data-form/views/form/i
54
54
  import { MKDataFormItem } from "../../../../components/data-model/data-form/data-form-item/index.js";
55
55
  const _hoisted_1 = { class: "mk-cms-article-eidtadd__warp" };
56
56
  const _hoisted_2 = { class: "mk-cms-article-eidtadd__header_tools" };
57
- const _hoisted_3 = { class: "el-dropdown-link" };
57
+ const _hoisted_3 = {
58
+ class: "el-dropdown-link",
59
+ style: { "margin-left": "10px" }
60
+ };
58
61
  const _hoisted_4 = { class: "mk-cms-article-eidtadd__body" };
59
62
  const _hoisted_5 = { class: "mk-cms-article-eidtadd__body__header" };
60
63
  const _hoisted_6 = { class: "mk-cms-article-eidtadd__body__footer" };
@@ -63,7 +66,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
63
66
  __name: "article-edit-add-page",
64
67
  setup(__props) {
65
68
  const route = useRoute();
66
- DvOpt.createInstance({ name: "article", moduleName: "cms" });
69
+ const router = useRouter();
67
70
  const articleDv = reactive(new CmsArticlesForm());
68
71
  const articleOptionsActive = ref("content");
69
72
  const title = computed({
@@ -112,7 +115,6 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
112
115
  articleDv.data.atlas = val;
113
116
  }
114
117
  });
115
- window.articleDv = articleDv;
116
118
  onMounted(() => {
117
119
  if (route.query.id) {
118
120
  articleDv.editRecord(route.query.id);
@@ -170,7 +172,11 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
170
172
  return openBlock(), createElementBlock("div", _hoisted_1, [
171
173
  createVNode(_component_el_page_header, {
172
174
  style: { "background-color": "#fff", "padding": "10px" },
173
- icon: null
175
+ icon: null,
176
+ onBack: _cache[0] || (_cache[0] = () => {
177
+ var _a;
178
+ return unref(router).push({ name: "cms/contents", query: { pid: (_a = articleDv == null ? void 0 : articleDv.data) == null ? void 0 : _a.cmsPartId } });
179
+ })
174
180
  }, {
175
181
  content: withCtx(() => {
176
182
  var _a;
@@ -219,24 +225,40 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
219
225
  default: withCtx(() => [
220
226
  createVNode(_component_el_dropdown_item, { onClick: saveHandle }, {
221
227
  default: withCtx(() => [
228
+ createVNode(unref(MKSvgIcon), {
229
+ iconClass: "save",
230
+ style: { "margin-right": "5px" }
231
+ }),
222
232
  createTextVNode(" 仅保存 ")
223
233
  ]),
224
234
  _: 1
225
235
  }),
226
236
  createVNode(_component_el_dropdown_item, null, {
227
237
  default: withCtx(() => [
238
+ createVNode(unref(MKSvgIcon), {
239
+ iconClass: "save",
240
+ style: { "margin-right": "5px" }
241
+ }),
228
242
  createTextVNode(" 保存为草稿 ")
229
243
  ]),
230
244
  _: 1
231
245
  }),
232
246
  createVNode(_component_el_dropdown_item, null, {
233
247
  default: withCtx(() => [
248
+ createVNode(unref(MKSvgIcon), {
249
+ iconClass: "View",
250
+ style: { "margin-right": "5px" }
251
+ }),
234
252
  createTextVNode(" 保存并预览 ")
235
253
  ]),
236
254
  _: 1
237
255
  }),
238
256
  createVNode(_component_el_dropdown_item, null, {
239
257
  default: withCtx(() => [
258
+ createVNode(unref(MKSvgIcon), {
259
+ iconClass: "Share",
260
+ style: { "margin-right": "5px" }
261
+ }),
240
262
  createTextVNode(" 保存并发布 ")
241
263
  ]),
242
264
  _: 1
@@ -249,14 +271,14 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
249
271
  createElementVNode("span", _hoisted_3, [
250
272
  createVNode(_component_el_button, {
251
273
  type: "primary",
252
- text: ""
274
+ plain: ""
253
275
  }, {
254
276
  default: withCtx(() => [
255
- createTextVNode(" 保存 "),
256
277
  createVNode(unref(MKSvgIcon), {
257
- iconClass: "Plus",
258
- style: { "margin-left": "10px" }
259
- })
278
+ iconClass: "save",
279
+ style: { "margin-right": "10px" }
280
+ }),
281
+ createTextVNode(" 保存 ")
260
282
  ]),
261
283
  _: 1
262
284
  })
@@ -287,7 +309,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
287
309
  "show-word-limit": "",
288
310
  placeholder: "请输入标题",
289
311
  modelValue: title.value,
290
- "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => title.value = $event)
312
+ "onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => title.value = $event)
291
313
  }, null, 8, ["modelValue"])
292
314
  ]),
293
315
  _: 1
@@ -302,7 +324,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
302
324
  "show-word-limit": "",
303
325
  placeholder: "[选填] 请输入子标题",
304
326
  modelValue: subTitle.value,
305
- "onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => subTitle.value = $event)
327
+ "onUpdate:modelValue": _cache[2] || (_cache[2] = ($event) => subTitle.value = $event)
306
328
  }, null, 8, ["modelValue"])
307
329
  ]),
308
330
  _: 1
@@ -415,7 +437,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
415
437
  createElementVNode("div", _hoisted_6, [
416
438
  createVNode(_component_el_tabs, {
417
439
  modelValue: articleOptionsActive.value,
418
- "onUpdate:modelValue": _cache[10] || (_cache[10] = ($event) => articleOptionsActive.value = $event)
440
+ "onUpdate:modelValue": _cache[11] || (_cache[11] = ($event) => articleOptionsActive.value = $event)
419
441
  }, {
420
442
  default: withCtx(() => [
421
443
  createVNode(_component_el_tab_pane, {
@@ -431,11 +453,11 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
431
453
  createVNode(_component_el_input, {
432
454
  placeholder: "[选填] 作者",
433
455
  modelValue: articleDv.data.author,
434
- "onUpdate:modelValue": _cache[2] || (_cache[2] = ($event) => articleDv.data.author = $event),
456
+ "onUpdate:modelValue": _cache[3] || (_cache[3] = ($event) => articleDv.data.author = $event),
435
457
  clearable: ""
436
458
  }, {
437
459
  prefix: withCtx(() => [
438
- createVNode(unref(MKSvgIcon), { iconClass: "yonghu" })
460
+ createVNode(unref(MKSvgIcon), { iconClass: "UserFilled" })
439
461
  ]),
440
462
  _: 1
441
463
  }, 8, ["modelValue"])
@@ -446,7 +468,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
446
468
  default: withCtx(() => [
447
469
  createVNode(_component_el_date_picker, {
448
470
  modelValue: releaseDate.value,
449
- "onUpdate:modelValue": _cache[3] || (_cache[3] = ($event) => releaseDate.value = $event),
471
+ "onUpdate:modelValue": _cache[4] || (_cache[4] = ($event) => releaseDate.value = $event),
450
472
  type: "datetime",
451
473
  placeholder: "发布时间",
452
474
  "default-time": /* @__PURE__ */ new Date()
@@ -459,7 +481,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
459
481
  createVNode(_component_el_input, {
460
482
  placeholder: "[选填] 发布地址",
461
483
  modelValue: articleDv.data.locationDesc,
462
- "onUpdate:modelValue": _cache[4] || (_cache[4] = ($event) => articleDv.data.locationDesc = $event),
484
+ "onUpdate:modelValue": _cache[5] || (_cache[5] = ($event) => articleDv.data.locationDesc = $event),
463
485
  clearable: ""
464
486
  }, {
465
487
  prefix: withCtx(() => [
@@ -477,7 +499,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
477
499
  default: withCtx(() => [
478
500
  createVNode(_component_el_select, {
479
501
  modelValue: tags.value,
480
- "onUpdate:modelValue": _cache[5] || (_cache[5] = ($event) => tags.value = $event),
502
+ "onUpdate:modelValue": _cache[6] || (_cache[6] = ($event) => tags.value = $event),
481
503
  multiple: "",
482
504
  filterable: "",
483
505
  "allow-create": "",
@@ -498,7 +520,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
498
520
  default: withCtx(() => [
499
521
  createVNode(_component_MKUploadFile, {
500
522
  modelValue: articleDv.data.cover,
501
- "onUpdate:modelValue": _cache[6] || (_cache[6] = ($event) => articleDv.data.cover = $event),
523
+ "onUpdate:modelValue": _cache[7] || (_cache[7] = ($event) => articleDv.data.cover = $event),
502
524
  class: "cover",
503
525
  uploadContext: new (unref(MaterialUploadContext))({
504
526
  allowMaterialTypeValues: [1]
@@ -527,7 +549,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
527
549
  "show-word-limit": "",
528
550
  placeholder: "[选填] 文章简介",
529
551
  modelValue: articleDv.data.desc,
530
- "onUpdate:modelValue": _cache[7] || (_cache[7] = ($event) => articleDv.data.desc = $event)
552
+ "onUpdate:modelValue": _cache[8] || (_cache[8] = ($event) => articleDv.data.desc = $event)
531
553
  }, null, 8, ["modelValue"])
532
554
  ]),
533
555
  _: 1
@@ -543,7 +565,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
543
565
  createVNode(_component_MKUploadFile, {
544
566
  class: "banner",
545
567
  modelValue: articleDv.data.banner,
546
- "onUpdate:modelValue": _cache[8] || (_cache[8] = ($event) => articleDv.data.banner = $event),
568
+ "onUpdate:modelValue": _cache[9] || (_cache[9] = ($event) => articleDv.data.banner = $event),
547
569
  uploadContext: new (unref(MaterialUploadContext))({
548
570
  allowMaterialTypeValues: [1]
549
571
  })
@@ -579,7 +601,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
579
601
  return [
580
602
  createVNode(_sfc_main$1, {
581
603
  modelValue: atlas.value,
582
- "onUpdate:modelValue": _cache[9] || (_cache[9] = ($event) => atlas.value = $event),
604
+ "onUpdate:modelValue": _cache[10] || (_cache[10] = ($event) => atlas.value = $event),
583
605
  articleId: parseInt((_a = articleDv.data) == null ? void 0 : _a.id)
584
606
  }, null, 8, ["modelValue", "articleId"])
585
607
  ];
@@ -1 +1 @@
1
- {"version":3,"file":"article-edit-add-page.vue2.js","sources":["../../../../../../src/modules/cms/pages/cms-contents/article-edit-add-page.vue"],"sourcesContent":["<template>\r\n <div class=\"mk-cms-article-eidtadd__warp\">\r\n <el-page-header style=\"background-color: #fff;padding: 10px;\" :icon=\"null\">\r\n <template #content>\r\n <el-text v-if=\"!articleDv.data?.modifier\">{{ !!route.query.id ? \"编辑文章\" : \"创建文章\" }}</el-text>\r\n <el-text v-else>{{ articleDv.data?.modifierName }} 于 {{ articleDv.data?.updatedAt }} 更新</el-text>\r\n </template>\r\n <template #extra>\r\n <div class=\"mk-cms-article-eidtadd__header_tools\">\r\n <el-tag v-if=\"!articleDv.data?.publishTime\" effect=\"dark\" round>未发布</el-tag>\r\n <el-text v-else>发布时间:{{ articleDv.data?.publishTime }}</el-text>\r\n <el-dropdown>\r\n <span class=\"el-dropdown-link\">\r\n <el-button type=\"primary\" text>\r\n 保存\r\n <MKSvgIcon iconClass=\"Plus\" style=\"margin-left: 10px;\" />\r\n </el-button>\r\n </span>\r\n <template #dropdown>\r\n <el-dropdown-menu>\r\n <el-dropdown-item @click=\"saveHandle\">\r\n 仅保存\r\n </el-dropdown-item>\r\n <el-dropdown-item>\r\n 保存为草稿\r\n </el-dropdown-item>\r\n <el-dropdown-item>\r\n 保存并预览\r\n </el-dropdown-item>\r\n <el-dropdown-item>\r\n 保存并发布\r\n </el-dropdown-item>\r\n </el-dropdown-menu>\r\n </template>\r\n </el-dropdown>\r\n </div>\r\n </template>\r\n </el-page-header>\r\n <div class=\"mk-cms-article-eidtadd__body\" v-loading=\"articleDv.loading\">\r\n\r\n <MKDocEditor v-if=\"articleDv.data\" :content=\"content\" @change=\"EditorChangeHandle\">\r\n <template #header>\r\n <div class=\"mk-cms-article-eidtadd__body__header\">\r\n <el-row>\r\n <el-input class=\"title\" type=\"textarea\" :autosize=\"{ minRows: 1, maxRows: 4 }\" maxlength=\"150\"\r\n show-word-limit placeholder=\"请输入标题\" v-model=\"title\" />\r\n </el-row>\r\n <el-row>\r\n <el-input class=\"sub-title\" type=\"textarea\" :autosize=\"{ minRows: 1, maxRows: 4 }\" maxlength=\"150\"\r\n show-word-limit placeholder=\"[选填] 请输入子标题\" v-model=\"subTitle\" />\r\n </el-row>\r\n </div>\r\n </template>\r\n <template #after-extentions>\r\n <div class=\"mk-cms-article-eidtadd__body__extentions\" :class=\"{ hide: showExtentions! }\" ref=\"extentionsRef\">\r\n <MKSvgIcon icon-class=\"ArrowLeft\" class=\"open\" @click=\"showExtentionsHandle\" v-if=\"showExtentions\">\r\n </MKSvgIcon>\r\n <MKSvgIcon v-else icon-class=\"ArrowRight\" class=\"close\" @click=\"hideExtentionsHandle\">\r\n </MKSvgIcon>\r\n <el-divider content-position=\"left\">文章设置</el-divider>\r\n <MKDataForm :dataForm=\"articleDv\">\r\n <MKForm :dataForm=\"articleDv\" style=\"width:225px\" label-width=\"110px\">\r\n <el-row>\r\n <MKDataFormItem style=\"width: 100%;\" name=\"isTop\"></MKDataFormItem>\r\n </el-row>\r\n <el-row>\r\n <MKDataFormItem style=\"width: 100%;\" name=\"isNew\"></MKDataFormItem>\r\n </el-row>\r\n <el-row>\r\n <MKDataFormItem style=\"width: 100%;\" name=\"isHotRecommend\"></MKDataFormItem>\r\n </el-row>\r\n <el-row>\r\n <MKDataFormItem style=\"width: 100%;\" name=\"isPartRecommend\"></MKDataFormItem>\r\n </el-row>\r\n <el-row>\r\n <MKDataFormItem style=\"width: 100%;\" name=\"isShowList\"></MKDataFormItem>\r\n </el-row>\r\n <el-row>\r\n <MKDataFormItem style=\"width: 100%;\" name=\"isDraft\"></MKDataFormItem>\r\n </el-row>\r\n <el-row>\r\n <MKDataFormItem style=\"width: 100%;\" name=\"sortNo\"></MKDataFormItem>\r\n </el-row>\r\n </MKForm>\r\n </MKDataForm>\r\n </div>\r\n </template>\r\n <template #footer>\r\n <div class=\"mk-cms-article-eidtadd__body__footer\">\r\n <el-tabs v-model=\"articleOptionsActive\">\r\n <el-tab-pane label=\"基础内容\" name=\"content\">\r\n <div class=\"content\">\r\n <el-row :gutter=\"20\">\r\n <el-col :span=\"6\">\r\n <el-input placeholder=\"[选填] 作者\" v-model=\"articleDv.data.author\" clearable>\r\n <template #prefix>\r\n <MKSvgIcon iconClass=\"yonghu\" />\r\n </template>\r\n </el-input>\r\n </el-col>\r\n <el-col :span=\"6\">\r\n <el-date-picker v-model=\"releaseDate\" type=\"datetime\" placeholder=\"发布时间\"\r\n :default-time=\"new Date()\" />\r\n </el-col>\r\n <el-col :span=\"12\">\r\n <el-input placeholder=\"[选填] 发布地址\" v-model=\"articleDv.data.locationDesc\" clearable>\r\n <template #prefix>\r\n <MKSvgIcon iconClass=\"Location\" />\r\n </template>\r\n </el-input>\r\n </el-col>\r\n </el-row>\r\n <el-row>\r\n <el-select v-model=\"tags\" multiple filterable allow-create default-first-option\r\n :reserve-keyword=\"false\" placeholder=\"[可选] 选择文章标签\" style=\"width: 100%\">\r\n <template #prefix>\r\n <MKSvgIcon iconClass=\"CollectionTag\" />\r\n </template>\r\n </el-select>\r\n </el-row>\r\n <el-row class=\"cover-desc\">\r\n <MKUploadFile v-model=\"articleDv.data.cover\" class=\"cover\" :uploadContext=\"new MaterialUploadContext({\r\n allowMaterialTypeValues: [1],\r\n })\">\r\n <el-image class=\"cover-image\" :src=\"articleDv.data.cover\" style=\"width: 100%; height: 100%\"\r\n fit=\"contain\">\r\n <template #error>\r\n <MKSvgIcon iconClass=\"Picture\" />\r\n </template>\r\n </el-image>\r\n </MKUploadFile>\r\n <el-input class=\"desc\" type=\"textarea\" :autosize=\"{ minRows: 5, maxRows: 10 }\" maxlength=\"1000\"\r\n show-word-limit placeholder=\"[选填] 文章简介\" v-model=\"articleDv.data.desc\" />\r\n </el-row>\r\n <el-divider content-position=\"left\">文章封面</el-divider>\r\n <el-row>\r\n <MKUploadFile class=\"banner\" v-model=\"articleDv.data.banner\" :uploadContext=\"new MaterialUploadContext({\r\n allowMaterialTypeValues: [1],\r\n })\">\r\n <el-image class=\"cover-image\" :src=\"articleDv.data.banner\" style=\"width: 100%; height: 100%\"\r\n fit=\"cover\">\r\n <template #error>\r\n <MKSvgIcon iconClass=\"Picture\" />\r\n </template>\r\n </el-image>\r\n </MKUploadFile>\r\n </el-row>\r\n </div>\r\n </el-tab-pane>\r\n <el-tab-pane label=\"文章资源库\" name=\"atlas\">\r\n <ArticleAtlas v-model=\"atlas\" :articleId=\"parseInt(articleDv.data?.id)\" />\r\n </el-tab-pane>\r\n <el-tab-pane label=\"页面设置\" name=\"settings\">\r\n <MKDataForm :dataForm=\"articleDv\" label-width=\"120px\">\r\n <MKForm :dataForm=\"articleDv\">\r\n <el-row>\r\n <MKDataFormItem style=\"width: 100%;\" name=\"seoKeywords\"></MKDataFormItem>\r\n </el-row>\r\n <el-row>\r\n <MKDataFormItem style=\"width: 100%;\" name=\"seoDesc\"></MKDataFormItem>\r\n </el-row>\r\n </MKForm>\r\n </MKDataForm>\r\n </el-tab-pane>\r\n </el-tabs>\r\n </div>\r\n </template>\r\n </MKDocEditor>\r\n </div>\r\n </div>\r\n</template>\r\n<script setup lang='ts'>\r\nimport { onMounted, reactive, ref, unref, Ref, watch, computed } from \"vue\";\r\nimport { MKDocEditor, MKSvgIcon } from '../../../../components'\r\nimport { MKDataForm, MKForm, MKDataFormItem } from \"../../../../components\";\r\nimport { DvOpt } from \"@maketribe/request\";\r\nimport ArticleAtlas from \"./components/article-atlas.vue\";\r\nimport { CmsArticlesForm } from \"../../dataviews\";\r\nimport { useRoute } from \"vue-router\";\r\nimport { MaterialUploadContext } from \"../../../ms\";\r\n\r\nconst route = useRoute()\r\n\r\n// 文章请求\r\nconst articleDvOpt = DvOpt.createInstance({ name: \"article\", moduleName: \"cms\" });\r\nconst articleDv = reactive(new CmsArticlesForm()) as CmsArticlesForm;\r\nconst articleOptionsActive = ref(\"content\");\r\n\r\n//qiat\r\n\r\n// 标题\r\nconst title = computed({\r\n get() { return articleDv.data?.title || \"\"; },\r\n set(val) { articleDv.data.title = val; }\r\n});\r\n// 子标题\r\nconst subTitle = computed({\r\n get() { return articleDv.data?.subTitle || \"\"; },\r\n set(val) { articleDv.data.subTitle = val; }\r\n});\r\n// 发布时间\r\nconst releaseDate = computed({\r\n get() { return articleDv.data?.releaseDate || articleDv.data?.publishTime; },\r\n set(val) { articleDv.data.releaseDate = val; }\r\n});\r\n// 标签\r\nconst tags = ref([]);\r\n// computed({ \r\n// get() { return articleDv.data?.tags || [] }, \r\n// set(val) { articleDv.data.tags = val; } \r\n// });\r\n// 内容\r\nconst content = computed({\r\n get() { return articleDv.data?.content || \"\"; },\r\n set(val) { articleDv.data.content = val; }\r\n});\r\n\r\n// 图集\r\nconst atlas = computed({\r\n get() {\r\n return articleDv.data?.atlas\r\n },\r\n set(val) { articleDv.data.atlas = val; }\r\n});\r\n\r\n// debug\r\n(window as any).articleDv = articleDv;\r\n\r\nonMounted(() => {\r\n\r\n // 初始化数据加载\r\n if (route.query.id) {\r\n articleDv.editRecord(route.query.id);\r\n }\r\n else if (route.query.partId) {\r\n articleDv.addRecord({\r\n cmsPartId: route.query.partId\r\n });\r\n }\r\n else {\r\n articleDv.addRecord();\r\n }\r\n articleDv.init();\r\n})\r\n\r\n// 保存\r\nconst saveHandle = async () => {\r\n\r\n let result = await articleDv.submit();\r\n if (route.query.id) {\r\n articleDv.editRecord(route.query.id);\r\n } else if (route.query.partId) {\r\n articleDv.addRecord({\r\n cmsPartId: route.query.partId\r\n });\r\n } else {\r\n articleDv.addRecord();\r\n }\r\n}\r\nconst showExtentions = ref(false);\r\nconst extentionsRef = ref();\r\n// 隐藏扩展\r\nconst hideExtentionsHandle = () => {\r\n\r\n showExtentions.value = true;\r\n}\r\n//展示扩展\r\nconst showExtentionsHandle = () => {\r\n\r\n showExtentions.value = false;\r\n\r\n}\r\n\r\nconst EditorChangeHandle = (v: any) => {\r\n articleDv.data.content = v;\r\n}\r\n\r\n</script>\r\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"article-edit-add-page.vue2.js","sources":["../../../../../../src/modules/cms/pages/cms-contents/article-edit-add-page.vue"],"sourcesContent":["<template>\r\n <div class=\"mk-cms-article-eidtadd__warp\">\r\n <el-page-header style=\"background-color: #fff;padding: 10px;\" :icon=\"null\" @back=\"()=>router.push({name:'cms/contents',query:{pid:articleDv?.data?.cmsPartId} })\">\r\n <template #content>\r\n <el-text v-if=\"!articleDv.data?.modifier\">{{ !!route.query.id ? \"编辑文章\" : \"创建文章\" }}</el-text>\r\n <el-text v-else>{{ articleDv.data?.modifierName }} 于 {{ articleDv.data?.updatedAt }} 更新</el-text>\r\n </template>\r\n <template #extra>\r\n <div class=\"mk-cms-article-eidtadd__header_tools\">\r\n <el-tag v-if=\"!articleDv.data?.publishTime\" effect=\"dark\" round>未发布</el-tag>\r\n <el-text v-else>发布时间:{{ articleDv.data?.publishTime }}</el-text>\r\n <el-dropdown>\r\n <span class=\"el-dropdown-link\" style=\"margin-left: 10px;\">\r\n <el-button type=\"primary\" plain>\r\n <MKSvgIcon iconClass=\"save\" style=\"margin-right: 10px;\" />\r\n 保存\r\n </el-button>\r\n </span>\r\n <template #dropdown>\r\n <el-dropdown-menu>\r\n <el-dropdown-item @click=\"saveHandle\">\r\n <MKSvgIcon iconClass=\"save\" style=\"margin-right: 5px;\" />\r\n 仅保存\r\n </el-dropdown-item>\r\n <el-dropdown-item>\r\n <MKSvgIcon iconClass=\"save\" style=\"margin-right: 5px;\" />\r\n 保存为草稿\r\n </el-dropdown-item>\r\n <el-dropdown-item>\r\n <MKSvgIcon iconClass=\"View\" style=\"margin-right: 5px;\" />\r\n 保存并预览\r\n </el-dropdown-item>\r\n <el-dropdown-item>\r\n <MKSvgIcon iconClass=\"Share\" style=\"margin-right: 5px;\" />\r\n 保存并发布\r\n </el-dropdown-item>\r\n </el-dropdown-menu>\r\n </template>\r\n </el-dropdown>\r\n </div>\r\n </template>\r\n </el-page-header>\r\n <div class=\"mk-cms-article-eidtadd__body\" v-loading=\"articleDv.loading\">\r\n\r\n <MKDocEditor v-if=\"articleDv.data\" :content=\"content\" @change=\"EditorChangeHandle\">\r\n <template #header>\r\n <div class=\"mk-cms-article-eidtadd__body__header\">\r\n <el-row>\r\n <el-input class=\"title\" type=\"textarea\" :autosize=\"{ minRows: 1, maxRows: 4 }\" maxlength=\"150\"\r\n show-word-limit placeholder=\"请输入标题\" v-model=\"title\" />\r\n </el-row>\r\n <el-row>\r\n <el-input class=\"sub-title\" type=\"textarea\" :autosize=\"{ minRows: 1, maxRows: 4 }\" maxlength=\"150\"\r\n show-word-limit placeholder=\"[选填] 请输入子标题\" v-model=\"subTitle\" />\r\n </el-row>\r\n </div>\r\n </template>\r\n <template #after-extentions>\r\n <div class=\"mk-cms-article-eidtadd__body__extentions\" :class=\"{ hide: showExtentions! }\" ref=\"extentionsRef\">\r\n <MKSvgIcon icon-class=\"ArrowLeft\" class=\"open\" @click=\"showExtentionsHandle\" v-if=\"showExtentions\">\r\n </MKSvgIcon>\r\n <MKSvgIcon v-else icon-class=\"ArrowRight\" class=\"close\" @click=\"hideExtentionsHandle\">\r\n </MKSvgIcon>\r\n <el-divider content-position=\"left\">文章设置</el-divider>\r\n <MKDataForm :dataForm=\"articleDv\">\r\n <MKForm :dataForm=\"articleDv\" style=\"width:225px\" label-width=\"110px\">\r\n <el-row>\r\n <MKDataFormItem style=\"width: 100%;\" name=\"isTop\"></MKDataFormItem>\r\n </el-row>\r\n <el-row>\r\n <MKDataFormItem style=\"width: 100%;\" name=\"isNew\"></MKDataFormItem>\r\n </el-row>\r\n <el-row>\r\n <MKDataFormItem style=\"width: 100%;\" name=\"isHotRecommend\"></MKDataFormItem>\r\n </el-row>\r\n <el-row>\r\n <MKDataFormItem style=\"width: 100%;\" name=\"isPartRecommend\"></MKDataFormItem>\r\n </el-row>\r\n <el-row>\r\n <MKDataFormItem style=\"width: 100%;\" name=\"isShowList\"></MKDataFormItem>\r\n </el-row>\r\n <el-row>\r\n <MKDataFormItem style=\"width: 100%;\" name=\"isDraft\"></MKDataFormItem>\r\n </el-row>\r\n <el-row>\r\n <MKDataFormItem style=\"width: 100%;\" name=\"sortNo\"></MKDataFormItem>\r\n </el-row>\r\n </MKForm>\r\n </MKDataForm>\r\n </div>\r\n </template>\r\n <template #footer>\r\n <div class=\"mk-cms-article-eidtadd__body__footer\">\r\n <el-tabs v-model=\"articleOptionsActive\">\r\n <el-tab-pane label=\"基础内容\" name=\"content\">\r\n <div class=\"content\">\r\n <el-row :gutter=\"20\">\r\n <el-col :span=\"6\">\r\n <el-input placeholder=\"[选填] 作者\" v-model=\"articleDv.data.author\" clearable>\r\n <template #prefix>\r\n <MKSvgIcon iconClass=\"UserFilled\" />\r\n </template>\r\n </el-input>\r\n </el-col>\r\n <el-col :span=\"6\">\r\n <el-date-picker v-model=\"releaseDate\" type=\"datetime\" placeholder=\"发布时间\"\r\n :default-time=\"new Date()\" />\r\n </el-col>\r\n <el-col :span=\"12\">\r\n <el-input placeholder=\"[选填] 发布地址\" v-model=\"articleDv.data.locationDesc\" clearable>\r\n <template #prefix>\r\n <MKSvgIcon iconClass=\"Location\" />\r\n </template>\r\n </el-input>\r\n </el-col>\r\n </el-row>\r\n <el-row>\r\n <el-select v-model=\"tags\" multiple filterable allow-create default-first-option\r\n :reserve-keyword=\"false\" placeholder=\"[可选] 选择文章标签\" style=\"width: 100%\">\r\n <template #prefix>\r\n <MKSvgIcon iconClass=\"CollectionTag\" />\r\n </template>\r\n </el-select>\r\n </el-row>\r\n <el-row class=\"cover-desc\">\r\n <MKUploadFile v-model=\"articleDv.data.cover\" class=\"cover\" :uploadContext=\"new MaterialUploadContext({\r\n allowMaterialTypeValues: [1],\r\n })\">\r\n <el-image class=\"cover-image\" :src=\"articleDv.data.cover\" style=\"width: 100%; height: 100%\"\r\n fit=\"contain\">\r\n <template #error>\r\n <MKSvgIcon iconClass=\"Picture\" />\r\n </template>\r\n </el-image>\r\n </MKUploadFile>\r\n <el-input class=\"desc\" type=\"textarea\" :autosize=\"{ minRows: 5, maxRows: 10 }\" maxlength=\"1000\"\r\n show-word-limit placeholder=\"[选填] 文章简介\" v-model=\"articleDv.data.desc\" />\r\n </el-row>\r\n <el-divider content-position=\"left\">文章封面</el-divider>\r\n <el-row>\r\n <MKUploadFile class=\"banner\" v-model=\"articleDv.data.banner\" :uploadContext=\"new MaterialUploadContext({\r\n allowMaterialTypeValues: [1],\r\n })\">\r\n <el-image class=\"cover-image\" :src=\"articleDv.data.banner\" style=\"width: 100%; height: 100%\"\r\n fit=\"cover\">\r\n <template #error>\r\n <MKSvgIcon iconClass=\"Picture\" />\r\n </template>\r\n </el-image>\r\n </MKUploadFile>\r\n </el-row>\r\n </div>\r\n </el-tab-pane>\r\n <el-tab-pane label=\"文章资源库\" name=\"atlas\">\r\n <ArticleAtlas v-model=\"atlas\" :articleId=\"parseInt(articleDv.data?.id)\" />\r\n </el-tab-pane>\r\n <el-tab-pane label=\"页面设置\" name=\"settings\">\r\n <MKDataForm :dataForm=\"articleDv\" label-width=\"120px\">\r\n <MKForm :dataForm=\"articleDv\">\r\n <el-row>\r\n <MKDataFormItem style=\"width: 100%;\" name=\"seoKeywords\"></MKDataFormItem>\r\n </el-row>\r\n <el-row>\r\n <MKDataFormItem style=\"width: 100%;\" name=\"seoDesc\"></MKDataFormItem>\r\n </el-row>\r\n </MKForm>\r\n </MKDataForm>\r\n </el-tab-pane>\r\n </el-tabs>\r\n </div>\r\n </template>\r\n </MKDocEditor>\r\n </div>\r\n </div>\r\n</template>\r\n<script setup lang='ts'>\r\nimport { onMounted, reactive, ref, computed } from \"vue\";\r\nimport { MKDocEditor, MKSvgIcon } from '../../../../components'\r\nimport { MKDataForm, MKForm, MKDataFormItem } from \"../../../../components\";\r\nimport ArticleAtlas from \"./components/article-atlas.vue\";\r\nimport { CmsArticlesForm } from \"../../dataviews\";\r\nimport { useRoute,useRouter } from \"vue-router\";\r\nimport { MaterialUploadContext } from \"../../../ms\";\r\n\r\nconst route = useRoute()\r\nconst router = useRouter();\r\n\r\n\r\n// 文章请求\r\nconst articleDv = reactive(new CmsArticlesForm()) as CmsArticlesForm;\r\nconst articleOptionsActive = ref(\"content\");\r\n\r\n//qiat\r\n\r\n// 标题\r\nconst title = computed({\r\n get() { return articleDv.data?.title || \"\"; },\r\n set(val) { articleDv.data.title = val; }\r\n});\r\n// 子标题\r\nconst subTitle = computed({\r\n get() { return articleDv.data?.subTitle || \"\"; },\r\n set(val) { articleDv.data.subTitle = val; }\r\n});\r\n// 发布时间\r\nconst releaseDate = computed({\r\n get() { return articleDv.data?.releaseDate || articleDv.data?.publishTime; },\r\n set(val) { articleDv.data.releaseDate = val; }\r\n});\r\n// 标签\r\nconst tags = ref([]);\r\n// computed({ \r\n// get() { return articleDv.data?.tags || [] }, \r\n// set(val) { articleDv.data.tags = val; } \r\n// });\r\n// 内容\r\nconst content = computed({\r\n get() { return articleDv.data?.content || \"\"; },\r\n set(val) { articleDv.data.content = val; }\r\n});\r\n\r\n// 图集\r\nconst atlas = computed({\r\n get() {\r\n return articleDv.data?.atlas\r\n },\r\n set(val) { articleDv.data.atlas = val; }\r\n});\r\n\r\n\r\nonMounted(() => {\r\n\r\n // 初始化数据加载\r\n if (route.query.id) {\r\n articleDv.editRecord(route.query.id);\r\n }\r\n else if (route.query.partId) {\r\n articleDv.addRecord({\r\n cmsPartId: route.query.partId\r\n });\r\n }\r\n else {\r\n articleDv.addRecord();\r\n }\r\n articleDv.init();\r\n \r\n})\r\n\r\n// 保存\r\nconst saveHandle = async () => {\r\n\r\n let result = await articleDv.submit();\r\n if (route.query.id) {\r\n articleDv.editRecord(route.query.id);\r\n } else if (route.query.partId) {\r\n articleDv.addRecord({\r\n cmsPartId: route.query.partId\r\n });\r\n } else {\r\n articleDv.addRecord();\r\n }\r\n}\r\nconst showExtentions = ref(false);\r\nconst extentionsRef = ref();\r\n// 隐藏扩展\r\nconst hideExtentionsHandle = () => {\r\n\r\n showExtentions.value = true;\r\n}\r\n//展示扩展\r\nconst showExtentionsHandle = () => {\r\n\r\n showExtentions.value = false;\r\n\r\n}\r\n\r\nconst EditorChangeHandle = (v: any) => {\r\n articleDv.data.content = v;\r\n}\r\n\r\n</script>\r\n"],"names":[],"mappings":"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"}
@@ -190,12 +190,12 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
190
190
  createElementVNode("div", _hoisted_7, [
191
191
  createElementVNode("div", _hoisted_8, [
192
192
  createElementVNode("div", _hoisted_9, [
193
- createVNode(_component_MKSvgIcon, { iconClass: "User" }),
193
+ createVNode(_component_MKSvgIcon, { iconClass: "UserFilled" }),
194
194
  createTextVNode(" 作者 : " + toDisplayString(article.author || "-"), 1)
195
195
  ]),
196
196
  createElementVNode("div", _hoisted_10, [
197
197
  createVNode(_component_MKSvgIcon, { iconClass: "Timer" }),
198
- createTextVNode("发布时间 : " + toDisplayString(article.publishTime), 1)
198
+ createTextVNode(" 发布时间 : " + toDisplayString(article.publishTime), 1)
199
199
  ])
200
200
  ]),
201
201
  createElementVNode("div", _hoisted_11, [
@@ -1 +1 @@
1
- {"version":3,"file":"article-list.vue.js","sources":["../../../../../../../src/modules/cms/pages/cms-contents/components/article-list.vue"],"sourcesContent":["<template>\r\n <MKDataTable :data-table=\"articlesDv\" :auto-load=\"false\" class=\"mk-cms-article-list\">\r\n <el-empty v-if=\"part && part.cmsPartTypeId == 1\" description=\"外链栏目下无文章内容\" />\r\n <MKTableView v-else-if=\"part\" :data-table=\"articlesDv\">\r\n <el-scrollbar class=\"mk-cms-article-list__content\" style=\"box-sizing: border-box;font-size: 0;\"\r\n v-if=\"articlesDv.getList().length > 0\">\r\n <el-card class=\"mk-cms-article-list__item\" v-for=\"article in articlesDv.getList()\" :key=\"article.id\">\r\n <div class=\"mk-cms-article-list__item__content\">\r\n <div class=\"left\">\r\n <el-image class=\"cover-image\" :src=\"article.cover\" fit=\"contain\">\r\n <template #error>\r\n <MKSvgIcon iconClass=\"Picture\" />\r\n </template>\r\n </el-image>\r\n </div>\r\n <div class=\"right\">\r\n <div class=\"title\" :title=\"article.title\"> {{ article.title }}</div>\r\n <div class=\"sub-title\" v-if=\"article.subTitle\" :title=\"article.subTitle\"> {{ article.subTitle }}</div>\r\n <div class=\"desc\">\r\n {{ article.desc }}\r\n </div>\r\n <div class=\"footer\">\r\n <div class=\"ext\">\r\n <div class=\"author\">\r\n <MKSvgIcon iconClass=\"User\"></MKSvgIcon> 作者 :\r\n {{ article.author || \"-\" }}\r\n </div>\r\n <div class=\"publish-time\">\r\n <MKSvgIcon iconClass=\"Timer\"></MKSvgIcon>发布时间 : {{ article.publishTime }}\r\n </div>\r\n </div>\r\n <div class=\"tools\">\r\n <el-button type=\"primary\" size=\"large\" @click=\"editArticleHandle(article)\" text>\r\n 编辑\r\n </el-button>\r\n <el-button type=\"danger\" size=\"large\" @click=\"deleteArticleHandle(article)\" text>\r\n 删除\r\n </el-button>\r\n <a v-if=\"article.url\" :href=\"article.url\" target=\"_blank\">\r\n <el-button type=\"primary\" size=\"large\" text>访问</el-button>\r\n </a>\r\n <a :href=\"'/api/cms/content/preview/content/' + article.cmsPartId + '/' + article.id\" target=\"_blank\">\r\n <el-button type=\"primary\" size=\"large\" text>预览</el-button>\r\n </a>\r\n <el-button type=\"primary\" size=\"large\" text @click=\"publishArticleHandle(article)\">\r\n 发布\r\n </el-button>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </el-card>\r\n </el-scrollbar>\r\n <el-empty v-if=\"articlesDv.getList().length <= 0\" description=\"暂无文章内容\" />\r\n </MKTableView>\r\n </MKDataTable>\r\n</template>\r\n<script setup lang='ts'>\r\nimport { MKTableView } from \"../../../../../components\"\r\nimport { CmsArticlesTable } from \"../../../dataviews\"\r\nimport { onMounted, reactive, ref, defineProps, watch } from \"vue\";\r\nimport { DvOpt } from \"@maketribe/request\";\r\nimport { Dialoger, isWhereFilter, Messager } from '@maketribe/dm'\r\nimport { useRouter } from \"vue-router\";\r\nimport { MSAppClient } from \"../../../../../core\";\r\n\r\n// 文章\r\nconst articlesDv = reactive(new CmsArticlesTable()) as CmsArticlesTable;\r\n\r\n// 参数\r\nconst props = defineProps({\r\n part: { type: Object, default: null }\r\n})\r\n\r\nconst router = useRouter();\r\n\r\n// 监听栏目数据变化\r\nwatch(() => props.part, (item: any) => {\r\n\r\n if (item.cmsPartTypeId != 1) {\r\n\r\n const dataFilter = articlesDv.dataFilter;\r\n\r\n if (isWhereFilter(dataFilter)) {\r\n const defaultGroup = dataFilter.getDefaultGroup();\r\n defaultGroup.clear();\r\n defaultGroup.addCondition(\"cmsPartId\", \"=\", item.id);\r\n }\r\n\r\n articlesDv.load()\r\n }\r\n\r\n}, { immediate: true })\r\n\r\n/**\r\n * 删除文章\r\n */\r\nconst deleteArticleHandle = async (item: any) => {\r\n const isConfirm = await Dialoger.confirm({\r\n title: \"删除文章?\",\r\n message: \"是否删除文章?\",\r\n type: \"warning\"\r\n })\r\n\r\n if (!isConfirm) {\r\n return;\r\n }\r\n await articlesDv.deleteAfterRefresh(item.id);\r\n}\r\n\r\n/**\r\n * 编辑文章\r\n */\r\nconst editArticleHandle = (item: any, isEdit = false) => {\r\n router.push({ path: \"/cms/article\", query: { id: isEdit ? undefined : item.id, partId: isEdit ? item.id : undefined } })\r\n}\r\n\r\n\r\narticlesDv.addRecordEvent.on(() => {\r\n editArticleHandle(props.part, true)\r\n})\r\n\r\nconst publishArticleHandle = async (article: any) => {\r\n console.warn(`🚀 ~ file: article-list.vue:124 ~ article:`, article);\r\n const httpRequest = MSAppClient.instance?.httpRequest!;\r\n try {\r\n const isConfirm = await Dialoger.confirm({ title: \"文章发布\", message: \"是否发布文章?\", type: \"warning\" })\r\n\r\n if (!isConfirm) {\r\n return;\r\n }\r\n\r\n articlesDv.getLoadingManager().startLoading();\r\n\r\n const response = await httpRequest.post(\r\n `/cms/content/publish/content`, {\r\n partId: article.cmsPartId,\r\n contentIds: [\r\n article.id\r\n ]\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 Messager.success({ message: \"发布成功\" });\r\n\r\n } finally {\r\n articlesDv.getLoadingManager().completeLoading();\r\n }\r\n}\r\n\r\n// 挂在完成之后\r\nonMounted(async () => {\r\n\r\n // // 加载数据\r\n // articleList.value = await articleDvOpt.query().list();\r\n\r\n // // 修改状态\r\n // loading.value = false;\r\n})\r\n\r\n</script>\r\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAmEA,UAAM,aAAa,SAAS,IAAI,iBAAkB,CAAA;AAGlD,UAAM,QAAQ;AAId,UAAM,SAAS;AAGf,UAAM,MAAM,MAAM,MAAM,CAAC,SAAc;AAEjC,UAAA,KAAK,iBAAiB,GAAG;AAE3B,cAAM,aAAa,WAAW;AAE1B,YAAA,cAAc,UAAU,GAAG;AACvB,gBAAA,eAAe,WAAW;AAChC,uBAAa,MAAM;AACnB,uBAAa,aAAa,aAAa,KAAK,KAAK,EAAE;AAAA,QACrD;AAEA,mBAAW,KAAK;AAAA,MAClB;AAAA,IAAA,GAEC,EAAE,WAAW,KAAA,CAAM;AAKhB,UAAA,sBAAsB,OAAO,SAAc;AACzC,YAAA,YAAY,MAAM,SAAS,QAAQ;AAAA,QACvC,OAAO;AAAA,QACP,SAAS;AAAA,QACT,MAAM;AAAA,MAAA,CACP;AAED,UAAI,CAAC,WAAW;AACd;AAAA,MACF;AACM,YAAA,WAAW,mBAAmB,KAAK,EAAE;AAAA,IAAA;AAM7C,UAAM,oBAAoB,CAAC,MAAW,SAAS,UAAU;AACvD,aAAO,KAAK,EAAE,MAAM,gBAAgB,OAAO,EAAE,IAAI,SAAS,SAAY,KAAK,IAAI,QAAQ,SAAS,KAAK,KAAK,UAAa;AAAA,IAAA;AAI9G,eAAA,eAAe,GAAG,MAAM;AACf,wBAAA,MAAM,MAAM,IAAI;AAAA,IAAA,CACnC;AAEK,UAAA,uBAAuB,OAAO,YAAiB;;AAC3C,cAAA,KAAK,8CAA8C,OAAO;AAC5D,YAAA,eAAc,iBAAY,aAAZ,mBAAsB;AACtC,UAAA;AACI,cAAA,YAAY,MAAM,SAAS,QAAQ,EAAE,OAAO,QAAQ,SAAS,WAAW,MAAM,UAAW,CAAA;AAE/F,YAAI,CAAC,WAAW;AACd;AAAA,QACF;AAEW,mBAAA,oBAAoB;AAEzB,cAAA,WAAW,MAAM,YAAY;AAAA,UACjC;AAAA,UAAgC;AAAA,YAChC,QAAQ,QAAQ;AAAA,YAChB,YAAY;AAAA,cACV,QAAQ;AAAA,YACV;AAAA,UACF;AAAA,QAAA;AAGI,YAAA,SAAS,KAAK,SAAS,KAAK;AAC9B,mBAAS,MAAM,EAAE,SAAS,SAAS,KAAK,KAAK;AAC7C;AAAA,QACF;AAEA,iBAAS,QAAQ,EAAE,SAAS,OAAQ,CAAA;AAAA,MAAA,UAEpC;AACW,mBAAA,oBAAoB;MACjC;AAAA,IAAA;AAIF,cAAU,YAAY;AAAA,IAAA,CAOrB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"article-list.vue.js","sources":["../../../../../../../src/modules/cms/pages/cms-contents/components/article-list.vue"],"sourcesContent":["<template>\r\n <MKDataTable :data-table=\"articlesDv\" :auto-load=\"false\" class=\"mk-cms-article-list\">\r\n <el-empty v-if=\"part && part.cmsPartTypeId == 1\" description=\"外链栏目下无文章内容\" />\r\n <MKTableView v-else-if=\"part\" :data-table=\"articlesDv\">\r\n <el-scrollbar class=\"mk-cms-article-list__content\" style=\"box-sizing: border-box;font-size: 0;\"\r\n v-if=\"articlesDv.getList().length > 0\">\r\n <el-card class=\"mk-cms-article-list__item\" v-for=\"article in articlesDv.getList()\" :key=\"article.id\">\r\n <div class=\"mk-cms-article-list__item__content\">\r\n <div class=\"left\">\r\n <el-image class=\"cover-image\" :src=\"article.cover\" fit=\"contain\">\r\n <template #error>\r\n <MKSvgIcon iconClass=\"Picture\" />\r\n </template>\r\n </el-image>\r\n </div>\r\n <div class=\"right\">\r\n <div class=\"title\" :title=\"article.title\"> {{ article.title }}</div>\r\n <div class=\"sub-title\" v-if=\"article.subTitle\" :title=\"article.subTitle\"> {{ article.subTitle }}</div>\r\n <div class=\"desc\">\r\n {{ article.desc }}\r\n </div>\r\n <div class=\"footer\">\r\n <div class=\"ext\">\r\n <div class=\"author\">\r\n <MKSvgIcon iconClass=\"UserFilled\"></MKSvgIcon> \r\n 作者 : {{ article.author || \"-\" }}\r\n </div>\r\n <div class=\"publish-time\">\r\n <MKSvgIcon iconClass=\"Timer\"></MKSvgIcon> \r\n 发布时间 : {{ article.publishTime }}\r\n </div>\r\n </div>\r\n <div class=\"tools\">\r\n <el-button type=\"primary\" size=\"large\" @click=\"editArticleHandle(article)\" text>\r\n 编辑\r\n </el-button>\r\n <el-button type=\"danger\" size=\"large\" @click=\"deleteArticleHandle(article)\" text>\r\n 删除\r\n </el-button>\r\n <a v-if=\"article.url\" :href=\"article.url\" target=\"_blank\">\r\n <el-button type=\"primary\" size=\"large\" text>访问</el-button>\r\n </a>\r\n <a :href=\"'/api/cms/content/preview/content/' + article.cmsPartId + '/' + article.id\" target=\"_blank\">\r\n <el-button type=\"primary\" size=\"large\" text>预览</el-button>\r\n </a>\r\n <el-button type=\"primary\" size=\"large\" text @click=\"publishArticleHandle(article)\">\r\n 发布\r\n </el-button>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </el-card>\r\n </el-scrollbar>\r\n <el-empty v-if=\"articlesDv.getList().length <= 0\" description=\"暂无文章内容\" />\r\n </MKTableView>\r\n </MKDataTable>\r\n</template>\r\n<script setup lang='ts'>\r\nimport { MKTableView } from \"../../../../../components\"\r\nimport { CmsArticlesTable } from \"../../../dataviews\"\r\nimport { onMounted, reactive, ref, defineProps, watch } from \"vue\";\r\nimport { DvOpt } from \"@maketribe/request\";\r\nimport { Dialoger, isWhereFilter, Messager } from '@maketribe/dm'\r\nimport { useRouter } from \"vue-router\";\r\nimport { MSAppClient } from \"../../../../../core\";\r\n\r\n// 文章\r\nconst articlesDv = reactive(new CmsArticlesTable()) as CmsArticlesTable;\r\n\r\n// 参数\r\nconst props = defineProps({\r\n part: { type: Object, default: null }\r\n})\r\n\r\nconst router = useRouter();\r\n\r\n// 监听栏目数据变化\r\nwatch(() => props.part, (item: any) => {\r\n\r\n if (item.cmsPartTypeId != 1) {\r\n\r\n const dataFilter = articlesDv.dataFilter;\r\n\r\n if (isWhereFilter(dataFilter)) {\r\n const defaultGroup = dataFilter.getDefaultGroup();\r\n defaultGroup.clear();\r\n defaultGroup.addCondition(\"cmsPartId\", \"=\", item.id);\r\n }\r\n\r\n articlesDv.load()\r\n }\r\n\r\n}, { immediate: true })\r\n\r\n/**\r\n * 删除文章\r\n */\r\nconst deleteArticleHandle = async (item: any) => {\r\n const isConfirm = await Dialoger.confirm({\r\n title: \"删除文章?\",\r\n message: \"是否删除文章?\",\r\n type: \"warning\"\r\n })\r\n\r\n if (!isConfirm) {\r\n return;\r\n }\r\n await articlesDv.deleteAfterRefresh(item.id);\r\n}\r\n\r\n/**\r\n * 编辑文章\r\n */\r\nconst editArticleHandle = (item: any, isEdit = false) => {\r\n router.push({ path: \"/cms/article\", query: { id: isEdit ? undefined : item.id, partId: isEdit ? item.id : undefined } })\r\n}\r\n\r\n\r\narticlesDv.addRecordEvent.on(() => {\r\n editArticleHandle(props.part, true)\r\n})\r\n\r\nconst publishArticleHandle = async (article: any) => {\r\n console.warn(`🚀 ~ file: article-list.vue:124 ~ article:`, article);\r\n const httpRequest = MSAppClient.instance?.httpRequest!;\r\n try {\r\n const isConfirm = await Dialoger.confirm({ title: \"文章发布\", message: \"是否发布文章?\", type: \"warning\" })\r\n\r\n if (!isConfirm) {\r\n return;\r\n }\r\n\r\n articlesDv.getLoadingManager().startLoading();\r\n\r\n const response = await httpRequest.post(\r\n `/cms/content/publish/content`, {\r\n partId: article.cmsPartId,\r\n contentIds: [\r\n article.id\r\n ]\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 Messager.success({ message: \"发布成功\" });\r\n\r\n } finally {\r\n articlesDv.getLoadingManager().completeLoading();\r\n }\r\n}\r\n\r\n// 挂在完成之后\r\nonMounted(async () => {\r\n\r\n // // 加载数据\r\n // articleList.value = await articleDvOpt.query().list();\r\n\r\n // // 修改状态\r\n // loading.value = false;\r\n})\r\n\r\n</script>\r\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAoEA,UAAM,aAAa,SAAS,IAAI,iBAAkB,CAAA;AAGlD,UAAM,QAAQ;AAId,UAAM,SAAS;AAGf,UAAM,MAAM,MAAM,MAAM,CAAC,SAAc;AAEjC,UAAA,KAAK,iBAAiB,GAAG;AAE3B,cAAM,aAAa,WAAW;AAE1B,YAAA,cAAc,UAAU,GAAG;AACvB,gBAAA,eAAe,WAAW;AAChC,uBAAa,MAAM;AACnB,uBAAa,aAAa,aAAa,KAAK,KAAK,EAAE;AAAA,QACrD;AAEA,mBAAW,KAAK;AAAA,MAClB;AAAA,IAAA,GAEC,EAAE,WAAW,KAAA,CAAM;AAKhB,UAAA,sBAAsB,OAAO,SAAc;AACzC,YAAA,YAAY,MAAM,SAAS,QAAQ;AAAA,QACvC,OAAO;AAAA,QACP,SAAS;AAAA,QACT,MAAM;AAAA,MAAA,CACP;AAED,UAAI,CAAC,WAAW;AACd;AAAA,MACF;AACM,YAAA,WAAW,mBAAmB,KAAK,EAAE;AAAA,IAAA;AAM7C,UAAM,oBAAoB,CAAC,MAAW,SAAS,UAAU;AACvD,aAAO,KAAK,EAAE,MAAM,gBAAgB,OAAO,EAAE,IAAI,SAAS,SAAY,KAAK,IAAI,QAAQ,SAAS,KAAK,KAAK,UAAa;AAAA,IAAA;AAI9G,eAAA,eAAe,GAAG,MAAM;AACf,wBAAA,MAAM,MAAM,IAAI;AAAA,IAAA,CACnC;AAEK,UAAA,uBAAuB,OAAO,YAAiB;;AAC3C,cAAA,KAAK,8CAA8C,OAAO;AAC5D,YAAA,eAAc,iBAAY,aAAZ,mBAAsB;AACtC,UAAA;AACI,cAAA,YAAY,MAAM,SAAS,QAAQ,EAAE,OAAO,QAAQ,SAAS,WAAW,MAAM,UAAW,CAAA;AAE/F,YAAI,CAAC,WAAW;AACd;AAAA,QACF;AAEW,mBAAA,oBAAoB;AAEzB,cAAA,WAAW,MAAM,YAAY;AAAA,UACjC;AAAA,UAAgC;AAAA,YAChC,QAAQ,QAAQ;AAAA,YAChB,YAAY;AAAA,cACV,QAAQ;AAAA,YACV;AAAA,UACF;AAAA,QAAA;AAGI,YAAA,SAAS,KAAK,SAAS,KAAK;AAC9B,mBAAS,MAAM,EAAE,SAAS,SAAS,KAAK,KAAK;AAC7C;AAAA,QACF;AAEA,iBAAS,QAAQ,EAAE,SAAS,OAAQ,CAAA;AAAA,MAAA,UAEpC;AACW,mBAAA,oBAAoB;MACjC;AAAA,IAAA;AAIF,cAAU,YAAY;AAAA,IAAA,CAOrB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}