@tmagic/editor 1.3.0-alpha.8 → 1.3.0-beta.0

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 (124) hide show
  1. package/dist/style.css +82 -218
  2. package/dist/tmagic-editor.js +4985 -3999
  3. package/dist/tmagic-editor.js.map +1 -1
  4. package/dist/tmagic-editor.umd.cjs +5013 -4012
  5. package/dist/tmagic-editor.umd.cjs.map +1 -1
  6. package/package.json +15 -15
  7. package/src/Editor.vue +4 -5
  8. package/src/components/CodeBlockEditor.vue +257 -0
  9. package/src/components/CodeParams.vue +60 -0
  10. package/src/components/ContentMenu.vue +11 -3
  11. package/src/editorProps.ts +30 -5
  12. package/src/fields/Code.vue +23 -19
  13. package/src/fields/CodeLink.vue +6 -7
  14. package/src/fields/CodeSelect.vue +12 -9
  15. package/src/fields/CodeSelectCol.vue +70 -81
  16. package/src/fields/DataSourceFieldSelect.vue +47 -0
  17. package/src/fields/DataSourceFields.vue +28 -22
  18. package/src/fields/DataSourceInput.vue +21 -58
  19. package/src/fields/DataSourceMethodSelect.vue +136 -0
  20. package/src/fields/DataSourceMethods.vue +103 -0
  21. package/src/fields/DataSourceSelect.vue +68 -0
  22. package/src/fields/EventSelect.vue +53 -19
  23. package/src/fields/KeyValue.vue +9 -11
  24. package/src/fields/UISelect.vue +54 -14
  25. package/src/hooks/index.ts +21 -0
  26. package/src/hooks/use-code-block-edit.ts +84 -0
  27. package/src/hooks/use-data-source-method.ts +100 -0
  28. package/src/{utils/stage.ts → hooks/use-stage.ts} +4 -7
  29. package/src/icons/CenterIcon.vue +13 -0
  30. package/src/icons/CodeIcon.vue +0 -2
  31. package/src/icons/FolderMinusIcon.vue +22 -0
  32. package/src/index.ts +15 -0
  33. package/src/initService.ts +73 -16
  34. package/src/layouts/CodeEditor.vue +62 -10
  35. package/src/layouts/Framework.vue +7 -3
  36. package/src/layouts/PropsPanel.vue +8 -3
  37. package/src/layouts/sidebar/ComponentListPanel.vue +6 -9
  38. package/src/layouts/sidebar/LayerMenu.vue +20 -21
  39. package/src/layouts/sidebar/LayerNode.vue +40 -0
  40. package/src/layouts/sidebar/LayerPanel.vue +14 -5
  41. package/src/layouts/sidebar/Sidebar.vue +22 -36
  42. package/src/layouts/sidebar/code-block/CodeBlockList.vue +81 -119
  43. package/src/layouts/sidebar/code-block/CodeBlockListPanel.vue +64 -0
  44. package/src/layouts/sidebar/data-source/DataSourceConfigPanel.vue +27 -47
  45. package/src/layouts/sidebar/data-source/DataSourceList.vue +145 -0
  46. package/src/layouts/sidebar/data-source/DataSourceListPanel.vue +58 -69
  47. package/src/layouts/workspace/Stage.vue +13 -5
  48. package/src/layouts/workspace/ViewerMenu.vue +10 -35
  49. package/src/services/codeBlock.ts +18 -71
  50. package/src/services/dataSource.ts +16 -1
  51. package/src/services/dep.ts +23 -20
  52. package/src/services/editor.ts +46 -18
  53. package/src/services/props.ts +2 -2
  54. package/src/theme/code-block.scss +5 -117
  55. package/src/theme/code-editor.scss +27 -2
  56. package/src/theme/content-menu.scss +1 -1
  57. package/src/theme/data-source-methods.scss +13 -0
  58. package/src/theme/data-source.scss +11 -0
  59. package/src/theme/event.scss +15 -12
  60. package/src/theme/framework.scss +0 -3
  61. package/src/theme/layer-panel.scss +6 -0
  62. package/src/theme/layout.scss +4 -0
  63. package/src/theme/sidebar.scss +18 -60
  64. package/src/theme/theme.scss +1 -0
  65. package/src/type.ts +47 -7
  66. package/src/utils/content-menu.ts +92 -0
  67. package/src/utils/data-source/formConfigs/base.ts +28 -30
  68. package/src/utils/data-source/index.ts +65 -2
  69. package/src/utils/dep.ts +39 -7
  70. package/src/utils/index.ts +1 -1
  71. package/src/utils/props.ts +298 -189
  72. package/src/utils/undo-redo.ts +1 -1
  73. package/types/Editor.vue.d.ts +30 -6
  74. package/types/components/CodeBlockEditor.vue.d.ts +23 -0
  75. package/types/components/CodeParams.vue.d.ts +26 -0
  76. package/types/components/ContentMenu.vue.d.ts +2 -2
  77. package/types/components/ToolButton.vue.d.ts +3 -3
  78. package/types/editorProps.d.ts +19 -5
  79. package/types/fields/Code.vue.d.ts +24 -19
  80. package/types/fields/CodeLink.vue.d.ts +12 -21
  81. package/types/fields/CodeSelect.vue.d.ts +6 -17
  82. package/types/fields/CodeSelectCol.vue.d.ts +10 -14
  83. package/types/fields/DataSourceFieldSelect.vue.d.ts +29 -0
  84. package/types/fields/DataSourceFields.vue.d.ts +7 -18
  85. package/types/fields/DataSourceInput.vue.d.ts +10 -30
  86. package/types/fields/DataSourceMethodSelect.vue.d.ts +29 -0
  87. package/types/fields/DataSourceMethods.vue.d.ts +32 -0
  88. package/types/fields/DataSourceSelect.vue.d.ts +40 -0
  89. package/types/fields/EventSelect.vue.d.ts +2 -13
  90. package/types/fields/KeyValue.vue.d.ts +9 -24
  91. package/types/fields/UISelect.vue.d.ts +2 -11
  92. package/types/hooks/index.d.ts +3 -0
  93. package/types/{components/FunctionEditor.vue.d.ts → hooks/use-code-block-edit.d.ts} +31 -119
  94. package/types/hooks/use-data-source-method.d.ts +123 -0
  95. package/types/icons/CenterIcon.vue.d.ts +2 -0
  96. package/types/icons/FolderMinusIcon.vue.d.ts +2 -0
  97. package/types/index.d.ts +7 -0
  98. package/types/initService.d.ts +2 -2
  99. package/types/layouts/CodeEditor.vue.d.ts +10 -4
  100. package/types/layouts/PropsPanel.vue.d.ts +274 -2
  101. package/types/layouts/sidebar/LayerNode.vue.d.ts +16 -0
  102. package/types/layouts/sidebar/Sidebar.vue.d.ts +0 -3
  103. package/types/layouts/sidebar/code-block/CodeBlockList.vue.d.ts +4 -9
  104. package/types/layouts/sidebar/code-block/{CodeBlockEditor.vue.d.ts → CodeBlockListPanel.vue.d.ts} +9 -5
  105. package/types/layouts/sidebar/data-source/DataSourceConfigPanel.vue.d.ts +3 -1
  106. package/types/layouts/sidebar/data-source/DataSourceList.vue.d.ts +14 -0
  107. package/types/layouts/sidebar/data-source/DataSourceListPanel.vue.d.ts +1 -11
  108. package/types/services/codeBlock.d.ts +6 -37
  109. package/types/services/dataSource.d.ts +7 -1
  110. package/types/services/dep.d.ts +12 -21
  111. package/types/services/editor.d.ts +1 -1
  112. package/types/services/props.d.ts +10 -115
  113. package/types/type.d.ts +42 -7
  114. package/types/utils/content-menu.d.ts +7 -0
  115. package/types/utils/data-source/formConfigs/base.d.ts +1 -2
  116. package/types/utils/data-source/index.d.ts +5 -0
  117. package/types/utils/dep.d.ts +4 -2
  118. package/types/utils/index.d.ts +1 -1
  119. package/types/utils/props.d.ts +13 -102
  120. package/src/components/CodeDraftEditor.vue +0 -148
  121. package/src/components/FunctionEditor.vue +0 -197
  122. package/src/layouts/sidebar/code-block/CodeBlockEditor.vue +0 -100
  123. package/types/components/CodeDraftEditor.vue.d.ts +0 -61
  124. /package/types/{utils/stage.d.ts → hooks/use-stage.d.ts} +0 -0
