@tmagic/editor 1.3.0-alpha.2 → 1.3.0-alpha.21

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 (167) hide show
  1. package/dist/style.css +91 -120
  2. package/dist/tmagic-editor.js +4609 -3257
  3. package/dist/tmagic-editor.js.map +1 -1
  4. package/dist/tmagic-editor.umd.cjs +5708 -4337
  5. package/dist/tmagic-editor.umd.cjs.map +1 -1
  6. package/package.json +21 -22
  7. package/src/Editor.vue +29 -7
  8. package/src/components/CodeBlockEditor.vue +170 -0
  9. package/src/components/CodeParams.vue +60 -0
  10. package/src/components/ContentMenu.vue +30 -11
  11. package/src/components/Icon.vue +5 -1
  12. package/src/components/Resizer.vue +45 -0
  13. package/src/components/ScrollBar.vue +5 -1
  14. package/src/components/ScrollViewer.vue +5 -1
  15. package/src/components/SearchInput.vue +4 -0
  16. package/src/components/{Layout.vue → SplitView.vue} +8 -4
  17. package/src/components/ToolButton.vue +5 -1
  18. package/src/editorProps.ts +35 -4
  19. package/src/fields/Code.vue +28 -20
  20. package/src/fields/CodeLink.vue +15 -10
  21. package/src/fields/CodeSelect.vue +19 -10
  22. package/src/fields/CodeSelectCol.vue +67 -83
  23. package/src/fields/DataSourceFieldSelect.vue +47 -0
  24. package/src/fields/DataSourceFields.vue +24 -21
  25. package/src/fields/DataSourceInput.vue +318 -0
  26. package/src/fields/DataSourceMethodSelect.vue +136 -0
  27. package/src/fields/DataSourceMethods.vue +103 -0
  28. package/src/fields/DataSourceSelect.vue +68 -0
  29. package/src/fields/EventSelect.vue +62 -22
  30. package/src/fields/KeyValue.vue +13 -11
  31. package/src/fields/UISelect.vue +59 -15
  32. package/src/hooks/index.ts +21 -0
  33. package/src/hooks/use-code-block-edit.ts +84 -0
  34. package/src/hooks/use-data-source-method.ts +100 -0
  35. package/src/{utils/stage.ts → hooks/use-stage.ts} +4 -7
  36. package/src/icons/AppManageIcon.vue +5 -1
  37. package/src/icons/CenterIcon.vue +13 -0
  38. package/src/icons/CodeIcon.vue +5 -3
  39. package/src/index.ts +24 -3
  40. package/src/initService.ts +75 -16
  41. package/src/layouts/AddPageBox.vue +5 -1
  42. package/src/layouts/CodeEditor.vue +66 -11
  43. package/src/layouts/Framework.vue +32 -28
  44. package/src/layouts/NavMenu.vue +5 -1
  45. package/src/layouts/PropsPanel.vue +14 -4
  46. package/src/layouts/sidebar/ComponentListPanel.vue +11 -10
  47. package/src/layouts/sidebar/LayerMenu.vue +13 -25
  48. package/src/layouts/sidebar/LayerNode.vue +40 -0
  49. package/src/layouts/sidebar/LayerPanel.vue +71 -28
  50. package/src/layouts/sidebar/Sidebar.vue +13 -17
  51. package/src/layouts/sidebar/code-block/CodeBlockList.vue +84 -118
  52. package/src/layouts/sidebar/code-block/CodeBlockListPanel.vue +63 -0
  53. package/src/layouts/sidebar/data-source/DataSourceConfigPanel.vue +39 -34
  54. package/src/layouts/sidebar/data-source/DataSourceList.vue +145 -0
  55. package/src/layouts/sidebar/data-source/DataSourceListPanel.vue +17 -65
  56. package/src/layouts/workspace/Breadcrumb.vue +5 -1
  57. package/src/layouts/workspace/PageBar.vue +5 -1
  58. package/src/layouts/workspace/PageBarScrollContainer.vue +5 -1
  59. package/src/layouts/workspace/Stage.vue +30 -8
  60. package/src/layouts/workspace/ViewerMenu.vue +15 -36
  61. package/src/layouts/workspace/Workspace.vue +9 -134
  62. package/src/services/codeBlock.ts +20 -72
  63. package/src/services/dataSource.ts +17 -2
  64. package/src/services/dep.ts +23 -20
  65. package/src/services/editor.ts +3 -3
  66. package/src/services/keybinding.ts +185 -0
  67. package/src/services/props.ts +2 -2
  68. package/src/services/storage.ts +3 -2
  69. package/src/theme/code-block.scss +5 -117
  70. package/src/theme/code-editor.scss +27 -2
  71. package/src/theme/content-menu.scss +1 -1
  72. package/src/theme/data-source-input.scss +18 -0
  73. package/src/theme/data-source-methods.scss +13 -0
  74. package/src/theme/event.scss +15 -12
  75. package/src/theme/framework.scss +0 -3
  76. package/src/theme/layer-panel.scss +6 -0
  77. package/src/theme/layout.scss +4 -0
  78. package/src/theme/resizer.scss +25 -10
  79. package/src/theme/stage.scss +4 -0
  80. package/src/theme/theme.scss +2 -0
  81. package/src/type.ts +105 -7
  82. package/src/utils/config.ts +1 -1
  83. package/src/utils/content-menu.ts +92 -0
  84. package/src/utils/data-source/formConfigs/base.ts +35 -30
  85. package/src/utils/data-source/index.ts +75 -6
  86. package/src/utils/dep.ts +39 -7
  87. package/src/utils/index.ts +1 -1
  88. package/src/utils/keybinding-config.ts +120 -0
  89. package/src/utils/props.ts +298 -155
  90. package/src/utils/undo-redo.ts +1 -1
  91. package/types/Editor.vue.d.ts +37 -4
  92. package/types/components/CodeBlockEditor.vue.d.ts +23 -0
  93. package/types/components/CodeParams.vue.d.ts +26 -0
  94. package/types/components/ContentMenu.vue.d.ts +8 -3
  95. package/types/components/Icon.vue.d.ts +2 -2
  96. package/types/{layouts → components}/Resizer.vue.d.ts +2 -2
  97. package/types/components/ScrollBar.vue.d.ts +1 -1
  98. package/types/components/ScrollViewer.vue.d.ts +8 -5
  99. package/types/components/SearchInput.vue.d.ts +1 -1
  100. package/types/components/{Layout.vue.d.ts → SplitView.vue.d.ts} +9 -6
  101. package/types/components/ToolButton.vue.d.ts +10 -7
  102. package/types/editorProps.d.ts +23 -4
  103. package/types/fields/Code.vue.d.ts +23 -18
  104. package/types/fields/CodeLink.vue.d.ts +13 -22
  105. package/types/fields/CodeSelect.vue.d.ts +12 -20
  106. package/types/fields/CodeSelectCol.vue.d.ts +14 -15
  107. package/types/fields/DataSourceFieldSelect.vue.d.ts +29 -0
  108. package/types/fields/DataSourceFields.vue.d.ts +13 -21
  109. package/types/fields/DataSourceInput.vue.d.ts +34 -0
  110. package/types/fields/DataSourceMethodSelect.vue.d.ts +29 -0
  111. package/types/fields/DataSourceMethods.vue.d.ts +32 -0
  112. package/types/fields/DataSourceSelect.vue.d.ts +40 -0
  113. package/types/fields/EventSelect.vue.d.ts +3 -14
  114. package/types/fields/KeyValue.vue.d.ts +15 -27
  115. package/types/fields/UISelect.vue.d.ts +3 -12
  116. package/types/hooks/index.d.ts +3 -0
  117. package/types/hooks/use-code-block-edit.d.ts +125 -0
  118. package/types/hooks/use-data-source-method.d.ts +123 -0
  119. package/types/icons/AppManageIcon.vue.d.ts +1 -1
  120. package/types/icons/CenterIcon.vue.d.ts +2 -0
  121. package/types/icons/CodeIcon.vue.d.ts +1 -1
  122. package/types/index.d.ts +12 -2
  123. package/types/initService.d.ts +2 -2
  124. package/types/layouts/AddPageBox.vue.d.ts +1 -1
  125. package/types/layouts/CodeEditor.vue.d.ts +18 -10
  126. package/types/layouts/Framework.vue.d.ts +11 -32
  127. package/types/layouts/NavMenu.vue.d.ts +7 -4
  128. package/types/layouts/PropsPanel.vue.d.ts +276 -4
  129. package/types/layouts/sidebar/ComponentListPanel.vue.d.ts +4 -4
  130. package/types/layouts/sidebar/LayerMenu.vue.d.ts +2 -2
  131. package/types/layouts/sidebar/LayerNode.vue.d.ts +16 -0
  132. package/types/layouts/sidebar/LayerPanel.vue.d.ts +5 -5
  133. package/types/layouts/sidebar/Sidebar.vue.d.ts +16 -16
  134. package/types/layouts/sidebar/code-block/CodeBlockList.vue.d.ts +7 -12
  135. package/types/layouts/sidebar/code-block/CodeBlockListPanel.vue.d.ts +28 -0
  136. package/types/layouts/sidebar/data-source/DataSourceConfigPanel.vue.d.ts +4 -2
  137. package/types/layouts/sidebar/data-source/DataSourceList.vue.d.ts +14 -0
  138. package/types/layouts/sidebar/data-source/DataSourceListPanel.vue.d.ts +1 -11
  139. package/types/layouts/workspace/Breadcrumb.vue.d.ts +1 -1
  140. package/types/layouts/workspace/PageBar.vue.d.ts +5 -5
  141. package/types/layouts/workspace/PageBarScrollContainer.vue.d.ts +2 -2
  142. package/types/layouts/workspace/Stage.vue.d.ts +2 -2
  143. package/types/layouts/workspace/ViewerMenu.vue.d.ts +7 -4
  144. package/types/layouts/workspace/Workspace.vue.d.ts +9 -9
  145. package/types/services/codeBlock.d.ts +6 -37
  146. package/types/services/dataSource.d.ts +7 -1
  147. package/types/services/dep.d.ts +12 -21
  148. package/types/services/editor.d.ts +1 -1
  149. package/types/services/keybinding.d.ts +20 -0
  150. package/types/services/props.d.ts +10 -115
  151. package/types/type.d.ts +97 -7
  152. package/types/utils/config.d.ts +1 -1
  153. package/types/utils/content-menu.d.ts +7 -0
  154. package/types/utils/data-source/formConfigs/base.d.ts +2 -2
  155. package/types/utils/data-source/index.d.ts +7 -1
  156. package/types/utils/dep.d.ts +4 -2
  157. package/types/utils/index.d.ts +1 -1
  158. package/types/utils/keybinding-config.d.ts +3 -0
  159. package/types/utils/props.d.ts +13 -102
  160. package/src/components/CodeDraftEditor.vue +0 -144
  161. package/src/components/FunctionEditor.vue +0 -190
  162. package/src/layouts/Resizer.vue +0 -32
  163. package/src/layouts/sidebar/code-block/CodeBlockEditor.vue +0 -96
  164. package/types/components/CodeDraftEditor.vue.d.ts +0 -58
  165. package/types/components/FunctionEditor.vue.d.ts +0 -192
  166. package/types/layouts/sidebar/code-block/CodeBlockEditor.vue.d.ts +0 -25
  167. /package/types/{utils/stage.d.ts → hooks/use-stage.d.ts} +0 -0
