@maketribe/ms-app 3.2.25 → 3.2.27
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/assets/iconfonts/iconfont.js +1 -1
- package/dist/cjs/assets/iconfonts/iconfont.js.map +1 -1
- package/dist/cjs/components/basic/doc-editor/core/element-block.js +92 -0
- package/dist/cjs/components/basic/doc-editor/core/element-block.js.map +1 -0
- package/dist/cjs/components/basic/doc-editor/core/index.js +5 -6
- package/dist/cjs/components/basic/doc-editor/core/index.js.map +1 -1
- package/dist/cjs/components/basic/doc-editor/core/utils.js +20 -13
- package/dist/cjs/components/basic/doc-editor/core/utils.js.map +1 -1
- package/dist/cjs/components/basic/doc-editor/editor.vue.js +4 -4
- package/dist/cjs/components/basic/doc-editor/editor.vue.js.map +1 -1
- package/dist/cjs/components/basic/doc-editor/plugins/{DecoratorModuleToolbarPlugin → ElementBlockSelectionPlugin}/index.vue.js +8 -8
- package/dist/cjs/components/basic/doc-editor/plugins/ElementBlockSelectionPlugin/index.vue.js.map +1 -0
- package/dist/cjs/components/basic/doc-editor/plugins/GridPlugin/GridNode.js +164 -0
- package/dist/cjs/components/basic/doc-editor/plugins/GridPlugin/GridNode.js.map +1 -0
- package/dist/cjs/components/basic/doc-editor/plugins/GridPlugin/ImageTextGridNode.js +89 -0
- package/dist/cjs/components/basic/doc-editor/plugins/GridPlugin/ImageTextGridNode.js.map +1 -0
- package/dist/cjs/components/basic/doc-editor/plugins/GridPlugin/LayoutGridNode.js +120 -0
- package/dist/cjs/components/basic/doc-editor/plugins/GridPlugin/LayoutGridNode.js.map +1 -0
- package/dist/cjs/components/basic/doc-editor/plugins/GridPlugin/ModuleGridNode.js +128 -0
- package/dist/cjs/components/basic/doc-editor/plugins/GridPlugin/ModuleGridNode.js.map +1 -0
- package/dist/cjs/components/basic/doc-editor/plugins/GridPlugin/TextGridNode.js +94 -0
- package/dist/cjs/components/basic/doc-editor/plugins/GridPlugin/TextGridNode.js.map +1 -0
- package/dist/cjs/components/basic/doc-editor/plugins/GridPlugin/index.vue.js +217 -0
- package/dist/cjs/components/basic/doc-editor/plugins/GridPlugin/index.vue.js.map +1 -0
- package/dist/cjs/components/basic/doc-editor/plugins/GridPlugin/utils.js +140 -0
- package/dist/cjs/components/basic/doc-editor/plugins/GridPlugin/utils.js.map +1 -0
- package/dist/cjs/components/basic/doc-editor/plugins/ImagePlugin/ImageNode.js +54 -43
- package/dist/cjs/components/basic/doc-editor/plugins/ImagePlugin/ImageNode.js.map +1 -1
- package/dist/cjs/components/basic/doc-editor/plugins/ImagePlugin/index.vue.js +19 -16
- package/dist/cjs/components/basic/doc-editor/plugins/ImagePlugin/index.vue.js.map +1 -1
- package/dist/cjs/components/basic/doc-editor/plugins/ImagePlugin/utils.js +32 -54
- package/dist/cjs/components/basic/doc-editor/plugins/ImagePlugin/utils.js.map +1 -1
- package/dist/cjs/components/basic/doc-editor/plugins/ModulePlugin/ModuleBlockNode.js +25 -13
- package/dist/cjs/components/basic/doc-editor/plugins/ModulePlugin/ModuleBlockNode.js.map +1 -1
- package/dist/cjs/components/basic/doc-editor/plugins/ModulePlugin/composables.js +14 -1
- package/dist/cjs/components/basic/doc-editor/plugins/ModulePlugin/composables.js.map +1 -1
- package/dist/cjs/components/basic/doc-editor/plugins/ModulePlugin/index.vue.js +80 -105
- package/dist/cjs/components/basic/doc-editor/plugins/ModulePlugin/index.vue.js.map +1 -1
- package/dist/cjs/components/basic/doc-editor/plugins/ModulePlugin/utils.js +0 -12
- package/dist/cjs/components/basic/doc-editor/plugins/ModulePlugin/utils.js.map +1 -1
- package/dist/cjs/components/basic/doc-editor/plugins/RichTextPlugin/index.vue.js.map +1 -1
- package/dist/cjs/components/basic/doc-editor/plugins/RichTextPlugin/nodes/RichTextNode.js +16 -16
- package/dist/cjs/components/basic/doc-editor/plugins/RichTextPlugin/nodes/RichTextNode.js.map +1 -1
- package/dist/cjs/components/basic/doc-editor/plugins/ToolbarPlugin/FontStyleTool.vue.js +34 -7
- package/dist/cjs/components/basic/doc-editor/plugins/ToolbarPlugin/FontStyleTool.vue.js.map +1 -1
- package/dist/cjs/components/basic/doc-editor/plugins/ToolbarPlugin/PreviewToolbar.vue.js +0 -1
- package/dist/cjs/components/basic/doc-editor/plugins/ToolbarPlugin/PreviewToolbar.vue.js.map +1 -1
- package/dist/cjs/components/basic/doc-editor/plugins/ToolbarPlugin/index.vue.js +41 -5
- package/dist/cjs/components/basic/doc-editor/plugins/ToolbarPlugin/index.vue.js.map +1 -1
- package/dist/cjs/components/basic/doc-editor/plugins/nodes.js +10 -4
- package/dist/cjs/components/basic/doc-editor/plugins/nodes.js.map +1 -1
- package/dist/cjs/components/basic/doc-editor/themes/doc-editor-edit.css.js +1 -1
- package/dist/cjs/components/basic/doc-editor/themes/doc-editor-edit.css.js.map +1 -1
- package/dist/cjs/components/basic/doc-editor/themes/doc-theme.css.js +3 -5
- package/dist/cjs/components/basic/doc-editor/themes/doc-theme.css.js.map +1 -1
- package/dist/cjs/components/basic/dynamic-form-panel/DynamicFormPanel.js +40 -18
- package/dist/cjs/components/basic/dynamic-form-panel/DynamicFormPanel.js.map +1 -1
- package/dist/cjs/components/basic/dynamic-form-panel/dialog.js +2 -2
- package/dist/cjs/components/basic/dynamic-form-panel/dialog.js.map +1 -1
- package/dist/cjs/components/basic/image-cropper/image-cropper-api.js.map +1 -1
- package/dist/cjs/components/basic/upload-file/ui/upload-image/upload-image.js +0 -2
- package/dist/cjs/components/basic/upload-file/ui/upload-image/upload-image.js.map +1 -1
- package/dist/cjs/components/basic/visual-page-editor/content-editable.vue.js +13 -9
- package/dist/cjs/components/basic/visual-page-editor/content-editable.vue.js.map +1 -1
- package/dist/cjs/components/basic/visual-page-editor/core/BlockRender.js +38 -0
- package/dist/cjs/components/basic/visual-page-editor/core/BlockRender.js.map +1 -0
- package/dist/cjs/components/basic/visual-page-editor/core/Dialog.js +76 -0
- package/dist/cjs/components/basic/visual-page-editor/core/Dialog.js.map +1 -0
- package/dist/cjs/components/basic/visual-page-editor/core/VisvalPageEditor.js +72 -1
- package/dist/cjs/components/basic/visual-page-editor/core/VisvalPageEditor.js.map +1 -1
- package/dist/cjs/components/basic/visual-page-editor/core/index.js +21 -13
- package/dist/cjs/components/basic/visual-page-editor/core/index.js.map +1 -1
- package/dist/cjs/components/basic/visual-page-editor/editor.vue.js +2 -29
- package/dist/cjs/components/basic/visual-page-editor/editor.vue.js.map +1 -1
- package/dist/cjs/components/basic/visual-page-editor/index.js +1 -1
- package/dist/cjs/components/basic/visual-page-editor/index.js.map +1 -1
- package/dist/cjs/components/basic/visual-page-editor/modules/BaseImageModule.js +10 -0
- package/dist/cjs/components/basic/visual-page-editor/modules/BaseImageModule.js.map +1 -0
- package/dist/cjs/components/basic/visual-page-editor/toolbar.vue.js +1 -1
- package/dist/cjs/components/basic/visual-page-editor/toolbar.vue.js.map +1 -1
- package/dist/cjs/modules/cms/cms-settings.js +4 -0
- package/dist/cjs/modules/cms/cms-settings.js.map +1 -1
- package/dist/cjs/modules/cms/dataviews/cms-ad-contents/CmsAdContentsForm.js +4 -0
- package/dist/cjs/modules/cms/dataviews/cms-ad-contents/CmsAdContentsForm.js.map +1 -1
- package/dist/cjs/modules/cms/dataviews/cms-ad-defines/CmsAdDefinesForm.js +2 -0
- package/dist/cjs/modules/cms/dataviews/cms-ad-defines/CmsAdDefinesForm.js.map +1 -1
- package/dist/cjs/modules/cms/pages/cms-ad/index.vue2.js +8 -6
- 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 +3 -1
- 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/part-banner-edit.vue.js +58 -6
- package/dist/cjs/modules/cms/pages/cms-contents/components/part-banner-edit.vue.js.map +1 -1
- package/dist/cjs/modules/cms/pages/cms-settigns/DocModuleEditForm.vue.js +312 -0
- package/dist/cjs/modules/cms/pages/cms-settigns/DocModuleEditForm.vue.js.map +1 -0
- package/dist/cjs/modules/cms/pages/cms-settigns/DocModuleEditForm.vue2.js +4 -0
- package/dist/cjs/modules/cms/pages/cms-settigns/DocModuleEditForm.vue2.js.map +1 -0
- package/dist/cjs/modules/cms/pages/cms-settigns/index.vue2.js +18 -0
- package/dist/cjs/modules/cms/pages/cms-settigns/index.vue2.js.map +1 -1
- package/dist/cjs/modules/ms/components/image-select/image-select-api.js +14 -2
- package/dist/cjs/modules/ms/components/image-select/image-select-api.js.map +1 -1
- package/dist/cjs/modules/ms/components/image-select/image-select-panel.js +7 -1
- package/dist/cjs/modules/ms/components/image-select/image-select-panel.js.map +1 -1
- package/dist/cjs/modules/ms/image-upload-context/index.js +1 -1
- package/dist/cjs/modules/ms/image-upload-context/index.js.map +1 -1
- package/dist/esm/assets/iconfonts/iconfont.js +1 -1
- package/dist/esm/assets/iconfonts/iconfont.js.map +1 -1
- package/dist/esm/components/basic/doc-editor/core/element-block.js +92 -0
- package/dist/esm/components/basic/doc-editor/core/element-block.js.map +1 -0
- package/dist/esm/components/basic/doc-editor/core/index.js +6 -7
- package/dist/esm/components/basic/doc-editor/core/index.js.map +1 -1
- package/dist/esm/components/basic/doc-editor/core/utils.js +20 -13
- package/dist/esm/components/basic/doc-editor/core/utils.js.map +1 -1
- package/dist/esm/components/basic/doc-editor/editor.vue.js +4 -4
- package/dist/esm/components/basic/doc-editor/editor.vue.js.map +1 -1
- package/dist/esm/components/basic/doc-editor/plugins/{DecoratorModuleToolbarPlugin → ElementBlockSelectionPlugin}/index.vue.js +8 -8
- package/dist/esm/components/basic/doc-editor/plugins/ElementBlockSelectionPlugin/index.vue.js.map +1 -0
- package/dist/esm/components/basic/doc-editor/plugins/GridPlugin/GridNode.js +164 -0
- package/dist/esm/components/basic/doc-editor/plugins/GridPlugin/GridNode.js.map +1 -0
- package/dist/esm/components/basic/doc-editor/plugins/GridPlugin/ImageTextGridNode.js +89 -0
- package/dist/esm/components/basic/doc-editor/plugins/GridPlugin/ImageTextGridNode.js.map +1 -0
- package/dist/esm/components/basic/doc-editor/plugins/GridPlugin/LayoutGridNode.js +120 -0
- package/dist/esm/components/basic/doc-editor/plugins/GridPlugin/LayoutGridNode.js.map +1 -0
- package/dist/esm/components/basic/doc-editor/plugins/GridPlugin/ModuleGridNode.js +128 -0
- package/dist/esm/components/basic/doc-editor/plugins/GridPlugin/ModuleGridNode.js.map +1 -0
- package/dist/esm/components/basic/doc-editor/plugins/GridPlugin/TextGridNode.js +94 -0
- package/dist/esm/components/basic/doc-editor/plugins/GridPlugin/TextGridNode.js.map +1 -0
- package/dist/esm/components/basic/doc-editor/plugins/GridPlugin/index.vue.js +218 -0
- package/dist/esm/components/basic/doc-editor/plugins/GridPlugin/index.vue.js.map +1 -0
- package/dist/esm/components/basic/doc-editor/plugins/GridPlugin/utils.js +140 -0
- package/dist/esm/components/basic/doc-editor/plugins/GridPlugin/utils.js.map +1 -0
- package/dist/esm/components/basic/doc-editor/plugins/ImagePlugin/ImageNode.js +55 -44
- package/dist/esm/components/basic/doc-editor/plugins/ImagePlugin/ImageNode.js.map +1 -1
- package/dist/esm/components/basic/doc-editor/plugins/ImagePlugin/index.vue.js +20 -17
- package/dist/esm/components/basic/doc-editor/plugins/ImagePlugin/index.vue.js.map +1 -1
- package/dist/esm/components/basic/doc-editor/plugins/ImagePlugin/utils.js +33 -55
- package/dist/esm/components/basic/doc-editor/plugins/ImagePlugin/utils.js.map +1 -1
- package/dist/esm/components/basic/doc-editor/plugins/ModulePlugin/ModuleBlockNode.js +25 -13
- package/dist/esm/components/basic/doc-editor/plugins/ModulePlugin/ModuleBlockNode.js.map +1 -1
- package/dist/esm/components/basic/doc-editor/plugins/ModulePlugin/composables.js +14 -1
- package/dist/esm/components/basic/doc-editor/plugins/ModulePlugin/composables.js.map +1 -1
- package/dist/esm/components/basic/doc-editor/plugins/ModulePlugin/index.vue.js +84 -109
- package/dist/esm/components/basic/doc-editor/plugins/ModulePlugin/index.vue.js.map +1 -1
- package/dist/esm/components/basic/doc-editor/plugins/ModulePlugin/utils.js +0 -12
- package/dist/esm/components/basic/doc-editor/plugins/ModulePlugin/utils.js.map +1 -1
- package/dist/esm/components/basic/doc-editor/plugins/RichTextPlugin/index.vue.js.map +1 -1
- package/dist/esm/components/basic/doc-editor/plugins/RichTextPlugin/nodes/RichTextNode.js +16 -16
- package/dist/esm/components/basic/doc-editor/plugins/RichTextPlugin/nodes/RichTextNode.js.map +1 -1
- package/dist/esm/components/basic/doc-editor/plugins/ToolbarPlugin/FontStyleTool.vue.js +37 -10
- package/dist/esm/components/basic/doc-editor/plugins/ToolbarPlugin/FontStyleTool.vue.js.map +1 -1
- package/dist/esm/components/basic/doc-editor/plugins/ToolbarPlugin/PreviewToolbar.vue.js +0 -1
- package/dist/esm/components/basic/doc-editor/plugins/ToolbarPlugin/PreviewToolbar.vue.js.map +1 -1
- package/dist/esm/components/basic/doc-editor/plugins/ToolbarPlugin/index.vue.js +43 -7
- package/dist/esm/components/basic/doc-editor/plugins/ToolbarPlugin/index.vue.js.map +1 -1
- package/dist/esm/components/basic/doc-editor/plugins/nodes.js +10 -4
- package/dist/esm/components/basic/doc-editor/plugins/nodes.js.map +1 -1
- package/dist/esm/components/basic/doc-editor/themes/doc-editor-edit.css.js +1 -1
- package/dist/esm/components/basic/doc-editor/themes/doc-editor-edit.css.js.map +1 -1
- package/dist/esm/components/basic/doc-editor/themes/doc-theme.css.js +3 -5
- package/dist/esm/components/basic/doc-editor/themes/doc-theme.css.js.map +1 -1
- package/dist/esm/components/basic/dynamic-form-panel/DynamicFormPanel.js +40 -18
- package/dist/esm/components/basic/dynamic-form-panel/DynamicFormPanel.js.map +1 -1
- package/dist/esm/components/basic/dynamic-form-panel/dialog.js +2 -2
- package/dist/esm/components/basic/dynamic-form-panel/dialog.js.map +1 -1
- package/dist/esm/components/basic/image-cropper/image-cropper-api.js.map +1 -1
- package/dist/esm/components/basic/upload-file/ui/upload-image/upload-image.js +0 -2
- package/dist/esm/components/basic/upload-file/ui/upload-image/upload-image.js.map +1 -1
- package/dist/esm/components/basic/visual-page-editor/content-editable.vue.js +14 -10
- package/dist/esm/components/basic/visual-page-editor/content-editable.vue.js.map +1 -1
- package/dist/esm/components/basic/visual-page-editor/core/BlockRender.js +39 -0
- package/dist/esm/components/basic/visual-page-editor/core/BlockRender.js.map +1 -0
- package/dist/esm/components/basic/visual-page-editor/core/Dialog.js +76 -0
- package/dist/esm/components/basic/visual-page-editor/core/Dialog.js.map +1 -0
- package/dist/esm/components/basic/visual-page-editor/core/VisvalPageEditor.js +73 -2
- package/dist/esm/components/basic/visual-page-editor/core/VisvalPageEditor.js.map +1 -1
- package/dist/esm/components/basic/visual-page-editor/core/index.js +21 -13
- package/dist/esm/components/basic/visual-page-editor/core/index.js.map +1 -1
- package/dist/esm/components/basic/visual-page-editor/editor.vue.js +4 -31
- package/dist/esm/components/basic/visual-page-editor/editor.vue.js.map +1 -1
- package/dist/esm/components/basic/visual-page-editor/index.js +1 -1
- package/dist/esm/components/basic/visual-page-editor/index.js.map +1 -1
- package/dist/esm/components/basic/visual-page-editor/modules/BaseImageModule.js +9 -0
- package/dist/esm/components/basic/visual-page-editor/modules/BaseImageModule.js.map +1 -0
- package/dist/esm/components/basic/visual-page-editor/toolbar.vue.js +2 -2
- package/dist/esm/components/basic/visual-page-editor/toolbar.vue.js.map +1 -1
- package/dist/esm/modules/cms/cms-settings.js +4 -0
- package/dist/esm/modules/cms/cms-settings.js.map +1 -1
- package/dist/esm/modules/cms/dataviews/cms-ad-contents/CmsAdContentsForm.js +4 -0
- package/dist/esm/modules/cms/dataviews/cms-ad-contents/CmsAdContentsForm.js.map +1 -1
- package/dist/esm/modules/cms/dataviews/cms-ad-defines/CmsAdDefinesForm.js +2 -0
- package/dist/esm/modules/cms/dataviews/cms-ad-defines/CmsAdDefinesForm.js.map +1 -1
- package/dist/esm/modules/cms/pages/cms-ad/index.vue2.js +9 -7
- 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 +3 -1
- 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/part-banner-edit.vue.js +58 -6
- package/dist/esm/modules/cms/pages/cms-contents/components/part-banner-edit.vue.js.map +1 -1
- package/dist/esm/modules/cms/pages/cms-settigns/DocModuleEditForm.vue.js +313 -0
- package/dist/esm/modules/cms/pages/cms-settigns/DocModuleEditForm.vue.js.map +1 -0
- package/dist/esm/modules/cms/pages/cms-settigns/DocModuleEditForm.vue2.js +5 -0
- package/dist/esm/modules/cms/pages/cms-settigns/DocModuleEditForm.vue2.js.map +1 -0
- package/dist/esm/modules/cms/pages/cms-settigns/index.vue2.js +18 -0
- package/dist/esm/modules/cms/pages/cms-settigns/index.vue2.js.map +1 -1
- package/dist/esm/modules/ms/components/image-select/image-select-api.js +14 -2
- package/dist/esm/modules/ms/components/image-select/image-select-api.js.map +1 -1
- package/dist/esm/modules/ms/components/image-select/image-select-panel.js +9 -3
- package/dist/esm/modules/ms/components/image-select/image-select-panel.js.map +1 -1
- package/dist/esm/modules/ms/image-upload-context/index.js +1 -1
- package/dist/esm/modules/ms/image-upload-context/index.js.map +1 -1
- package/dist/style/components/basic/doc-editor/index.css +1 -1
- package/dist/style/components/basic/visual-page-editor/index.css +1 -1
- package/dist/style/components/index.css +1 -1
- package/dist/style/index.css +2 -2
- package/dist/style/src/components/basic/doc-editor/index.scss +2 -0
- package/dist/style/src/components/basic/visual-page-editor/index.scss +4 -2
- package/dist/types/components/basic/doc-editor/core/element-block.d.ts +45 -0
- package/dist/types/components/basic/doc-editor/core/index.d.ts +8 -4
- package/dist/types/components/basic/doc-editor/core/utils.d.ts +2 -2
- package/dist/types/components/basic/doc-editor/plugins/GridPlugin/GridNode.d.ts +88 -0
- package/dist/types/components/basic/doc-editor/plugins/GridPlugin/ImageTextGridNode.d.ts +50 -0
- package/dist/types/components/basic/doc-editor/plugins/GridPlugin/LayoutGridNode.d.ts +72 -0
- package/dist/types/components/basic/doc-editor/plugins/GridPlugin/ModuleGridNode.d.ts +64 -0
- package/dist/types/components/basic/doc-editor/plugins/GridPlugin/TextGridNode.d.ts +51 -0
- package/dist/types/components/basic/doc-editor/plugins/GridPlugin/index.d.ts +5 -0
- package/dist/types/components/basic/doc-editor/plugins/GridPlugin/utils.d.ts +3 -0
- package/dist/types/components/basic/doc-editor/plugins/ImagePlugin/ImageNode.d.ts +24 -20
- package/dist/types/components/basic/doc-editor/plugins/ModulePlugin/ModuleBlockNode.d.ts +18 -10
- package/dist/types/components/basic/doc-editor/plugins/ModulePlugin/composables.d.ts +5 -0
- package/dist/types/components/basic/doc-editor/plugins/ModulePlugin/index.d.ts +0 -1
- package/dist/types/components/basic/doc-editor/plugins/ModulePlugin/utils.d.ts +0 -6
- package/dist/types/components/basic/doc-editor/plugins/index.d.ts +3 -3
- package/dist/types/components/basic/doc-editor/utils/getSelectedNode.d.ts +1 -1
- package/dist/types/components/basic/dynamic-form-panel/type.d.ts +3 -2
- package/dist/types/components/basic/visual-page-editor/core/Dialog.d.ts +15 -0
- package/dist/types/components/basic/visual-page-editor/core/ModuleDefine.d.ts +12 -0
- package/dist/types/components/basic/visual-page-editor/core/VisvalPageEditor.d.ts +45 -1
- package/dist/types/components/basic/visual-page-editor/core/index.d.ts +2 -10
- package/dist/types/components/basic/visual-page-editor/editor.vue.d.ts +1 -0
- package/dist/types/components/basic/visual-page-editor/index.d.ts +2 -1
- package/dist/types/components/basic/visual-page-editor/modules/index.d.ts +1 -0
- package/dist/types/modules/cms/cms-settings.d.ts +4 -28
- package/dist/types/modules/cms/dataviews/cms-ad-contents/CmsAdContentsForm.d.ts +1 -0
- package/dist/types/modules/cms/pages/cms-settigns/DocModuleEditForm.vue.d.ts +45 -0
- package/dist/types/modules/ms/components/image-select/image-select-api.d.ts +1 -1
- package/dist/types/modules/ms/image-upload-context/index.d.ts +1 -1
- package/package.json +9 -8
- package/dist/cjs/components/basic/doc-editor/core/decorator-module.js +0 -13
- package/dist/cjs/components/basic/doc-editor/core/decorator-module.js.map +0 -1
- package/dist/cjs/components/basic/doc-editor/core/element-module.js +0 -68
- package/dist/cjs/components/basic/doc-editor/core/element-module.js.map +0 -1
- package/dist/cjs/components/basic/doc-editor/plugins/DecoratorModuleToolbarPlugin/index.vue.js.map +0 -1
- package/dist/cjs/components/basic/doc-editor/plugins/ImageTextPlugin/ImageTextNode.js +0 -106
- package/dist/cjs/components/basic/doc-editor/plugins/ImageTextPlugin/ImageTextNode.js.map +0 -1
- package/dist/cjs/components/basic/doc-editor/plugins/ImageTextPlugin/index.vue.js +0 -45
- package/dist/cjs/components/basic/doc-editor/plugins/ImageTextPlugin/index.vue.js.map +0 -1
- package/dist/cjs/components/basic/doc-editor/plugins/ModulePlugin/ModuleContainerNode.js +0 -143
- package/dist/cjs/components/basic/doc-editor/plugins/ModulePlugin/ModuleContainerNode.js.map +0 -1
- package/dist/cjs/components/basic/doc-editor/plugins/RichTextPlugin/nodes/BaseBlockCantainerNode.js +0 -123
- package/dist/cjs/components/basic/doc-editor/plugins/RichTextPlugin/nodes/BaseBlockCantainerNode.js.map +0 -1
- package/dist/cjs/components/basic/doc-editor/plugins/RichTextPlugin/nodes/BaseBlockNode.js +0 -84
- package/dist/cjs/components/basic/doc-editor/plugins/RichTextPlugin/nodes/BaseBlockNode.js.map +0 -1
- package/dist/cjs/components/basic/visual-page-editor/components/BlockRender.js +0 -31
- package/dist/cjs/components/basic/visual-page-editor/components/BlockRender.js.map +0 -1
- package/dist/cjs/components/basic/visual-page-editor/utils/Dialog.js +0 -111
- package/dist/cjs/components/basic/visual-page-editor/utils/Dialog.js.map +0 -1
- package/dist/cjs/components/basic/visual-page-editor/visual-components/ImageRenderComponent.js +0 -29
- package/dist/cjs/components/basic/visual-page-editor/visual-components/ImageRenderComponent.js.map +0 -1
- package/dist/esm/components/basic/doc-editor/core/decorator-module.js +0 -13
- package/dist/esm/components/basic/doc-editor/core/decorator-module.js.map +0 -1
- package/dist/esm/components/basic/doc-editor/core/element-module.js +0 -68
- package/dist/esm/components/basic/doc-editor/core/element-module.js.map +0 -1
- package/dist/esm/components/basic/doc-editor/plugins/DecoratorModuleToolbarPlugin/index.vue.js.map +0 -1
- package/dist/esm/components/basic/doc-editor/plugins/ImageTextPlugin/ImageTextNode.js +0 -106
- package/dist/esm/components/basic/doc-editor/plugins/ImageTextPlugin/ImageTextNode.js.map +0 -1
- package/dist/esm/components/basic/doc-editor/plugins/ImageTextPlugin/index.vue.js +0 -46
- package/dist/esm/components/basic/doc-editor/plugins/ImageTextPlugin/index.vue.js.map +0 -1
- package/dist/esm/components/basic/doc-editor/plugins/ModulePlugin/ModuleContainerNode.js +0 -143
- package/dist/esm/components/basic/doc-editor/plugins/ModulePlugin/ModuleContainerNode.js.map +0 -1
- package/dist/esm/components/basic/doc-editor/plugins/RichTextPlugin/nodes/BaseBlockCantainerNode.js +0 -123
- package/dist/esm/components/basic/doc-editor/plugins/RichTextPlugin/nodes/BaseBlockCantainerNode.js.map +0 -1
- package/dist/esm/components/basic/doc-editor/plugins/RichTextPlugin/nodes/BaseBlockNode.js +0 -84
- package/dist/esm/components/basic/doc-editor/plugins/RichTextPlugin/nodes/BaseBlockNode.js.map +0 -1
- package/dist/esm/components/basic/visual-page-editor/components/BlockRender.js +0 -32
- package/dist/esm/components/basic/visual-page-editor/components/BlockRender.js.map +0 -1
- package/dist/esm/components/basic/visual-page-editor/utils/Dialog.js +0 -111
- package/dist/esm/components/basic/visual-page-editor/utils/Dialog.js.map +0 -1
- package/dist/esm/components/basic/visual-page-editor/visual-components/ImageRenderComponent.js +0 -28
- package/dist/esm/components/basic/visual-page-editor/visual-components/ImageRenderComponent.js.map +0 -1
- package/dist/types/components/basic/doc-editor/core/decorator-module.d.ts +0 -60
- package/dist/types/components/basic/doc-editor/core/element-module.d.ts +0 -15
- package/dist/types/components/basic/doc-editor/plugins/ImageTextPlugin/ImageTextNode.d.ts +0 -63
- package/dist/types/components/basic/doc-editor/plugins/ImageTextPlugin/index.d.ts +0 -1
- package/dist/types/components/basic/doc-editor/plugins/ModulePlugin/ModuleContainerNode.d.ts +0 -86
- package/dist/types/components/basic/doc-editor/plugins/ModulePlugin/ModuleRenderComponent.d.ts +0 -23
- package/dist/types/components/basic/doc-editor/plugins/RichTextPlugin/nodes/BaseBlockCantainerNode.d.ts +0 -63
- package/dist/types/components/basic/doc-editor/plugins/RichTextPlugin/nodes/BaseBlockNode.d.ts +0 -58
- package/dist/types/components/basic/visual-page-editor/core/RenderComponent.d.ts +0 -16
- package/dist/types/components/basic/visual-page-editor/utils/Dialog.d.ts +0 -15
- package/dist/types/components/basic/visual-page-editor/visual-components/index.d.ts +0 -1
- /package/dist/cjs/components/basic/doc-editor/plugins/{DecoratorModuleToolbarPlugin → ElementBlockSelectionPlugin}/index.vue2.js +0 -0
- /package/dist/cjs/components/basic/doc-editor/plugins/{DecoratorModuleToolbarPlugin → ElementBlockSelectionPlugin}/index.vue2.js.map +0 -0
- /package/dist/cjs/components/basic/doc-editor/plugins/{ImageTextPlugin → GridPlugin}/index.vue2.js +0 -0
- /package/dist/cjs/components/basic/doc-editor/plugins/{ImageTextPlugin → GridPlugin}/index.vue2.js.map +0 -0
- /package/dist/esm/components/basic/doc-editor/plugins/{DecoratorModuleToolbarPlugin → ElementBlockSelectionPlugin}/index.vue2.js +0 -0
- /package/dist/esm/components/basic/doc-editor/plugins/{DecoratorModuleToolbarPlugin → ElementBlockSelectionPlugin}/index.vue2.js.map +0 -0
- /package/dist/esm/components/basic/doc-editor/plugins/{ImageTextPlugin → GridPlugin}/index.vue2.js +0 -0
- /package/dist/esm/components/basic/doc-editor/plugins/{ImageTextPlugin → GridPlugin}/index.vue2.js.map +0 -0
- /package/dist/types/components/basic/doc-editor/plugins/{DecoratorModuleToolbarPlugin → ElementBlockSelectionPlugin}/index.vue.d.ts +0 -0
- /package/dist/types/components/basic/doc-editor/plugins/{ImageTextPlugin → GridPlugin}/index.vue.d.ts +0 -0
- /package/dist/types/components/basic/visual-page-editor/{components → core}/BlockRender.d.ts +0 -0
- /package/dist/types/components/basic/visual-page-editor/{visual-components/ImageRenderComponent.d.ts → modules/BaseImageModule.d.ts} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"article-edit-add-page.vue2.js","sources":["../../../../../../src/modules/cms/pages/cms-contents/article-edit-add-page.vue"],"sourcesContent":["<template>\r\n <div class=\"mk-cms-article-eidtadd__warp\">\r\n <el-page-header style=\"background-color: #fff;padding: 10px;\" :icon=\"ArrowLeftBold\" title=\"返回\"\r\n @back=\"() => router.push({ name: 'cms/contents', query: { pid: articleForm?.data?.cmsPartId } })\">\r\n <template #content>\r\n <template v-if=\"!articleForm.loading\">\r\n <el-text v-if=\"!articleForm.data?.modifier\">{{ !!route.query.id ? \"编辑文章\" : \"创建文章\" }}</el-text>\r\n <el-text v-else>{{ articleForm.data?.modifierName }} 于 {{ articleForm.data?.updatedAt }} 更新</el-text>\r\n </template>\r\n </template>\r\n <template #extra>\r\n <div class=\"mk-cms-article-eidtadd__header_tools\">\r\n\r\n <template v-if=\"!articleForm.loading\">\r\n <el-tag v-if=\"!articleForm.data?.publishTime\" effect=\"dark\" round>未发布</el-tag>\r\n <el-text v-else>发布时间:{{ articleForm.data?.publishTime }}</el-text>\r\n </template>\r\n\r\n <el-dropdown split-button type=\"primary\" style=\"margin-left: 10px;\" @click=\"saveHandle\">\r\n <MKSvgIcon iconClass=\"save\" style=\"margin-right: 10px;\" />\r\n 保存\r\n <template #dropdown>\r\n <el-dropdown-menu>\r\n <el-dropdown-item v-if=\"CmsSettings.publish.mode == 'static'\" @click=\"saveAndViewHandle\">\r\n <MKSvgIcon iconClass=\"View\" style=\"margin-right: 5px;\" />\r\n 保存并预览\r\n </el-dropdown-item>\r\n <el-dropdown-item @click=\"saveAndPublishHandle\">\r\n <MKSvgIcon iconClass=\"Share\" style=\"margin-right: 5px;\" />\r\n 保存并发布\r\n </el-dropdown-item>\r\n </el-dropdown-menu>\r\n </template>\r\n </el-dropdown>\r\n </div>\r\n </template>\r\n </el-page-header>\r\n <div class=\"mk-cms-article-eidtadd__body\" v-loading=\"articleForm.loading\">\r\n\r\n <MKDocEditor v-if=\"articleForm.data\" :content=\"content\" @change=\"EditorChangeHandle\">\r\n <template #header>\r\n <div class=\"mk-cms-article-eidtadd__body__header\">\r\n <el-row>\r\n <el-input class=\"title\" type=\"textarea\" :autosize=\"{ minRows: 1, maxRows: 4 }\" maxlength=\"150\"\r\n show-word-limit placeholder=\"请输入标题\" v-model=\"title\" />\r\n </el-row>\r\n <el-row>\r\n <el-input class=\"sub-title\" type=\"textarea\" :autosize=\"{ minRows: 1, maxRows: 4 }\" maxlength=\"150\"\r\n show-word-limit placeholder=\"[选填] 请输入子标题\" v-model=\"subTitle\" />\r\n </el-row>\r\n </div>\r\n </template>\r\n <template #after-extentions>\r\n <div class=\"mk-cms-article-eidtadd__body__extentions\" :class=\"{ hide: closeExtentions! }\" ref=\"extentionsRef\">\r\n <MKSvgIcon icon-class=\"ArrowLeft\" class=\"open\" @click=\"closeExtentionsHandle\" v-if=\"closeExtentions\">\r\n </MKSvgIcon>\r\n <MKSvgIcon v-else icon-class=\"ArrowRight\" class=\"close\" @click=\"hideExtentionsHandle\">\r\n </MKSvgIcon>\r\n <el-divider content-position=\"left\">文章设置</el-divider>\r\n <MKDataForm :dataForm=\"articleForm\">\r\n <MKForm :dataForm=\"articleForm\" style=\"width:225px\" label-width=\"110px\">\r\n <el-row v-if=\"CmsSettings.content.useTop\">\r\n <MKDataFormItem style=\"width: 100%;\" name=\"isTop\"></MKDataFormItem>\r\n </el-row>\r\n <el-row v-if=\"CmsSettings.content.useNew\">\r\n <MKDataFormItem style=\"width: 100%;\" name=\"isNew\"></MKDataFormItem>\r\n </el-row>\r\n <el-row v-if=\"CmsSettings.content.useHotRecommend\">\r\n <MKDataFormItem style=\"width: 100%;\" name=\"isHotRecommend\"></MKDataFormItem>\r\n </el-row>\r\n <el-row v-if=\"CmsSettings.content.usePartRecommend\">\r\n <MKDataFormItem style=\"width: 100%;\" name=\"isPartRecommend\"></MKDataFormItem>\r\n </el-row>\r\n <el-row>\r\n <MKDataFormItem style=\"width: 100%;\" name=\"isShowList\"></MKDataFormItem>\r\n </el-row>\r\n <!-- <el-row>\r\n <MKDataFormItem style=\"width: 100%;\" name=\"isDraft\"></MKDataFormItem>\r\n </el-row> -->\r\n <el-row>\r\n <MKDataFormItem style=\"width: 100%;\" name=\"sortNo\"></MKDataFormItem>\r\n </el-row>\r\n </MKForm>\r\n </MKDataForm>\r\n </div>\r\n </template>\r\n <template #footer>\r\n <div class=\"mk-cms-article-eidtadd__body__footer\">\r\n <el-tabs v-model=\"articleOptionsActive\">\r\n <el-tab-pane label=\"基础内容\" name=\"content\">\r\n <div class=\"content\">\r\n <el-row :gutter=\"20\">\r\n <el-col :span=\"6\">\r\n <el-input placeholder=\"[选填] 作者\" v-model=\"articleForm.data.author\" clearable>\r\n <template #prefix>\r\n <MKSvgIcon iconClass=\"UserFilled\" />\r\n </template>\r\n </el-input>\r\n </el-col>\r\n <el-col :span=\"6\">\r\n <el-date-picker v-model=\"releaseDate\" type=\"datetime\" placeholder=\"发布时间\"\r\n :default-time=\"new Date()\" />\r\n </el-col>\r\n <el-col :span=\"12\">\r\n <el-input placeholder=\"[选填] 发布地址\" v-model=\"articleForm.data.locationDesc\" clearable>\r\n <template #prefix>\r\n <MKSvgIcon iconClass=\"Location\" />\r\n </template>\r\n </el-input>\r\n </el-col>\r\n </el-row>\r\n <el-row v-if=\"CmsSettings.content.useTags\">\r\n <el-select v-model=\"tags\" multiple filterable allow-create default-first-option\r\n :reserve-keyword=\"false\" placeholder=\"[可选] 选择文章标签\" style=\"width: 100%\">\r\n <template #prefix>\r\n <MKSvgIcon iconClass=\"CollectionTag\" />\r\n </template>\r\n </el-select>\r\n </el-row>\r\n <el-divider content-position=\"left\">\r\n 文章封面/简介\r\n <el-switch v-model=\"descAutoCreate\" style=\"margin-left: 10px;\" inline-prompt active-text=\"自动生成\"\r\n inactive-text=\"手动撰写\" />\r\n </el-divider>\r\n <el-row class=\"cover-desc\">\r\n <MKUploadImage style=\"margin-right: 10px;\" v-model=\"articleForm.data.cover\" width=\"115px\" height=\"115px\" \r\n :uploadContext=\"new ImageUploadContext(CmsSettings.content.coverImageSize)\">\r\n\r\n </MKUploadImage>\r\n <el-input class=\"desc\" type=\"textarea\" :autosize=\"{ minRows: 5, maxRows: 30 }\" maxlength=\"1000\"\r\n show-word-limit placeholder=\"[选填] 文章简介\" v-model=\"desc\" />\r\n </el-row>\r\n <el-divider content-position=\"left\">文章Banner图</el-divider>\r\n <el-row>\r\n <MKUploadImage v-model=\"articleForm.data.banner\" width=\"100%\" height=\"300px\" :uploadContext=\"new ImageUploadContext(CmsSettings.content.bannerImageSize)\">\r\n\r\n </MKUploadImage>\r\n </el-row>\r\n </div>\r\n </el-tab-pane>\r\n <el-tab-pane label=\"文章资源库\" name=\"atlas\" v-if=\"CmsSettings.content.useAtlas\">\r\n <ArticleAtlas v-model=\"atlas\" :articleId=\"parseInt(articleForm.data?.id)\" />\r\n </el-tab-pane>\r\n <el-tab-pane label=\"页面设置\" name=\"settings\" v-if=\"CmsSettings.publish.mode == 'static'\">\r\n <MKDataForm :dataForm=\"articleForm\" label-width=\"120px\">\r\n <MKForm :dataForm=\"articleForm\">\r\n <el-row>\r\n <MKDataFormItem style=\"width: 100%;\" name=\"seoKeywords\"></MKDataFormItem>\r\n </el-row>\r\n <el-row>\r\n <MKDataFormItem style=\"width: 100%;\" name=\"seoDesc\"></MKDataFormItem>\r\n </el-row>\r\n </MKForm>\r\n </MKDataForm>\r\n </el-tab-pane>\r\n </el-tabs>\r\n </div>\r\n </template>\r\n </MKDocEditor>\r\n </div>\r\n </div>\r\n</template>\r\n<script setup lang='ts'>\r\nimport { onMounted, reactive, ref, computed } from \"vue\";\r\nimport { ArrowLeftBold } from \"@element-plus/icons-vue\"\r\nimport { MKDocEditor, MKSvgIcon, MKUploadImage } from '../../../../components'\r\nimport { MKDataForm, MKForm, MKDataFormItem } from \"../../../../components\";\r\nimport ArticleAtlas from \"./components/article-atlas.vue\";\r\nimport { CmsArticlesForm } from \"../../dataviews\";\r\nimport { useRoute, useRouter } from \"vue-router\";\r\nimport { ImageUploadContext } from \"../../../ms\";\r\nimport { useCmsSettings } from \"../../cms-settings\"\r\n// cms 配置\r\nconst CmsSettings = useCmsSettings(true);\r\n\r\nconst route = useRoute()\r\nconst router = useRouter();\r\n\r\n\r\n// 文章请求\r\nconst articleForm = reactive(new CmsArticlesForm()) as CmsArticlesForm;\r\nconst articleOptionsActive = ref(\"content\");\r\n\r\n\r\n// 标题\r\nconst title = computed({\r\n get() { return articleForm.data?.title || \"\"; },\r\n set(val) { articleForm.data.title = val; }\r\n});\r\n// 子标题\r\nconst subTitle = computed({\r\n get() { return articleForm.data?.subTitle || \"\"; },\r\n set(val) { articleForm.data.subTitle = val; }\r\n});\r\n// 获取默认简介\r\nconst getDefaultDescContent = () => {\r\n if (!descAutoCreate.value) {\r\n return \"\";\r\n }\r\n let val: any = \"\";\r\n const div = document.createElement(\"div\");\r\n div.innerHTML = content.value;\r\n val = div.textContent?.substring(0, 700);\r\n if (div.textContent!.length > 700) {\r\n val += \"...\";\r\n }\r\n return val;\r\n}\r\nconst descAutoCreate = ref(true)\r\n// 简介\r\nconst desc = computed({\r\n get() {\r\n return articleForm.data?.desc || getDefaultDescContent();\r\n },\r\n set(val) {\r\n articleForm.data.desc = val;\r\n }\r\n});\r\n// 发布时间\r\nconst releaseDate = computed({\r\n get() { return articleForm.data?.releaseDate || articleForm.data?.publishTime; },\r\n set(val) { articleForm.data.releaseDate = val; }\r\n});\r\n// 标签\r\nconst tags = ref([]);\r\n// computed({ \r\n// get() { return articleForm.data?.tags || [] }, \r\n// set(val) { articleForm.data.tags = val; } \r\n// });\r\n// 内容\r\nconst content = computed({\r\n get() { return articleForm.data?.content || \"\"; },\r\n set(val) { articleForm.data.content = val; }\r\n});\r\n\r\n// 图集\r\nconst atlas = computed({\r\n get() {\r\n return articleForm.data?.atlas\r\n },\r\n set(val) { articleForm.data.atlas = val; }\r\n});\r\n\r\n// 表单初始化\r\nconst formInitDataInfo = ()=>{\r\n // 初始化数据加载\r\n if (route.query.id) {\r\n articleForm.editRecord(route.query.id);\r\n }\r\n else if (route.query.partId) {\r\n articleForm.addRecord({ cmsPartId: route.query.partId,isDraft:1 });\r\n }\r\n else {\r\n articleForm.addRecord({ isDraft:1 });\r\n }\r\n}\r\n\r\nonMounted(() => {\r\n formInitDataInfo();\r\n articleForm.init();\r\n\r\n})\r\n\r\n// 保存\r\nconst saveHandle = async () => {\r\n\r\n // 简介不存在的时候使用自动生成的\r\n if (!articleForm.data?.desc) {\r\n desc.value = getDefaultDescContent();\r\n }\r\n\r\n let result = await articleForm.submit();\r\n\r\n router.back();\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 router.back();\r\n }\r\n}\r\n\r\n// 隐藏扩展\r\nconst closeExtentions = ref(true);\r\nconst extentionsRef = ref();\r\nconst hideExtentionsHandle = () => {\r\n closeExtentions.value = true;\r\n}\r\n//展示扩展\r\nconst closeExtentionsHandle = () => {\r\n closeExtentions.value = false;\r\n}\r\n\r\nconst EditorChangeHandle = (v: any) => {\r\n articleForm.data.content = v;\r\n}\r\n\r\n</script>\r\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"article-edit-add-page.vue2.js","sources":["../../../../../../src/modules/cms/pages/cms-contents/article-edit-add-page.vue"],"sourcesContent":["<template>\r\n <div class=\"mk-cms-article-eidtadd__warp\">\r\n <el-page-header style=\"background-color: #fff;padding: 10px;\" :icon=\"ArrowLeftBold\" title=\"返回\"\r\n @back=\"() => router.push({ name: 'cms/contents', query: { pid: articleForm?.data?.cmsPartId } })\">\r\n <template #content>\r\n <template v-if=\"!articleForm.loading\">\r\n <el-text v-if=\"!articleForm.data?.modifier\">{{ !!route.query.id ? \"编辑文章\" : \"创建文章\" }}</el-text>\r\n <el-text v-else>{{ articleForm.data?.modifierName }} 于 {{ articleForm.data?.updatedAt }} 更新</el-text>\r\n </template>\r\n </template>\r\n <template #extra>\r\n <div class=\"mk-cms-article-eidtadd__header_tools\">\r\n\r\n <template v-if=\"!articleForm.loading\">\r\n <el-tag v-if=\"!articleForm.data?.publishTime\" effect=\"dark\" round>未发布</el-tag>\r\n <el-text v-else>发布时间:{{ articleForm.data?.publishTime }}</el-text>\r\n </template>\r\n\r\n <el-dropdown split-button type=\"primary\" style=\"margin-left: 10px;\" @click=\"saveHandle\">\r\n <MKSvgIcon iconClass=\"save\" style=\"margin-right: 10px;\" />\r\n 保存\r\n <template #dropdown>\r\n <el-dropdown-menu>\r\n <el-dropdown-item v-if=\"CmsSettings.publish.mode == 'static'\" @click=\"saveAndViewHandle\">\r\n <MKSvgIcon iconClass=\"View\" style=\"margin-right: 5px;\" />\r\n 保存并预览\r\n </el-dropdown-item>\r\n <el-dropdown-item @click=\"saveAndPublishHandle\">\r\n <MKSvgIcon iconClass=\"Share\" style=\"margin-right: 5px;\" />\r\n 保存并发布\r\n </el-dropdown-item>\r\n </el-dropdown-menu>\r\n </template>\r\n </el-dropdown>\r\n </div>\r\n </template>\r\n </el-page-header>\r\n <div class=\"mk-cms-article-eidtadd__body\" v-loading=\"articleForm.loading\">\r\n\r\n <MKDocEditor v-if=\"articleForm.data\" :css=\"CmsSettings.content.doc.css\" :js=\"CmsSettings.content.doc.js\" :content=\"content\" @change=\"EditorChangeHandle\">\r\n <template #header>\r\n <div class=\"mk-cms-article-eidtadd__body__header\">\r\n <el-row>\r\n <el-input class=\"title\" type=\"textarea\" :autosize=\"{ minRows: 1, maxRows: 4 }\" maxlength=\"150\"\r\n show-word-limit placeholder=\"请输入标题\" v-model=\"title\" />\r\n </el-row>\r\n <el-row>\r\n <el-input class=\"sub-title\" type=\"textarea\" :autosize=\"{ minRows: 1, maxRows: 4 }\" maxlength=\"150\"\r\n show-word-limit placeholder=\"[选填] 请输入子标题\" v-model=\"subTitle\" />\r\n </el-row>\r\n </div>\r\n </template>\r\n <template #after-extentions>\r\n <div class=\"mk-cms-article-eidtadd__body__extentions\" :class=\"{ hide: closeExtentions! }\" ref=\"extentionsRef\">\r\n <MKSvgIcon icon-class=\"ArrowLeft\" class=\"open\" @click=\"closeExtentionsHandle\" v-if=\"closeExtentions\">\r\n </MKSvgIcon>\r\n <MKSvgIcon v-else icon-class=\"ArrowRight\" class=\"close\" @click=\"hideExtentionsHandle\">\r\n </MKSvgIcon>\r\n <el-divider content-position=\"left\">文章设置</el-divider>\r\n <MKDataForm :dataForm=\"articleForm\">\r\n <MKForm :dataForm=\"articleForm\" style=\"width:225px\" label-width=\"110px\">\r\n <el-row v-if=\"CmsSettings.content.useTop\">\r\n <MKDataFormItem style=\"width: 100%;\" name=\"isTop\"></MKDataFormItem>\r\n </el-row>\r\n <el-row v-if=\"CmsSettings.content.useNew\">\r\n <MKDataFormItem style=\"width: 100%;\" name=\"isNew\"></MKDataFormItem>\r\n </el-row>\r\n <el-row v-if=\"CmsSettings.content.useHotRecommend\">\r\n <MKDataFormItem style=\"width: 100%;\" name=\"isHotRecommend\"></MKDataFormItem>\r\n </el-row>\r\n <el-row v-if=\"CmsSettings.content.usePartRecommend\">\r\n <MKDataFormItem style=\"width: 100%;\" name=\"isPartRecommend\"></MKDataFormItem>\r\n </el-row>\r\n <el-row>\r\n <MKDataFormItem style=\"width: 100%;\" name=\"isShowList\"></MKDataFormItem>\r\n </el-row>\r\n <!-- <el-row>\r\n <MKDataFormItem style=\"width: 100%;\" name=\"isDraft\"></MKDataFormItem>\r\n </el-row> -->\r\n <el-row>\r\n <MKDataFormItem style=\"width: 100%;\" name=\"sortNo\"></MKDataFormItem>\r\n </el-row>\r\n </MKForm>\r\n </MKDataForm>\r\n </div>\r\n </template>\r\n <template #footer>\r\n <div class=\"mk-cms-article-eidtadd__body__footer\">\r\n <el-tabs v-model=\"articleOptionsActive\">\r\n <el-tab-pane label=\"基础内容\" name=\"content\">\r\n <div class=\"content\">\r\n <el-row :gutter=\"20\">\r\n <el-col :span=\"6\">\r\n <el-input placeholder=\"[选填] 作者\" v-model=\"articleForm.data.author\" clearable>\r\n <template #prefix>\r\n <MKSvgIcon iconClass=\"UserFilled\" />\r\n </template>\r\n </el-input>\r\n </el-col>\r\n <el-col :span=\"6\">\r\n <el-date-picker v-model=\"releaseDate\" type=\"datetime\" placeholder=\"发布时间\"\r\n :default-time=\"new Date()\" />\r\n </el-col>\r\n <el-col :span=\"12\">\r\n <el-input placeholder=\"[选填] 发布地址\" v-model=\"articleForm.data.locationDesc\" clearable>\r\n <template #prefix>\r\n <MKSvgIcon iconClass=\"Location\" />\r\n </template>\r\n </el-input>\r\n </el-col>\r\n </el-row>\r\n <el-row v-if=\"CmsSettings.content.useTags\">\r\n <el-select v-model=\"tags\" multiple filterable allow-create default-first-option\r\n :reserve-keyword=\"false\" placeholder=\"[可选] 选择文章标签\" style=\"width: 100%\">\r\n <template #prefix>\r\n <MKSvgIcon iconClass=\"CollectionTag\" />\r\n </template>\r\n </el-select>\r\n </el-row>\r\n <el-divider content-position=\"left\">\r\n 文章封面/简介\r\n <el-switch v-model=\"descAutoCreate\" style=\"margin-left: 10px;\" inline-prompt active-text=\"自动生成\"\r\n inactive-text=\"手动撰写\" />\r\n </el-divider>\r\n <el-row class=\"cover-desc\">\r\n <MKUploadImage style=\"margin-right: 10px;\" v-model=\"articleForm.data.cover\" width=\"115px\" height=\"115px\" \r\n :uploadContext=\"new ImageUploadContext(CmsSettings.content.coverImageSize)\">\r\n\r\n </MKUploadImage>\r\n <el-input class=\"desc\" type=\"textarea\" :autosize=\"{ minRows: 5, maxRows: 30 }\" maxlength=\"1000\"\r\n show-word-limit placeholder=\"[选填] 文章简介\" v-model=\"desc\" />\r\n </el-row>\r\n <el-divider content-position=\"left\">文章Banner图</el-divider>\r\n <el-row>\r\n <MKUploadImage v-model=\"articleForm.data.banner\" width=\"100%\" height=\"300px\" :uploadContext=\"new ImageUploadContext(CmsSettings.content.bannerImageSize)\">\r\n\r\n </MKUploadImage>\r\n </el-row>\r\n </div>\r\n </el-tab-pane>\r\n <el-tab-pane label=\"文章资源库\" name=\"atlas\" v-if=\"CmsSettings.content.useAtlas\">\r\n <ArticleAtlas v-model=\"atlas\" :articleId=\"parseInt(articleForm.data?.id)\" />\r\n </el-tab-pane>\r\n <el-tab-pane label=\"页面设置\" name=\"settings\" v-if=\"CmsSettings.publish.mode == 'static'\">\r\n <MKDataForm :dataForm=\"articleForm\" label-width=\"120px\">\r\n <MKForm :dataForm=\"articleForm\">\r\n <el-row>\r\n <MKDataFormItem style=\"width: 100%;\" name=\"seoKeywords\"></MKDataFormItem>\r\n </el-row>\r\n <el-row>\r\n <MKDataFormItem style=\"width: 100%;\" name=\"seoDesc\"></MKDataFormItem>\r\n </el-row>\r\n </MKForm>\r\n </MKDataForm>\r\n </el-tab-pane>\r\n </el-tabs>\r\n </div>\r\n </template>\r\n </MKDocEditor>\r\n </div>\r\n </div>\r\n</template>\r\n<script setup lang='ts'>\r\nimport { onMounted, reactive, ref, computed } from \"vue\";\r\nimport { ArrowLeftBold } from \"@element-plus/icons-vue\"\r\nimport { MKDocEditor, MKSvgIcon, MKUploadImage } from '../../../../components'\r\nimport { MKDataForm, MKForm, MKDataFormItem } from \"../../../../components\";\r\nimport ArticleAtlas from \"./components/article-atlas.vue\";\r\nimport { CmsArticlesForm } from \"../../dataviews\";\r\nimport { useRoute, useRouter } from \"vue-router\";\r\nimport { ImageUploadContext } from \"../../../ms\";\r\nimport { useCmsSettings } from \"../../cms-settings\"\r\n// cms 配置\r\nconst CmsSettings = useCmsSettings(true);\r\n\r\nconst route = useRoute()\r\nconst router = useRouter();\r\n\r\n\r\n// 文章请求\r\nconst articleForm = reactive(new CmsArticlesForm()) as CmsArticlesForm;\r\nconst articleOptionsActive = ref(\"content\");\r\n\r\n\r\n// 标题\r\nconst title = computed({\r\n get() { return articleForm.data?.title || \"\"; },\r\n set(val) { articleForm.data.title = val; }\r\n});\r\n// 子标题\r\nconst subTitle = computed({\r\n get() { return articleForm.data?.subTitle || \"\"; },\r\n set(val) { articleForm.data.subTitle = val; }\r\n});\r\n// 获取默认简介\r\nconst getDefaultDescContent = () => {\r\n if (!descAutoCreate.value) {\r\n return \"\";\r\n }\r\n let val: any = \"\";\r\n const div = document.createElement(\"div\");\r\n div.innerHTML = content.value;\r\n val = div.textContent?.substring(0, 700);\r\n if (div.textContent!.length > 700) {\r\n val += \"...\";\r\n }\r\n return val;\r\n}\r\nconst descAutoCreate = ref(true)\r\n// 简介\r\nconst desc = computed({\r\n get() {\r\n return articleForm.data?.desc || getDefaultDescContent();\r\n },\r\n set(val) {\r\n articleForm.data.desc = val;\r\n }\r\n});\r\n// 发布时间\r\nconst releaseDate = computed({\r\n get() { return articleForm.data?.releaseDate || articleForm.data?.publishTime; },\r\n set(val) { articleForm.data.releaseDate = val; }\r\n});\r\n// 标签\r\nconst tags = ref([]);\r\n// computed({ \r\n// get() { return articleForm.data?.tags || [] }, \r\n// set(val) { articleForm.data.tags = val; } \r\n// });\r\n// 内容\r\nconst content = computed({\r\n get() { return articleForm.data?.content || \"\"; },\r\n set(val) { articleForm.data.content = val; }\r\n});\r\n\r\n// 图集\r\nconst atlas = computed({\r\n get() {\r\n return articleForm.data?.atlas\r\n },\r\n set(val) { articleForm.data.atlas = val; }\r\n});\r\n\r\n// 表单初始化\r\nconst formInitDataInfo = ()=>{\r\n // 初始化数据加载\r\n if (route.query.id) {\r\n articleForm.editRecord(route.query.id);\r\n }\r\n else if (route.query.partId) {\r\n articleForm.addRecord({ cmsPartId: route.query.partId,isDraft:1 });\r\n }\r\n else {\r\n articleForm.addRecord({ isDraft:1 });\r\n }\r\n}\r\n\r\nonMounted(() => {\r\n formInitDataInfo();\r\n articleForm.init();\r\n\r\n})\r\n\r\n// 保存\r\nconst saveHandle = async () => {\r\n\r\n // 简介不存在的时候使用自动生成的\r\n if (!articleForm.data?.desc) {\r\n desc.value = getDefaultDescContent();\r\n }\r\n\r\n let result = await articleForm.submit();\r\n\r\n router.back();\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 router.back();\r\n }\r\n}\r\n\r\n// 隐藏扩展\r\nconst closeExtentions = ref(true);\r\nconst extentionsRef = ref();\r\nconst hideExtentionsHandle = () => {\r\n closeExtentions.value = true;\r\n}\r\n//展示扩展\r\nconst closeExtentionsHandle = () => {\r\n closeExtentions.value = false;\r\n}\r\n\r\nconst EditorChangeHandle = (v: any) => {\r\n articleForm.data.content = v;\r\n}\r\n\r\n</script>\r\n"],"names":[],"mappings":"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"}
|
|
@@ -3,6 +3,7 @@ import { useCmsSettings } from "../../../cms-settings.js";
|
|
|
3
3
|
import { DataViewRequest, Where } from "@maketribe/request";
|
|
4
4
|
import { Messager, Dialoger } from "@maketribe/dm";
|
|
5
5
|
import { CmsAdContentsForm } from "../../../dataviews/cms-ad-contents/CmsAdContentsForm.js";
|
|
6
|
+
import { CmsAdDefinesForm } from "../../../dataviews/cms-ad-defines/CmsAdDefinesForm.js";
|
|
6
7
|
import "element-plus";
|
|
7
8
|
import "@maketribe/utils";
|
|
8
9
|
import "../../../../../core/DataModelDefines.js";
|
|
@@ -82,12 +83,14 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
82
83
|
const partAdBanner = ref(null);
|
|
83
84
|
const loading = ref(true);
|
|
84
85
|
const adContentForm = reactive(new CmsAdContentsForm({ cutSise: cmsSettings.part.bannerImageSize }));
|
|
86
|
+
const adDefineForm = reactive(new CmsAdDefinesForm());
|
|
85
87
|
adContentForm.beforeSubmitEvent.on(async ({ data }) => {
|
|
86
88
|
if (partAdBanner.value) {
|
|
87
89
|
data.adDefineId = partAdBanner.value.id;
|
|
88
90
|
} else {
|
|
89
91
|
try {
|
|
90
|
-
const
|
|
92
|
+
const widthAndHeight = cmsSettings.part.bannerImageSize.split("*");
|
|
93
|
+
const result = await adRequest.add({ key: `part_${props.partId}`, desc: `${props.title}的Banner`, width: widthAndHeight[0], height: widthAndHeight[1] });
|
|
91
94
|
if (result.data.code == 200) {
|
|
92
95
|
partAdBanner.value = { id: result.data.data };
|
|
93
96
|
data.adDefineId = result.data.data;
|
|
@@ -97,10 +100,23 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
97
100
|
}
|
|
98
101
|
}
|
|
99
102
|
});
|
|
103
|
+
adDefineForm.formatSubmitData = (data) => {
|
|
104
|
+
if (partAdBanner.value) {
|
|
105
|
+
data.id = partAdBanner.value.id;
|
|
106
|
+
} else {
|
|
107
|
+
data.key = `part_${props.partId}`;
|
|
108
|
+
data.desc = `${props.title}的Banner`;
|
|
109
|
+
}
|
|
110
|
+
return data;
|
|
111
|
+
};
|
|
100
112
|
adContentForm.submittedEvent.on(() => {
|
|
101
113
|
loadPartAdDefineData(props.partId);
|
|
102
114
|
});
|
|
115
|
+
adDefineForm.submittedEvent.on(() => {
|
|
116
|
+
loadPartAdDefineData(props.partId);
|
|
117
|
+
});
|
|
103
118
|
const loadPartAdDefineData = async (partId) => {
|
|
119
|
+
var _a, _b;
|
|
104
120
|
try {
|
|
105
121
|
loading.value = true;
|
|
106
122
|
const where = new Where();
|
|
@@ -112,18 +128,31 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
112
128
|
condition: where
|
|
113
129
|
}
|
|
114
130
|
})).data.data[0];
|
|
131
|
+
if (((_a = partAdBanner.value) == null ? void 0 : _a.width) && ((_b = partAdBanner.value) == null ? void 0 : _b.width)) {
|
|
132
|
+
adContentForm.changeCutSise(`${partAdBanner.value.width}*${partAdBanner.value.height}`);
|
|
133
|
+
}
|
|
115
134
|
} catch (e) {
|
|
116
135
|
console.error(e);
|
|
117
136
|
} finally {
|
|
118
137
|
loading.value = false;
|
|
119
138
|
}
|
|
120
139
|
};
|
|
121
|
-
const
|
|
122
|
-
Dialoger.dataFormDialog({
|
|
140
|
+
const showAdContentHandle = async (id) => {
|
|
141
|
+
await Dialoger.dataFormDialog({
|
|
123
142
|
dataForm: adContentForm,
|
|
124
143
|
recId: id
|
|
125
144
|
});
|
|
126
145
|
};
|
|
146
|
+
const showAdDefineHandle = async () => {
|
|
147
|
+
var _a;
|
|
148
|
+
await Dialoger.dataFormDialog({
|
|
149
|
+
dataForm: adDefineForm,
|
|
150
|
+
recId: (_a = partAdBanner.value) == null ? void 0 : _a.id
|
|
151
|
+
});
|
|
152
|
+
adDefineForm.getColumn("contents").visible = false;
|
|
153
|
+
adDefineForm.getColumn("key").visible = false;
|
|
154
|
+
adDefineForm.getColumn("desc").visible = false;
|
|
155
|
+
};
|
|
127
156
|
onMounted(() => {
|
|
128
157
|
watch(() => props.partId, (id) => {
|
|
129
158
|
loadPartAdDefineData(id);
|
|
@@ -182,7 +211,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
182
211
|
type: "primary",
|
|
183
212
|
style: { "margin-left": "10px" },
|
|
184
213
|
icon: unref(EditPen),
|
|
185
|
-
onClick: ($event) =>
|
|
214
|
+
onClick: ($event) => showAdContentHandle(item.id)
|
|
186
215
|
}, {
|
|
187
216
|
default: withCtx(() => [
|
|
188
217
|
createTextVNode(" 编辑当前轮播项 ")
|
|
@@ -193,12 +222,23 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
193
222
|
type: "primary",
|
|
194
223
|
style: { "margin-left": "10px" },
|
|
195
224
|
icon: unref(Plus),
|
|
196
|
-
onClick: _cache[0] || (_cache[0] = ($event) =>
|
|
225
|
+
onClick: _cache[0] || (_cache[0] = ($event) => showAdContentHandle(null))
|
|
197
226
|
}, {
|
|
198
227
|
default: withCtx(() => [
|
|
199
228
|
createTextVNode(" 添加新轮播项 ")
|
|
200
229
|
]),
|
|
201
230
|
_: 1
|
|
231
|
+
}, 8, ["icon"]),
|
|
232
|
+
createVNode(_component_el_button, {
|
|
233
|
+
type: "primary",
|
|
234
|
+
style: { "margin-left": "10px" },
|
|
235
|
+
icon: unref(EditPen),
|
|
236
|
+
onClick: _cache[1] || (_cache[1] = ($event) => showAdDefineHandle())
|
|
237
|
+
}, {
|
|
238
|
+
default: withCtx(() => [
|
|
239
|
+
createTextVNode(" 编辑banner比例 ")
|
|
240
|
+
]),
|
|
241
|
+
_: 1
|
|
202
242
|
}, 8, ["icon"])
|
|
203
243
|
])
|
|
204
244
|
])
|
|
@@ -226,7 +266,19 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
226
266
|
text: "",
|
|
227
267
|
style: { "margin-left": "10px" },
|
|
228
268
|
icon: unref(Plus),
|
|
229
|
-
onClick: _cache[
|
|
269
|
+
onClick: _cache[2] || (_cache[2] = ($event) => showAdDefineHandle())
|
|
270
|
+
}, {
|
|
271
|
+
default: withCtx(() => [
|
|
272
|
+
createTextVNode(" 设置广告位比例 ")
|
|
273
|
+
]),
|
|
274
|
+
_: 1
|
|
275
|
+
}, 8, ["icon"]),
|
|
276
|
+
createVNode(_component_el_button, {
|
|
277
|
+
type: "primary",
|
|
278
|
+
text: "",
|
|
279
|
+
style: { "margin-left": "10px" },
|
|
280
|
+
icon: unref(Plus),
|
|
281
|
+
onClick: _cache[3] || (_cache[3] = ($event) => showAdContentHandle(null))
|
|
230
282
|
}, {
|
|
231
283
|
default: withCtx(() => [
|
|
232
284
|
createTextVNode(" 添加 ")
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"part-banner-edit.vue.js","sources":["../../../../../../../src/modules/cms/pages/cms-contents/components/part-banner-edit.vue"],"sourcesContent":["<template>\r\n <div class=\"mk-cms-part-banner__warp\" v-loading=\"loading\" v-if=\"cmsSettings.part.openBanner\">\r\n <el-carousel v-if=\"partAdBanner && partAdBanner.contents?.length\" :autoplay=\"false\" height=\"240px\" arrow=\"always\">\r\n <el-carousel-item v-for=\"item in partAdBanner.contents\" :key=\"item.id\">\r\n <div class=\"mk-cms-part-banner__list_item\">\r\n <div class=\"mk-cms-part-banner__list_content\">\r\n <el-image class=\"mk-cms-part-banner__list_content_img\" v-if=\"item.type == 1\" :src=\"item.path\" fit=\"cover\"\r\n tyle=\"width: 100%;height: 100%;\">\r\n <div slot=\"placeholder\" class=\"image-slot\">\r\n 加载中<span class=\"dot\">...</span>\r\n </div>\r\n </el-image>\r\n <video class=\"video\" v-if=\"item.type == 2\" :src=\"item.path\" style=\"width: 100%;height: 100%;\"\r\n controls></video>\r\n </div>\r\n <div class=\"mk-cms-part-banner__list_bottom\">\r\n <div class=\"mk-cms-part-banner__list_title\">{{ item.title }}</div>\r\n <div>{{ item.desc }}</div>\r\n </div>\r\n <div class=\"mk-cms-part-banner__list_action-mask\">\r\n <el-button type=\"primary\" style=\"margin-left: 10px;\" :icon=\"EditPen\" @click=\"
|
|
1
|
+
{"version":3,"file":"part-banner-edit.vue.js","sources":["../../../../../../../src/modules/cms/pages/cms-contents/components/part-banner-edit.vue"],"sourcesContent":["<template>\r\n <div class=\"mk-cms-part-banner__warp\" v-loading=\"loading\" v-if=\"cmsSettings.part.openBanner\">\r\n <el-carousel v-if=\"partAdBanner && partAdBanner.contents?.length\" :autoplay=\"false\" height=\"240px\" arrow=\"always\">\r\n <el-carousel-item v-for=\"item in partAdBanner.contents\" :key=\"item.id\">\r\n <div class=\"mk-cms-part-banner__list_item\">\r\n <div class=\"mk-cms-part-banner__list_content\">\r\n <el-image class=\"mk-cms-part-banner__list_content_img\" v-if=\"item.type == 1\" :src=\"item.path\" fit=\"cover\"\r\n tyle=\"width: 100%;height: 100%;\">\r\n <div slot=\"placeholder\" class=\"image-slot\">\r\n 加载中<span class=\"dot\">...</span>\r\n </div>\r\n </el-image>\r\n <video class=\"video\" v-if=\"item.type == 2\" :src=\"item.path\" style=\"width: 100%;height: 100%;\"\r\n controls></video>\r\n </div>\r\n <div class=\"mk-cms-part-banner__list_bottom\">\r\n <div class=\"mk-cms-part-banner__list_title\">{{ item.title }}</div>\r\n <div>{{ item.desc }}</div>\r\n </div>\r\n <div class=\"mk-cms-part-banner__list_action-mask\">\r\n <el-button type=\"primary\" style=\"margin-left: 10px;\" :icon=\"EditPen\" @click=\"showAdContentHandle(item.id)\">\r\n 编辑当前轮播项\r\n </el-button>\r\n <el-button type=\"primary\" style=\"margin-left: 10px;\" :icon=\"Plus\" @click=\"showAdContentHandle(null)\">\r\n 添加新轮播项\r\n </el-button>\r\n <el-button type=\"primary\" style=\"margin-left: 10px;\" :icon=\"EditPen\" @click=\"showAdDefineHandle()\">\r\n 编辑banner比例\r\n </el-button>\r\n </div>\r\n </div>\r\n </el-carousel-item>\r\n </el-carousel>\r\n <el-empty v-else description=\"暂无轮播数据\" :image-size=\"80\" style=\"height: 240px;\">\r\n <template #description>\r\n <el-text>暂无轮播数据</el-text>\r\n <el-button type=\"primary\" text style=\"margin-left: 10px;\" :icon=\"Plus\" @click=\"showAdDefineHandle()\">\r\n 设置广告位比例\r\n </el-button>\r\n <el-button type=\"primary\" text style=\"margin-left: 10px;\" :icon=\"Plus\" @click=\"showAdContentHandle(null)\">\r\n 添加\r\n </el-button>\r\n </template>\r\n </el-empty>\r\n\r\n </div>\r\n</template>\r\n<script setup lang=\"ts\">\r\nimport { useCmsSettings } from \"../../../cms-settings\"\r\nimport { onMounted, reactive, computed, ref, watch, defineProps } from \"vue\";\r\nimport { DataViewRequest, Where } from \"@maketribe/request\";\r\nimport { DataForm, Dialoger, FormColumn, Messager } from \"@maketribe/dm\";\r\nimport { CmsAdDefinesTable, CmsAdContentsForm, CmsAdDefinesForm } from \"../../../dataviews\";\r\nimport { EditPen, ArrowDown, Delete, Plus } from \"@element-plus/icons-vue\"\r\nimport { debounce } from \"lodash-es\"\r\n// 广告定义数据表\r\nconst adRequest = new DataViewRequest({ name: \"ad-define\", moduleName: \"cms\" });\r\n// cms 配置\r\nconst cmsSettings = useCmsSettings();\r\nconst props = defineProps({ partId: { type: String }, title: { type: String } })\r\n// 栏目广告\r\nconst partAdBanner = ref<any | null>(null);\r\nconst loading = ref(true);\r\nconst adContentForm = reactive<CmsAdContentsForm>(new CmsAdContentsForm({ cutSise: cmsSettings.part.bannerImageSize }))\r\nconst adDefineForm = reactive<CmsAdDefinesForm>(new CmsAdDefinesForm())\r\n\r\n// 内容添加之前监测广告是否存在不存在先添加广告\r\nadContentForm.beforeSubmitEvent.on(async ({ data }) => {\r\n if (partAdBanner.value) {\r\n data.adDefineId = partAdBanner.value.id as any;\r\n }\r\n else {\r\n try {\r\n\r\n const widthAndHeight = cmsSettings.part.bannerImageSize.split(\"*\");\r\n // 添加广告\r\n const result = await adRequest.add({ key: `part_${props.partId}`, desc: `${props.title}的Banner`, width: widthAndHeight[0], height: widthAndHeight[1] })\r\n\r\n if (result.data.code == 200) {\r\n partAdBanner.value = { id: result.data.data as string }\r\n data.adDefineId = result.data.data;\r\n }\r\n\r\n } catch (error) {\r\n Messager.error({ message: \"添加失败!\" });\r\n }\r\n }\r\n\r\n})\r\n\r\n//提交判断是否存在,判断更新还是添加\r\nadDefineForm.formatSubmitData = ((data) => {\r\n if (partAdBanner.value) {\r\n data.id = partAdBanner.value.id as any;\r\n } else {\r\n data.key = `part_${props.partId}`\r\n data.desc = `${props.title}的Banner`\r\n }\r\n return data\r\n})\r\n\r\n\r\n\r\n// 添加完成则刷新\r\nadContentForm.submittedEvent.on(() => {\r\n loadPartAdDefineData(props.partId)\r\n})\r\n//加完成则刷新\r\nadDefineForm.submittedEvent.on(() => {\r\n loadPartAdDefineData(props.partId)\r\n})\r\n\r\n//加载栏目广告\r\nconst loadPartAdDefineData = async (partId: any) => {\r\n\r\n try {\r\n\r\n loading.value = true;\r\n const where = new Where()\r\n where.addCondition(\"key\", \"=\", `part_${partId}`);\r\n // 加载广告定义\r\n partAdBanner.value = (await adRequest.query({\r\n data: {\r\n pn: 1,\r\n pc: 1000000,\r\n condition: where\r\n }\r\n })).data.data[0];\r\n if (partAdBanner.value?.width && partAdBanner.value?.width) {\r\n adContentForm.changeCutSise(`${partAdBanner.value.width}*${partAdBanner.value.height}`)\r\n }\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 showAdContentHandle = async (id: any) => {\r\n await Dialoger.dataFormDialog({\r\n dataForm: adContentForm as CmsAdContentsForm,\r\n recId: id\r\n })\r\n}\r\n//显示栏目广告定义的编辑弹窗\r\nconst showAdDefineHandle = async () => {\r\n await Dialoger.dataFormDialog({\r\n dataForm: adDefineForm as CmsAdDefinesForm,\r\n recId: partAdBanner.value?.id\r\n })\r\n adDefineForm.getColumn(\"contents\")!.visible = false;\r\n adDefineForm.getColumn(\"key\")!.visible = false;\r\n adDefineForm.getColumn(\"desc\")!.visible = false;\r\n}\r\n\r\n// 组件挂载的时候\r\nonMounted(() => {\r\n watch(() => props.partId, id => {\r\n loadPartAdDefineData(id)\r\n }, { immediate: true })\r\n})\r\n\r\n</script>\r\n<style lang='scss'></style>\r\n"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,313 @@
|
|
|
1
|
+
import { defineComponent, ref, resolveComponent, openBlock, createElementBlock, Fragment, renderList, createBlock, withCtx, createElementVNode, toDisplayString, createVNode, createTextVNode, unref, createCommentVNode } from "vue";
|
|
2
|
+
import "@maketribe/dm";
|
|
3
|
+
import { ElMessageBox, ElMessage } from "element-plus";
|
|
4
|
+
import "@maketribe/utils";
|
|
5
|
+
import "../../../../core/DataModelDefines.js";
|
|
6
|
+
import "vue-router";
|
|
7
|
+
import "@maketribe/request";
|
|
8
|
+
import "@maketribe/locale";
|
|
9
|
+
import "../../../ms/dataviews/ms-config/MsConfigTable.js";
|
|
10
|
+
import "lodash-es";
|
|
11
|
+
import "../../../../components/basic/svg-icon/index.js";
|
|
12
|
+
import "../../../../components/data-model/data-form/index.js";
|
|
13
|
+
import "../../../../components/data-model/data-table/index.js";
|
|
14
|
+
import "../../../../components/data-model/data-table-pagination/index.js";
|
|
15
|
+
import "../../../../components/abstract/abstract-select/abstract-select.js";
|
|
16
|
+
import "../../../../components/abstract/abstract-select/abstract-select-options.js";
|
|
17
|
+
import "../../../../components/basic/button/button-options.js";
|
|
18
|
+
import "../../../../components/basic/config-provider/index.js";
|
|
19
|
+
import "../../../../components/basic/data-table-select/index.js";
|
|
20
|
+
import "../../../../components/basic/data-select/index.js";
|
|
21
|
+
import "../../../../components/basic/pagination/index.js";
|
|
22
|
+
import "../../../../components/basic/system-provider/index.js";
|
|
23
|
+
import { MKCodeEditor } from "../../../../components/basic/code-editor/index.js";
|
|
24
|
+
import "../../../../components/basic/json-editor/index.js";
|
|
25
|
+
import "../../../../components/basic/page-container/index.js";
|
|
26
|
+
import "../../../../components/basic/date-picker/index.js";
|
|
27
|
+
import "../../../../components/basic/icon-select/index.js";
|
|
28
|
+
import "../../../../components/basic/upload-file/upload-file.js";
|
|
29
|
+
import "../../../../components/basic/upload-file/context/web-file-upload-context.js";
|
|
30
|
+
import "../../../../components/basic/upload-file/context/web-file-upload-context-options.js";
|
|
31
|
+
import "../../../../components/basic/upload-file/ui/upload-image/index.js";
|
|
32
|
+
import "../../../../components/basic/upload-file/ui/upload-file/index.js";
|
|
33
|
+
import "../../../../components/basic/upload-file/ui/upload-video/index.js";
|
|
34
|
+
import "../../../../components/basic/upload-file/upload-file-options.js";
|
|
35
|
+
import "../../../../components/basic/doc-editor/index.js";
|
|
36
|
+
import "../../../../components/basic/copy-container/index.js";
|
|
37
|
+
import "../../../../components/basic/image-cropper/index.js";
|
|
38
|
+
import "../../../../components/basic/visual-page-editor/index.js";
|
|
39
|
+
import "../../../../components/business/verify-dialog/verify-dialog-option.js";
|
|
40
|
+
import "../../../../components/business/resource-list/index.js";
|
|
41
|
+
import "../../../../components/business/resource-manager/index.js";
|
|
42
|
+
import "../../../ms/dataviews/department/DepartmentForm.js";
|
|
43
|
+
import "../../../ms/dataviews/department/DepartmentTable.js";
|
|
44
|
+
import "../../../ms/dataviews/department/DepartmentTree.js";
|
|
45
|
+
import "../../../ms/dataviews/log/operate-log/OperateLogTable.js";
|
|
46
|
+
import "../../../ms/dataviews/log/login-log/LoginLogTable.js";
|
|
47
|
+
import "../../../ms/dataviews/log/request-log/RequestLogTable.js";
|
|
48
|
+
import "../../../ms/dataviews/log/local-log/LocalLogTree.js";
|
|
49
|
+
import "../../../ms/components/material-list/index.js";
|
|
50
|
+
import "../../../ms/components/markdown-editor/index.js";
|
|
51
|
+
import "../../../ms/components/rich-text-editor/index.js";
|
|
52
|
+
import "@element-plus/icons-vue";
|
|
53
|
+
import "../../../ms/material-upload-context/material-upload-context-options.js";
|
|
54
|
+
import "../../../ms/material-upload-context/material-upload-context.js";
|
|
55
|
+
import { ImageUploadContext } from "../../../ms/image-upload-context/index.js";
|
|
56
|
+
import { json } from "@codemirror/lang-json";
|
|
57
|
+
import { html } from "@codemirror/lang-html";
|
|
58
|
+
import { css } from "@codemirror/lang-css";
|
|
59
|
+
const _hoisted_1 = { style: { "width": "500px", "max-height": "700px", "overflow": "auto" } };
|
|
60
|
+
const _hoisted_2 = { style: { "display": "flex", "justify-content": "space-between" } };
|
|
61
|
+
const _hoisted_3 = { class: "dialog-footer" };
|
|
62
|
+
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
63
|
+
__name: "DocModuleEditForm",
|
|
64
|
+
props: { modules: { type: Array, default() {
|
|
65
|
+
return [];
|
|
66
|
+
} } },
|
|
67
|
+
setup(__props) {
|
|
68
|
+
const props = __props;
|
|
69
|
+
const dialogVisible = ref(false);
|
|
70
|
+
const dialogTitle = ref("添加模块");
|
|
71
|
+
const curEditModule = ref(null);
|
|
72
|
+
const disabledName = ref(false);
|
|
73
|
+
const addModuleHandle = () => {
|
|
74
|
+
dialogTitle.value = "添加模块";
|
|
75
|
+
curEditModule.value = {
|
|
76
|
+
name: "",
|
|
77
|
+
title: "新增模块",
|
|
78
|
+
cover: "",
|
|
79
|
+
template: "",
|
|
80
|
+
editorCss: "",
|
|
81
|
+
options: ""
|
|
82
|
+
};
|
|
83
|
+
dialogVisible.value = true;
|
|
84
|
+
disabledName.value = false;
|
|
85
|
+
};
|
|
86
|
+
const editModuleHandle = (data) => {
|
|
87
|
+
dialogTitle.value = `编辑模块【${data.name}】`;
|
|
88
|
+
curEditModule.value = Object.assign({}, data, {
|
|
89
|
+
options: JSON.stringify(data.options, null, 4)
|
|
90
|
+
});
|
|
91
|
+
dialogVisible.value = true;
|
|
92
|
+
disabledName.value = true;
|
|
93
|
+
};
|
|
94
|
+
const deleteModuleHandle = (data) => {
|
|
95
|
+
ElMessageBox.confirm(`确认删除模块【${data.name}】?`).then(() => {
|
|
96
|
+
let modules = props.modules;
|
|
97
|
+
for (let i = 0; i < modules.length; i++) {
|
|
98
|
+
if (modules[i].name == data.name) {
|
|
99
|
+
modules.splice(i, 1);
|
|
100
|
+
console.log(modules);
|
|
101
|
+
break;
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
dialogVisible.value = false;
|
|
105
|
+
}).catch((e) => {
|
|
106
|
+
console.log(e);
|
|
107
|
+
ElMessage.error({ message: "删除失败!" });
|
|
108
|
+
});
|
|
109
|
+
};
|
|
110
|
+
const saveModuleHandle = () => {
|
|
111
|
+
var _a, _b;
|
|
112
|
+
try {
|
|
113
|
+
if (curEditModule.value) {
|
|
114
|
+
const oldModule = (_a = props.modules) == null ? void 0 : _a.find((item) => curEditModule.value.name == item.name);
|
|
115
|
+
if (oldModule != null) {
|
|
116
|
+
Object.assign(oldModule, curEditModule.value, {
|
|
117
|
+
options: JSON.parse(curEditModule.value.options)
|
|
118
|
+
});
|
|
119
|
+
} else {
|
|
120
|
+
(_b = props.modules) == null ? void 0 : _b.push(Object.assign({}, curEditModule.value, {
|
|
121
|
+
options: JSON.parse(curEditModule.value.options)
|
|
122
|
+
}));
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
curEditModule.value = null;
|
|
126
|
+
dialogVisible.value = false;
|
|
127
|
+
} catch (error) {
|
|
128
|
+
console.log(error);
|
|
129
|
+
ElMessage.error({ message: "配置有误,保存失败!" });
|
|
130
|
+
}
|
|
131
|
+
};
|
|
132
|
+
return (_ctx, _cache) => {
|
|
133
|
+
const _component_el_button = resolveComponent("el-button");
|
|
134
|
+
const _component_el_card = resolveComponent("el-card");
|
|
135
|
+
const _component_el_input = resolveComponent("el-input");
|
|
136
|
+
const _component_el_form_item = resolveComponent("el-form-item");
|
|
137
|
+
const _component_MKUploadImage = resolveComponent("MKUploadImage");
|
|
138
|
+
const _component_el_form = resolveComponent("el-form");
|
|
139
|
+
const _component_el_dialog = resolveComponent("el-dialog");
|
|
140
|
+
return openBlock(), createElementBlock("div", _hoisted_1, [
|
|
141
|
+
(openBlock(true), createElementBlock(Fragment, null, renderList(__props.modules, (mod) => {
|
|
142
|
+
return openBlock(), createBlock(_component_el_card, {
|
|
143
|
+
style: { "width": "100%", "margin-top": "10px", "box-sizing": "border-box" },
|
|
144
|
+
shadow: "hover"
|
|
145
|
+
}, {
|
|
146
|
+
default: withCtx(() => [
|
|
147
|
+
createElementVNode("div", _hoisted_2, [
|
|
148
|
+
createElementVNode("div", null, toDisplayString(mod.title) + " [" + toDisplayString(mod.name) + "]", 1),
|
|
149
|
+
createElementVNode("div", null, [
|
|
150
|
+
createVNode(_component_el_button, {
|
|
151
|
+
type: "primary",
|
|
152
|
+
text: "",
|
|
153
|
+
onClick: ($event) => editModuleHandle(mod)
|
|
154
|
+
}, {
|
|
155
|
+
default: withCtx(() => [
|
|
156
|
+
createTextVNode("编辑")
|
|
157
|
+
]),
|
|
158
|
+
_: 2
|
|
159
|
+
}, 1032, ["onClick"]),
|
|
160
|
+
createVNode(_component_el_button, {
|
|
161
|
+
type: "danger",
|
|
162
|
+
text: "",
|
|
163
|
+
onClick: ($event) => deleteModuleHandle(mod)
|
|
164
|
+
}, {
|
|
165
|
+
default: withCtx(() => [
|
|
166
|
+
createTextVNode("删除")
|
|
167
|
+
]),
|
|
168
|
+
_: 2
|
|
169
|
+
}, 1032, ["onClick"])
|
|
170
|
+
])
|
|
171
|
+
])
|
|
172
|
+
]),
|
|
173
|
+
_: 2
|
|
174
|
+
}, 1024);
|
|
175
|
+
}), 256)),
|
|
176
|
+
createVNode(_component_el_button, {
|
|
177
|
+
type: "primary",
|
|
178
|
+
onClick: addModuleHandle,
|
|
179
|
+
style: { "width": "100%", "margin-top": "10px", "box-sizing": "border-box" }
|
|
180
|
+
}, {
|
|
181
|
+
default: withCtx(() => [
|
|
182
|
+
createTextVNode("添加模块")
|
|
183
|
+
]),
|
|
184
|
+
_: 1
|
|
185
|
+
}),
|
|
186
|
+
createVNode(_component_el_dialog, {
|
|
187
|
+
modelValue: dialogVisible.value,
|
|
188
|
+
"onUpdate:modelValue": _cache[7] || (_cache[7] = ($event) => dialogVisible.value = $event),
|
|
189
|
+
title: dialogTitle.value,
|
|
190
|
+
width: 800
|
|
191
|
+
}, {
|
|
192
|
+
footer: withCtx(() => [
|
|
193
|
+
createElementVNode("div", _hoisted_3, [
|
|
194
|
+
createVNode(_component_el_button, {
|
|
195
|
+
onClick: _cache[6] || (_cache[6] = ($event) => dialogVisible.value = false)
|
|
196
|
+
}, {
|
|
197
|
+
default: withCtx(() => [
|
|
198
|
+
createTextVNode("取消")
|
|
199
|
+
]),
|
|
200
|
+
_: 1
|
|
201
|
+
}),
|
|
202
|
+
createVNode(_component_el_button, {
|
|
203
|
+
type: "primary",
|
|
204
|
+
onClick: saveModuleHandle
|
|
205
|
+
}, {
|
|
206
|
+
default: withCtx(() => [
|
|
207
|
+
createTextVNode(" 保存 ")
|
|
208
|
+
]),
|
|
209
|
+
_: 1
|
|
210
|
+
})
|
|
211
|
+
])
|
|
212
|
+
]),
|
|
213
|
+
default: withCtx(() => [
|
|
214
|
+
curEditModule.value ? (openBlock(), createBlock(_component_el_form, {
|
|
215
|
+
key: 0,
|
|
216
|
+
model: curEditModule.value,
|
|
217
|
+
"label-width": "auto",
|
|
218
|
+
"label-position": "top",
|
|
219
|
+
style: { "max-height": "500px", "overflow": "auto", "padding": "20px" }
|
|
220
|
+
}, {
|
|
221
|
+
default: withCtx(() => [
|
|
222
|
+
createVNode(_component_el_form_item, { label: "模块名称 : " }, {
|
|
223
|
+
default: withCtx(() => [
|
|
224
|
+
createVNode(_component_el_input, {
|
|
225
|
+
modelValue: curEditModule.value.name,
|
|
226
|
+
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => curEditModule.value.name = $event),
|
|
227
|
+
disabled: disabledName.value,
|
|
228
|
+
clearable: ""
|
|
229
|
+
}, null, 8, ["modelValue", "disabled"])
|
|
230
|
+
]),
|
|
231
|
+
_: 1
|
|
232
|
+
}),
|
|
233
|
+
createVNode(_component_el_form_item, {
|
|
234
|
+
label: "模块描述 : ",
|
|
235
|
+
style: { "margin-bottom": "20px" }
|
|
236
|
+
}, {
|
|
237
|
+
default: withCtx(() => [
|
|
238
|
+
createVNode(_component_el_input, {
|
|
239
|
+
modelValue: curEditModule.value.title,
|
|
240
|
+
"onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => curEditModule.value.title = $event),
|
|
241
|
+
clearable: ""
|
|
242
|
+
}, null, 8, ["modelValue"])
|
|
243
|
+
]),
|
|
244
|
+
_: 1
|
|
245
|
+
}),
|
|
246
|
+
createVNode(_component_el_form_item, {
|
|
247
|
+
label: "模块封面图 : ",
|
|
248
|
+
style: { "margin-bottom": "20px" }
|
|
249
|
+
}, {
|
|
250
|
+
default: withCtx(() => [
|
|
251
|
+
createVNode(_component_MKUploadImage, {
|
|
252
|
+
modelValue: curEditModule.value.cover,
|
|
253
|
+
"onUpdate:modelValue": _cache[2] || (_cache[2] = ($event) => curEditModule.value.cover = $event),
|
|
254
|
+
width: "700px",
|
|
255
|
+
height: "300px",
|
|
256
|
+
uploadContext: new (unref(ImageUploadContext))("")
|
|
257
|
+
}, null, 8, ["modelValue", "uploadContext"])
|
|
258
|
+
]),
|
|
259
|
+
_: 1
|
|
260
|
+
}),
|
|
261
|
+
createVNode(_component_el_form_item, {
|
|
262
|
+
label: "模块HTML模版 : ",
|
|
263
|
+
style: { "margin-bottom": "20px" }
|
|
264
|
+
}, {
|
|
265
|
+
default: withCtx(() => [
|
|
266
|
+
createVNode(unref(MKCodeEditor), {
|
|
267
|
+
modelValue: curEditModule.value.template,
|
|
268
|
+
"onUpdate:modelValue": _cache[3] || (_cache[3] = ($event) => curEditModule.value.template = $event),
|
|
269
|
+
extensions: [unref(html)()],
|
|
270
|
+
style: { "border": "1px solid #ccc" }
|
|
271
|
+
}, null, 8, ["modelValue", "extensions"])
|
|
272
|
+
]),
|
|
273
|
+
_: 1
|
|
274
|
+
}),
|
|
275
|
+
createVNode(_component_el_form_item, {
|
|
276
|
+
label: "模块配置面板 : ",
|
|
277
|
+
style: { "margin-bottom": "20px" }
|
|
278
|
+
}, {
|
|
279
|
+
default: withCtx(() => [
|
|
280
|
+
createVNode(unref(MKCodeEditor), {
|
|
281
|
+
modelValue: curEditModule.value.options,
|
|
282
|
+
"onUpdate:modelValue": _cache[4] || (_cache[4] = ($event) => curEditModule.value.options = $event),
|
|
283
|
+
extensions: [unref(json)()],
|
|
284
|
+
style: { "border": "1px solid #ccc" }
|
|
285
|
+
}, null, 8, ["modelValue", "extensions"])
|
|
286
|
+
]),
|
|
287
|
+
_: 1
|
|
288
|
+
}),
|
|
289
|
+
createVNode(_component_el_form_item, { label: "模块编辑样式 : " }, {
|
|
290
|
+
default: withCtx(() => [
|
|
291
|
+
createVNode(unref(MKCodeEditor), {
|
|
292
|
+
modelValue: curEditModule.value.editorCss,
|
|
293
|
+
"onUpdate:modelValue": _cache[5] || (_cache[5] = ($event) => curEditModule.value.editorCss = $event),
|
|
294
|
+
extensions: [unref(css)()],
|
|
295
|
+
style: { "border": "1px solid #ccc" }
|
|
296
|
+
}, null, 8, ["modelValue", "extensions"])
|
|
297
|
+
]),
|
|
298
|
+
_: 1
|
|
299
|
+
})
|
|
300
|
+
]),
|
|
301
|
+
_: 1
|
|
302
|
+
}, 8, ["model"])) : createCommentVNode("", true)
|
|
303
|
+
]),
|
|
304
|
+
_: 1
|
|
305
|
+
}, 8, ["modelValue", "title"])
|
|
306
|
+
]);
|
|
307
|
+
};
|
|
308
|
+
}
|
|
309
|
+
});
|
|
310
|
+
export {
|
|
311
|
+
_sfc_main as default
|
|
312
|
+
};
|
|
313
|
+
//# sourceMappingURL=DocModuleEditForm.vue.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DocModuleEditForm.vue.js","sources":["../../../../../../src/modules/cms/pages/cms-settigns/DocModuleEditForm.vue"],"sourcesContent":["<template>\r\n <div style=\" width: 500px;max-height: 700px;overflow: auto;\">\r\n <el-card v-for=\"mod in modules\" style=\"width: 100%;margin-top: 10px;box-sizing: border-box;\" shadow=\"hover\">\r\n <div style=\"display: flex; justify-content: space-between;\">\r\n <div>{{mod.title}} [{{mod.name}}]</div>\r\n <div>\r\n <el-button type=\"primary\" text @click=\"editModuleHandle(mod)\">编辑</el-button>\r\n <el-button type=\"danger\" text @click=\"deleteModuleHandle(mod)\">删除</el-button>\r\n </div>\r\n </div>\r\n </el-card>\r\n <el-button type=\"primary\" @click=\"addModuleHandle\" style=\"width: 100%;margin-top: 10px;box-sizing: border-box;\">添加模块</el-button>\r\n <el-dialog v-model=\"dialogVisible\" :title=\"dialogTitle\" :width=\"800\">\r\n <el-form v-if=\"curEditModule\" :model=\"curEditModule\" label-width=\"auto\" label-position=\"top\" style=\"max-height: 500px;overflow: auto;padding: 20px;\">\r\n <el-form-item label=\"模块名称 : \">\r\n <el-input v-model=\"curEditModule.name\" :disabled=\"disabledName\" clearable />\r\n </el-form-item>\r\n <el-form-item label=\"模块描述 : \" style=\"margin-bottom: 20px;\">\r\n <el-input v-model=\"curEditModule.title\" clearable />\r\n </el-form-item>\r\n <el-form-item label=\"模块封面图 : \" style=\"margin-bottom: 20px;\">\r\n <MKUploadImage v-model=\"curEditModule.cover\" width=\"700px\" height=\"300px\" :uploadContext=\"new ImageUploadContext('')\">\r\n\r\n </MKUploadImage>\r\n </el-form-item>\r\n <el-form-item label=\"模块HTML模版 : \" style=\"margin-bottom: 20px;\">\r\n <MKCodeEditor v-model=\"curEditModule.template\" :extensions=\"[html()]\" style=\"border: 1px solid #ccc;\">\r\n\r\n </MKCodeEditor>\r\n </el-form-item>\r\n <el-form-item label=\"模块配置面板 : \" style=\"margin-bottom: 20px;\">\r\n <MKCodeEditor v-model=\"curEditModule.options\" :extensions=\"[json()]\" style=\"border: 1px solid #ccc;\">\r\n\r\n </MKCodeEditor>\r\n </el-form-item>\r\n <el-form-item label=\"模块编辑样式 : \">\r\n <MKCodeEditor v-model=\"curEditModule.editorCss\" :extensions=\"[css()]\" style=\"border: 1px solid #ccc;\">\r\n\r\n </MKCodeEditor>\r\n </el-form-item>\r\n </el-form>\r\n <template #footer>\r\n <div class=\"dialog-footer\">\r\n <el-button @click=\"dialogVisible = false\">取消</el-button>\r\n <el-button type=\"primary\" @click=\"saveModuleHandle\"> 保存 </el-button>\r\n </div>\r\n </template>\r\n </el-dialog>\r\n </div>\r\n</template>\r\n \r\n<script setup lang=\"ts\">\r\nimport { defineProps,watch,ref } from \"vue\"\r\nimport { ImageUploadContext } from \"../../../ms\";\r\nimport { ModuleType } from \"../../../../components/basic/doc-editor/plugins/ModulePlugin/composables\"\r\nimport { MKCodeEditor } from \"../../../../components/basic/code-editor\";\r\nimport { ElMessageBox,ElMessage } from 'element-plus'\r\nimport { json } from \"@codemirror/lang-json\";\r\nimport { html } from \"@codemirror/lang-html\";\r\nimport { css } from \"@codemirror/lang-css\";\r\n\r\nconst props = defineProps({ modules:{ type:Array<ModuleType>,default(){ return [] } } })\r\nconst dialogVisible = ref<boolean>(false)\r\nconst dialogTitle = ref<string>(\"添加模块\")\r\nconst curEditModule = ref<any>(null)\r\nconst disabledName = ref<boolean>(false)\r\n \r\n// 添加模块\r\nconst addModuleHandle = ()=>{\r\n dialogTitle.value = \"添加模块\";\r\n curEditModule.value = {\r\n name:\"\",\r\n title:\"新增模块\",\r\n cover:\"\",\r\n template:\"\",\r\n editorCss:\"\",\r\n options:\"\"\r\n };\r\n dialogVisible.value = true;\r\n disabledName.value = false;\r\n}\r\n\r\n// 编辑模块\r\nconst editModuleHandle = (data:any)=>{\r\n dialogTitle.value = `编辑模块【${data.name}】`;\r\n curEditModule.value = Object.assign({},data,{\r\n options:JSON.stringify(data.options,null,4)\r\n });\r\n dialogVisible.value = true;\r\n disabledName.value = true;\r\n}\r\n\r\n// 删除模块\r\nconst deleteModuleHandle = (data:any)=>{\r\n\r\n ElMessageBox.confirm(`确认删除模块【${data.name}】?`).then(() => {\r\n\r\n let modules = props.modules;\r\n\r\n for(let i = 0;i < modules.length; i++){\r\n if(modules[i].name == data.name){\r\n modules.splice(i,1);\r\n console.log(modules);\r\n break;\r\n }\r\n }\r\n\r\n dialogVisible.value = false;\r\n })\r\n .catch(e => {\r\n // catch error\r\n console.log(e);\r\n ElMessage.error({ message:\"删除失败!\"});\r\n })\r\n}\r\n\r\n// 保存模块\r\nconst saveModuleHandle = ()=>{\r\n \r\n try {\r\n if(curEditModule.value){\r\n\r\n const oldModule = props.modules?.find(item=>curEditModule.value.name == item.name)\r\n\r\n if(oldModule != null){\r\n Object.assign(oldModule,curEditModule.value,{\r\n options:JSON.parse(curEditModule.value.options)\r\n })\r\n }\r\n else{\r\n props.modules?.push(Object.assign({},curEditModule.value,{\r\n options:JSON.parse(curEditModule.value.options)\r\n }))\r\n }\r\n }\r\n\r\n curEditModule.value = null;\r\n dialogVisible.value = false;\r\n } catch (error) {\r\n console.log(error)\r\n ElMessage.error({ message:\"配置有误,保存失败!\"});\r\n }\r\n}\r\n\r\n </script>\r\n "],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA6DA,UAAM,QAAQ;AACR,UAAA,gBAAgB,IAAa,KAAK;AAClC,UAAA,cAAc,IAAY,MAAM;AAChC,UAAA,gBAAgB,IAAS,IAAI;AAC7B,UAAA,eAAe,IAAa,KAAK;AAGvC,UAAM,kBAAkB,MAAI;AAC1B,kBAAY,QAAQ;AACpB,oBAAc,QAAQ;AAAA,QACpB,MAAK;AAAA,QACL,OAAM;AAAA,QACN,OAAM;AAAA,QACN,UAAS;AAAA,QACT,WAAU;AAAA,QACV,SAAQ;AAAA,MAAA;AAEV,oBAAc,QAAQ;AACtB,mBAAa,QAAQ;AAAA,IAAA;AAIjB,UAAA,mBAAmB,CAAC,SAAW;AACvB,kBAAA,QAAQ,QAAQ,KAAK,IAAI;AACrC,oBAAc,QAAQ,OAAO,OAAO,CAAA,GAAG,MAAK;AAAA,QACtC,SAAQ,KAAK,UAAU,KAAK,SAAQ,MAAK,CAAC;AAAA,MAAA,CAC3C;AACL,oBAAc,QAAQ;AACtB,mBAAa,QAAQ;AAAA,IAAA;AAIjB,UAAA,qBAAqB,CAAC,SAAW;AAErC,mBAAa,QAAQ,UAAU,KAAK,IAAI,IAAI,EAAE,KAAK,MAAM;AAEvD,YAAI,UAAU,MAAM;AAEpB,iBAAQ,IAAI,GAAE,IAAI,QAAQ,QAAQ,KAAI;AACpC,cAAG,QAAQ,CAAC,EAAE,QAAQ,KAAK,MAAK;AACtB,oBAAA,OAAO,GAAE,CAAC;AAClB,oBAAQ,IAAI,OAAO;AACnB;AAAA,UACF;AAAA,QACF;AAEA,sBAAc,QAAQ;AAAA,MAAA,CACvB,EACA,MAAM,CAAK,MAAA;AAEV,gBAAQ,IAAI,CAAC;AACb,kBAAU,MAAM,EAAE,SAAQ,QAAQ,CAAA;AAAA,MAAA,CACnC;AAAA,IAAA;AAIH,UAAM,mBAAmB,MAAI;;AAEvB,UAAA;AACF,YAAG,cAAc,OAAM;AAEf,gBAAA,aAAY,WAAM,YAAN,mBAAe,KAAK,UAAM,cAAc,MAAM,QAAQ,KAAK;AAE7E,cAAG,aAAa,MAAK;AACZ,mBAAA,OAAO,WAAU,cAAc,OAAM;AAAA,cAC1C,SAAQ,KAAK,MAAM,cAAc,MAAM,OAAO;AAAA,YAAA,CAC/C;AAAA,UAAA,OAEC;AACF,wBAAM,YAAN,mBAAe,KAAK,OAAO,OAAO,CAAC,GAAE,cAAc,OAAM;AAAA,cACvD,SAAQ,KAAK,MAAM,cAAc,MAAM,OAAO;AAAA,YAC/C,CAAA;AAAA,UACH;AAAA,QACF;AAEA,sBAAc,QAAQ;AACtB,sBAAc,QAAQ;AAAA,eACf,OAAO;AACd,gBAAQ,IAAI,KAAK;AACjB,kBAAU,MAAM,EAAE,SAAQ,aAAa,CAAA;AAAA,MACzC;AAAA,IAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DocModuleEditForm.vue2.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
|