@maketribe/ms-app 3.2.26 → 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.
Files changed (194) hide show
  1. package/dist/cjs/components/basic/doc-editor/core/element-block.js +18 -13
  2. package/dist/cjs/components/basic/doc-editor/core/element-block.js.map +1 -1
  3. package/dist/cjs/components/basic/doc-editor/core/utils.js +20 -13
  4. package/dist/cjs/components/basic/doc-editor/core/utils.js.map +1 -1
  5. package/dist/cjs/components/basic/doc-editor/editor.vue.js.map +1 -1
  6. package/dist/cjs/components/basic/doc-editor/plugins/GridPlugin/GridNode.js.map +1 -1
  7. package/dist/cjs/components/basic/doc-editor/plugins/GridPlugin/ImageTextGridNode.js.map +1 -1
  8. package/dist/cjs/components/basic/doc-editor/plugins/GridPlugin/LayoutGridNode.js +32 -1
  9. package/dist/cjs/components/basic/doc-editor/plugins/GridPlugin/LayoutGridNode.js.map +1 -1
  10. package/dist/cjs/components/basic/doc-editor/plugins/GridPlugin/ModuleGridNode.js +13 -0
  11. package/dist/cjs/components/basic/doc-editor/plugins/GridPlugin/ModuleGridNode.js.map +1 -1
  12. package/dist/cjs/components/basic/doc-editor/plugins/GridPlugin/TextGridNode.js +11 -0
  13. package/dist/cjs/components/basic/doc-editor/plugins/GridPlugin/TextGridNode.js.map +1 -1
  14. package/dist/cjs/components/basic/doc-editor/plugins/GridPlugin/index.vue.js +87 -13
  15. package/dist/cjs/components/basic/doc-editor/plugins/GridPlugin/index.vue.js.map +1 -1
  16. package/dist/cjs/components/basic/doc-editor/plugins/GridPlugin/utils.js +114 -7
  17. package/dist/cjs/components/basic/doc-editor/plugins/GridPlugin/utils.js.map +1 -1
  18. package/dist/cjs/components/basic/doc-editor/plugins/ImagePlugin/ImageNode.js +51 -37
  19. package/dist/cjs/components/basic/doc-editor/plugins/ImagePlugin/ImageNode.js.map +1 -1
  20. package/dist/cjs/components/basic/doc-editor/plugins/ImagePlugin/index.vue.js +3 -5
  21. package/dist/cjs/components/basic/doc-editor/plugins/ImagePlugin/index.vue.js.map +1 -1
  22. package/dist/cjs/components/basic/doc-editor/plugins/ImagePlugin/utils.js +32 -54
  23. package/dist/cjs/components/basic/doc-editor/plugins/ImagePlugin/utils.js.map +1 -1
  24. package/dist/cjs/components/basic/doc-editor/plugins/ModulePlugin/composables.js +14 -1
  25. package/dist/cjs/components/basic/doc-editor/plugins/ModulePlugin/composables.js.map +1 -1
  26. package/dist/cjs/components/basic/doc-editor/plugins/ModulePlugin/index.vue.js +40 -3
  27. package/dist/cjs/components/basic/doc-editor/plugins/ModulePlugin/index.vue.js.map +1 -1
  28. package/dist/cjs/components/basic/doc-editor/plugins/RichTextPlugin/index.vue.js.map +1 -1
  29. package/dist/cjs/components/basic/doc-editor/plugins/RichTextPlugin/nodes/RichTextNode.js +16 -16
  30. package/dist/cjs/components/basic/doc-editor/plugins/RichTextPlugin/nodes/RichTextNode.js.map +1 -1
  31. package/dist/cjs/components/basic/doc-editor/plugins/ToolbarPlugin/FontStyleTool.vue.js +8 -7
  32. package/dist/cjs/components/basic/doc-editor/plugins/ToolbarPlugin/FontStyleTool.vue.js.map +1 -1
  33. package/dist/cjs/components/basic/doc-editor/plugins/nodes.js.map +1 -1
  34. package/dist/cjs/components/basic/doc-editor/themes/doc-editor-edit.css.js +1 -1
  35. package/dist/cjs/components/basic/doc-editor/themes/doc-editor-edit.css.js.map +1 -1
  36. package/dist/cjs/components/basic/dynamic-form-panel/DynamicFormPanel.js +40 -18
  37. package/dist/cjs/components/basic/dynamic-form-panel/DynamicFormPanel.js.map +1 -1
  38. package/dist/cjs/components/basic/dynamic-form-panel/dialog.js +2 -2
  39. package/dist/cjs/components/basic/dynamic-form-panel/dialog.js.map +1 -1
  40. package/dist/cjs/components/basic/image-cropper/image-cropper-api.js.map +1 -1
  41. package/dist/cjs/components/basic/visual-page-editor/content-editable.vue.js +13 -9
  42. package/dist/cjs/components/basic/visual-page-editor/content-editable.vue.js.map +1 -1
  43. package/dist/cjs/components/basic/visual-page-editor/core/BlockRender.js +38 -0
  44. package/dist/cjs/components/basic/visual-page-editor/core/BlockRender.js.map +1 -0
  45. package/dist/cjs/components/basic/visual-page-editor/core/Dialog.js +76 -0
  46. package/dist/cjs/components/basic/visual-page-editor/core/Dialog.js.map +1 -0
  47. package/dist/cjs/components/basic/visual-page-editor/core/VisvalPageEditor.js +72 -1
  48. package/dist/cjs/components/basic/visual-page-editor/core/VisvalPageEditor.js.map +1 -1
  49. package/dist/cjs/components/basic/visual-page-editor/core/index.js +21 -13
  50. package/dist/cjs/components/basic/visual-page-editor/core/index.js.map +1 -1
  51. package/dist/cjs/components/basic/visual-page-editor/editor.vue.js +2 -29
  52. package/dist/cjs/components/basic/visual-page-editor/editor.vue.js.map +1 -1
  53. package/dist/cjs/components/basic/visual-page-editor/index.js +1 -1
  54. package/dist/cjs/components/basic/visual-page-editor/index.js.map +1 -1
  55. package/dist/cjs/components/basic/visual-page-editor/modules/BaseImageModule.js +10 -0
  56. package/dist/cjs/components/basic/visual-page-editor/modules/BaseImageModule.js.map +1 -0
  57. package/dist/cjs/components/basic/visual-page-editor/toolbar.vue.js +1 -1
  58. package/dist/cjs/components/basic/visual-page-editor/toolbar.vue.js.map +1 -1
  59. package/dist/cjs/modules/cms/cms-settings.js +4 -0
  60. package/dist/cjs/modules/cms/cms-settings.js.map +1 -1
  61. package/dist/cjs/modules/cms/pages/cms-ad/index.vue2.js +0 -1
  62. package/dist/cjs/modules/cms/pages/cms-ad/index.vue2.js.map +1 -1
  63. package/dist/cjs/modules/cms/pages/cms-contents/article-edit-add-page.vue2.js +3 -1
  64. package/dist/cjs/modules/cms/pages/cms-contents/article-edit-add-page.vue2.js.map +1 -1
  65. package/dist/cjs/modules/cms/pages/cms-contents/components/part-banner-edit.vue.js +27 -4
  66. package/dist/cjs/modules/cms/pages/cms-contents/components/part-banner-edit.vue.js.map +1 -1
  67. package/dist/cjs/modules/cms/pages/cms-settigns/DocModuleEditForm.vue.js +312 -0
  68. package/dist/cjs/modules/cms/pages/cms-settigns/DocModuleEditForm.vue.js.map +1 -0
  69. package/dist/cjs/modules/cms/pages/cms-settigns/DocModuleEditForm.vue2.js +4 -0
  70. package/dist/cjs/modules/cms/pages/cms-settigns/DocModuleEditForm.vue2.js.map +1 -0
  71. package/dist/cjs/modules/cms/pages/cms-settigns/index.vue2.js +18 -0
  72. package/dist/cjs/modules/cms/pages/cms-settigns/index.vue2.js.map +1 -1
  73. package/dist/cjs/modules/ms/components/image-select/image-select-api.js +14 -2
  74. package/dist/cjs/modules/ms/components/image-select/image-select-api.js.map +1 -1
  75. package/dist/cjs/modules/ms/image-upload-context/index.js +1 -1
  76. package/dist/cjs/modules/ms/image-upload-context/index.js.map +1 -1
  77. package/dist/esm/components/basic/doc-editor/core/element-block.js +18 -13
  78. package/dist/esm/components/basic/doc-editor/core/element-block.js.map +1 -1
  79. package/dist/esm/components/basic/doc-editor/core/utils.js +20 -13
  80. package/dist/esm/components/basic/doc-editor/core/utils.js.map +1 -1
  81. package/dist/esm/components/basic/doc-editor/editor.vue.js.map +1 -1
  82. package/dist/esm/components/basic/doc-editor/plugins/GridPlugin/GridNode.js.map +1 -1
  83. package/dist/esm/components/basic/doc-editor/plugins/GridPlugin/ImageTextGridNode.js.map +1 -1
  84. package/dist/esm/components/basic/doc-editor/plugins/GridPlugin/LayoutGridNode.js +32 -1
  85. package/dist/esm/components/basic/doc-editor/plugins/GridPlugin/LayoutGridNode.js.map +1 -1
  86. package/dist/esm/components/basic/doc-editor/plugins/GridPlugin/ModuleGridNode.js +13 -0
  87. package/dist/esm/components/basic/doc-editor/plugins/GridPlugin/ModuleGridNode.js.map +1 -1
  88. package/dist/esm/components/basic/doc-editor/plugins/GridPlugin/TextGridNode.js +11 -0
  89. package/dist/esm/components/basic/doc-editor/plugins/GridPlugin/TextGridNode.js.map +1 -1
  90. package/dist/esm/components/basic/doc-editor/plugins/GridPlugin/index.vue.js +87 -13
  91. package/dist/esm/components/basic/doc-editor/plugins/GridPlugin/index.vue.js.map +1 -1
  92. package/dist/esm/components/basic/doc-editor/plugins/GridPlugin/utils.js +114 -7
  93. package/dist/esm/components/basic/doc-editor/plugins/GridPlugin/utils.js.map +1 -1
  94. package/dist/esm/components/basic/doc-editor/plugins/ImagePlugin/ImageNode.js +52 -38
  95. package/dist/esm/components/basic/doc-editor/plugins/ImagePlugin/ImageNode.js.map +1 -1
  96. package/dist/esm/components/basic/doc-editor/plugins/ImagePlugin/index.vue.js +3 -5
  97. package/dist/esm/components/basic/doc-editor/plugins/ImagePlugin/index.vue.js.map +1 -1
  98. package/dist/esm/components/basic/doc-editor/plugins/ImagePlugin/utils.js +33 -55
  99. package/dist/esm/components/basic/doc-editor/plugins/ImagePlugin/utils.js.map +1 -1
  100. package/dist/esm/components/basic/doc-editor/plugins/ModulePlugin/composables.js +14 -1
  101. package/dist/esm/components/basic/doc-editor/plugins/ModulePlugin/composables.js.map +1 -1
  102. package/dist/esm/components/basic/doc-editor/plugins/ModulePlugin/index.vue.js +40 -3
  103. package/dist/esm/components/basic/doc-editor/plugins/ModulePlugin/index.vue.js.map +1 -1
  104. package/dist/esm/components/basic/doc-editor/plugins/RichTextPlugin/index.vue.js.map +1 -1
  105. package/dist/esm/components/basic/doc-editor/plugins/RichTextPlugin/nodes/RichTextNode.js +16 -16
  106. package/dist/esm/components/basic/doc-editor/plugins/RichTextPlugin/nodes/RichTextNode.js.map +1 -1
  107. package/dist/esm/components/basic/doc-editor/plugins/ToolbarPlugin/FontStyleTool.vue.js +11 -10
  108. package/dist/esm/components/basic/doc-editor/plugins/ToolbarPlugin/FontStyleTool.vue.js.map +1 -1
  109. package/dist/esm/components/basic/doc-editor/plugins/nodes.js.map +1 -1
  110. package/dist/esm/components/basic/doc-editor/themes/doc-editor-edit.css.js +1 -1
  111. package/dist/esm/components/basic/doc-editor/themes/doc-editor-edit.css.js.map +1 -1
  112. package/dist/esm/components/basic/dynamic-form-panel/DynamicFormPanel.js +40 -18
  113. package/dist/esm/components/basic/dynamic-form-panel/DynamicFormPanel.js.map +1 -1
  114. package/dist/esm/components/basic/dynamic-form-panel/dialog.js +2 -2
  115. package/dist/esm/components/basic/dynamic-form-panel/dialog.js.map +1 -1
  116. package/dist/esm/components/basic/image-cropper/image-cropper-api.js.map +1 -1
  117. package/dist/esm/components/basic/visual-page-editor/content-editable.vue.js +14 -10
  118. package/dist/esm/components/basic/visual-page-editor/content-editable.vue.js.map +1 -1
  119. package/dist/esm/components/basic/visual-page-editor/core/BlockRender.js +39 -0
  120. package/dist/esm/components/basic/visual-page-editor/core/BlockRender.js.map +1 -0
  121. package/dist/esm/components/basic/visual-page-editor/core/Dialog.js +76 -0
  122. package/dist/esm/components/basic/visual-page-editor/core/Dialog.js.map +1 -0
  123. package/dist/esm/components/basic/visual-page-editor/core/VisvalPageEditor.js +73 -2
  124. package/dist/esm/components/basic/visual-page-editor/core/VisvalPageEditor.js.map +1 -1
  125. package/dist/esm/components/basic/visual-page-editor/core/index.js +21 -13
  126. package/dist/esm/components/basic/visual-page-editor/core/index.js.map +1 -1
  127. package/dist/esm/components/basic/visual-page-editor/editor.vue.js +4 -31
  128. package/dist/esm/components/basic/visual-page-editor/editor.vue.js.map +1 -1
  129. package/dist/esm/components/basic/visual-page-editor/index.js +1 -1
  130. package/dist/esm/components/basic/visual-page-editor/index.js.map +1 -1
  131. package/dist/esm/components/basic/visual-page-editor/modules/BaseImageModule.js +9 -0
  132. package/dist/esm/components/basic/visual-page-editor/modules/BaseImageModule.js.map +1 -0
  133. package/dist/esm/components/basic/visual-page-editor/toolbar.vue.js +2 -2
  134. package/dist/esm/components/basic/visual-page-editor/toolbar.vue.js.map +1 -1
  135. package/dist/esm/modules/cms/cms-settings.js +4 -0
  136. package/dist/esm/modules/cms/cms-settings.js.map +1 -1
  137. package/dist/esm/modules/cms/pages/cms-ad/index.vue2.js +0 -1
  138. package/dist/esm/modules/cms/pages/cms-ad/index.vue2.js.map +1 -1
  139. package/dist/esm/modules/cms/pages/cms-contents/article-edit-add-page.vue2.js +3 -1
  140. package/dist/esm/modules/cms/pages/cms-contents/article-edit-add-page.vue2.js.map +1 -1
  141. package/dist/esm/modules/cms/pages/cms-contents/components/part-banner-edit.vue.js +27 -4
  142. package/dist/esm/modules/cms/pages/cms-contents/components/part-banner-edit.vue.js.map +1 -1
  143. package/dist/esm/modules/cms/pages/cms-settigns/DocModuleEditForm.vue.js +313 -0
  144. package/dist/esm/modules/cms/pages/cms-settigns/DocModuleEditForm.vue.js.map +1 -0
  145. package/dist/esm/modules/cms/pages/cms-settigns/DocModuleEditForm.vue2.js +5 -0
  146. package/dist/esm/modules/cms/pages/cms-settigns/DocModuleEditForm.vue2.js.map +1 -0
  147. package/dist/esm/modules/cms/pages/cms-settigns/index.vue2.js +18 -0
  148. package/dist/esm/modules/cms/pages/cms-settigns/index.vue2.js.map +1 -1
  149. package/dist/esm/modules/ms/components/image-select/image-select-api.js +14 -2
  150. package/dist/esm/modules/ms/components/image-select/image-select-api.js.map +1 -1
  151. package/dist/esm/modules/ms/image-upload-context/index.js +1 -1
  152. package/dist/esm/modules/ms/image-upload-context/index.js.map +1 -1
  153. package/dist/style/components/basic/visual-page-editor/index.css +1 -1
  154. package/dist/style/components/index.css +1 -1
  155. package/dist/style/index.css +1 -1
  156. package/dist/style/src/components/basic/visual-page-editor/index.scss +4 -2
  157. package/dist/types/components/basic/doc-editor/core/element-block.d.ts +1 -0
  158. package/dist/types/components/basic/doc-editor/core/utils.d.ts +2 -2
  159. package/dist/types/components/basic/doc-editor/plugins/GridPlugin/ImageTextGridNode.d.ts +1 -1
  160. package/dist/types/components/basic/doc-editor/plugins/GridPlugin/LayoutGridNode.d.ts +16 -2
  161. package/dist/types/components/basic/doc-editor/plugins/GridPlugin/ModuleGridNode.d.ts +7 -1
  162. package/dist/types/components/basic/doc-editor/plugins/ImagePlugin/ImageNode.d.ts +25 -12
  163. package/dist/types/components/basic/doc-editor/plugins/ModulePlugin/composables.d.ts +5 -0
  164. package/dist/types/components/basic/doc-editor/utils/getSelectedNode.d.ts +1 -1
  165. package/dist/types/components/basic/dynamic-form-panel/type.d.ts +1 -0
  166. package/dist/types/components/basic/visual-page-editor/core/Dialog.d.ts +15 -0
  167. package/dist/types/components/basic/visual-page-editor/core/ModuleDefine.d.ts +12 -0
  168. package/dist/types/components/basic/visual-page-editor/core/VisvalPageEditor.d.ts +45 -1
  169. package/dist/types/components/basic/visual-page-editor/core/index.d.ts +2 -10
  170. package/dist/types/components/basic/visual-page-editor/editor.vue.d.ts +1 -0
  171. package/dist/types/components/basic/visual-page-editor/index.d.ts +2 -1
  172. package/dist/types/components/basic/visual-page-editor/modules/index.d.ts +1 -0
  173. package/dist/types/modules/cms/cms-settings.d.ts +4 -28
  174. package/dist/types/modules/cms/pages/cms-settigns/DocModuleEditForm.vue.d.ts +45 -0
  175. package/dist/types/modules/ms/components/image-select/image-select-api.d.ts +1 -1
  176. package/dist/types/modules/ms/image-upload-context/index.d.ts +1 -1
  177. package/package.json +7 -6
  178. package/dist/cjs/components/basic/visual-page-editor/components/BlockRender.js +0 -31
  179. package/dist/cjs/components/basic/visual-page-editor/components/BlockRender.js.map +0 -1
  180. package/dist/cjs/components/basic/visual-page-editor/utils/Dialog.js +0 -111
  181. package/dist/cjs/components/basic/visual-page-editor/utils/Dialog.js.map +0 -1
  182. package/dist/cjs/components/basic/visual-page-editor/visual-components/ImageRenderComponent.js +0 -29
  183. package/dist/cjs/components/basic/visual-page-editor/visual-components/ImageRenderComponent.js.map +0 -1
  184. package/dist/esm/components/basic/visual-page-editor/components/BlockRender.js +0 -32
  185. package/dist/esm/components/basic/visual-page-editor/components/BlockRender.js.map +0 -1
  186. package/dist/esm/components/basic/visual-page-editor/utils/Dialog.js +0 -111
  187. package/dist/esm/components/basic/visual-page-editor/utils/Dialog.js.map +0 -1
  188. package/dist/esm/components/basic/visual-page-editor/visual-components/ImageRenderComponent.js +0 -28
  189. package/dist/esm/components/basic/visual-page-editor/visual-components/ImageRenderComponent.js.map +0 -1
  190. package/dist/types/components/basic/visual-page-editor/core/RenderComponent.d.ts +0 -16
  191. package/dist/types/components/basic/visual-page-editor/utils/Dialog.d.ts +0 -15
  192. package/dist/types/components/basic/visual-page-editor/visual-components/index.d.ts +0 -1
  193. /package/dist/types/components/basic/visual-page-editor/{components → core}/BlockRender.d.ts +0 -0
  194. /package/dist/types/components/basic/visual-page-editor/{visual-components/ImageRenderComponent.d.ts → modules/BaseImageModule.d.ts} +0 -0