@@ -1,30 +1,13 @@
1
- import { ColumnConfig } from '@tmagic/form';
2
- import { Id } from '@tmagic/schema';
3
- declare const _default: import("vue").DefineComponent<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<{
4
- /** 代码块id */
5
- id: Id;
6
- /** 代码块名称 */
7
- name: string;
8
- /** 代码内容 */
9
- content: string;
10
- /** 是否可编辑 */
11
- editable?: boolean | undefined;
12
- /** 是否自动保存草稿 */
13
- autoSaveDraft?: boolean | undefined;
14
- /** 编辑器扩展参数 */
15
- codeOptions?: object | undefined;
16
- /** 代码参数扩展配置 */
17
- paramsColConfig?: ColumnConfig | undefined;
18
- }>, {
19
- editable: boolean;
20
- autoSaveDraft: boolean;
21
- }>, {
22
- codeDraftEditor: import("vue").Ref<({
1
+ import { nextTick } from 'vue';
2
+ import type { CodeBlockContent } from '@tmagic/schema';
3
+ import type { CodeBlockService } from '../services/codeBlock';
4
+ export declare const useCodeBlockEdit: (codeBlockService?: CodeBlockService) => {
5
+ codeId: import("vue").Ref<string | undefined>;
6
+ codeConfig: import("vue").Ref<CodeBlockContent | undefined>;
7
+ codeBlockEditor: import("vue").Ref<({
23
8
  $: import("vue").ComponentInternalInstance;
24
9
  $data: {};
25
10
  $props: {
26
- editable?: boolean | undefined;
27
- autoSaveDraft?: boolean | undefined;
28
11
  key?: string | number | symbol | undefined;
29
12
  ref?: import("vue").VNodeRef | undefined;
30
13
  ref_for?: boolean | undefined;
@@ -69,12 +52,9 @@ declare const _default: import("vue").DefineComponent<__VLS_WithDefaults<__VLS_T
69
52
  }>) => void)[] | undefined;
70
53
  class?: unknown;
71
54
  style?: unknown;
72
- readonly id: Id;
73
- readonly language?: string | undefined;
74
- readonly codeOptions?: Object | undefined;
75
- readonly content: string;
76
- onClose?: ((...args: any[]) => any) | undefined;
77
- onSaveAndClose?: ((...args: any[]) => any) | undefined;
55
+ readonly content: CodeBlockContent;
56
+ readonly disabled?: boolean | undefined;
57
+ readonly isDataSource?: boolean | undefined;
78
58
  };
79
59
  $attrs: {
80
60
  [x: string]: unknown;
@@ -87,41 +67,23 @@ declare const _default: import("vue").DefineComponent<__VLS_WithDefaults<__VLS_T
87
67
  }>;
88
68
  $root: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}>, {}, {}> | null;
89
69
  $parent: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}>, {}, {}> | null;
90
- $emit: (event: "close" | "saveAndClose", ...args: any[]) => void;
70
+ $emit: (event: string, ...args: any[]) => void;
91
71
  $el: any;
92
72
  $options: import("vue").ComponentOptionsBase<Readonly<import("vue").ExtractPropTypes<{
93
- id: {
94
- type: import("vue").PropType<Id>;
73
+ content: {
74
+ type: import("vue").PropType<CodeBlockContent>;
95
75
  required: true;
96
76
  };
97
- editable: {
77
+ disabled: {
98
78
  type: import("vue").PropType<boolean>;
99
- default: boolean;
100
- };
101
- language: {
102
- type: import("vue").PropType<string>;
103
79
  };
104
- codeOptions: {
105
- type: import("vue").PropType<Object>;
106
- };
107
- content: {
108
- type: import("vue").PropType<string>;
109
- required: true;
110
- };
111
- autoSaveDraft: {
80
+ isDataSource: {
112
81
  type: import("vue").PropType<boolean>;
113
- default: boolean;
114
82
  };
115
- }>> & {
116
- onClose?: ((...args: any[]) => any) | undefined;
117
- onSaveAndClose?: ((...args: any[]) => any) | undefined;
118
- }, {
119
- saveAndClose: () => void;
120
- close: () => Promise<void>;
121
- }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("close" | "saveAndClose")[], string, {
122
- editable: boolean;
123
- autoSaveDraft: boolean;
124
- }, {}, string, {}> & {
83
+ }>>, {
84
+ show(): void;
85
+ hide(): void;
86
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, {}, {}, string, {}> & {
125
87
  beforeCreate?: ((() => void) | (() => void)[]) | undefined;
126
88
  created?: ((() => void) | (() => void)[]) | undefined;
127
89
  beforeMount?: ((() => void) | (() => void)[]) | undefined;
@@ -139,75 +101,25 @@ declare const _default: import("vue").DefineComponent<__VLS_WithDefaults<__VLS_T
139
101
  errorCaptured?: (((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}>, {}, {}> | null, info: string) => boolean | void) | ((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}>, {}, {}> | null, info: string) => boolean | void)[]) | undefined;
140
102
  };
141
103
  $forceUpdate: () => void;
142
- $nextTick: typeof import("vue").nextTick;
104
+ $nextTick: typeof nextTick;
143
105
  $watch<T extends string | ((...args: any) => any)>(source: T, cb: T extends (...args: any) => infer R ? (args_0: R, args_1: R) => any : (...args: any) => any, options?: import("vue").WatchOptions<boolean> | undefined): import("vue").WatchStopHandle;
144
106
  } & Readonly<import("vue").ExtractPropTypes<{
145
- id: {
146
- type: import("vue").PropType<Id>;
107
+ content: {
108
+ type: import("vue").PropType<CodeBlockContent>;
147
109
  required: true;
148
110
  };
149
- editable: {
111
+ disabled: {
150
112
  type: import("vue").PropType<boolean>;
151
- default: boolean;
152
113
  };
153
- language: {
154
- type: import("vue").PropType<string>;
155
- };
156
- codeOptions: {
157
- type: import("vue").PropType<Object>;
158
- };
159
- content: {
160
- type: import("vue").PropType<string>;
161
- required: true;
162
- };
163
- autoSaveDraft: {
114
+ isDataSource: {
164
115
  type: import("vue").PropType<boolean>;
165
- default: boolean;
166
116
  };
167
- }>> & {
168
- onClose?: ((...args: any[]) => any) | undefined;
169
- onSaveAndClose?: ((...args: any[]) => any) | undefined;
170
- } & import("vue").ShallowUnwrapRef<{
171
- saveAndClose: () => void;
172
- close: () => Promise<void>;
117
+ }>> & import("vue").ShallowUnwrapRef<{
118
+ show(): void;
119
+ hide(): void;
173
120
  }> & {} & import("vue").ComponentCustomProperties & {}) | undefined>;
174
- }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<{
175
- /** 代码块id */
176
- id: Id;
177
- /** 代码块名称 */
178
- name: string;
179
- /** 代码内容 */
180
- content: string;
181
- /** 是否可编辑 */
182
- editable?: boolean | undefined;
183
- /** 是否自动保存草稿 */
184
- autoSaveDraft?: boolean | undefined;
185
- /** 编辑器扩展参数 */
186
- codeOptions?: object | undefined;
187
- /** 代码参数扩展配置 */
188
- paramsColConfig?: ColumnConfig | undefined;
189
- }>, {
190
- editable: boolean;
191
- autoSaveDraft: boolean;
192
- }>>>, {
193
- editable: boolean;
194
- autoSaveDraft: boolean;
195
- }, {}>;
196
- export default _default;
197
- type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
198
- type __VLS_TypePropsToRuntimeProps<T> = {
199
- [K in keyof T]-?: {} extends Pick<T, K> ? {
200
- type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
201
- } : {
202
- type: import('vue').PropType<T[K]>;
203
- required: true;
204
- };
205
- };
206
- type __VLS_WithDefaults<P, D> = {
207
- [K in keyof Pick<P, keyof P>]: K extends keyof D ? __VLS_Prettify<P[K] & {
208
- default: D[K];
209
- }> : P[K];
121
+ createCodeBlock: () => Promise<void>;
122
+ editCode: (id: string) => Promise<void>;
123
+ deleteCode: (key: string) => Promise<void>;
124
+ submitCodeBlockHandler: (values: CodeBlockContent) => Promise<void>;
210
125
  };
211
- type __VLS_Prettify<T> = {
212
- [K in keyof T]: T[K];
213
- } & {};
@@ -0,0 +1,123 @@
1
+ import { nextTick } from 'vue';
2
+ import type { CodeBlockContent, DataSourceSchema } from '@tmagic/schema';
3
+ export declare const useDataSourceMethod: () => {
4
+ codeConfig: import("vue").Ref<CodeBlockContent | undefined>;
5
+ codeBlockEditor: import("vue").Ref<({
6
+ $: import("vue").ComponentInternalInstance;
7
+ $data: {};
8
+ $props: {
9
+ key?: string | number | symbol | undefined;
10
+ ref?: import("vue").VNodeRef | undefined;
11
+ ref_for?: boolean | undefined;
12
+ ref_key?: string | undefined;
13
+ onVnodeBeforeMount?: ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
14
+ [key: string]: any;
15
+ }>) => void) | ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
16
+ [key: string]: any;
17
+ }>) => void)[] | undefined;
18
+ onVnodeMounted?: ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
19
+ [key: string]: any;
20
+ }>) => void) | ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
21
+ [key: string]: any;
22
+ }>) => void)[] | undefined;
23
+ onVnodeBeforeUpdate?: ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
24
+ [key: string]: any;
25
+ }>, oldVNode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
26
+ [key: string]: any;
27
+ }>) => void) | ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
28
+ [key: string]: any;
29
+ }>, oldVNode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
30
+ [key: string]: any;
31
+ }>) => void)[] | undefined;
32
+ onVnodeUpdated?: ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
33
+ [key: string]: any;
34
+ }>, oldVNode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
35
+ [key: string]: any;
36
+ }>) => void) | ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
37
+ [key: string]: any;
38
+ }>, oldVNode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
39
+ [key: string]: any;
40
+ }>) => void)[] | undefined;
41
+ onVnodeBeforeUnmount?: ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
42
+ [key: string]: any;
43
+ }>) => void) | ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
44
+ [key: string]: any;
45
+ }>) => void)[] | undefined;
46
+ onVnodeUnmounted?: ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
47
+ [key: string]: any;
48
+ }>) => void) | ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
49
+ [key: string]: any;
50
+ }>) => void)[] | undefined;
51
+ class?: unknown;
52
+ style?: unknown;
53
+ readonly content: CodeBlockContent;
54
+ readonly disabled?: boolean | undefined;
55
+ readonly isDataSource?: boolean | undefined;
56
+ };
57
+ $attrs: {
58
+ [x: string]: unknown;
59
+ };
60
+ $refs: {
61
+ [x: string]: unknown;
62
+ };
63
+ $slots: Readonly<{
64
+ [name: string]: import("vue").Slot<any> | undefined;
65
+ }>;
66
+ $root: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}>, {}, {}> | null;
67
+ $parent: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}>, {}, {}> | null;
68
+ $emit: (event: string, ...args: any[]) => void;
69
+ $el: any;
70
+ $options: import("vue").ComponentOptionsBase<Readonly<import("vue").ExtractPropTypes<{
71
+ content: {
72
+ type: import("vue").PropType<CodeBlockContent>;
73
+ required: true;
74
+ };
75
+ disabled: {
76
+ type: import("vue").PropType<boolean>;
77
+ };
78
+ isDataSource: {
79
+ type: import("vue").PropType<boolean>;
80
+ };
81
+ }>>, {
82
+ show(): void;
83
+ hide(): void;
84
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, {}, {}, string, {}> & {
85
+ beforeCreate?: ((() => void) | (() => void)[]) | undefined;
86
+ created?: ((() => void) | (() => void)[]) | undefined;
87
+ beforeMount?: ((() => void) | (() => void)[]) | undefined;
88
+ mounted?: ((() => void) | (() => void)[]) | undefined;
89
+ beforeUpdate?: ((() => void) | (() => void)[]) | undefined;
90
+ updated?: ((() => void) | (() => void)[]) | undefined;
91
+ activated?: ((() => void) | (() => void)[]) | undefined;
92
+ deactivated?: ((() => void) | (() => void)[]) | undefined;
93
+ beforeDestroy?: ((() => void) | (() => void)[]) | undefined;
94
+ beforeUnmount?: ((() => void) | (() => void)[]) | undefined;
95
+ destroyed?: ((() => void) | (() => void)[]) | undefined;
96
+ unmounted?: ((() => void) | (() => void)[]) | undefined;
97
+ renderTracked?: (((e: import("vue").DebuggerEvent) => void) | ((e: import("vue").DebuggerEvent) => void)[]) | undefined;
98
+ renderTriggered?: (((e: import("vue").DebuggerEvent) => void) | ((e: import("vue").DebuggerEvent) => void)[]) | undefined;
99
+ errorCaptured?: (((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}>, {}, {}> | null, info: string) => boolean | void) | ((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}>, {}, {}> | null, info: string) => boolean | void)[]) | undefined;
100
+ };
101
+ $forceUpdate: () => void;
102
+ $nextTick: typeof nextTick;
103
+ $watch<T extends string | ((...args: any) => any)>(source: T, cb: T extends (...args: any) => infer R ? (args_0: R, args_1: R) => any : (...args: any) => any, options?: import("vue").WatchOptions<boolean> | undefined): import("vue").WatchStopHandle;
104
+ } & Readonly<import("vue").ExtractPropTypes<{
105
+ content: {
106
+ type: import("vue").PropType<CodeBlockContent>;
107
+ required: true;
108
+ };
109
+ disabled: {
110
+ type: import("vue").PropType<boolean>;
111
+ };
112
+ isDataSource: {
113
+ type: import("vue").PropType<boolean>;
114
+ };
115
+ }>> & import("vue").ShallowUnwrapRef<{
116
+ show(): void;
117
+ hide(): void;
118
+ }> & {} & import("vue").ComponentCustomProperties & {}) | undefined>;
119
+ createCode: (model: DataSourceSchema) => Promise<void>;
120
+ editCode: (model: DataSourceSchema, methodName: string) => Promise<void>;
121
+ deleteCode: (model: DataSourceSchema, methodName: string) => Promise<void>;
122
+ submitCode: (values: CodeBlockContent) => void;
123
+ };
@@ -0,0 +1,2 @@
1
+ declare const _default: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}, {}>;
2
+ export default _default;
@@ -0,0 +1,2 @@
1
+ declare const _default: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}, {}>;
2
+ export default _default;
package/types/index.d.ts CHANGED
@@ -3,6 +3,7 @@ import type { InstallOptions } from './type';
3
3
  import './theme/index.scss';
