@maketribe/ms-app 3.2.16 → 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/basic/data-table-select/data-table-select.js +3 -0
- package/dist/cjs/components/basic/data-table-select/data-table-select.js.map +1 -1
- package/dist/cjs/components/basic/doc-editor/editor.vue.js +16 -3
- package/dist/cjs/components/basic/doc-editor/editor.vue.js.map +1 -1
- package/dist/cjs/components/business/resource-manager/resource-manager.vue.js +51 -32
- package/dist/cjs/components/business/resource-manager/resource-manager.vue.js.map +1 -1
- package/dist/cjs/components/business/verify-dialog/index.js +4 -5
- package/dist/cjs/components/business/verify-dialog/index.js.map +1 -1
- package/dist/cjs/components/business/verify-dialog/verify-dialog-api.js +28 -0
- package/dist/cjs/components/business/verify-dialog/verify-dialog-api.js.map +1 -0
- package/dist/cjs/components/business/verify-dialog/verify-dialog-option.js +0 -4
- package/dist/cjs/components/business/verify-dialog/verify-dialog-option.js.map +1 -1
- package/dist/cjs/components/business/verify-dialog/{verify-dialog.js → verify-panel.js} +46 -55
- package/dist/cjs/components/business/verify-dialog/verify-panel.js.map +1 -0
- package/dist/cjs/components/data-model/data-form/components/form-detail/form-detail.js +5 -3
- package/dist/cjs/components/data-model/data-form/components/form-detail/form-detail.js.map +1 -1
- package/dist/cjs/components/data-model/data-form/views/form/form.js +1 -0
- package/dist/cjs/components/data-model/data-form/views/form/form.js.map +1 -1
- package/dist/cjs/index.js +1 -1
- package/dist/cjs/installer.js +28 -19
- package/dist/cjs/installer.js.map +1 -1
- package/dist/cjs/layouts/components/bar/index.js +4 -4
- package/dist/cjs/layouts/components/header/tools.js +15 -24
- package/dist/cjs/layouts/components/header/tools.js.map +1 -1
- package/dist/cjs/layouts/components/menu/menu-item.js +5 -5
- package/dist/cjs/layouts/container/default.js +6 -6
- package/dist/cjs/layouts/container/default.js.map +1 -1
- package/dist/cjs/message-impl/DialogerImpl.js +4 -2
- package/dist/cjs/message-impl/DialogerImpl.js.map +1 -1
- package/dist/cjs/modules/cms/components/part-tree/index.vue.js +2 -2
- package/dist/cjs/modules/cms/dataviews/cms-ad-contents/CmsAdContentsForm.js +1 -1
- package/dist/cjs/modules/cms/dataviews/cms-articles/CmsArticlesForm.js +1 -1
- package/dist/cjs/modules/cms/dataviews/cms-articles/cms-article-atlas/CmsArticleAtlasForm.js +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-ad/index.vue2.js +1 -1
- package/dist/cjs/modules/cms/pages/cms-contents/article-edit-add-page.vue2.js +9 -7
- package/dist/cjs/modules/cms/pages/cms-contents/article-edit-add-page.vue2.js.map +1 -1
- package/dist/cjs/modules/cms/pages/cms-contents/components/article-atlas.vue.js +4 -1
- package/dist/cjs/modules/cms/pages/cms-contents/components/article-atlas.vue.js.map +1 -1
- package/dist/cjs/modules/cms/pages/cms-contents/components/article-list.vue.js +4 -4
- package/dist/cjs/modules/cms/pages/cms-contents/components/part-info.vue.js +5 -2
- package/dist/cjs/modules/cms/pages/cms-contents/components/part-info.vue.js.map +1 -1
- package/dist/cjs/modules/cms/pages/cms-contents/index.vue2.js +5 -5
- package/dist/cjs/modules/cms/pages/cms-resource/index.vue2.js +9 -6
- package/dist/cjs/modules/cms/pages/cms-resource/index.vue2.js.map +1 -1
- package/dist/cjs/modules/ms/components/material-list/material-list-options.js +1 -1
- package/dist/cjs/modules/ms/components/material-list/material-list.js +1 -1
- package/dist/cjs/modules/ms/components/material-select/material-select-api.js +1 -1
- package/dist/cjs/modules/ms/dataviews/log/local-log/LocalLogTree.js +29 -38
- package/dist/cjs/modules/ms/dataviews/log/local-log/LocalLogTree.js.map +1 -1
- package/dist/cjs/modules/ms/dataviews/ms-config/MsConfigTable.js +1 -1
- package/dist/cjs/modules/ms/dataviews/ms-config/MsConfigTable.js.map +1 -1
- package/dist/cjs/modules/ms/dataviews/ms-member/components/MemberRolesColumn.js +5 -2
- package/dist/cjs/modules/ms/dataviews/ms-member/components/MemberRolesColumn.js.map +1 -1
- package/dist/cjs/modules/ms/pages/icons/index.vue2.js +5 -2
- package/dist/cjs/modules/ms/pages/icons/index.vue2.js.map +1 -1
- package/dist/cjs/modules/ms/pages/local-log/index.vue2.js +1 -1
- package/dist/cjs/modules/ms/pages/ms-material/index.vue2.js +5 -5
- package/dist/cjs/modules/ms/pages/ms-menu/index.vue2.js +2 -2
- package/dist/cjs/modules/ms/pages/ms-role/components/aside.vue.js +4 -4
- package/dist/cjs/modules/ms/pages/ms-role/components/role-permission-config/role-permission-config-options.js +1 -1
- package/dist/cjs/modules/ms/pages/ms-role/index.vue2.js +4 -4
- package/dist/cjs/page/index/dv/default/edit.vue2.js +1 -1
- package/dist/cjs/page/index/dv/default/single/list/dialog.vue2.js +4 -4
- package/dist/cjs/page/index/dv/default/single/list/normal.vue2.js +4 -4
- package/dist/cjs/page/index/dv/default/single/table-tree/dialog.vue2.js +2 -2
- package/dist/cjs/page/index/dv/default/single/table-tree/normal.vue2.js +2 -2
- package/dist/cjs/page/index/dv/default/single/tree/dialog.vue2.js +4 -4
- package/dist/cjs/page/index/dv/default/table.vue2.js +1 -1
- package/dist/cjs/page/login/index.vue2.js +123 -140
- package/dist/cjs/page/login/index.vue2.js.map +1 -1
- package/dist/cjs/page/signup/index.vue2.js +112 -139
- package/dist/cjs/page/signup/index.vue2.js.map +1 -1
- package/dist/esm/components/basic/data-table-select/data-table-select.js +3 -0
- package/dist/esm/components/basic/data-table-select/data-table-select.js.map +1 -1
- package/dist/esm/components/basic/doc-editor/editor.vue.js +16 -3
- package/dist/esm/components/basic/doc-editor/editor.vue.js.map +1 -1
- package/dist/esm/components/business/resource-manager/resource-manager.vue.js +52 -33
- package/dist/esm/components/business/resource-manager/resource-manager.vue.js.map +1 -1
- package/dist/esm/components/business/verify-dialog/index.js +4 -5
- package/dist/esm/components/business/verify-dialog/index.js.map +1 -1
- package/dist/esm/components/business/verify-dialog/verify-dialog-api.js +29 -0
- package/dist/esm/components/business/verify-dialog/verify-dialog-api.js.map +1 -0
- package/dist/esm/components/business/verify-dialog/verify-dialog-option.js +0 -4
- package/dist/esm/components/business/verify-dialog/verify-dialog-option.js.map +1 -1
- package/dist/esm/components/business/verify-dialog/{verify-dialog.js → verify-panel.js} +47 -56
- package/dist/esm/components/business/verify-dialog/verify-panel.js.map +1 -0
- package/dist/esm/components/data-model/data-form/components/form-detail/form-detail.js +5 -3
- package/dist/esm/components/data-model/data-form/components/form-detail/form-detail.js.map +1 -1
- package/dist/esm/components/data-model/data-form/views/form/form.js +1 -0
- package/dist/esm/components/data-model/data-form/views/form/form.js.map +1 -1
- package/dist/esm/index.js +2 -2
- package/dist/esm/installer.js +12 -3
- package/dist/esm/installer.js.map +1 -1
- package/dist/esm/layouts/components/bar/index.js +4 -4
- package/dist/esm/layouts/components/header/tools.js +11 -20
- package/dist/esm/layouts/components/header/tools.js.map +1 -1
- package/dist/esm/layouts/components/menu/menu-item.js +5 -5
- package/dist/esm/layouts/container/default.js +6 -6
- package/dist/esm/layouts/container/default.js.map +1 -1
- package/dist/esm/message-impl/DialogerImpl.js +4 -2
- package/dist/esm/message-impl/DialogerImpl.js.map +1 -1
- package/dist/esm/modules/cms/components/part-tree/index.vue.js +2 -2
- package/dist/esm/modules/cms/dataviews/cms-ad-contents/CmsAdContentsForm.js +1 -1
- package/dist/esm/modules/cms/dataviews/cms-articles/CmsArticlesForm.js +1 -1
- package/dist/esm/modules/cms/dataviews/cms-articles/cms-article-atlas/CmsArticleAtlasForm.js +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-ad/index.vue2.js +1 -1
- package/dist/esm/modules/cms/pages/cms-contents/article-edit-add-page.vue2.js +9 -7
- package/dist/esm/modules/cms/pages/cms-contents/article-edit-add-page.vue2.js.map +1 -1
- package/dist/esm/modules/cms/pages/cms-contents/components/article-atlas.vue.js +4 -1
- package/dist/esm/modules/cms/pages/cms-contents/components/article-atlas.vue.js.map +1 -1
- package/dist/esm/modules/cms/pages/cms-contents/components/article-list.vue.js +4 -4
- package/dist/esm/modules/cms/pages/cms-contents/components/part-info.vue.js +5 -2
- package/dist/esm/modules/cms/pages/cms-contents/components/part-info.vue.js.map +1 -1
- package/dist/esm/modules/cms/pages/cms-contents/index.vue2.js +5 -5
- package/dist/esm/modules/cms/pages/cms-resource/index.vue2.js +9 -6
- package/dist/esm/modules/cms/pages/cms-resource/index.vue2.js.map +1 -1
- package/dist/esm/modules/ms/components/material-list/material-list-options.js +1 -1
- package/dist/esm/modules/ms/components/material-list/material-list.js +1 -1
- package/dist/esm/modules/ms/components/material-select/material-select-api.js +1 -1
- package/dist/esm/modules/ms/dataviews/log/local-log/LocalLogTree.js +30 -39
- package/dist/esm/modules/ms/dataviews/log/local-log/LocalLogTree.js.map +1 -1
- package/dist/esm/modules/ms/dataviews/ms-config/MsConfigTable.js +1 -1
- package/dist/esm/modules/ms/dataviews/ms-config/MsConfigTable.js.map +1 -1
- package/dist/esm/modules/ms/dataviews/ms-member/components/MemberRolesColumn.js +5 -2
- package/dist/esm/modules/ms/dataviews/ms-member/components/MemberRolesColumn.js.map +1 -1
- package/dist/esm/modules/ms/pages/icons/index.vue2.js +5 -2
- package/dist/esm/modules/ms/pages/icons/index.vue2.js.map +1 -1
- package/dist/esm/modules/ms/pages/local-log/index.vue2.js +1 -1
- package/dist/esm/modules/ms/pages/ms-material/index.vue2.js +5 -5
- package/dist/esm/modules/ms/pages/ms-menu/index.vue2.js +2 -2
- package/dist/esm/modules/ms/pages/ms-role/components/aside.vue.js +4 -4
- package/dist/esm/modules/ms/pages/ms-role/components/role-permission-config/role-permission-config-options.js +1 -1
- package/dist/esm/modules/ms/pages/ms-role/index.vue2.js +4 -4
- package/dist/esm/page/index/dv/default/edit.vue2.js +1 -1
- package/dist/esm/page/index/dv/default/single/list/dialog.vue2.js +4 -4
- package/dist/esm/page/index/dv/default/single/list/normal.vue2.js +4 -4
- package/dist/esm/page/index/dv/default/single/table-tree/dialog.vue2.js +2 -2
- package/dist/esm/page/index/dv/default/single/table-tree/normal.vue2.js +2 -2
- package/dist/esm/page/index/dv/default/single/tree/dialog.vue2.js +4 -4
- package/dist/esm/page/index/dv/default/table.vue2.js +1 -1
- package/dist/esm/page/login/index.vue2.js +125 -142
- package/dist/esm/page/login/index.vue2.js.map +1 -1
- package/dist/esm/page/signup/index.vue2.js +114 -141
- package/dist/esm/page/signup/index.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/pages/cms-contents/index.css +1 -1
- package/dist/style/modules/cms/resource-manager.css +1 -1
- package/dist/style/src/modules/cms/pages/cms-contents/index.scss +1 -1
- package/dist/style/src/modules/cms/resource-manager.scss +0 -6
- package/dist/types/components/basic/doc-editor/editor.vue.d.ts +18 -0
- package/dist/types/components/basic/doc-editor/index.d.ts +38 -0
- package/dist/types/components/business/resource-manager/index.d.ts +25 -3
- package/dist/types/components/business/resource-manager/resource-manager.vue.d.ts +11 -1
- package/dist/types/components/business/verify-dialog/index.d.ts +3 -38
- package/dist/types/components/business/verify-dialog/verify-dialog-api.d.ts +7 -0
- package/dist/types/components/business/verify-dialog/verify-dialog-option.d.ts +0 -6
- package/dist/types/components/business/verify-dialog/{verify-dialog.d.ts → verify-panel.d.ts} +0 -12
- package/dist/types/modules/ms/dataviews/log/local-log/LocalLogTree.d.ts +1 -2
- package/package.json +4 -4
- package/dist/cjs/components/business/verify-dialog/verify-dialog.js.map +0 -1
- package/dist/esm/components/business/verify-dialog/verify-dialog.js.map +0 -1
|
@@ -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":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4KM,UAAA,cAAc,eAAe,IAAI;AAEvC,UAAM,QAAQ;AACd,UAAM,SAAS;AAIf,UAAM,cAAc,SAAS,IAAI,gBAAiB,CAAA;AAC5C,UAAA,uBAAuB,IAAI,SAAS;AAI1C,UAAM,QAAQ,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,WAAW,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,iBAAiB,IAAI,IAAI;AAE/B,UAAM,OAAO,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,cAAc,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,OAAO,IAAI,CAAA,CAAE;AAMnB,UAAM,UAAU,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,QAAQ,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;AAGF,cAAU,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,kBAAkB,IAAI,IAAI;AAChC,UAAM,gBAAgB;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":[],"mappings":"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"}
|
|
@@ -30,7 +30,10 @@ import "../../../../../components/basic/image-cropper/index.js";
|
|
|
30
30
|
import { MKDataForm } from "../../../../../components/data-model/data-form/index.js";
|
|
31
31
|
import "../../../../../components/data-model/data-table/index.js";
|
|
32
32
|
import "../../../../../components/data-model/data-table-pagination/index.js";
|
|
33
|
-
import "
|
|
33
|
+
import "vue-router";
|
|
34
|
+
import "@maketribe/locale";
|
|
35
|
+
import "../../../../../core/DataModelDefines.js";
|
|
36
|
+
import "../../../../../components/business/verify-dialog/verify-dialog-option.js";
|
|
34
37
|
import "../../../../../components/business/resource-list/index.js";
|
|
35
38
|
import "../../../../../components/business/resource-manager/index.js";
|
|
36
39
|
import { MKForm } from "../../../../../components/data-model/data-form/views/form/index.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"article-atlas.vue.js","sources":["../../../../../../../src/modules/cms/pages/cms-contents/components/article-atlas.vue"],"sourcesContent":["<template>\r\n <el-card class=\"cms-article-atlas\">\r\n <template #header>\r\n <div @click=\"showAtlasFormHandle()\" class=\"cms-article-atlas__header\">\r\n <span>\r\n <MKSvgIcon iconClass=\"Picture\" style=\"margin-right: 5px;\" />\r\n 文章媒体库\r\n </span>\r\n <MKSvgIcon class=\"cms-article-atlas__header__btn\" iconClass=\"Plus\" style=\"color: #409EFF;\" />\r\n </div>\r\n </template>\r\n <el-empty v-if=\"atlas.length <= 0\" description=\"暂无内容\" />\r\n <el-scrollbar class=\"cms-article-atlas__list\" v-else>\r\n <el-card class=\"cms-article-atlas__list__item\" v-for=\"(item, index) in atlas\" :key=\"item.id\">\r\n <el-image class=\"images\" :src=\"item.path\" v-if=\"item.type == 1\" fit=\"contain\">\r\n <div slot=\"placeholder\" class=\"image-slot\">\r\n 加载中<span class=\"dot\">...</span>\r\n </div>\r\n </el-image>\r\n <video class=\"video\" v-if=\"item.type == 2\" :src=\"item.path\" controls></video>\r\n <div class=\"cms-article-atlas__list__item__desc\">\r\n <div class=\"item-desc-left\">\r\n <div class=\"title ellipsis\">\r\n <MKSvgIcon class=\"icon\" v-if=\"item.type == 1\" iconClass=\"Picture\"></MKSvgIcon>\r\n <MKSvgIcon class=\"icon\" v-if=\"item.type == 2\" iconClass=\"VideoCamera\"></MKSvgIcon>\r\n <span :title=\"item.title\">{{ item.title }}</span>\r\n </div>\r\n <div class=\"external-links ellipsis\">\r\n <MKSvgIcon class=\"icon\" v-if=\"item.link\" iconClass=\"Link\"></MKSvgIcon>\r\n <a :href=\"item.link\" target=\"_blank\" :title=\"item.path\">{{ item.link }}</a>\r\n </div>\r\n </div>\r\n <el-dropdown trigger=\"click\" :teleported=\"false\" class=\"item-desc-right\">\r\n <span class=\"el-dropdown-link\">\r\n 更多<el-icon class=\"el-icon--right\"><arrow-down /></el-icon>\r\n </span>\r\n <template #dropdown>\r\n <el-dropdown-menu>\r\n <el-dropdown-item class=\"edit-button\" :icon=\"EditPen\" @click=\"editHandle(item)\">编辑</el-dropdown-item>\r\n <el-dropdown-item class=\"delete-button\" :icon=\"Delete\"\r\n @click=\"deleteHandle(index)\">删除</el-dropdown-item>\r\n </el-dropdown-menu>\r\n </template>\r\n </el-dropdown>\r\n </div>\r\n </el-card>\r\n <el-dialog v-model=\"formVisible\" append-to-body>\r\n <MKDataForm :dataForm=\"atlasDv\">\r\n <MKForm></MKForm>\r\n </MKDataForm>\r\n <template #footer>\r\n <el-button type=\"primary\" @click=\"saveAlatsHandle\">保存</el-button>\r\n <el-button @click=\"formVisible = false\"> 取消 </el-button>\r\n </template>\r\n </el-dialog>\r\n\r\n </el-scrollbar>\r\n </el-card>\r\n</template>\r\n<script setup lang='ts'>\r\nimport { onMounted, computed, ref, defineProps, watch, reactive } from \"vue\";\r\nimport { EditPen, ArrowDown, Delete } from \"@element-plus/icons-vue\"\r\nimport { CmsArticleAtlasForm } from \"../../../dataviews/cms-articles/cms-article-atlas\";\r\nimport { MKDataForm, MKForm } from \"../../../../../components\";\r\n\r\n// 参数\r\nconst props = defineProps({\r\n articleId: { type: Number, default: \"\" },\r\n modelValue: { type: Array<any>, default: () => [] },\r\n})\r\nconst emit = defineEmits([\"update:modelValue\"])\r\n//atlas表单\r\nconst atlasDv = reactive(new CmsArticleAtlasForm()) as CmsArticleAtlasForm;\r\nconst formVisible = ref(false);\r\n\r\nconst imgExtension = [\".jpg\", \".png\", \".gif\", \".jpeg\", \".bmp\", \".webp\", \".svg\", \".tiff\", \".tif\", \".ico\", \".jfif\", \".jpe\"]\r\nconst videoExtension = [\".mp4\", \".avi\", \".rmvb\", \".flv\", \".mkv\", \".wmv\", \".mov\", \".webm\", \".m4v\", \".mpg\", \".mpeg\", \".mts\", \".m2ts\", \".m2v\", \".mpe\", \".mpv\", \".vob\", \".ogv\", \".3gp\", \".3g2\", \".3gpp\", \".3gpp2\", \".3gp2\"]\r\n\r\n\r\n//图集数据\r\nconst atlas = computed(\r\n () => {\r\n const _arr = props.modelValue.map((item, index) => {\r\n const extension = item.path.slice(item.path.lastIndexOf(\".\"))\r\n let type = 0;\r\n if (imgExtension.includes(extension)) {\r\n type = 1\r\n } else if (videoExtension.includes(extension)) {\r\n type = 2\r\n }\r\n return { ...item, type, uid: item.title + index }\r\n })\r\n return _arr\r\n },\r\n);\r\n\r\n\r\n(window as any).atlasDv = atlasDv;\r\n(window as any).atlas = atlas;\r\n(window as any).modelValue = props.modelValue;\r\n/***\r\n * 展示atlas表单\r\n */\r\nconst showAtlasFormHandle = () => {\r\n formVisible.value = true;\r\n atlasDv.addRecord({\r\n cmsArticlesId: props.articleId\r\n })\r\n}\r\n\r\n//重置atlas表单\r\nwatch(formVisible, (v) => {\r\n atlasDv.reset();\r\n})\r\n\r\n/**\r\n * 保存\r\n */\r\nconst saveAlatsHandle = async () => {\r\n if (atlasDv.data.uid) {\r\n const index = atlas.value.findIndex(item => item.uid == atlasDv.data.uid)\r\n atlas.value[index] = { ...atlas.value[index], ...atlasDv.data }\r\n } else {\r\n atlas.value.push(atlasDv.data)\r\n }\r\n\r\n emit(\"update:modelValue\", atlas.value)\r\n formVisible.value = false;\r\n}\r\n/**\r\n * 删除\r\n */\r\nconst deleteHandle = (index: number) => {\r\n atlas.value.splice(index, 1)\r\n emit(\"update:modelValue\", atlas.value)\r\n}\r\n\r\nconst editHandle = (item: any) => {\r\n atlasDv.addRecord(item)\r\n formVisible.value = true;\r\n}\r\n// 挂在完成之后\r\nonMounted(async () => {\r\n await atlasDv.init();\r\n})\r\n\r\n</script>\r\n"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"article-atlas.vue.js","sources":["../../../../../../../src/modules/cms/pages/cms-contents/components/article-atlas.vue"],"sourcesContent":["<template>\r\n <el-card class=\"cms-article-atlas\">\r\n <template #header>\r\n <div @click=\"showAtlasFormHandle()\" class=\"cms-article-atlas__header\">\r\n <span>\r\n <MKSvgIcon iconClass=\"Picture\" style=\"margin-right: 5px;\" />\r\n 文章媒体库\r\n </span>\r\n <MKSvgIcon class=\"cms-article-atlas__header__btn\" iconClass=\"Plus\" style=\"color: #409EFF;\" />\r\n </div>\r\n </template>\r\n <el-empty v-if=\"atlas.length <= 0\" description=\"暂无内容\" />\r\n <el-scrollbar class=\"cms-article-atlas__list\" v-else>\r\n <el-card class=\"cms-article-atlas__list__item\" v-for=\"(item, index) in atlas\" :key=\"item.id\">\r\n <el-image class=\"images\" :src=\"item.path\" v-if=\"item.type == 1\" fit=\"contain\">\r\n <div slot=\"placeholder\" class=\"image-slot\">\r\n 加载中<span class=\"dot\">...</span>\r\n </div>\r\n </el-image>\r\n <video class=\"video\" v-if=\"item.type == 2\" :src=\"item.path\" controls></video>\r\n <div class=\"cms-article-atlas__list__item__desc\">\r\n <div class=\"item-desc-left\">\r\n <div class=\"title ellipsis\">\r\n <MKSvgIcon class=\"icon\" v-if=\"item.type == 1\" iconClass=\"Picture\"></MKSvgIcon>\r\n <MKSvgIcon class=\"icon\" v-if=\"item.type == 2\" iconClass=\"VideoCamera\"></MKSvgIcon>\r\n <span :title=\"item.title\">{{ item.title }}</span>\r\n </div>\r\n <div class=\"external-links ellipsis\">\r\n <MKSvgIcon class=\"icon\" v-if=\"item.link\" iconClass=\"Link\"></MKSvgIcon>\r\n <a :href=\"item.link\" target=\"_blank\" :title=\"item.path\">{{ item.link }}</a>\r\n </div>\r\n </div>\r\n <el-dropdown trigger=\"click\" :teleported=\"false\" class=\"item-desc-right\">\r\n <span class=\"el-dropdown-link\">\r\n 更多<el-icon class=\"el-icon--right\"><arrow-down /></el-icon>\r\n </span>\r\n <template #dropdown>\r\n <el-dropdown-menu>\r\n <el-dropdown-item class=\"edit-button\" :icon=\"EditPen\" @click=\"editHandle(item)\">编辑</el-dropdown-item>\r\n <el-dropdown-item class=\"delete-button\" :icon=\"Delete\"\r\n @click=\"deleteHandle(index)\">删除</el-dropdown-item>\r\n </el-dropdown-menu>\r\n </template>\r\n </el-dropdown>\r\n </div>\r\n </el-card>\r\n <el-dialog v-model=\"formVisible\" append-to-body>\r\n <MKDataForm :dataForm=\"atlasDv\">\r\n <MKForm></MKForm>\r\n </MKDataForm>\r\n <template #footer>\r\n <el-button type=\"primary\" @click=\"saveAlatsHandle\">保存</el-button>\r\n <el-button @click=\"formVisible = false\"> 取消 </el-button>\r\n </template>\r\n </el-dialog>\r\n\r\n </el-scrollbar>\r\n </el-card>\r\n</template>\r\n<script setup lang='ts'>\r\nimport { onMounted, computed, ref, defineProps, watch, reactive } from \"vue\";\r\nimport { EditPen, ArrowDown, Delete } from \"@element-plus/icons-vue\"\r\nimport { CmsArticleAtlasForm } from \"../../../dataviews/cms-articles/cms-article-atlas\";\r\nimport { MKDataForm, MKForm } from \"../../../../../components\";\r\n\r\n// 参数\r\nconst props = defineProps({\r\n articleId: { type: Number, default: \"\" },\r\n modelValue: { type: Array<any>, default: () => [] },\r\n})\r\nconst emit = defineEmits([\"update:modelValue\"])\r\n//atlas表单\r\nconst atlasDv = reactive(new CmsArticleAtlasForm()) as CmsArticleAtlasForm;\r\nconst formVisible = ref(false);\r\n\r\nconst imgExtension = [\".jpg\", \".png\", \".gif\", \".jpeg\", \".bmp\", \".webp\", \".svg\", \".tiff\", \".tif\", \".ico\", \".jfif\", \".jpe\"]\r\nconst videoExtension = [\".mp4\", \".avi\", \".rmvb\", \".flv\", \".mkv\", \".wmv\", \".mov\", \".webm\", \".m4v\", \".mpg\", \".mpeg\", \".mts\", \".m2ts\", \".m2v\", \".mpe\", \".mpv\", \".vob\", \".ogv\", \".3gp\", \".3g2\", \".3gpp\", \".3gpp2\", \".3gp2\"]\r\n\r\n\r\n//图集数据\r\nconst atlas = computed(\r\n () => {\r\n const _arr = props.modelValue.map((item, index) => {\r\n const extension = item.path.slice(item.path.lastIndexOf(\".\"))\r\n let type = 0;\r\n if (imgExtension.includes(extension)) {\r\n type = 1\r\n } else if (videoExtension.includes(extension)) {\r\n type = 2\r\n }\r\n return { ...item, type, uid: item.title + index }\r\n })\r\n return _arr\r\n },\r\n);\r\n\r\n\r\n(window as any).atlasDv = atlasDv;\r\n(window as any).atlas = atlas;\r\n(window as any).modelValue = props.modelValue;\r\n/***\r\n * 展示atlas表单\r\n */\r\nconst showAtlasFormHandle = () => {\r\n formVisible.value = true;\r\n atlasDv.addRecord({\r\n cmsArticlesId: props.articleId\r\n })\r\n}\r\n\r\n//重置atlas表单\r\nwatch(formVisible, (v) => {\r\n atlasDv.reset();\r\n})\r\n\r\n/**\r\n * 保存\r\n */\r\nconst saveAlatsHandle = async () => {\r\n if (atlasDv.data.uid) {\r\n const index = atlas.value.findIndex(item => item.uid == atlasDv.data.uid)\r\n atlas.value[index] = { ...atlas.value[index], ...atlasDv.data }\r\n } else {\r\n atlas.value.push(atlasDv.data)\r\n }\r\n\r\n emit(\"update:modelValue\", atlas.value)\r\n formVisible.value = false;\r\n}\r\n/**\r\n * 删除\r\n */\r\nconst deleteHandle = (index: number) => {\r\n atlas.value.splice(index, 1)\r\n emit(\"update:modelValue\", atlas.value)\r\n}\r\n\r\nconst editHandle = (item: any) => {\r\n atlasDv.addRecord(item)\r\n formVisible.value = true;\r\n}\r\n// 挂在完成之后\r\nonMounted(async () => {\r\n await atlasDv.init();\r\n})\r\n\r\n</script>\r\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAkEA,UAAM,QAAQ;AAId,UAAM,OAAO;AAEb,UAAM,UAAU,SAAS,IAAI,oBAAqB,CAAA;AAC5C,UAAA,cAAc,IAAI,KAAK;AAE7B,UAAM,eAAe,CAAC,QAAQ,QAAQ,QAAQ,SAAS,QAAQ,SAAS,QAAQ,SAAS,QAAQ,QAAQ,SAAS,MAAM;AAClH,UAAA,iBAAiB,CAAC,QAAQ,QAAQ,SAAS,QAAQ,QAAQ,QAAQ,QAAQ,SAAS,QAAQ,QAAQ,SAAS,QAAQ,SAAS,QAAQ,QAAQ,QAAQ,QAAQ,QAAQ,QAAQ,QAAQ,SAAS,UAAU,OAAO;AAItN,UAAM,QAAQ;AAAA,MACZ,MAAM;AACJ,cAAM,OAAO,MAAM,WAAW,IAAI,CAAC,MAAM,UAAU;AAC3C,gBAAA,YAAY,KAAK,KAAK,MAAM,KAAK,KAAK,YAAY,GAAG,CAAC;AAC5D,cAAI,OAAO;AACP,cAAA,aAAa,SAAS,SAAS,GAAG;AAC7B,mBAAA;AAAA,UACE,WAAA,eAAe,SAAS,SAAS,GAAG;AACtC,mBAAA;AAAA,UACT;AACA,iBAAO,EAAE,GAAG,MAAM,MAAM,KAAK,KAAK,QAAQ;QAAM,CACjD;AACM,eAAA;AAAA,MACT;AAAA,IAAA;AAID,WAAe,UAAU;AACzB,WAAe,QAAQ;AACvB,WAAe,aAAa,MAAM;AAInC,UAAM,sBAAsB,MAAM;AAChC,kBAAY,QAAQ;AACpB,cAAQ,UAAU;AAAA,QAChB,eAAe,MAAM;AAAA,MAAA,CACtB;AAAA,IAAA;AAIG,UAAA,aAAa,CAAC,MAAM;AACxB,cAAQ,MAAM;AAAA,IAAA,CACf;AAKD,UAAM,kBAAkB,YAAY;AAC9B,UAAA,QAAQ,KAAK,KAAK;AACd,cAAA,QAAQ,MAAM,MAAM,UAAU,UAAQ,KAAK,OAAO,QAAQ,KAAK,GAAG;AAClE,cAAA,MAAM,KAAK,IAAI,EAAE,GAAG,MAAM,MAAM,KAAK,GAAG,GAAG,QAAQ,KAAK;AAAA,MAAA,OACzD;AACC,cAAA,MAAM,KAAK,QAAQ,IAAI;AAAA,MAC/B;AAEK,WAAA,qBAAqB,MAAM,KAAK;AACrC,kBAAY,QAAQ;AAAA,IAAA;AAKhB,UAAA,eAAe,CAAC,UAAkB;AAChC,YAAA,MAAM,OAAO,OAAO,CAAC;AACtB,WAAA,qBAAqB,MAAM,KAAK;AAAA,IAAA;AAGjC,UAAA,aAAa,CAAC,SAAc;AAChC,cAAQ,UAAU,IAAI;AACtB,kBAAY,QAAQ;AAAA,IAAA;AAGtB,cAAU,YAAY;AACpB,YAAM,QAAQ;IAAK,CACpB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -27,13 +27,13 @@ import "../../../../../components/basic/image-cropper/index.js";
|
|
|
27
27
|
import "../../../../../components/data-model/data-form/index.js";
|
|
28
28
|
import "../../../../../components/data-model/data-table/index.js";
|
|
29
29
|
import "../../../../../components/data-model/data-table-pagination/index.js";
|
|
30
|
-
import "../../../../../components/business/verify-dialog/index.js";
|
|
31
|
-
import "../../../../../components/business/resource-list/index.js";
|
|
32
|
-
import "../../../../../components/business/resource-manager/index.js";
|
|
33
30
|
import { isWhereFilter, Dialoger, Messager } from "@maketribe/dm";
|
|
34
|
-
import "../../../../../core/DataModelDefines.js";
|
|
35
31
|
import { useRouter } from "vue-router";
|
|
36
32
|
import "@maketribe/locale";
|
|
33
|
+
import "../../../../../core/DataModelDefines.js";
|
|
34
|
+
import "../../../../../components/business/verify-dialog/verify-dialog-option.js";
|
|
35
|
+
import "../../../../../components/business/resource-list/index.js";
|
|
36
|
+
import "../../../../../components/business/resource-manager/index.js";
|
|
37
37
|
import "../../../../ms/dataviews/ms-config/MsConfigTable.js";
|
|
38
38
|
import "lodash-es";
|
|
39
39
|
import "../../../../ms/dataviews/department/DepartmentForm.js";
|
|
@@ -27,10 +27,13 @@ import "../../../../../components/basic/image-cropper/index.js";
|
|
|
27
27
|
import { MKDataForm } from "../../../../../components/data-model/data-form/index.js";
|
|
28
28
|
import "../../../../../components/data-model/data-table/index.js";
|
|
29
29
|
import "../../../../../components/data-model/data-table-pagination/index.js";
|
|
30
|
-
import "
|
|
30
|
+
import "@maketribe/dm";
|
|
31
|
+
import "vue-router";
|
|
32
|
+
import "@maketribe/locale";
|
|
33
|
+
import "../../../../../core/DataModelDefines.js";
|
|
34
|
+
import "../../../../../components/business/verify-dialog/verify-dialog-option.js";
|
|
31
35
|
import "../../../../../components/business/resource-list/index.js";
|
|
32
36
|
import "../../../../../components/business/resource-manager/index.js";
|
|
33
|
-
import "@maketribe/dm";
|
|
34
37
|
import { CmsPartForm } from "../../../dataviews/cms-parts/CmsPartForm.js";
|
|
35
38
|
import { useCmsSettings } from "../../../cms-settings.js";
|
|
36
39
|
import { MKDataFormItem } from "../../../../../components/data-model/data-form/data-form-item/index.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"part-info.vue.js","sources":["../../../../../../../src/modules/cms/pages/cms-contents/components/part-info.vue"],"sourcesContent":["<template>\r\n <div class=\"mk-cms-part-info\">\r\n <MKDataForm :dataForm=\"partDataForm\" style=\"height: 100%;\">\r\n <MKForm :dataForm=\"partDataForm\">\r\n <div class=\"mk-cms-part-info__body__form\">\r\n <div class=\"mk-cms-part-info__body__form-options\">\r\n <ElScrollbar>\r\n <MKDataFormItem name=\"cmsPartTypeId\" v-if=\"hideHandle('cmsPartTypeId')\"></MKDataFormItem>\r\n <MKDataFormItem name=\"parentId\" v-if=\"hideHandle('parentId')\"></MKDataFormItem>\r\n <MKDataFormItem name=\"cmsCoverArticleId\" v-if=\"hideHandle('cmsCoverArticleId')\">\r\n </MKDataFormItem>\r\n <MKDataFormItem name=\"title\" v-if=\"hideHandle('title')\"></MKDataFormItem>\r\n <MKDataFormItem name=\"name\" v-if=\"hideHandle('name')\"></MKDataFormItem>\r\n <MKDataFormItem name=\"externalLink\" v-if=\"hideHandle('externalLink')\">\r\n </MKDataFormItem>\r\n <el-row :gutter=\"22\" justify=\"space-between\">\r\n <el-col :span=\"10\" v-if=\"hideHandle('isShowMenu')\">\r\n <MKDataFormItem name=\"isShowMenu\"></MKDataFormItem>\r\n </el-col>\r\n <el-col :span=\"10\" v-if=\"hideHandle('isHome')\">\r\n <MKDataFormItem name=\"isHome\"></MKDataFormItem>\r\n </el-col>\r\n </el-row>\r\n <template v-if=\"CmsSettings.publish.mode == 'static'\">\r\n <el-divider content-position=\"left\" v-if=\"hideHandle('coverRouter')\">路由配置</el-divider>\r\n <MKDataFormItem name=\"coverRouter\" v-if=\"hideHandle('coverRouter')\"></MKDataFormItem>\r\n <MKDataFormItem name=\"listRouter\" v-if=\"hideHandle('listRouter')\"></MKDataFormItem>\r\n <MKDataFormItem name=\"contentRouter\" v-if=\"hideHandle('contentRouter')\"></MKDataFormItem>\r\n <el-divider content-position=\"left\" v-if=\"hideHandle('coverTemplate')\">模版配置</el-divider>\r\n <MKDataFormItem name=\"coverTemplate\" v-if=\"hideHandle('coverTemplate')\"></MKDataFormItem>\r\n <MKDataFormItem name=\"listTemplate\" v-if=\"hideHandle('listTemplate')\"></MKDataFormItem>\r\n <MKDataFormItem name=\"contentTemplate\" v-if=\"hideHandle('contentTemplate')\">\r\n </MKDataFormItem>\r\n <el-divider content-position=\"left\" v-if=\"hideHandle('seoKeywords')\">SEO</el-divider>\r\n <MKDataFormItem name=\"seoKeywords\" v-if=\"hideHandle('seoKeywords')\"></MKDataFormItem>\r\n <MKDataFormItem name=\"seoDesc\" v-if=\"hideHandle('seoDesc')\"></MKDataFormItem>\r\n </template>\r\n <el-divider content-position=\"left\">其他配置</el-divider>\r\n <MKDataFormItem name=\"sortNo\"></MKDataFormItem>\r\n </ElScrollbar>\r\n </div>\r\n </div>\r\n </MKForm>\r\n </MKDataForm>\r\n </div>\r\n</template>\r\n<script setup lang=\"ts\">\r\nimport { MKDataForm, MKForm, MKDataFormItem } from \"../../../../../components\";\r\nimport { CmsPartForm } from \"../../../dataviews/cms-parts/CmsPartForm\";\r\nimport { computed, reactive, Ref, watch } from \"vue\";\r\nimport { useCmsSettings } from \"../../../cms-settings\"\r\n// cms 配置\r\nconst CmsSettings = useCmsSettings();\r\nconst props = defineProps({\r\n part: {\r\n type: Object,\r\n default: () => {\r\n return {}\r\n }\r\n },\r\n partDataForm: {\r\n type: CmsPartForm,\r\n default: () => {\r\n return new CmsPartForm()\r\n }\r\n }\r\n})\r\n\r\n//监听保存成功事件\r\nprops.partDataForm.submittedEvent.on(() => {\r\n props.partDataForm.editRecord(props.part.id)\r\n})\r\n\r\n/**\r\n * 需要隐藏的行\r\n */\r\nconst hideHandle = (name: string) => {\r\n if (props.partDataForm.data.cmsPartTypeId == 1 && CmsPartForm.outerChainHideColumn.includes(name)) {\r\n return false;\r\n } \r\n else if (props.partDataForm.data.cmsPartTypeId == 2 && CmsPartForm.contentHideColumn.includes(name)) {\r\n return false;\r\n } \r\n else if (props.partDataForm.data.cmsPartTypeId == 3 && CmsPartForm.menuHideColumn.includes(name)) {\r\n props.partDataForm.data.isShowMenu = 1;\r\n return false;\r\n } \r\n else {\r\n return true;\r\n }\r\n}\r\n\r\n\r\n</script>\r\n<style lang='scss'></style>\r\n"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"part-info.vue.js","sources":["../../../../../../../src/modules/cms/pages/cms-contents/components/part-info.vue"],"sourcesContent":["<template>\r\n <div class=\"mk-cms-part-info\">\r\n <MKDataForm :dataForm=\"partDataForm\" style=\"height: 100%;\">\r\n <MKForm :dataForm=\"partDataForm\">\r\n <div class=\"mk-cms-part-info__body__form\">\r\n <div class=\"mk-cms-part-info__body__form-options\">\r\n <ElScrollbar>\r\n <MKDataFormItem name=\"cmsPartTypeId\" v-if=\"hideHandle('cmsPartTypeId')\"></MKDataFormItem>\r\n <MKDataFormItem name=\"parentId\" v-if=\"hideHandle('parentId')\"></MKDataFormItem>\r\n <MKDataFormItem name=\"cmsCoverArticleId\" v-if=\"hideHandle('cmsCoverArticleId')\">\r\n </MKDataFormItem>\r\n <MKDataFormItem name=\"title\" v-if=\"hideHandle('title')\"></MKDataFormItem>\r\n <MKDataFormItem name=\"name\" v-if=\"hideHandle('name')\"></MKDataFormItem>\r\n <MKDataFormItem name=\"externalLink\" v-if=\"hideHandle('externalLink')\">\r\n </MKDataFormItem>\r\n <el-row :gutter=\"22\" justify=\"space-between\">\r\n <el-col :span=\"10\" v-if=\"hideHandle('isShowMenu')\">\r\n <MKDataFormItem name=\"isShowMenu\"></MKDataFormItem>\r\n </el-col>\r\n <el-col :span=\"10\" v-if=\"hideHandle('isHome')\">\r\n <MKDataFormItem name=\"isHome\"></MKDataFormItem>\r\n </el-col>\r\n </el-row>\r\n <template v-if=\"CmsSettings.publish.mode == 'static'\">\r\n <el-divider content-position=\"left\" v-if=\"hideHandle('coverRouter')\">路由配置</el-divider>\r\n <MKDataFormItem name=\"coverRouter\" v-if=\"hideHandle('coverRouter')\"></MKDataFormItem>\r\n <MKDataFormItem name=\"listRouter\" v-if=\"hideHandle('listRouter')\"></MKDataFormItem>\r\n <MKDataFormItem name=\"contentRouter\" v-if=\"hideHandle('contentRouter')\"></MKDataFormItem>\r\n <el-divider content-position=\"left\" v-if=\"hideHandle('coverTemplate')\">模版配置</el-divider>\r\n <MKDataFormItem name=\"coverTemplate\" v-if=\"hideHandle('coverTemplate')\"></MKDataFormItem>\r\n <MKDataFormItem name=\"listTemplate\" v-if=\"hideHandle('listTemplate')\"></MKDataFormItem>\r\n <MKDataFormItem name=\"contentTemplate\" v-if=\"hideHandle('contentTemplate')\">\r\n </MKDataFormItem>\r\n <el-divider content-position=\"left\" v-if=\"hideHandle('seoKeywords')\">SEO</el-divider>\r\n <MKDataFormItem name=\"seoKeywords\" v-if=\"hideHandle('seoKeywords')\"></MKDataFormItem>\r\n <MKDataFormItem name=\"seoDesc\" v-if=\"hideHandle('seoDesc')\"></MKDataFormItem>\r\n </template>\r\n <el-divider content-position=\"left\">其他配置</el-divider>\r\n <MKDataFormItem name=\"sortNo\"></MKDataFormItem>\r\n </ElScrollbar>\r\n </div>\r\n </div>\r\n </MKForm>\r\n </MKDataForm>\r\n </div>\r\n</template>\r\n<script setup lang=\"ts\">\r\nimport { MKDataForm, MKForm, MKDataFormItem } from \"../../../../../components\";\r\nimport { CmsPartForm } from \"../../../dataviews/cms-parts/CmsPartForm\";\r\nimport { computed, reactive, Ref, watch } from \"vue\";\r\nimport { useCmsSettings } from \"../../../cms-settings\"\r\n// cms 配置\r\nconst CmsSettings = useCmsSettings();\r\nconst props = defineProps({\r\n part: {\r\n type: Object,\r\n default: () => {\r\n return {}\r\n }\r\n },\r\n partDataForm: {\r\n type: CmsPartForm,\r\n default: () => {\r\n return new CmsPartForm()\r\n }\r\n }\r\n})\r\n\r\n//监听保存成功事件\r\nprops.partDataForm.submittedEvent.on(() => {\r\n props.partDataForm.editRecord(props.part.id)\r\n})\r\n\r\n/**\r\n * 需要隐藏的行\r\n */\r\nconst hideHandle = (name: string) => {\r\n if (props.partDataForm.data.cmsPartTypeId == 1 && CmsPartForm.outerChainHideColumn.includes(name)) {\r\n return false;\r\n } \r\n else if (props.partDataForm.data.cmsPartTypeId == 2 && CmsPartForm.contentHideColumn.includes(name)) {\r\n return false;\r\n } \r\n else if (props.partDataForm.data.cmsPartTypeId == 3 && CmsPartForm.menuHideColumn.includes(name)) {\r\n props.partDataForm.data.isShowMenu = 1;\r\n return false;\r\n } \r\n else {\r\n return true;\r\n }\r\n}\r\n\r\n\r\n</script>\r\n<style lang='scss'></style>\r\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAoDA,UAAM,cAAc;AACpB,UAAM,QAAQ;AAgBR,UAAA,aAAa,eAAe,GAAG,MAAM;AACvC,YAAM,aAAa,WAAW,MAAM,KAAK,EAAE;AAAA,IAAA,CAC9C;AAKK,UAAA,aAAa,CAAC,SAAiB;AAC7B,UAAA,MAAM,aAAa,KAAK,iBAAiB,KAAK,YAAY,qBAAqB,SAAS,IAAI,GAAG;AACxF,eAAA;AAAA,MACX,WACS,MAAM,aAAa,KAAK,iBAAiB,KAAK,YAAY,kBAAkB,SAAS,IAAI,GAAG;AAC1F,eAAA;AAAA,MACX,WACS,MAAM,aAAa,KAAK,iBAAiB,KAAK,YAAY,eAAe,SAAS,IAAI,GAAG;AACxF,cAAA,aAAa,KAAK,aAAa;AAC9B,eAAA;AAAA,MAAA,OAEN;AACM,eAAA;AAAA,MACX;AAAA,IAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -30,14 +30,14 @@ import "../../../../components/basic/image-cropper/index.js";
|
|
|
30
30
|
import "../../../../components/data-model/data-form/index.js";
|
|
31
31
|
import "../../../../components/data-model/data-table/index.js";
|
|
32
32
|
import "../../../../components/data-model/data-table-pagination/index.js";
|
|
33
|
-
import "../../../../components/business/verify-dialog/index.js";
|
|
34
|
-
import "../../../../components/business/resource-list/index.js";
|
|
35
|
-
import "../../../../components/business/resource-manager/index.js";
|
|
36
33
|
import { Dialoger } from "@maketribe/dm";
|
|
37
|
-
import { CmsPartForm } from "../../dataviews/cms-parts/CmsPartForm.js";
|
|
38
|
-
import "../../../../core/DataModelDefines.js";
|
|
39
34
|
import { useRoute, useRouter } from "vue-router";
|
|
40
35
|
import "@maketribe/locale";
|
|
36
|
+
import "../../../../core/DataModelDefines.js";
|
|
37
|
+
import "../../../../components/business/verify-dialog/verify-dialog-option.js";
|
|
38
|
+
import "../../../../components/business/resource-list/index.js";
|
|
39
|
+
import "../../../../components/business/resource-manager/index.js";
|
|
40
|
+
import { CmsPartForm } from "../../dataviews/cms-parts/CmsPartForm.js";
|
|
41
41
|
import { CmsContentManPartForm } from "../../dataviews/cms-parts/CmsContentManPartForm.js";
|
|
42
42
|
import { CmsPartMiniForm } from "../../dataviews/cms-parts/CmsPartMiniForm.js";
|
|
43
43
|
import { usePartExtension } from "../../composables/part-extensions.js";
|
|
@@ -27,14 +27,14 @@ import "../../../../components/basic/image-cropper/index.js";
|
|
|
27
27
|
import "../../../../components/data-model/data-form/index.js";
|
|
28
28
|
import "../../../../components/data-model/data-table/index.js";
|
|
29
29
|
import "../../../../components/data-model/data-table-pagination/index.js";
|
|
30
|
-
import "../../../../components/business/verify-dialog/index.js";
|
|
31
|
-
import "../../../../components/business/resource-list/index.js";
|
|
32
|
-
import { MKResourceManager } from "../../../../components/business/resource-manager/index.js";
|
|
33
30
|
import "@maketribe/dm";
|
|
34
|
-
import { CmsPartForm } from "../../dataviews/cms-parts/CmsPartForm.js";
|
|
35
|
-
import "../../../../core/DataModelDefines.js";
|
|
36
31
|
import "vue-router";
|
|
37
32
|
import "@maketribe/locale";
|
|
33
|
+
import "../../../../core/DataModelDefines.js";
|
|
34
|
+
import "../../../../components/business/verify-dialog/verify-dialog-option.js";
|
|
35
|
+
import "../../../../components/business/resource-list/index.js";
|
|
36
|
+
import { MKResourceManager } from "../../../../components/business/resource-manager/index.js";
|
|
37
|
+
import { CmsPartForm } from "../../dataviews/cms-parts/CmsPartForm.js";
|
|
38
38
|
import { ResourceManager } from "../../../../components/business/resource-list/ResourceManager.js";
|
|
39
39
|
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
40
40
|
__name: "index",
|
|
@@ -60,7 +60,10 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
60
60
|
const _component_ElButton = resolveComponent("ElButton");
|
|
61
61
|
return openBlock(), createBlock(unref(MKPageContainer), null, {
|
|
62
62
|
default: withCtx(() => [
|
|
63
|
-
createVNode(unref(MKResourceManager), {
|
|
63
|
+
createVNode(unref(MKResourceManager), {
|
|
64
|
+
title: "模版资产管理",
|
|
65
|
+
resourceManager
|
|
66
|
+
}, {
|
|
64
67
|
tools: withCtx(() => [
|
|
65
68
|
createVNode(_component_ElButton, {
|
|
66
69
|
type: "primary",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.vue2.js","sources":["../../../../../../src/modules/cms/pages/cms-resource/index.vue"],"sourcesContent":["<template>\r\n <MKPageContainer>\r\n <MKResourceManager :resourceManager=\"resourceManager\">\r\n <template #tools>\r\n <ElButton type=\"primary\" @click=\"publishAssetsHandle\">发布资产</ElButton>\r\n <ElButton type=\"primary\" @click=\"publishAllHandle\">全站发布</ElButton>\r\n </template>\r\n </MKResourceManager>\r\n </MKPageContainer>\r\n</template>\r\n\r\n<script setup lang=\"ts\">\r\nimport { reactive } from \"vue\";\r\nimport {
|
|
1
|
+
{"version":3,"file":"index.vue2.js","sources":["../../../../../../src/modules/cms/pages/cms-resource/index.vue"],"sourcesContent":["<template>\r\n <MKPageContainer>\r\n <MKResourceManager title=\"模版资产管理\" :resourceManager=\"resourceManager\">\r\n <template #tools>\r\n <ElButton type=\"primary\" @click=\"publishAssetsHandle\">发布资产</ElButton>\r\n <ElButton type=\"primary\" @click=\"publishAllHandle\">全站发布</ElButton>\r\n </template>\r\n </MKResourceManager>\r\n </MKPageContainer>\r\n</template>\r\n\r\n<script setup lang=\"ts\">\r\nimport { reactive } from \"vue\";\r\nimport { MKPageContainer } from \"../../../../components\";\r\nimport { MKResourceManager, ResourceManager } from \"../../../../components\";\r\nimport { CmsPartForm } from \"../../dataviews/cms-parts\";\r\n\r\n// 创建cms模版资源管理器\r\nconst resourceManager = reactive(new ResourceManager({ baseURL: \"/cms/template/resource\" })) as ResourceManager;\r\n\r\n// 资源发布\r\nconst publishAssetsHandle = async () => {\r\n\r\n try {\r\n resourceManager.loadingManager.startLoading();\r\n CmsPartForm.publishAssets();\r\n } \r\n finally {\r\n resourceManager.loadingManager.completeLoading();\r\n }\r\n}\r\n//全站发布\r\n// 整站发布\r\nconst publishAllHandle = async () => {\r\n\r\n \r\n\r\n try {\r\n\r\n resourceManager.loadingManager.startLoading();\r\n\r\n await CmsPartForm.publishAll()\r\n\r\n\r\n } finally {\r\n resourceManager.loadingManager.completeLoading();\r\n }\r\n}\r\n</script>\r\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAkBM,UAAA,kBAAkB,SAAS,IAAI,gBAAgB,EAAE,SAAS,yBAA0B,CAAA,CAAC;AAG3F,UAAM,sBAAsB,YAAY;AAElC,UAAA;AACF,wBAAgB,eAAe;AAC/B,oBAAY,cAAc;AAAA,MAAA,UAE5B;AACE,wBAAgB,eAAe;MACjC;AAAA,IAAA;AAIF,UAAM,mBAAmB,YAAY;AAI/B,UAAA;AAEF,wBAAgB,eAAe;AAE/B,cAAM,YAAY;MAAW,UAG7B;AACA,wBAAgB,eAAe;MACjC;AAAA,IAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -32,7 +32,7 @@ import "../../../../components/basic/upload-file/upload-file-options.js";
|
|
|
32
32
|
import "../../../../components/basic/doc-editor/index.js";
|
|
33
33
|
import "../../../../components/basic/copy-container/index.js";
|
|
34
34
|
import "../../../../components/basic/image-cropper/index.js";
|
|
35
|
-
import "../../../../components/business/verify-dialog/
|
|
35
|
+
import "../../../../components/business/verify-dialog/verify-dialog-option.js";
|
|
36
36
|
import "../../../../components/business/resource-list/index.js";
|
|
37
37
|
import "../../../../components/business/resource-manager/index.js";
|
|
38
38
|
import "../../dataviews/ms-config/MsConfigTable.js";
|
|
@@ -36,7 +36,7 @@ import "../../../../components/basic/upload-file/upload-file-options.js";
|
|
|
36
36
|
import "../../../../components/basic/doc-editor/index.js";
|
|
37
37
|
import "../../../../components/basic/copy-container/index.js";
|
|
38
38
|
import "../../../../components/basic/image-cropper/index.js";
|
|
39
|
-
import "../../../../components/business/verify-dialog/
|
|
39
|
+
import "../../../../components/business/verify-dialog/verify-dialog-option.js";
|
|
40
40
|
import "../../../../components/business/resource-list/index.js";
|
|
41
41
|
import "../../../../components/business/resource-manager/index.js";
|
|
42
42
|
import "../../dataviews/ms-config/MsConfigTable.js";
|
|
@@ -33,7 +33,7 @@ import "../../../../components/basic/upload-file/upload-file-options.js";
|
|
|
33
33
|
import "../../../../components/basic/doc-editor/index.js";
|
|
34
34
|
import "../../../../components/basic/copy-container/index.js";
|
|
35
35
|
import "../../../../components/basic/image-cropper/index.js";
|
|
36
|
-
import "../../../../components/business/verify-dialog/
|
|
36
|
+
import "../../../../components/business/verify-dialog/verify-dialog-option.js";
|
|
37
37
|
import "../../../../components/business/resource-list/index.js";
|
|
38
38
|
import "../../../../components/business/resource-manager/index.js";
|
|
39
39
|
import "../../dataviews/ms-config/MsConfigTable.js";
|
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
import { DataTree
|
|
2
|
-
import { CancelToken } from "@maketribe/request";
|
|
1
|
+
import { DataTree } from "@maketribe/dm";
|
|
3
2
|
import { defineDataTree } from "../../../../../define-data-tree.js";
|
|
4
3
|
class LocalLogTree extends DataTree {
|
|
5
4
|
constructor(options = { props: { label: "name" } }) {
|
|
@@ -7,44 +6,36 @@ class LocalLogTree extends DataTree {
|
|
|
7
6
|
}
|
|
8
7
|
async initialize() {
|
|
9
8
|
await super.initialize();
|
|
10
|
-
this.afterInitdEvent.once(() => {
|
|
11
|
-
this.append(
|
|
12
|
-
this.createDataTreeNode({
|
|
13
|
-
name: "root",
|
|
14
|
-
path: "/",
|
|
15
|
-
isDirectory: true,
|
|
16
|
-
children: []
|
|
17
|
-
})
|
|
18
|
-
);
|
|
19
|
-
});
|
|
20
|
-
}
|
|
21
|
-
createDataTreeNode(data) {
|
|
22
|
-
const dataTreeNode = new class extends DataTreeNode {
|
|
23
|
-
get isLeaf() {
|
|
24
|
-
var _a;
|
|
25
|
-
return !(((_a = this.data) == null ? void 0 : _a.isDirectory) ?? false);
|
|
26
|
-
}
|
|
27
|
-
async loadRequest(params) {
|
|
28
|
-
const response = await this.httpRequest.get("/ms/system/local-log-dir-root", {
|
|
29
|
-
params: { ...params, path: this.data.path },
|
|
30
|
-
cancelToken: new CancelToken((cancel) => {
|
|
31
|
-
this.loadCancel = cancel;
|
|
32
|
-
})
|
|
33
|
-
});
|
|
34
|
-
response.data.data = response.data.data.map((item) => ({
|
|
35
|
-
name: item.name,
|
|
36
|
-
path: item.path,
|
|
37
|
-
isDirectory: item.isDirectory,
|
|
38
|
-
children: []
|
|
39
|
-
}));
|
|
40
|
-
this.loadCancel = null;
|
|
41
|
-
return response;
|
|
42
|
-
}
|
|
43
|
-
}({ name: this.name });
|
|
44
|
-
dataTreeNode.setTree(this);
|
|
45
|
-
dataTreeNode.setData(data);
|
|
46
|
-
return dataTreeNode;
|
|
47
9
|
}
|
|
10
|
+
// createDataTreeNode(data: LocalLog) {
|
|
11
|
+
// const dataTreeNode: DataTreeNode<LocalLog> =
|
|
12
|
+
// new (class extends DataTreeNode<LocalLog> {
|
|
13
|
+
// get isLeaf() {
|
|
14
|
+
// return !(this.data?.isDirectory ?? false);
|
|
15
|
+
// }
|
|
16
|
+
// protected async loadRequest(params: Record<string, any>) {
|
|
17
|
+
// const response = await this.httpRequest.get<
|
|
18
|
+
// R<LocalLog[]> & { totalRecCount: string }
|
|
19
|
+
// >("/ms/system/local-log-dir-root", {
|
|
20
|
+
// params: { ...params, path: this.data!.path },
|
|
21
|
+
// cancelToken: new CancelToken((cancel) => {
|
|
22
|
+
// this.loadCancel = cancel;
|
|
23
|
+
// }),
|
|
24
|
+
// });
|
|
25
|
+
// response.data.data = response.data.data.map((item) => ({
|
|
26
|
+
// name: item.name,
|
|
27
|
+
// path: item.path,
|
|
28
|
+
// isDirectory: item.isDirectory,
|
|
29
|
+
// children: [],
|
|
30
|
+
// })) as LocalLog[];
|
|
31
|
+
// this.loadCancel = null;
|
|
32
|
+
// return response;
|
|
33
|
+
// }
|
|
34
|
+
// })({ name: this.name });
|
|
35
|
+
// dataTreeNode.setTree(this);
|
|
36
|
+
// dataTreeNode.setData(data);
|
|
37
|
+
// return dataTreeNode;
|
|
38
|
+
// }
|
|
48
39
|
formatItem(item) {
|
|
49
40
|
return { ...item, children: [] };
|
|
50
41
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LocalLogTree.js","sources":["../../../../../../../src/modules/ms/dataviews/log/local-log/LocalLogTree.ts"],"sourcesContent":["import { DataTree, DataTreeNode, DataTreeOptions } from \"@maketribe/dm\";\nimport { R, CancelToken } from \"@maketribe/request\";\nimport { defineDataTree } from \"../../../../../define-data-tree\";\nimport { Event } from \"@maketribe/utils\";\n\nexport type LocalLog = {\n name: string;\n path: string;\n isDirectory: boolean;\n children: LocalLog[];\n};\n\nexport class LocalLogTree extends DataTree<LocalLog> {\n constructor(options: DataTreeOptions = { props: { label: \"name\" } }) {\n super({ name: \"local-log\", props: { label: \"path\" }, ...options });\n }\n\n protected async initialize(): Promise<void> {\n await super.initialize();\n\n this.afterInitdEvent.once(() => {\n
|
|
1
|
+
{"version":3,"file":"LocalLogTree.js","sources":["../../../../../../../src/modules/ms/dataviews/log/local-log/LocalLogTree.ts"],"sourcesContent":["import { DataTree, DataTreeNode, DataTreeOptions } from \"@maketribe/dm\";\nimport { R, CancelToken } from \"@maketribe/request\";\nimport { defineDataTree } from \"../../../../../define-data-tree\";\nimport { Event } from \"@maketribe/utils\";\n\nexport type LocalLog = {\n name: string;\n path: string;\n isDirectory: boolean;\n children: LocalLog[];\n};\n\nexport class LocalLogTree extends DataTree<LocalLog> {\n constructor(options: DataTreeOptions = { props: { label: \"name\" } }) {\n super({ name: \"local-log\", props: { label: \"path\" }, ...options });\n }\n\n protected async initialize(): Promise<void> {\n await super.initialize();\n\n // this.afterInitdEvent.once(() => {\n // this.append(\n // this.createDataTreeNode({\n // name: \"root\",\n // path: \"/\",\n // isDirectory: true,\n // children: [],\n // })\n // );\n // });\n }\n\n // createDataTreeNode(data: LocalLog) {\n // const dataTreeNode: DataTreeNode<LocalLog> =\n // new (class extends DataTreeNode<LocalLog> {\n // get isLeaf() {\n // return !(this.data?.isDirectory ?? false);\n // }\n\n // protected async loadRequest(params: Record<string, any>) {\n // const response = await this.httpRequest.get<\n // R<LocalLog[]> & { totalRecCount: string }\n // >(\"/ms/system/local-log-dir-root\", {\n // params: { ...params, path: this.data!.path },\n // cancelToken: new CancelToken((cancel) => {\n // this.loadCancel = cancel;\n // }),\n // });\n\n // response.data.data = response.data.data.map((item) => ({\n // name: item.name,\n // path: item.path,\n // isDirectory: item.isDirectory,\n // children: [],\n // })) as LocalLog[];\n\n // this.loadCancel = null;\n\n // return response;\n // }\n // })({ name: this.name });\n\n // dataTreeNode.setTree(this);\n\n // dataTreeNode.setData(data);\n\n // return dataTreeNode;\n // }\n\n formatItem(item: LocalLog): LocalLog {\n return { ...item, children: [] };\n }\n}\n\ndefineDataTree(LocalLogTree);\n"],"names":[],"mappings":";;AAYO,MAAM,qBAAqB,SAAmB;AAAA,EACnD,YAAY,UAA2B,EAAE,OAAO,EAAE,OAAO,OAAA,KAAY;AAC7D,UAAA,EAAE,MAAM,aAAa,OAAO,EAAE,OAAO,OAAO,GAAG,GAAG,QAAA,CAAS;AAAA,EACnE;AAAA,EAEA,MAAgB,aAA4B;AAC1C,UAAM,MAAM;EAYd;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAuCA,WAAW,MAA0B;AACnC,WAAO,EAAE,GAAG,MAAM,UAAU,CAAG,EAAA;AAAA,EACjC;AACF;AAEA,eAAe,YAAY;"}
|
|
@@ -42,7 +42,7 @@ const _MsConfigTable = class _MsConfigTable extends (_b = DataTable, _a = DATA_M
|
|
|
42
42
|
})
|
|
43
43
|
];
|
|
44
44
|
this.dataFilter.setColumns([
|
|
45
|
-
new FilterColumn({ name: "key", label: "配置键" })
|
|
45
|
+
new FilterColumn({ name: "key", label: "配置键", search: true })
|
|
46
46
|
]);
|
|
47
47
|
this.setColumns([
|
|
48
48
|
new TableColumn({ name: "key", label: "配置键" }),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MsConfigTable.js","sources":["../../../../../../src/modules/ms/dataviews/ms-config/MsConfigTable.ts"],"sourcesContent":["import { Where } from \"@maketribe/request\";\nimport {\n DataTable,\n DataTableOptions,\n TableColumn,\n TableActionColumn,\n TableHeaderItem,\n RefreshButton,\n AddButton,\n FilterColumn,\n} from \"@maketribe/dm\";\nimport { MsConfig } from \"./MsConfigForm\";\nimport { R, ResponseConfig } from \"@maketribe/request\";\nimport { MSAppClient } from \"../../../../core\";\nimport { DATA_MODEL_NAME } from \"../../../../constants\";\nimport { MODULE_NAME } from \"../../constants\";\n\nexport class MsConfigTable extends DataTable<MsConfig> {\n static [DATA_MODEL_NAME]: string = \"mk-sys-config\";\n\n private static _instance: MsConfigTable | null = null;\n\n static get instance(): MsConfigTable {\n if (!MsConfigTable._instance) {\n MsConfigTable._instance = new MsConfigTable();\n MsConfigTable._instance.init().then(() => {\n MsConfigTable._instance!.dataFilter.setReady();\n });\n }\n\n return MsConfigTable._instance;\n }\n\n constructor(options: DataTableOptions = {}) {\n super({\n name: MsConfigTable[DATA_MODEL_NAME],\n moduleName: MODULE_NAME,\n ...options,\n });\n }\n\n protected async initialize() {\n await super.initialize();\n\n this.header.rightArea = [\n new RefreshButton(),\n new AddButton(),\n new TableHeaderItem({\n componentInfo: \"MKBatchOpt\",\n predicate: () =>\n MSAppClient.instance?.userSession?.userInfo?.isSuper ?? false,\n }),\n ];\n\n this.dataFilter.setColumns([\n new FilterColumn({ name: \"key\", label: \"配置键\" }),\n ]);\n\n this.setColumns([\n new TableColumn({ name: \"key\", label: \"配置键\" }),\n new TableColumn({ name: \"memo\", label: \"备注\" }),\n new TableActionColumn(),\n ]);\n }\n\n formatItem(item: MsConfig): MsConfig {\n let value = item.value;\n\n try {\n value = JSON.parse(value);\n } catch (e) {}\n\n return { ...item, value };\n }\n\n static async loadConfig<T = any>(\n key: string\n ): Promise<ResponseConfig<R<MsConfig<T>>>> {\n const where = new Where();\n\n where.addCondition(\"key\", \"=\", key);\n\n const dataViewRequest = MsConfigTable.instance.dataViewRequest;\n const response = await dataViewRequest.allList({\n data: { condition: where },\n });\n\n return {\n ...response,\n data: {\n ...response.data,\n data: response.data.data?.[0] ?? null,\n },\n };\n }\n\n static async getConfigValue<T = any>(key: string): Promise<T | null> {\n const where = new Where();\n\n where.addCondition(\"key\", \"=\", key);\n\n const dataViewRequest = MsConfigTable.instance.dataViewRequest;\n const response = await dataViewRequest.query({\n data: { condition: where, pc: 1, pn: 1 },\n });\n\n if (response.data.code !== 200) {\n throw new Error(response.data.msg);\n }\n\n try {\n return JSON.parse(response.data.data[0]?.value);\n } catch {\n return null;\n }\n }\n\n static async setConfigValue(key: string, value: any) {\n const dataViewRequest = MsConfigTable.instance.dataViewRequest;\n\n const where = new Where();\n where.addCondition(\"key\", \"=\", key);\n\n const listResponse = await dataViewRequest.query({\n data: { condition: where, pc: 1, pn: 1 },\n });\n\n if (listResponse.data.code !== 200) {\n throw new Error(listResponse.data.msg);\n }\n\n const response =\n listResponse.data.data.length === 0\n ? await dataViewRequest.add({ key, value })\n : await dataViewRequest.update({\n ...listResponse.data.data[0],\n value,\n });\n\n return response.data;\n }\n}\n\n(window as any).MsConfigTable = MsConfigTable;\n"],"names":["_b","_a"],"mappings":";;;;;;;;;;;;;AAiBO,MAAM,iBAAN,MAAM,wBAAsB,gBACzB,sBADyB,IAAoB;AAAA,EAKrD,WAAW,WAA0B;AAC/B,QAAA,CAAC,eAAc,WAAW;AACd,qBAAA,YAAY,IAAI;AAC9B,qBAAc,UAAU,KAAO,EAAA,KAAK,MAAM;AAC1B,uBAAA,UAAW,WAAW;MAAS,CAC9C;AAAA,IACH;AAEA,WAAO,eAAc;AAAA,EACvB;AAAA,EAEA,YAAY,UAA4B,IAAI;AACpC,UAAA;AAAA,MACJ,MAAM,eAAc,eAAe;AAAA,MACnC,YAAY;AAAA,MACZ,GAAG;AAAA,IAAA,CACJ;AAAA,EACH;AAAA,EAEA,MAAgB,aAAa;AAC3B,UAAM,MAAM;AAEZ,SAAK,OAAO,YAAY;AAAA,MACtB,IAAI,cAAc;AAAA,MAClB,IAAI,UAAU;AAAA,MACd,IAAI,gBAAgB;AAAA,QAClB,eAAe;AAAA,QACf,WAAW,MACT;;AAAA,yBAAAA,OAAAC,MAAA,YAAY,aAAZ,gBAAAA,IAAsB,gBAAtB,gBAAAD,IAAmC,aAAnC,mBAA6C,YAAW;AAAA;AAAA,MAAA,CAC3D;AAAA,IAAA;AAGH,SAAK,WAAW,WAAW;AAAA,MACzB,IAAI,aAAa,EAAE,MAAM,OAAO,OAAO,OAAO;AAAA,IAAA,
|
|
1
|
+
{"version":3,"file":"MsConfigTable.js","sources":["../../../../../../src/modules/ms/dataviews/ms-config/MsConfigTable.ts"],"sourcesContent":["import { Where } from \"@maketribe/request\";\nimport {\n DataTable,\n DataTableOptions,\n TableColumn,\n TableActionColumn,\n TableHeaderItem,\n RefreshButton,\n AddButton,\n FilterColumn,\n} from \"@maketribe/dm\";\nimport { MsConfig } from \"./MsConfigForm\";\nimport { R, ResponseConfig } from \"@maketribe/request\";\nimport { MSAppClient } from \"../../../../core\";\nimport { DATA_MODEL_NAME } from \"../../../../constants\";\nimport { MODULE_NAME } from \"../../constants\";\n\nexport class MsConfigTable extends DataTable<MsConfig> {\n static [DATA_MODEL_NAME]: string = \"mk-sys-config\";\n\n private static _instance: MsConfigTable | null = null;\n\n static get instance(): MsConfigTable {\n if (!MsConfigTable._instance) {\n MsConfigTable._instance = new MsConfigTable();\n MsConfigTable._instance.init().then(() => {\n MsConfigTable._instance!.dataFilter.setReady();\n });\n }\n\n return MsConfigTable._instance;\n }\n\n constructor(options: DataTableOptions = {}) {\n super({\n name: MsConfigTable[DATA_MODEL_NAME],\n moduleName: MODULE_NAME,\n ...options,\n });\n }\n\n protected async initialize() {\n await super.initialize();\n\n this.header.rightArea = [\n new RefreshButton(),\n new AddButton(),\n new TableHeaderItem({\n componentInfo: \"MKBatchOpt\",\n predicate: () =>\n MSAppClient.instance?.userSession?.userInfo?.isSuper ?? false,\n }),\n ];\n\n this.dataFilter.setColumns([\n new FilterColumn({ name: \"key\", label: \"配置键\", search: true }),\n ]);\n\n this.setColumns([\n new TableColumn({ name: \"key\", label: \"配置键\" }),\n new TableColumn({ name: \"memo\", label: \"备注\" }),\n new TableActionColumn(),\n ]);\n }\n\n formatItem(item: MsConfig): MsConfig {\n let value = item.value;\n\n try {\n value = JSON.parse(value);\n } catch (e) {}\n\n return { ...item, value };\n }\n\n static async loadConfig<T = any>(\n key: string\n ): Promise<ResponseConfig<R<MsConfig<T>>>> {\n const where = new Where();\n\n where.addCondition(\"key\", \"=\", key);\n\n const dataViewRequest = MsConfigTable.instance.dataViewRequest;\n const response = await dataViewRequest.allList({\n data: { condition: where },\n });\n\n return {\n ...response,\n data: {\n ...response.data,\n data: response.data.data?.[0] ?? null,\n },\n };\n }\n\n static async getConfigValue<T = any>(key: string): Promise<T | null> {\n const where = new Where();\n\n where.addCondition(\"key\", \"=\", key);\n\n const dataViewRequest = MsConfigTable.instance.dataViewRequest;\n const response = await dataViewRequest.query({\n data: { condition: where, pc: 1, pn: 1 },\n });\n\n if (response.data.code !== 200) {\n throw new Error(response.data.msg);\n }\n\n try {\n return JSON.parse(response.data.data[0]?.value);\n } catch {\n return null;\n }\n }\n\n static async setConfigValue(key: string, value: any) {\n const dataViewRequest = MsConfigTable.instance.dataViewRequest;\n\n const where = new Where();\n where.addCondition(\"key\", \"=\", key);\n\n const listResponse = await dataViewRequest.query({\n data: { condition: where, pc: 1, pn: 1 },\n });\n\n if (listResponse.data.code !== 200) {\n throw new Error(listResponse.data.msg);\n }\n\n const response =\n listResponse.data.data.length === 0\n ? await dataViewRequest.add({ key, value })\n : await dataViewRequest.update({\n ...listResponse.data.data[0],\n value,\n });\n\n return response.data;\n }\n}\n\n(window as any).MsConfigTable = MsConfigTable;\n"],"names":["_b","_a"],"mappings":";;;;;;;;;;;;;AAiBO,MAAM,iBAAN,MAAM,wBAAsB,gBACzB,sBADyB,IAAoB;AAAA,EAKrD,WAAW,WAA0B;AAC/B,QAAA,CAAC,eAAc,WAAW;AACd,qBAAA,YAAY,IAAI;AAC9B,qBAAc,UAAU,KAAO,EAAA,KAAK,MAAM;AAC1B,uBAAA,UAAW,WAAW;MAAS,CAC9C;AAAA,IACH;AAEA,WAAO,eAAc;AAAA,EACvB;AAAA,EAEA,YAAY,UAA4B,IAAI;AACpC,UAAA;AAAA,MACJ,MAAM,eAAc,eAAe;AAAA,MACnC,YAAY;AAAA,MACZ,GAAG;AAAA,IAAA,CACJ;AAAA,EACH;AAAA,EAEA,MAAgB,aAAa;AAC3B,UAAM,MAAM;AAEZ,SAAK,OAAO,YAAY;AAAA,MACtB,IAAI,cAAc;AAAA,MAClB,IAAI,UAAU;AAAA,MACd,IAAI,gBAAgB;AAAA,QAClB,eAAe;AAAA,QACf,WAAW,MACT;;AAAA,yBAAAA,OAAAC,MAAA,YAAY,aAAZ,gBAAAA,IAAsB,gBAAtB,gBAAAD,IAAmC,aAAnC,mBAA6C,YAAW;AAAA;AAAA,MAAA,CAC3D;AAAA,IAAA;AAGH,SAAK,WAAW,WAAW;AAAA,MACzB,IAAI,aAAa,EAAE,MAAM,OAAO,OAAO,OAAO,QAAQ,MAAM;AAAA,IAAA,CAC7D;AAED,SAAK,WAAW;AAAA,MACd,IAAI,YAAY,EAAE,MAAM,OAAO,OAAO,OAAO;AAAA,MAC7C,IAAI,YAAY,EAAE,MAAM,QAAQ,OAAO,MAAM;AAAA,MAC7C,IAAI,kBAAkB;AAAA,IAAA,CACvB;AAAA,EACH;AAAA,EAEA,WAAW,MAA0B;AACnC,QAAI,QAAQ,KAAK;AAEb,QAAA;AACM,cAAA,KAAK,MAAM,KAAK;AAAA,aACjB,GAAG;AAAA,IAAC;AAEN,WAAA,EAAE,GAAG,MAAM;EACpB;AAAA,EAEA,aAAa,WACX,KACyC;;AACnC,UAAA,QAAQ,IAAI;AAEZ,UAAA,aAAa,OAAO,KAAK,GAAG;AAE5B,UAAA,kBAAkB,eAAc,SAAS;AACzC,UAAA,WAAW,MAAM,gBAAgB,QAAQ;AAAA,MAC7C,MAAM,EAAE,WAAW,MAAM;AAAA,IAAA,CAC1B;AAEM,WAAA;AAAA,MACL,GAAG;AAAA,MACH,MAAM;AAAA,QACJ,GAAG,SAAS;AAAA,QACZ,QAAMC,MAAA,SAAS,KAAK,SAAd,gBAAAA,IAAqB,OAAM;AAAA,MACnC;AAAA,IAAA;AAAA,EAEJ;AAAA,EAEA,aAAa,eAAwB,KAAgC;;AAC7D,UAAA,QAAQ,IAAI;AAEZ,UAAA,aAAa,OAAO,KAAK,GAAG;AAE5B,UAAA,kBAAkB,eAAc,SAAS;AACzC,UAAA,WAAW,MAAM,gBAAgB,MAAM;AAAA,MAC3C,MAAM,EAAE,WAAW,OAAO,IAAI,GAAG,IAAI,EAAE;AAAA,IAAA,CACxC;AAEG,QAAA,SAAS,KAAK,SAAS,KAAK;AAC9B,YAAM,IAAI,MAAM,SAAS,KAAK,GAAG;AAAA,IACnC;AAEI,QAAA;AACF,aAAO,KAAK,OAAMA,MAAA,SAAS,KAAK,KAAK,CAAC,MAApB,gBAAAA,IAAuB,KAAK;AAAA,IAAA,QACxC;AACC,aAAA;AAAA,IACT;AAAA,EACF;AAAA,EAEA,aAAa,eAAe,KAAa,OAAY;AAC7C,UAAA,kBAAkB,eAAc,SAAS;AAEzC,UAAA,QAAQ,IAAI;AACZ,UAAA,aAAa,OAAO,KAAK,GAAG;AAE5B,UAAA,eAAe,MAAM,gBAAgB,MAAM;AAAA,MAC/C,MAAM,EAAE,WAAW,OAAO,IAAI,GAAG,IAAI,EAAE;AAAA,IAAA,CACxC;AAEG,QAAA,aAAa,KAAK,SAAS,KAAK;AAClC,YAAM,IAAI,MAAM,aAAa,KAAK,GAAG;AAAA,IACvC;AAEA,UAAM,WACJ,aAAa,KAAK,KAAK,WAAW,IAC9B,MAAM,gBAAgB,IAAI,EAAE,KAAK,MAAO,CAAA,IACxC,MAAM,gBAAgB,OAAO;AAAA,MAC3B,GAAG,aAAa,KAAK,KAAK,CAAC;AAAA,MAC3B;AAAA,IAAA,CACD;AAEP,WAAO,SAAS;AAAA,EAClB;AACF;AA3HE,cADW,gBACH,IAA2B;AAEnC,cAHW,gBAGI,aAAkC;AAH5C,IAAM,gBAAN;AA8HN,OAAe,gBAAgB;"}
|
|
@@ -27,10 +27,13 @@ import "../../../../../components/basic/image-cropper/index.js";
|
|
|
27
27
|
import "../../../../../components/data-model/data-form/index.js";
|
|
28
28
|
import "../../../../../components/data-model/data-table/index.js";
|
|
29
29
|
import "../../../../../components/data-model/data-table-pagination/index.js";
|
|
30
|
-
import "
|
|
30
|
+
import "@maketribe/dm";
|
|
31
|
+
import "vue-router";
|
|
32
|
+
import "@maketribe/locale";
|
|
33
|
+
import "../../../../../core/DataModelDefines.js";
|
|
34
|
+
import "../../../../../components/business/verify-dialog/verify-dialog-option.js";
|
|
31
35
|
import "../../../../../components/business/resource-list/index.js";
|
|
32
36
|
import "../../../../../components/business/resource-manager/index.js";
|
|
33
|
-
import "@maketribe/dm";
|
|
34
37
|
import { dataTableColumnProps } from "../../../../../components/data-model/data-table/data-table-column/data-table-column-options.js";
|
|
35
38
|
const MemberRolesColumn = /* @__PURE__ */ defineComponent({
|
|
36
39
|
props: dataTableColumnProps,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MemberRolesColumn.js","sources":["../../../../../../../src/modules/ms/dataviews/ms-member/components/MemberRolesColumn.tsx"],"sourcesContent":["import { defineComponent } from \"vue\";\nimport { dataTableColumnProps } from \"../../../../../components\";\nimport { ElTag } from \"element-plus\";\n\nexport default defineComponent({\n props: dataTableColumnProps,\n setup(props) {\n return () => {\n const roles = props.row.roles.map((role: any) => (\n <ElTag key={role.id} size=\"large\" type=\"info\" class=\"roles-Info-tag\">\n {role.desc}\n </ElTag>\n ));\n\n return <div class=\"roles-Info\">{roles}</div>;\n };\n },\n});\n"],"names":["defineComponent","props","dataTableColumnProps","setup","roles","row","map","role","_createVNode","ElTag","id","default","desc"],"mappings":"
|
|
1
|
+
{"version":3,"file":"MemberRolesColumn.js","sources":["../../../../../../../src/modules/ms/dataviews/ms-member/components/MemberRolesColumn.tsx"],"sourcesContent":["import { defineComponent } from \"vue\";\nimport { dataTableColumnProps } from \"../../../../../components\";\nimport { ElTag } from \"element-plus\";\n\nexport default defineComponent({\n props: dataTableColumnProps,\n setup(props) {\n return () => {\n const roles = props.row.roles.map((role: any) => (\n <ElTag key={role.id} size=\"large\" type=\"info\" class=\"roles-Info-tag\">\n {role.desc}\n </ElTag>\n ));\n\n return <div class=\"roles-Info\">{roles}</div>;\n };\n },\n});\n"],"names":["defineComponent","props","dataTableColumnProps","setup","roles","row","map","role","_createVNode","ElTag","id","default","desc"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,MAAeA,oDAAgB;AAAA,EAC7BC,OAAOC;AAAAA,EACPC,MAAMF,OAAO;AACX,WAAO,MAAM;AACX,YAAMG,QAAQH,MAAMI,IAAID,MAAME,IAAKC,UAASC,YAAAC,OAAA;AAAA,QAAA,OAC9BF,KAAKG;AAAAA,QAAE,QAAA;AAAA,QAAA,QAAA;AAAA,QAAA,SAAA;AAAA,MAAA,GAAA;AAAA,QAAAC,SAAAA,MAChBJ,CAAAA,KAAKK,IAAI;AAAA,MAAA,CAAA,CAEb;AAED,aAAAJ,YAAA,OAAA;AAAA,QAAA,SAAA;AAAA,MAAA,GAAA,CAAgCJ,KAAK,CAAA;AAAA;EAEzC;AACF,CAAC;"}
|
|
@@ -28,10 +28,13 @@ import "../../../../components/basic/image-cropper/index.js";
|
|
|
28
28
|
import "../../../../components/data-model/data-form/index.js";
|
|
29
29
|
import "../../../../components/data-model/data-table/index.js";
|
|
30
30
|
import "../../../../components/data-model/data-table-pagination/index.js";
|
|
31
|
-
import "
|
|
31
|
+
import "@maketribe/dm";
|
|
32
|
+
import "vue-router";
|
|
33
|
+
import "@maketribe/locale";
|
|
34
|
+
import "../../../../core/DataModelDefines.js";
|
|
35
|
+
import "../../../../components/business/verify-dialog/verify-dialog-option.js";
|
|
32
36
|
import "../../../../components/business/resource-list/index.js";
|
|
33
37
|
import "../../../../components/business/resource-manager/index.js";
|
|
34
|
-
import "@maketribe/dm";
|
|
35
38
|
const _hoisted_1 = { class: "mk-icon-list" };
|
|
36
39
|
const _hoisted_2 = { class: "mk-icon-list__item" };
|
|
37
40
|
const _hoisted_3 = ["onClick"];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.vue2.js","sources":["../../../../../../src/modules/ms/pages/icons/index.vue"],"sourcesContent":["<template>\n <MKPageContainer>\n <ElCard>\n <ElScrollbar height=\"100%\">\n <ElInput\n v-model=\"search\"\n placeholder=\"搜索图标\"\n :suffix-icon=\"elIcons.Search\"\n />\n\n <ul class=\"mk-icon-list\">\n <li class=\"mk-icon-list__item\" v-for=\"icon in filteredIcons\">\n <div class=\"mk-icon-item\" @click=\"handleClick(icon)\">\n <div class=\"mk-icon-item__icon\">\n <MKSvgIcon :iconClass=\"icon\" />\n </div>\n\n <div class=\"mk-icon-item__name\">\n {{ icon }}\n </div>\n </div>\n </li>\n </ul>\n </ElScrollbar>\n </ElCard>\n </MKPageContainer>\n</template>\n\n<script setup lang=\"ts\">\nimport { computed, onMounted, ref, Ref, unref } from \"vue\";\nimport { ElMessage } from \"element-plus\";\nimport * as elIcons from \"@element-plus/icons-vue\";\nimport { MKPageContainer } from \"../../../../components\";\n\nconst icons: Ref<string[]> = ref([]);\n\nconst search = ref(\"\");\n\nconst filteredIcons = computed(() => {\n const _search = unref(search).toLowerCase();\n\n return unref(icons).filter((icon) => icon.toLowerCase().includes(_search));\n});\n\nonMounted(() => {\n const svgList: NodeListOf<SVGElement> = document.querySelectorAll(\n 'body > svg[aria-hidden=\"true\"]'\n );\n\n let iconList: string[] = [];\n\n for (const svg of Array.from(svgList)) {\n const symbols = svg.querySelectorAll(\"symbol\");\n\n iconList = iconList.concat(\n Array.from(symbols).map((symbol) => symbol.id.replace(/^icon-/, \"\"))\n );\n }\n\n icons.value = Array.from(new Set([...Object.keys(elIcons), ...iconList]));\n});\n\nconst handleClick = (icon: string) => {\n const content = `<MKSvgIcon iconClass=\"${icon}\"/>`;\n\n if (navigator.clipboard === undefined) {\n //通过input标签进行复制\n const input = document.createElement(\"input\");\n input.value = content;\n document.body.appendChild(input);\n input.select();\n document.execCommand(\"Copy\");\n document.body.removeChild(input);\n } else {\n navigator.clipboard.writeText(content);\n }\n\n ElMessage.success(\"复制成功\");\n};\n</script>\n"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.vue2.js","sources":["../../../../../../src/modules/ms/pages/icons/index.vue"],"sourcesContent":["<template>\n <MKPageContainer>\n <ElCard>\n <ElScrollbar height=\"100%\">\n <ElInput\n v-model=\"search\"\n placeholder=\"搜索图标\"\n :suffix-icon=\"elIcons.Search\"\n />\n\n <ul class=\"mk-icon-list\">\n <li class=\"mk-icon-list__item\" v-for=\"icon in filteredIcons\">\n <div class=\"mk-icon-item\" @click=\"handleClick(icon)\">\n <div class=\"mk-icon-item__icon\">\n <MKSvgIcon :iconClass=\"icon\" />\n </div>\n\n <div class=\"mk-icon-item__name\">\n {{ icon }}\n </div>\n </div>\n </li>\n </ul>\n </ElScrollbar>\n </ElCard>\n </MKPageContainer>\n</template>\n\n<script setup lang=\"ts\">\nimport { computed, onMounted, ref, Ref, unref } from \"vue\";\nimport { ElMessage } from \"element-plus\";\nimport * as elIcons from \"@element-plus/icons-vue\";\nimport { MKPageContainer } from \"../../../../components\";\n\nconst icons: Ref<string[]> = ref([]);\n\nconst search = ref(\"\");\n\nconst filteredIcons = computed(() => {\n const _search = unref(search).toLowerCase();\n\n return unref(icons).filter((icon) => icon.toLowerCase().includes(_search));\n});\n\nonMounted(() => {\n const svgList: NodeListOf<SVGElement> = document.querySelectorAll(\n 'body > svg[aria-hidden=\"true\"]'\n );\n\n let iconList: string[] = [];\n\n for (const svg of Array.from(svgList)) {\n const symbols = svg.querySelectorAll(\"symbol\");\n\n iconList = iconList.concat(\n Array.from(symbols).map((symbol) => symbol.id.replace(/^icon-/, \"\"))\n );\n }\n\n icons.value = Array.from(new Set([...Object.keys(elIcons), ...iconList]));\n});\n\nconst handleClick = (icon: string) => {\n const content = `<MKSvgIcon iconClass=\"${icon}\"/>`;\n\n if (navigator.clipboard === undefined) {\n //通过input标签进行复制\n const input = document.createElement(\"input\");\n input.value = content;\n document.body.appendChild(input);\n input.select();\n document.execCommand(\"Copy\");\n document.body.removeChild(input);\n } else {\n navigator.clipboard.writeText(content);\n }\n\n ElMessage.success(\"复制成功\");\n};\n</script>\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAkCM,UAAA,QAAuB,IAAI,CAAA,CAAE;AAE7B,UAAA,SAAS,IAAI,EAAE;AAEf,UAAA,gBAAgB,SAAS,MAAM;AACnC,YAAM,UAAU,MAAM,MAAM,EAAE,YAAY;AAEnC,aAAA,MAAM,KAAK,EAAE,OAAO,CAAC,SAAS,KAAK,YAAY,EAAE,SAAS,OAAO,CAAC;AAAA,IAAA,CAC1E;AAED,cAAU,MAAM;AACd,YAAM,UAAkC,SAAS;AAAA,QAC/C;AAAA,MAAA;AAGF,UAAI,WAAqB,CAAA;AAEzB,iBAAW,OAAO,MAAM,KAAK,OAAO,GAAG;AAC/B,cAAA,UAAU,IAAI,iBAAiB,QAAQ;AAE7C,mBAAW,SAAS;AAAA,UAClB,MAAM,KAAK,OAAO,EAAE,IAAI,CAAC,WAAW,OAAO,GAAG,QAAQ,UAAU,EAAE,CAAC;AAAA,QAAA;AAAA,MAEvE;AAEA,YAAM,QAAQ,MAAM,KAAK,oBAAI,IAAI,CAAC,GAAG,OAAO,KAAK,OAAO,GAAG,GAAG,QAAQ,CAAC,CAAC;AAAA,IAAA,CACzE;AAEK,UAAA,cAAc,CAAC,SAAiB;AAC9B,YAAA,UAAU,yBAAyB,IAAI;AAEzC,UAAA,UAAU,cAAc,QAAW;AAE/B,cAAA,QAAQ,SAAS,cAAc,OAAO;AAC5C,cAAM,QAAQ;AACL,iBAAA,KAAK,YAAY,KAAK;AAC/B,cAAM,OAAO;AACb,iBAAS,YAAY,MAAM;AAClB,iBAAA,KAAK,YAAY,KAAK;AAAA,MAAA,OAC1B;AACK,kBAAA,UAAU,UAAU,OAAO;AAAA,MACvC;AAEA,gBAAU,QAAQ,MAAM;AAAA,IAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -31,7 +31,7 @@ import "../../../../components/basic/image-cropper/index.js";
|
|
|
31
31
|
import "../../../../components/data-model/data-form/index.js";
|
|
32
32
|
import "../../../../components/data-model/data-table/index.js";
|
|
33
33
|
import "../../../../components/data-model/data-table-pagination/index.js";
|
|
34
|
-
import "../../../../components/business/verify-dialog/
|
|
34
|
+
import "../../../../components/business/verify-dialog/verify-dialog-option.js";
|
|
35
35
|
import "../../../../components/business/resource-list/index.js";
|
|
36
36
|
import "../../../../components/business/resource-manager/index.js";
|
|
37
37
|
import { MKTree } from "../../../../components/data-model/data-table/views/tree/index.js";
|
|
@@ -27,14 +27,14 @@ import "../../../../components/basic/image-cropper/index.js";
|
|
|
27
27
|
import "../../../../components/data-model/data-form/index.js";
|
|
28
28
|
import "../../../../components/data-model/data-table/index.js";
|
|
29
29
|
import "../../../../components/data-model/data-table-pagination/index.js";
|
|
30
|
-
import "../../../../components/business/verify-dialog/index.js";
|
|
31
|
-
import "../../../../components/business/resource-list/index.js";
|
|
32
|
-
import "../../../../components/business/resource-manager/index.js";
|
|
33
30
|
import "@maketribe/dm";
|
|
34
|
-
import { MKMaterialList } from "../../components/material-list/index.js";
|
|
35
|
-
import "../../../../core/DataModelDefines.js";
|
|
36
31
|
import "vue-router";
|
|
37
32
|
import "@maketribe/locale";
|
|
33
|
+
import "../../../../core/DataModelDefines.js";
|
|
34
|
+
import "../../../../components/business/verify-dialog/verify-dialog-option.js";
|
|
35
|
+
import "../../../../components/business/resource-list/index.js";
|
|
36
|
+
import "../../../../components/business/resource-manager/index.js";
|
|
37
|
+
import { MKMaterialList } from "../../components/material-list/index.js";
|
|
38
38
|
import "../../dataviews/ms-config/MsConfigTable.js";
|
|
39
39
|
import "lodash-es";
|
|
40
40
|
import "../../dataviews/department/DepartmentForm.js";
|
|
@@ -32,10 +32,10 @@ import "../../../../components/basic/image-cropper/index.js";
|
|
|
32
32
|
import "../../../../components/data-model/data-form/index.js";
|
|
33
33
|
import { MKDataTable } from "../../../../components/data-model/data-table/index.js";
|
|
34
34
|
import "../../../../components/data-model/data-table-pagination/index.js";
|
|
35
|
-
import "../../../../
|
|
35
|
+
import { useSingleViewWithDialog } from "../../../../composables/use-single-view.js";
|
|
36
|
+
import "../../../../components/business/verify-dialog/verify-dialog-option.js";
|
|
36
37
|
import "../../../../components/business/resource-list/index.js";
|
|
37
38
|
import "../../../../components/business/resource-manager/index.js";
|
|
38
|
-
import { useSingleViewWithDialog } from "../../../../composables/use-single-view.js";
|
|
39
39
|
import "../../dataviews/ms-config/MsConfigTable.js";
|
|
40
40
|
import "lodash-es";
|
|
41
41
|
import { MsRouteTable } from "../../dataviews/ms-menu/ms-route/MsRouteTable.js";
|