@@ -1,5 +1,6 @@
1
- import type { DOMConversionMap, DOMExportOutput, EditorConfig, LexicalNode, NodeKey, Spread, SerializedTextNode } from 'lexical';
2
- import { TextNode } from 'lexical';
1
+ import type { DOMConversionMap, DOMExportOutput, EditorConfig, LexicalNode, NodeKey, Spread, SerializedLexicalNode, LexicalEditor } from 'lexical';
2
+ import { DecoratorNode } from 'lexical';
3
+ import { Component } from 'vue';
3
4
  /**
4
5
  * 图片属性类型
5
6
  */
@@ -18,11 +19,11 @@ export type ImageAttrType = {
18
19
  */
19
20
  export type SerializedImageNode = Spread<{
20
21
  attrs: ImageAttrType;
21
- }, SerializedTextNode>;
22
+ }, SerializedLexicalNode>;
22
23
  /**
23
24
  * 定义图片节点
24
25
  */
25
- export declare class ImageNode extends TextNode {
26
+ export declare class ImageNode extends DecoratorNode<Component | null> {
26
27
  __attrs: ImageAttrType;
27
28
  static getType(): string;
28
29
  static clone(node: ImageNode): ImageNode;
@@ -32,15 +33,30 @@ export declare class ImageNode extends TextNode {
32
33
  exportJSON(): SerializedImageNode;
33
34
  getStyles(): string[];
34
35
  exportDOM(): DOMExportOutput;
36
+ /**
37
+ * 更新元素属性
38
+ * @param el
39
+ */
40
+ updateElementAttr(element: HTMLElement): void;
41
+ /**
42
+ * 更新DOM
43
+ * @param prevNode
44
+ * @param dom
45
+ * @param config
46
+ * @returns
47
+ */
48
+ updateDOM(prevNode: ImageNode, el: HTMLElement, config: EditorConfig): boolean;
35
49
  createDOM(config: EditorConfig): HTMLElement;
36
- updateDOM(prevNode: ImageNode, dom: HTMLElement, config: EditorConfig): boolean;
37
- canHaveFormat(): boolean;
38
- isToken(): boolean;
50
+ decorate(editor: LexicalEditor, config: EditorConfig): Component | null;
39
51
  /**
40
52
  * 设置属性
41
53
  * @param pos
42
54
  */
43
55
  setAttrs(data?: any): void;
56
+ isEmpty(): boolean;
57
+ isIsolated(): boolean;
58
+ isInline(): boolean;
59
+ isKeyboardSelectable(): boolean;
44
60
  }
45
61
  /**
46
62
  * 定义内联图片节点
@@ -51,11 +67,8 @@ export declare class InlineImageNode extends ImageNode {
51
67
  static importJSON(serializedNode: SerializedImageNode): ImageNode;
52
68
  static importDOM(): DOMConversionMap | null;
53
69
  constructor(attrs: ImageAttrType, key?: NodeKey);
54
- /**
55
- * 非内联元素
56
- * @returns
57
- */
58
- isInline(): boolean;
70
+ exportJSON(): SerializedImageNode;
71
+ decorate(editor: LexicalEditor, config: EditorConfig): Component | null;
59
72
  }
60
73
  /**
61
74
  * 创建图片节点
@@ -19,6 +19,11 @@ export declare const Modules: ModuleType[];
19
19
  * @param options
20
20
  */
21
21
  export declare const registerDocModule: (options: ModuleType) => void;
22
+ /**
23
+ * 卸载模块
24
+ * @param name
25
+ */
26
+ export declare const unRegisterDocModule: (name: string) => void;
22
27
  /**
23
28
  *
24
29
  * @param name
@@ -1,2 +1,2 @@
1
1
  import type { RangeSelection } from 'lexical';
2
- export declare function getSelectedNode(selection: RangeSelection): import("lexical").TextNode | import("lexical").ElementNode;
2
+ export declare function getSelectedNode(selection: RangeSelection): import("lexical").ElementNode | import("lexical").TextNode;
@@ -8,4 +8,5 @@ export type DynamicFormItemType = {
8
8
  component: string | Component;
9
9
  props: object | any;
10
10
  defaultValue: any;
11
+ condition?: ((item: any) => boolean) | undefined | null;
11
12
  };
@@ -0,0 +1,15 @@
1
+ import { ModuleType } from "./ModuleDefine";
2
+ /**
3
+ *
4
+ * @param data
5
+ * @param props
6
+ * @returns
7
+ */
8
+ export declare const showEditPanel: (moduleOptons: ModuleType, props: any) => Promise<unknown>;
9
+ /**
10
+ *
11
+ * @param data
12
+ * @param props
13
+ * @returns
14
+ */
15
+ export declare const showModuleSelectPanel: () => Promise<unknown>;
@@ -0,0 +1,12 @@
1
+ import { type Component, type VNode } from "vue";
2
+ import { DynamicFormItemType } from "../../dynamic-form-panel";
3
+ /**
4
+ * 模块类型
5
+ */
6
+ export type ModuleType = {
7
+ name: string;
8
+ title: string;
9
+ group: 'base' | 'business' | 'custom';
10
+ component: Component | ((props: unknown) => VNode);
11
+ options: DynamicFormItemType[];
12
+ };
@@ -1,11 +1,50 @@
1
+ import { DynamicFormItemType } from "../../dynamic-form-panel";
1
2
  import { type ContentConfigType, type ContentBlockType } from "./ContentConfig";
3
+ import { ModuleType } from "./ModuleDefine";
4
+ import { Component, VNode } from "vue";
2
5
  /**
3
6
  * 页面编辑器
4
7
  */
5
8
  export default class VisualPageEditor {
6
9
  _version: string;
7
10
  _content: ContentConfigType | null;
11
+ _modules: ModuleType[];
8
12
  constructor();
13
+ /**
14
+ * 模块列表
15
+ */
16
+ get baseModuleList(): ModuleType[];
17
+ get businessModuleList(): ModuleType[];
18
+ get customModuleList(): ModuleType[];
19
+ /**
20
+ * 注册基础模块
21
+ * @param name
22
+ * @param title
23
+ * @param component
24
+ * @param options
25
+ */
26
+ registerBaseModule(name: string, title: string, component: Component | ((props: unknown) => VNode), options: DynamicFormItemType[]): void;
27
+ /**
28
+ * 注册业务模块
29
+ * @param name
30
+ * @param title
31
+ * @param component
32
+ * @param options
33
+ */
34
+ registerBusinessModule(name: string, title: string, component: Component | ((props: unknown) => VNode), options: DynamicFormItemType[]): void;
35
+ /**
36
+ * 注册自定义模块
37
+ * @param name
38
+ * @param title
39
+ * @param component
40
+ * @param options
41
+ */
42
+ registerCustomModule(name: string, title: string, component: Component | ((props: unknown) => VNode), options: DynamicFormItemType[]): void;
43
+ /**
44
+ * 查找
45
+ * @param name
46
+ */
47
+ findModule(name: string): ModuleType | null | undefined;
9
48
  /**
10
49
  * 内容大小
11
50
  * @returns
@@ -31,7 +70,12 @@ export default class VisualPageEditor {
31
70
  * 获取内容
32
71
  * @returns
33
72
  */
34
- get(index: any): ContentBlockType;
73
+ get(index: number): ContentBlockType;
74
+ /**
75
+ * 获取内容
76
+ * @returns
77
+ */
78
+ edit(index: number, data: object): void;
35
79
  /**
36
80
  * 获取内容
37
81
  * @returns
@@ -1,18 +1,10 @@
1
- import { RenderComponentType } from "./RenderComponent";
2
1
  import VisualPageEditor from "./VisvalPageEditor";
2
+ export * from "./Dialog";
3
3
  /**
4
4
  *
5
5
  * @returns
6
6
  */
7
- export declare const useRenderComponent: () => {
8
- RenderComponents: import("vue").ShallowReactive<RenderComponentType[]>;
9
- RegisterRenderComponent: (options: RenderComponentType) => void;
10
- };
11
- /**
12
- *
13
- * @returns
14
- */
15
- export declare const usePageEditor: () => {
7
+ export declare const useVisualPageEditor: () => {
16
8
  PageEditor: import("vue").ShallowReactive<VisualPageEditor>;
17
9
  ViewDevice: import("vue").Ref<string>;
18
10
  };
@@ -1,5 +1,6 @@
1
1
  declare function __VLS_template(): {
2
2
  toolbar?(_: {}): any;
3
+ "extra-panel"?(_: {}): any;
3
4
  };
4
5
  declare const __VLS_component: import("vue").DefineComponent<{
5
6
  device: {
@@ -1,4 +1,4 @@
1
- import "./visual-components";
1
+ import "./modules";
2
2
  export declare const MKVisualPageEditor: import("@maketribe/utils").SFCWithInstall<{
3
3
  new (...args: any[]): import("vue").CreateComponentPublicInstance<Readonly<import("vue").ExtractPropTypes<{
4
4
  device: {
@@ -40,6 +40,7 @@ export declare const MKVisualPageEditor: import("@maketribe/utils").SFCWithInsta
40
40
  }, {}, string, {}> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & (new () => {
41
41
  $slots: {
42
42
  toolbar?(_: {}): any;
43
+ "extra-panel"?(_: {}): any;
43
44
  };
44
45
  })> & Record<string, any>;
45
46
  export default MKVisualPageEditor;
@@ -0,0 +1 @@
1
+ import "./BaseImageModule";
@@ -1,3 +1,4 @@
1
+ import { ModuleType } from "../../components/basic/doc-editor/plugins/ModulePlugin/composables";
1
2
  /**
2
3
  * 发布配置
3
4
  */
@@ -63,8 +64,9 @@ type ContentSettings = {
63
64
  /**
64
65
  * cms 系统设置
65
66
  */
66
- export type CmsSettings = {
67
+ export type CmsSettingsType = {
67
68
  publish: PublishSettings;
69
+ docModules: Array<ModuleType>;
68
70
  part: PartSettings;
69
71
  content: ContentSettings;
70
72
  };
@@ -76,31 +78,5 @@ export declare const CmsSettingsKEY = "cms:content:man:settings";
76
78
  * 使用cms配置
77
79
  * @param load
78
80
  */
79
- export declare const useCmsSettings: (load?: boolean | undefined) => {
80
- publish: {
81
- mode: "static" | "dynamic";
82
- };
83
- part: {
84
- doc: {
85
- css: string;
86
- js: string;
87
- };
88
- openBanner: boolean;
89
- bannerImageSize: string;
90
- };
91
- content: {
92
- doc: {
93
- css: string;
94
- js: string;
95
- };
96
- useTop: boolean;
97
- useNew: boolean;
98
- useHotRecommend: boolean;
99
- usePartRecommend: boolean;
100
- useTags: boolean;
101
- useAtlas: boolean;
102
- coverImageSize: string;
103
- bannerImageSize: string;
104
- };
105
- };
81
+ export declare const useCmsSettings: (load?: boolean | undefined) => CmsSettingsType;
106
82
  export {};
@@ -0,0 +1,45 @@
1
+ import { ModuleType } from "../../../../components/basic/doc-editor/plugins/ModulePlugin/composables";
2
+ declare const _default: import("vue").DefineComponent<{
3
+ modules: {
4
+ type: {
5
+ (arrayLength: number): ModuleType[];
6
+ (...items: ModuleType[]): ModuleType[];
7
+ new (arrayLength: number): ModuleType[];
8
+ new (...items: ModuleType[]): ModuleType[];
9
+ isArray(arg: any): arg is any[];
10
+ readonly prototype: any[];
11
+ from<T>(arrayLike: ArrayLike<T>): T[];
12
+ from<T, U>(arrayLike: ArrayLike<T>, mapfn: (v: T, k: number) => U, thisArg?: any): U[];
13
+ from<T>(iterable: Iterable<T> | ArrayLike<T>): T[];
14
+ from<T, U>(iterable: Iterable<T> | ArrayLike<T>, mapfn: (v: T, k: number) => U, thisArg?: any): U[];
15
+ of<T>(...items: T[]): T[];
16
+ fromAsync<T>(iterableOrArrayLike: AsyncIterable<T> | Iterable<T | PromiseLike<T>> | ArrayLike<T | PromiseLike<T>>): Promise<T[]>;
17
+ fromAsync<T, U>(iterableOrArrayLike: AsyncIterable<T> | Iterable<T> | ArrayLike<T>, mapFn: (value: Awaited<T>) => U, thisArg?: any): Promise<Awaited<U>[]>;
18
+ readonly [Symbol.species]: ArrayConstructor;
19
+ };
20
+ default(): never[];
21
+ };
22
+ }, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
23
+ modules: {
24
+ type: {
25
+ (arrayLength: number): ModuleType[];
26
+ (...items: ModuleType[]): ModuleType[];
27
+ new (arrayLength: number): ModuleType[];
28
+ new (...items: ModuleType[]): ModuleType[];
29
+ isArray(arg: any): arg is any[];
30
+ readonly prototype: any[];
31
+ from<T>(arrayLike: ArrayLike<T>): T[];
32
+ from<T, U>(arrayLike: ArrayLike<T>, mapfn: (v: T, k: number) => U, thisArg?: any): U[];
33
+ from<T>(iterable: Iterable<T> | ArrayLike<T>): T[];
34
+ from<T, U>(iterable: Iterable<T> | ArrayLike<T>, mapfn: (v: T, k: number) => U, thisArg?: any): U[];
35
+ of<T>(...items: T[]): T[];
36
+ fromAsync<T>(iterableOrArrayLike: AsyncIterable<T> | Iterable<T | PromiseLike<T>> | ArrayLike<T | PromiseLike<T>>): Promise<T[]>;
37
+ fromAsync<T, U>(iterableOrArrayLike: AsyncIterable<T> | Iterable<T> | ArrayLike<T>, mapFn: (value: Awaited<T>) => U, thisArg?: any): Promise<Awaited<U>[]>;
38
+ readonly [Symbol.species]: ArrayConstructor;
39
+ };
40
+ default(): never[];
41
+ };
42
+ }>>, {
43
+ modules: ModuleType[];
44
+ }, {}>;
45
+ export default _default;
@@ -2,4 +2,4 @@ export type MKImageSelectResult = {
2
2
  success: boolean;
3
3
  path: string;
4
4
  };
5
- export default function ImageSelect(cutWidth?: number, cutHeight?: number): Promise<MKImageSelectResult>;
5
+ export default function ImageSelect(cutWidth?: number, cutHeight?: number, isCut?: boolean): Promise<MKImageSelectResult>;
@@ -9,5 +9,5 @@ export declare class ImageUploadContext extends UploadContext {
9
9
  * @param cutSise 裁切尺寸
10
10
  */
11
11
  constructor(cutSise?: string);
12
- selectFile(): Promise<UploadResult>;
12
+ selectFile(isCut?: boolean): Promise<UploadResult>;
13
13
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@maketribe/ms-app",
3
- "version": "3.2.26",
3
+ "version": "3.2.27",
4
4
  "description": "",
5
5
  "main": "dist/cjs",
6
6
  "module": "dist/esm",
@@ -13,15 +13,13 @@
13
13
  "license": "ISC",
14
14
  "dependencies": {
15
15
  "@codemirror/commands": "^6.3.3",
16
+ "@codemirror/lang-css": "^6.2.1",
16
17
  "@codemirror/lang-html": "^6.4.9",
17
18
  "@codemirror/lang-json": "^6.0.1",
18
19
  "@codemirror/language": "^6.10.1",
19
20
  "@codemirror/state": "^6.4.1",
20
21
  "@codemirror/view": "^6.26.1",
21
22
  "@element-plus/icons-vue": "^2.1.0",
22
- "@tinymce/tinymce-vue": "^5.1.1",
23
- "element-plus": "^2.7.3",
24
- "lexical-vue": "^0.9.0",
25
23
  "@lexical/clipboard": "~0.16.1",
26
24
  "@lexical/code": "~0.16.1",
27
25
  "@lexical/dragon": "~0.16.1",
@@ -40,10 +38,13 @@
40
38
  "@lexical/text": "~0.16.1",
41
39
  "@lexical/utils": "~0.16.1",
42
40
  "@lexical/yjs": "~0.16.1",
41
+ "@tinymce/tinymce-vue": "^5.1.1",
42
+ "element-plus": "^2.7.3",
43
43
  "lexical": "~0.16.1",
44
- "tiny-invariant": "^1.3.3",
44
+ "lexical-vue": "^0.9.0",
45
45
  "lodash-es": "^4.17.21",
46
46
  "sortablejs": "^1.15.2",
47
+ "tiny-invariant": "^1.3.3",
47
48
  "tinymce": "^7.1.1",
48
49
  "ufo": "^1.3.1",
49
50
  "vditor": "^3.9.6",
@@ -51,8 +52,8 @@
51
52
  "vue-codemirror": "^6.1.1",
52
53
  "vue-cropper": "^1.1.4",
53
54
  "vue-router": "^4.2.4",
54
- "@maketribe/locale": "^3.2.0",
55
55
  "@maketribe/dm": "^3.2.11",
56
+ "@maketribe/locale": "^3.2.0",
56
57
  "@maketribe/request": "^3.2.3",
57
58
  "@maketribe/utils": "^3.2.1"
58
59
  },
@@ -1,31 +0,0 @@
1
- "use strict";
2
- const vue = require("vue");
3
- const index = require("../core/index.js");
4
- const BlockRender = vue.defineComponent({
5
- name: "BlockRender",
6
- emits: ["click"],
7
- props: {
8
- node: { type: Object },
9
- parent: { type: Object },
10
- index: { type: Number },
11
- active: { type: Boolean }
12
- },
13
- setup: (props, { emit }) => {
14
- const { RenderComponents } = index.useRenderComponent();
15
- return () => {
16
- const content = props.node;
17
- const renderComponent = RenderComponents.find((item) => item.name == content.componentInfo);
18
- return vue.h("div", { class: "mk-visual-page-editor__stage_block" }, [
19
- vue.h(renderComponent == null ? void 0 : renderComponent.component, content.componentProps),
20
- vue.h("div", {
21
- class: { "mk-visual-page-editor__stage_block_mask": true, active: props.active },
22
- onClick: (ev) => {
23
- emit("click", { node: content, options: renderComponent, index: props.index, parent: props.parent, event: ev });
24
- }
25
- })
26
- ]);
27
- };
28
- }
29
- });
30
- module.exports = BlockRender;
31
- //# sourceMappingURL=BlockRender.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"BlockRender.js","sources":["../../../../../../src/components/basic/visual-page-editor/components/BlockRender.ts"],"sourcesContent":["import { defineComponent,defineProps,defineEmits,computed,ref,onMounted,watch,h } from \"vue\"\r\nimport { ContentBlockType } from \"../core/ContentConfig\"\r\nimport { useRenderComponent } from \"../core\"\r\n\r\nexport default defineComponent({\r\n name:\"BlockRender\",\r\n emits:[\"click\"],\r\n props:{\r\n node:{type:Object},\r\n parent:{type:Object},\r\n index:{type:Number},\r\n active:{type:Boolean}\r\n },\r\n setup:(props,{ emit })=>{\r\n\r\n const { RenderComponents } = useRenderComponent();\r\n\r\n return ()=>{\r\n\r\n const content = props.node as ContentBlockType;\r\n const renderComponent = RenderComponents.find(item=>item.name == content.componentInfo);\r\n\r\n return h(\"div\",{class:\"mk-visual-page-editor__stage_block\"},[\r\n h(renderComponent?.component as any,content.componentProps),\r\n h(\"div\",{ \r\n class:{\"mk-visual-page-editor__stage_block_mask\":true,active:props.active},\r\n onClick:ev=>{\r\n emit(\"click\",{ node:content,options:renderComponent,index:props.index,parent:props.parent,event:ev })\r\n }\r\n })\r\n ])\r\n }\r\n }\r\n});\r\n"],"names":["defineComponent","useRenderComponent","h"],"mappings":";;;AAIA,MAAA,cAAeA,oBAAgB;AAAA,EAC7B,MAAK;AAAA,EACL,OAAM,CAAC,OAAO;AAAA,EACd,OAAM;AAAA,IACJ,MAAK,EAAC,MAAK,OAAM;AAAA,IACjB,QAAO,EAAC,MAAK,OAAM;AAAA,IACnB,OAAM,EAAC,MAAK,OAAM;AAAA,IAClB,QAAO,EAAC,MAAK,QAAO;AAAA,EACtB;AAAA,EACA,OAAM,CAAC,OAAM,EAAE,WAAS;AAEhB,UAAA,EAAE,qBAAqBC,MAAAA;AAE7B,WAAO,MAAI;AAET,YAAM,UAAU,MAAM;AACtB,YAAM,kBAAkB,iBAAiB,KAAK,UAAM,KAAK,QAAQ,QAAQ,aAAa;AAEtF,aAAOC,IAAE,EAAA,OAAM,EAAC,OAAM,wCAAsC;AAAA,QAC1DA,IAAAA,EAAE,mDAAiB,WAAiB,QAAQ,cAAc;AAAA,QAC1DA,IAAAA,EAAE,OAAM;AAAA,UACN,OAAM,EAAC,2CAA0C,MAAK,QAAO,MAAM,OAAM;AAAA,UACzE,SAAQ,CAAI,OAAA;AACV,iBAAK,SAAQ,EAAE,MAAK,SAAQ,SAAQ,iBAAgB,OAAM,MAAM,OAAM,QAAO,MAAM,QAAO,OAAM,IAAI;AAAA,UACtG;AAAA,QAAA,CACD;AAAA,MAAA,CACF;AAAA,IAAA;AAAA,EAEL;AACF,CAAC;;"}
@@ -1,111 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const vue = require("vue");
4
- const dm = require("@maketribe/dm");
5
- const elementPlus = require("element-plus");
6
- require("../core/index.js");
7
- const ShowEditPanel = async (componentOptions, props) => {
8
- return new Promise((resolve) => {
9
- const isAdd = props == null;
10
- if (isAdd) {
11
- props = {};
12
- componentOptions.options.forEach((item) => {
13
- props[item.name] = item.defaultValue;
14
- });
15
- }
16
- const propsReactive = vue.reactive(props);
17
- const handleCancelClick = () => {
18
- dialogInstance.destroy();
19
- };
20
- const handleConfirmClick = () => {
21
- dialogInstance.destroy();
22
- resolve(props);
23
- };
24
- const dialogInstance = dm.Dialoger.customRender({
25
- title: isAdd ? `添加${componentOptions.desc}` : `编辑${componentOptions.desc}`,
26
- class: "mk-html-editor-dialog",
27
- width: "70%",
28
- onClose: () => {
29
- dialogInstance.destroy();
30
- },
31
- body: () => {
32
- return vue.h(elementPlus.ElForm, {
33
- labelPosition: "top",
34
- model: propsReactive,
35
- labelWidth: "auto"
36
- }, componentOptions.options.map((item) => {
37
- const component = typeof item.component == "string" ? vue.resolveComponent(item.component) : item.component;
38
- return vue.h(elementPlus.ElFormItem, {
39
- label: item.desc,
40
- prop: item.name
41
- }, [vue.h(component, {
42
- ...item.props,
43
- modelValue: propsReactive[item.name],
44
- "update:modelValue": (v) => propsReactive[item.name] = v
45
- })]);
46
- }));
47
- },
48
- footer: () => {
49
- return vue.createVNode(vue.Fragment, null, [vue.createVNode(elementPlus.ElButton, {
50
- "onClick": handleCancelClick
51
- }, {
52
- default: () => [vue.createTextVNode("取消")]
53
- }), vue.createVNode(elementPlus.ElButton, {
54
- "type": "primary",
55
- "onClick": handleConfirmClick
56
- }, {
57
- default: () => [vue.createTextVNode("确定")]
58
- })]);
59
- }
60
- });
61
- });
62
- };
63
- const ShowComponentSelectPanel = async () => {
64
- return new Promise((resolve) => {
65
- const selectComponentOption = vue.ref(null);
66
- const handleCancelClick = () => {
67
- dialogInstance.destroy();
68
- };
69
- const handleConfirmClick = () => {
70
- dialogInstance.destroy();
71
- resolve(selectComponentOption.value);
72
- };
73
- const dialogInstance = dm.Dialoger.customRender({
74
- title: "组件库",
75
- class: "mk-html-editor-dialog",
76
- width: "70%",
77
- onClose: () => {
78
- dialogInstance.destroy();
79
- },
80
- body: () => {
81
- return vue.createVNode("div", null, [vue.createVNode(elementPlus.ElInput, null, null), vue.createVNode(elementPlus.ElCollapse, null, {
82
- default: () => [vue.createVNode(elementPlus.ElCollapseItem, {
83
- "title": "基础组件",
84
- "name": "base"
85
- }, null), vue.createVNode(elementPlus.ElCollapseItem, {
86
- "title": "业务组件",
87
- "name": "business"
88
- }, null), vue.createVNode(elementPlus.ElCollapseItem, {
89
- "title": "自定义组件",
90
- "name": "custom"
91
- }, null)]
92
- })]);
93
- },
94
- footer: () => {
95
- return vue.createVNode(vue.Fragment, null, [vue.createVNode(elementPlus.ElButton, {
96
- "onClick": handleCancelClick
97
- }, {
98
- default: () => [vue.createTextVNode("取消")]
99
- }), vue.createVNode(elementPlus.ElButton, {
100
- "type": "primary",
101
- "onClick": handleConfirmClick
102
- }, {
103
- default: () => [vue.createTextVNode("确定")]
104
- })]);
105
- }
106
- });
107
- });
108
- };
109
- exports.ShowComponentSelectPanel = ShowComponentSelectPanel;
110
- exports.ShowEditPanel = ShowEditPanel;
111
- //# sourceMappingURL=Dialog.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Dialog.js","sources":["../../../../../../src/components/basic/visual-page-editor/utils/Dialog.tsx"],"sourcesContent":["\r\nimport { Fragment, ref, unref, resolveComponent, h, reactive } from 'vue'\r\nimport { Dialoger } from '@maketribe/dm'\r\nimport { ElButton, ElForm, ElFormItem, ElCollapse, ElCollapseItem, ElInput } from \"element-plus\";\r\nimport { RenderComponentType } from \"../core/RenderComponent\"\r\nimport { useRenderComponent } from \"../core\"\r\n\r\n/**\r\n * \r\n * @param data \r\n * @param props \r\n * @returns \r\n */\r\nexport const ShowEditPanel = async (componentOptions: RenderComponentType, props: any) => {\r\n return new Promise(resolve => {\r\n\r\n const isAdd = props == null;\r\n\r\n // 新增的话\r\n if (isAdd) {\r\n props = {};\r\n componentOptions.options.forEach(item => { props[item.name] = item.defaultValue })\r\n }\r\n\r\n const propsReactive = reactive(props)\r\n\r\n // 取消编辑\r\n const handleCancelClick = () => {\r\n dialogInstance.destroy();\r\n };\r\n\r\n // 确认编辑\r\n const handleConfirmClick = () => {\r\n dialogInstance.destroy();\r\n resolve(props);\r\n };\r\n\r\n const dialogInstance = Dialoger.customRender({\r\n title: isAdd ? `添加${componentOptions.desc}` : `编辑${componentOptions.desc}`,\r\n class: \"mk-html-editor-dialog\",\r\n width: \"70%\",\r\n onClose: () => {\r\n dialogInstance.destroy();\r\n },\r\n body: () => {\r\n return h(ElForm, { labelPosition: \"top\", model: propsReactive, labelWidth: \"auto\" }, componentOptions.options.map(item => {\r\n const component = typeof item.component == \"string\" ? resolveComponent(item.component) : item.component;\r\n return h(ElFormItem, { label: item.desc, prop: item.name }, [\r\n h(component, {\r\n ...item.props,\r\n modelValue: propsReactive[item.name],\r\n \"update:modelValue\": (v: any) => propsReactive[item.name] = v\r\n })\r\n ])\r\n }))\r\n\r\n },\r\n footer: () => {\r\n return <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\r\n/**\r\n * \r\n * @param data \r\n * @param props \r\n * @returns \r\n */\r\nexport const ShowComponentSelectPanel = async () => {\r\n return new Promise(resolve => {\r\n\r\n const { RenderComponents } = useRenderComponent();\r\n\r\n const selectComponentOption = ref(null);\r\n\r\n // 取消编辑\r\n const handleCancelClick = () => {\r\n dialogInstance.destroy();\r\n };\r\n\r\n // 确认编辑\r\n const handleConfirmClick = () => {\r\n dialogInstance.destroy();\r\n resolve(selectComponentOption.value);\r\n };\r\n\r\n const dialogInstance = Dialoger.customRender({\r\n title: \"组件库\",\r\n class: \"mk-html-editor-dialog\",\r\n width: \"70%\",\r\n onClose: () => {\r\n dialogInstance.destroy();\r\n },\r\n body: () => {\r\n return <div>\r\n <ElInput />\r\n <ElCollapse>\r\n <ElCollapseItem title=\"基础组件\" name=\"base\">\r\n\r\n </ElCollapseItem>\r\n <ElCollapseItem title=\"业务组件\" name=\"business\">\r\n\r\n </ElCollapseItem>\r\n <ElCollapseItem title=\"自定义组件\" name=\"custom\">\r\n\r\n </ElCollapseItem>\r\n </ElCollapse>\r\n </div>\r\n },\r\n footer: () => {\r\n return <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"],"names":["ShowEditPanel","componentOptions","props","Promise","resolve","isAdd","options","forEach","item","name","defaultValue","propsReactive","reactive","handleCancelClick","dialogInstance","destroy","handleConfirmClick","Dialoger","customRender","title","desc","class","width","onClose","body","h","ElForm","labelPosition","model","labelWidth","map","component","resolveComponent","ElFormItem","label","prop","modelValue","v","footer","_createVNode","_Fragment","ElButton","default","_createTextVNode","ShowComponentSelectPanel","selectComponentOption","ref","value","ElInput","ElCollapse","ElCollapseItem"],"mappings":"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"}
@@ -1,29 +0,0 @@
1
- "use strict";
2
- const vue = require("vue");
3
- const index = require("../core/index.js");
4
- const { RegisterRenderComponent } = index.useRenderComponent();
5
- const ImageComponent = vue.defineComponent({
6
- name: "vp-image",
7
- props: ["src"],
8
- setup(props) {
9
- return () => {
10
- return vue.h("img", { src: props.src, style: { width: "100%" } });
11
- };
12
- }
13
- });
14
- RegisterRenderComponent({
15
- name: ImageComponent.name,
16
- desc: "图片",
17
- group: "base",
18
- component: ImageComponent,
19
- options: [
20
- {
21
- name: "src",
22
- desc: "图片路径",
23
- component: "MKImageSelect",
24
- defaultValue: {},
25
- props: {}
26
- }
27
- ]
28
- });
29
- //# sourceMappingURL=ImageRenderComponent.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ImageRenderComponent.js","sources":["../../../../../../src/components/basic/visual-page-editor/visual-components/ImageRenderComponent.ts"],"sourcesContent":["\r\nimport { defineComponent, h } from \"vue\";\r\nimport { useRenderComponent } from \"../core\"\r\n\r\n\r\nconst { RegisterRenderComponent } = useRenderComponent();\r\nconst ImageComponent = defineComponent({\r\n name: \"vp-image\",\r\n props: [\"src\"],\r\n setup(props) {\r\n return () => {\r\n return h(\"img\", { src: props.src, style: { width: \"100%\" } })\r\n }\r\n }\r\n})\r\n\r\n// 注册图片\r\nRegisterRenderComponent({\r\n name: ImageComponent.name!,\r\n desc: \"图片\",\r\n group: \"base\",\r\n component: ImageComponent,\r\n options: [\r\n {\r\n name: \"src\",\r\n desc: \"图片路径\",\r\n component: \"MKImageSelect\",\r\n defaultValue: {},\r\n props: {}\r\n }\r\n ]\r\n})\r\n"],"names":["useRenderComponent","defineComponent","h"],"mappings":";;;AAKA,MAAM,EAAE,wBAAwB,IAAIA,MAAAA;AACpC,MAAM,iBAAiBC,IAAAA,gBAAgB;AAAA,EACrC,MAAM;AAAA,EACN,OAAO,CAAC,KAAK;AAAA,EACb,MAAM,OAAO;AACX,WAAO,MAAM;AACJ,aAAAC,MAAE,OAAO,EAAE,KAAK,MAAM,KAAK,OAAO,EAAE,OAAO,OAAO,EAAG,CAAA;AAAA,IAAA;AAAA,EAEhE;AACF,CAAC;AAGD,wBAAwB;AAAA,EACtB,MAAM,eAAe;AAAA,EACrB,MAAM;AAAA,EACN,OAAO;AAAA,EACP,WAAW;AAAA,EACX,SAAS;AAAA,IACP;AAAA,MACE,MAAM;AAAA,MACN,MAAM;AAAA,MACN,WAAW;AAAA,MACX,cAAc,CAAC;AAAA,MACf,OAAO,CAAC;AAAA,IACV;AAAA,EACF;AACF,CAAC;"}
@@ -1,32 +0,0 @@
1
- import { defineComponent, h } from "vue";
2
- import { useRenderComponent } from "../core/index.js";
3
- const BlockRender = defineComponent({
4
- name: "BlockRender",
5
- emits: ["click"],
6
- props: {
7
- node: { type: Object },
8
- parent: { type: Object },
9
- index: { type: Number },
10
- active: { type: Boolean }
11
- },
12
- setup: (props, { emit }) => {
13
- const { RenderComponents } = useRenderComponent();
14
- return () => {
15
- const content = props.node;
16
- const renderComponent = RenderComponents.find((item) => item.name == content.componentInfo);
17
- return h("div", { class: "mk-visual-page-editor__stage_block" }, [
18
- h(renderComponent == null ? void 0 : renderComponent.component, content.componentProps),
19
- h("div", {
20
- class: { "mk-visual-page-editor__stage_block_mask": true, active: props.active },
21
- onClick: (ev) => {
22
- emit("click", { node: content, options: renderComponent, index: props.index, parent: props.parent, event: ev });
23
- }
24
- })
25
- ]);
26
- };
27
- }
28
- });
29
- export {
30
- BlockRender as default
31
- };
32
- //# sourceMappingURL=BlockRender.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"BlockRender.js","sources":["../../../../../../src/components/basic/visual-page-editor/components/BlockRender.ts"],"sourcesContent":["import { defineComponent,defineProps,defineEmits,computed,ref,onMounted,watch,h } from \"vue\"\r\nimport { ContentBlockType } from \"../core/ContentConfig\"\r\nimport { useRenderComponent } from \"../core\"\r\n\r\nexport default defineComponent({\r\n name:\"BlockRender\",\r\n emits:[\"click\"],\r\n props:{\r\n node:{type:Object},\r\n parent:{type:Object},\r\n index:{type:Number},\r\n active:{type:Boolean}\r\n },\r\n setup:(props,{ emit })=>{\r\n\r\n const { RenderComponents } = useRenderComponent();\r\n\r\n return ()=>{\r\n\r\n const content = props.node as ContentBlockType;\r\n const renderComponent = RenderComponents.find(item=>item.name == content.componentInfo);\r\n\r\n return h(\"div\",{class:\"mk-visual-page-editor__stage_block\"},[\r\n h(renderComponent?.component as any,content.componentProps),\r\n h(\"div\",{ \r\n class:{\"mk-visual-page-editor__stage_block_mask\":true,active:props.active},\r\n onClick:ev=>{\r\n emit(\"click\",{ node:content,options:renderComponent,index:props.index,parent:props.parent,event:ev })\r\n }\r\n })\r\n ])\r\n }\r\n }\r\n});\r\n"],"names":[],"mappings":";;AAIA,MAAA,cAAe,gBAAgB;AAAA,EAC7B,MAAK;AAAA,EACL,OAAM,CAAC,OAAO;AAAA,EACd,OAAM;AAAA,IACJ,MAAK,EAAC,MAAK,OAAM;AAAA,IACjB,QAAO,EAAC,MAAK,OAAM;AAAA,IACnB,OAAM,EAAC,MAAK,OAAM;AAAA,IAClB,QAAO,EAAC,MAAK,QAAO;AAAA,EACtB;AAAA,EACA,OAAM,CAAC,OAAM,EAAE,WAAS;AAEhB,UAAA,EAAE,qBAAqB;AAE7B,WAAO,MAAI;AAET,YAAM,UAAU,MAAM;AACtB,YAAM,kBAAkB,iBAAiB,KAAK,UAAM,KAAK,QAAQ,QAAQ,aAAa;AAEtF,aAAO,EAAE,OAAM,EAAC,OAAM,wCAAsC;AAAA,QAC1D,EAAE,mDAAiB,WAAiB,QAAQ,cAAc;AAAA,QAC1D,EAAE,OAAM;AAAA,UACN,OAAM,EAAC,2CAA0C,MAAK,QAAO,MAAM,OAAM;AAAA,UACzE,SAAQ,CAAI,OAAA;AACV,iBAAK,SAAQ,EAAE,MAAK,SAAQ,SAAQ,iBAAgB,OAAM,MAAM,OAAM,QAAO,MAAM,QAAO,OAAM,IAAI;AAAA,UACtG;AAAA,QAAA,CACD;AAAA,MAAA,CACF;AAAA,IAAA;AAAA,EAEL;AACF,CAAC;"}