@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.
- package/dist/cjs/components/business/resource-manager/resource-manager.vue.js +17 -9
- package/dist/cjs/components/business/resource-manager/resource-manager.vue.js.map +1 -1
- package/dist/cjs/modules/cms/dataviews/cms-parts/CmsContentManPartForm.js +1 -0
- package/dist/cjs/modules/cms/dataviews/cms-parts/CmsContentManPartForm.js.map +1 -1
- package/dist/cjs/modules/cms/dataviews/cms-parts/CmsPartForm.js.map +1 -1
- package/dist/cjs/modules/cms/pages/cms-contents/article-edit-add-page.vue2.js +4 -2
- package/dist/cjs/modules/cms/pages/cms-contents/article-edit-add-page.vue2.js.map +1 -1
- package/dist/esm/components/business/resource-manager/resource-manager.vue.js +18 -10
- package/dist/esm/components/business/resource-manager/resource-manager.vue.js.map +1 -1
- package/dist/esm/modules/cms/dataviews/cms-parts/CmsContentManPartForm.js +2 -1
- package/dist/esm/modules/cms/dataviews/cms-parts/CmsContentManPartForm.js.map +1 -1
- package/dist/esm/modules/cms/dataviews/cms-parts/CmsPartForm.js.map +1 -1
- package/dist/esm/modules/cms/pages/cms-contents/article-edit-add-page.vue2.js +4 -2
- package/dist/esm/modules/cms/pages/cms-contents/article-edit-add-page.vue2.js.map +1 -1
- package/dist/style/index.css +1 -1
- package/dist/style/modules/cms/index.css +1 -1
- package/dist/style/modules/cms/resource-manager.css +1 -1
- package/dist/style/src/modules/cms/resource-manager.scss +0 -6
- package/package.json +3 -3
|
@@ -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 = {
|
|
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.
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
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
|
-
]
|
|
180
|
+
])
|
|
174
181
|
]),
|
|
175
|
-
vue.
|
|
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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"}
|
|
@@ -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":";;;;
|
|
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:
|
|
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":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4KM,UAAA,cAAcA,2BAAe,IAAI;AAEvC,UAAM,QAAQC,UAAAA;AACd,UAAM,SAASC,UAAAA;AAIf,UAAM,cAAcC,IAAAA,SAAS,IAAIC,gBAAAA,gBAAiB,CAAA;AAC5C,UAAA,uBAAuBC,QAAI,SAAS;AAI1C,UAAM,QAAQC,IAAAA,SAAS;AAAA,MACrB,MAAM;;AAAS,iBAAA,iBAAY,SAAZ,mBAAkB,UAAS;AAAA,MAAI;AAAA,MAC9C,IAAI,KAAK;AAAE,oBAAY,KAAK,QAAQ;AAAA,MAAK;AAAA,IAAA,CAC1C;AAED,UAAM,WAAWA,IAAAA,SAAS;AAAA,MACxB,MAAM;;AAAS,iBAAA,iBAAY,SAAZ,mBAAkB,aAAY;AAAA,MAAI;AAAA,MACjD,IAAI,KAAK;AAAE,oBAAY,KAAK,WAAW;AAAA,MAAK;AAAA,IAAA,CAC7C;AAED,UAAM,wBAAwB,MAAM;;AAC9B,UAAA,CAAC,eAAe,OAAO;AAClB,eAAA;AAAA,MACT;AACA,UAAI,MAAW;AACT,YAAA,MAAM,SAAS,cAAc,KAAK;AACxC,UAAI,YAAY,QAAQ;AACxB,aAAM,SAAI,gBAAJ,mBAAiB,UAAU,GAAG;AAChC,UAAA,IAAI,YAAa,SAAS,KAAK;AAC1B,eAAA;AAAA,MACT;AACO,aAAA;AAAA,IAAA;AAEH,UAAA,iBAAiBD,QAAI,IAAI;AAE/B,UAAM,OAAOC,IAAAA,SAAS;AAAA,MACpB,MAAM;;AACG,iBAAA,iBAAY,SAAZ,mBAAkB,SAAQ,sBAAsB;AAAA,MACzD;AAAA,MACA,IAAI,KAAK;AACP,oBAAY,KAAK,OAAO;AAAA,MAC1B;AAAA,IAAA,CACD;AAED,UAAM,cAAcA,IAAAA,SAAS;AAAA,MAC3B,MAAM;;AAAE,iBAAO,iBAAY,SAAZ,mBAAkB,kBAAe,iBAAY,SAAZ,mBAAkB;AAAA,MAAa;AAAA,MAC/E,IAAI,KAAK;AAAE,oBAAY,KAAK,cAAc;AAAA,MAAK;AAAA,IAAA,CAChD;AAEK,UAAA,OAAOD,QAAI,CAAA,CAAE;AAMnB,UAAM,UAAUC,IAAAA,SAAS;AAAA,MACvB,MAAM;;AAAS,iBAAA,iBAAY,SAAZ,mBAAkB,YAAW;AAAA,MAAI;AAAA,MAChD,IAAI,KAAK;AAAE,oBAAY,KAAK,UAAU;AAAA,MAAK;AAAA,IAAA,CAC5C;AAGD,UAAM,QAAQA,IAAAA,SAAS;AAAA,MACrB,MAAM;;AACJ,gBAAO,iBAAY,SAAZ,mBAAkB;AAAA,MAC3B;AAAA,MACA,IAAI,KAAK;AAAE,oBAAY,KAAK,QAAQ;AAAA,MAAK;AAAA,IAAA,CAC1C;AAGD,UAAM,mBAAmB,MAAI;AAExB,UAAA,MAAM,MAAM,IAAI;AACL,oBAAA,WAAW,MAAM,MAAM,EAAE;AAAA,MAAA,WAE9B,MAAM,MAAM,QAAQ;AACf,oBAAA,UAAU,EAAE,WAAW,MAAM,MAAM,QAAO,SAAQ,GAAG;AAAA,MAAA,OAE9D;AACH,oBAAY,UAAU,EAAE,SAAQ,EAAG,CAAA;AAAA,MACrC;AAAA,IAAA;AAGFC,QAAAA,UAAU,MAAM;AACG;AACjB,kBAAY,KAAK;AAAA,IAAA,CAElB;AAGD,UAAM,aAAa,YAAY;;AAGzB,UAAA,GAAC,iBAAY,SAAZ,mBAAkB,OAAM;AAC3B,aAAK,QAAQ;MACf;AAEI,UAAA,SAAS,MAAM,YAAY;AAEd;AAEV,aAAA;AAAA,IAAA;AAIT,UAAM,oBAAoB,YAAU;AAC5B,YAAA,SAAS,YAAY,KAAK;AAC1B,YAAA,OAAO,MAAM;AACnB,UAAG,KAAK,KAAK,QAAQ,OAAO,KAAK,KAAK,MAAK;AACzC,eAAO,KAAK,sCAAsC,SAAS,MAAM,KAAK,KAAK,IAAI;AAAA,MACjF;AAAA,IAAA;AAIF,UAAM,uBAAuB,YAAU;AACrC,YAAM,SAAa,MAAM,YAAY,eAAe,YAAY,QAAQ,IAAI;AACzE,UAAA,OAAO,KAAK,QAAQ,KAAI;AACR;MACnB;AAAA,IAAA;AAII,UAAA,kBAAkBF,QAAI,IAAI;AAChC,UAAM,gBAAgBA,IAAAA;AACtB,UAAM,uBAAuB,MAAM;AACjC,sBAAgB,QAAQ;AAAA,IAAA;AAG1B,UAAM,wBAAwB,MAAM;AAClC,sBAAgB,QAAQ;AAAA,IAAA;AAGpB,UAAA,qBAAqB,CAAC,MAAW;AACrC,kBAAY,KAAK,UAAU;AAAA,IAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
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,
|
|
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 = {
|
|
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
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
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
|
-
]
|
|
179
|
+
])
|
|
173
180
|
]),
|
|
174
|
-
|
|
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":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgFA,UAAM,QAAQ;AAQR,UAAA,sBAAsB,IAAI,KAAK;AAErC,QAAI,kBAA0B,CAAA;AACxB,UAAA,gBAAgB,IAAI,CAAA,CAAc;AAExC,UAAM,kBAAkB,SAAS,MAAM,MAAM,eAAe;AAE5D,UAAM,mBAAmB;AAAA,MACvB,MAAM,MAAM,eAAe,EAAE;AAAA,IAAA;AAG/B,UAAM,sBAAsB;AAAA,MAC1B,MAAM,MAAM,eAAe,EAAE,mBAAmB;AAAA,IAAA;AAGlD,UAAM,oBAAoB,YAAY;AACpC,YAAM,YAAY,MAAM,aAAa,QAAQ,YAAY;AAAA,QACvD,MAAM;AAAA,MACP,CAAA,EAAE;AAAA,QACD,MAAM;AAAA,QACN,MAAM;AAAA,MAAA;AAGR,UAAI,CAAC,WAAW;AACd;AAAA,MACF;AAEM,YAAA,eAAe,EAAE;IAAyB;AAGlD,UAAM,aAAa,MAAM;AACjB,YAAA,eAAe,EAAE;IAAe;AAGxC,UAAM,0BAA0B,MAAM;AAC9B,YAAA,eAAe,EAAE;IAAa;AAGtC,UAAM,wBAAwB,MAAM;AAC5B,YAAA,eAAe,EAAE,mBAAmB;AACpC,YAAA,eAAe,EAAE,kBAAkB;AAAA,IAAA;AAoB3C,UAAM,iBAAiB,MAAM;AACrB,YAAA,eAAe,EAAE;IAAuB;AAG1C,UAAA,aAAa,OAAO,UAAqB;;AAC7C,wBAAkB,CAAA;AAEd,UAAA,UAAS,WAAM,iBAAN,mBAAoB;AAEjC,UAAI,kBAAkB,OAAQ,CAAC,EAAE,iBAAiB;AAElD,YAAM,kBAAkB,OAAO,MAAW,OAAe,OAAO;AAC9D,YAAI,KAAK,QAAQ;AACR,iBAAA;AAAA,YACL,MAAM,IAAI,QAAQ,CAAC,YAAY;AACxB,mBAAA,KAAK,CAAC,SAAe;AACxB;AAAA,kBACE,IAAI,KAAK,CAAC,IAAI,GAAG,GAAG,IAAI,GAAG,KAAK,IAAI,IAAI,EAAE,MAAM,KAAK,MAAM;AAAA,gBAAA;AAAA,cAC7D,CACD;AAAA,YAAA,CACF;AAAA,UAAA;AAAA,QACH,WACS,KAAK,aAAa;AACvB,cAAA,kBAAkB,KAAK;AAE3B,gBAAM,UAAW,MAAM,IAAI,QAAQ,CAAC,YAAY;AAC9C,4BAAgB,YAAY,OAAO;AAAA,UAAA,CACpC;AAED,cAAI,SAAiB,CAAA;AAErB,mBAAS,IAAI,GAAG,IAAI,QAAQ,QAAQ,KAAK;AACvC,qBAAS,OAAO;AAAA,cACd,MAAM,gBAAgB,QAAQ,CAAC,GAAG,GAAG,IAAI,GAAG,KAAK,IAAI,GAAG;AAAA,YAAA;AAAA,UAE5D;AAEO,iBAAA;AAAA,QACT;AAEA,eAAO;MAAC;AAGV,YAAM,QAAS,kBAAkB,MAAM,gBAAgB,eAAe;AAElE,UAAA;AACI,cAAA,eAAe,EAAE,eAAe,aAAa;AAEnD,cAAM,gBAAgB,MAAM,MAAM,eAAe,EAAE;AAAA,UACjD,MAAM,IAAI,CAAC,SAAS,KAAK,IAAI;AAAA,QAAA;AAG3B,YAAA,cAAc,KAAK,SAAS,KAAK;AACnC,oBAAU,MAAM,EAAE,SAAS,cAAc,KAAK,KAAK;AACnD;AAAA,QACF;AAEA,cAAI,mBAAc,KAAK,SAAnB,mBAAyB,YAAW,GAAG;AACzC,gBAAM,MAAM,eAAe,EAAE,mBAAmB,KAAK;AAErD,4BAAkB,CAAA;AAClB;AAAA,QACF;AACA,sBAAc,QAAQ,cAAc,KAAK,QAAQ,CAAA;AAEjD,4BAAoB,QAAQ;AAAA,eACrB,GAAG;AACV,gBAAQ,IAAI,CAAC;AACb,kBAAU,MAAM,WAAW;AAAA,MAAA,UAC3B;AACM,cAAA,eAAe,EAAE,eAAe,gBAAgB;AAAA,MACxD;AAAA,IAAA;AAGF,UAAM,4BAA4B,YAAY;AACxC,UAAA;AACF,cAAM,MAAM,eAAe,EAAE,mBAAmB,eAAe;AAAA,eACxD,GAAG;AACV,gBAAQ,IAAI,CAAC;AACb,kBAAU,MAAM,WAAW;AAAA,MAC7B;AAEwB;IAAA;AAG1B,UAAM,wBAAwB,YAAY;AACpC,UAAA;AACF,cAAM,QAAQ,gBAAgB;AAAA,UAC5B,CAAC,SAAS,CAAC,MAAM,aAAa,EAAE,SAAS,KAAK,IAAI;AAAA,QAAA;AAEpD,YAAI,MAAM,QAAQ;AAChB,gBAAM,MAAM,eAAe,EAAE,mBAAmB,KAAK;AAAA,QACvD;AAAA,eACO,GAAG;AACV,gBAAQ,IAAI,CAAC;AACb,kBAAU,MAAM,WAAW;AAAA,MAC7B;AAEwB;IAAA;AAG1B,UAAM,0BAA0B,MAAM;AACpC,0BAAoB,QAAQ;AAC5B,oBAAc,QAAQ;AACtB,wBAAkB,CAAA;AAAA,IAAC;AAGrB,cAAU,MAAM;AACR,YAAA,eAAe,EAAE;IAAqB,CAC7C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
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":";;
|
|
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:
|
|
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,
|