4
4
  export type { MoveableOptions } from '@tmagic/stage';
5
5
  export * from './type';
6
+ export * from './hooks';
6
7
  export * from './utils';
7
8
  export { default as TMagicEditor } from './Editor.vue';
8
9
  export { default as TMagicCodeEditor } from './layouts/CodeEditor.vue';
@@ -20,10 +21,15 @@ export { default as LayerPanel } from './layouts/sidebar/LayerPanel.vue';
20
21
  export { default as CodeSelect } from './fields/CodeSelect.vue';
21
22
  export { default as CodeSelectCol } from './fields/CodeSelectCol.vue';
22
23
  export { default as DataSourceFields } from './fields/DataSourceFields.vue';
24
+ export { default as DataSourceMethods } from './fields/DataSourceMethods.vue';
23
25
  export { default as DataSourceInput } from './fields/DataSourceInput.vue';
26
+ export { default as DataSourceSelect } from './fields/DataSourceSelect.vue';
27
+ export { default as DataSourceMethodSelect } from './fields/DataSourceMethodSelect.vue';
28
+ export { default as DataSourceFieldSelect } from './fields/DataSourceFieldSelect.vue';
24
29
  export { default as EventSelect } from './fields/EventSelect.vue';
25
30
  export { default as KeyValue } from './fields/KeyValue.vue';