@@ -1,192 +0,0 @@
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<({
23
- $: import("vue").ComponentInternalInstance;
24
- $data: {};
25
- $props: Partial<{
26
- editable: boolean;
27
- autoSaveDraft: boolean;
28
- }> & Omit<Readonly<import("vue").ExtractPropTypes<{
29
- id: {
30
- type: import("vue").PropType<Id>;
31
- required: true;
32
- };
33
- editable: {
34
- type: import("vue").PropType<boolean>;
35
- } & {
36
- default: boolean;
37
- };
38
- codeOptions: {
39
- type: import("vue").PropType<Object>;
40
- };
41
- content: {
42
- type: import("vue").PropType<string>;
43
- required: true;
44
- };
45
- language: {
46
- type: import("vue").PropType<string>;
47
- };
48
- autoSaveDraft: {
49
- type: import("vue").PropType<boolean>;
50
- } & {
51
- default: boolean;
52
- };
53
- }>> & {
54
- onClose?: ((...args: any[]) => any) | undefined;
55
- onSaveAndClose?: ((...args: any[]) => any) | undefined;
56
- } & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, "editable" | "autoSaveDraft">;
57
- $attrs: {
58
- [x: string]: unknown;
59
- };
60
- $refs: {
61
- [x: string]: unknown;
62
- };
63
- $slots: Readonly<{
64
- [name: string]: import("vue").Slot | undefined;
65
- }>;
66
- $root: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}>> | null;
67
- $parent: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}>> | null;
68
- $emit: (event: "close" | "saveAndClose", ...args: any[]) => void;
69
- $el: any;
70
- $options: import("vue").ComponentOptionsBase<Readonly<import("vue").ExtractPropTypes<{
71
- id: {
72
- type: import("vue").PropType<Id>;
73
- required: true;
74
- };
75
- editable: {
76
- type: import("vue").PropType<boolean>;
77
- } & {
78
- default: boolean;
79
- };
80
- codeOptions: {
81
- type: import("vue").PropType<Object>;
82
- };
83
- content: {
84
- type: import("vue").PropType<string>;
85
- required: true;
86
- };
87
- language: {
88
- type: import("vue").PropType<string>;
89
- };
90
- autoSaveDraft: {
91
- type: import("vue").PropType<boolean>;
92
- } & {
93
- default: boolean;
94
- };
95
- }>> & {
96
- onClose?: ((...args: any[]) => any) | undefined;
97
- onSaveAndClose?: ((...args: any[]) => any) | undefined;
98
- }, {
99
- saveAndClose: () => void;
100
- close: () => Promise<void>;
101
- }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("close" | "saveAndClose")[], string, {
102
- editable: boolean;
103
- autoSaveDraft: boolean;
104
- }> & {
105
- beforeCreate?: ((() => void) | (() => void)[]) | undefined;
106
- created?: ((() => void) | (() => void)[]) | undefined;
107
- beforeMount?: ((() => void) | (() => void)[]) | undefined;
108
- mounted?: ((() => void) | (() => void)[]) | undefined;
109
- beforeUpdate?: ((() => void) | (() => void)[]) | undefined;
110
- updated?: ((() => void) | (() => void)[]) | undefined;
111
- activated?: ((() => void) | (() => void)[]) | undefined;
112
- deactivated?: ((() => void) | (() => void)[]) | undefined;
113
- beforeDestroy?: ((() => void) | (() => void)[]) | undefined;
114
- beforeUnmount?: ((() => void) | (() => void)[]) | undefined;
115
- destroyed?: ((() => void) | (() => void)[]) | undefined;
116
- unmounted?: ((() => void) | (() => void)[]) | undefined;
117
- renderTracked?: (((e: import("vue").DebuggerEvent) => void) | ((e: import("vue").DebuggerEvent) => void)[]) | undefined;
118
- renderTriggered?: (((e: import("vue").DebuggerEvent) => void) | ((e: import("vue").DebuggerEvent) => void)[]) | undefined;
119
- errorCaptured?: (((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}>> | null, info: string) => boolean | void) | ((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}>> | null, info: string) => boolean | void)[]) | undefined;
120
- };
121
- $forceUpdate: () => void;
122
- $nextTick: typeof import("vue").nextTick;
123
- $watch(source: string | Function, cb: Function, options?: import("vue").WatchOptions<boolean> | undefined): import("vue").WatchStopHandle;
124
- } & Readonly<import("vue").ExtractPropTypes<{
125
- id: {
126
- type: import("vue").PropType<Id>;
127
- required: true;
128
- };
129
- editable: {
130
- type: import("vue").PropType<boolean>;
131
- } & {
132
- default: boolean;
133
- };
134
- codeOptions: {
135
- type: import("vue").PropType<Object>;
136
- };
137
- content: {
138
- type: import("vue").PropType<string>;
139
- required: true;
140
- };
141
- language: {
142
- type: import("vue").PropType<string>;
143
- };
144
- autoSaveDraft: {
145
- type: import("vue").PropType<boolean>;
146
- } & {
147
- default: boolean;
148
- };
149
- }>> & {
150
- onClose?: ((...args: any[]) => any) | undefined;
151
- onSaveAndClose?: ((...args: any[]) => any) | undefined;
152
- } & import("vue").ShallowUnwrapRef<{
153
- saveAndClose: () => void;
154
- close: () => Promise<void>;
155
- }> & {} & import("vue").ComponentCustomProperties) | undefined>;
156
- }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<{
157
- /** 代码块id */
158
- id: Id;
159
- /** 代码块名称 */
160
- name: string;
161
- /** 代码内容 */
162
- content: string;
163
- /** 是否可编辑 */
164
- editable?: boolean | undefined;
165
- /** 是否自动保存草稿 */
166
- autoSaveDraft?: boolean | undefined;
167
- /** 编辑器扩展参数 */
168
- codeOptions?: object | undefined;
169
- /** 代码参数扩展配置 */
170
- paramsColConfig?: ColumnConfig | undefined;
171
- }>, {
172
- editable: boolean;
173
- autoSaveDraft: boolean;
174
- }>>>, {
175
- editable: boolean;
176
- autoSaveDraft: boolean;
177
- }>;
178
- export default _default;
179
- type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
180
- type __VLS_TypePropsToRuntimeProps<T> = {
181
- [K in keyof T]-?: {} extends Pick<T, K> ? {
182
- type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
183
- } : {
184
- type: import('vue').PropType<T[K]>;
185
- required: true;
186
- };
187
- };
188
- type __VLS_WithDefaults<P, D> = {
189
- [K in keyof Pick<P, keyof P>]: K extends keyof D ? P[K] & {
190
- default: D[K];
191
- } : P[K];
192
- };
@@ -1,25 +0,0 @@
1
- import { ColumnConfig } from '@tmagic/form';
2
- declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__VLS_TypePropsToRuntimeProps<{
3
- paramsColConfig?: ColumnConfig | undefined;
4
- }>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToRuntimeProps<{
5
- paramsColConfig?: ColumnConfig | undefined;
6
- }>>>, {}>, {
7
- 'code-block-edit-panel-header': (_: {
8
- id: import("@tmagic/schema").Id;
9
- }) => any;
10
- }>;
11
- export default _default;
12
- type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
13
- type __VLS_TypePropsToRuntimeProps<T> = {
14
- [K in keyof T]-?: {} extends Pick<T, K> ? {
15
- type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
16
- } : {
17
- type: import('vue').PropType<T[K]>;
18
- required: true;
19
- };
20
- };
21
- type __VLS_WithTemplateSlots<T, S> = T & {
22
- new (): {
23
- $slots: S;
24
- };
25
- };