@maketribe/ms-app 3.2.17 → 3.2.18

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.
@@ -26,7 +26,7 @@ require("../../basic/image-cropper/index.js");
26
26
  const index = require("../resource-list/index.js");
27
27
  const ResourceManager = require("../resource-list/ResourceManager.js");
28
28
  const _hoisted_1 = { class: "resource-manager" };
29
- const _hoisted_2 = { class: "resource-manager-tools" };
29
+ const _hoisted_2 = { style: { "color": "var(--el-text-color-regular)", "margin-left": "10px" } };
30
30
  const _hoisted_3 = { style: { "margin-left": "10px" } };
31
31
  const _sfc_main = /* @__PURE__ */ vue.defineComponent({
32
32
  __name: "resource-manager",
@@ -162,17 +162,24 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
162
162
  });
163
163
  return (_ctx, _cache) => {
164
164
  const _component_MKSvgIcon = vue.resolveComponent("MKSvgIcon");
165
+ const _component_el_page_header = vue.resolveComponent("el-page-header");
165
166
  const _directive_loading = vue.resolveDirective("loading");
166
167
  return vue.openBlock(), vue.createElementBlock(vue.Fragment, null, [
167
168
  vue.withDirectives((vue.openBlock(), vue.createElementBlock("div", _hoisted_1, [
168
- vue.createElementVNode("div", _hoisted_2, [
169
- vue.createElementVNode("div", null, [
170
- props.title ? (vue.openBlock(), vue.createElementBlock(vue.Fragment, { key: 0 }, [
171
- vue.createVNode(_component_MKSvgIcon, { iconClass: "sucaiku" }),
169
+ vue.createVNode(_component_el_page_header, {
170
+ style: { "background-color": "#fff", "padding": "10px" },
171
+ icon: null
172
+ }, {
173
+ title: vue.withCtx(() => [
174
+ vue.createElementVNode("h3", _hoisted_2, [
175
+ vue.createVNode(_component_MKSvgIcon, {
176
+ iconClass: "sucaiku",
177
+ style: { "margin-right": "5px" }
178
+ }),
172
179
  vue.createElementVNode("span", _hoisted_3, vue.toDisplayString(props.title), 1)
173
- ], 64)) : vue.createCommentVNode("", true)
180
+ ])
174
181
  ]),
175
- vue.createElementVNode("div", null, [
182
+ extra: vue.withCtx(() => [
176
183
  selectResourceCount.value > 0 ? (vue.openBlock(), vue.createBlock(vue.unref(elementPlus.ElButton), {
177
184
  key: 0,
178
185
  type: "danger",
@@ -202,8 +209,9 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
202
209
  _: 1
203
210
  })) : vue.createCommentVNode("", true),
204
211
  vue.renderSlot(_ctx.$slots, "tools")
205
- ])
206
- ]),
212
+ ]),
213
+ _: 3
214
+ }),
207
215
  vue.createVNode(vue.unref(index.MKResourceList), {
208
216
  resourceManager: resourceManager.value,
209
217
  onDrop: handleDrop
@@ -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 <div>\r\n <template v-if=\"props.title\">\r\n <MKSvgIcon iconClass=\"sucaiku\" /> \r\n <span style=\"margin-left:10px\">{{props.title}}</span>\r\n </template>\r\n </div>\r\n <div>\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 </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 title:{type:String,default:\"\"},\r\n resourceManager: {\r\n type: ResourceManager,\r\n required: true,\r\n },\r\n});\r\n\r\nconst isShowConfirmDialog = ref(false);\r\n\r\nlet waitUploadFiles: File[] = [];\r\nconst existPathList = ref([] as string[]);\r\n\r\nconst resourceManager = computed(() => props.resourceManager);\r\n\r\nconst isShowEditDialog = computed(\r\n () => unref(resourceManager).isShowEditDialog\r\n);\r\n\r\nconst selectResourceCount = computed(\r\n () => unref(resourceManager).selectResourceList.length\r\n);\r\n\r\nconst handleDeleteClick = async () => {\r\n const isConfirm = await ElMessageBox.confirm(\"是否删除选中文件\", {\r\n type: \"warning\",\r\n }).then(\r\n () => true,\r\n () => false\r\n );\r\n\r\n if (!isConfirm) {\r\n return;\r\n }\r\n\r\n unref(resourceManager).deleteSelectResourceList();\r\n};\r\n\r\nconst handleEdit = () => {\r\n unref(resourceManager).editSelectFile();\r\n};\r\n\r\nconst handleEditDialogConfirm = () => {\r\n unref(resourceManager).saveEditFile();\r\n};\r\n\r\nconst handleEditDialogClose = () => {\r\n unref(resourceManager).isShowEditDialog = false;\r\n unref(resourceManager).currentEditText = \"\";\r\n};\r\n\r\n// const handleUploadClick = () => {\r\n// /** @type {HTMLInputElement} */\r\n// var input = document.createElement(\"input\");\r\n// input.type = \"file\";\r\n// input.multiple = true;\r\n\r\n// input.addEventListener(\"change\", () => {\r\n// var files = new Array(input.files!.length)\r\n// .fill(0)\r\n// .map((_, i) => input.files![i]);\r\n\r\n// unref(resourceManager).uploadResourceList(files);\r\n// });\r\n\r\n// input.click();\r\n// };\r\n\r\nconst handleDownload = () => {\r\n unref(resourceManager).downloadSelectResource();\r\n};\r\n\r\nconst handleDrop = async (event: DragEvent) => {\r\n waitUploadFiles = [];\r\n\r\n var _items = event.dataTransfer?.items;\r\n\r\n var fileSystemEntry = _items![0].webkitGetAsEntry() as any;\r\n\r\n const internalProcess = async (item: any, path: string = \"\") => {\r\n if (item.isFile) {\r\n return [\r\n await new Promise((resolve) => {\r\n item.file((file: File) => {\r\n resolve(\r\n new File([file], `${path}${file.name}`, { type: file.type })\r\n );\r\n });\r\n }),\r\n ] as File[];\r\n } else if (item.isDirectory) {\r\n var directoryReader = item.createReader();\r\n\r\n const entries = (await new Promise((resolve) => {\r\n directoryReader.readEntries(resolve);\r\n })) as any[];\r\n\r\n var result: File[] = [];\r\n\r\n for (let i = 0; i < entries.length; i++) {\r\n result = result.concat(\r\n await internalProcess(entries[i], `${path}${item.name}/`)\r\n );\r\n }\r\n\r\n return result;\r\n }\r\n\r\n return [];\r\n };\r\n\r\n const files = (waitUploadFiles = await internalProcess(fileSystemEntry));\r\n\r\n try {\r\n unref(resourceManager).loadingManager.startLoading();\r\n\r\n const checkResponse = await unref(resourceManager).getExistPathList(\r\n files.map((file) => file.name)\r\n );\r\n\r\n if (checkResponse.data.code !== 200) {\r\n ElMessage.error({ message: checkResponse.data.msg });\r\n return;\r\n }\r\n\r\n if (checkResponse.data.data?.length === 0) {\r\n await unref(resourceManager).uploadResourceList(files);\r\n\r\n waitUploadFiles = [];\r\n return;\r\n }\r\n existPathList.value = checkResponse.data.data ?? [];\r\n\r\n isShowConfirmDialog.value = true;\r\n } catch (e) {\r\n console.log(e);\r\n ElMessage.error(\"网络异常,上传失败\");\r\n } finally {\r\n unref(resourceManager).loadingManager.completeLoading();\r\n }\r\n};\r\n\r\nconst handleDialogOverrideClick = async () => {\r\n try {\r\n await unref(resourceManager).uploadResourceList(waitUploadFiles);\r\n } catch (e) {\r\n console.log(e);\r\n ElMessage.error(\"网络异常,上传失败\");\r\n }\r\n\r\n handleDialogCancelClick();\r\n};\r\n\r\nconst handleDialogSkipClick = async () => {\r\n try {\r\n const files = waitUploadFiles.filter(\r\n (file) => !unref(existPathList).includes(file.name)\r\n );\r\n if (files.length) {\r\n await unref(resourceManager).uploadResourceList(files);\r\n }\r\n } catch (e) {\r\n console.log(e);\r\n ElMessage.error(\"网络异常,上传失败\");\r\n }\r\n\r\n handleDialogCancelClick();\r\n};\r\n\r\nconst handleDialogCancelClick = () => {\r\n isShowConfirmDialog.value = false;\r\n existPathList.value = [];\r\n waitUploadFiles = [];\r\n};\r\n\r\nonMounted(() => {\r\n unref(resourceManager).loadResourceInfoList();\r\n});\r\n</script>\r\n"],"names":["ref","computed","unref","ElMessageBox","ElMessage","onMounted"],"mappings":"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"}
1
+ {"version":3,"file":"resource-manager.vue.js","sources":["../../../../../src/components/business/resource-manager/resource-manager.vue"],"sourcesContent":["<template>\r\n <div v-loading=\"resourceManager.loading\" class=\"resource-manager\">\r\n <el-page-header style=\"background-color: #fff;padding: 10px;\" :icon=\"null\">\r\n <template #title>\r\n <h3 style=\"color: var(--el-text-color-regular); margin-left: 10px\">\r\n <MKSvgIcon iconClass=\"sucaiku\" style=\"margin-right: 5px\" />\r\n <span style=\"margin-left:10px\">{{props.title}}</span>\r\n </h3>\r\n </template>\r\n <template #extra>\r\n <ElButton\r\n v-if=\"selectResourceCount > 0\"\r\n type=\"danger\"\r\n @click=\"handleDeleteClick\"\r\n >\r\n 删除\r\n </ElButton>\r\n <ElButton\r\n v-if=\"\r\n selectResourceCount === 1 &&\r\n !resourceManager.selectResourceList[0].isDirectory\r\n \"\r\n @click=\"handleEdit\"\r\n >\r\n 编辑\r\n </ElButton>\r\n <ElButton\r\n v-if=\"\r\n selectResourceCount === 1 &&\r\n !resourceManager.selectResourceList[0].isDirectory\r\n \"\r\n @click=\"handleDownload()\"\r\n >\r\n 下载\r\n </ElButton>\r\n <!-- <ElButton type=\"primary\" @click=\"handleUploadClick\">上传</ElButton> -->\r\n <slot name=\"tools\"></slot>\r\n </template>\r\n </el-page-header>\r\n <MKResourceList :resourceManager=\"resourceManager\" @drop=\"handleDrop\" />\r\n </div>\r\n\r\n <ElDialog v-model=\"isShowEditDialog\" @close=\"handleEditDialogClose\">\r\n <MKCodeEditor\r\n v-if=\"isShowEditDialog\"\r\n v-model=\"resourceManager.currentEditText\"\r\n />\r\n <template #footer>\r\n <ElButton @click=\"handleEditDialogClose\">取消</ElButton>\r\n <ElButton\r\n type=\"primary\"\r\n v-loading=\"resourceManager.loading\"\r\n @click=\"handleEditDialogConfirm\"\r\n >\r\n 保存\r\n </ElButton>\r\n </template>\r\n </ElDialog>\r\n\r\n <ElDialog\r\n v-model=\"isShowConfirmDialog\"\r\n title=\"文件已存在\"\r\n @close=\"handleDialogCancelClick\"\r\n >\r\n <div v-for=\"path in existPathList\" :key=\"path\">{{ path }}</div>\r\n\r\n <template #footer>\r\n <ElButton type=\"danger\" @click=\"handleDialogOverrideClick\">覆盖</ElButton>\r\n <ElButton type=\"warning\" @click=\"handleDialogSkipClick\">跳过</ElButton>\r\n <ElButton @click=\"handleDialogCancelClick\">取消</ElButton>\r\n </template>\r\n </ElDialog>\r\n</template>\r\n\r\n<script setup lang=\"ts\">\r\nimport { onMounted, computed, unref, ref } from \"vue\";\r\nimport { ElButton, ElMessageBox, ElMessage, ElDialog } from \"element-plus\";\r\nimport { MKCodeEditor } from \"../../basic\";\r\nimport { MKResourceList, ResourceManager } from \"../resource-list\";\r\n\r\nconst props = defineProps({\r\n title:{type:String,default:\"\"},\r\n resourceManager: {\r\n type: ResourceManager,\r\n required: true,\r\n },\r\n});\r\n\r\nconst isShowConfirmDialog = ref(false);\r\n\r\nlet waitUploadFiles: File[] = [];\r\nconst existPathList = ref([] as string[]);\r\n\r\nconst resourceManager = computed(() => props.resourceManager);\r\n\r\nconst isShowEditDialog = computed(\r\n () => unref(resourceManager).isShowEditDialog\r\n);\r\n\r\nconst selectResourceCount = computed(\r\n () => unref(resourceManager).selectResourceList.length\r\n);\r\n\r\nconst handleDeleteClick = async () => {\r\n const isConfirm = await ElMessageBox.confirm(\"是否删除选中文件\", {\r\n type: \"warning\",\r\n }).then(\r\n () => true,\r\n () => false\r\n );\r\n\r\n if (!isConfirm) {\r\n return;\r\n }\r\n\r\n unref(resourceManager).deleteSelectResourceList();\r\n};\r\n\r\nconst handleEdit = () => {\r\n unref(resourceManager).editSelectFile();\r\n};\r\n\r\nconst handleEditDialogConfirm = () => {\r\n unref(resourceManager).saveEditFile();\r\n};\r\n\r\nconst handleEditDialogClose = () => {\r\n unref(resourceManager).isShowEditDialog = false;\r\n unref(resourceManager).currentEditText = \"\";\r\n};\r\n\r\n// const handleUploadClick = () => {\r\n// /** @type {HTMLInputElement} */\r\n// var input = document.createElement(\"input\");\r\n// input.type = \"file\";\r\n// input.multiple = true;\r\n\r\n// input.addEventListener(\"change\", () => {\r\n// var files = new Array(input.files!.length)\r\n// .fill(0)\r\n// .map((_, i) => input.files![i]);\r\n\r\n// unref(resourceManager).uploadResourceList(files);\r\n// });\r\n\r\n// input.click();\r\n// };\r\n\r\nconst handleDownload = () => {\r\n unref(resourceManager).downloadSelectResource();\r\n};\r\n\r\nconst handleDrop = async (event: DragEvent) => {\r\n waitUploadFiles = [];\r\n\r\n var _items = event.dataTransfer?.items;\r\n\r\n var fileSystemEntry = _items![0].webkitGetAsEntry() as any;\r\n\r\n const internalProcess = async (item: any, path: string = \"\") => {\r\n if (item.isFile) {\r\n return [\r\n await new Promise((resolve) => {\r\n item.file((file: File) => {\r\n resolve(\r\n new File([file], `${path}${file.name}`, { type: file.type })\r\n );\r\n });\r\n }),\r\n ] as File[];\r\n } else if (item.isDirectory) {\r\n var directoryReader = item.createReader();\r\n\r\n const entries = (await new Promise((resolve) => {\r\n directoryReader.readEntries(resolve);\r\n })) as any[];\r\n\r\n var result: File[] = [];\r\n\r\n for (let i = 0; i < entries.length; i++) {\r\n result = result.concat(\r\n await internalProcess(entries[i], `${path}${item.name}/`)\r\n );\r\n }\r\n\r\n return result;\r\n }\r\n\r\n return [];\r\n };\r\n\r\n const files = (waitUploadFiles = await internalProcess(fileSystemEntry));\r\n\r\n try {\r\n unref(resourceManager).loadingManager.startLoading();\r\n\r\n const checkResponse = await unref(resourceManager).getExistPathList(\r\n files.map((file) => file.name)\r\n );\r\n\r\n if (checkResponse.data.code !== 200) {\r\n ElMessage.error({ message: checkResponse.data.msg });\r\n return;\r\n }\r\n\r\n if (checkResponse.data.data?.length === 0) {\r\n await unref(resourceManager).uploadResourceList(files);\r\n\r\n waitUploadFiles = [];\r\n return;\r\n }\r\n existPathList.value = checkResponse.data.data ?? [];\r\n\r\n isShowConfirmDialog.value = true;\r\n } catch (e) {\r\n console.log(e);\r\n ElMessage.error(\"网络异常,上传失败\");\r\n } finally {\r\n unref(resourceManager).loadingManager.completeLoading();\r\n }\r\n};\r\n\r\nconst handleDialogOverrideClick = async () => {\r\n try {\r\n await unref(resourceManager).uploadResourceList(waitUploadFiles);\r\n } catch (e) {\r\n console.log(e);\r\n ElMessage.error(\"网络异常,上传失败\");\r\n }\r\n\r\n handleDialogCancelClick();\r\n};\r\n\r\nconst handleDialogSkipClick = async () => {\r\n try {\r\n const files = waitUploadFiles.filter(\r\n (file) => !unref(existPathList).includes(file.name)\r\n );\r\n if (files.length) {\r\n await unref(resourceManager).uploadResourceList(files);\r\n }\r\n } catch (e) {\r\n console.log(e);\r\n ElMessage.error(\"网络异常,上传失败\");\r\n }\r\n\r\n handleDialogCancelClick();\r\n};\r\n\r\nconst handleDialogCancelClick = () => {\r\n isShowConfirmDialog.value = false;\r\n existPathList.value = [];\r\n waitUploadFiles = [];\r\n};\r\n\r\nonMounted(() => {\r\n unref(resourceManager).loadResourceInfoList();\r\n});\r\n</script>\r\n"],"names":["ref","computed","unref","ElMessageBox","ElMessage","onMounted"],"mappings":"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"}
@@ -18,6 +18,7 @@ class CmsContentManPartForm extends CmsPartForm.CmsPartForm {
18
18
  }
19
19
  if (response.data.code == 200) {
20
20
  this.editRecord(data.id);
21
+ dm.Messager.success("保存成功!");
21
22
  }
22
23
  return response;
23
24
  }
@@ -1 +1 @@
1
- {"version":3,"file":"CmsContentManPartForm.js","sources":["../../../../../../src/modules/cms/dataviews/cms-parts/CmsContentManPartForm.ts"],"sourcesContent":["import { CmsPartForm } from \"./CmsPartForm\"\r\nimport { ResponseConfig, R } from \"@maketribe/request\";\r\nimport { DataFormType,Errors, MKError } from \"@maketribe/dm\";\r\n\r\n/**\r\n * 内容管理的栏目表单\r\n */\r\nexport class CmsContentManPartForm extends CmsPartForm{\r\n\r\n async submit(data: Record<string, any> = {}) {\r\n \r\n data = { ...this.data, ...data };\r\n\r\n let response: ResponseConfig<R<null>, any>;\r\n\r\n switch (this.getDataFormType()) {\r\n case DataFormType.UPDATE:\r\n response = await this.update(data);\r\n break;\r\n case DataFormType.ADD:\r\n response = await this.add(data);\r\n break;\r\n default:\r\n throw new MKError(Errors.FORM_TYPE_MISMATCH_ERROR_CODE);\r\n }\r\n\r\n if(response.data.code == 200){\r\n this.editRecord(data.id)\r\n }\r\n\r\n return response;\r\n }\r\n\r\n}\r\n"],"names":["CmsPartForm","DataFormType","MKError","Errors"],"mappings":";;;;AAOO,MAAM,8BAA8BA,YAAAA,YAAW;AAAA,EAEpD,MAAM,OAAO,OAA4B,IAAI;AAE3C,WAAO,EAAE,GAAG,KAAK,MAAM,GAAG,KAAK;AAE3B,QAAA;AAEI,YAAA,KAAK,gBAAmB,GAAA;AAAA,MAC9B,KAAKC,GAAa,aAAA;AACL,mBAAA,MAAM,KAAK,OAAO,IAAI;AACjC;AAAA,MACF,KAAKA,GAAa,aAAA;AACL,mBAAA,MAAM,KAAK,IAAI,IAAI;AAC9B;AAAA,MACF;AACQ,cAAA,IAAIC,GAAQ,QAAAC,UAAO,6BAA6B;AAAA,IAC1D;AAEG,QAAA,SAAS,KAAK,QAAQ,KAAI;AACtB,WAAA,WAAW,KAAK,EAAE;AAAA,IACzB;AAEO,WAAA;AAAA,EACT;AAEF;;"}
1
+ {"version":3,"file":"CmsContentManPartForm.js","sources":["../../../../../../src/modules/cms/dataviews/cms-parts/CmsContentManPartForm.ts"],"sourcesContent":["import { CmsPartForm } from \"./CmsPartForm\"\r\nimport { ResponseConfig, R } from \"@maketribe/request\";\r\nimport { DataFormType,Errors, MKError } from \"@maketribe/dm\";\r\nimport { Messager } from \"@maketribe/dm\";\r\n\r\n/**\r\n * 内容管理的栏目表单\r\n */\r\nexport class CmsContentManPartForm extends CmsPartForm{\r\n\r\n async submit(data: Record<string, any> = {}) {\r\n \r\n data = { ...this.data, ...data };\r\n\r\n let response: ResponseConfig<R<null>, any>;\r\n\r\n switch (this.getDataFormType()) {\r\n case DataFormType.UPDATE:\r\n response = await this.update(data);\r\n break;\r\n case DataFormType.ADD:\r\n response = await this.add(data);\r\n break;\r\n default:\r\n throw new MKError(Errors.FORM_TYPE_MISMATCH_ERROR_CODE);\r\n }\r\n\r\n if(response.data.code == 200){\r\n this.editRecord(data.id)\r\n Messager.success(\"保存成功!\" as any);\r\n }\r\n\r\n return response;\r\n }\r\n\r\n}\r\n"],"names":["CmsPartForm","DataFormType","MKError","Errors","Messager"],"mappings":";;;;AAQO,MAAM,8BAA8BA,YAAAA,YAAW;AAAA,EAEpD,MAAM,OAAO,OAA4B,IAAI;AAE3C,WAAO,EAAE,GAAG,KAAK,MAAM,GAAG,KAAK;AAE3B,QAAA;AAEI,YAAA,KAAK,gBAAmB,GAAA;AAAA,MAC9B,KAAKC,GAAa,aAAA;AACL,mBAAA,MAAM,KAAK,OAAO,IAAI;AACjC;AAAA,MACF,KAAKA,GAAa,aAAA;AACL,mBAAA,MAAM,KAAK,IAAI,IAAI;AAC9B;AAAA,MACF;AACQ,cAAA,IAAIC,GAAQ,QAAAC,UAAO,6BAA6B;AAAA,IAC1D;AAEG,QAAA,SAAS,KAAK,QAAQ,KAAI;AACtB,WAAA,WAAW,KAAK,EAAE;AACvBC,kBAAS,QAAQ,OAAc;AAAA,IACjC;AAEO,WAAA;AAAA,EACT;AAEF;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"CmsPartForm.js","sources":["../../../../../../src/modules/cms/dataviews/cms-parts/CmsPartForm.ts"],"sourcesContent":["import { DataForm, DataFormOptions, FormColumn, isWhereFilter,Dialoger,Messager, LoadingManager } from \"@maketribe/dm\";\r\nimport { CmsPartTypesTable } from \"../cms-part-types\";\r\nimport { CmsArticlesTable } from \"../cms-articles/CmsArticlesTable\";\r\nimport { DATA_MODEL_NAME } from \"../../../../constants\";\r\nimport { MODULE_NAME } from \"../../constants\";\r\nimport { html } from \"@codemirror/lang-html\";\r\nimport { CmsPartTree } from \"./CmsPartTree\";\r\nimport { MSAppClient } from \"../../../../core\";\r\n\r\nexport class CmsPartForm extends DataForm {\r\n\r\n\tstatic [DATA_MODEL_NAME]: string = \"part\";\r\n\r\n /**\r\n * 开启栏目预览,此处需要调整Api接口的根\r\n * @param partId \r\n * @param pageNo \r\n */\r\n static openPreview = (partId:string,pageNo?:string|number) => {\r\n if (!!pageNo) {\r\n window.open(`/api/${MODULE_NAME}/content/preview/part/${partId}?pageNo=${pageNo}`)\r\n } else {\r\n window.open(`/api/${MODULE_NAME}/content/preview/part/${partId}`)\r\n }\r\n }\r\n\r\n /**\r\n * 发布所有栏目\r\n * @returns \r\n */\r\n static publishAll = async () => {\r\n\r\n const httpRequest = MSAppClient.instance?.httpRequest!;\r\n\r\n if (await Dialoger.confirm({ title: \"全量发布\", message: \"是否整站全量发布?\", type: \"warning\" })) {\r\n \r\n const response = await httpRequest.post(`/${MODULE_NAME}/content/publish/all`);\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 \r\n }\r\n\r\n /**\r\n * 资源发布\r\n * @returns \r\n */\r\n static publishAssets = async () => {\r\n\r\n const httpRequest = MSAppClient.instance!.httpRequest;\r\n\r\n if (await Dialoger.confirm({\r\n title: \"发布资源\",\r\n message: \"是否发布资源?\",\r\n type: \"warning\",\r\n })) {\r\n \r\n const response = await httpRequest.post(`/${MODULE_NAME}/content/publish/assets`);\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}\r\n\r\n /**\r\n * 发布栏目\r\n */\r\n static async publish(partId:string,options:object){\r\n \r\n const httpRequest = MSAppClient.instance?.httpRequest!;\r\n\r\n const response = await httpRequest.post(`/${MODULE_NAME}/content/publish/part`, {\r\n partIds: [partId], ...options\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 }\r\n\r\n\tconstructor(options: DataFormOptions = {}) {\r\n\t\tsuper({\r\n\t\t\tname: CmsPartForm[DATA_MODEL_NAME],\r\n\t\t\tmoduleName: MODULE_NAME,\r\n\t\t\t...options,\r\n\t\t});\r\n\t}\r\n\r\n\tcmsPartTree = this.register(new CmsPartTree());\r\n\tcmsArticlesTable = this.register(new CmsArticlesTable());\r\n\tstatic outerChainHideColumn = [\r\n\t\t\"seoDesc\",\r\n\t\t\"seoKeywords\",\r\n\t\t\"pageSize\",\r\n\t\t\"cmsCoverArticleId\",\r\n\t\t\"content\",\r\n\t\t\"coverTemplate\",\r\n\t\t\"listTemplate\",\r\n\t\t\"contentTemplate\",\r\n\t\t\"coverRouter\",\r\n\t\t\"listRouter\",\r\n\t\t\"contentRouter\",\r\n\t];\r\n\tstatic menuHideColumn = [\r\n\t\t\"seoDesc\",\r\n\t\t\"seoKeywords\",\r\n\t\t\"pageSize\",\r\n\t\t\"externalLink\",\r\n\t\t\"cmsCoverArticleId\",\r\n\t\t\"content\",\r\n\t\t\"isShowMenu\",\r\n\t\t\"coverTemplate\",\r\n\t\t\"listTemplate\",\r\n\t\t\"contentTemplate\",\r\n\t\t\"coverRouter\",\r\n\t\t\"listRouter\",\r\n\t\t\"contentRouter\",\r\n\t];\r\n\tstatic contentHideColumn = [\"externalLink\"];\r\n\r\n\tprotected async initialize() {\r\n\t\tif (isWhereFilter(this.cmsPartTree.dataFilter)) {\r\n\t\t\tconst defaultGroup = this.cmsPartTree.dataFilter.getDefaultGroup();\r\n\r\n\t\t\tdefaultGroup.clear();\r\n\r\n\t\t\tdefaultGroup.addCondition(\"cmsPartTypeId\", \"!=\", 1);\r\n\t\t}\r\n\r\n\t\tthis.dataChangeEvent.on(({ data }) => {\r\n\t\t\tif (isWhereFilter(this.cmsArticlesTable.dataFilter)) {\r\n\t\t\t\tconst defaultGroup = this.cmsArticlesTable.dataFilter.getDefaultGroup();\r\n\t\t\t\tdefaultGroup.clear();\r\n\t\t\t\tif (!!data?.id) {\r\n\t\t\t\t\tdefaultGroup.addCondition(\"cmsPartId\", \"=\", data?.id);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t})\r\n\r\n\t\tawait super.initialize();\r\n\t\tthis.setColumns([\r\n\t\t\tnew FormColumn({\r\n\t\t\t\tname: \"parentId\",\r\n\t\t\t\tlabel: \"父栏目\",\r\n\t\t\t\tcomponentInfo: \"MKDataTreeSelect\",\r\n\t\t\t\tcomponentProps: {\r\n\t\t\t\t\tlabelFieldName: \"name\",\r\n\t\t\t\t\tdataTree: this.cmsPartTree,\r\n\t\t\t\t},\r\n\t\t\t}),\r\n\t\t\tnew FormColumn({\r\n\t\t\t\tname: \"cmsPartTypeId\",\r\n\t\t\t\tlabel: \"栏目类型\",\r\n\t\t\t\tcomponentInfo: \"MKFormDataSelect\",\r\n\t\t\t\tdefaultValue: \"2\",\r\n\t\t\t\tcomponentProps: {\r\n\t\t\t\t\tlabelFieldName: \"desc\",\r\n\t\t\t\t\tdataTable: this.register(new CmsPartTypesTable()),\r\n\t\t\t\t},\r\n\t\t\t\trequired: true,\r\n\t\t\t}),\r\n\t\t\tnew FormColumn({\r\n\t\t\t\tname: \"cmsCoverArticleId\",\r\n\t\t\t\tlabel: \"封面文章\",\r\n\t\t\t\tcomponentInfo: \"MKFormDataTableSelect\",\r\n\t\t\t\tcomponentProps: {\r\n\t\t\t\t\tlabelFieldName: \"desc\",\r\n\t\t\t\t\tdataTable: this.cmsArticlesTable\r\n\t\t\t\t},\r\n\t\t\t}),\r\n\t\t\tnew FormColumn({\r\n\t\t\t\tname: \"name\",\r\n\t\t\t\tlabel: \"栏目名称\",\r\n\t\t\t\trequired: true,\r\n\t\t\t}),\r\n\t\t\tnew FormColumn({\r\n\t\t\t\tname: \"title\",\r\n\t\t\t\tlabel: \"栏目标题\",\r\n\t\t\t\trequired: true,\r\n\t\t\t}),\r\n\t\t\tnew FormColumn({\r\n\t\t\t\tname: \"externalLink\",\r\n\t\t\t\tlabel: \"外部链接\",\r\n\t\t\t\tvisible: false,\r\n\t\t\t\trequired: true,\r\n\t\t\t}),\r\n\t\t\tnew FormColumn({\r\n\t\t\t\tname: \"coverTemplate\",\r\n\t\t\t\tlabel: \"封面模板\",\r\n\t\t\t\tcomponentInfo: \"MKResourceSelectInput\",\r\n\t\t\t\tcomponentProps: {}\r\n\t\t\t}),\r\n\t\t\tnew FormColumn({\r\n\t\t\t\tname: \"coverRouter\",\r\n\t\t\t\tlabel: \"封面路由\",\r\n\t\t\t}),\r\n\t\t\tnew FormColumn({\r\n\t\t\t\tname: \"listTemplate\",\r\n\t\t\t\tlabel: \"列表模板\",\r\n\t\t\t\tcomponentInfo: \"MKResourceSelectInput\"\r\n\t\t\t}),\r\n\t\t\tnew FormColumn({\r\n\t\t\t\tname: \"listRouter\",\r\n\t\t\t\tlabel: \"列表路由\",\r\n\t\t\t}),\r\n\t\t\tnew FormColumn({\r\n\t\t\t\tname: \"contentTemplate\",\r\n\t\t\t\tlabel: \"内容模板\",\r\n\t\t\t\tcomponentInfo: \"MKResourceSelectInput\"\r\n\t\t\t}),\r\n\t\t\tnew FormColumn({\r\n\t\t\t\tname: \"contentRouter\",\r\n\t\t\t\tlabel: \"内容路由\",\r\n\t\t\t}),\r\n\t\t\tnew FormColumn({\r\n\t\t\t\tname: \"seoKeywords\",\r\n\t\t\t\tlabel: \"seo关键词\",\r\n\t\t\t}),\r\n\t\t\tnew FormColumn({\r\n\t\t\t\tname: \"seoDesc\",\r\n\t\t\t\tlabel: \"seo页面描述\",\r\n\t\t\t\tcomponentInfo: \"MKFormInput\",\r\n\t\t\t\tcomponentProps: {\r\n\t\t\t\t\ttype: \"textarea\",\r\n\t\t\t\t\trows: 3,\r\n\t\t\t\t},\r\n\t\t\t}),\r\n\t\t\tnew FormColumn({\r\n\t\t\t\tname: \"pageSize\",\r\n\t\t\t\tlabel: \"每页的文章数\",\r\n\t\t\t\tdefaultValue: 10,\r\n\t\t\t\trequired: true,\r\n\t\t\t}),\r\n\t\t\tnew FormColumn({\r\n\t\t\t\tname: \"sortNo\",\r\n\t\t\t\tlabel: \"排序\",\r\n\t\t\t\tdefaultValue: 0,\r\n\t\t\t\trequired: true,\r\n\t\t\t}),\r\n\t\t\tnew FormColumn({\r\n\t\t\t\tname: \"isHome\",\r\n\t\t\t\tlabel: \"是否是首页\",\r\n\t\t\t\tdefaultValue: 0,\r\n\t\t\t\tcomponentInfo: \"MKFormRadioBox\",\r\n\t\t\t\tcomponentProps: {\r\n\t\t\t\t\toptions: [\r\n\t\t\t\t\t\t{ label: \"是\", value: 1 },\r\n\t\t\t\t\t\t{ label: \"否\", value: 0 },\r\n\t\t\t\t\t],\r\n\t\t\t\t},\r\n\t\t\t\trequired: true,\r\n\t\t\t}),\r\n\t\t\tnew FormColumn({\r\n\t\t\t\tname: \"isShowMenu\",\r\n\t\t\t\tlabel: \"是否在菜单\",\r\n\t\t\t\tdefaultValue: 1,\r\n\t\t\t\tcomponentInfo: \"MKFormRadioBox\",\r\n\t\t\t\tcomponentProps: {\r\n\t\t\t\t\toptions: [\r\n\t\t\t\t\t\t{ label: \"是\", value: 1 },\r\n\t\t\t\t\t\t{ label: \"否\", value: 0 },\r\n\t\t\t\t\t],\r\n\t\t\t\t},\r\n\t\t\t\trequired: true,\r\n\t\t\t}),\r\n\t\t\tnew FormColumn({\r\n\t\t\t\tname: \"content\",\r\n\t\t\t\tlabel: \"内容\",\r\n\t\t\t\tcomponentInfo: \"MKCodeEditor\",\r\n\t\t\t\t// componentInfo: \"MKFormInput\",\r\n\t\t\t\tcomponentProps: {\r\n\t\t\t\t\textensions: [html()],\r\n\t\t\t\t},\r\n\t\t\t}),\r\n\t\t]);\r\n\t\t/**\r\n\t\t * @param value 栏目类型的id\r\n\t\t */\r\n\t\tconst hideHandle = (value: number) => {\r\n\r\n\t\t\t//如果是类型Id隐藏一些列\r\n\t\t\tif (value == 1) {\r\n\t\t\t\t// 外链 outerChainHideColumn\r\n\t\t\t\tthis.getColumns().forEach((column) => {\r\n\t\t\t\t\tif (CmsPartForm.outerChainHideColumn.indexOf(column.name) > -1) {\r\n\t\t\t\t\t\tcolumn.visible = false;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tcolumn.visible = true;\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t} else if (value == 3) {\r\n\t\t\t\t// 菜单 menuHideColumn\r\n\t\t\t\tthis.getColumns().forEach((column) => {\r\n\t\t\t\t\tif (CmsPartForm.menuHideColumn.indexOf(column.name) > -1) {\r\n\t\t\t\t\t\tcolumn.visible = false;\r\n\t\t\t\t\t\tthis.data.isShowMenu = 1;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tcolumn.visible = true;\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t} else {\r\n\t\t\t\t// 图文 contentHideColumn\r\n\t\t\t\tthis.getColumns().forEach((column) => {\r\n\t\t\t\t\tif (CmsPartForm.contentHideColumn.indexOf(column.name) > -1) {\r\n\t\t\t\t\t\tcolumn.visible = false;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tcolumn.visible = true;\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t};\r\n\r\n\t\tthis.formItemValueChangeEvent.on((column) => {\r\n\t\t\tif (column.formItem.name == \"cmsPartTypeId\") {\r\n\t\t\t\thideHandle(column.data.value);\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\tformatSubmitData(data: any) {\r\n\t\tObject.keys(data).forEach((key) => {\r\n\t\t\tif (data[key] === \"\") {\r\n\t\t\t\tdata[key] = null;\r\n\t\t\t}\r\n\t\t});\r\n\t\tif (data.sortNo) {\r\n\t\t\tdata.sortNo -= 0;\r\n\t\t}\r\n\r\n\t\treturn data;\r\n\t}\r\n}\r\n"],"names":["DataForm","DATA_MODEL_NAME","MODULE_NAME","CmsPartTree","CmsArticlesTable","MSAppClient","Messager","isWhereFilter","FormColumn","CmsPartTypesTable","html","Dialoger"],"mappings":"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"}
1
+ {"version":3,"file":"CmsPartForm.js","sources":["../../../../../../src/modules/cms/dataviews/cms-parts/CmsPartForm.ts"],"sourcesContent":["import { DataForm, DataFormOptions, FormColumn, isWhereFilter,Dialoger,Messager } from \"@maketribe/dm\";\r\nimport { CmsPartTypesTable } from \"../cms-part-types\";\r\nimport { CmsArticlesTable } from \"../cms-articles/CmsArticlesTable\";\r\nimport { DATA_MODEL_NAME } from \"../../../../constants\";\r\nimport { MODULE_NAME } from \"../../constants\";\r\nimport { html } from \"@codemirror/lang-html\";\r\nimport { CmsPartTree } from \"./CmsPartTree\";\r\nimport { MSAppClient } from \"../../../../core\";\r\n\r\nexport class CmsPartForm extends DataForm {\r\n\r\n\tstatic [DATA_MODEL_NAME]: string = \"part\";\r\n\r\n /**\r\n * 开启栏目预览,此处需要调整Api接口的根\r\n * @param partId \r\n * @param pageNo \r\n */\r\n static openPreview = (partId:string,pageNo?:string|number) => {\r\n if (!!pageNo) {\r\n window.open(`/api/${MODULE_NAME}/content/preview/part/${partId}?pageNo=${pageNo}`)\r\n } else {\r\n window.open(`/api/${MODULE_NAME}/content/preview/part/${partId}`)\r\n }\r\n }\r\n\r\n /**\r\n * 发布所有栏目\r\n * @returns \r\n */\r\n static publishAll = async () => {\r\n\r\n const httpRequest = MSAppClient.instance?.httpRequest!;\r\n\r\n if (await Dialoger.confirm({ title: \"全量发布\", message: \"是否整站全量发布?\", type: \"warning\" })) {\r\n \r\n const response = await httpRequest.post(`/${MODULE_NAME}/content/publish/all`);\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 \r\n }\r\n\r\n /**\r\n * 资源发布\r\n * @returns \r\n */\r\n static publishAssets = async () => {\r\n\r\n const httpRequest = MSAppClient.instance!.httpRequest;\r\n\r\n if (await Dialoger.confirm({\r\n title: \"发布资源\",\r\n message: \"是否发布资源?\",\r\n type: \"warning\",\r\n })) {\r\n \r\n const response = await httpRequest.post(`/${MODULE_NAME}/content/publish/assets`);\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}\r\n\r\n /**\r\n * 发布栏目\r\n */\r\n static async publish(partId:string,options:object){\r\n \r\n const httpRequest = MSAppClient.instance?.httpRequest!;\r\n\r\n const response = await httpRequest.post(`/${MODULE_NAME}/content/publish/part`, {\r\n partIds: [partId], ...options\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 }\r\n\r\n\tconstructor(options: DataFormOptions = {}) {\r\n\t\tsuper({\r\n\t\t\tname: CmsPartForm[DATA_MODEL_NAME],\r\n\t\t\tmoduleName: MODULE_NAME,\r\n\t\t\t...options,\r\n\t\t});\r\n\t}\r\n\r\n\tcmsPartTree = this.register(new CmsPartTree());\r\n\tcmsArticlesTable = this.register(new CmsArticlesTable());\r\n\tstatic outerChainHideColumn = [\r\n\t\t\"seoDesc\",\r\n\t\t\"seoKeywords\",\r\n\t\t\"pageSize\",\r\n\t\t\"cmsCoverArticleId\",\r\n\t\t\"content\",\r\n\t\t\"coverTemplate\",\r\n\t\t\"listTemplate\",\r\n\t\t\"contentTemplate\",\r\n\t\t\"coverRouter\",\r\n\t\t\"listRouter\",\r\n\t\t\"contentRouter\",\r\n\t];\r\n\tstatic menuHideColumn = [\r\n\t\t\"seoDesc\",\r\n\t\t\"seoKeywords\",\r\n\t\t\"pageSize\",\r\n\t\t\"externalLink\",\r\n\t\t\"cmsCoverArticleId\",\r\n\t\t\"content\",\r\n\t\t\"isShowMenu\",\r\n\t\t\"coverTemplate\",\r\n\t\t\"listTemplate\",\r\n\t\t\"contentTemplate\",\r\n\t\t\"coverRouter\",\r\n\t\t\"listRouter\",\r\n\t\t\"contentRouter\",\r\n\t];\r\n\tstatic contentHideColumn = [\"externalLink\"];\r\n\r\n\tprotected async initialize() {\r\n\t\tif (isWhereFilter(this.cmsPartTree.dataFilter)) {\r\n\t\t\tconst defaultGroup = this.cmsPartTree.dataFilter.getDefaultGroup();\r\n\r\n\t\t\tdefaultGroup.clear();\r\n\r\n\t\t\tdefaultGroup.addCondition(\"cmsPartTypeId\", \"!=\", 1);\r\n\t\t}\r\n\r\n\t\tthis.dataChangeEvent.on(({ data }) => {\r\n\t\t\tif (isWhereFilter(this.cmsArticlesTable.dataFilter)) {\r\n\t\t\t\tconst defaultGroup = this.cmsArticlesTable.dataFilter.getDefaultGroup();\r\n\t\t\t\tdefaultGroup.clear();\r\n\t\t\t\tif (!!data?.id) {\r\n\t\t\t\t\tdefaultGroup.addCondition(\"cmsPartId\", \"=\", data?.id);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t})\r\n\r\n\t\tawait super.initialize();\r\n\t\tthis.setColumns([\r\n\t\t\tnew FormColumn({\r\n\t\t\t\tname: \"parentId\",\r\n\t\t\t\tlabel: \"父栏目\",\r\n\t\t\t\tcomponentInfo: \"MKDataTreeSelect\",\r\n\t\t\t\tcomponentProps: {\r\n\t\t\t\t\tlabelFieldName: \"name\",\r\n\t\t\t\t\tdataTree: this.cmsPartTree,\r\n\t\t\t\t},\r\n\t\t\t}),\r\n\t\t\tnew FormColumn({\r\n\t\t\t\tname: \"cmsPartTypeId\",\r\n\t\t\t\tlabel: \"栏目类型\",\r\n\t\t\t\tcomponentInfo: \"MKFormDataSelect\",\r\n\t\t\t\tdefaultValue: \"2\",\r\n\t\t\t\tcomponentProps: {\r\n\t\t\t\t\tlabelFieldName: \"desc\",\r\n\t\t\t\t\tdataTable: this.register(new CmsPartTypesTable()),\r\n\t\t\t\t},\r\n\t\t\t\trequired: true,\r\n\t\t\t}),\r\n\t\t\tnew FormColumn({\r\n\t\t\t\tname: \"cmsCoverArticleId\",\r\n\t\t\t\tlabel: \"封面文章\",\r\n\t\t\t\tcomponentInfo: \"MKFormDataTableSelect\",\r\n\t\t\t\tcomponentProps: {\r\n\t\t\t\t\tlabelFieldName: \"desc\",\r\n\t\t\t\t\tdataTable: this.cmsArticlesTable\r\n\t\t\t\t},\r\n\t\t\t}),\r\n\t\t\tnew FormColumn({\r\n\t\t\t\tname: \"name\",\r\n\t\t\t\tlabel: \"栏目名称\",\r\n\t\t\t\trequired: true,\r\n\t\t\t}),\r\n\t\t\tnew FormColumn({\r\n\t\t\t\tname: \"title\",\r\n\t\t\t\tlabel: \"栏目标题\",\r\n\t\t\t\trequired: true,\r\n\t\t\t}),\r\n\t\t\tnew FormColumn({\r\n\t\t\t\tname: \"externalLink\",\r\n\t\t\t\tlabel: \"外部链接\",\r\n\t\t\t\tvisible: false,\r\n\t\t\t\trequired: true,\r\n\t\t\t}),\r\n\t\t\tnew FormColumn({\r\n\t\t\t\tname: \"coverTemplate\",\r\n\t\t\t\tlabel: \"封面模板\",\r\n\t\t\t\tcomponentInfo: \"MKResourceSelectInput\",\r\n\t\t\t\tcomponentProps: {}\r\n\t\t\t}),\r\n\t\t\tnew FormColumn({\r\n\t\t\t\tname: \"coverRouter\",\r\n\t\t\t\tlabel: \"封面路由\",\r\n\t\t\t}),\r\n\t\t\tnew FormColumn({\r\n\t\t\t\tname: \"listTemplate\",\r\n\t\t\t\tlabel: \"列表模板\",\r\n\t\t\t\tcomponentInfo: \"MKResourceSelectInput\"\r\n\t\t\t}),\r\n\t\t\tnew FormColumn({\r\n\t\t\t\tname: \"listRouter\",\r\n\t\t\t\tlabel: \"列表路由\",\r\n\t\t\t}),\r\n\t\t\tnew FormColumn({\r\n\t\t\t\tname: \"contentTemplate\",\r\n\t\t\t\tlabel: \"内容模板\",\r\n\t\t\t\tcomponentInfo: \"MKResourceSelectInput\"\r\n\t\t\t}),\r\n\t\t\tnew FormColumn({\r\n\t\t\t\tname: \"contentRouter\",\r\n\t\t\t\tlabel: \"内容路由\",\r\n\t\t\t}),\r\n\t\t\tnew FormColumn({\r\n\t\t\t\tname: \"seoKeywords\",\r\n\t\t\t\tlabel: \"seo关键词\",\r\n\t\t\t}),\r\n\t\t\tnew FormColumn({\r\n\t\t\t\tname: \"seoDesc\",\r\n\t\t\t\tlabel: \"seo页面描述\",\r\n\t\t\t\tcomponentInfo: \"MKFormInput\",\r\n\t\t\t\tcomponentProps: {\r\n\t\t\t\t\ttype: \"textarea\",\r\n\t\t\t\t\trows: 3,\r\n\t\t\t\t},\r\n\t\t\t}),\r\n\t\t\tnew FormColumn({\r\n\t\t\t\tname: \"pageSize\",\r\n\t\t\t\tlabel: \"每页的文章数\",\r\n\t\t\t\tdefaultValue: 10,\r\n\t\t\t\trequired: true,\r\n\t\t\t}),\r\n\t\t\tnew FormColumn({\r\n\t\t\t\tname: \"sortNo\",\r\n\t\t\t\tlabel: \"排序\",\r\n\t\t\t\tdefaultValue: 0,\r\n\t\t\t\trequired: true,\r\n\t\t\t}),\r\n\t\t\tnew FormColumn({\r\n\t\t\t\tname: \"isHome\",\r\n\t\t\t\tlabel: \"是否是首页\",\r\n\t\t\t\tdefaultValue: 0,\r\n\t\t\t\tcomponentInfo: \"MKFormRadioBox\",\r\n\t\t\t\tcomponentProps: {\r\n\t\t\t\t\toptions: [\r\n\t\t\t\t\t\t{ label: \"是\", value: 1 },\r\n\t\t\t\t\t\t{ label: \"否\", value: 0 },\r\n\t\t\t\t\t],\r\n\t\t\t\t},\r\n\t\t\t\trequired: true,\r\n\t\t\t}),\r\n\t\t\tnew FormColumn({\r\n\t\t\t\tname: \"isShowMenu\",\r\n\t\t\t\tlabel: \"是否在菜单\",\r\n\t\t\t\tdefaultValue: 1,\r\n\t\t\t\tcomponentInfo: \"MKFormRadioBox\",\r\n\t\t\t\tcomponentProps: {\r\n\t\t\t\t\toptions: [\r\n\t\t\t\t\t\t{ label: \"是\", value: 1 },\r\n\t\t\t\t\t\t{ label: \"否\", value: 0 },\r\n\t\t\t\t\t],\r\n\t\t\t\t},\r\n\t\t\t\trequired: true,\r\n\t\t\t}),\r\n\t\t\tnew FormColumn({\r\n\t\t\t\tname: \"content\",\r\n\t\t\t\tlabel: \"内容\",\r\n\t\t\t\tcomponentInfo: \"MKCodeEditor\",\r\n\t\t\t\t// componentInfo: \"MKFormInput\",\r\n\t\t\t\tcomponentProps: {\r\n\t\t\t\t\textensions: [html()],\r\n\t\t\t\t},\r\n\t\t\t}),\r\n\t\t]);\r\n\t\t/**\r\n\t\t * @param value 栏目类型的id\r\n\t\t */\r\n\t\tconst hideHandle = (value: number) => {\r\n\r\n\t\t\t//如果是类型Id隐藏一些列\r\n\t\t\tif (value == 1) {\r\n\t\t\t\t// 外链 outerChainHideColumn\r\n\t\t\t\tthis.getColumns().forEach((column) => {\r\n\t\t\t\t\tif (CmsPartForm.outerChainHideColumn.indexOf(column.name) > -1) {\r\n\t\t\t\t\t\tcolumn.visible = false;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tcolumn.visible = true;\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t} else if (value == 3) {\r\n\t\t\t\t// 菜单 menuHideColumn\r\n\t\t\t\tthis.getColumns().forEach((column) => {\r\n\t\t\t\t\tif (CmsPartForm.menuHideColumn.indexOf(column.name) > -1) {\r\n\t\t\t\t\t\tcolumn.visible = false;\r\n\t\t\t\t\t\tthis.data.isShowMenu = 1;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tcolumn.visible = true;\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t} else {\r\n\t\t\t\t// 图文 contentHideColumn\r\n\t\t\t\tthis.getColumns().forEach((column) => {\r\n\t\t\t\t\tif (CmsPartForm.contentHideColumn.indexOf(column.name) > -1) {\r\n\t\t\t\t\t\tcolumn.visible = false;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tcolumn.visible = true;\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t};\r\n\r\n\t\tthis.formItemValueChangeEvent.on((column) => {\r\n\t\t\tif (column.formItem.name == \"cmsPartTypeId\") {\r\n\t\t\t\thideHandle(column.data.value);\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\tformatSubmitData(data: any) {\r\n\t\tObject.keys(data).forEach((key) => {\r\n\t\t\tif (data[key] === \"\") {\r\n\t\t\t\tdata[key] = null;\r\n\t\t\t}\r\n\t\t});\r\n\t\tif (data.sortNo) {\r\n\t\t\tdata.sortNo -= 0;\r\n\t\t}\r\n\r\n\t\treturn data;\r\n\t}\r\n}\r\n"],"names":["DataForm","DATA_MODEL_NAME","MODULE_NAME","CmsPartTree","CmsArticlesTable","MSAppClient","Messager","isWhereFilter","FormColumn","CmsPartTypesTable","html","Dialoger"],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
  const vue = require("vue");
3
+ const elIcons = require("@element-plus/icons-vue");
3
4
  require("../../../../components/abstract/abstract-select/abstract-select.js");
4
5
  require("../../../../components/abstract/abstract-select/abstract-select-options.js");
5
6
  require("element-plus");
@@ -206,7 +207,8 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
206
207
  return vue.openBlock(), vue.createElementBlock("div", _hoisted_1, [
207
208
  vue.createVNode(_component_el_page_header, {
208
209
  style: { "background-color": "#fff", "padding": "10px" },
209
- icon: null,
210
+ icon: vue.unref(elIcons.ArrowLeftBold),
211
+ title: "返回",
210
212
  onBack: _cache[0] || (_cache[0] = () => {
211
213
  var _a;
212
214
  return vue.unref(router).push({ name: "cms/contents", query: { pid: (_a = articleForm == null ? void 0 : articleForm.data) == null ? void 0 : _a.cmsPartId } });
@@ -306,7 +308,7 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
306
308
  ];
307
309
  }),
308
310
  _: 1
309
- }),
311
+ }, 8, ["icon"]),
310
312
  vue.withDirectives((vue.openBlock(), vue.createElementBlock("div", _hoisted_3, [
311
313
  articleForm.data ? (vue.openBlock(), vue.createBlock(vue.unref(index$1.MKDocEditor), {
312
314
  key: 0,
@@ -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 @back=\"() => router.push({ name: 'cms/contents', query: { pid: articleForm?.data?.cmsPartId } })\">\r\n <template #content>\r\n <template v-if=\"!articleForm.loading\">\r\n <el-text v-if=\"!articleForm.data?.modifier\">{{ !!route.query.id ? \"编辑文章\" : \"创建文章\" }}</el-text>\r\n <el-text v-else>{{ articleForm.data?.modifierName }} 于 {{ articleForm.data?.updatedAt }} 更新</el-text>\r\n </template>\r\n </template>\r\n <template #extra>\r\n <div class=\"mk-cms-article-eidtadd__header_tools\">\r\n\r\n <template v-if=\"!articleForm.loading\">\r\n <el-tag v-if=\"!articleForm.data?.publishTime\" effect=\"dark\" round>未发布</el-tag>\r\n <el-text v-else>发布时间:{{ articleForm.data?.publishTime }}</el-text>\r\n </template>\r\n\r\n <el-dropdown split-button type=\"primary\" style=\"margin-left: 10px;\" @click=\"saveHandle\">\r\n <MKSvgIcon iconClass=\"save\" style=\"margin-right: 10px;\" />\r\n 保存\r\n <template #dropdown>\r\n <el-dropdown-menu>\r\n <el-dropdown-item v-if=\"CmsSettings.publish.mode == 'static'\" @click=\"saveAndViewHandle\">\r\n <MKSvgIcon iconClass=\"View\" style=\"margin-right: 5px;\" />\r\n 保存并预览\r\n </el-dropdown-item>\r\n <el-dropdown-item @click=\"saveAndPublishHandle\">\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=\"articleForm.loading\">\r\n\r\n <MKDocEditor v-if=\"articleForm.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: closeExtentions! }\" ref=\"extentionsRef\">\r\n <MKSvgIcon icon-class=\"ArrowLeft\" class=\"open\" @click=\"closeExtentionsHandle\" v-if=\"closeExtentions\">\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=\"articleForm\">\r\n <MKForm :dataForm=\"articleForm\" style=\"width:225px\" label-width=\"110px\">\r\n <el-row v-if=\"CmsSettings.content.useTop\">\r\n <MKDataFormItem style=\"width: 100%;\" name=\"isTop\"></MKDataFormItem>\r\n </el-row>\r\n <el-row v-if=\"CmsSettings.content.useNew\">\r\n <MKDataFormItem style=\"width: 100%;\" name=\"isNew\"></MKDataFormItem>\r\n </el-row>\r\n <el-row v-if=\"CmsSettings.content.useHotRecommend\">\r\n <MKDataFormItem style=\"width: 100%;\" name=\"isHotRecommend\"></MKDataFormItem>\r\n </el-row>\r\n <el-row v-if=\"CmsSettings.content.usePartRecommend\">\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=\"articleForm.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=\"articleForm.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 v-if=\"CmsSettings.content.useTags\">\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-divider content-position=\"left\">\r\n 文章封面/简介\r\n <el-switch v-model=\"descAutoCreate\" style=\"margin-left: 10px;\" inline-prompt active-text=\"自动生成\"\r\n inactive-text=\"手动撰写\" />\r\n </el-divider>\r\n <el-row class=\"cover-desc\">\r\n <MKUploadImage style=\"margin-right: 10px;\" v-model=\"articleForm.data.cover\" width=\"115px\" height=\"115px\" \r\n :uploadContext=\"new ImageUploadContext(CmsSettings.content.coverImageSize)\">\r\n\r\n </MKUploadImage>\r\n <el-input class=\"desc\" type=\"textarea\" :autosize=\"{ minRows: 5, maxRows: 30 }\" maxlength=\"1000\"\r\n show-word-limit placeholder=\"[选填] 文章简介\" v-model=\"desc\" />\r\n </el-row>\r\n <el-divider content-position=\"left\">文章Banner图</el-divider>\r\n <el-row>\r\n <MKUploadImage v-model=\"articleForm.data.banner\" width=\"100%\" height=\"300px\":uploadContext=\"new ImageUploadContext(CmsSettings.content.bannerImageSize)\">\r\n\r\n </MKUploadImage>\r\n </el-row>\r\n </div>\r\n </el-tab-pane>\r\n <el-tab-pane label=\"文章资源库\" name=\"atlas\" v-if=\"CmsSettings.content.useAtlas\">\r\n <ArticleAtlas v-model=\"atlas\" :articleId=\"parseInt(articleForm.data?.id)\" />\r\n </el-tab-pane>\r\n <el-tab-pane label=\"页面设置\" name=\"settings\" v-if=\"CmsSettings.publish.mode == 'static'\">\r\n <MKDataForm :dataForm=\"articleForm\" label-width=\"120px\">\r\n <MKForm :dataForm=\"articleForm\">\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, MKUploadImage } 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 { ImageUploadContext } from \"../../../ms\";\r\nimport { useCmsSettings } from \"../../cms-settings\"\r\n// cms 配置\r\nconst CmsSettings = useCmsSettings(true);\r\n\r\nconst route = useRoute()\r\nconst router = useRouter();\r\n\r\n\r\n// 文章请求\r\nconst articleForm = reactive(new CmsArticlesForm()) as CmsArticlesForm;\r\nconst articleOptionsActive = ref(\"content\");\r\n\r\n\r\n// 标题\r\nconst title = computed({\r\n get() { return articleForm.data?.title || \"\"; },\r\n set(val) { articleForm.data.title = val; }\r\n});\r\n// 子标题\r\nconst subTitle = computed({\r\n get() { return articleForm.data?.subTitle || \"\"; },\r\n set(val) { articleForm.data.subTitle = val; }\r\n});\r\n// 获取默认简介\r\nconst getDefaultDescContent = () => {\r\n if (!descAutoCreate.value) {\r\n return \"\";\r\n }\r\n let val: any = \"\";\r\n const div = document.createElement(\"div\");\r\n div.innerHTML = content.value;\r\n val = div.textContent?.substring(0, 700);\r\n if (div.textContent!.length > 700) {\r\n val += \"...\";\r\n }\r\n return val;\r\n}\r\nconst descAutoCreate = ref(true)\r\n// 简介\r\nconst desc = computed({\r\n get() {\r\n return articleForm.data?.desc || getDefaultDescContent();\r\n },\r\n set(val) {\r\n articleForm.data.desc = val;\r\n }\r\n});\r\n// 发布时间\r\nconst releaseDate = computed({\r\n get() { return articleForm.data?.releaseDate || articleForm.data?.publishTime; },\r\n set(val) { articleForm.data.releaseDate = val; }\r\n});\r\n// 标签\r\nconst tags = ref([]);\r\n// computed({ \r\n// get() { return articleForm.data?.tags || [] }, \r\n// set(val) { articleForm.data.tags = val; } \r\n// });\r\n// 内容\r\nconst content = computed({\r\n get() { return articleForm.data?.content || \"\"; },\r\n set(val) { articleForm.data.content = val; }\r\n});\r\n\r\n// 图集\r\nconst atlas = computed({\r\n get() {\r\n return articleForm.data?.atlas\r\n },\r\n set(val) { articleForm.data.atlas = val; }\r\n});\r\n\r\n// 表单初始化\r\nconst formInitDataInfo = ()=>{\r\n // 初始化数据加载\r\n if (route.query.id) {\r\n articleForm.editRecord(route.query.id);\r\n }\r\n else if (route.query.partId) {\r\n articleForm.addRecord({ cmsPartId: route.query.partId,isDraft:1 });\r\n }\r\n else {\r\n articleForm.addRecord({ isDraft:1 });\r\n }\r\n}\r\n\r\nonMounted(() => {\r\n formInitDataInfo();\r\n articleForm.init();\r\n\r\n})\r\n\r\n// 保存\r\nconst saveHandle = async () => {\r\n\r\n // 简介不存在的时候使用自动生成的\r\n if (!articleForm.data?.desc) {\r\n desc.value = getDefaultDescContent();\r\n }\r\n\r\n let result = await articleForm.submit();\r\n\r\n formInitDataInfo();\r\n\r\n return result;\r\n}\r\n\r\n// 保存并预览\r\nconst saveAndViewHandle = async ()=>{\r\n const partId = articleForm.data.cmsPartId;\r\n const data = await saveHandle();\r\n if(data.data.code == 200 && data.data.data){\r\n window.open('/api/cms/content/preview/content/' + partId + '/' + data.data.data)\r\n }\r\n}\r\n\r\n// 保存并发布\r\nconst saveAndPublishHandle = async ()=>{\r\n const result:any = await articleForm.saveAndPublish(CmsSettings.publish.mode);\r\n if(result.data.code == 200){\r\n formInitDataInfo();\r\n }\r\n}\r\n\r\n// 隐藏扩展\r\nconst closeExtentions = ref(true);\r\nconst extentionsRef = ref();\r\nconst hideExtentionsHandle = () => {\r\n closeExtentions.value = true;\r\n}\r\n//展示扩展\r\nconst closeExtentionsHandle = () => {\r\n closeExtentions.value = false;\r\n}\r\n\r\nconst EditorChangeHandle = (v: any) => {\r\n articleForm.data.content = v;\r\n}\r\n\r\n</script>\r\n"],"names":["useCmsSettings","useRoute","useRouter","reactive","CmsArticlesForm","ref","computed","onMounted"],"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=\"ArrowLeftBold\" title=\"返回\"\r\n @back=\"() => router.push({ name: 'cms/contents', query: { pid: articleForm?.data?.cmsPartId } })\">\r\n <template #content>\r\n <template v-if=\"!articleForm.loading\">\r\n <el-text v-if=\"!articleForm.data?.modifier\">{{ !!route.query.id ? \"编辑文章\" : \"创建文章\" }}</el-text>\r\n <el-text v-else>{{ articleForm.data?.modifierName }} 于 {{ articleForm.data?.updatedAt }} 更新</el-text>\r\n </template>\r\n </template>\r\n <template #extra>\r\n <div class=\"mk-cms-article-eidtadd__header_tools\">\r\n\r\n <template v-if=\"!articleForm.loading\">\r\n <el-tag v-if=\"!articleForm.data?.publishTime\" effect=\"dark\" round>未发布</el-tag>\r\n <el-text v-else>发布时间:{{ articleForm.data?.publishTime }}</el-text>\r\n </template>\r\n\r\n <el-dropdown split-button type=\"primary\" style=\"margin-left: 10px;\" @click=\"saveHandle\">\r\n <MKSvgIcon iconClass=\"save\" style=\"margin-right: 10px;\" />\r\n 保存\r\n <template #dropdown>\r\n <el-dropdown-menu>\r\n <el-dropdown-item v-if=\"CmsSettings.publish.mode == 'static'\" @click=\"saveAndViewHandle\">\r\n <MKSvgIcon iconClass=\"View\" style=\"margin-right: 5px;\" />\r\n 保存并预览\r\n </el-dropdown-item>\r\n <el-dropdown-item @click=\"saveAndPublishHandle\">\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=\"articleForm.loading\">\r\n\r\n <MKDocEditor v-if=\"articleForm.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: closeExtentions! }\" ref=\"extentionsRef\">\r\n <MKSvgIcon icon-class=\"ArrowLeft\" class=\"open\" @click=\"closeExtentionsHandle\" v-if=\"closeExtentions\">\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=\"articleForm\">\r\n <MKForm :dataForm=\"articleForm\" style=\"width:225px\" label-width=\"110px\">\r\n <el-row v-if=\"CmsSettings.content.useTop\">\r\n <MKDataFormItem style=\"width: 100%;\" name=\"isTop\"></MKDataFormItem>\r\n </el-row>\r\n <el-row v-if=\"CmsSettings.content.useNew\">\r\n <MKDataFormItem style=\"width: 100%;\" name=\"isNew\"></MKDataFormItem>\r\n </el-row>\r\n <el-row v-if=\"CmsSettings.content.useHotRecommend\">\r\n <MKDataFormItem style=\"width: 100%;\" name=\"isHotRecommend\"></MKDataFormItem>\r\n </el-row>\r\n <el-row v-if=\"CmsSettings.content.usePartRecommend\">\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=\"articleForm.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=\"articleForm.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 v-if=\"CmsSettings.content.useTags\">\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-divider content-position=\"left\">\r\n 文章封面/简介\r\n <el-switch v-model=\"descAutoCreate\" style=\"margin-left: 10px;\" inline-prompt active-text=\"自动生成\"\r\n inactive-text=\"手动撰写\" />\r\n </el-divider>\r\n <el-row class=\"cover-desc\">\r\n <MKUploadImage style=\"margin-right: 10px;\" v-model=\"articleForm.data.cover\" width=\"115px\" height=\"115px\" \r\n :uploadContext=\"new ImageUploadContext(CmsSettings.content.coverImageSize)\">\r\n\r\n </MKUploadImage>\r\n <el-input class=\"desc\" type=\"textarea\" :autosize=\"{ minRows: 5, maxRows: 30 }\" maxlength=\"1000\"\r\n show-word-limit placeholder=\"[选填] 文章简介\" v-model=\"desc\" />\r\n </el-row>\r\n <el-divider content-position=\"left\">文章Banner图</el-divider>\r\n <el-row>\r\n <MKUploadImage v-model=\"articleForm.data.banner\" width=\"100%\" height=\"300px\":uploadContext=\"new ImageUploadContext(CmsSettings.content.bannerImageSize)\">\r\n\r\n </MKUploadImage>\r\n </el-row>\r\n </div>\r\n </el-tab-pane>\r\n <el-tab-pane label=\"文章资源库\" name=\"atlas\" v-if=\"CmsSettings.content.useAtlas\">\r\n <ArticleAtlas v-model=\"atlas\" :articleId=\"parseInt(articleForm.data?.id)\" />\r\n </el-tab-pane>\r\n <el-tab-pane label=\"页面设置\" name=\"settings\" v-if=\"CmsSettings.publish.mode == 'static'\">\r\n <MKDataForm :dataForm=\"articleForm\" label-width=\"120px\">\r\n <MKForm :dataForm=\"articleForm\">\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 { ArrowLeftBold } from \"@element-plus/icons-vue\"\r\nimport { MKDocEditor, MKSvgIcon, MKUploadImage } 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 { ImageUploadContext } from \"../../../ms\";\r\nimport { useCmsSettings } from \"../../cms-settings\"\r\n// cms 配置\r\nconst CmsSettings = useCmsSettings(true);\r\n\r\nconst route = useRoute()\r\nconst router = useRouter();\r\n\r\n\r\n// 文章请求\r\nconst articleForm = reactive(new CmsArticlesForm()) as CmsArticlesForm;\r\nconst articleOptionsActive = ref(\"content\");\r\n\r\n\r\n// 标题\r\nconst title = computed({\r\n get() { return articleForm.data?.title || \"\"; },\r\n set(val) { articleForm.data.title = val; }\r\n});\r\n// 子标题\r\nconst subTitle = computed({\r\n get() { return articleForm.data?.subTitle || \"\"; },\r\n set(val) { articleForm.data.subTitle = val; }\r\n});\r\n// 获取默认简介\r\nconst getDefaultDescContent = () => {\r\n if (!descAutoCreate.value) {\r\n return \"\";\r\n }\r\n let val: any = \"\";\r\n const div = document.createElement(\"div\");\r\n div.innerHTML = content.value;\r\n val = div.textContent?.substring(0, 700);\r\n if (div.textContent!.length > 700) {\r\n val += \"...\";\r\n }\r\n return val;\r\n}\r\nconst descAutoCreate = ref(true)\r\n// 简介\r\nconst desc = computed({\r\n get() {\r\n return articleForm.data?.desc || getDefaultDescContent();\r\n },\r\n set(val) {\r\n articleForm.data.desc = val;\r\n }\r\n});\r\n// 发布时间\r\nconst releaseDate = computed({\r\n get() { return articleForm.data?.releaseDate || articleForm.data?.publishTime; },\r\n set(val) { articleForm.data.releaseDate = val; }\r\n});\r\n// 标签\r\nconst tags = ref([]);\r\n// computed({ \r\n// get() { return articleForm.data?.tags || [] }, \r\n// set(val) { articleForm.data.tags = val; } \r\n// });\r\n// 内容\r\nconst content = computed({\r\n get() { return articleForm.data?.content || \"\"; },\r\n set(val) { articleForm.data.content = val; }\r\n});\r\n\r\n// 图集\r\nconst atlas = computed({\r\n get() {\r\n return articleForm.data?.atlas\r\n },\r\n set(val) { articleForm.data.atlas = val; }\r\n});\r\n\r\n// 表单初始化\r\nconst formInitDataInfo = ()=>{\r\n // 初始化数据加载\r\n if (route.query.id) {\r\n articleForm.editRecord(route.query.id);\r\n }\r\n else if (route.query.partId) {\r\n articleForm.addRecord({ cmsPartId: route.query.partId,isDraft:1 });\r\n }\r\n else {\r\n articleForm.addRecord({ isDraft:1 });\r\n }\r\n}\r\n\r\nonMounted(() => {\r\n formInitDataInfo();\r\n articleForm.init();\r\n\r\n})\r\n\r\n// 保存\r\nconst saveHandle = async () => {\r\n\r\n // 简介不存在的时候使用自动生成的\r\n if (!articleForm.data?.desc) {\r\n desc.value = getDefaultDescContent();\r\n }\r\n\r\n let result = await articleForm.submit();\r\n\r\n formInitDataInfo();\r\n\r\n return result;\r\n}\r\n\r\n// 保存并预览\r\nconst saveAndViewHandle = async ()=>{\r\n const partId = articleForm.data.cmsPartId;\r\n const data = await saveHandle();\r\n if(data.data.code == 200 && data.data.data){\r\n window.open('/api/cms/content/preview/content/' + partId + '/' + data.data.data)\r\n }\r\n}\r\n\r\n// 保存并发布\r\nconst saveAndPublishHandle = async ()=>{\r\n const result:any = await articleForm.saveAndPublish(CmsSettings.publish.mode);\r\n if(result.data.code == 200){\r\n formInitDataInfo();\r\n }\r\n}\r\n\r\n// 隐藏扩展\r\nconst closeExtentions = ref(true);\r\nconst extentionsRef = ref();\r\nconst hideExtentionsHandle = () => {\r\n closeExtentions.value = true;\r\n}\r\n//展示扩展\r\nconst closeExtentionsHandle = () => {\r\n closeExtentions.value = false;\r\n}\r\n\r\nconst EditorChangeHandle = (v: any) => {\r\n articleForm.data.content = v;\r\n}\r\n\r\n</script>\r\n"],"names":["useCmsSettings","useRoute","useRouter","reactive","CmsArticlesForm","ref","computed","onMounted"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { defineComponent, ref, computed, unref, onMounted, resolveComponent, resolveDirective, openBlock, createElementBlock, Fragment, withDirectives, createElementVNode, createVNode, toDisplayString, createCommentVNode, createBlock, withCtx, createTextVNode, renderSlot, renderList } from "vue";
1
+ import { defineComponent, ref, computed, unref, onMounted, resolveComponent, resolveDirective, openBlock, createElementBlock, Fragment, withDirectives, createVNode, withCtx, createElementVNode, toDisplayString, createBlock, createTextVNode, createCommentVNode, renderSlot, renderList } from "vue";
2
2
  import { ElButton, ElDialog, ElMessageBox, ElMessage } from "element-plus";
3
3
  import "../../basic/svg-icon/index.js";
4
4
  import "../../basic/button/button-options.js";
@@ -25,7 +25,7 @@ import "../../basic/image-cropper/index.js";
25
25
  import { MKResourceList } from "../resource-list/index.js";
26
26
  import { ResourceManager } from "../resource-list/ResourceManager.js";
27
27
  const _hoisted_1 = { class: "resource-manager" };
28
- const _hoisted_2 = { class: "resource-manager-tools" };
28
+ const _hoisted_2 = { style: { "color": "var(--el-text-color-regular)", "margin-left": "10px" } };
29
29
  const _hoisted_3 = { style: { "margin-left": "10px" } };
30
30
  const _sfc_main = /* @__PURE__ */ defineComponent({
31
31
  __name: "resource-manager",
@@ -161,17 +161,24 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
161
161
  });
162
162
  return (_ctx, _cache) => {
163
163
  const _component_MKSvgIcon = resolveComponent("MKSvgIcon");
164
+ const _component_el_page_header = resolveComponent("el-page-header");
164
165
  const _directive_loading = resolveDirective("loading");
165
166
  return openBlock(), createElementBlock(Fragment, null, [
166
167
  withDirectives((openBlock(), createElementBlock("div", _hoisted_1, [
167
- createElementVNode("div", _hoisted_2, [
168
- createElementVNode("div", null, [
169
- props.title ? (openBlock(), createElementBlock(Fragment, { key: 0 }, [
170
- createVNode(_component_MKSvgIcon, { iconClass: "sucaiku" }),
168
+ createVNode(_component_el_page_header, {
169
+ style: { "background-color": "#fff", "padding": "10px" },
170
+ icon: null
171
+ }, {
172
+ title: withCtx(() => [
173
+ createElementVNode("h3", _hoisted_2, [
174
+ createVNode(_component_MKSvgIcon, {
175
+ iconClass: "sucaiku",
176
+ style: { "margin-right": "5px" }
177
+ }),
171
178
  createElementVNode("span", _hoisted_3, toDisplayString(props.title), 1)
172
- ], 64)) : createCommentVNode("", true)
179
+ ])
173
180
  ]),
174
- createElementVNode("div", null, [
181
+ extra: withCtx(() => [
175
182
  selectResourceCount.value > 0 ? (openBlock(), createBlock(unref(ElButton), {
176
183
  key: 0,
177
184
  type: "danger",
@@ -201,8 +208,9 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
201
208
  _: 1
202
209
  })) : createCommentVNode("", true),
203
210
  renderSlot(_ctx.$slots, "tools")
204
- ])
205
- ]),
211
+ ]),
212
+ _: 3
213
+ }),
206
214
  createVNode(unref(MKResourceList), {
207
215
  resourceManager: resourceManager.value,
208
216
  onDrop: handleDrop
@@ -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 <div>\r\n <template v-if=\"props.title\">\r\n <MKSvgIcon iconClass=\"sucaiku\" /> \r\n <span style=\"margin-left:10px\">{{props.title}}</span>\r\n </template>\r\n </div>\r\n <div>\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 </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 title:{type:String,default:\"\"},\r\n resourceManager: {\r\n type: ResourceManager,\r\n required: true,\r\n },\r\n});\r\n\r\nconst isShowConfirmDialog = ref(false);\r\n\r\nlet waitUploadFiles: File[] = [];\r\nconst existPathList = ref([] as string[]);\r\n\r\nconst resourceManager = computed(() => props.resourceManager);\r\n\r\nconst isShowEditDialog = computed(\r\n () => unref(resourceManager).isShowEditDialog\r\n);\r\n\r\nconst selectResourceCount = computed(\r\n () => unref(resourceManager).selectResourceList.length\r\n);\r\n\r\nconst handleDeleteClick = async () => {\r\n const isConfirm = await ElMessageBox.confirm(\"是否删除选中文件\", {\r\n type: \"warning\",\r\n }).then(\r\n () => true,\r\n () => false\r\n );\r\n\r\n if (!isConfirm) {\r\n return;\r\n }\r\n\r\n unref(resourceManager).deleteSelectResourceList();\r\n};\r\n\r\nconst handleEdit = () => {\r\n unref(resourceManager).editSelectFile();\r\n};\r\n\r\nconst handleEditDialogConfirm = () => {\r\n unref(resourceManager).saveEditFile();\r\n};\r\n\r\nconst handleEditDialogClose = () => {\r\n unref(resourceManager).isShowEditDialog = false;\r\n unref(resourceManager).currentEditText = \"\";\r\n};\r\n\r\n// const handleUploadClick = () => {\r\n// /** @type {HTMLInputElement} */\r\n// var input = document.createElement(\"input\");\r\n// input.type = \"file\";\r\n// input.multiple = true;\r\n\r\n// input.addEventListener(\"change\", () => {\r\n// var files = new Array(input.files!.length)\r\n// .fill(0)\r\n// .map((_, i) => input.files![i]);\r\n\r\n// unref(resourceManager).uploadResourceList(files);\r\n// });\r\n\r\n// input.click();\r\n// };\r\n\r\nconst handleDownload = () => {\r\n unref(resourceManager).downloadSelectResource();\r\n};\r\n\r\nconst handleDrop = async (event: DragEvent) => {\r\n waitUploadFiles = [];\r\n\r\n var _items = event.dataTransfer?.items;\r\n\r\n var fileSystemEntry = _items![0].webkitGetAsEntry() as any;\r\n\r\n const internalProcess = async (item: any, path: string = \"\") => {\r\n if (item.isFile) {\r\n return [\r\n await new Promise((resolve) => {\r\n item.file((file: File) => {\r\n resolve(\r\n new File([file], `${path}${file.name}`, { type: file.type })\r\n );\r\n });\r\n }),\r\n ] as File[];\r\n } else if (item.isDirectory) {\r\n var directoryReader = item.createReader();\r\n\r\n const entries = (await new Promise((resolve) => {\r\n directoryReader.readEntries(resolve);\r\n })) as any[];\r\n\r\n var result: File[] = [];\r\n\r\n for (let i = 0; i < entries.length; i++) {\r\n result = result.concat(\r\n await internalProcess(entries[i], `${path}${item.name}/`)\r\n );\r\n }\r\n\r\n return result;\r\n }\r\n\r\n return [];\r\n };\r\n\r\n const files = (waitUploadFiles = await internalProcess(fileSystemEntry));\r\n\r\n try {\r\n unref(resourceManager).loadingManager.startLoading();\r\n\r\n const checkResponse = await unref(resourceManager).getExistPathList(\r\n files.map((file) => file.name)\r\n );\r\n\r\n if (checkResponse.data.code !== 200) {\r\n ElMessage.error({ message: checkResponse.data.msg });\r\n return;\r\n }\r\n\r\n if (checkResponse.data.data?.length === 0) {\r\n await unref(resourceManager).uploadResourceList(files);\r\n\r\n waitUploadFiles = [];\r\n return;\r\n }\r\n existPathList.value = checkResponse.data.data ?? [];\r\n\r\n isShowConfirmDialog.value = true;\r\n } catch (e) {\r\n console.log(e);\r\n ElMessage.error(\"网络异常,上传失败\");\r\n } finally {\r\n unref(resourceManager).loadingManager.completeLoading();\r\n }\r\n};\r\n\r\nconst handleDialogOverrideClick = async () => {\r\n try {\r\n await unref(resourceManager).uploadResourceList(waitUploadFiles);\r\n } catch (e) {\r\n console.log(e);\r\n ElMessage.error(\"网络异常,上传失败\");\r\n }\r\n\r\n handleDialogCancelClick();\r\n};\r\n\r\nconst handleDialogSkipClick = async () => {\r\n try {\r\n const files = waitUploadFiles.filter(\r\n (file) => !unref(existPathList).includes(file.name)\r\n );\r\n if (files.length) {\r\n await unref(resourceManager).uploadResourceList(files);\r\n }\r\n } catch (e) {\r\n console.log(e);\r\n ElMessage.error(\"网络异常,上传失败\");\r\n }\r\n\r\n handleDialogCancelClick();\r\n};\r\n\r\nconst handleDialogCancelClick = () => {\r\n isShowConfirmDialog.value = false;\r\n existPathList.value = [];\r\n waitUploadFiles = [];\r\n};\r\n\r\nonMounted(() => {\r\n unref(resourceManager).loadResourceInfoList();\r\n});\r\n</script>\r\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"resource-manager.vue.js","sources":["../../../../../src/components/business/resource-manager/resource-manager.vue"],"sourcesContent":["<template>\r\n <div v-loading=\"resourceManager.loading\" class=\"resource-manager\">\r\n <el-page-header style=\"background-color: #fff;padding: 10px;\" :icon=\"null\">\r\n <template #title>\r\n <h3 style=\"color: var(--el-text-color-regular); margin-left: 10px\">\r\n <MKSvgIcon iconClass=\"sucaiku\" style=\"margin-right: 5px\" />\r\n <span style=\"margin-left:10px\">{{props.title}}</span>\r\n </h3>\r\n </template>\r\n <template #extra>\r\n <ElButton\r\n v-if=\"selectResourceCount > 0\"\r\n type=\"danger\"\r\n @click=\"handleDeleteClick\"\r\n >\r\n 删除\r\n </ElButton>\r\n <ElButton\r\n v-if=\"\r\n selectResourceCount === 1 &&\r\n !resourceManager.selectResourceList[0].isDirectory\r\n \"\r\n @click=\"handleEdit\"\r\n >\r\n 编辑\r\n </ElButton>\r\n <ElButton\r\n v-if=\"\r\n selectResourceCount === 1 &&\r\n !resourceManager.selectResourceList[0].isDirectory\r\n \"\r\n @click=\"handleDownload()\"\r\n >\r\n 下载\r\n </ElButton>\r\n <!-- <ElButton type=\"primary\" @click=\"handleUploadClick\">上传</ElButton> -->\r\n <slot name=\"tools\"></slot>\r\n </template>\r\n </el-page-header>\r\n <MKResourceList :resourceManager=\"resourceManager\" @drop=\"handleDrop\" />\r\n </div>\r\n\r\n <ElDialog v-model=\"isShowEditDialog\" @close=\"handleEditDialogClose\">\r\n <MKCodeEditor\r\n v-if=\"isShowEditDialog\"\r\n v-model=\"resourceManager.currentEditText\"\r\n />\r\n <template #footer>\r\n <ElButton @click=\"handleEditDialogClose\">取消</ElButton>\r\n <ElButton\r\n type=\"primary\"\r\n v-loading=\"resourceManager.loading\"\r\n @click=\"handleEditDialogConfirm\"\r\n >\r\n 保存\r\n </ElButton>\r\n </template>\r\n </ElDialog>\r\n\r\n <ElDialog\r\n v-model=\"isShowConfirmDialog\"\r\n title=\"文件已存在\"\r\n @close=\"handleDialogCancelClick\"\r\n >\r\n <div v-for=\"path in existPathList\" :key=\"path\">{{ path }}</div>\r\n\r\n <template #footer>\r\n <ElButton type=\"danger\" @click=\"handleDialogOverrideClick\">覆盖</ElButton>\r\n <ElButton type=\"warning\" @click=\"handleDialogSkipClick\">跳过</ElButton>\r\n <ElButton @click=\"handleDialogCancelClick\">取消</ElButton>\r\n </template>\r\n </ElDialog>\r\n</template>\r\n\r\n<script setup lang=\"ts\">\r\nimport { onMounted, computed, unref, ref } from \"vue\";\r\nimport { ElButton, ElMessageBox, ElMessage, ElDialog } from \"element-plus\";\r\nimport { MKCodeEditor } from \"../../basic\";\r\nimport { MKResourceList, ResourceManager } from \"../resource-list\";\r\n\r\nconst props = defineProps({\r\n title:{type:String,default:\"\"},\r\n resourceManager: {\r\n type: ResourceManager,\r\n required: true,\r\n },\r\n});\r\n\r\nconst isShowConfirmDialog = ref(false);\r\n\r\nlet waitUploadFiles: File[] = [];\r\nconst existPathList = ref([] as string[]);\r\n\r\nconst resourceManager = computed(() => props.resourceManager);\r\n\r\nconst isShowEditDialog = computed(\r\n () => unref(resourceManager).isShowEditDialog\r\n);\r\n\r\nconst selectResourceCount = computed(\r\n () => unref(resourceManager).selectResourceList.length\r\n);\r\n\r\nconst handleDeleteClick = async () => {\r\n const isConfirm = await ElMessageBox.confirm(\"是否删除选中文件\", {\r\n type: \"warning\",\r\n }).then(\r\n () => true,\r\n () => false\r\n );\r\n\r\n if (!isConfirm) {\r\n return;\r\n }\r\n\r\n unref(resourceManager).deleteSelectResourceList();\r\n};\r\n\r\nconst handleEdit = () => {\r\n unref(resourceManager).editSelectFile();\r\n};\r\n\r\nconst handleEditDialogConfirm = () => {\r\n unref(resourceManager).saveEditFile();\r\n};\r\n\r\nconst handleEditDialogClose = () => {\r\n unref(resourceManager).isShowEditDialog = false;\r\n unref(resourceManager).currentEditText = \"\";\r\n};\r\n\r\n// const handleUploadClick = () => {\r\n// /** @type {HTMLInputElement} */\r\n// var input = document.createElement(\"input\");\r\n// input.type = \"file\";\r\n// input.multiple = true;\r\n\r\n// input.addEventListener(\"change\", () => {\r\n// var files = new Array(input.files!.length)\r\n// .fill(0)\r\n// .map((_, i) => input.files![i]);\r\n\r\n// unref(resourceManager).uploadResourceList(files);\r\n// });\r\n\r\n// input.click();\r\n// };\r\n\r\nconst handleDownload = () => {\r\n unref(resourceManager).downloadSelectResource();\r\n};\r\n\r\nconst handleDrop = async (event: DragEvent) => {\r\n waitUploadFiles = [];\r\n\r\n var _items = event.dataTransfer?.items;\r\n\r\n var fileSystemEntry = _items![0].webkitGetAsEntry() as any;\r\n\r\n const internalProcess = async (item: any, path: string = \"\") => {\r\n if (item.isFile) {\r\n return [\r\n await new Promise((resolve) => {\r\n item.file((file: File) => {\r\n resolve(\r\n new File([file], `${path}${file.name}`, { type: file.type })\r\n );\r\n });\r\n }),\r\n ] as File[];\r\n } else if (item.isDirectory) {\r\n var directoryReader = item.createReader();\r\n\r\n const entries = (await new Promise((resolve) => {\r\n directoryReader.readEntries(resolve);\r\n })) as any[];\r\n\r\n var result: File[] = [];\r\n\r\n for (let i = 0; i < entries.length; i++) {\r\n result = result.concat(\r\n await internalProcess(entries[i], `${path}${item.name}/`)\r\n );\r\n }\r\n\r\n return result;\r\n }\r\n\r\n return [];\r\n };\r\n\r\n const files = (waitUploadFiles = await internalProcess(fileSystemEntry));\r\n\r\n try {\r\n unref(resourceManager).loadingManager.startLoading();\r\n\r\n const checkResponse = await unref(resourceManager).getExistPathList(\r\n files.map((file) => file.name)\r\n );\r\n\r\n if (checkResponse.data.code !== 200) {\r\n ElMessage.error({ message: checkResponse.data.msg });\r\n return;\r\n }\r\n\r\n if (checkResponse.data.data?.length === 0) {\r\n await unref(resourceManager).uploadResourceList(files);\r\n\r\n waitUploadFiles = [];\r\n return;\r\n }\r\n existPathList.value = checkResponse.data.data ?? [];\r\n\r\n isShowConfirmDialog.value = true;\r\n } catch (e) {\r\n console.log(e);\r\n ElMessage.error(\"网络异常,上传失败\");\r\n } finally {\r\n unref(resourceManager).loadingManager.completeLoading();\r\n }\r\n};\r\n\r\nconst handleDialogOverrideClick = async () => {\r\n try {\r\n await unref(resourceManager).uploadResourceList(waitUploadFiles);\r\n } catch (e) {\r\n console.log(e);\r\n ElMessage.error(\"网络异常,上传失败\");\r\n }\r\n\r\n handleDialogCancelClick();\r\n};\r\n\r\nconst handleDialogSkipClick = async () => {\r\n try {\r\n const files = waitUploadFiles.filter(\r\n (file) => !unref(existPathList).includes(file.name)\r\n );\r\n if (files.length) {\r\n await unref(resourceManager).uploadResourceList(files);\r\n }\r\n } catch (e) {\r\n console.log(e);\r\n ElMessage.error(\"网络异常,上传失败\");\r\n }\r\n\r\n handleDialogCancelClick();\r\n};\r\n\r\nconst handleDialogCancelClick = () => {\r\n isShowConfirmDialog.value = false;\r\n existPathList.value = [];\r\n waitUploadFiles = [];\r\n};\r\n\r\nonMounted(() => {\r\n unref(resourceManager).loadResourceInfoList();\r\n});\r\n</script>\r\n"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { CmsPartForm } from "./CmsPartForm.js";
2
- import { MKError, Errors, DataFormType } from "@maketribe/dm";
2
+ import { MKError, Errors, DataFormType, Messager } from "@maketribe/dm";
3
3
  class CmsContentManPartForm extends CmsPartForm {
4
4
  async submit(data = {}) {
5
5
  data = { ...this.data, ...data };
@@ -16,6 +16,7 @@ class CmsContentManPartForm extends CmsPartForm {
16
16
  }
17
17
  if (response.data.code == 200) {
18
18
  this.editRecord(data.id);
19
+ Messager.success("保存成功!");
19
20
  }
20
21
  return response;
21
22
  }
@@ -1 +1 @@
1
- {"version":3,"file":"CmsContentManPartForm.js","sources":["../../../../../../src/modules/cms/dataviews/cms-parts/CmsContentManPartForm.ts"],"sourcesContent":["import { CmsPartForm } from \"./CmsPartForm\"\r\nimport { ResponseConfig, R } from \"@maketribe/request\";\r\nimport { DataFormType,Errors, MKError } from \"@maketribe/dm\";\r\n\r\n/**\r\n * 内容管理的栏目表单\r\n */\r\nexport class CmsContentManPartForm extends CmsPartForm{\r\n\r\n async submit(data: Record<string, any> = {}) {\r\n \r\n data = { ...this.data, ...data };\r\n\r\n let response: ResponseConfig<R<null>, any>;\r\n\r\n switch (this.getDataFormType()) {\r\n case DataFormType.UPDATE:\r\n response = await this.update(data);\r\n break;\r\n case DataFormType.ADD:\r\n response = await this.add(data);\r\n break;\r\n default:\r\n throw new MKError(Errors.FORM_TYPE_MISMATCH_ERROR_CODE);\r\n }\r\n\r\n if(response.data.code == 200){\r\n this.editRecord(data.id)\r\n }\r\n\r\n return response;\r\n }\r\n\r\n}\r\n"],"names":[],"mappings":";;AAOO,MAAM,8BAA8B,YAAW;AAAA,EAEpD,MAAM,OAAO,OAA4B,IAAI;AAE3C,WAAO,EAAE,GAAG,KAAK,MAAM,GAAG,KAAK;AAE3B,QAAA;AAEI,YAAA,KAAK,gBAAmB,GAAA;AAAA,MAC9B,KAAK,aAAa;AACL,mBAAA,MAAM,KAAK,OAAO,IAAI;AACjC;AAAA,MACF,KAAK,aAAa;AACL,mBAAA,MAAM,KAAK,IAAI,IAAI;AAC9B;AAAA,MACF;AACQ,cAAA,IAAI,QAAQ,OAAO,6BAA6B;AAAA,IAC1D;AAEG,QAAA,SAAS,KAAK,QAAQ,KAAI;AACtB,WAAA,WAAW,KAAK,EAAE;AAAA,IACzB;AAEO,WAAA;AAAA,EACT;AAEF;"}
1
+ {"version":3,"file":"CmsContentManPartForm.js","sources":["../../../../../../src/modules/cms/dataviews/cms-parts/CmsContentManPartForm.ts"],"sourcesContent":["import { CmsPartForm } from \"./CmsPartForm\"\r\nimport { ResponseConfig, R } from \"@maketribe/request\";\r\nimport { DataFormType,Errors, MKError } from \"@maketribe/dm\";\r\nimport { Messager } from \"@maketribe/dm\";\r\n\r\n/**\r\n * 内容管理的栏目表单\r\n */\r\nexport class CmsContentManPartForm extends CmsPartForm{\r\n\r\n async submit(data: Record<string, any> = {}) {\r\n \r\n data = { ...this.data, ...data };\r\n\r\n let response: ResponseConfig<R<null>, any>;\r\n\r\n switch (this.getDataFormType()) {\r\n case DataFormType.UPDATE:\r\n response = await this.update(data);\r\n break;\r\n case DataFormType.ADD:\r\n response = await this.add(data);\r\n break;\r\n default:\r\n throw new MKError(Errors.FORM_TYPE_MISMATCH_ERROR_CODE);\r\n }\r\n\r\n if(response.data.code == 200){\r\n this.editRecord(data.id)\r\n Messager.success(\"保存成功!\" as any);\r\n }\r\n\r\n return response;\r\n }\r\n\r\n}\r\n"],"names":[],"mappings":";;AAQO,MAAM,8BAA8B,YAAW;AAAA,EAEpD,MAAM,OAAO,OAA4B,IAAI;AAE3C,WAAO,EAAE,GAAG,KAAK,MAAM,GAAG,KAAK;AAE3B,QAAA;AAEI,YAAA,KAAK,gBAAmB,GAAA;AAAA,MAC9B,KAAK,aAAa;AACL,mBAAA,MAAM,KAAK,OAAO,IAAI;AACjC;AAAA,MACF,KAAK,aAAa;AACL,mBAAA,MAAM,KAAK,IAAI,IAAI;AAC9B;AAAA,MACF;AACQ,cAAA,IAAI,QAAQ,OAAO,6BAA6B;AAAA,IAC1D;AAEG,QAAA,SAAS,KAAK,QAAQ,KAAI;AACtB,WAAA,WAAW,KAAK,EAAE;AACvB,eAAS,QAAQ,OAAc;AAAA,IACjC;AAEO,WAAA;AAAA,EACT;AAEF;"}
@@ -1 +1 @@
1
- {"version":3,"file":"CmsPartForm.js","sources":["../../../../../../src/modules/cms/dataviews/cms-parts/CmsPartForm.ts"],"sourcesContent":["import { DataForm, DataFormOptions, FormColumn, isWhereFilter,Dialoger,Messager, LoadingManager } from \"@maketribe/dm\";\r\nimport { CmsPartTypesTable } from \"../cms-part-types\";\r\nimport { CmsArticlesTable } from \"../cms-articles/CmsArticlesTable\";\r\nimport { DATA_MODEL_NAME } from \"../../../../constants\";\r\nimport { MODULE_NAME } from \"../../constants\";\r\nimport { html } from \"@codemirror/lang-html\";\r\nimport { CmsPartTree } from \"./CmsPartTree\";\r\nimport { MSAppClient } from \"../../../../core\";\r\n\r\nexport class CmsPartForm extends DataForm {\r\n\r\n\tstatic [DATA_MODEL_NAME]: string = \"part\";\r\n\r\n /**\r\n * 开启栏目预览,此处需要调整Api接口的根\r\n * @param partId \r\n * @param pageNo \r\n */\r\n static openPreview = (partId:string,pageNo?:string|number) => {\r\n if (!!pageNo) {\r\n window.open(`/api/${MODULE_NAME}/content/preview/part/${partId}?pageNo=${pageNo}`)\r\n } else {\r\n window.open(`/api/${MODULE_NAME}/content/preview/part/${partId}`)\r\n }\r\n }\r\n\r\n /**\r\n * 发布所有栏目\r\n * @returns \r\n */\r\n static publishAll = async () => {\r\n\r\n const httpRequest = MSAppClient.instance?.httpRequest!;\r\n\r\n if (await Dialoger.confirm({ title: \"全量发布\", message: \"是否整站全量发布?\", type: \"warning\" })) {\r\n \r\n const response = await httpRequest.post(`/${MODULE_NAME}/content/publish/all`);\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 \r\n }\r\n\r\n /**\r\n * 资源发布\r\n * @returns \r\n */\r\n static publishAssets = async () => {\r\n\r\n const httpRequest = MSAppClient.instance!.httpRequest;\r\n\r\n if (await Dialoger.confirm({\r\n title: \"发布资源\",\r\n message: \"是否发布资源?\",\r\n type: \"warning\",\r\n })) {\r\n \r\n const response = await httpRequest.post(`/${MODULE_NAME}/content/publish/assets`);\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}\r\n\r\n /**\r\n * 发布栏目\r\n */\r\n static async publish(partId:string,options:object){\r\n \r\n const httpRequest = MSAppClient.instance?.httpRequest!;\r\n\r\n const response = await httpRequest.post(`/${MODULE_NAME}/content/publish/part`, {\r\n partIds: [partId], ...options\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 }\r\n\r\n\tconstructor(options: DataFormOptions = {}) {\r\n\t\tsuper({\r\n\t\t\tname: CmsPartForm[DATA_MODEL_NAME],\r\n\t\t\tmoduleName: MODULE_NAME,\r\n\t\t\t...options,\r\n\t\t});\r\n\t}\r\n\r\n\tcmsPartTree = this.register(new CmsPartTree());\r\n\tcmsArticlesTable = this.register(new CmsArticlesTable());\r\n\tstatic outerChainHideColumn = [\r\n\t\t\"seoDesc\",\r\n\t\t\"seoKeywords\",\r\n\t\t\"pageSize\",\r\n\t\t\"cmsCoverArticleId\",\r\n\t\t\"content\",\r\n\t\t\"coverTemplate\",\r\n\t\t\"listTemplate\",\r\n\t\t\"contentTemplate\",\r\n\t\t\"coverRouter\",\r\n\t\t\"listRouter\",\r\n\t\t\"contentRouter\",\r\n\t];\r\n\tstatic menuHideColumn = [\r\n\t\t\"seoDesc\",\r\n\t\t\"seoKeywords\",\r\n\t\t\"pageSize\",\r\n\t\t\"externalLink\",\r\n\t\t\"cmsCoverArticleId\",\r\n\t\t\"content\",\r\n\t\t\"isShowMenu\",\r\n\t\t\"coverTemplate\",\r\n\t\t\"listTemplate\",\r\n\t\t\"contentTemplate\",\r\n\t\t\"coverRouter\",\r\n\t\t\"listRouter\",\r\n\t\t\"contentRouter\",\r\n\t];\r\n\tstatic contentHideColumn = [\"externalLink\"];\r\n\r\n\tprotected async initialize() {\r\n\t\tif (isWhereFilter(this.cmsPartTree.dataFilter)) {\r\n\t\t\tconst defaultGroup = this.cmsPartTree.dataFilter.getDefaultGroup();\r\n\r\n\t\t\tdefaultGroup.clear();\r\n\r\n\t\t\tdefaultGroup.addCondition(\"cmsPartTypeId\", \"!=\", 1);\r\n\t\t}\r\n\r\n\t\tthis.dataChangeEvent.on(({ data }) => {\r\n\t\t\tif (isWhereFilter(this.cmsArticlesTable.dataFilter)) {\r\n\t\t\t\tconst defaultGroup = this.cmsArticlesTable.dataFilter.getDefaultGroup();\r\n\t\t\t\tdefaultGroup.clear();\r\n\t\t\t\tif (!!data?.id) {\r\n\t\t\t\t\tdefaultGroup.addCondition(\"cmsPartId\", \"=\", data?.id);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t})\r\n\r\n\t\tawait super.initialize();\r\n\t\tthis.setColumns([\r\n\t\t\tnew FormColumn({\r\n\t\t\t\tname: \"parentId\",\r\n\t\t\t\tlabel: \"父栏目\",\r\n\t\t\t\tcomponentInfo: \"MKDataTreeSelect\",\r\n\t\t\t\tcomponentProps: {\r\n\t\t\t\t\tlabelFieldName: \"name\",\r\n\t\t\t\t\tdataTree: this.cmsPartTree,\r\n\t\t\t\t},\r\n\t\t\t}),\r\n\t\t\tnew FormColumn({\r\n\t\t\t\tname: \"cmsPartTypeId\",\r\n\t\t\t\tlabel: \"栏目类型\",\r\n\t\t\t\tcomponentInfo: \"MKFormDataSelect\",\r\n\t\t\t\tdefaultValue: \"2\",\r\n\t\t\t\tcomponentProps: {\r\n\t\t\t\t\tlabelFieldName: \"desc\",\r\n\t\t\t\t\tdataTable: this.register(new CmsPartTypesTable()),\r\n\t\t\t\t},\r\n\t\t\t\trequired: true,\r\n\t\t\t}),\r\n\t\t\tnew FormColumn({\r\n\t\t\t\tname: \"cmsCoverArticleId\",\r\n\t\t\t\tlabel: \"封面文章\",\r\n\t\t\t\tcomponentInfo: \"MKFormDataTableSelect\",\r\n\t\t\t\tcomponentProps: {\r\n\t\t\t\t\tlabelFieldName: \"desc\",\r\n\t\t\t\t\tdataTable: this.cmsArticlesTable\r\n\t\t\t\t},\r\n\t\t\t}),\r\n\t\t\tnew FormColumn({\r\n\t\t\t\tname: \"name\",\r\n\t\t\t\tlabel: \"栏目名称\",\r\n\t\t\t\trequired: true,\r\n\t\t\t}),\r\n\t\t\tnew FormColumn({\r\n\t\t\t\tname: \"title\",\r\n\t\t\t\tlabel: \"栏目标题\",\r\n\t\t\t\trequired: true,\r\n\t\t\t}),\r\n\t\t\tnew FormColumn({\r\n\t\t\t\tname: \"externalLink\",\r\n\t\t\t\tlabel: \"外部链接\",\r\n\t\t\t\tvisible: false,\r\n\t\t\t\trequired: true,\r\n\t\t\t}),\r\n\t\t\tnew FormColumn({\r\n\t\t\t\tname: \"coverTemplate\",\r\n\t\t\t\tlabel: \"封面模板\",\r\n\t\t\t\tcomponentInfo: \"MKResourceSelectInput\",\r\n\t\t\t\tcomponentProps: {}\r\n\t\t\t}),\r\n\t\t\tnew FormColumn({\r\n\t\t\t\tname: \"coverRouter\",\r\n\t\t\t\tlabel: \"封面路由\",\r\n\t\t\t}),\r\n\t\t\tnew FormColumn({\r\n\t\t\t\tname: \"listTemplate\",\r\n\t\t\t\tlabel: \"列表模板\",\r\n\t\t\t\tcomponentInfo: \"MKResourceSelectInput\"\r\n\t\t\t}),\r\n\t\t\tnew FormColumn({\r\n\t\t\t\tname: \"listRouter\",\r\n\t\t\t\tlabel: \"列表路由\",\r\n\t\t\t}),\r\n\t\t\tnew FormColumn({\r\n\t\t\t\tname: \"contentTemplate\",\r\n\t\t\t\tlabel: \"内容模板\",\r\n\t\t\t\tcomponentInfo: \"MKResourceSelectInput\"\r\n\t\t\t}),\r\n\t\t\tnew FormColumn({\r\n\t\t\t\tname: \"contentRouter\",\r\n\t\t\t\tlabel: \"内容路由\",\r\n\t\t\t}),\r\n\t\t\tnew FormColumn({\r\n\t\t\t\tname: \"seoKeywords\",\r\n\t\t\t\tlabel: \"seo关键词\",\r\n\t\t\t}),\r\n\t\t\tnew FormColumn({\r\n\t\t\t\tname: \"seoDesc\",\r\n\t\t\t\tlabel: \"seo页面描述\",\r\n\t\t\t\tcomponentInfo: \"MKFormInput\",\r\n\t\t\t\tcomponentProps: {\r\n\t\t\t\t\ttype: \"textarea\",\r\n\t\t\t\t\trows: 3,\r\n\t\t\t\t},\r\n\t\t\t}),\r\n\t\t\tnew FormColumn({\r\n\t\t\t\tname: \"pageSize\",\r\n\t\t\t\tlabel: \"每页的文章数\",\r\n\t\t\t\tdefaultValue: 10,\r\n\t\t\t\trequired: true,\r\n\t\t\t}),\r\n\t\t\tnew FormColumn({\r\n\t\t\t\tname: \"sortNo\",\r\n\t\t\t\tlabel: \"排序\",\r\n\t\t\t\tdefaultValue: 0,\r\n\t\t\t\trequired: true,\r\n\t\t\t}),\r\n\t\t\tnew FormColumn({\r\n\t\t\t\tname: \"isHome\",\r\n\t\t\t\tlabel: \"是否是首页\",\r\n\t\t\t\tdefaultValue: 0,\r\n\t\t\t\tcomponentInfo: \"MKFormRadioBox\",\r\n\t\t\t\tcomponentProps: {\r\n\t\t\t\t\toptions: [\r\n\t\t\t\t\t\t{ label: \"是\", value: 1 },\r\n\t\t\t\t\t\t{ label: \"否\", value: 0 },\r\n\t\t\t\t\t],\r\n\t\t\t\t},\r\n\t\t\t\trequired: true,\r\n\t\t\t}),\r\n\t\t\tnew FormColumn({\r\n\t\t\t\tname: \"isShowMenu\",\r\n\t\t\t\tlabel: \"是否在菜单\",\r\n\t\t\t\tdefaultValue: 1,\r\n\t\t\t\tcomponentInfo: \"MKFormRadioBox\",\r\n\t\t\t\tcomponentProps: {\r\n\t\t\t\t\toptions: [\r\n\t\t\t\t\t\t{ label: \"是\", value: 1 },\r\n\t\t\t\t\t\t{ label: \"否\", value: 0 },\r\n\t\t\t\t\t],\r\n\t\t\t\t},\r\n\t\t\t\trequired: true,\r\n\t\t\t}),\r\n\t\t\tnew FormColumn({\r\n\t\t\t\tname: \"content\",\r\n\t\t\t\tlabel: \"内容\",\r\n\t\t\t\tcomponentInfo: \"MKCodeEditor\",\r\n\t\t\t\t// componentInfo: \"MKFormInput\",\r\n\t\t\t\tcomponentProps: {\r\n\t\t\t\t\textensions: [html()],\r\n\t\t\t\t},\r\n\t\t\t}),\r\n\t\t]);\r\n\t\t/**\r\n\t\t * @param value 栏目类型的id\r\n\t\t */\r\n\t\tconst hideHandle = (value: number) => {\r\n\r\n\t\t\t//如果是类型Id隐藏一些列\r\n\t\t\tif (value == 1) {\r\n\t\t\t\t// 外链 outerChainHideColumn\r\n\t\t\t\tthis.getColumns().forEach((column) => {\r\n\t\t\t\t\tif (CmsPartForm.outerChainHideColumn.indexOf(column.name) > -1) {\r\n\t\t\t\t\t\tcolumn.visible = false;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tcolumn.visible = true;\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t} else if (value == 3) {\r\n\t\t\t\t// 菜单 menuHideColumn\r\n\t\t\t\tthis.getColumns().forEach((column) => {\r\n\t\t\t\t\tif (CmsPartForm.menuHideColumn.indexOf(column.name) > -1) {\r\n\t\t\t\t\t\tcolumn.visible = false;\r\n\t\t\t\t\t\tthis.data.isShowMenu = 1;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tcolumn.visible = true;\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t} else {\r\n\t\t\t\t// 图文 contentHideColumn\r\n\t\t\t\tthis.getColumns().forEach((column) => {\r\n\t\t\t\t\tif (CmsPartForm.contentHideColumn.indexOf(column.name) > -1) {\r\n\t\t\t\t\t\tcolumn.visible = false;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tcolumn.visible = true;\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t};\r\n\r\n\t\tthis.formItemValueChangeEvent.on((column) => {\r\n\t\t\tif (column.formItem.name == \"cmsPartTypeId\") {\r\n\t\t\t\thideHandle(column.data.value);\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\tformatSubmitData(data: any) {\r\n\t\tObject.keys(data).forEach((key) => {\r\n\t\t\tif (data[key] === \"\") {\r\n\t\t\t\tdata[key] = null;\r\n\t\t\t}\r\n\t\t});\r\n\t\tif (data.sortNo) {\r\n\t\t\tdata.sortNo -= 0;\r\n\t\t}\r\n\r\n\t\treturn data;\r\n\t}\r\n}\r\n"],"names":["_a"],"mappings":"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"}
1
+ {"version":3,"file":"CmsPartForm.js","sources":["../../../../../../src/modules/cms/dataviews/cms-parts/CmsPartForm.ts"],"sourcesContent":["import { DataForm, DataFormOptions, FormColumn, isWhereFilter,Dialoger,Messager } from \"@maketribe/dm\";\r\nimport { CmsPartTypesTable } from \"../cms-part-types\";\r\nimport { CmsArticlesTable } from \"../cms-articles/CmsArticlesTable\";\r\nimport { DATA_MODEL_NAME } from \"../../../../constants\";\r\nimport { MODULE_NAME } from \"../../constants\";\r\nimport { html } from \"@codemirror/lang-html\";\r\nimport { CmsPartTree } from \"./CmsPartTree\";\r\nimport { MSAppClient } from \"../../../../core\";\r\n\r\nexport class CmsPartForm extends DataForm {\r\n\r\n\tstatic [DATA_MODEL_NAME]: string = \"part\";\r\n\r\n /**\r\n * 开启栏目预览,此处需要调整Api接口的根\r\n * @param partId \r\n * @param pageNo \r\n */\r\n static openPreview = (partId:string,pageNo?:string|number) => {\r\n if (!!pageNo) {\r\n window.open(`/api/${MODULE_NAME}/content/preview/part/${partId}?pageNo=${pageNo}`)\r\n } else {\r\n window.open(`/api/${MODULE_NAME}/content/preview/part/${partId}`)\r\n }\r\n }\r\n\r\n /**\r\n * 发布所有栏目\r\n * @returns \r\n */\r\n static publishAll = async () => {\r\n\r\n const httpRequest = MSAppClient.instance?.httpRequest!;\r\n\r\n if (await Dialoger.confirm({ title: \"全量发布\", message: \"是否整站全量发布?\", type: \"warning\" })) {\r\n \r\n const response = await httpRequest.post(`/${MODULE_NAME}/content/publish/all`);\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 \r\n }\r\n\r\n /**\r\n * 资源发布\r\n * @returns \r\n */\r\n static publishAssets = async () => {\r\n\r\n const httpRequest = MSAppClient.instance!.httpRequest;\r\n\r\n if (await Dialoger.confirm({\r\n title: \"发布资源\",\r\n message: \"是否发布资源?\",\r\n type: \"warning\",\r\n })) {\r\n \r\n const response = await httpRequest.post(`/${MODULE_NAME}/content/publish/assets`);\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}\r\n\r\n /**\r\n * 发布栏目\r\n */\r\n static async publish(partId:string,options:object){\r\n \r\n const httpRequest = MSAppClient.instance?.httpRequest!;\r\n\r\n const response = await httpRequest.post(`/${MODULE_NAME}/content/publish/part`, {\r\n partIds: [partId], ...options\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 }\r\n\r\n\tconstructor(options: DataFormOptions = {}) {\r\n\t\tsuper({\r\n\t\t\tname: CmsPartForm[DATA_MODEL_NAME],\r\n\t\t\tmoduleName: MODULE_NAME,\r\n\t\t\t...options,\r\n\t\t});\r\n\t}\r\n\r\n\tcmsPartTree = this.register(new CmsPartTree());\r\n\tcmsArticlesTable = this.register(new CmsArticlesTable());\r\n\tstatic outerChainHideColumn = [\r\n\t\t\"seoDesc\",\r\n\t\t\"seoKeywords\",\r\n\t\t\"pageSize\",\r\n\t\t\"cmsCoverArticleId\",\r\n\t\t\"content\",\r\n\t\t\"coverTemplate\",\r\n\t\t\"listTemplate\",\r\n\t\t\"contentTemplate\",\r\n\t\t\"coverRouter\",\r\n\t\t\"listRouter\",\r\n\t\t\"contentRouter\",\r\n\t];\r\n\tstatic menuHideColumn = [\r\n\t\t\"seoDesc\",\r\n\t\t\"seoKeywords\",\r\n\t\t\"pageSize\",\r\n\t\t\"externalLink\",\r\n\t\t\"cmsCoverArticleId\",\r\n\t\t\"content\",\r\n\t\t\"isShowMenu\",\r\n\t\t\"coverTemplate\",\r\n\t\t\"listTemplate\",\r\n\t\t\"contentTemplate\",\r\n\t\t\"coverRouter\",\r\n\t\t\"listRouter\",\r\n\t\t\"contentRouter\",\r\n\t];\r\n\tstatic contentHideColumn = [\"externalLink\"];\r\n\r\n\tprotected async initialize() {\r\n\t\tif (isWhereFilter(this.cmsPartTree.dataFilter)) {\r\n\t\t\tconst defaultGroup = this.cmsPartTree.dataFilter.getDefaultGroup();\r\n\r\n\t\t\tdefaultGroup.clear();\r\n\r\n\t\t\tdefaultGroup.addCondition(\"cmsPartTypeId\", \"!=\", 1);\r\n\t\t}\r\n\r\n\t\tthis.dataChangeEvent.on(({ data }) => {\r\n\t\t\tif (isWhereFilter(this.cmsArticlesTable.dataFilter)) {\r\n\t\t\t\tconst defaultGroup = this.cmsArticlesTable.dataFilter.getDefaultGroup();\r\n\t\t\t\tdefaultGroup.clear();\r\n\t\t\t\tif (!!data?.id) {\r\n\t\t\t\t\tdefaultGroup.addCondition(\"cmsPartId\", \"=\", data?.id);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t})\r\n\r\n\t\tawait super.initialize();\r\n\t\tthis.setColumns([\r\n\t\t\tnew FormColumn({\r\n\t\t\t\tname: \"parentId\",\r\n\t\t\t\tlabel: \"父栏目\",\r\n\t\t\t\tcomponentInfo: \"MKDataTreeSelect\",\r\n\t\t\t\tcomponentProps: {\r\n\t\t\t\t\tlabelFieldName: \"name\",\r\n\t\t\t\t\tdataTree: this.cmsPartTree,\r\n\t\t\t\t},\r\n\t\t\t}),\r\n\t\t\tnew FormColumn({\r\n\t\t\t\tname: \"cmsPartTypeId\",\r\n\t\t\t\tlabel: \"栏目类型\",\r\n\t\t\t\tcomponentInfo: \"MKFormDataSelect\",\r\n\t\t\t\tdefaultValue: \"2\",\r\n\t\t\t\tcomponentProps: {\r\n\t\t\t\t\tlabelFieldName: \"desc\",\r\n\t\t\t\t\tdataTable: this.register(new CmsPartTypesTable()),\r\n\t\t\t\t},\r\n\t\t\t\trequired: true,\r\n\t\t\t}),\r\n\t\t\tnew FormColumn({\r\n\t\t\t\tname: \"cmsCoverArticleId\",\r\n\t\t\t\tlabel: \"封面文章\",\r\n\t\t\t\tcomponentInfo: \"MKFormDataTableSelect\",\r\n\t\t\t\tcomponentProps: {\r\n\t\t\t\t\tlabelFieldName: \"desc\",\r\n\t\t\t\t\tdataTable: this.cmsArticlesTable\r\n\t\t\t\t},\r\n\t\t\t}),\r\n\t\t\tnew FormColumn({\r\n\t\t\t\tname: \"name\",\r\n\t\t\t\tlabel: \"栏目名称\",\r\n\t\t\t\trequired: true,\r\n\t\t\t}),\r\n\t\t\tnew FormColumn({\r\n\t\t\t\tname: \"title\",\r\n\t\t\t\tlabel: \"栏目标题\",\r\n\t\t\t\trequired: true,\r\n\t\t\t}),\r\n\t\t\tnew FormColumn({\r\n\t\t\t\tname: \"externalLink\",\r\n\t\t\t\tlabel: \"外部链接\",\r\n\t\t\t\tvisible: false,\r\n\t\t\t\trequired: true,\r\n\t\t\t}),\r\n\t\t\tnew FormColumn({\r\n\t\t\t\tname: \"coverTemplate\",\r\n\t\t\t\tlabel: \"封面模板\",\r\n\t\t\t\tcomponentInfo: \"MKResourceSelectInput\",\r\n\t\t\t\tcomponentProps: {}\r\n\t\t\t}),\r\n\t\t\tnew FormColumn({\r\n\t\t\t\tname: \"coverRouter\",\r\n\t\t\t\tlabel: \"封面路由\",\r\n\t\t\t}),\r\n\t\t\tnew FormColumn({\r\n\t\t\t\tname: \"listTemplate\",\r\n\t\t\t\tlabel: \"列表模板\",\r\n\t\t\t\tcomponentInfo: \"MKResourceSelectInput\"\r\n\t\t\t}),\r\n\t\t\tnew FormColumn({\r\n\t\t\t\tname: \"listRouter\",\r\n\t\t\t\tlabel: \"列表路由\",\r\n\t\t\t}),\r\n\t\t\tnew FormColumn({\r\n\t\t\t\tname: \"contentTemplate\",\r\n\t\t\t\tlabel: \"内容模板\",\r\n\t\t\t\tcomponentInfo: \"MKResourceSelectInput\"\r\n\t\t\t}),\r\n\t\t\tnew FormColumn({\r\n\t\t\t\tname: \"contentRouter\",\r\n\t\t\t\tlabel: \"内容路由\",\r\n\t\t\t}),\r\n\t\t\tnew FormColumn({\r\n\t\t\t\tname: \"seoKeywords\",\r\n\t\t\t\tlabel: \"seo关键词\",\r\n\t\t\t}),\r\n\t\t\tnew FormColumn({\r\n\t\t\t\tname: \"seoDesc\",\r\n\t\t\t\tlabel: \"seo页面描述\",\r\n\t\t\t\tcomponentInfo: \"MKFormInput\",\r\n\t\t\t\tcomponentProps: {\r\n\t\t\t\t\ttype: \"textarea\",\r\n\t\t\t\t\trows: 3,\r\n\t\t\t\t},\r\n\t\t\t}),\r\n\t\t\tnew FormColumn({\r\n\t\t\t\tname: \"pageSize\",\r\n\t\t\t\tlabel: \"每页的文章数\",\r\n\t\t\t\tdefaultValue: 10,\r\n\t\t\t\trequired: true,\r\n\t\t\t}),\r\n\t\t\tnew FormColumn({\r\n\t\t\t\tname: \"sortNo\",\r\n\t\t\t\tlabel: \"排序\",\r\n\t\t\t\tdefaultValue: 0,\r\n\t\t\t\trequired: true,\r\n\t\t\t}),\r\n\t\t\tnew FormColumn({\r\n\t\t\t\tname: \"isHome\",\r\n\t\t\t\tlabel: \"是否是首页\",\r\n\t\t\t\tdefaultValue: 0,\r\n\t\t\t\tcomponentInfo: \"MKFormRadioBox\",\r\n\t\t\t\tcomponentProps: {\r\n\t\t\t\t\toptions: [\r\n\t\t\t\t\t\t{ label: \"是\", value: 1 },\r\n\t\t\t\t\t\t{ label: \"否\", value: 0 },\r\n\t\t\t\t\t],\r\n\t\t\t\t},\r\n\t\t\t\trequired: true,\r\n\t\t\t}),\r\n\t\t\tnew FormColumn({\r\n\t\t\t\tname: \"isShowMenu\",\r\n\t\t\t\tlabel: \"是否在菜单\",\r\n\t\t\t\tdefaultValue: 1,\r\n\t\t\t\tcomponentInfo: \"MKFormRadioBox\",\r\n\t\t\t\tcomponentProps: {\r\n\t\t\t\t\toptions: [\r\n\t\t\t\t\t\t{ label: \"是\", value: 1 },\r\n\t\t\t\t\t\t{ label: \"否\", value: 0 },\r\n\t\t\t\t\t],\r\n\t\t\t\t},\r\n\t\t\t\trequired: true,\r\n\t\t\t}),\r\n\t\t\tnew FormColumn({\r\n\t\t\t\tname: \"content\",\r\n\t\t\t\tlabel: \"内容\",\r\n\t\t\t\tcomponentInfo: \"MKCodeEditor\",\r\n\t\t\t\t// componentInfo: \"MKFormInput\",\r\n\t\t\t\tcomponentProps: {\r\n\t\t\t\t\textensions: [html()],\r\n\t\t\t\t},\r\n\t\t\t}),\r\n\t\t]);\r\n\t\t/**\r\n\t\t * @param value 栏目类型的id\r\n\t\t */\r\n\t\tconst hideHandle = (value: number) => {\r\n\r\n\t\t\t//如果是类型Id隐藏一些列\r\n\t\t\tif (value == 1) {\r\n\t\t\t\t// 外链 outerChainHideColumn\r\n\t\t\t\tthis.getColumns().forEach((column) => {\r\n\t\t\t\t\tif (CmsPartForm.outerChainHideColumn.indexOf(column.name) > -1) {\r\n\t\t\t\t\t\tcolumn.visible = false;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tcolumn.visible = true;\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t} else if (value == 3) {\r\n\t\t\t\t// 菜单 menuHideColumn\r\n\t\t\t\tthis.getColumns().forEach((column) => {\r\n\t\t\t\t\tif (CmsPartForm.menuHideColumn.indexOf(column.name) > -1) {\r\n\t\t\t\t\t\tcolumn.visible = false;\r\n\t\t\t\t\t\tthis.data.isShowMenu = 1;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tcolumn.visible = true;\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t} else {\r\n\t\t\t\t// 图文 contentHideColumn\r\n\t\t\t\tthis.getColumns().forEach((column) => {\r\n\t\t\t\t\tif (CmsPartForm.contentHideColumn.indexOf(column.name) > -1) {\r\n\t\t\t\t\t\tcolumn.visible = false;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tcolumn.visible = true;\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t};\r\n\r\n\t\tthis.formItemValueChangeEvent.on((column) => {\r\n\t\t\tif (column.formItem.name == \"cmsPartTypeId\") {\r\n\t\t\t\thideHandle(column.data.value);\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\tformatSubmitData(data: any) {\r\n\t\tObject.keys(data).forEach((key) => {\r\n\t\t\tif (data[key] === \"\") {\r\n\t\t\t\tdata[key] = null;\r\n\t\t\t}\r\n\t\t});\r\n\t\tif (data.sortNo) {\r\n\t\t\tdata.sortNo -= 0;\r\n\t\t}\r\n\r\n\t\treturn data;\r\n\t}\r\n}\r\n"],"names":["_a"],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import { defineComponent, reactive, ref, computed, onMounted, resolveComponent, resolveDirective, openBlock, createElementBlock, createVNode, unref, withCtx, Fragment, createBlock, createTextVNode, toDisplayString, createCommentVNode, createElementVNode, withDirectives, normalizeClass } from "vue";
2
+ import { ArrowLeftBold } from "@element-plus/icons-vue";
2
3
  import "../../../../components/abstract/abstract-select/abstract-select.js";
3
4
  import "../../../../components/abstract/abstract-select/abstract-select-options.js";
4
5
  import "element-plus";
@@ -205,7 +206,8 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
205
206
  return openBlock(), createElementBlock("div", _hoisted_1, [
206
207
  createVNode(_component_el_page_header, {
207
208
  style: { "background-color": "#fff", "padding": "10px" },
208
- icon: null,
209
+ icon: unref(ArrowLeftBold),
210
+ title: "返回",
209
211
  onBack: _cache[0] || (_cache[0] = () => {
210
212
  var _a;
211
213
  return unref(router).push({ name: "cms/contents", query: { pid: (_a = articleForm == null ? void 0 : articleForm.data) == null ? void 0 : _a.cmsPartId } });
@@ -305,7 +307,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
305
307
  ];
306
308
  }),
307
309
  _: 1
308
- }),
310
+ }, 8, ["icon"]),
309
311
  withDirectives((openBlock(), createElementBlock("div", _hoisted_3, [
310
312
  articleForm.data ? (openBlock(), createBlock(unref(MKDocEditor), {
311
313
  key: 0,