26
31
  export { default as CodeBlockList } from './layouts/sidebar/code-block/CodeBlockList.vue';
32
+ export { default as CodeBlockListPanel } from './layouts/sidebar/code-block/CodeBlockListPanel.vue';
27
33
  export { default as PropsPanel } from './layouts/PropsPanel.vue';
28
34
  export { default as ToolButton } from './components/ToolButton.vue';
29
35
  export { default as ContentMenu } from './components/ContentMenu.vue';
@@ -31,6 +37,7 @@ export { default as Icon } from './components/Icon.vue';
31
37
  export { default as LayoutContainer } from './components/SplitView.vue';
32
38
  export { default as SplitView } from './components/SplitView.vue';
33
39
  export { default as Resizer } from './components/Resizer.vue';
40
+ export { default as CodeBlockEditor } from './components/CodeBlockEditor.vue';
34
41
  declare const _default: {
35
42
  install: (app: App, opt?: Partial<InstallOptions>) => void;
36
43
  };
@@ -1,8 +1,8 @@
1
1
  import type { ExtractPropTypes } from 'vue';
2
2
  import editorProps from './editorProps';
3
- import type { Services } from './type';
3
+ import { Services } from './type';
4
4
  export declare type LooseRequired<T> = {
5
5
  [P in string & keyof T]: T[P];
6
6
  };
