@maketribe/ms-app 3.2.10 → 3.2.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/components/abstract/abstract-select/abstract-select-options.js.map +1 -1
- package/dist/cjs/components/abstract/abstract-select/abstract-select.js.map +1 -1
- package/dist/cjs/components/abstract/abstract-select/index.js.map +1 -1
- package/dist/cjs/components/basic/button/button-options.js.map +1 -1
- package/dist/cjs/components/basic/code-editor/code-editor-options.js.map +1 -1
- package/dist/cjs/components/basic/code-editor/code-editor.js.map +1 -1
- package/dist/cjs/components/basic/code-editor/index.js.map +1 -1
- package/dist/cjs/components/basic/config-provider/config-provider-options.js.map +1 -1
- package/dist/cjs/components/basic/data-select/data-select-options.js.map +1 -1
- package/dist/cjs/components/basic/data-select/data-select.js.map +1 -1
- package/dist/cjs/components/basic/data-table-select/data-table-select-options.js.map +1 -1
- package/dist/cjs/components/basic/data-table-select/data-table-select.js.map +1 -1
- package/dist/cjs/components/basic/data-table-select/index.js.map +1 -1
- package/dist/cjs/components/basic/data-tree-select/index.js.map +1 -1
- package/dist/cjs/components/basic/date-picker/date-picker-options.js.map +1 -1
- package/dist/cjs/components/basic/date-picker/date-picker.js.map +1 -1
- package/dist/cjs/components/basic/date-picker/index.js.map +1 -1
- package/dist/cjs/components/basic/doc-editor/editor.vue.js.map +1 -1
- package/dist/cjs/components/basic/doc-editor/plugins/HtmlBlockPlugin/DocHtmlBlockComponent.js.map +1 -1
- package/dist/cjs/components/basic/doc-editor/plugins/HtmlBlockPlugin/index.vue.js.map +1 -1
- package/dist/cjs/components/basic/icon-select/icon-select-options.js.map +1 -1
- package/dist/cjs/components/basic/icon-select/icon-select.js.map +1 -1
- package/dist/cjs/components/basic/icon-select/index.js.map +1 -1
- package/dist/cjs/components/basic/image-cropper/image-cropper-api.js +3 -1
- package/dist/cjs/components/basic/image-cropper/image-cropper-api.js.map +1 -1
- package/dist/cjs/components/basic/image-cropper/image-cropper-content-options.js +2 -0
- package/dist/cjs/components/basic/image-cropper/image-cropper-content-options.js.map +1 -1
- package/dist/cjs/components/basic/image-cropper/image-cropper-content.js +24 -23
- package/dist/cjs/components/basic/image-cropper/image-cropper-content.js.map +1 -1
- package/dist/cjs/components/basic/image-cropper/index.js.map +1 -1
- package/dist/cjs/components/basic/json-editor/json-editor-options.js.map +1 -1
- package/dist/cjs/components/basic/json-editor/json-editor.js.map +1 -1
- package/dist/cjs/components/basic/page-container/index.js.map +1 -1
- package/dist/cjs/components/basic/page-container/page-container.js.map +1 -1
- package/dist/cjs/components/basic/radio/index.js.map +1 -1
- package/dist/cjs/components/basic/radio/radio-options.js.map +1 -1
- package/dist/cjs/components/basic/radio/radio.js.map +1 -1
- package/dist/cjs/components/basic/system-provider/system-provider.js.map +1 -1
- package/dist/cjs/components/basic/upload-file/context/WebFileUploadContext.js.map +1 -1
- package/dist/cjs/components/basic/upload-file/ui/upload-image/upload-image.js +2 -0
- package/dist/cjs/components/basic/upload-file/ui/upload-image/upload-image.js.map +1 -1
- package/dist/cjs/components/business/resource-list/ResourceManager.js.map +1 -1
- package/dist/cjs/components/business/resource-list/index.js.map +1 -1
- package/dist/cjs/components/business/resource-manager/index.js.map +1 -1
- package/dist/cjs/components/business/resource-select/index.js.map +1 -1
- package/dist/cjs/components/business/resource-select/resource-select-api.js.map +1 -1
- package/dist/cjs/components/business/verify-dialog/verify-dialog.js.map +1 -1
- package/dist/cjs/components/data-model/data-filter-drawer/data-filter-drawer-options.js.map +1 -1
- package/dist/cjs/components/data-model/data-filter-drawer/data-filter-drawer.js.map +1 -1
- package/dist/cjs/components/data-model/data-filter-drawer/index.js.map +1 -1
- package/dist/cjs/components/data-model/data-filter-form/components/condition-date/condition-date-options.js.map +1 -1
- package/dist/cjs/components/data-model/data-filter-form/components/condition-date/condition-date.js.map +1 -1
- package/dist/cjs/components/data-model/data-filter-form/components/condition-input/condition-input-options.js.map +1 -1
- package/dist/cjs/components/data-model/data-filter-form/components/condition-input/condition-input.js.map +1 -1
- package/dist/cjs/components/data-model/data-filter-form/components/condition-number/condition-number-options.js.map +1 -1
- package/dist/cjs/components/data-model/data-filter-form/components/condition-number/condition-number.js.map +1 -1
- package/dist/cjs/components/data-model/data-filter-form/components/condition-select/condition-select-options.js.map +1 -1
- package/dist/cjs/components/data-model/data-filter-form/components/condition-select/condition-select.js.map +1 -1
- package/dist/cjs/components/data-model/data-filter-form/composables/use-condition.js.map +1 -1
- package/dist/cjs/components/data-model/data-filter-form/data-filter-form-item/data-filter-form-item.js.map +1 -1
- package/dist/cjs/components/data-model/data-filter-form/data-filter-form-options.js.map +1 -1
- package/dist/cjs/components/data-model/data-filter-form/data-filter-form.js.map +1 -1
- package/dist/cjs/components/data-model/data-filter-form/index.js.map +1 -1
- package/dist/cjs/components/data-model/data-filter-form/token.js.map +1 -1
- package/dist/cjs/components/data-model/data-form/components/form-detail/form-detail-options.js.map +1 -1
- 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/composables/use-form-item.js.map +1 -1
- package/dist/cjs/components/data-model/data-form/data-form-item/data-form-item.js.map +1 -1
- package/dist/cjs/components/data-model/data-form/data-form.js.map +1 -1
- package/dist/cjs/components/data-model/data-form/index.js.map +1 -1
- package/dist/cjs/components/data-model/data-form/token.js.map +1 -1
- package/dist/cjs/components/data-model/data-form/views/form/form-options.js.map +1 -1
- package/dist/cjs/components/data-model/data-form/views/form/form.js.map +1 -1
- package/dist/cjs/components/data-model/data-form/views/form-view/form-view.js.map +1 -1
- package/dist/cjs/components/data-model/data-table/components/column-action/column-action-options.js.map +1 -1
- package/dist/cjs/components/data-model/data-table/components/column-action/column-action.js.map +1 -1
- package/dist/cjs/components/data-model/data-table/components/column-date/column-date.js.map +1 -1
- package/dist/cjs/components/data-model/data-table/components/column-icon/column-icon.js.map +1 -1
- package/dist/cjs/components/data-model/data-table/components/column-image/column-image-options.js.map +1 -1
- package/dist/cjs/components/data-model/data-table/components/column-json/column-json-options.js.map +1 -1
- package/dist/cjs/components/data-model/data-table/components/column-json/column-json.js.map +1 -1
- package/dist/cjs/components/data-model/data-table/components/column-link/column-link-options.js.map +1 -1
- package/dist/cjs/components/data-model/data-table/components/column-object-mapping-text/column-object-mapping-text-options.js.map +1 -1
- package/dist/cjs/components/data-model/data-table/components/column-select/column-select-header.js.map +1 -1
- package/dist/cjs/components/data-model/data-table/components/column-select/column-select-options.js.map +1 -1
- package/dist/cjs/components/data-model/data-table/components/column-select/column-select.js.map +1 -1
- package/dist/cjs/components/data-model/data-table/components/column-sort/column-sort-options.js.map +1 -1
- package/dist/cjs/components/data-model/data-table/components/column-sort/column-sort.js.map +1 -1
- package/dist/cjs/components/data-model/data-table/components/column-sort/index.js.map +1 -1
- package/dist/cjs/components/data-model/data-table/components/column-switch/column-switch-options.js.map +1 -1
- package/dist/cjs/components/data-model/data-table/components/column-switch/column-switch.js.map +1 -1
- package/dist/cjs/components/data-model/data-table/components/column-tag/column-tag-options.js.map +1 -1
- package/dist/cjs/components/data-model/data-table/components/column-tag/column-tag.js.map +1 -1
- package/dist/cjs/components/data-model/data-table/components/column-text/column-text-options.js.map +1 -1
- package/dist/cjs/components/data-model/data-table/components/column-text/column-text.js.map +1 -1
- package/dist/cjs/components/data-model/data-table/components/header-components/batch-opt/batch-opt.js.map +1 -1
- package/dist/cjs/components/data-model/data-table/components/header-components/batch-opt/index.js.map +1 -1
- package/dist/cjs/components/data-model/data-table/components/header-components/table-filter/index.js.map +1 -1
- package/dist/cjs/components/data-model/data-table/components/header-components/table-filter/table-filter.js.map +1 -1
- package/dist/cjs/components/data-model/data-table/composables/use-query-params.js.map +1 -1
- package/dist/cjs/components/data-model/data-table/data-table-column/data-table-column-options.js.map +1 -1
- package/dist/cjs/components/data-model/data-table/data-table-column/data-table-column.js.map +1 -1
- package/dist/cjs/components/data-model/data-table/data-table-column/index.js.map +1 -1
- package/dist/cjs/components/data-model/data-table/data-table-options.js.map +1 -1
- package/dist/cjs/components/data-model/data-table/data-table.js.map +1 -1
- package/dist/cjs/components/data-model/data-table/index.js.map +1 -1
- package/dist/cjs/components/data-model/data-table/token.js.map +1 -1
- package/dist/cjs/components/data-model/data-table/views/table/table-options.js.map +1 -1
- package/dist/cjs/components/data-model/data-table/views/table/table.js.map +1 -1
- package/dist/cjs/components/data-model/data-table/views/table-tree/table-tree-options.js.map +1 -1
- package/dist/cjs/components/data-model/data-table/views/table-tree/table-tree.js.map +1 -1
- package/dist/cjs/components/data-model/data-table/views/table-view/classify-search/classify-search.js.map +1 -1
- package/dist/cjs/components/data-model/data-table/views/table-view/header/header.js.map +1 -1
- package/dist/cjs/components/data-model/data-table/views/table-view/table-view-options.js.map +1 -1
- package/dist/cjs/components/data-model/data-table/views/table-view/table-view.js.map +1 -1
- package/dist/cjs/components/data-model/data-table/views/tree/index.js.map +1 -1
- package/dist/cjs/components/data-model/data-table/views/tree/tree-options.js.map +1 -1
- package/dist/cjs/components/data-model/data-table/views/tree/tree.js.map +1 -1
- package/dist/cjs/components/data-model/data-table/views/tree-view/tree-view-options.js.map +1 -1
- package/dist/cjs/components/data-model/data-table/views/tree-view/tree-view.js.map +1 -1
- package/dist/cjs/components/data-model/data-table-pagination/data-table-pagination-options.js.map +1 -1
- package/dist/cjs/components/data-model/data-table-pagination/data-table-pagination.js.map +1 -1
- package/dist/cjs/composables/use-column-component.js.map +1 -1
- package/dist/cjs/composables/use-i18n.js.map +1 -1
- package/dist/cjs/composables/use-single-view.js.map +1 -1
- package/dist/cjs/constants/data-model.js.map +1 -1
- package/dist/cjs/constants/menu.js.map +1 -1
- package/dist/cjs/constants/route.js.map +1 -1
- package/dist/cjs/core/MSAppClient.js.map +1 -1
- package/dist/cjs/core/MkModule.js.map +1 -1
- package/dist/cjs/core/PageManager.js.map +1 -1
- package/dist/cjs/core/Router.js.map +1 -1
- package/dist/cjs/core/UserInfo.js.map +1 -1
- package/dist/cjs/core/UserSession.js.map +1 -1
- package/dist/cjs/core/component/ConfigComponents.js.map +1 -1
- package/dist/cjs/core/component/DataFilterComponents.js.map +1 -1
- package/dist/cjs/core/component/DataTableComponents.js.map +1 -1
- package/dist/cjs/core/component/DataTableHeaderComponents.js.map +1 -1
- package/dist/cjs/core/menu/Menu.js.map +1 -1
- package/dist/cjs/core/menu/MenuNode.js.map +1 -1
- package/dist/cjs/core/tabs/Tab.js.map +1 -1
- package/dist/cjs/define-data-form.js.map +1 -1
- package/dist/cjs/define-data-table.js.map +1 -1
- package/dist/cjs/define-data-tree.js.map +1 -1
- package/dist/cjs/index.js +2 -0
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/init-application.js.map +1 -1
- package/dist/cjs/installer.js.map +1 -1
- package/dist/cjs/layouts/components/dialogs/dialogs.js.map +1 -1
- package/dist/cjs/layouts/components/header/index.js.map +1 -1
- package/dist/cjs/message-impl/DialogerImpl.js.map +1 -1
- package/dist/cjs/modules/cms/components/part-tree/index.vue.js +1 -0
- package/dist/cjs/modules/cms/components/part-tree/index.vue.js.map +1 -1
- package/dist/cjs/modules/cms/constants/index.js.map +1 -1
- package/dist/cjs/modules/cms/dataviews/cms-ad-contents/CmsAdContentsForm.js +2 -0
- package/dist/cjs/modules/cms/dataviews/cms-ad-contents/CmsAdContentsForm.js.map +1 -1
- package/dist/cjs/modules/cms/dataviews/cms-ad-contents/CmsAdContentsTable.js.map +1 -1
- package/dist/cjs/modules/cms/dataviews/cms-articles/CmsArticlesForm.js +2 -0
- package/dist/cjs/modules/cms/dataviews/cms-articles/CmsArticlesForm.js.map +1 -1
- package/dist/cjs/modules/cms/dataviews/cms-articles/cms-article-atlas/CmsArticleAtlasForm.js +2 -0
- package/dist/cjs/modules/cms/dataviews/cms-articles/cms-article-atlas/CmsArticleAtlasForm.js.map +1 -1
- package/dist/cjs/modules/cms/dataviews/cms-articles/cms-article-atlas/CmsArticleAtlasTable.js.map +1 -1
- package/dist/cjs/modules/cms/dataviews/cms-parts/CmsPartTree.js.map +1 -1
- package/dist/cjs/modules/cms/pages/cms-ad/index.vue2.js +2 -1
- package/dist/cjs/modules/cms/pages/cms-ad/index.vue2.js.map +1 -1
- package/dist/cjs/modules/cms/pages/cms-contents/article-edit-add-page.vue2.js +4 -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-list.vue.js +2 -0
- package/dist/cjs/modules/cms/pages/cms-contents/components/article-list.vue.js.map +1 -1
- package/dist/cjs/modules/cms/pages/cms-contents/index.vue2.js +2 -0
- package/dist/cjs/modules/cms/pages/cms-contents/index.vue2.js.map +1 -1
- package/dist/cjs/modules/cms/pages/cms-resource/index.vue2.js.map +1 -1
- package/dist/cjs/modules/ms/components/image-select/image-select-api.js +76 -0
- package/dist/cjs/modules/ms/components/image-select/image-select-api.js.map +1 -0
- package/dist/cjs/modules/ms/components/image-select/image-select-panel.js +111 -0
- package/dist/cjs/modules/ms/components/image-select/image-select-panel.js.map +1 -0
- package/dist/cjs/modules/ms/components/image-select/index.js +7 -0
- package/dist/cjs/modules/ms/components/image-select/index.js.map +1 -0
- package/dist/cjs/modules/ms/components/markdown-editor/markdown-editor.js.map +1 -1
- package/dist/cjs/modules/ms/components/material-list/components/file-view/file-view.js.map +1 -1
- package/dist/cjs/modules/ms/components/material-list/components/image-view/image-view.js.map +1 -1
- package/dist/cjs/modules/ms/components/material-list/index.js.map +1 -1
- package/dist/cjs/modules/ms/components/material-list/material-group-form-popover.js +1 -0
- package/dist/cjs/modules/ms/components/material-list/material-group-form-popover.js.map +1 -1
- package/dist/cjs/modules/ms/components/material-list/material-group.js +1 -0
- package/dist/cjs/modules/ms/components/material-list/material-group.js.map +1 -1
- package/dist/cjs/modules/ms/components/material-list/material-item.vue.js.map +1 -1
- package/dist/cjs/modules/ms/components/material-list/material-list-options.js.map +1 -1
- package/dist/cjs/modules/ms/components/material-list/material-list.js.map +1 -1
- package/dist/cjs/modules/ms/components/material-select/index.js.map +1 -1
- package/dist/cjs/modules/ms/components/material-select/material-select-api.js.map +1 -1
- package/dist/cjs/modules/ms/components/rich-text-editor/index.js.map +1 -1
- package/dist/cjs/modules/ms/dataviews/log/local-log/LocalLogTree.js.map +1 -1
- package/dist/cjs/modules/ms/dataviews/ms-config/MsConfigForm.js.map +1 -1
- package/dist/cjs/modules/ms/dataviews/ms-config/MsConfigTable.js.map +1 -1
- package/dist/cjs/modules/ms/dataviews/ms-deny-ip-access-list/MsDenyIPAccessListTable.js.map +1 -1
- package/dist/cjs/modules/ms/dataviews/ms-ip-white-list/MsIPWhitelistTable.js.map +1 -1
- package/dist/cjs/modules/ms/dataviews/ms-material/MsMaterialTable.js +12 -2
- package/dist/cjs/modules/ms/dataviews/ms-material/MsMaterialTable.js.map +1 -1
- package/dist/cjs/modules/ms/dataviews/ms-material/ms-material-group/MsMaterialGroupTree.js.map +1 -1
- package/dist/cjs/modules/ms/dataviews/ms-member/MsMemberForm.js.map +1 -1
- package/dist/cjs/modules/ms/dataviews/ms-member/MsMemberTable.js.map +1 -1
- package/dist/cjs/modules/ms/dataviews/ms-member/components/MemberNickNameColumn.js.map +1 -1
- package/dist/cjs/modules/ms/dataviews/ms-member/components/MemberRolesColumn.js.map +1 -1
- package/dist/cjs/modules/ms/dataviews/ms-member-role/MsMemberRoleForm.js.map +1 -1
- package/dist/cjs/modules/ms/dataviews/ms-member-role/MsMemberRoleTable.js.map +1 -1
- package/dist/cjs/modules/ms/dataviews/ms-menu/MsMenuTable.js.map +1 -1
- package/dist/cjs/modules/ms/dataviews/ms-menu/MsMenuTree.js.map +1 -1
- package/dist/cjs/modules/ms/dataviews/ms-menu/ms-permission-point/MsPermissionPointDefineForm.js.map +1 -1
- package/dist/cjs/modules/ms/dataviews/ms-menu/ms-route/MsRouteForm.js.map +1 -1
- package/dist/cjs/modules/ms/dataviews/ms-menu/ms-route/MsRouteTable.js.map +1 -1
- package/dist/cjs/modules/ms/dataviews/ms-role/MsRoleForm.js.map +1 -1
- package/dist/cjs/modules/ms/dataviews/ms-role/MsRolePermissionConfigTable.js.map +1 -1
- package/dist/cjs/modules/ms/dataviews/ms-role/MsRoleTable.js.map +1 -1
- package/dist/cjs/modules/ms/image-upload-context/index.js +55 -0
- package/dist/cjs/modules/ms/image-upload-context/index.js.map +1 -0
- package/dist/cjs/modules/ms/index.js +2 -0
- package/dist/cjs/modules/ms/index.js.map +1 -1
- package/dist/cjs/modules/ms/material-upload-context/MaterialUploadContext.js.map +1 -1
- package/dist/cjs/modules/ms/material-upload-context/material-upload-context-options.js.map +1 -1
- package/dist/cjs/modules/ms/material-upload-context/material-upload-context.js.map +1 -1
- package/dist/cjs/modules/ms/pages/icons/index.vue2.js.map +1 -1
- package/dist/cjs/modules/ms/pages/local-log/index.vue2.js.map +1 -1
- package/dist/cjs/modules/ms/pages/ms-material/index.vue2.js +1 -0
- package/dist/cjs/modules/ms/pages/ms-material/index.vue2.js.map +1 -1
- package/dist/cjs/modules/ms/pages/ms-menu/index.vue2.js +1 -0
- package/dist/cjs/modules/ms/pages/ms-menu/index.vue2.js.map +1 -1
- package/dist/cjs/modules/ms/pages/ms-role/components/aside.vue.js +1 -0
- package/dist/cjs/modules/ms/pages/ms-role/components/aside.vue.js.map +1 -1
- package/dist/cjs/modules/ms/pages/ms-role/components/role-permission-config/role-permission-config-options.js +1 -0
- package/dist/cjs/modules/ms/pages/ms-role/components/role-permission-config/role-permission-config-options.js.map +1 -1
- package/dist/cjs/modules/ms/pages/ms-role/components/role-permission-config/role-permission-config.js.map +1 -1
- package/dist/cjs/modules/ms/pages/ms-role/index.vue2.js +1 -0
- package/dist/cjs/modules/ms/pages/ms-role/index.vue2.js.map +1 -1
- package/dist/cjs/page/index/404.vue.js.map +1 -1
- package/dist/cjs/page/index/dv/default/edit.vue2.js.map +1 -1
- package/dist/cjs/page/index/dv/default/single/list/dialog.vue2.js.map +1 -1
- package/dist/cjs/page/index/dv/default/single/list/normal.vue2.js.map +1 -1
- package/dist/cjs/page/index/dv/default/single/table-tree/dialog.vue2.js.map +1 -1
- package/dist/cjs/page/index/dv/default/single/table-tree/normal.vue2.js.map +1 -1
- package/dist/cjs/page/index/dv/default/single/tree/dialog.vue2.js.map +1 -1
- package/dist/cjs/page/index/dv/default/table.vue2.js.map +1 -1
- package/dist/cjs/page/login/index.vue2.js.map +1 -1
- package/dist/cjs/page/signup/index.vue2.js.map +1 -1
- package/dist/cjs/router-middleware/auth.js.map +1 -1
- package/dist/esm/components/abstract/abstract-select/abstract-select-options.js.map +1 -1
- package/dist/esm/components/abstract/abstract-select/abstract-select.js.map +1 -1
- package/dist/esm/components/abstract/abstract-select/index.js.map +1 -1
- package/dist/esm/components/basic/button/button-options.js.map +1 -1
- package/dist/esm/components/basic/code-editor/code-editor-options.js.map +1 -1
- package/dist/esm/components/basic/code-editor/code-editor.js.map +1 -1
- package/dist/esm/components/basic/code-editor/index.js.map +1 -1
- package/dist/esm/components/basic/config-provider/config-provider-options.js.map +1 -1
- package/dist/esm/components/basic/data-select/data-select-options.js.map +1 -1
- package/dist/esm/components/basic/data-select/data-select.js.map +1 -1
- package/dist/esm/components/basic/data-table-select/data-table-select-options.js.map +1 -1
- package/dist/esm/components/basic/data-table-select/data-table-select.js.map +1 -1
- package/dist/esm/components/basic/data-table-select/index.js.map +1 -1
- package/dist/esm/components/basic/data-tree-select/index.js.map +1 -1
- package/dist/esm/components/basic/date-picker/date-picker-options.js.map +1 -1
- package/dist/esm/components/basic/date-picker/date-picker.js.map +1 -1
- package/dist/esm/components/basic/date-picker/index.js.map +1 -1
- package/dist/esm/components/basic/doc-editor/editor.vue.js.map +1 -1
- package/dist/esm/components/basic/doc-editor/plugins/HtmlBlockPlugin/DocHtmlBlockComponent.js.map +1 -1
- package/dist/esm/components/basic/doc-editor/plugins/HtmlBlockPlugin/index.vue.js.map +1 -1
- package/dist/esm/components/basic/icon-select/icon-select-options.js.map +1 -1
- package/dist/esm/components/basic/icon-select/icon-select.js.map +1 -1
- package/dist/esm/components/basic/icon-select/index.js.map +1 -1
- package/dist/esm/components/basic/image-cropper/image-cropper-api.js +3 -1
- package/dist/esm/components/basic/image-cropper/image-cropper-api.js.map +1 -1
- package/dist/esm/components/basic/image-cropper/image-cropper-content-options.js +2 -0
- package/dist/esm/components/basic/image-cropper/image-cropper-content-options.js.map +1 -1
- package/dist/esm/components/basic/image-cropper/image-cropper-content.js +25 -24
- package/dist/esm/components/basic/image-cropper/image-cropper-content.js.map +1 -1
- package/dist/esm/components/basic/image-cropper/index.js.map +1 -1
- package/dist/esm/components/basic/json-editor/json-editor-options.js.map +1 -1
- package/dist/esm/components/basic/json-editor/json-editor.js.map +1 -1
- package/dist/esm/components/basic/page-container/index.js.map +1 -1
- package/dist/esm/components/basic/page-container/page-container.js.map +1 -1
- package/dist/esm/components/basic/radio/index.js.map +1 -1
- package/dist/esm/components/basic/radio/radio-options.js.map +1 -1
- package/dist/esm/components/basic/radio/radio.js.map +1 -1
- package/dist/esm/components/basic/system-provider/system-provider.js.map +1 -1
- package/dist/esm/components/basic/upload-file/context/WebFileUploadContext.js.map +1 -1
- package/dist/esm/components/basic/upload-file/ui/upload-image/upload-image.js +2 -0
- package/dist/esm/components/basic/upload-file/ui/upload-image/upload-image.js.map +1 -1
- package/dist/esm/components/business/resource-list/ResourceManager.js.map +1 -1
- package/dist/esm/components/business/resource-list/index.js.map +1 -1
- package/dist/esm/components/business/resource-manager/index.js.map +1 -1
- package/dist/esm/components/business/resource-select/index.js.map +1 -1
- package/dist/esm/components/business/resource-select/resource-select-api.js.map +1 -1
- package/dist/esm/components/business/verify-dialog/verify-dialog.js.map +1 -1
- package/dist/esm/components/data-model/data-filter-drawer/data-filter-drawer-options.js.map +1 -1
- package/dist/esm/components/data-model/data-filter-drawer/data-filter-drawer.js.map +1 -1
- package/dist/esm/components/data-model/data-filter-drawer/index.js.map +1 -1
- package/dist/esm/components/data-model/data-filter-form/components/condition-date/condition-date-options.js.map +1 -1
- package/dist/esm/components/data-model/data-filter-form/components/condition-date/condition-date.js.map +1 -1
- package/dist/esm/components/data-model/data-filter-form/components/condition-input/condition-input-options.js.map +1 -1
- package/dist/esm/components/data-model/data-filter-form/components/condition-input/condition-input.js.map +1 -1
- package/dist/esm/components/data-model/data-filter-form/components/condition-number/condition-number-options.js.map +1 -1
- package/dist/esm/components/data-model/data-filter-form/components/condition-number/condition-number.js.map +1 -1
- package/dist/esm/components/data-model/data-filter-form/components/condition-select/condition-select-options.js.map +1 -1
- package/dist/esm/components/data-model/data-filter-form/components/condition-select/condition-select.js.map +1 -1
- package/dist/esm/components/data-model/data-filter-form/composables/use-condition.js.map +1 -1
- package/dist/esm/components/data-model/data-filter-form/data-filter-form-item/data-filter-form-item.js.map +1 -1
- package/dist/esm/components/data-model/data-filter-form/data-filter-form-options.js.map +1 -1
- package/dist/esm/components/data-model/data-filter-form/data-filter-form.js.map +1 -1
- package/dist/esm/components/data-model/data-filter-form/index.js.map +1 -1
- package/dist/esm/components/data-model/data-filter-form/token.js.map +1 -1
- package/dist/esm/components/data-model/data-form/components/form-detail/form-detail-options.js.map +1 -1
- 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/composables/use-form-item.js.map +1 -1
- package/dist/esm/components/data-model/data-form/data-form-item/data-form-item.js.map +1 -1
- package/dist/esm/components/data-model/data-form/data-form.js.map +1 -1
- package/dist/esm/components/data-model/data-form/index.js.map +1 -1
- package/dist/esm/components/data-model/data-form/token.js.map +1 -1
- package/dist/esm/components/data-model/data-form/views/form/form-options.js.map +1 -1
- package/dist/esm/components/data-model/data-form/views/form/form.js.map +1 -1
- package/dist/esm/components/data-model/data-form/views/form-view/form-view.js.map +1 -1
- package/dist/esm/components/data-model/data-table/components/column-action/column-action-options.js.map +1 -1
- package/dist/esm/components/data-model/data-table/components/column-action/column-action.js.map +1 -1
- package/dist/esm/components/data-model/data-table/components/column-date/column-date.js.map +1 -1
- package/dist/esm/components/data-model/data-table/components/column-icon/column-icon.js.map +1 -1
- package/dist/esm/components/data-model/data-table/components/column-image/column-image-options.js.map +1 -1
- package/dist/esm/components/data-model/data-table/components/column-json/column-json-options.js.map +1 -1
- package/dist/esm/components/data-model/data-table/components/column-json/column-json.js.map +1 -1
- package/dist/esm/components/data-model/data-table/components/column-link/column-link-options.js.map +1 -1
- package/dist/esm/components/data-model/data-table/components/column-object-mapping-text/column-object-mapping-text-options.js.map +1 -1
- package/dist/esm/components/data-model/data-table/components/column-select/column-select-header.js.map +1 -1
- package/dist/esm/components/data-model/data-table/components/column-select/column-select-options.js.map +1 -1
- package/dist/esm/components/data-model/data-table/components/column-select/column-select.js.map +1 -1
- package/dist/esm/components/data-model/data-table/components/column-sort/column-sort-options.js.map +1 -1
- package/dist/esm/components/data-model/data-table/components/column-sort/column-sort.js.map +1 -1
- package/dist/esm/components/data-model/data-table/components/column-sort/index.js.map +1 -1
- package/dist/esm/components/data-model/data-table/components/column-switch/column-switch-options.js.map +1 -1
- package/dist/esm/components/data-model/data-table/components/column-switch/column-switch.js.map +1 -1
- package/dist/esm/components/data-model/data-table/components/column-tag/column-tag-options.js.map +1 -1
- package/dist/esm/components/data-model/data-table/components/column-tag/column-tag.js.map +1 -1
- package/dist/esm/components/data-model/data-table/components/column-text/column-text-options.js.map +1 -1
- package/dist/esm/components/data-model/data-table/components/column-text/column-text.js.map +1 -1
- package/dist/esm/components/data-model/data-table/components/header-components/batch-opt/batch-opt.js.map +1 -1
- package/dist/esm/components/data-model/data-table/components/header-components/batch-opt/index.js.map +1 -1
- package/dist/esm/components/data-model/data-table/components/header-components/table-filter/index.js.map +1 -1
- package/dist/esm/components/data-model/data-table/components/header-components/table-filter/table-filter.js.map +1 -1
- package/dist/esm/components/data-model/data-table/composables/use-query-params.js.map +1 -1
- package/dist/esm/components/data-model/data-table/data-table-column/data-table-column-options.js.map +1 -1
- package/dist/esm/components/data-model/data-table/data-table-column/data-table-column.js.map +1 -1
- package/dist/esm/components/data-model/data-table/data-table-column/index.js.map +1 -1
- package/dist/esm/components/data-model/data-table/data-table-options.js.map +1 -1
- package/dist/esm/components/data-model/data-table/data-table.js.map +1 -1
- package/dist/esm/components/data-model/data-table/index.js.map +1 -1
- package/dist/esm/components/data-model/data-table/token.js.map +1 -1
- package/dist/esm/components/data-model/data-table/views/table/table-options.js.map +1 -1
- package/dist/esm/components/data-model/data-table/views/table/table.js.map +1 -1
- package/dist/esm/components/data-model/data-table/views/table-tree/table-tree-options.js.map +1 -1
- package/dist/esm/components/data-model/data-table/views/table-tree/table-tree.js.map +1 -1
- package/dist/esm/components/data-model/data-table/views/table-view/classify-search/classify-search.js.map +1 -1
- package/dist/esm/components/data-model/data-table/views/table-view/header/header.js.map +1 -1
- package/dist/esm/components/data-model/data-table/views/table-view/table-view-options.js.map +1 -1
- package/dist/esm/components/data-model/data-table/views/table-view/table-view.js.map +1 -1
- package/dist/esm/components/data-model/data-table/views/tree/index.js.map +1 -1
- package/dist/esm/components/data-model/data-table/views/tree/tree-options.js.map +1 -1
- package/dist/esm/components/data-model/data-table/views/tree/tree.js.map +1 -1
- package/dist/esm/components/data-model/data-table/views/tree-view/tree-view-options.js.map +1 -1
- package/dist/esm/components/data-model/data-table/views/tree-view/tree-view.js.map +1 -1
- package/dist/esm/components/data-model/data-table-pagination/data-table-pagination-options.js.map +1 -1
- package/dist/esm/components/data-model/data-table-pagination/data-table-pagination.js.map +1 -1
- package/dist/esm/composables/use-column-component.js.map +1 -1
- package/dist/esm/composables/use-i18n.js.map +1 -1
- package/dist/esm/composables/use-single-view.js.map +1 -1
- package/dist/esm/constants/data-model.js.map +1 -1
- package/dist/esm/constants/menu.js.map +1 -1
- package/dist/esm/constants/route.js.map +1 -1
- package/dist/esm/core/MSAppClient.js.map +1 -1
- package/dist/esm/core/MkModule.js.map +1 -1
- package/dist/esm/core/PageManager.js.map +1 -1
- package/dist/esm/core/Router.js.map +1 -1
- package/dist/esm/core/UserInfo.js.map +1 -1
- package/dist/esm/core/UserSession.js.map +1 -1
- package/dist/esm/core/component/ConfigComponents.js.map +1 -1
- package/dist/esm/core/component/DataFilterComponents.js.map +1 -1
- package/dist/esm/core/component/DataTableComponents.js.map +1 -1
- package/dist/esm/core/component/DataTableHeaderComponents.js.map +1 -1
- package/dist/esm/core/menu/Menu.js.map +1 -1
- package/dist/esm/core/menu/MenuNode.js.map +1 -1
- package/dist/esm/core/tabs/Tab.js.map +1 -1
- package/dist/esm/define-data-form.js.map +1 -1
- package/dist/esm/define-data-table.js.map +1 -1
- package/dist/esm/define-data-tree.js.map +1 -1
- package/dist/esm/index.js +2 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/init-application.js.map +1 -1
- package/dist/esm/installer.js.map +1 -1
- package/dist/esm/layouts/components/dialogs/dialogs.js.map +1 -1
- package/dist/esm/layouts/components/header/index.js.map +1 -1
- package/dist/esm/message-impl/DialogerImpl.js.map +1 -1
- package/dist/esm/modules/cms/components/part-tree/index.vue.js +1 -0
- package/dist/esm/modules/cms/components/part-tree/index.vue.js.map +1 -1
- package/dist/esm/modules/cms/constants/index.js.map +1 -1
- package/dist/esm/modules/cms/dataviews/cms-ad-contents/CmsAdContentsForm.js +2 -0
- package/dist/esm/modules/cms/dataviews/cms-ad-contents/CmsAdContentsForm.js.map +1 -1
- package/dist/esm/modules/cms/dataviews/cms-ad-contents/CmsAdContentsTable.js.map +1 -1
- package/dist/esm/modules/cms/dataviews/cms-articles/CmsArticlesForm.js +2 -0
- package/dist/esm/modules/cms/dataviews/cms-articles/CmsArticlesForm.js.map +1 -1
- package/dist/esm/modules/cms/dataviews/cms-articles/cms-article-atlas/CmsArticleAtlasForm.js +2 -0
- package/dist/esm/modules/cms/dataviews/cms-articles/cms-article-atlas/CmsArticleAtlasForm.js.map +1 -1
- package/dist/esm/modules/cms/dataviews/cms-articles/cms-article-atlas/CmsArticleAtlasTable.js.map +1 -1
- package/dist/esm/modules/cms/dataviews/cms-parts/CmsPartTree.js.map +1 -1
- package/dist/esm/modules/cms/pages/cms-ad/index.vue2.js +2 -1
- package/dist/esm/modules/cms/pages/cms-ad/index.vue2.js.map +1 -1
- package/dist/esm/modules/cms/pages/cms-contents/article-edit-add-page.vue2.js +4 -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-list.vue.js +2 -0
- package/dist/esm/modules/cms/pages/cms-contents/components/article-list.vue.js.map +1 -1
- package/dist/esm/modules/cms/pages/cms-contents/index.vue2.js +2 -0
- package/dist/esm/modules/cms/pages/cms-contents/index.vue2.js.map +1 -1
- package/dist/esm/modules/cms/pages/cms-resource/index.vue2.js.map +1 -1
- package/dist/esm/modules/ms/components/image-select/image-select-api.js +77 -0
- package/dist/esm/modules/ms/components/image-select/image-select-api.js.map +1 -0
- package/dist/esm/modules/ms/components/image-select/image-select-panel.js +112 -0
- package/dist/esm/modules/ms/components/image-select/image-select-panel.js.map +1 -0
- package/dist/esm/modules/ms/components/image-select/index.js +7 -0
- package/dist/esm/modules/ms/components/image-select/index.js.map +1 -0
- package/dist/esm/modules/ms/components/markdown-editor/markdown-editor.js.map +1 -1
- package/dist/esm/modules/ms/components/material-list/components/file-view/file-view.js.map +1 -1
- package/dist/esm/modules/ms/components/material-list/components/image-view/image-view.js.map +1 -1
- package/dist/esm/modules/ms/components/material-list/index.js.map +1 -1
- package/dist/esm/modules/ms/components/material-list/material-group-form-popover.js +1 -0
- package/dist/esm/modules/ms/components/material-list/material-group-form-popover.js.map +1 -1
- package/dist/esm/modules/ms/components/material-list/material-group.js +1 -0
- package/dist/esm/modules/ms/components/material-list/material-group.js.map +1 -1
- package/dist/esm/modules/ms/components/material-list/material-item.vue.js.map +1 -1
- package/dist/esm/modules/ms/components/material-list/material-list-options.js.map +1 -1
- package/dist/esm/modules/ms/components/material-list/material-list.js.map +1 -1
- package/dist/esm/modules/ms/components/material-select/index.js.map +1 -1
- package/dist/esm/modules/ms/components/material-select/material-select-api.js.map +1 -1
- package/dist/esm/modules/ms/components/rich-text-editor/index.js.map +1 -1
- package/dist/esm/modules/ms/dataviews/log/local-log/LocalLogTree.js.map +1 -1
- package/dist/esm/modules/ms/dataviews/ms-config/MsConfigForm.js.map +1 -1
- package/dist/esm/modules/ms/dataviews/ms-config/MsConfigTable.js.map +1 -1
- package/dist/esm/modules/ms/dataviews/ms-deny-ip-access-list/MsDenyIPAccessListTable.js.map +1 -1
- package/dist/esm/modules/ms/dataviews/ms-ip-white-list/MsIPWhitelistTable.js.map +1 -1
- package/dist/esm/modules/ms/dataviews/ms-material/MsMaterialTable.js +12 -2
- package/dist/esm/modules/ms/dataviews/ms-material/MsMaterialTable.js.map +1 -1
- package/dist/esm/modules/ms/dataviews/ms-material/ms-material-group/MsMaterialGroupTree.js.map +1 -1
- package/dist/esm/modules/ms/dataviews/ms-member/MsMemberForm.js.map +1 -1
- package/dist/esm/modules/ms/dataviews/ms-member/MsMemberTable.js.map +1 -1
- package/dist/esm/modules/ms/dataviews/ms-member/components/MemberNickNameColumn.js.map +1 -1
- package/dist/esm/modules/ms/dataviews/ms-member/components/MemberRolesColumn.js.map +1 -1
- package/dist/esm/modules/ms/dataviews/ms-member-role/MsMemberRoleForm.js.map +1 -1
- package/dist/esm/modules/ms/dataviews/ms-member-role/MsMemberRoleTable.js.map +1 -1
- package/dist/esm/modules/ms/dataviews/ms-menu/MsMenuTable.js.map +1 -1
- package/dist/esm/modules/ms/dataviews/ms-menu/MsMenuTree.js.map +1 -1
- package/dist/esm/modules/ms/dataviews/ms-menu/ms-permission-point/MsPermissionPointDefineForm.js.map +1 -1
- package/dist/esm/modules/ms/dataviews/ms-menu/ms-route/MsRouteForm.js.map +1 -1
- package/dist/esm/modules/ms/dataviews/ms-menu/ms-route/MsRouteTable.js.map +1 -1
- package/dist/esm/modules/ms/dataviews/ms-role/MsRoleForm.js.map +1 -1
- package/dist/esm/modules/ms/dataviews/ms-role/MsRolePermissionConfigTable.js.map +1 -1
- package/dist/esm/modules/ms/dataviews/ms-role/MsRoleTable.js.map +1 -1
- package/dist/esm/modules/ms/image-upload-context/index.js +55 -0
- package/dist/esm/modules/ms/image-upload-context/index.js.map +1 -0
- package/dist/esm/modules/ms/index.js +2 -0
- package/dist/esm/modules/ms/index.js.map +1 -1
- package/dist/esm/modules/ms/material-upload-context/MaterialUploadContext.js.map +1 -1
- package/dist/esm/modules/ms/material-upload-context/material-upload-context-options.js.map +1 -1
- package/dist/esm/modules/ms/material-upload-context/material-upload-context.js.map +1 -1
- package/dist/esm/modules/ms/pages/icons/index.vue2.js.map +1 -1
- package/dist/esm/modules/ms/pages/local-log/index.vue2.js.map +1 -1
- package/dist/esm/modules/ms/pages/ms-material/index.vue2.js +1 -0
- package/dist/esm/modules/ms/pages/ms-material/index.vue2.js.map +1 -1
- package/dist/esm/modules/ms/pages/ms-menu/index.vue2.js +1 -0
- package/dist/esm/modules/ms/pages/ms-menu/index.vue2.js.map +1 -1
- package/dist/esm/modules/ms/pages/ms-role/components/aside.vue.js +1 -0
- package/dist/esm/modules/ms/pages/ms-role/components/aside.vue.js.map +1 -1
- package/dist/esm/modules/ms/pages/ms-role/components/role-permission-config/role-permission-config-options.js +1 -0
- package/dist/esm/modules/ms/pages/ms-role/components/role-permission-config/role-permission-config-options.js.map +1 -1
- package/dist/esm/modules/ms/pages/ms-role/components/role-permission-config/role-permission-config.js.map +1 -1
- package/dist/esm/modules/ms/pages/ms-role/index.vue2.js +1 -0
- package/dist/esm/modules/ms/pages/ms-role/index.vue2.js.map +1 -1
- package/dist/esm/page/index/404.vue.js.map +1 -1
- package/dist/esm/page/index/dv/default/edit.vue2.js.map +1 -1
- package/dist/esm/page/index/dv/default/single/list/dialog.vue2.js.map +1 -1
- package/dist/esm/page/index/dv/default/single/list/normal.vue2.js.map +1 -1
- package/dist/esm/page/index/dv/default/single/table-tree/dialog.vue2.js.map +1 -1
- package/dist/esm/page/index/dv/default/single/table-tree/normal.vue2.js.map +1 -1
- package/dist/esm/page/index/dv/default/single/tree/dialog.vue2.js.map +1 -1
- package/dist/esm/page/index/dv/default/table.vue2.js.map +1 -1
- package/dist/esm/page/login/index.vue2.js.map +1 -1
- package/dist/esm/page/signup/index.vue2.js.map +1 -1
- package/dist/esm/router-middleware/auth.js.map +1 -1
- package/dist/style/index.css +2 -2
- package/dist/style/src/components/basic/data-tree-select/data-tree-select.scss +11 -11
- package/dist/style/src/components/classify-search.scss +31 -31
- package/dist/style/src/components/code-editor.scss +7 -7
- package/dist/style/src/components/data-filter-drawer.scss +5 -5
- package/dist/style/src/components/data-table-select-dialog.scss +30 -30
- package/dist/style/src/components/form/form-detail.scss +28 -28
- package/dist/style/src/components/form/form-icon-select.scss +35 -35
- package/dist/style/src/components/image-cropper.scss +34 -34
- package/dist/style/src/components/index.scss +60 -60
- package/dist/style/src/components/material-list.scss +83 -83
- package/dist/style/src/components/page-container.scss +20 -20
- package/dist/style/src/components/pagination.scss +21 -21
- package/dist/style/src/components/table/column-sort.scss +17 -17
- package/dist/style/src/components/table/index.scss +6 -6
- package/dist/style/src/components/table/table-filter.scss +12 -12
- package/dist/style/src/components/table-view.scss +78 -78
- package/dist/style/src/index.scss +28 -28
- package/dist/style/src/modules/ms/pages/icon.scss +50 -50
- package/dist/style/src/modules/ms/pages/index.scss +3 -3
- package/dist/style/src/page/dv/index.scss +3 -3
- package/dist/style/src/page/dv/ms-menu.scss +9 -9
- package/dist/style/src/theme/theme.scss +324 -324
- package/dist/style/theme/theme.css +1 -1
- package/dist/types/components/basic/image-cropper/image-cropper-api.d.ts +2 -0
- package/dist/types/components/basic/image-cropper/image-cropper-content-options.d.ts +2 -0
- package/dist/types/components/basic/image-cropper/image-cropper-content.d.ts +6 -0
- package/dist/types/components/basic/image-cropper/index.d.ts +6 -0
- package/dist/types/modules/ms/components/image-select/image-select-api.d.ts +5 -0
- package/dist/types/modules/ms/components/image-select/image-select-panel.d.ts +8 -0
- package/dist/types/modules/ms/components/image-select/index.d.ts +3 -0
- package/dist/types/modules/ms/dataviews/ms-material/MsMaterialTable.d.ts +1 -1
- package/dist/types/modules/ms/image-upload-context/index.d.ts +13 -0
- package/dist/types/modules/ms/index.d.ts +1 -0
- package/package.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CmsPartTree.js","sources":["../../../../../../src/modules/cms/dataviews/cms-parts/CmsPartTree.ts"],"sourcesContent":["import { ActionButton, DataTableOptions, DeleteButton, EditButton, TableActionColumn, TableColumn, DataTree, DataTreeNode } from \"@maketribe/dm\";\nimport { DATA_MODEL_NAME } from \"../../../../constants\";\nimport { MODULE_NAME } from \"../../constants\";\nimport { OrderType, R, ResponseConfig } from \"@maketribe/request\";\nimport { MSAppClient } from \"../../../../core\";\n\nexport class CmsPartTree extends DataTree {\n\tstatic [DATA_MODEL_NAME]: string = \"part\";\n\n\tconstructor(options: Omit<DataTableOptions, \"name\"> = {}) {\n\t\tsuper({\n\t\t\tname: CmsPartTree[DATA_MODEL_NAME],\n\t\t\tmoduleName: MODULE_NAME,\n\t\t\tprops: { parent: \"parentId\" },\n sortFieldName: \"sortNo\",\n\t\t\t...options,\n\t\t});\n\t}\n\n\tprotected async initialize() {\n\t\tawait super.initialize();\n \n\t\tthis.sorter.setColumnSort(\"sortNo\", OrderType.DESC);\n\n\t\t// const { data } = await new CmsPartTypesTable().dataViewRequest.allList();\n\n\t\t// this.dataFilter.setColumns([new FilterColumn({ name: \"name\", label: \"栏目名称\" })]);\n\n\t\tthis.setColumns([\n\t\t\tnew TableColumn({\n\t\t\t\tname: \"data.name\",\n\t\t\t\tlabel: \"栏目名称\",\n\t\t\t\talign: \"left\",\n\t\t\t\twidth: \"150px\",\n\t\t\t}),\n\t\t\t// new TableColumn({\n\t\t\t// \tname: \"data.cmsPartTypeId\",\n\t\t\t// \tlabel: \"栏目类型\",\n\t\t\t// \tcomponentInfo: \"MKColumnObjectMappingText\",\n\t\t\t// \tcomponentProps: {\n\t\t\t// \t\tmapping: data.data.reduce((result, cur) => {\n\t\t\t// \t\t\tresult[cur.id] = cur.desc;\n\t\t\t// \t\t\treturn result;\n\t\t\t// \t\t}, {}),\n\t\t\t// \t},\n\t\t\t// }),\n\t\t\tnew TableColumn({\n\t\t\t\tname: \"data.isHome\",\n\t\t\t\tlabel: \"是否是首页\",\n\t\t\t\tcomponentInfo: \"MKColumnObjectMappingText\",\n\t\t\t\tcomponentProps: {\n\t\t\t\t\tmapping: [\"否\", \"是\"],\n\t\t\t\t},\n\t\t\t}),\n\t\t\tnew TableColumn({\n\t\t\t\tname: \"data.isShowMenu\",\n\t\t\t\tlabel: \"是否在菜单\",\n\t\t\t\tcomponentInfo: \"MKColumnObjectMappingText\",\n\t\t\t\tcomponentProps: {\n\t\t\t\t\tmapping: [\"否\", \"是\"],\n\t\t\t\t},\n\t\t\t}),\n\t\t\tnew TableColumn({ name: \"sortNo\", label: \"排序号\" }),\n\t\t\tnew TableActionColumn({\n\t\t\t\twidth: \"180px\",\n\t\t\t\tbuttons: [\n\t\t\t\t\tnew EditButton(),\n\t\t\t\t\tnew DeleteButton(),\n\t\t\t\t\tnew ActionButton({\n\t\t\t\t\t\tlabel: \"栏目文章\",\n\t\t\t\t\t\thandler: (item) => {\n\t\t\t\t\t\t\tMSAppClient.instance?.vueRouter.push({\n\t\t\t\t\t\t\t\tpath: \"/dv/article\",\n\t\t\t\t\t\t\t\tquery: {\n\t\t\t\t\t\t\t\t\tcmsPartId: item.data.id,\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t},\n\t\t\t\t\t}),\n\t\t\t\t],\n\t\t\t}),\n\t\t]);\n\t}\n\n\tpublic nodeHasChildren(node: DataTreeNode<any>): boolean {\n\t\treturn true;\n\t\t// return ![\"1\"].includes(node.data.cmsPartTypeId);\n\t}\n\n load(params?: Record<string, any>): Promise<ResponseConfig<R<any[]> & { totalRecCount: string; }>> {\n return this.loadAll(params);\n }\n\n\tformatItem(item: any) {\n\t\titem.children = item.children || [];\n\n\t\treturn item;\n\t}\n\n}\n"],"names":["DataTree","DATA_MODEL_NAME","MODULE_NAME","OrderType","TableColumn","TableActionColumn","EditButton","DeleteButton","ActionButton","MSAppClient"],"mappings":";;;;;;;;;;;;;;;AAMO,MAAM,eAAN,MAAM,sBAAoBA,QAAAA,UACxBC,eAAAA,iBADwBD,IAAS;AAAA,EAGzC,YAAY,UAA0C,IAAI;AACnD,UAAA;AAAA,MACL,MAAM,aAAYC,yBAAe;AAAA,MACjC,YAAYC,MAAA;AAAA,MACZ,OAAO,EAAE,QAAQ,WAAW;AAAA,MACzB,eAAe;AAAA,MAClB,GAAG;AAAA,IAAA,CACH;AAAA,EACF;AAAA,EAEA,MAAgB,aAAa;AAC5B,UAAM,MAAM;AAEZ,SAAK,OAAO,cAAc,UAAUC,QAAA,UAAU,IAAI;AAMlD,SAAK,WAAW;AAAA,MACf,IAAIC,eAAY;AAAA,QACf,MAAM;AAAA,QACN,OAAO;AAAA,QACP,OAAO;AAAA,QACP,OAAO;AAAA,MAAA,CACP;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MAYD,IAAIA,eAAY;AAAA,QACf,MAAM;AAAA,QACN,OAAO;AAAA,QACP,eAAe;AAAA,QACf,gBAAgB;AAAA,UACf,SAAS,CAAC,KAAK,GAAG;AAAA,QACnB;AAAA,MAAA,CACA;AAAA,MACD,IAAIA,eAAY;AAAA,QACf,MAAM;AAAA,QACN,OAAO;AAAA,QACP,eAAe;AAAA,QACf,gBAAgB;AAAA,UACf,SAAS,CAAC,KAAK,GAAG;AAAA,QACnB;AAAA,MAAA,CACA;AAAA,MACD,IAAIA,GAAAA,YAAY,EAAE,MAAM,UAAU,OAAO,OAAO;AAAA,MAChD,IAAIC,qBAAkB;AAAA,QACrB,OAAO;AAAA,QACP,SAAS;AAAA,UACR,IAAIC,cAAW;AAAA,UACf,IAAIC,gBAAa;AAAA,UACjB,IAAIC,gBAAa;AAAA,YAChB,OAAO;AAAA,YACP,SAAS,CAAC,SAAS;;AACNC,eAAAA,MAAAA,wBAAA,aAAAA,gBAAAA,IAAU,UAAU,KAAK;AAAA,gBACpC,MAAM;AAAA,gBACN,OAAO;AAAA,kBACN,WAAW,KAAK,KAAK;AAAA,gBACtB;AAAA,cAAA;AAAA,YAEF;AAAA,UAAA,CACA;AAAA,QACF;AAAA,MAAA,CACA;AAAA,IAAA,CACD;AAAA,EACF;AAAA,EAEO,gBAAgB,MAAkC;AACjD,WAAA;AAAA,EAER;AAAA,EAEC,KAAK,QAA8F;AACxF,WAAA,KAAK,QAAQ,MAAM;AAAA,EAC9B;AAAA,EAED,WAAW,MAAW;AAChB,SAAA,WAAW,KAAK,YAAY,CAAA;AAE1B,WAAA;AAAA,EACR;AAED;AA5FC,cADY,cACJR,IAA2B;AAD7B,IAAM,cAAN;;"}
|
|
1
|
+
{"version":3,"file":"CmsPartTree.js","sources":["../../../../../../src/modules/cms/dataviews/cms-parts/CmsPartTree.ts"],"sourcesContent":["import { ActionButton, DataTableOptions, DeleteButton, EditButton, TableActionColumn, TableColumn, DataTree, DataTreeNode } from \"@maketribe/dm\";\r\nimport { DATA_MODEL_NAME } from \"../../../../constants\";\r\nimport { MODULE_NAME } from \"../../constants\";\r\nimport { OrderType, R, ResponseConfig } from \"@maketribe/request\";\r\nimport { MSAppClient } from \"../../../../core\";\r\n\r\nexport class CmsPartTree extends DataTree {\r\n\tstatic [DATA_MODEL_NAME]: string = \"part\";\r\n\r\n\tconstructor(options: Omit<DataTableOptions, \"name\"> = {}) {\r\n\t\tsuper({\r\n\t\t\tname: CmsPartTree[DATA_MODEL_NAME],\r\n\t\t\tmoduleName: MODULE_NAME,\r\n\t\t\tprops: { parent: \"parentId\" },\r\n sortFieldName: \"sortNo\",\r\n\t\t\t...options,\r\n\t\t});\r\n\t}\r\n\r\n\tprotected async initialize() {\r\n\t\tawait super.initialize();\r\n \r\n\t\tthis.sorter.setColumnSort(\"sortNo\", OrderType.DESC);\r\n\r\n\t\t// const { data } = await new CmsPartTypesTable().dataViewRequest.allList();\r\n\r\n\t\t// this.dataFilter.setColumns([new FilterColumn({ name: \"name\", label: \"栏目名称\" })]);\r\n\r\n\t\tthis.setColumns([\r\n\t\t\tnew TableColumn({\r\n\t\t\t\tname: \"data.name\",\r\n\t\t\t\tlabel: \"栏目名称\",\r\n\t\t\t\talign: \"left\",\r\n\t\t\t\twidth: \"150px\",\r\n\t\t\t}),\r\n\t\t\t// new TableColumn({\r\n\t\t\t// \tname: \"data.cmsPartTypeId\",\r\n\t\t\t// \tlabel: \"栏目类型\",\r\n\t\t\t// \tcomponentInfo: \"MKColumnObjectMappingText\",\r\n\t\t\t// \tcomponentProps: {\r\n\t\t\t// \t\tmapping: data.data.reduce((result, cur) => {\r\n\t\t\t// \t\t\tresult[cur.id] = cur.desc;\r\n\t\t\t// \t\t\treturn result;\r\n\t\t\t// \t\t}, {}),\r\n\t\t\t// \t},\r\n\t\t\t// }),\r\n\t\t\tnew TableColumn({\r\n\t\t\t\tname: \"data.isHome\",\r\n\t\t\t\tlabel: \"是否是首页\",\r\n\t\t\t\tcomponentInfo: \"MKColumnObjectMappingText\",\r\n\t\t\t\tcomponentProps: {\r\n\t\t\t\t\tmapping: [\"否\", \"是\"],\r\n\t\t\t\t},\r\n\t\t\t}),\r\n\t\t\tnew TableColumn({\r\n\t\t\t\tname: \"data.isShowMenu\",\r\n\t\t\t\tlabel: \"是否在菜单\",\r\n\t\t\t\tcomponentInfo: \"MKColumnObjectMappingText\",\r\n\t\t\t\tcomponentProps: {\r\n\t\t\t\t\tmapping: [\"否\", \"是\"],\r\n\t\t\t\t},\r\n\t\t\t}),\r\n\t\t\tnew TableColumn({ name: \"sortNo\", label: \"排序号\" }),\r\n\t\t\tnew TableActionColumn({\r\n\t\t\t\twidth: \"180px\",\r\n\t\t\t\tbuttons: [\r\n\t\t\t\t\tnew EditButton(),\r\n\t\t\t\t\tnew DeleteButton(),\r\n\t\t\t\t\tnew ActionButton({\r\n\t\t\t\t\t\tlabel: \"栏目文章\",\r\n\t\t\t\t\t\thandler: (item) => {\r\n\t\t\t\t\t\t\tMSAppClient.instance?.vueRouter.push({\r\n\t\t\t\t\t\t\t\tpath: \"/dv/article\",\r\n\t\t\t\t\t\t\t\tquery: {\r\n\t\t\t\t\t\t\t\t\tcmsPartId: item.data.id,\r\n\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t}),\r\n\t\t\t\t],\r\n\t\t\t}),\r\n\t\t]);\r\n\t}\r\n\r\n\tpublic nodeHasChildren(node: DataTreeNode<any>): boolean {\r\n\t\treturn true;\r\n\t\t// return ![\"1\"].includes(node.data.cmsPartTypeId);\r\n\t}\r\n\r\n load(params?: Record<string, any>): Promise<ResponseConfig<R<any[]> & { totalRecCount: string; }>> {\r\n return this.loadAll(params);\r\n }\r\n\r\n\tformatItem(item: any) {\r\n\t\titem.children = item.children || [];\r\n\r\n\t\treturn item;\r\n\t}\r\n\r\n}\r\n"],"names":["DataTree","DATA_MODEL_NAME","MODULE_NAME","OrderType","TableColumn","TableActionColumn","EditButton","DeleteButton","ActionButton","MSAppClient"],"mappings":";;;;;;;;;;;;;;;AAMO,MAAM,eAAN,MAAM,sBAAoBA,QAAAA,UACxBC,eAAAA,iBADwBD,IAAS;AAAA,EAGzC,YAAY,UAA0C,IAAI;AACnD,UAAA;AAAA,MACL,MAAM,aAAYC,yBAAe;AAAA,MACjC,YAAYC,MAAA;AAAA,MACZ,OAAO,EAAE,QAAQ,WAAW;AAAA,MACzB,eAAe;AAAA,MAClB,GAAG;AAAA,IAAA,CACH;AAAA,EACF;AAAA,EAEA,MAAgB,aAAa;AAC5B,UAAM,MAAM;AAEZ,SAAK,OAAO,cAAc,UAAUC,QAAA,UAAU,IAAI;AAMlD,SAAK,WAAW;AAAA,MACf,IAAIC,eAAY;AAAA,QACf,MAAM;AAAA,QACN,OAAO;AAAA,QACP,OAAO;AAAA,QACP,OAAO;AAAA,MAAA,CACP;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MAYD,IAAIA,eAAY;AAAA,QACf,MAAM;AAAA,QACN,OAAO;AAAA,QACP,eAAe;AAAA,QACf,gBAAgB;AAAA,UACf,SAAS,CAAC,KAAK,GAAG;AAAA,QACnB;AAAA,MAAA,CACA;AAAA,MACD,IAAIA,eAAY;AAAA,QACf,MAAM;AAAA,QACN,OAAO;AAAA,QACP,eAAe;AAAA,QACf,gBAAgB;AAAA,UACf,SAAS,CAAC,KAAK,GAAG;AAAA,QACnB;AAAA,MAAA,CACA;AAAA,MACD,IAAIA,GAAAA,YAAY,EAAE,MAAM,UAAU,OAAO,OAAO;AAAA,MAChD,IAAIC,qBAAkB;AAAA,QACrB,OAAO;AAAA,QACP,SAAS;AAAA,UACR,IAAIC,cAAW;AAAA,UACf,IAAIC,gBAAa;AAAA,UACjB,IAAIC,gBAAa;AAAA,YAChB,OAAO;AAAA,YACP,SAAS,CAAC,SAAS;;AACNC,eAAAA,MAAAA,wBAAA,aAAAA,gBAAAA,IAAU,UAAU,KAAK;AAAA,gBACpC,MAAM;AAAA,gBACN,OAAO;AAAA,kBACN,WAAW,KAAK,KAAK;AAAA,gBACtB;AAAA,cAAA;AAAA,YAEF;AAAA,UAAA,CACA;AAAA,QACF;AAAA,MAAA,CACA;AAAA,IAAA,CACD;AAAA,EACF;AAAA,EAEO,gBAAgB,MAAkC;AACjD,WAAA;AAAA,EAER;AAAA,EAEC,KAAK,QAA8F;AACxF,WAAA,KAAK,QAAQ,MAAM;AAAA,EAC9B;AAAA,EAED,WAAW,MAAW;AAChB,SAAA,WAAW,KAAK,YAAY,CAAA;AAE1B,WAAA;AAAA,EACR;AAED;AA5FC,cADY,cACJR,IAA2B;AAD7B,IAAM,cAAN;;"}
|
|
@@ -10,6 +10,7 @@ require("../../../../core/DataModelDefines.js");
|
|
|
10
10
|
require("vue-router");
|
|
11
11
|
require("@maketribe/locale");
|
|
12
12
|
require("../../../ms/dataviews/ms-config/MsConfigTable.js");
|
|
13
|
+
require("lodash-es");
|
|
13
14
|
require("../../../../components/basic/svg-icon/index.js");
|
|
14
15
|
require("../../../../components/data-model/data-form/index.js");
|
|
15
16
|
require("../../../../components/data-model/data-table/index.js");
|
|
@@ -50,8 +51,8 @@ require("../../../ms/components/markdown-editor/index.js");
|
|
|
50
51
|
require("../../../ms/components/rich-text-editor/index.js");
|
|
51
52
|
require("../../../ms/material-upload-context/material-upload-context-options.js");
|
|
52
53
|
require("../../../ms/material-upload-context/material-upload-context.js");
|
|
53
|
-
require("@codemirror/lang-html");
|
|
54
54
|
const elIcons = require("@element-plus/icons-vue");
|
|
55
|
+
require("@codemirror/lang-html");
|
|
55
56
|
const _hoisted_1 = { class: "mk-cms-ad__warp" };
|
|
56
57
|
const _hoisted_2 = { style: { "color": "var(--el-text-color-regular)", "margin-left": "10px" } };
|
|
57
58
|
const _hoisted_3 = { class: "flex items-center" };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.vue2.js","sources":["../../../../../../src/modules/cms/pages/cms-ad/index.vue"],"sourcesContent":["<template>\r\n <div class=\"mk-cms-ad__warp\">\r\n <el-page-header style=\"background-color: #fff;padding: 10px;\" :icon=\"null\">\r\n <template #title>\r\n <h3 style=\"color: var(--el-text-color-regular);margin-left: 10px;\">\r\n <MKSvgIcon iconClass=\"Guide\" style=\"margin-right: 5px;\" />\r\n 广告位管理\r\n </h3>\r\n </template>\r\n <template #content>\r\n <el-input style=\"width: 240px\" placeholder=\"请输入广告位描述\" v-model=\"adSearchWord\">\r\n <template #prefix>\r\n <MKSvgIcon iconClass=\"Search\" />\r\n </template>\r\n </el-input>\r\n </template>\r\n <template #extra>\r\n <div class=\"flex items-center\">\r\n <el-button type=\"primary\" size=\"large\" text @click=\"showAdDefineHandle\">\r\n 添加广告位\r\n <MKSvgIcon iconClass=\"Plus\" style=\"margin-left: 10px;\" />\r\n </el-button>\r\n </div>\r\n </template>\r\n </el-page-header>\r\n <div class=\"mk-cms-ad__body\" v-loading=\"loading\">\r\n <el-scrollbar class=\"mk-cms-ad__body__scrollbar\">\r\n <el-card v-for=\"item in adDefineList\" :key=\"item.id\" class=\"mk-cms-ad__card\">\r\n <template #header>\r\n <div class=\"mk-cms-ad__card__header clearfix\">\r\n <span>\r\n <MKSvgIcon iconClass=\"Guide\" style=\"margin-right: 5px;\" />\r\n {{ item.desc }}\r\n </span>\r\n <div class=\"btn-box\">\r\n <MKSvgIcon class=\"btn\" iconClass=\"Plus\" style=\"color: #409EFF;\"\r\n @click=\"showAdContentHandler(item, false)\" />\r\n <MKSvgIcon class=\"btn\" iconClass=\"EditPen\" style=\"color: #409EFF;\" @click=\"showAdDefineHandle(item)\" />\r\n <MKSvgIcon class=\"btn\" iconClass=\"Delete\" style=\"color: #F56C6C;\"\r\n @click=\"deleteHandler(adRequest, 'desc', item)\" v-if=\"item.contents.length == 0\" />\r\n </div>\r\n </div>\r\n </template>\r\n <el-empty v-if=\"item.contents.length <= 0\" description=\"暂无内容\" />\r\n <div class=\"mk-cms-ad__card__body\">\r\n <el-scrollbar class=\"mk-cms-ad__card__body__scrollbar\">\r\n <el-card class=\"mk-cms-ad__card__body__item\" v-for=\"adContent in item.contents\" :key=\"adContent.id\">\r\n <el-image class=\"images\" v-if=\"adContent.type == 1\" :src=\"adContent.path\"\r\n :preview-src-list=\"[adContent.path]\" 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=\"adContent.type == 2\" :src=\"adContent.path\" style=\"width: 100%;height: 200px;\"\r\n controls></video>\r\n <div class=\"item-desc\">\r\n <div class=\"item-desc-left\">\r\n <div class=\"title ellipsis\">\r\n <MKSvgIcon class=\"icon\" v-if=\"adContent.type == 1\" iconClass=\"Picture\"></MKSvgIcon>\r\n <MKSvgIcon class=\"icon\" v-if=\"adContent.type == 2\" iconClass=\"VideoCamera\"></MKSvgIcon>\r\n <span :title=\"adContent.title + '(' + adContent.desc + ')'\">{{ adContent.title }}<span\r\n class=\"desc\">{{\r\n adContent.desc ? `(${adContent.desc})` : \"\" }}</span></span>\r\n </div>\r\n <div class=\"external-links ellipsis\">\r\n <MKSvgIcon class=\"icon\" v-if=\"adContent.link\" iconClass=\"Link\"></MKSvgIcon>\r\n <a :href=\"adContent.link\" target=\"_blank\" :title=\"adContent.link\">{{ adContent.link }}</a>\r\n </div>\r\n </div>\r\n <div class=\"item-desc-right\">\r\n <el-dropdown trigger=\"click\" :teleported=\"false\" class=\"item-desc-right__more\">\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\"\r\n @click=\"showAdContentHandler(adContent, true)\">编辑</el-dropdown-item>\r\n <el-dropdown-item class=\"delete-button\" :icon=\"Delete\"\r\n @click=\"deleteHandler(adContentRequest, 'title', adContent)\">删除</el-dropdown-item>\r\n </el-dropdown-menu>\r\n </template>\r\n </el-dropdown>\r\n </div>\r\n </div>\r\n </el-card>\r\n </el-scrollbar>\r\n </div>\r\n </el-card>\r\n </el-scrollbar>\r\n\r\n <el-empty v-if=\"adDefineList?.length <= 0\" description=“暂无内容” />\r\n </div>\r\n </div>\r\n\r\n</template>\r\n<script setup lang='ts'>\r\nimport { onMounted, reactive, computed, ref, watch } from \"vue\";\r\nimport { DataViewRequest, Group } from \"@maketribe/request\";\r\nimport { DataForm, Dialoger, FormColumn, Messager } from \"@maketribe/dm\";\r\nimport { CmsAdDefinesTable, CmsAdContentsForm, CmsAdDefinesForm } from \"../../dataviews\";\r\nimport { EditPen, ArrowDown, Delete } from \"@element-plus/icons-vue\"\r\nimport { debounce } from \"lodash-es\"\r\n// 广告定义数据表\r\nconst adRequest = new DataViewRequest({ name: \"ad-define\", moduleName: \"cms\" });\r\nconst adContentRequest = new DataViewRequest({ name: \"ad-content\", moduleName: \"cms\" });\r\n//广告位搜索词\r\nconst adSearchWord = ref(\"\")\r\n// 广告定义列表\r\nconst adDefineList = ref([] as any[]);\r\nconst loading = ref(true);\r\n//新增广告表单显示\r\nconst formVisible = ref(false);\r\n//更新列表数据\r\nconst setAdDefineList = async (condition?: Group) => {\r\n try {\r\n loading.value = true;\r\n adDefineList.value = (await adRequest.allList({\r\n data: {\r\n condition: condition\r\n }\r\n })).data.data;\r\n\r\n } catch (e) {\r\n console.error(e)\r\n } finally {\r\n loading.value = false;\r\n }\r\n}\r\n// 广告内容表单\r\nconst adContentForm = reactive(new CmsAdContentsForm())\r\n//监听广告内容表单保存事件\r\nadContentForm.submittedEvent.on(() => {\r\n setAdDefineList()\r\n})\r\n// 添加广告内容\r\nconst showAdContentHandler = async (item: any, isEdit: boolean) => {\r\n const dialog = await Dialoger.dataFormDialog({\r\n dataForm: adContentForm as DataForm,\r\n recId: isEdit ? item.id : undefined\r\n })\r\n if (!isEdit) {\r\n adContentForm.addRecord({ adDefineId: item.id })\r\n }\r\n}\r\n\r\n//广告定义表单\r\nconst adDefineForm = reactive(new (class extends CmsAdDefinesForm {\r\n //去掉广告内容\r\n protected async initialize() {\r\n await super.initialize();\r\n this.setColumns([\r\n new FormColumn({ name: \"key\", label: \"广告位KEY\", required: true }),\r\n new FormColumn({ name: \"desc\", label: \"广告位描述\", required: true }),\r\n ]);\r\n }\r\n}))\r\n//监听广告保存完成进行刷新\r\nadDefineForm.submittedEvent.on(() => {\r\n setAdDefineList()\r\n})\r\n//增加广告位\r\nconst showAdDefineHandle = (item: any) => {\r\n Dialoger.dataFormDialog({\r\n dataForm: adDefineForm as DataForm,\r\n recId: item?.id\r\n })\r\n}\r\n\r\n//删除\r\nconst deleteHandler = async (request: DataViewRequest, field: string, item: any) => {\r\n const isConfirm = await Dialoger.confirm({\r\n title: \"是否删除?\",\r\n message: `确定删除【${item[field]}】广告位?`,\r\n type: \"warning\"\r\n });\r\n if (!isConfirm) {\r\n return;\r\n }\r\n try {\r\n loading.value = true\r\n const result = await request.delete(item.id)\r\n if (result.data.code != 200) {\r\n Messager.error({ message: result.data.msg || \"删除失败\" })\r\n return;\r\n }\r\n await setAdDefineList()\r\n } catch (e: any) {\r\n Messager.error({ message: e })\r\n } finally {\r\n loading.value = false\r\n\r\n }\r\n}\r\n\r\n// 加载广告定义\r\nonMounted(async () => {\r\n await setAdDefineList();\r\n})\r\n\r\n//timer\r\nlet timer: any = null\r\n\r\n//监听adSearchWord变化进行搜索\r\nwatch(adSearchWord, async () => {\r\n\r\n if (!!timer) {\r\n clearTimeout(timer)\r\n }\r\n\r\n timer = setTimeout(async () => {\r\n const condition = new Group()\r\n condition.addCondition(\"desc\", \"like\", `%${adSearchWord.value}%`)\r\n await setAdDefineList(condition);\r\n }, 500)\r\n\r\n\r\n})\r\n\r\n</script>\r\n"],"names":["DataViewRequest","ref","reactive","CmsAdContentsForm","Dialoger","CmsAdDefinesForm","FormColumn","request","Messager","onMounted","watch","Group"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.vue2.js","sources":["../../../../../../src/modules/cms/pages/cms-ad/index.vue"],"sourcesContent":["<template>\r\n <div class=\"mk-cms-ad__warp\">\r\n <el-page-header style=\"background-color: #fff;padding: 10px;\" :icon=\"null\">\r\n <template #title>\r\n <h3 style=\"color: var(--el-text-color-regular);margin-left: 10px;\">\r\n <MKSvgIcon iconClass=\"Guide\" style=\"margin-right: 5px;\" />\r\n 广告位管理\r\n </h3>\r\n </template>\r\n <template #content>\r\n <el-input style=\"width: 240px\" placeholder=\"请输入广告位描述\" v-model=\"adSearchWord\">\r\n <template #prefix>\r\n <MKSvgIcon iconClass=\"Search\" />\r\n </template>\r\n </el-input>\r\n </template>\r\n <template #extra>\r\n <div class=\"flex items-center\">\r\n <el-button type=\"primary\" size=\"large\" text @click=\"showAdDefineHandle\">\r\n 添加广告位\r\n <MKSvgIcon iconClass=\"Plus\" style=\"margin-left: 10px;\" />\r\n </el-button>\r\n </div>\r\n </template>\r\n </el-page-header>\r\n <div class=\"mk-cms-ad__body\" v-loading=\"loading\">\r\n <el-scrollbar class=\"mk-cms-ad__body__scrollbar\">\r\n <el-card v-for=\"item in adDefineList\" :key=\"item.id\" class=\"mk-cms-ad__card\">\r\n <template #header>\r\n <div class=\"mk-cms-ad__card__header clearfix\">\r\n <span>\r\n <MKSvgIcon iconClass=\"Guide\" style=\"margin-right: 5px;\" />\r\n {{ item.desc }}\r\n </span>\r\n <div class=\"btn-box\">\r\n <MKSvgIcon class=\"btn\" iconClass=\"Plus\" style=\"color: #409EFF;\"\r\n @click=\"showAdContentHandler(item, false)\" />\r\n <MKSvgIcon class=\"btn\" iconClass=\"EditPen\" style=\"color: #409EFF;\" @click=\"showAdDefineHandle(item)\" />\r\n <MKSvgIcon class=\"btn\" iconClass=\"Delete\" style=\"color: #F56C6C;\"\r\n @click=\"deleteHandler(adRequest, 'desc', item)\" v-if=\"item.contents.length == 0\" />\r\n </div>\r\n </div>\r\n </template>\r\n <el-empty v-if=\"item.contents.length <= 0\" description=\"暂无内容\" />\r\n <div class=\"mk-cms-ad__card__body\">\r\n <el-scrollbar class=\"mk-cms-ad__card__body__scrollbar\">\r\n <el-card class=\"mk-cms-ad__card__body__item\" v-for=\"adContent in item.contents\" :key=\"adContent.id\">\r\n <el-image class=\"images\" v-if=\"adContent.type == 1\" :src=\"adContent.path\"\r\n :preview-src-list=\"[adContent.path]\" 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=\"adContent.type == 2\" :src=\"adContent.path\" style=\"width: 100%;height: 200px;\"\r\n controls></video>\r\n <div class=\"item-desc\">\r\n <div class=\"item-desc-left\">\r\n <div class=\"title ellipsis\">\r\n <MKSvgIcon class=\"icon\" v-if=\"adContent.type == 1\" iconClass=\"Picture\"></MKSvgIcon>\r\n <MKSvgIcon class=\"icon\" v-if=\"adContent.type == 2\" iconClass=\"VideoCamera\"></MKSvgIcon>\r\n <span :title=\"adContent.title + '(' + adContent.desc + ')'\">{{ adContent.title }}<span\r\n class=\"desc\">{{\r\n adContent.desc ? `(${adContent.desc})` : \"\" }}</span></span>\r\n </div>\r\n <div class=\"external-links ellipsis\">\r\n <MKSvgIcon class=\"icon\" v-if=\"adContent.link\" iconClass=\"Link\"></MKSvgIcon>\r\n <a :href=\"adContent.link\" target=\"_blank\" :title=\"adContent.link\">{{ adContent.link }}</a>\r\n </div>\r\n </div>\r\n <div class=\"item-desc-right\">\r\n <el-dropdown trigger=\"click\" :teleported=\"false\" class=\"item-desc-right__more\">\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\"\r\n @click=\"showAdContentHandler(adContent, true)\">编辑</el-dropdown-item>\r\n <el-dropdown-item class=\"delete-button\" :icon=\"Delete\"\r\n @click=\"deleteHandler(adContentRequest, 'title', adContent)\">删除</el-dropdown-item>\r\n </el-dropdown-menu>\r\n </template>\r\n </el-dropdown>\r\n </div>\r\n </div>\r\n </el-card>\r\n </el-scrollbar>\r\n </div>\r\n </el-card>\r\n </el-scrollbar>\r\n\r\n <el-empty v-if=\"adDefineList?.length <= 0\" description=“暂无内容” />\r\n </div>\r\n </div>\r\n\r\n</template>\r\n<script setup lang='ts'>\r\nimport { onMounted, reactive, computed, ref, watch } from \"vue\";\r\nimport { DataViewRequest, Group } from \"@maketribe/request\";\r\nimport { DataForm, Dialoger, FormColumn, Messager } from \"@maketribe/dm\";\r\nimport { CmsAdDefinesTable, CmsAdContentsForm, CmsAdDefinesForm } from \"../../dataviews\";\r\nimport { EditPen, ArrowDown, Delete } from \"@element-plus/icons-vue\"\r\nimport { debounce } from \"lodash-es\"\r\n// 广告定义数据表\r\nconst adRequest = new DataViewRequest({ name: \"ad-define\", moduleName: \"cms\" });\r\nconst adContentRequest = new DataViewRequest({ name: \"ad-content\", moduleName: \"cms\" });\r\n//广告位搜索词\r\nconst adSearchWord = ref(\"\")\r\n// 广告定义列表\r\nconst adDefineList = ref([] as any[]);\r\nconst loading = ref(true);\r\n//新增广告表单显示\r\nconst formVisible = ref(false);\r\n//更新列表数据\r\nconst setAdDefineList = async (condition?: Group) => {\r\n try {\r\n loading.value = true;\r\n adDefineList.value = (await adRequest.allList({\r\n data: {\r\n condition: condition\r\n }\r\n })).data.data;\r\n\r\n } catch (e) {\r\n console.error(e)\r\n } finally {\r\n loading.value = false;\r\n }\r\n}\r\n// 广告内容表单\r\nconst adContentForm = reactive(new CmsAdContentsForm())\r\n//监听广告内容表单保存事件\r\nadContentForm.submittedEvent.on(() => {\r\n setAdDefineList()\r\n})\r\n// 添加广告内容\r\nconst showAdContentHandler = async (item: any, isEdit: boolean) => {\r\n const dialog = await Dialoger.dataFormDialog({\r\n dataForm: adContentForm as DataForm,\r\n recId: isEdit ? item.id : undefined\r\n })\r\n if (!isEdit) {\r\n adContentForm.addRecord({ adDefineId: item.id })\r\n }\r\n}\r\n\r\n//广告定义表单\r\nconst adDefineForm = reactive(new (class extends CmsAdDefinesForm {\r\n //去掉广告内容\r\n protected async initialize() {\r\n await super.initialize();\r\n this.setColumns([\r\n new FormColumn({ name: \"key\", label: \"广告位KEY\", required: true }),\r\n new FormColumn({ name: \"desc\", label: \"广告位描述\", required: true }),\r\n ]);\r\n }\r\n}))\r\n//监听广告保存完成进行刷新\r\nadDefineForm.submittedEvent.on(() => {\r\n setAdDefineList()\r\n})\r\n//增加广告位\r\nconst showAdDefineHandle = (item: any) => {\r\n Dialoger.dataFormDialog({\r\n dataForm: adDefineForm as DataForm,\r\n recId: item?.id\r\n })\r\n}\r\n\r\n//删除\r\nconst deleteHandler = async (request: DataViewRequest, field: string, item: any) => {\r\n const isConfirm = await Dialoger.confirm({\r\n title: \"是否删除?\",\r\n message: `确定删除【${item[field]}】广告位?`,\r\n type: \"warning\"\r\n });\r\n if (!isConfirm) {\r\n return;\r\n }\r\n try {\r\n loading.value = true\r\n const result = await request.delete(item.id)\r\n if (result.data.code != 200) {\r\n Messager.error({ message: result.data.msg || \"删除失败\" })\r\n return;\r\n }\r\n await setAdDefineList()\r\n } catch (e: any) {\r\n Messager.error({ message: e })\r\n } finally {\r\n loading.value = false\r\n\r\n }\r\n}\r\n\r\n// 加载广告定义\r\nonMounted(async () => {\r\n await setAdDefineList();\r\n})\r\n\r\n//timer\r\nlet timer: any = null\r\n\r\n//监听adSearchWord变化进行搜索\r\nwatch(adSearchWord, async () => {\r\n\r\n if (!!timer) {\r\n clearTimeout(timer)\r\n }\r\n\r\n timer = setTimeout(async () => {\r\n const condition = new Group()\r\n condition.addCondition(\"desc\", \"like\", `%${adSearchWord.value}%`)\r\n await setAdDefineList(condition);\r\n }, 500)\r\n\r\n\r\n})\r\n\r\n</script>\r\n"],"names":["DataViewRequest","ref","reactive","CmsAdContentsForm","Dialoger","CmsAdDefinesForm","FormColumn","request","Messager","onMounted","watch","Group"],"mappings":"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"}
|
|
@@ -37,6 +37,7 @@ require("../../../../core/DataModelDefines.js");
|
|
|
37
37
|
const vueRouter = require("vue-router");
|
|
38
38
|
require("@maketribe/locale");
|
|
39
39
|
require("../../../ms/dataviews/ms-config/MsConfigTable.js");
|
|
40
|
+
require("lodash-es");
|
|
40
41
|
require("../../../ms/dataviews/department/DepartmentForm.js");
|
|
41
42
|
require("../../../ms/dataviews/department/DepartmentTable.js");
|
|
42
43
|
require("../../../ms/dataviews/department/DepartmentTree.js");
|
|
@@ -47,9 +48,9 @@ require("../../../ms/dataviews/log/local-log/LocalLogTree.js");
|
|
|
47
48
|
require("../../../ms/components/material-list/index.js");
|
|
48
49
|
require("../../../ms/components/markdown-editor/index.js");
|
|
49
50
|
require("../../../ms/components/rich-text-editor/index.js");
|
|
50
|
-
const MaterialUploadContext = require("../../../ms/material-upload-context/MaterialUploadContext.js");
|
|
51
51
|
require("../../../ms/material-upload-context/material-upload-context-options.js");
|
|
52
52
|
require("../../../ms/material-upload-context/material-upload-context.js");
|
|
53
|
+
const index$6 = require("../../../ms/image-upload-context/index.js");
|
|
53
54
|
const CmsArticlesForm = require("../../dataviews/cms-articles/CmsArticlesForm.js");
|
|
54
55
|
require("@codemirror/lang-html");
|
|
55
56
|
const cmsSettings = require("../../cms-settings.js");
|
|
@@ -544,9 +545,7 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
|
|
|
544
545
|
"onUpdate:modelValue": _cache[8] || (_cache[8] = ($event) => articleForm.data.cover = $event),
|
|
545
546
|
width: "115px",
|
|
546
547
|
height: "115px",
|
|
547
|
-
uploadContext: new (vue.unref(
|
|
548
|
-
allowMaterialTypeValues: [1]
|
|
549
|
-
})
|
|
548
|
+
uploadContext: new (vue.unref(index$6.ImageUploadContext))(vue.unref(CmsSettings).content.coverImageSize)
|
|
550
549
|
}, null, 8, ["modelValue", "uploadContext"]),
|
|
551
550
|
vue.createVNode(_component_el_input, {
|
|
552
551
|
class: "desc",
|
|
@@ -574,9 +573,7 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
|
|
|
574
573
|
"onUpdate:modelValue": _cache[10] || (_cache[10] = ($event) => articleForm.data.banner = $event),
|
|
575
574
|
width: "100%",
|
|
576
575
|
height: "300px",
|
|
577
|
-
uploadContext: new (vue.unref(
|
|
578
|
-
allowMaterialTypeValues: [1]
|
|
579
|
-
})
|
|
576
|
+
uploadContext: new (vue.unref(index$6.ImageUploadContext))(vue.unref(CmsSettings).content.bannerImageSize)
|
|
580
577
|
}, null, 8, ["modelValue", "uploadContext"])
|
|
581
578
|
]),
|
|
582
579
|
_: 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\":uploadContext=\"new MaterialUploadContext({\r\n allowMaterialTypeValues: [1],\r\n })\">\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 MaterialUploadContext({\r\n allowMaterialTypeValues: [1],\r\n })\">\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 { MaterialUploadContext } from \"../../../ms\";\r\nimport { useCmsSettings } from \"../../cms-settings\"\r\n// cms 配置\r\nconst CmsSettings = useCmsSettings(true);\r\n\r\nconst route = useRoute()\r\nconst router = useRouter();\r\n\r\n\r\n// 文章请求\r\nconst articleForm = reactive(new CmsArticlesForm()) as CmsArticlesForm;\r\nconst articleOptionsActive = ref(\"content\");\r\n\r\n\r\n// 标题\r\nconst title = computed({\r\n get() { return articleForm.data?.title || \"\"; },\r\n set(val) { articleForm.data.title = val; }\r\n});\r\n// 子标题\r\nconst subTitle = computed({\r\n get() { return articleForm.data?.subTitle || \"\"; },\r\n set(val) { articleForm.data.subTitle = val; }\r\n});\r\n// 获取默认简介\r\nconst getDefaultDescContent = () => {\r\n if (!descAutoCreate.value) {\r\n return \"\";\r\n }\r\n let val: any = \"\";\r\n const div = document.createElement(\"div\");\r\n div.innerHTML = content.value;\r\n val = div.textContent?.substring(0, 700);\r\n if (div.textContent!.length > 700) {\r\n val += \"...\";\r\n }\r\n return val;\r\n}\r\nconst descAutoCreate = ref(true)\r\n// 简介\r\nconst desc = computed({\r\n get() {\r\n return articleForm.data?.desc || getDefaultDescContent();\r\n },\r\n set(val) {\r\n articleForm.data.desc = val;\r\n }\r\n});\r\n// 发布时间\r\nconst releaseDate = computed({\r\n get() { return articleForm.data?.releaseDate || articleForm.data?.publishTime; },\r\n set(val) { articleForm.data.releaseDate = val; }\r\n});\r\n// 标签\r\nconst tags = ref([]);\r\n// computed({ \r\n// get() { return articleForm.data?.tags || [] }, \r\n// set(val) { articleForm.data.tags = val; } \r\n// });\r\n// 内容\r\nconst content = computed({\r\n get() { return articleForm.data?.content || \"\"; },\r\n set(val) { articleForm.data.content = val; }\r\n});\r\n\r\n// 图集\r\nconst atlas = computed({\r\n get() {\r\n return articleForm.data?.atlas\r\n },\r\n set(val) { articleForm.data.atlas = val; }\r\n});\r\n\r\n// 表单初始化\r\nconst formInitDataInfo = ()=>{\r\n // 初始化数据加载\r\n if (route.query.id) {\r\n articleForm.editRecord(route.query.id);\r\n }\r\n else if (route.query.partId) {\r\n articleForm.addRecord({ cmsPartId: route.query.partId,isDraft:1 });\r\n }\r\n else {\r\n articleForm.addRecord({ isDraft:1 });\r\n }\r\n}\r\n\r\nonMounted(() => {\r\n formInitDataInfo();\r\n articleForm.init();\r\n\r\n})\r\n\r\n// 保存\r\nconst saveHandle = async () => {\r\n\r\n // 简介不存在的时候使用自动生成的\r\n if (!articleForm.data?.desc) {\r\n desc.value = getDefaultDescContent();\r\n }\r\n\r\n let result = await articleForm.submit();\r\n\r\n formInitDataInfo();\r\n\r\n return result;\r\n}\r\n\r\n// 保存并预览\r\nconst saveAndViewHandle = async ()=>{\r\n const partId = articleForm.data.cmsPartId;\r\n const data = await saveHandle();\r\n if(data.data.code == 200 && data.data.data){\r\n window.open('/api/cms/content/preview/content/' + partId + '/' + data.data.data)\r\n }\r\n}\r\n\r\n// 保存并发布\r\nconst saveAndPublishHandle = async ()=>{\r\n const result:any = await articleForm.saveAndPublish(CmsSettings.publish.mode);\r\n if(result.data.code == 200){\r\n formInitDataInfo();\r\n }\r\n}\r\n\r\n// 隐藏扩展\r\nconst closeExtentions = ref(true);\r\nconst extentionsRef = ref();\r\nconst hideExtentionsHandle = () => {\r\n closeExtentions.value = true;\r\n}\r\n//展示扩展\r\nconst closeExtentionsHandle = () => {\r\n closeExtentions.value = false;\r\n}\r\n\r\nconst EditorChangeHandle = (v: any) => {\r\n articleForm.data.content = v;\r\n}\r\n\r\n</script>\r\n"],"names":["useCmsSettings","useRoute","useRouter","reactive","CmsArticlesForm","ref","computed","onMounted"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"article-edit-add-page.vue2.js","sources":["../../../../../../src/modules/cms/pages/cms-contents/article-edit-add-page.vue"],"sourcesContent":["<template>\r\n <div class=\"mk-cms-article-eidtadd__warp\">\r\n <el-page-header style=\"background-color: #fff;padding: 10px;\" :icon=\"null\"\r\n @back=\"() => router.push({ name: 'cms/contents', query: { pid: articleForm?.data?.cmsPartId } })\">\r\n <template #content>\r\n <template v-if=\"!articleForm.loading\">\r\n <el-text v-if=\"!articleForm.data?.modifier\">{{ !!route.query.id ? \"编辑文章\" : \"创建文章\" }}</el-text>\r\n <el-text v-else>{{ articleForm.data?.modifierName }} 于 {{ articleForm.data?.updatedAt }} 更新</el-text>\r\n </template>\r\n </template>\r\n <template #extra>\r\n <div class=\"mk-cms-article-eidtadd__header_tools\">\r\n\r\n <template v-if=\"!articleForm.loading\">\r\n <el-tag v-if=\"!articleForm.data?.publishTime\" effect=\"dark\" round>未发布</el-tag>\r\n <el-text v-else>发布时间:{{ articleForm.data?.publishTime }}</el-text>\r\n </template>\r\n\r\n <el-dropdown split-button type=\"primary\" style=\"margin-left: 10px;\" @click=\"saveHandle\">\r\n <MKSvgIcon iconClass=\"save\" style=\"margin-right: 10px;\" />\r\n 保存\r\n <template #dropdown>\r\n <el-dropdown-menu>\r\n <el-dropdown-item v-if=\"CmsSettings.publish.mode == 'static'\" @click=\"saveAndViewHandle\">\r\n <MKSvgIcon iconClass=\"View\" style=\"margin-right: 5px;\" />\r\n 保存并预览\r\n </el-dropdown-item>\r\n <el-dropdown-item @click=\"saveAndPublishHandle\">\r\n <MKSvgIcon iconClass=\"Share\" style=\"margin-right: 5px;\" />\r\n 保存并发布\r\n </el-dropdown-item>\r\n </el-dropdown-menu>\r\n </template>\r\n </el-dropdown>\r\n </div>\r\n </template>\r\n </el-page-header>\r\n <div class=\"mk-cms-article-eidtadd__body\" v-loading=\"articleForm.loading\">\r\n\r\n <MKDocEditor v-if=\"articleForm.data\" :content=\"content\" @change=\"EditorChangeHandle\">\r\n <template #header>\r\n <div class=\"mk-cms-article-eidtadd__body__header\">\r\n <el-row>\r\n <el-input class=\"title\" type=\"textarea\" :autosize=\"{ minRows: 1, maxRows: 4 }\" maxlength=\"150\"\r\n show-word-limit placeholder=\"请输入标题\" v-model=\"title\" />\r\n </el-row>\r\n <el-row>\r\n <el-input class=\"sub-title\" type=\"textarea\" :autosize=\"{ minRows: 1, maxRows: 4 }\" maxlength=\"150\"\r\n show-word-limit placeholder=\"[选填] 请输入子标题\" v-model=\"subTitle\" />\r\n </el-row>\r\n </div>\r\n </template>\r\n <template #after-extentions>\r\n <div class=\"mk-cms-article-eidtadd__body__extentions\" :class=\"{ hide: closeExtentions! }\" ref=\"extentionsRef\">\r\n <MKSvgIcon icon-class=\"ArrowLeft\" class=\"open\" @click=\"closeExtentionsHandle\" v-if=\"closeExtentions\">\r\n </MKSvgIcon>\r\n <MKSvgIcon v-else icon-class=\"ArrowRight\" class=\"close\" @click=\"hideExtentionsHandle\">\r\n </MKSvgIcon>\r\n <el-divider content-position=\"left\">文章设置</el-divider>\r\n <MKDataForm :dataForm=\"articleForm\">\r\n <MKForm :dataForm=\"articleForm\" style=\"width:225px\" label-width=\"110px\">\r\n <el-row v-if=\"CmsSettings.content.useTop\">\r\n <MKDataFormItem style=\"width: 100%;\" name=\"isTop\"></MKDataFormItem>\r\n </el-row>\r\n <el-row v-if=\"CmsSettings.content.useNew\">\r\n <MKDataFormItem style=\"width: 100%;\" name=\"isNew\"></MKDataFormItem>\r\n </el-row>\r\n <el-row v-if=\"CmsSettings.content.useHotRecommend\">\r\n <MKDataFormItem style=\"width: 100%;\" name=\"isHotRecommend\"></MKDataFormItem>\r\n </el-row>\r\n <el-row v-if=\"CmsSettings.content.usePartRecommend\">\r\n <MKDataFormItem style=\"width: 100%;\" name=\"isPartRecommend\"></MKDataFormItem>\r\n </el-row>\r\n <el-row>\r\n <MKDataFormItem style=\"width: 100%;\" name=\"isShowList\"></MKDataFormItem>\r\n </el-row>\r\n <!-- <el-row>\r\n <MKDataFormItem style=\"width: 100%;\" name=\"isDraft\"></MKDataFormItem>\r\n </el-row> -->\r\n <el-row>\r\n <MKDataFormItem style=\"width: 100%;\" name=\"sortNo\"></MKDataFormItem>\r\n </el-row>\r\n </MKForm>\r\n </MKDataForm>\r\n </div>\r\n </template>\r\n <template #footer>\r\n <div class=\"mk-cms-article-eidtadd__body__footer\">\r\n <el-tabs v-model=\"articleOptionsActive\">\r\n <el-tab-pane label=\"基础内容\" name=\"content\">\r\n <div class=\"content\">\r\n <el-row :gutter=\"20\">\r\n <el-col :span=\"6\">\r\n <el-input placeholder=\"[选填] 作者\" v-model=\"articleForm.data.author\" clearable>\r\n <template #prefix>\r\n <MKSvgIcon iconClass=\"UserFilled\" />\r\n </template>\r\n </el-input>\r\n </el-col>\r\n <el-col :span=\"6\">\r\n <el-date-picker v-model=\"releaseDate\" type=\"datetime\" placeholder=\"发布时间\"\r\n :default-time=\"new Date()\" />\r\n </el-col>\r\n <el-col :span=\"12\">\r\n <el-input placeholder=\"[选填] 发布地址\" v-model=\"articleForm.data.locationDesc\" clearable>\r\n <template #prefix>\r\n <MKSvgIcon iconClass=\"Location\" />\r\n </template>\r\n </el-input>\r\n </el-col>\r\n </el-row>\r\n <el-row v-if=\"CmsSettings.content.useTags\">\r\n <el-select v-model=\"tags\" multiple filterable allow-create default-first-option\r\n :reserve-keyword=\"false\" placeholder=\"[可选] 选择文章标签\" style=\"width: 100%\">\r\n <template #prefix>\r\n <MKSvgIcon iconClass=\"CollectionTag\" />\r\n </template>\r\n </el-select>\r\n </el-row>\r\n <el-divider content-position=\"left\">\r\n 文章封面/简介\r\n <el-switch v-model=\"descAutoCreate\" style=\"margin-left: 10px;\" inline-prompt active-text=\"自动生成\"\r\n inactive-text=\"手动撰写\" />\r\n </el-divider>\r\n <el-row class=\"cover-desc\">\r\n <MKUploadImage style=\"margin-right: 10px;\" v-model=\"articleForm.data.cover\" width=\"115px\" height=\"115px\" \r\n :uploadContext=\"new ImageUploadContext(CmsSettings.content.coverImageSize)\">\r\n\r\n </MKUploadImage>\r\n <el-input class=\"desc\" type=\"textarea\" :autosize=\"{ minRows: 5, maxRows: 30 }\" maxlength=\"1000\"\r\n show-word-limit placeholder=\"[选填] 文章简介\" v-model=\"desc\" />\r\n </el-row>\r\n <el-divider content-position=\"left\">文章Banner图</el-divider>\r\n <el-row>\r\n <MKUploadImage v-model=\"articleForm.data.banner\" width=\"100%\" height=\"300px\":uploadContext=\"new ImageUploadContext(CmsSettings.content.bannerImageSize)\">\r\n\r\n </MKUploadImage>\r\n </el-row>\r\n </div>\r\n </el-tab-pane>\r\n <el-tab-pane label=\"文章资源库\" name=\"atlas\" v-if=\"CmsSettings.content.useAtlas\">\r\n <ArticleAtlas v-model=\"atlas\" :articleId=\"parseInt(articleForm.data?.id)\" />\r\n </el-tab-pane>\r\n <el-tab-pane label=\"页面设置\" name=\"settings\" v-if=\"CmsSettings.publish.mode == 'static'\">\r\n <MKDataForm :dataForm=\"articleForm\" label-width=\"120px\">\r\n <MKForm :dataForm=\"articleForm\">\r\n <el-row>\r\n <MKDataFormItem style=\"width: 100%;\" name=\"seoKeywords\"></MKDataFormItem>\r\n </el-row>\r\n <el-row>\r\n <MKDataFormItem style=\"width: 100%;\" name=\"seoDesc\"></MKDataFormItem>\r\n </el-row>\r\n </MKForm>\r\n </MKDataForm>\r\n </el-tab-pane>\r\n </el-tabs>\r\n </div>\r\n </template>\r\n </MKDocEditor>\r\n </div>\r\n </div>\r\n</template>\r\n<script setup lang='ts'>\r\nimport { onMounted, reactive, ref, computed } from \"vue\";\r\nimport { MKDocEditor, MKSvgIcon, MKUploadImage } from '../../../../components'\r\nimport { MKDataForm, MKForm, MKDataFormItem } from \"../../../../components\";\r\nimport ArticleAtlas from \"./components/article-atlas.vue\";\r\nimport { CmsArticlesForm } from \"../../dataviews\";\r\nimport { useRoute, useRouter } from \"vue-router\";\r\nimport { ImageUploadContext } from \"../../../ms\";\r\nimport { useCmsSettings } from \"../../cms-settings\"\r\n// cms 配置\r\nconst CmsSettings = useCmsSettings(true);\r\n\r\nconst route = useRoute()\r\nconst router = useRouter();\r\n\r\n\r\n// 文章请求\r\nconst articleForm = reactive(new CmsArticlesForm()) as CmsArticlesForm;\r\nconst articleOptionsActive = ref(\"content\");\r\n\r\n\r\n// 标题\r\nconst title = computed({\r\n get() { return articleForm.data?.title || \"\"; },\r\n set(val) { articleForm.data.title = val; }\r\n});\r\n// 子标题\r\nconst subTitle = computed({\r\n get() { return articleForm.data?.subTitle || \"\"; },\r\n set(val) { articleForm.data.subTitle = val; }\r\n});\r\n// 获取默认简介\r\nconst getDefaultDescContent = () => {\r\n if (!descAutoCreate.value) {\r\n return \"\";\r\n }\r\n let val: any = \"\";\r\n const div = document.createElement(\"div\");\r\n div.innerHTML = content.value;\r\n val = div.textContent?.substring(0, 700);\r\n if (div.textContent!.length > 700) {\r\n val += \"...\";\r\n }\r\n return val;\r\n}\r\nconst descAutoCreate = ref(true)\r\n// 简介\r\nconst desc = computed({\r\n get() {\r\n return articleForm.data?.desc || getDefaultDescContent();\r\n },\r\n set(val) {\r\n articleForm.data.desc = val;\r\n }\r\n});\r\n// 发布时间\r\nconst releaseDate = computed({\r\n get() { return articleForm.data?.releaseDate || articleForm.data?.publishTime; },\r\n set(val) { articleForm.data.releaseDate = val; }\r\n});\r\n// 标签\r\nconst tags = ref([]);\r\n// computed({ \r\n// get() { return articleForm.data?.tags || [] }, \r\n// set(val) { articleForm.data.tags = val; } \r\n// });\r\n// 内容\r\nconst content = computed({\r\n get() { return articleForm.data?.content || \"\"; },\r\n set(val) { articleForm.data.content = val; }\r\n});\r\n\r\n// 图集\r\nconst atlas = computed({\r\n get() {\r\n return articleForm.data?.atlas\r\n },\r\n set(val) { articleForm.data.atlas = val; }\r\n});\r\n\r\n// 表单初始化\r\nconst formInitDataInfo = ()=>{\r\n // 初始化数据加载\r\n if (route.query.id) {\r\n articleForm.editRecord(route.query.id);\r\n }\r\n else if (route.query.partId) {\r\n articleForm.addRecord({ cmsPartId: route.query.partId,isDraft:1 });\r\n }\r\n else {\r\n articleForm.addRecord({ isDraft:1 });\r\n }\r\n}\r\n\r\nonMounted(() => {\r\n formInitDataInfo();\r\n articleForm.init();\r\n\r\n})\r\n\r\n// 保存\r\nconst saveHandle = async () => {\r\n\r\n // 简介不存在的时候使用自动生成的\r\n if (!articleForm.data?.desc) {\r\n desc.value = getDefaultDescContent();\r\n }\r\n\r\n let result = await articleForm.submit();\r\n\r\n formInitDataInfo();\r\n\r\n return result;\r\n}\r\n\r\n// 保存并预览\r\nconst saveAndViewHandle = async ()=>{\r\n const partId = articleForm.data.cmsPartId;\r\n const data = await saveHandle();\r\n if(data.data.code == 200 && data.data.data){\r\n window.open('/api/cms/content/preview/content/' + partId + '/' + data.data.data)\r\n }\r\n}\r\n\r\n// 保存并发布\r\nconst saveAndPublishHandle = async ()=>{\r\n const result:any = await articleForm.saveAndPublish(CmsSettings.publish.mode);\r\n if(result.data.code == 200){\r\n formInitDataInfo();\r\n }\r\n}\r\n\r\n// 隐藏扩展\r\nconst closeExtentions = ref(true);\r\nconst extentionsRef = ref();\r\nconst hideExtentionsHandle = () => {\r\n closeExtentions.value = true;\r\n}\r\n//展示扩展\r\nconst closeExtentionsHandle = () => {\r\n closeExtentions.value = false;\r\n}\r\n\r\nconst EditorChangeHandle = (v: any) => {\r\n articleForm.data.content = v;\r\n}\r\n\r\n</script>\r\n"],"names":["useCmsSettings","useRoute","useRouter","reactive","CmsArticlesForm","ref","computed","onMounted"],"mappings":"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"}
|
|
@@ -36,6 +36,7 @@ require("../../../../../core/DataModelDefines.js");
|
|
|
36
36
|
const vueRouter = require("vue-router");
|
|
37
37
|
require("@maketribe/locale");
|
|
38
38
|
require("../../../../ms/dataviews/ms-config/MsConfigTable.js");
|
|
39
|
+
require("lodash-es");
|
|
39
40
|
require("../../../../ms/dataviews/department/DepartmentForm.js");
|
|
40
41
|
require("../../../../ms/dataviews/department/DepartmentTable.js");
|
|
41
42
|
require("../../../../ms/dataviews/department/DepartmentTree.js");
|
|
@@ -48,6 +49,7 @@ require("../../../../ms/components/markdown-editor/index.js");
|
|
|
48
49
|
require("../../../../ms/components/rich-text-editor/index.js");
|
|
49
50
|
require("../../../../ms/material-upload-context/material-upload-context-options.js");
|
|
50
51
|
require("../../../../ms/material-upload-context/material-upload-context.js");
|
|
52
|
+
require("@element-plus/icons-vue");
|
|
51
53
|
const CmsArticlesTable = require("../../../dataviews/cms-articles/CmsArticlesTable.js");
|
|
52
54
|
const CmsArticlesForm = require("../../../dataviews/cms-articles/CmsArticlesForm.js");
|
|
53
55
|
require("@codemirror/lang-html");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"article-list.vue.js","sources":["../../../../../../../src/modules/cms/pages/cms-contents/components/article-list.vue"],"sourcesContent":["<template>\n <MKDataTable :data-table=\"articlesDv\" :auto-load=\"false\" class=\"mk-cms-article-list\">\n <el-empty v-if=\"part && part.cmsPartTypeId == 1\" description=\"外链栏目下无文章内容\" />\n <MKTableView v-else-if=\"part\" :data-table=\"articlesDv\">\n <el-scrollbar class=\"mk-cms-article-list__content\" style=\"box-sizing: border-box;font-size: 0;\"\n v-if=\"articlesDv.getList().length > 0\">\n <el-card class=\"mk-cms-article-list__item\" v-for=\"article in articlesDv.getList()\" :key=\"article.id\">\n <div class=\"mk-cms-article-list__item__content\">\n <div class=\"left\">\n <el-image class=\"cover-image\" :src=\"article.cover\" fit=\"contain\">\n <template #error>\n <MKSvgIcon iconClass=\"Picture\" />\n </template>\n </el-image>\n </div>\n <div class=\"right\">\n <div class=\"title\" :title=\"article.title\"> {{ article.title }}</div>\n <div class=\"sub-title\" v-if=\"article.subTitle\" :title=\"article.subTitle\"> {{ article.subTitle }}</div>\n <div class=\"desc\">\n {{ article.desc }}\n </div>\n <div class=\"footer\">\n <div class=\"ext\">\n <div class=\"author\">\n <MKSvgIcon iconClass=\"UserFilled\"></MKSvgIcon> \n 作者 : {{ article.author || \"-\" }}\n </div>\n <div class=\"publish-time\">\n <MKSvgIcon iconClass=\"Timer\"></MKSvgIcon> \n 发布时间 : {{ article.publishTime }}\n </div>\n </div>\n <div class=\"tools\">\n <el-button type=\"primary\" size=\"large\" @click=\"editArticleHandle(article)\" text>\n 编辑\n </el-button>\n <el-button type=\"danger\" size=\"large\" @click=\"deleteArticleHandle(article)\" text>\n 删除\n </el-button>\n <a v-if=\"CmsSettings.publish.mode == 'static' && article.url\" :href=\"article.url\" target=\"_blank\">\n <el-button type=\"primary\" size=\"large\" text>访问</el-button>\n </a>\n <a :href=\"'/api/cms/content/preview/content/' + article.cmsPartId + '/' + article.id\" v-if=\"CmsSettings.publish.mode == 'static'\" target=\"_blank\">\n <el-button type=\"primary\" size=\"large\" text>预览</el-button>\n </a>\n <el-button type=\"primary\" size=\"large\" text @click=\"publishArticleHandle(article)\">\n 发布\n </el-button>\n </div>\n </div>\n </div>\n </div>\n </el-card>\n </el-scrollbar>\n <el-empty v-if=\"articlesDv.getList().length <= 0\" description=\"暂无文章内容\" />\n </MKTableView>\n </MKDataTable>\n</template>\n<script setup lang='ts'>\nimport { MKTableView } from \"../../../../../components\"\nimport { CmsArticlesTable,CmsArticlesForm } from \"../../../dataviews\"\nimport { reactive, defineProps, watch,onMounted } from \"vue\";\nimport { Dialoger, isWhereFilter, Messager } from '@maketribe/dm'\nimport { useRouter } from \"vue-router\";\nimport { useCmsSettings } from \"../../../cms-settings\"\n// cms 配置\nconst CmsSettings = useCmsSettings();\n\n// 文章\nconst articlesDv = reactive(new CmsArticlesTable()) as CmsArticlesTable;\n// 发布文章表单\nconst articleForm = reactive(new CmsArticlesForm()) as CmsArticlesForm;\n// 草稿文章\nconst draftArticleForm = reactive(new CmsArticlesForm()) as CmsArticlesForm;\n\n// 参数\nconst props = defineProps({\n part: { type: Object, default: null }\n})\n\nconst router = useRouter();\n\n// 初始化\nonMounted(()=>{\n articleForm.init();\n draftArticleForm.init();\n\n // 监听栏目数据变化\n watch(() => props.part, (item: any) => {\n if (item.cmsPartTypeId != 1) {\n\n const dataFilter = articlesDv.dataFilter;\n\n if (isWhereFilter(dataFilter)) {\n\n const defaultGroup = dataFilter.getDefaultGroup();\n\n defaultGroup.clear();\n defaultGroup.addCondition(\"cmsPartId\", \"=\", item.id);\n // 只查草稿\n defaultGroup.addCondition(\"isDraft\", \"=\", 1);\n }\n\n articlesDv.load()\n }\n }, { immediate: true })\n})\n\n/**\n * 删除文章\n */\nconst deleteArticleHandle = async (item: any) => {\n const isConfirm = await Dialoger.confirm({\n title: \"删除文章?\",\n message: \"是否删除文章?\",\n type: \"warning\"\n })\n\n if (!isConfirm) { return; }\n await articlesDv.deleteAfterRefresh(item.id);\n}\n\n/**\n * 编辑文章\n */\nconst editArticleHandle = (item: any, isEdit = false) => {\n router.push({ path: \"/cms/article\", query: { id: isEdit ? undefined : item.id, partId: isEdit ? item.id : undefined } })\n}\n\n// 添加记录\narticlesDv.addRecordEvent.on(() => editArticleHandle(props.part, true))\n\n/**\n * fault文章\n * @param article \n */\nconst publishArticleHandle = async (article: any) => {\n\n try {\n\n if (await Dialoger.confirm({ title: \"文章发布\", message: \"是否发布文章?\", type: \"warning\" })) {\n\n articlesDv.getLoadingManager().startLoading();\n\n // 调用发布接口\n const response:any = await CmsArticlesForm.publish(CmsSettings.publish.mode,article.cmsPartId,article.id);\n\n if (response.data.code !== 200) {\n Messager.error({ message: response.data.msg });\n return;\n }\n\n Messager.success({ message: \"发布成功\" });\n }\n\n } finally {\n articlesDv.getLoadingManager().completeLoading();\n }\n}\n\n\n</script>\n"],"names":["useCmsSettings","reactive","CmsArticlesTable","CmsArticlesForm","useRouter","onMounted","watch","isWhereFilter","Dialoger","Messager"],"mappings":"
|
|
1
|
+
{"version":3,"file":"article-list.vue.js","sources":["../../../../../../../src/modules/cms/pages/cms-contents/components/article-list.vue"],"sourcesContent":["<template>\r\n <MKDataTable :data-table=\"articlesDv\" :auto-load=\"false\" class=\"mk-cms-article-list\">\r\n <el-empty v-if=\"part && part.cmsPartTypeId == 1\" description=\"外链栏目下无文章内容\" />\r\n <MKTableView v-else-if=\"part\" :data-table=\"articlesDv\">\r\n <el-scrollbar class=\"mk-cms-article-list__content\" style=\"box-sizing: border-box;font-size: 0;\"\r\n v-if=\"articlesDv.getList().length > 0\">\r\n <el-card class=\"mk-cms-article-list__item\" v-for=\"article in articlesDv.getList()\" :key=\"article.id\">\r\n <div class=\"mk-cms-article-list__item__content\">\r\n <div class=\"left\">\r\n <el-image class=\"cover-image\" :src=\"article.cover\" fit=\"contain\">\r\n <template #error>\r\n <MKSvgIcon iconClass=\"Picture\" />\r\n </template>\r\n </el-image>\r\n </div>\r\n <div class=\"right\">\r\n <div class=\"title\" :title=\"article.title\"> {{ article.title }}</div>\r\n <div class=\"sub-title\" v-if=\"article.subTitle\" :title=\"article.subTitle\"> {{ article.subTitle }}</div>\r\n <div class=\"desc\">\r\n {{ article.desc }}\r\n </div>\r\n <div class=\"footer\">\r\n <div class=\"ext\">\r\n <div class=\"author\">\r\n <MKSvgIcon iconClass=\"UserFilled\"></MKSvgIcon> \r\n 作者 : {{ article.author || \"-\" }}\r\n </div>\r\n <div class=\"publish-time\">\r\n <MKSvgIcon iconClass=\"Timer\"></MKSvgIcon> \r\n 发布时间 : {{ article.publishTime }}\r\n </div>\r\n </div>\r\n <div class=\"tools\">\r\n <el-button type=\"primary\" size=\"large\" @click=\"editArticleHandle(article)\" text>\r\n 编辑\r\n </el-button>\r\n <el-button type=\"danger\" size=\"large\" @click=\"deleteArticleHandle(article)\" text>\r\n 删除\r\n </el-button>\r\n <a v-if=\"CmsSettings.publish.mode == 'static' && article.url\" :href=\"article.url\" target=\"_blank\">\r\n <el-button type=\"primary\" size=\"large\" text>访问</el-button>\r\n </a>\r\n <a :href=\"'/api/cms/content/preview/content/' + article.cmsPartId + '/' + article.id\" v-if=\"CmsSettings.publish.mode == 'static'\" target=\"_blank\">\r\n <el-button type=\"primary\" size=\"large\" text>预览</el-button>\r\n </a>\r\n <el-button type=\"primary\" size=\"large\" text @click=\"publishArticleHandle(article)\">\r\n 发布\r\n </el-button>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </el-card>\r\n </el-scrollbar>\r\n <el-empty v-if=\"articlesDv.getList().length <= 0\" description=\"暂无文章内容\" />\r\n </MKTableView>\r\n </MKDataTable>\r\n</template>\r\n<script setup lang='ts'>\r\nimport { MKTableView } from \"../../../../../components\"\r\nimport { CmsArticlesTable,CmsArticlesForm } from \"../../../dataviews\"\r\nimport { reactive, defineProps, watch,onMounted } from \"vue\";\r\nimport { Dialoger, isWhereFilter, Messager } from '@maketribe/dm'\r\nimport { useRouter } from \"vue-router\";\r\nimport { useCmsSettings } from \"../../../cms-settings\"\r\n// cms 配置\r\nconst CmsSettings = useCmsSettings();\r\n\r\n// 文章\r\nconst articlesDv = reactive(new CmsArticlesTable()) as CmsArticlesTable;\r\n// 发布文章表单\r\nconst articleForm = reactive(new CmsArticlesForm()) as CmsArticlesForm;\r\n// 草稿文章\r\nconst draftArticleForm = reactive(new CmsArticlesForm()) as CmsArticlesForm;\r\n\r\n// 参数\r\nconst props = defineProps({\r\n part: { type: Object, default: null }\r\n})\r\n\r\nconst router = useRouter();\r\n\r\n// 初始化\r\nonMounted(()=>{\r\n articleForm.init();\r\n draftArticleForm.init();\r\n\r\n // 监听栏目数据变化\r\n watch(() => props.part, (item: any) => {\r\n if (item.cmsPartTypeId != 1) {\r\n\r\n const dataFilter = articlesDv.dataFilter;\r\n\r\n if (isWhereFilter(dataFilter)) {\r\n\r\n const defaultGroup = dataFilter.getDefaultGroup();\r\n\r\n defaultGroup.clear();\r\n defaultGroup.addCondition(\"cmsPartId\", \"=\", item.id);\r\n // 只查草稿\r\n defaultGroup.addCondition(\"isDraft\", \"=\", 1);\r\n }\r\n\r\n articlesDv.load()\r\n }\r\n }, { immediate: true })\r\n})\r\n\r\n/**\r\n * 删除文章\r\n */\r\nconst deleteArticleHandle = async (item: any) => {\r\n const isConfirm = await Dialoger.confirm({\r\n title: \"删除文章?\",\r\n message: \"是否删除文章?\",\r\n type: \"warning\"\r\n })\r\n\r\n if (!isConfirm) { return; }\r\n await articlesDv.deleteAfterRefresh(item.id);\r\n}\r\n\r\n/**\r\n * 编辑文章\r\n */\r\nconst editArticleHandle = (item: any, isEdit = false) => {\r\n router.push({ path: \"/cms/article\", query: { id: isEdit ? undefined : item.id, partId: isEdit ? item.id : undefined } })\r\n}\r\n\r\n// 添加记录\r\narticlesDv.addRecordEvent.on(() => editArticleHandle(props.part, true))\r\n\r\n/**\r\n * fault文章\r\n * @param article \r\n */\r\nconst publishArticleHandle = async (article: any) => {\r\n\r\n try {\r\n\r\n if (await Dialoger.confirm({ title: \"文章发布\", message: \"是否发布文章?\", type: \"warning\" })) {\r\n\r\n articlesDv.getLoadingManager().startLoading();\r\n\r\n // 调用发布接口\r\n const response:any = await CmsArticlesForm.publish(CmsSettings.publish.mode,article.cmsPartId,article.id);\r\n\r\n if (response.data.code !== 200) {\r\n Messager.error({ message: response.data.msg });\r\n return;\r\n }\r\n\r\n Messager.success({ message: \"发布成功\" });\r\n }\r\n\r\n } finally {\r\n articlesDv.getLoadingManager().completeLoading();\r\n }\r\n}\r\n\r\n\r\n</script>\r\n"],"names":["useCmsSettings","reactive","CmsArticlesTable","CmsArticlesForm","useRouter","onMounted","watch","isWhereFilter","Dialoger","Messager"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAkEA,UAAM,cAAcA,YAAAA;AAGpB,UAAM,aAAaC,IAAAA,SAAS,IAAIC,iBAAAA,iBAAkB,CAAA;AAElD,UAAM,cAAcD,IAAAA,SAAS,IAAIE,gBAAAA,gBAAiB,CAAA;AAElD,UAAM,mBAAmBF,IAAAA,SAAS,IAAIE,gBAAAA,gBAAiB,CAAA;AAGvD,UAAM,QAAQ;AAId,UAAM,SAASC,UAAAA;AAGfC,QAAAA,UAAU,MAAI;AACZ,kBAAY,KAAK;AACjB,uBAAiB,KAAK;AAGtBC,UAAAA,MAAM,MAAM,MAAM,MAAM,CAAC,SAAc;AACjC,YAAA,KAAK,iBAAiB,GAAG;AAE3B,gBAAM,aAAa,WAAW;AAE1B,cAAAC,GAAAA,cAAc,UAAU,GAAG;AAEvB,kBAAA,eAAe,WAAW;AAEhC,yBAAa,MAAM;AACnB,yBAAa,aAAa,aAAa,KAAK,KAAK,EAAE;AAEtC,yBAAA,aAAa,WAAW,KAAK,CAAC;AAAA,UAC7C;AAEA,qBAAW,KAAK;AAAA,QAClB;AAAA,MAAA,GACC,EAAE,WAAW,KAAA,CAAM;AAAA,IAAA,CACvB;AAKK,UAAA,sBAAsB,OAAO,SAAc;AACzC,YAAA,YAAY,MAAMC,GAAA,SAAS,QAAQ;AAAA,QACvC,OAAO;AAAA,QACP,SAAS;AAAA,QACT,MAAM;AAAA,MAAA,CACP;AAED,UAAI,CAAC,WAAW;AAAE;AAAA,MAAQ;AACpB,YAAA,WAAW,mBAAmB,KAAK,EAAE;AAAA,IAAA;AAM7C,UAAM,oBAAoB,CAAC,MAAW,SAAS,UAAU;AACvD,aAAO,KAAK,EAAE,MAAM,gBAAgB,OAAO,EAAE,IAAI,SAAS,SAAY,KAAK,IAAI,QAAQ,SAAS,KAAK,KAAK,UAAa;AAAA,IAAA;AAIzH,eAAW,eAAe,GAAG,MAAO,kBAAkB,MAAM,MAAM,IAAI,CAAC;AAMjE,UAAA,uBAAuB,OAAO,YAAiB;AAE/C,UAAA;AAEE,YAAA,MAAMA,GAAS,SAAA,QAAQ,EAAE,OAAO,QAAQ,SAAS,WAAW,MAAM,UAAU,CAAC,GAAG;AAEvE,qBAAA,oBAAoB;AAGzB,gBAAA,WAAe,MAAML,gCAAgB,QAAQ,YAAY,QAAQ,MAAK,QAAQ,WAAU,QAAQ,EAAE;AAEpG,cAAA,SAAS,KAAK,SAAS,KAAK;AAC9BM,eAAA,SAAS,MAAM,EAAE,SAAS,SAAS,KAAK,KAAK;AAC7C;AAAA,UACF;AAEAA,aAAAA,SAAS,QAAQ,EAAE,SAAS,OAAQ,CAAA;AAAA,QACtC;AAAA,MAAA,UAEA;AACW,mBAAA,oBAAoB;MACjC;AAAA,IAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -38,6 +38,7 @@ const dm = require("@maketribe/dm");
|
|
|
38
38
|
require("../../../../core/DataModelDefines.js");
|
|
39
39
|
const MSAppClient = require("../../../../core/MSAppClient.js");
|
|
40
40
|
require("../../../ms/dataviews/ms-config/MsConfigTable.js");
|
|
41
|
+
require("lodash-es");
|
|
41
42
|
require("../../../ms/dataviews/department/DepartmentForm.js");
|
|
42
43
|
require("../../../ms/dataviews/department/DepartmentTable.js");
|
|
43
44
|
require("../../../ms/dataviews/department/DepartmentTree.js");
|
|
@@ -50,6 +51,7 @@ require("../../../ms/components/markdown-editor/index.js");
|
|
|
50
51
|
require("../../../ms/components/rich-text-editor/index.js");
|
|
51
52
|
require("../../../ms/material-upload-context/material-upload-context-options.js");
|
|
52
53
|
require("../../../ms/material-upload-context/material-upload-context.js");
|
|
54
|
+
require("@element-plus/icons-vue");
|
|
53
55
|
require("@codemirror/lang-html");
|
|
54
56
|
const CmsPartTypesTable = require("../../dataviews/cms-part-types/CmsPartTypesTable.js");
|
|
55
57
|
const CmsPartForm = require("../../dataviews/cms-parts/CmsPartForm.js");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.vue2.js","sources":["../../../../../../src/modules/cms/pages/cms-contents/index.vue"],"sourcesContent":["<template>\r\n <div class=\"mk-cms-contents__warp\" v-loading=\"loading\">\r\n <el-page-header style=\"background-color: #fff; padding: 10px\" :icon=\"null\">\r\n <template #title>\r\n <h3 style=\"color: var(--el-text-color-regular); margin-left: 10px\">\r\n <MKSvgIcon iconClass=\"richtext-outline\" style=\"margin-right: 5px\" />\r\n 内容管理\r\n </h3>\r\n </template>\r\n <template #extra>\r\n <div class=\"flex items-center\">\r\n <el-button-group>\r\n <el-button type=\"primary\" size=\"large\" text v-if=\"CmsSettings.publish.mode == 'static'\" @click=\"publishAllHandle\">\r\n <MKSvgIcon iconClass=\"Promotion\" style=\"margin-right: 10px\" />\r\n 整站发布\r\n </el-button>\r\n <el-button type=\"primary\" size=\"large\" text @click=\"showPartFormHandle\">\r\n <MKSvgIcon iconClass=\"Plus\" style=\"margin-right: 10px\" />\r\n 新增栏目\r\n </el-button>\r\n </el-button-group>\r\n </div>\r\n </template>\r\n </el-page-header>\r\n <div class=\"mk-cms-contents__body\">\r\n <MKPartTree class=\"mk-cms-contents__body__left\" @select=\"selectPartHandle\" @edit=\"editPartHandle\"\r\n @add=\"showPartFormHandle\" @deleteSuccessfully=\"deletePartHandle\" ref=\"partTreeRef\"\r\n :curSelectId=\"(route.query.pid as string)\" />\r\n <el-tabs v-if=\"curSelectPartItem\" v-model=\"activeTabName\" class=\"mk-cms-contents__body__right\">\r\n <div class=\"mk-cms-contents__body__right__action\">\r\n\r\n <template v-if=\"partExt && activeTabName == 'part-ext'\">\r\n <el-button type=\"primary\" v-if=\"partExt.save\" text @click=\"partExt.save()\">\r\n <MKSvgIcon iconClass=\"save\" style=\"margin-right: 5px\" />\r\n 保存\r\n </el-button>\r\n </template>\r\n <template v-else>\r\n <el-button type=\"primary\" text @click=\"savePartHandle()\" :disabled=\"!partDataForm?.isChanged\"\r\n v-if=\"activeTabName != 'article-list'\">\r\n <MKSvgIcon iconClass=\"save\" style=\"margin-right: 5px\" />\r\n 保存\r\n </el-button>\r\n </template>\r\n <el-dropdown v-if=\"CmsSettings.publish.mode == 'static'\">\r\n <span class=\"el-dropdown-link\">\r\n <el-button type=\"primary\" text>\r\n <MKSvgIcon iconClass=\"MoreFilled\" />\r\n </el-button>\r\n </span>\r\n <template #dropdown>\r\n <el-dropdown-menu>\r\n <el-dropdown-item @click=\"previewHandle()\" v-if=\"CmsSettings.publish.mode == 'static' && curSelectPartItem.coverTemplate\">\r\n <MKSvgIcon iconClass=\"View\" style=\"margin-left: 10px;\" />\r\n 预览封面\r\n </el-dropdown-item>\r\n <el-dropdown-item @click=\"previewHandle(true)\" v-if=\"curSelectPartItem.listTemplate\">\r\n <MKSvgIcon iconClass=\"View\" style=\"margin-left: 10px;\" />\r\n 预览列表\r\n </el-dropdown-item>\r\n <el-dropdown-item @click=\"showPublish = true\">\r\n <MKSvgIcon iconClass=\"Promotion\" style=\"margin-left: 10px;\" />\r\n 发布当前栏目\r\n </el-dropdown-item>\r\n </el-dropdown-menu>\r\n </template>\r\n </el-dropdown>\r\n </div>\r\n <el-tab-pane label=\"文章列表\" name=\"article-list\" v-if=\"curSelectPartItem.contentTemplate\">\r\n <ArticleList v-if=\"activeTabName == 'article-list'\" :part=\"curSelectPartItem\" />\r\n </el-tab-pane>\r\n <el-tab-pane label=\"栏目设置\" name=\"part\" v-loading=\"partDataForm.loading\">\r\n <PartInfo v-if=\"activeTabName == 'part'\" :part=\"curSelectPartItem\" ref=\"partInfoRef\"\r\n :partDataForm=\"partDataForm\" />\r\n </el-tab-pane>\r\n <el-tab-pane label=\"页面内容\" name=\"part-content\" style=\"background-color: #f4f4f4\"\r\n v-if=\"curSelectPartItem.cmsPartTypeId != 1\" v-loading=\"partDataForm.loading\">\r\n <MKDocEditor v-if=\"activeTabName == 'part-content'\" :content=\"partDataForm.data?.content\"\r\n placeholder=\"从这里开始写正文...\" @change=\"EditorChangeHandle\" />\r\n </el-tab-pane>\r\n <el-tab-pane v-if=\"partExt\" label=\"页面扩展设置\" name=\"part-ext\">\r\n <component :is=\"partExt.component\" />\r\n </el-tab-pane>\r\n \r\n </el-tabs>\r\n <el-empty v-else description=\"请选择栏目\" style=\"width: 100%\" />\r\n </div>\r\n <el-dialog v-model=\"showPublish\" title=\"栏目发布\" width=\"475px\" :append-to-body=\"false\">\r\n <div class=\"mk-cms-contents__publish\">\r\n <div><span>是否发布列表:</span> <el-switch v-model=\"optionData.isPublishList\"\r\n :disabled=\"!curSelectPartItem.listTemplate\" /></div>\r\n <div><span>是否发布封面:</span> <el-switch v-model=\"optionData.isPublishCover\"\r\n :disabled=\"!curSelectPartItem.coverTemplate\" /></div>\r\n <div><span>是否发布内容:</span> <el-switch v-model=\"optionData.isPublishContent\"\r\n :disabled=\"!curSelectPartItem.contentTemplate\" /></div>\r\n <div><span>是否发布资源:</span> <el-switch v-model=\"optionData.isPublishAssets\" /></div>\r\n <div><span>是否强制发布:</span> <el-switch v-model=\"optionData.isCompulsion\" /></div>\r\n </div>\r\n <template #footer>\r\n <el-button @click=\"showPublish = false\">取消</el-button>\r\n <el-button type=\"primary\" @click=\"publishPartHandle\" :loading=\"btnLoading\">确定</el-button>\r\n </template>\r\n </el-dialog>\r\n </div>\r\n</template>\r\n<script setup lang=\"ts\" >\r\nimport { MKPartTree } from \"../../components\";\r\nimport ArticleList from \"./components/article-list.vue\";\r\nimport PartInfo from \"./components/part-info.vue\";\r\nimport { MKDocEditor } from \"../../../../components\";\r\nimport { reactive, ref, onMounted, watch } from \"vue\";\r\nimport { Dialoger, FormColumn, Messager } from \"@maketribe/dm\";\r\nimport { CmsContentManPartForm, CmsPartForm, CmsPartTypesTable } from \"../../dataviews\";\r\nimport { useRoute, useRouter } from \"vue-router\";\r\nimport { MSAppClient } from \"../../../../core\";\r\nimport { usePartExtension, type PartExtension } from \"../../composables/part-extensions\"\r\nimport { ElSwitch } from \"element-plus\";\r\nimport { useCmsSettings } from \"../../cms-settings\"\r\n//路由 \r\nconst route = useRoute();\r\nconst router = useRouter();\r\n//预览\r\nconst previewHandle = (isList = false) => {\r\n if (isList) {\r\n window.open(`/api/cms/content/preview/part/${curSelectPartItem.value.id}?pageNo=1`)\r\n } else {\r\n window.open(`/api/cms/content/preview/part/${curSelectPartItem.value.id}`)\r\n }\r\n}\r\n\r\n// cms 配置\r\nconst CmsSettings = useCmsSettings(true);\r\n\r\n//发布栏目时的配置\r\nconst showPublish = ref(false)\r\n\r\n//发布配置项\r\nconst optionData = ref({\r\n isPublishList: false,\r\n isPublishCover: false,\r\n isPublishContent: false,\r\n isPublishAssets: false,\r\n isCompulsion: true\r\n});\r\n//发布弹窗的按钮\r\nconst btnLoading = ref(false);\r\n\r\n// 激活的tab\r\nconst activeTabName = ref(\"article-list\");\r\n\r\n// 当前选中的菜单\r\nconst curSelectPartItem = ref(null as any);\r\n\r\n// 栏目树ref\r\nconst partTreeRef = ref(null);\r\n\r\n//栏目扩展\r\nconst partExt = ref<PartExtension>();\r\n\r\n//栏目数据\r\nconst partDataForm = reactive(new CmsContentManPartForm()) as CmsContentManPartForm;\r\n\r\n// 挂载的时候初始化下\r\nonMounted(() => {\r\n // 需要走一下初始化\r\n partDataForm.init();\r\n})\r\n\r\n// 选择栏目\r\nconst selectPartHandle = async (item: any) => {\r\n\r\n if (curSelectPartItem.value != item) {\r\n\r\n curSelectPartItem.value = item;\r\n\r\n if (!curSelectPartItem.value.contentTemplate) {\r\n activeTabName.value = \"part\";\r\n }\r\n else{\r\n activeTabName.value = \"article-list\";\r\n }\r\n\r\n partDataForm.editRecord(curSelectPartItem.value.id)\r\n\r\n router.replace({ name: 'cms/contents', query: { pid: curSelectPartItem.value.id } } as any)\r\n partExt.value = usePartExtension(curSelectPartItem.value.id);\r\n }\r\n};\r\n//删除栏目\r\nconst deletePartHandle = (item: any) => {\r\n if (item.id == curSelectPartItem.value.id) {\r\n curSelectPartItem.value = null;\r\n }\r\n};\r\n//编辑栏目\r\nconst editPartHandle = (item: any) => {\r\n curSelectPartItem.value = item;\r\n activeTabName.value = \"part\";\r\n};\r\n\r\n//栏目表单\r\nconst partForm = reactive(\r\n new (class extends CmsPartForm {\r\n protected async initialize() {\r\n await super.initialize();\r\n this.setColumns([\r\n new FormColumn({\r\n name: \"cmsPartTypeId\",\r\n label: \"栏目类型\",\r\n componentInfo: \"MKFormDataSelect\",\r\n defaultValue: \"2\",\r\n componentProps: {\r\n dataTable: this.register(\r\n new CmsPartTypesTable()\r\n ) as CmsPartTypesTable,\r\n },\r\n required: true,\r\n }),\r\n new FormColumn({\r\n name: \"name\",\r\n label: \"栏目名称\",\r\n required: true,\r\n }),\r\n new FormColumn({\r\n name: \"title\",\r\n label: \"栏目标题\",\r\n required: true,\r\n }),\r\n ]);\r\n }\r\n })()\r\n);\r\n/**\r\n * 显示添加栏目表单\r\n */\r\nconst showPartFormHandle = async (item?: any) => {\r\n await Dialoger.dataFormDialog({\r\n dataForm: partForm as CmsContentManPartForm,\r\n });\r\n\r\n if (item.id) {\r\n partForm.addRecord({ parentId: item.id });\r\n }\r\n};\r\n\r\nwatch(activeTabName, async () => {\r\n if (activeTabName.value == \"part\") {\r\n curSelectPartItem.value = (await partDataForm.editRecord(curSelectPartItem.value.id)).data.data\r\n }\r\n})\r\n\r\n//监听表单完成事件\r\npartForm.submittedEvent.on(() => {\r\n (partTreeRef.value! as any).dataTree?.load();\r\n});\r\n\r\nconst loading = ref(false)\r\n\r\n// 整站发布\r\nconst publishAllHandle = async () => {\r\n\r\n const httpRequest = MSAppClient.instance?.httpRequest!;\r\n\r\n try {\r\n const isConfirm = await Dialoger.confirm({ title: \"全量发布\", message: \"是否整站全量发布?\", type: \"warning\" })\r\n\r\n if (!isConfirm) {\r\n return;\r\n }\r\n loading.value = true\r\n\r\n const response = await httpRequest.post(\r\n `/cms/content/publish/all`\r\n );\r\n\r\n if (response.data.code !== 200) {\r\n Messager.error({ message: response.data.msg });\r\n return;\r\n }\r\n\r\n Messager.success({ message: \"发布成功\" });\r\n\r\n } finally {\r\n loading.value = false\r\n }\r\n}\r\n\r\n//栏目发布\r\nconst publishPartHandle = async () => {\r\n const httpRequest = MSAppClient.instance?.httpRequest!;\r\n try {\r\n btnLoading.value = true\r\n\r\n const response = await httpRequest.post(\r\n `/cms/content/publish/part`, {\r\n partIds: [\r\n curSelectPartItem.value.id\r\n ],\r\n ...optionData.value\r\n }\r\n );\r\n\r\n if (response.data.code !== 200) {\r\n Messager.error({ message: response.data.msg });\r\n return;\r\n }\r\n showPublish.value = false;\r\n\r\n Messager.success({ message: \"发布成功\" });\r\n\r\n } finally {\r\n btnLoading.value = false\r\n }\r\n}\r\n\r\n/**\r\n * 保存栏目信息\r\n */\r\nconst savePartHandle = async () => {\r\n curSelectPartItem.value = partDataForm.data;\r\n await partDataForm.submit();\r\n}\r\n\r\n/**\r\n * 更新编辑器内容\r\n * @param v 内容\r\n */\r\nconst EditorChangeHandle = (v: any) => {\r\n partDataForm.data.content = v\r\n}\r\n</script>\r\n"],"names":["useRoute","useRouter","useCmsSettings","ref","reactive","CmsContentManPartForm","onMounted","usePartExtension","CmsPartForm","FormColumn","CmsPartTypesTable","Dialoger","watch","MSAppClient","Messager"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.vue2.js","sources":["../../../../../../src/modules/cms/pages/cms-contents/index.vue"],"sourcesContent":["<template>\r\n <div class=\"mk-cms-contents__warp\" v-loading=\"loading\">\r\n <el-page-header style=\"background-color: #fff; padding: 10px\" :icon=\"null\">\r\n <template #title>\r\n <h3 style=\"color: var(--el-text-color-regular); margin-left: 10px\">\r\n <MKSvgIcon iconClass=\"richtext-outline\" style=\"margin-right: 5px\" />\r\n 内容管理\r\n </h3>\r\n </template>\r\n <template #extra>\r\n <div class=\"flex items-center\">\r\n <el-button-group>\r\n <el-button type=\"primary\" size=\"large\" text v-if=\"CmsSettings.publish.mode == 'static'\" @click=\"publishAllHandle\">\r\n <MKSvgIcon iconClass=\"Promotion\" style=\"margin-right: 10px\" />\r\n 整站发布\r\n </el-button>\r\n <el-button type=\"primary\" size=\"large\" text @click=\"showPartFormHandle\">\r\n <MKSvgIcon iconClass=\"Plus\" style=\"margin-right: 10px\" />\r\n 新增栏目\r\n </el-button>\r\n </el-button-group>\r\n </div>\r\n </template>\r\n </el-page-header>\r\n <div class=\"mk-cms-contents__body\">\r\n <MKPartTree class=\"mk-cms-contents__body__left\" @select=\"selectPartHandle\" @edit=\"editPartHandle\"\r\n @add=\"showPartFormHandle\" @deleteSuccessfully=\"deletePartHandle\" ref=\"partTreeRef\"\r\n :curSelectId=\"(route.query.pid as string)\" />\r\n <el-tabs v-if=\"curSelectPartItem\" v-model=\"activeTabName\" class=\"mk-cms-contents__body__right\">\r\n <div class=\"mk-cms-contents__body__right__action\">\r\n\r\n <template v-if=\"partExt && activeTabName == 'part-ext'\">\r\n <el-button type=\"primary\" v-if=\"partExt.save\" text @click=\"partExt.save()\">\r\n <MKSvgIcon iconClass=\"save\" style=\"margin-right: 5px\" />\r\n 保存\r\n </el-button>\r\n </template>\r\n <template v-else>\r\n <el-button type=\"primary\" text @click=\"savePartHandle()\" :disabled=\"!partDataForm?.isChanged\"\r\n v-if=\"activeTabName != 'article-list'\">\r\n <MKSvgIcon iconClass=\"save\" style=\"margin-right: 5px\" />\r\n 保存\r\n </el-button>\r\n </template>\r\n <el-dropdown v-if=\"CmsSettings.publish.mode == 'static'\">\r\n <span class=\"el-dropdown-link\">\r\n <el-button type=\"primary\" text>\r\n <MKSvgIcon iconClass=\"MoreFilled\" />\r\n </el-button>\r\n </span>\r\n <template #dropdown>\r\n <el-dropdown-menu>\r\n <el-dropdown-item @click=\"previewHandle()\" v-if=\"CmsSettings.publish.mode == 'static' && curSelectPartItem.coverTemplate\">\r\n <MKSvgIcon iconClass=\"View\" style=\"margin-left: 10px;\" />\r\n 预览封面\r\n </el-dropdown-item>\r\n <el-dropdown-item @click=\"previewHandle(true)\" v-if=\"curSelectPartItem.listTemplate\">\r\n <MKSvgIcon iconClass=\"View\" style=\"margin-left: 10px;\" />\r\n 预览列表\r\n </el-dropdown-item>\r\n <el-dropdown-item @click=\"showPublish = true\">\r\n <MKSvgIcon iconClass=\"Promotion\" style=\"margin-left: 10px;\" />\r\n 发布当前栏目\r\n </el-dropdown-item>\r\n </el-dropdown-menu>\r\n </template>\r\n </el-dropdown>\r\n </div>\r\n <el-tab-pane label=\"文章列表\" name=\"article-list\" v-if=\"curSelectPartItem.contentTemplate\">\r\n <ArticleList v-if=\"activeTabName == 'article-list'\" :part=\"curSelectPartItem\" />\r\n </el-tab-pane>\r\n <el-tab-pane label=\"栏目设置\" name=\"part\" v-loading=\"partDataForm.loading\">\r\n <PartInfo v-if=\"activeTabName == 'part'\" :part=\"curSelectPartItem\" ref=\"partInfoRef\"\r\n :partDataForm=\"partDataForm\" />\r\n </el-tab-pane>\r\n <el-tab-pane label=\"页面内容\" name=\"part-content\" style=\"background-color: #f4f4f4\"\r\n v-if=\"curSelectPartItem.cmsPartTypeId != 1\" v-loading=\"partDataForm.loading\">\r\n <MKDocEditor v-if=\"activeTabName == 'part-content'\" :content=\"partDataForm.data?.content\"\r\n placeholder=\"从这里开始写正文...\" @change=\"EditorChangeHandle\" />\r\n </el-tab-pane>\r\n <el-tab-pane v-if=\"partExt\" label=\"页面扩展设置\" name=\"part-ext\">\r\n <component :is=\"partExt.component\" />\r\n </el-tab-pane>\r\n \r\n </el-tabs>\r\n <el-empty v-else description=\"请选择栏目\" style=\"width: 100%\" />\r\n </div>\r\n <el-dialog v-model=\"showPublish\" title=\"栏目发布\" width=\"475px\" :append-to-body=\"false\">\r\n <div class=\"mk-cms-contents__publish\">\r\n <div><span>是否发布列表:</span> <el-switch v-model=\"optionData.isPublishList\"\r\n :disabled=\"!curSelectPartItem.listTemplate\" /></div>\r\n <div><span>是否发布封面:</span> <el-switch v-model=\"optionData.isPublishCover\"\r\n :disabled=\"!curSelectPartItem.coverTemplate\" /></div>\r\n <div><span>是否发布内容:</span> <el-switch v-model=\"optionData.isPublishContent\"\r\n :disabled=\"!curSelectPartItem.contentTemplate\" /></div>\r\n <div><span>是否发布资源:</span> <el-switch v-model=\"optionData.isPublishAssets\" /></div>\r\n <div><span>是否强制发布:</span> <el-switch v-model=\"optionData.isCompulsion\" /></div>\r\n </div>\r\n <template #footer>\r\n <el-button @click=\"showPublish = false\">取消</el-button>\r\n <el-button type=\"primary\" @click=\"publishPartHandle\" :loading=\"btnLoading\">确定</el-button>\r\n </template>\r\n </el-dialog>\r\n </div>\r\n</template>\r\n<script setup lang=\"ts\" >\r\nimport { MKPartTree } from \"../../components\";\r\nimport ArticleList from \"./components/article-list.vue\";\r\nimport PartInfo from \"./components/part-info.vue\";\r\nimport { MKDocEditor } from \"../../../../components\";\r\nimport { reactive, ref, onMounted, watch } from \"vue\";\r\nimport { Dialoger, FormColumn, Messager } from \"@maketribe/dm\";\r\nimport { CmsContentManPartForm, CmsPartForm, CmsPartTypesTable } from \"../../dataviews\";\r\nimport { useRoute, useRouter } from \"vue-router\";\r\nimport { MSAppClient } from \"../../../../core\";\r\nimport { usePartExtension, type PartExtension } from \"../../composables/part-extensions\"\r\nimport { ElSwitch } from \"element-plus\";\r\nimport { useCmsSettings } from \"../../cms-settings\"\r\n//路由 \r\nconst route = useRoute();\r\nconst router = useRouter();\r\n//预览\r\nconst previewHandle = (isList = false) => {\r\n if (isList) {\r\n window.open(`/api/cms/content/preview/part/${curSelectPartItem.value.id}?pageNo=1`)\r\n } else {\r\n window.open(`/api/cms/content/preview/part/${curSelectPartItem.value.id}`)\r\n }\r\n}\r\n\r\n// cms 配置\r\nconst CmsSettings = useCmsSettings(true);\r\n\r\n//发布栏目时的配置\r\nconst showPublish = ref(false)\r\n\r\n//发布配置项\r\nconst optionData = ref({\r\n isPublishList: false,\r\n isPublishCover: false,\r\n isPublishContent: false,\r\n isPublishAssets: false,\r\n isCompulsion: true\r\n});\r\n//发布弹窗的按钮\r\nconst btnLoading = ref(false);\r\n\r\n// 激活的tab\r\nconst activeTabName = ref(\"article-list\");\r\n\r\n// 当前选中的菜单\r\nconst curSelectPartItem = ref(null as any);\r\n\r\n// 栏目树ref\r\nconst partTreeRef = ref(null);\r\n\r\n//栏目扩展\r\nconst partExt = ref<PartExtension>();\r\n\r\n//栏目数据\r\nconst partDataForm = reactive(new CmsContentManPartForm()) as CmsContentManPartForm;\r\n\r\n// 挂载的时候初始化下\r\nonMounted(() => {\r\n // 需要走一下初始化\r\n partDataForm.init();\r\n})\r\n\r\n// 选择栏目\r\nconst selectPartHandle = async (item: any) => {\r\n\r\n if (curSelectPartItem.value != item) {\r\n\r\n curSelectPartItem.value = item;\r\n\r\n if (!curSelectPartItem.value.contentTemplate) {\r\n activeTabName.value = \"part\";\r\n }\r\n else{\r\n activeTabName.value = \"article-list\";\r\n }\r\n\r\n partDataForm.editRecord(curSelectPartItem.value.id)\r\n\r\n router.replace({ name: 'cms/contents', query: { pid: curSelectPartItem.value.id } } as any)\r\n partExt.value = usePartExtension(curSelectPartItem.value.id);\r\n }\r\n};\r\n//删除栏目\r\nconst deletePartHandle = (item: any) => {\r\n if (item.id == curSelectPartItem.value.id) {\r\n curSelectPartItem.value = null;\r\n }\r\n};\r\n//编辑栏目\r\nconst editPartHandle = (item: any) => {\r\n curSelectPartItem.value = item;\r\n activeTabName.value = \"part\";\r\n};\r\n\r\n//栏目表单\r\nconst partForm = reactive(\r\n new (class extends CmsPartForm {\r\n protected async initialize() {\r\n await super.initialize();\r\n this.setColumns([\r\n new FormColumn({\r\n name: \"cmsPartTypeId\",\r\n label: \"栏目类型\",\r\n componentInfo: \"MKFormDataSelect\",\r\n defaultValue: \"2\",\r\n componentProps: {\r\n dataTable: this.register(\r\n new CmsPartTypesTable()\r\n ) as CmsPartTypesTable,\r\n },\r\n required: true,\r\n }),\r\n new FormColumn({\r\n name: \"name\",\r\n label: \"栏目名称\",\r\n required: true,\r\n }),\r\n new FormColumn({\r\n name: \"title\",\r\n label: \"栏目标题\",\r\n required: true,\r\n }),\r\n ]);\r\n }\r\n })()\r\n);\r\n/**\r\n * 显示添加栏目表单\r\n */\r\nconst showPartFormHandle = async (item?: any) => {\r\n await Dialoger.dataFormDialog({\r\n dataForm: partForm as CmsContentManPartForm,\r\n });\r\n\r\n if (item.id) {\r\n partForm.addRecord({ parentId: item.id });\r\n }\r\n};\r\n\r\nwatch(activeTabName, async () => {\r\n if (activeTabName.value == \"part\") {\r\n curSelectPartItem.value = (await partDataForm.editRecord(curSelectPartItem.value.id)).data.data\r\n }\r\n})\r\n\r\n//监听表单完成事件\r\npartForm.submittedEvent.on(() => {\r\n (partTreeRef.value! as any).dataTree?.load();\r\n});\r\n\r\nconst loading = ref(false)\r\n\r\n// 整站发布\r\nconst publishAllHandle = async () => {\r\n\r\n const httpRequest = MSAppClient.instance?.httpRequest!;\r\n\r\n try {\r\n const isConfirm = await Dialoger.confirm({ title: \"全量发布\", message: \"是否整站全量发布?\", type: \"warning\" })\r\n\r\n if (!isConfirm) {\r\n return;\r\n }\r\n loading.value = true\r\n\r\n const response = await httpRequest.post(\r\n `/cms/content/publish/all`\r\n );\r\n\r\n if (response.data.code !== 200) {\r\n Messager.error({ message: response.data.msg });\r\n return;\r\n }\r\n\r\n Messager.success({ message: \"发布成功\" });\r\n\r\n } finally {\r\n loading.value = false\r\n }\r\n}\r\n\r\n//栏目发布\r\nconst publishPartHandle = async () => {\r\n const httpRequest = MSAppClient.instance?.httpRequest!;\r\n try {\r\n btnLoading.value = true\r\n\r\n const response = await httpRequest.post(\r\n `/cms/content/publish/part`, {\r\n partIds: [\r\n curSelectPartItem.value.id\r\n ],\r\n ...optionData.value\r\n }\r\n );\r\n\r\n if (response.data.code !== 200) {\r\n Messager.error({ message: response.data.msg });\r\n return;\r\n }\r\n showPublish.value = false;\r\n\r\n Messager.success({ message: \"发布成功\" });\r\n\r\n } finally {\r\n btnLoading.value = false\r\n }\r\n}\r\n\r\n/**\r\n * 保存栏目信息\r\n */\r\nconst savePartHandle = async () => {\r\n curSelectPartItem.value = partDataForm.data;\r\n await partDataForm.submit();\r\n}\r\n\r\n/**\r\n * 更新编辑器内容\r\n * @param v 内容\r\n */\r\nconst EditorChangeHandle = (v: any) => {\r\n partDataForm.data.content = v\r\n}\r\n</script>\r\n"],"names":["useRoute","useRouter","useCmsSettings","ref","reactive","CmsContentManPartForm","onMounted","usePartExtension","CmsPartForm","FormColumn","CmsPartTypesTable","Dialoger","watch","MSAppClient","Messager"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.vue2.js","sources":["../../../../../../src/modules/cms/pages/cms-resource/index.vue"],"sourcesContent":["<template>\n <MKPageContainer>\n <MKResourceManager :resourceManager=\"resourceManager\">\n <template #tools>\n <ElButton type=\"primary\" @click=\"publishAssetsHandle\">发布资产</ElButton>\n <ElButton type=\"primary\" @click=\"publishAllHandle\">全站发布</ElButton>\n </template>\n </MKResourceManager>\n </MKPageContainer>\n</template>\n\n<script setup lang=\"ts\">\nimport { reactive } from \"vue\";\nimport { MSAppClient } from \"../../../../core\";\nimport { MKPageContainer } from \"../../../../components\";\nimport { MKResourceManager, ResourceManager } from \"../../../../components\";\nimport { Dialoger, Messager } from \"@maketribe/dm\";\n\n// 创建cms模版资源管理器\nconst resourceManager = reactive(new ResourceManager({ baseURL: \"/cms/template/resource\" })) as ResourceManager;\n\n// 资源发布\nconst publishAssetsHandle = async () => {\n const httpRequest = MSAppClient.instance!.httpRequest;\n\n try {\n const isConfirm = await Dialoger.confirm({\n title: \"发布资源\",\n message: \"是否发布资源?\",\n type: \"warning\",\n });\n\n if (!isConfirm) {\n return;\n }\n\n resourceManager.loadingManager.startLoading();\n\n const response = await httpRequest.post(`/cms/content/publish/assets`);\n\n if (response.data.code !== 200) {\n Messager.error({ message: response.data.msg });\n return;\n }\n\n Messager.success({ message: \"发布成功\" });\n } finally {\n resourceManager.loadingManager.completeLoading();\n }\n}\n//全站发布\n// 整站发布\nconst publishAllHandle = async () => {\n\n const httpRequest = MSAppClient.instance?.httpRequest!;\n\n try {\n const isConfirm = await Dialoger.confirm({ title: \"全量发布\", message: \"是否整站全量发布?\", type: \"warning\" })\n\n if (!isConfirm) {\n return;\n }\n resourceManager.loadingManager.startLoading();\n\n\n const response = await httpRequest.post(\n `/cms/content/publish/all`\n );\n\n if (response.data.code !== 200) {\n Messager.error({ message: response.data.msg });\n return;\n }\n\n Messager.success({ message: \"发布成功\" });\n\n } finally {\n resourceManager.loadingManager.completeLoading();\n }\n}\n</script>\n"],"names":["reactive","ResourceManager","MSAppClient","Dialoger","Messager"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAmBM,UAAA,kBAAkBA,IAAAA,SAAS,IAAIC,gBAAAA,gBAAgB,EAAE,SAAS,yBAA0B,CAAA,CAAC;AAG3F,UAAM,sBAAsB,YAAY;AAChC,YAAA,cAAcC,YAAAA,YAAY,SAAU;AAEtC,UAAA;AACI,cAAA,YAAY,MAAMC,GAAA,SAAS,QAAQ;AAAA,UACvC,OAAO;AAAA,UACP,SAAS;AAAA,UACT,MAAM;AAAA,QAAA,CACP;AAED,YAAI,CAAC,WAAW;AACd;AAAA,QACF;AAEA,wBAAgB,eAAe;AAE/B,cAAM,WAAW,MAAM,YAAY,KAAK,6BAA6B;AAEjE,YAAA,SAAS,KAAK,SAAS,KAAK;AAC9BC,aAAA,SAAS,MAAM,EAAE,SAAS,SAAS,KAAK,KAAK;AAC7C;AAAA,QACF;AAEAA,WAAAA,SAAS,QAAQ,EAAE,SAAS,OAAQ,CAAA;AAAA,MAAA,UACpC;AACA,wBAAgB,eAAe;MACjC;AAAA,IAAA;AAIF,UAAM,mBAAmB,YAAY;;AAE7B,YAAA,eAAcF,iBAAAA,YAAY,aAAZA,mBAAsB;AAEtC,UAAA;AACI,cAAA,YAAY,MAAMC,YAAS,QAAQ,EAAE,OAAO,QAAQ,SAAS,aAAa,MAAM,UAAW,CAAA;AAEjG,YAAI,CAAC,WAAW;AACd;AAAA,QACF;AACA,wBAAgB,eAAe;AAGzB,cAAA,WAAW,MAAM,YAAY;AAAA,UACjC;AAAA,QAAA;AAGE,YAAA,SAAS,KAAK,SAAS,KAAK;AAC9BC,aAAA,SAAS,MAAM,EAAE,SAAS,SAAS,KAAK,KAAK;AAC7C;AAAA,QACF;AAEAA,WAAAA,SAAS,QAAQ,EAAE,SAAS,OAAQ,CAAA;AAAA,MAAA,UAEpC;AACA,wBAAgB,eAAe;MACjC;AAAA,IAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
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 { MSAppClient } from \"../../../../core\";\r\nimport { MKPageContainer } from \"../../../../components\";\r\nimport { MKResourceManager, ResourceManager } from \"../../../../components\";\r\nimport { Dialoger, Messager } from \"@maketribe/dm\";\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 const httpRequest = MSAppClient.instance!.httpRequest;\r\n\r\n try {\r\n const isConfirm = await Dialoger.confirm({\r\n title: \"发布资源\",\r\n message: \"是否发布资源?\",\r\n type: \"warning\",\r\n });\r\n\r\n if (!isConfirm) {\r\n return;\r\n }\r\n\r\n resourceManager.loadingManager.startLoading();\r\n\r\n const response = await httpRequest.post(`/cms/content/publish/assets`);\r\n\r\n if (response.data.code !== 200) {\r\n Messager.error({ message: response.data.msg });\r\n return;\r\n }\r\n\r\n Messager.success({ message: \"发布成功\" });\r\n } finally {\r\n resourceManager.loadingManager.completeLoading();\r\n }\r\n}\r\n//全站发布\r\n// 整站发布\r\nconst publishAllHandle = async () => {\r\n\r\n const httpRequest = MSAppClient.instance?.httpRequest!;\r\n\r\n try {\r\n const isConfirm = await Dialoger.confirm({ title: \"全量发布\", message: \"是否整站全量发布?\", type: \"warning\" })\r\n\r\n if (!isConfirm) {\r\n return;\r\n }\r\n resourceManager.loadingManager.startLoading();\r\n\r\n\r\n const response = await httpRequest.post(\r\n `/cms/content/publish/all`\r\n );\r\n\r\n if (response.data.code !== 200) {\r\n Messager.error({ message: response.data.msg });\r\n return;\r\n }\r\n\r\n Messager.success({ message: \"发布成功\" });\r\n\r\n } finally {\r\n resourceManager.loadingManager.completeLoading();\r\n }\r\n}\r\n</script>\r\n"],"names":["reactive","ResourceManager","MSAppClient","Dialoger","Messager"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAmBM,UAAA,kBAAkBA,IAAAA,SAAS,IAAIC,gBAAAA,gBAAgB,EAAE,SAAS,yBAA0B,CAAA,CAAC;AAG3F,UAAM,sBAAsB,YAAY;AAChC,YAAA,cAAcC,YAAAA,YAAY,SAAU;AAEtC,UAAA;AACI,cAAA,YAAY,MAAMC,GAAA,SAAS,QAAQ;AAAA,UACvC,OAAO;AAAA,UACP,SAAS;AAAA,UACT,MAAM;AAAA,QAAA,CACP;AAED,YAAI,CAAC,WAAW;AACd;AAAA,QACF;AAEA,wBAAgB,eAAe;AAE/B,cAAM,WAAW,MAAM,YAAY,KAAK,6BAA6B;AAEjE,YAAA,SAAS,KAAK,SAAS,KAAK;AAC9BC,aAAA,SAAS,MAAM,EAAE,SAAS,SAAS,KAAK,KAAK;AAC7C;AAAA,QACF;AAEAA,WAAAA,SAAS,QAAQ,EAAE,SAAS,OAAQ,CAAA;AAAA,MAAA,UACpC;AACA,wBAAgB,eAAe;MACjC;AAAA,IAAA;AAIF,UAAM,mBAAmB,YAAY;;AAE7B,YAAA,eAAcF,iBAAAA,YAAY,aAAZA,mBAAsB;AAEtC,UAAA;AACI,cAAA,YAAY,MAAMC,YAAS,QAAQ,EAAE,OAAO,QAAQ,SAAS,aAAa,MAAM,UAAW,CAAA;AAEjG,YAAI,CAAC,WAAW;AACd;AAAA,QACF;AACA,wBAAgB,eAAe;AAGzB,cAAA,WAAW,MAAM,YAAY;AAAA,UACjC;AAAA,QAAA;AAGE,YAAA,SAAS,KAAK,SAAS,KAAK;AAC9BC,aAAA,SAAS,MAAM,EAAE,SAAS,SAAS,KAAK,KAAK;AAC7C;AAAA,QACF;AAEAA,WAAAA,SAAS,QAAQ,EAAE,SAAS,OAAQ,CAAA;AAAA,MAAA,UAEpC;AACA,wBAAgB,eAAe;MACjC;AAAA,IAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
const vue = require("vue");
|
|
3
|
+
const dm = require("@maketribe/dm");
|
|
4
|
+
const elementPlus = require("element-plus");
|
|
5
|
+
const imageSelectPanel = require("./image-select-panel.js");
|
|
6
|
+
require("../../../../components/basic/image-cropper/index.js");
|
|
7
|
+
const imageCropperApi = require("../../../../components/basic/image-cropper/image-cropper-api.js");
|
|
8
|
+
async function ImageSelect(cutWidth, cutHeight) {
|
|
9
|
+
return new Promise((resolve) => {
|
|
10
|
+
const path = vue.ref("");
|
|
11
|
+
const handleCancelClick = () => {
|
|
12
|
+
dialogInstance.destroy();
|
|
13
|
+
resolve({
|
|
14
|
+
success: false,
|
|
15
|
+
path: ""
|
|
16
|
+
});
|
|
17
|
+
};
|
|
18
|
+
const handleConfirmClick = async () => {
|
|
19
|
+
if (path.value) {
|
|
20
|
+
var result = await imageCropperApi.ImageCropper({
|
|
21
|
+
src: path.value,
|
|
22
|
+
ratioOptions: cutWidth && cutHeight ? [{
|
|
23
|
+
value: `${cutWidth}*${cutHeight}`,
|
|
24
|
+
label: `${cutWidth}px*${cutHeight}px`,
|
|
25
|
+
width: cutWidth,
|
|
26
|
+
height: cutHeight
|
|
27
|
+
}] : [],
|
|
28
|
+
maxWidth: cutWidth || 0,
|
|
29
|
+
maxHeight: cutHeight || 0
|
|
30
|
+
});
|
|
31
|
+
if (result.data) {
|
|
32
|
+
path.value = result.data;
|
|
33
|
+
dialogInstance.destroy();
|
|
34
|
+
resolve({
|
|
35
|
+
success: true,
|
|
36
|
+
path: path.value
|
|
37
|
+
});
|
|
38
|
+
}
|
|
39
|
+
} else {
|
|
40
|
+
dialogInstance.destroy();
|
|
41
|
+
resolve({
|
|
42
|
+
success: true,
|
|
43
|
+
path: path.value
|
|
44
|
+
});
|
|
45
|
+
}
|
|
46
|
+
};
|
|
47
|
+
const dialogInstance = dm.Dialoger.customRender({
|
|
48
|
+
title: "图片选择",
|
|
49
|
+
class: "mk-material-select",
|
|
50
|
+
width: "70%",
|
|
51
|
+
onClose: () => {
|
|
52
|
+
dialogInstance.destroy();
|
|
53
|
+
},
|
|
54
|
+
body: () => {
|
|
55
|
+
return vue.createVNode(imageSelectPanel, {
|
|
56
|
+
"modelValue": path.value,
|
|
57
|
+
"onUpdate:modelValue": ($event) => path.value = $event
|
|
58
|
+
}, null);
|
|
59
|
+
},
|
|
60
|
+
footer: () => {
|
|
61
|
+
return vue.createVNode(vue.Fragment, null, [vue.createVNode(elementPlus.ElButton, {
|
|
62
|
+
"onClick": handleCancelClick
|
|
63
|
+
}, {
|
|
64
|
+
default: () => [vue.createTextVNode("取消")]
|
|
65
|
+
}), vue.createVNode(elementPlus.ElButton, {
|
|
66
|
+
"type": "primary",
|
|
67
|
+
"onClick": handleConfirmClick
|
|
68
|
+
}, {
|
|
69
|
+
default: () => [vue.createTextVNode("确定")]
|
|
70
|
+
})]);
|
|
71
|
+
}
|
|
72
|
+
});
|
|
73
|
+
});
|
|
74
|
+
}
|
|
75
|
+
module.exports = ImageSelect;
|
|
76
|
+
//# sourceMappingURL=image-select-api.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"image-select-api.js","sources":["../../../../../../src/modules/ms/components/image-select/image-select-api.tsx"],"sourcesContent":["import { Fragment, ref,h } from \"vue\";\r\nimport { Dialoger } from \"@maketribe/dm\";\r\nimport { ElButton } from \"element-plus\";\r\nimport ImageSelectPanel from \"./image-select-panel\";\r\nimport { ImageCropper } from \"../../../../components/basic/image-cropper\"\r\n\r\nexport type MKImageSelectResult = { success: boolean; path: string; };\r\n\r\nexport default async function ImageSelect(cutWidth?:number,cutHeight?:number): Promise<MKImageSelectResult> {\r\n return new Promise((resolve) => {\r\n \r\n const path = ref<any>(\"\");\r\n\r\n const handleCancelClick = () => {\r\n dialogInstance.destroy();\r\n\r\n resolve({ success: false, path: \"\" });\r\n };\r\n\r\n const handleConfirmClick = async () => {\r\n\r\n\r\n if(path.value){\r\n\r\n var result = await ImageCropper({ \r\n src: path.value ,\r\n ratioOptions: cutWidth && cutHeight ?[\r\n { value: `${cutWidth}*${cutHeight}`, label: `${cutWidth}px*${cutHeight}px`, width: cutWidth, height: cutHeight }\r\n ]:[],\r\n maxWidth:cutWidth || 0,\r\n maxHeight:cutHeight || 0\r\n });\r\n\r\n if(result.data){\r\n path.value = result.data;\r\n dialogInstance.destroy();\r\n resolve({ success: true, path: path.value });\r\n }\r\n else{\r\n // 取消裁切\r\n \r\n }\r\n }\r\n else{\r\n dialogInstance.destroy();\r\n resolve({ success: true, path: path.value });\r\n }\r\n };\r\n\r\n const dialogInstance = Dialoger.customRender({\r\n title: \"图片选择\",\r\n class: \"mk-material-select\",\r\n width: \"70%\",\r\n onClose: () => {\r\n dialogInstance.destroy();\r\n },\r\n body: () => {\r\n return <ImageSelectPanel v-model={path.value} />\r\n },\r\n footer: () => {\r\n return (\r\n <Fragment>\r\n <ElButton onClick={handleCancelClick}>取消</ElButton>\r\n <ElButton type=\"primary\" onClick={handleConfirmClick}>\r\n 确定\r\n </ElButton>\r\n </Fragment>\r\n );\r\n },\r\n });\r\n });\r\n}\r\n"],"names":["ImageSelect","cutWidth","cutHeight","Promise","resolve","path","ref","handleCancelClick","dialogInstance","destroy","success","handleConfirmClick","value","result","ImageCropper","src","ratioOptions","label","width","height","maxWidth","maxHeight","data","Dialoger","customRender","title","class","onClose","body","_createVNode","ImageSelectPanel","$event","footer","_Fragment","ElButton","default","_createTextVNode"],"mappings":";;;;;;;AAQe,eAAeA,YAAYC,UAAiBC,WAAiD;AAC1G,SAAO,IAAIC,QAASC,aAAY;AAE9B,UAAMC,OAAOC,QAAS,EAAE;AAExB,UAAMC,oBAAoBA,MAAM;AAC9BC,qBAAeC,QAAO;AAEtBL,cAAQ;AAAA,QAAEM,SAAS;AAAA,QAAQL,MAAM;AAAA,MAAG,CAAC;AAAA;AAGvC,UAAMM,qBAAqB,YAAY;AAGrC,UAAGN,KAAKO,OAAM;AAEZ,YAAIC,SAAS,MAAMC,6BAAa;AAAA,UAC9BC,KAAKV,KAAKO;AAAAA,UACVI,cAAcf,YAAYC,YAAW,CACnC;AAAA,YAAEU,OAAO,GAAGX,QAAQ,IAAIC,SAAS;AAAA,YAAIe,OAAO,GAAGhB,QAAQ,MAAMC,SAAS;AAAA,YAAMgB,OAAOjB;AAAAA,YAAUkB,QAAQjB;AAAAA,UAAW,CAAA,IAChH,CAAE;AAAA,UACJkB,UAASnB,YAAY;AAAA,UACrBoB,WAAUnB,aAAa;AAAA,QACzB,CAAC;AAED,YAAGW,OAAOS,MAAK;AACbjB,eAAKO,QAAQC,OAAOS;AACpBd,yBAAeC,QAAO;AACtBL,kBAAQ;AAAA,YAAEM,SAAS;AAAA,YAAOL,MAAMA,KAAKO;AAAAA,UAAM,CAAC;AAAA,QAG5C;AAAA,MAGJ,OACI;AACFJ,uBAAeC,QAAO;AACtBL,gBAAQ;AAAA,UAAEM,SAAS;AAAA,UAAOL,MAAMA,KAAKO;AAAAA,QAAM,CAAC;AAAA,MAC9C;AAAA;AAGF,UAAMJ,iBAAiBe,GAAQ,SAACC,aAAa;AAAA,MAC3CC,OAAO;AAAA,MACPC,OAAO;AAAA,MACPR,OAAO;AAAA,MACPS,SAASA,MAAM;AACbnB,uBAAeC,QAAO;AAAA,MACvB;AAAA,MACDmB,MAAMA,MAAM;AACV,eAAAC,IAAAA,YAAAC,kBAAA;AAAA,UAAA,cAAkCzB,KAAKO;AAAAA,UAAK,uBAAAmB,YAAV1B,KAAKO,QAAKmB;AAAAA,QAAA,GAAA,IAAA;AAAA,MAC7C;AAAA,MACDC,QAAQA,MAAM;AACZ,eAAAH,IAAA,YAAAI,IAAA,UAAAJ,MAAAA,CAAAA,IAAAA,YAAAK,YAAAA,UAAA;AAAA,UAAA,WAEuB3B;AAAAA,QAAiB,GAAA;AAAA,UAAA4B,SAAAA,MAAA,CAAAC,oBAAA,IAAA,CAAA;AAAA,SAAAP,GAAAA,IAAA,YAAAK,sBAAA;AAAA,UAAA,QAAA;AAAA,UAAA,WACFvB;AAAAA,QAAkB,GAAA;AAAA,UAAAwB,SAAAA,MAAA,CAAAC,oBAAA,IAAA,CAAA;AAAA,QAAA,CAAA,CAAA,CAAA;AAAA,MAK1D;AAAA,IACF,CAAC;AAAA,EACH,CAAC;AACH;;"}
|