7
- export declare const initServiceState: (props: Readonly<LooseRequired<Readonly<ExtractPropTypes<typeof editorProps>>>>, { editorService, historyService, componentListService, propsService, eventsService, uiService, codeBlockService, keybindingService, }: Services) => void;
7
+ export declare const initServiceState: (props: Readonly<LooseRequired<Readonly<ExtractPropTypes<typeof editorProps>>>>, { editorService, historyService, componentListService, propsService, eventsService, uiService, codeBlockService, keybindingService, dataSourceService, }: Services) => void;
8
8
  export declare const initServiceEvents: (props: Readonly<LooseRequired<Readonly<ExtractPropTypes<typeof editorProps>>>>, emit: (event: 'props-panel-mounted' | 'update:modelValue', ...args: any[]) => void, { editorService, codeBlockService, dataSourceService, depService }: Services) => void;
@@ -1,12 +1,13 @@
1
1
  import * as monaco from 'monaco-editor';
2
2
  declare const _default: import("vue").DefineComponent<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<{
3
- initValues?: string | Record<string | number, any> | null | undefined;
4
- modifiedValues?: string | Record<string | number, any> | null | undefined;
3
+ initValues?: any;
4
+ modifiedValues?: any;
5
5
  type?: "diff" | undefined;
6
6
  language?: string | undefined;
7
7
  options?: {
8
8
  [key: string]: any;
9
9
  } | undefined;
10
+ height?: string | undefined;
10
11
  autoSave?: boolean | undefined;
11
12
  }>, {
12
13
  autoSave: boolean;
@@ -15,17 +16,22 @@ declare const _default: import("vue").DefineComponent<__VLS_WithDefaults<__VLS_T
15
16
  tabSize: number;
16
17
  };
17
18
  }>, {
19
+ values: import("vue").Ref<string>;
18
20
  getEditor(): monaco.editor.IStandaloneCodeEditor | monaco.editor.IStandaloneDiffEditor | null;
21
+ getVsEditor(): monaco.editor.IStandaloneCodeEditor | null;
22
+ getVsDiffEditor(): monaco.editor.IStandaloneDiffEditor | null;
19
23
  setEditorValue: (v: any, m: any) => void | undefined;
24
+ getEditorValue: () => string;
20
25
  focus(): void;
21
26
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("initd" | "save")[], "initd" | "save", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<{
22
- initValues?: string | Record<string | number, any> | null | undefined;
23
- modifiedValues?: string | Record<string | number, any> | null | undefined;
27
+ initValues?: any;
28
+ modifiedValues?: any;
24
29
  type?: "diff" | undefined;
25
30
  language?: string | undefined;
26
31
  options?: {
27
32
  [key: string]: any;
28
33
  } | undefined;
34
+ height?: string | undefined;
29
35
  autoSave?: boolean | undefined;
30
36
  }>, {
31
37
  autoSave: boolean;