@tmagic/editor 1.3.0-alpha.0 → 1.3.0-alpha.10

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 +46 -9
  2. package/dist/tmagic-editor.js +1764 -871
  3. package/dist/tmagic-editor.js.map +1 -1
  4. package/dist/tmagic-editor.umd.cjs +1781 -882
  5. package/dist/tmagic-editor.umd.cjs.map +1 -1
  6. package/package.json +19 -20
  7. package/src/Editor.vue +29 -3
  8. package/src/components/CodeDraftEditor.vue +5 -1
  9. package/src/components/ContentMenu.vue +30 -11
  10. package/src/components/FunctionEditor.vue +12 -5
  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 +5 -1
  19. package/src/fields/Code.vue +5 -1
  20. package/src/fields/CodeLink.vue +9 -3
  21. package/src/fields/CodeSelect.vue +8 -2
  22. package/src/fields/CodeSelectCol.vue +6 -2
  23. package/src/fields/DataSourceFields.vue +5 -1
  24. package/src/fields/DataSourceInput.vue +358 -0
  25. package/src/fields/DataSourceSelect.vue +75 -0
  26. package/src/fields/EventSelect.vue +9 -3
  27. package/src/fields/KeyValue.vue +4 -0
  28. package/src/fields/UISelect.vue +5 -1
  29. package/src/icons/AppManageIcon.vue +5 -1
  30. package/src/icons/CenterIcon.vue +13 -0
  31. package/src/icons/CodeIcon.vue +5 -1
  32. package/src/index.ts +13 -3
  33. package/src/initService.ts +73 -0
  34. package/src/layouts/AddPageBox.vue +5 -1
  35. package/src/layouts/CodeEditor.vue +34 -10
  36. package/src/layouts/Framework.vue +25 -25
  37. package/src/layouts/NavMenu.vue +5 -1
  38. package/src/layouts/PropsPanel.vue +14 -4
  39. package/src/layouts/sidebar/ComponentListPanel.vue +8 -5
  40. package/src/layouts/sidebar/LayerMenu.vue +13 -25
  41. package/src/layouts/sidebar/LayerNode.vue +40 -0
  42. package/src/layouts/sidebar/LayerPanel.vue +70 -27
  43. package/src/layouts/sidebar/Sidebar.vue +11 -7
  44. package/src/layouts/sidebar/code-block/CodeBlockEditor.vue +8 -4
  45. package/src/layouts/sidebar/code-block/CodeBlockList.vue +5 -1
  46. package/src/layouts/sidebar/data-source/DataSourceConfigPanel.vue +4 -0
  47. package/src/layouts/sidebar/data-source/DataSourceListPanel.vue +22 -2
  48. package/src/layouts/workspace/Breadcrumb.vue +5 -1
  49. package/src/layouts/workspace/PageBar.vue +5 -1
  50. package/src/layouts/workspace/PageBarScrollContainer.vue +5 -1
  51. package/src/layouts/workspace/Stage.vue +29 -7
  52. package/src/layouts/workspace/ViewerMenu.vue +15 -36
  53. package/src/layouts/workspace/Workspace.vue +9 -134
  54. package/src/services/codeBlock.ts +3 -2
  55. package/src/services/dep.ts +4 -0
  56. package/src/services/keybinding.ts +185 -0
  57. package/src/services/storage.ts +3 -2
  58. package/src/theme/content-menu.scss +1 -1
  59. package/src/theme/data-source-input.scss +18 -0
  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/resizer.scss +25 -10
  64. package/src/theme/stage.scss +4 -0
  65. package/src/theme/theme.scss +1 -0
  66. package/src/type.ts +59 -1
  67. package/src/utils/config.ts +1 -1
  68. package/src/utils/content-menu.ts +92 -0
  69. package/src/utils/dep.ts +7 -1
  70. package/src/utils/keybinding-config.ts +120 -0
  71. package/src/utils/props.ts +34 -0
  72. package/types/Editor.vue.d.ts +7 -1
  73. package/types/components/CodeDraftEditor.vue.d.ts +6 -3
  74. package/types/components/ContentMenu.vue.d.ts +10 -5
  75. package/types/components/FunctionEditor.vue.d.ts +74 -51
  76. package/types/components/Icon.vue.d.ts +2 -2
  77. package/types/{layouts → components}/Resizer.vue.d.ts +2 -2
  78. package/types/components/ScrollBar.vue.d.ts +1 -1
  79. package/types/components/ScrollViewer.vue.d.ts +8 -5
  80. package/types/components/SearchInput.vue.d.ts +1 -1
  81. package/types/components/{Layout.vue.d.ts → SplitView.vue.d.ts} +9 -6
  82. package/types/components/ToolButton.vue.d.ts +8 -5
  83. package/types/editorProps.d.ts +4 -1
  84. package/types/fields/Code.vue.d.ts +1 -1
  85. package/types/fields/CodeLink.vue.d.ts +9 -9
  86. package/types/fields/CodeSelect.vue.d.ts +10 -7
  87. package/types/fields/CodeSelectCol.vue.d.ts +8 -5
  88. package/types/fields/DataSourceFields.vue.d.ts +8 -5
  89. package/types/fields/DataSourceInput.vue.d.ts +54 -0
  90. package/types/fields/DataSourceSelect.vue.d.ts +56 -0
  91. package/types/fields/EventSelect.vue.d.ts +3 -3
  92. package/types/fields/KeyValue.vue.d.ts +8 -5
  93. package/types/fields/UISelect.vue.d.ts +1 -1
  94. package/types/icons/AppManageIcon.vue.d.ts +1 -1
  95. package/types/icons/CenterIcon.vue.d.ts +2 -0
  96. package/types/icons/CodeIcon.vue.d.ts +1 -1
  97. package/types/index.d.ts +7 -2
  98. package/types/initService.d.ts +1 -1
  99. package/types/layouts/AddPageBox.vue.d.ts +1 -1
  100. package/types/layouts/CodeEditor.vue.d.ts +16 -10
  101. package/types/layouts/Framework.vue.d.ts +11 -32
  102. package/types/layouts/NavMenu.vue.d.ts +7 -4
  103. package/types/layouts/PropsPanel.vue.d.ts +276 -4
  104. package/types/layouts/sidebar/ComponentListPanel.vue.d.ts +4 -4
  105. package/types/layouts/sidebar/LayerMenu.vue.d.ts +2 -2
  106. package/types/layouts/sidebar/LayerNode.vue.d.ts +16 -0
  107. package/types/layouts/sidebar/LayerPanel.vue.d.ts +5 -5
  108. package/types/layouts/sidebar/Sidebar.vue.d.ts +18 -15
  109. package/types/layouts/sidebar/code-block/CodeBlockEditor.vue.d.ts +4 -4
  110. package/types/layouts/sidebar/code-block/CodeBlockList.vue.d.ts +7 -7
  111. package/types/layouts/sidebar/data-source/DataSourceConfigPanel.vue.d.ts +1 -1
  112. package/types/layouts/sidebar/data-source/DataSourceListPanel.vue.d.ts +3 -3
  113. package/types/layouts/workspace/Breadcrumb.vue.d.ts +1 -1
  114. package/types/layouts/workspace/PageBar.vue.d.ts +5 -5
  115. package/types/layouts/workspace/PageBarScrollContainer.vue.d.ts +2 -2
  116. package/types/layouts/workspace/Stage.vue.d.ts +2 -2
  117. package/types/layouts/workspace/ViewerMenu.vue.d.ts +7 -4
  118. package/types/layouts/workspace/Workspace.vue.d.ts +9 -9
  119. package/types/services/keybinding.d.ts +20 -0
  120. package/types/type.d.ts +56 -1
  121. package/types/utils/config.d.ts +1 -1
  122. package/types/utils/content-menu.d.ts +7 -0
  123. package/types/utils/keybinding-config.d.ts +3 -0
  124. package/src/layouts/Resizer.vue +0 -32
@@ -0,0 +1,92 @@
1
+ import { computed, markRaw, Ref, ref } from 'vue';
2
+ import { CopyDocument, Delete, DocumentCopy } from '@element-plus/icons-vue';
3
+
4
+ import { Id, MContainer, NodeType } from '@tmagic/schema';
5
+ import { isPage } from '@tmagic/utils';
6
+
7
+ import ContentMenu from '@editor/components/ContentMenu.vue';
8
+ import type { MenuButton, Services } from '@editor/type';
9
+
10
+ export const useDeleteMenu = (): MenuButton => ({
11
+ type: 'button',
12
+ text: '删除',
13
+ icon: Delete,
14
+ display: (services) => {
15
+ const node = services?.editorService?.get('node');
16
+ return node?.type !== NodeType.ROOT && !isPage(node);
17
+ },
18
+ handler: (services) => {
19
+ const nodes = services?.editorService?.get('nodes');
20
+ nodes && services?.editorService?.remove(nodes);
21
+ },
22
+ });
23
+
24
+ const canPaste = ref(false);
25
+
26
+ export const useCopyMenu = (): MenuButton => ({
27
+ type: 'button',
28
+ text: '复制',
29
+ icon: markRaw(CopyDocument),
30
+ handler: (services) => {
31
+ const nodes = services?.editorService?.get('nodes');
32
+ nodes && services?.editorService?.copy(nodes);
33
+ canPaste.value = true;
34
+ },
35
+ });
36
+
37
+ export const usePasteMenu = (menu?: Ref<InstanceType<typeof ContentMenu> | undefined>): MenuButton => ({
38
+ type: 'button',
39
+ text: '粘贴',
40
+ icon: markRaw(DocumentCopy),
41
+ display: () => canPaste.value,
42
+ handler: (services) => {
43
+ const nodes = services?.editorService?.get('nodes');
44
+ if (!nodes || nodes.length === 0) return;
45
+
46
+ if (menu?.value?.$el) {
47
+ const stage = services?.editorService?.get('stage');
48
+ const rect = menu.value.$el.getBoundingClientRect();
49
+ const parentRect = stage?.container?.getBoundingClientRect();
50
+ const initialLeft = (rect.left || 0) - (parentRect?.left || 0);
51
+ const initialTop = (rect.top || 0) - (parentRect?.top || 0);
52
+ services?.editorService?.paste({ left: initialLeft, top: initialTop });
53
+ } else {
54
+ services?.editorService?.paste();
55
+ }
56
+ },
57
+ });
58
+
59
+ const moveTo = (id: Id, services?: Services) => {
60
+ if (!services?.editorService) return;
61
+
62
+ const nodes = services.editorService.get('nodes') || [];
63
+ const parent = services.editorService.getNodeById(id) as MContainer;
64
+
65
+ if (!parent) return;
66
+
67
+ services?.editorService.add(nodes, parent);
68
+ services?.editorService.remove(nodes);
69
+ };
70
+
71
+ export const useMoveToMenu = (services?: Services): MenuButton => {
72
+ const root = computed(() => services?.editorService?.get('root'));
73
+
74
+ return {
75
+ type: 'button',
76
+ text: '移动至',
77
+ display: (services) => {
78
+ const node = services?.editorService?.get('node');
79
+ const pageLength = services?.editorService?.get('pageLength') || 0;
80
+ return !isPage(node) && pageLength > 1;
81
+ },
82
+ items: (root.value?.items || [])
83
+ .filter((page) => page.id !== services?.editorService?.get('page')?.id)
84
+ .map((page) => ({
85
+ text: `${page.name}(${page.id})`,
86
+ type: 'button',
87
+ handler: (services?: Services) => {
88
+ moveTo(page.id, services);
89
+ },
90
+ })),
91
+ };
92
+ };
package/src/utils/dep.ts CHANGED
@@ -11,6 +11,10 @@ export const createCodeBlockTarget = (id: Id, codeBlock: CodeBlockContent) =>
11
11
  id,
12
12
  name: codeBlock.name,
13
13
  isTarget: (key: string | number, value: any) => {
14
+ if (id === value) {
15
+ return true;
16
+ }
17
+
14
18
  if (value?.hookType === HookType.CODE && !isEmpty(value.hookData)) {
15
19
  const index = value.hookData.findIndex((item: HookData) => item.codeId === id);
16
20
  return Boolean(index > -1);
@@ -25,5 +29,7 @@ export const createDataSourceTarget = (id: Id, ds: DataSourceSchema) =>
25
29
  type: 'data-source',
26
30
  id,
27
31
  name: ds.title || `${id}`,
28
- isTarget: (key: string | number, value: any) => typeof value === 'string' && value.includes(`${id}`),
32
+ isTarget: (key: string | number, value: any) =>
33
+ // 关联数据源对象或者在模板在使用数据源
34
+ (value.isBindDataSource && value.dataSourceId) || (typeof value === 'string' && value.includes(`${id}`)),
29
35
  });
@@ -0,0 +1,120 @@
1
+ import { KeyBindingCommand, KeyBindingItem } from '@editor/type';
2
+
3
+ export default [
4
+ {
5
+ command: KeyBindingCommand.DELETE_NODE,
6
+ keybinding: ['delete', 'backspace'],
7
+ when: [
8
+ ['stage', 'keyup'],
9
+ ['layer-panel', 'keydown'],
10
+ ],
11
+ },
12
+ {
13
+ command: KeyBindingCommand.COPY_NODE,
14
+ keybinding: 'ctrl+c',
15
+ when: [
16
+ ['stage', 'keydown'],
17
+ ['layer-panel', 'keydown'],
18
+ ],
19
+ },
20
+ {
21
+ command: KeyBindingCommand.PASTE_NODE,
22
+ keybinding: 'ctrl+v',
23
+ when: [
24
+ ['stage', 'keydown'],
25
+ ['layer-panel', 'keydown'],
26
+ ],
27
+ },
28
+ {
29
+ command: KeyBindingCommand.CUT_NODE,
30
+ keybinding: 'ctrl+x',
31
+ when: [
32
+ ['stage', 'keydown'],
33
+ ['layer-panel', 'keydown'],
34
+ ],
35
+ },
36
+ {
37
+ command: KeyBindingCommand.UNDO,
38
+ keybinding: 'ctrl+z',
39
+ when: [
40
+ ['stage', 'keydown'],
41
+ ['layer-panel', 'keydown'],
42
+ ],
43
+ },
44
+ {
45
+ command: KeyBindingCommand.REDO,
46
+ keybinding: 'ctrl+shift+z',
47
+ when: [
48
+ ['stage', 'keydown'],
49
+ ['layer-panel', 'keydown'],
50
+ ],
51
+ },
52
+ {
53
+ command: KeyBindingCommand.MOVE_UP_1,
54
+ keybinding: 'up',
55
+ when: [['stage', 'keydown']],
56
+ },
57
+ {
58
+ command: KeyBindingCommand.MOVE_DOWN_1,
59
+ keybinding: 'down',
60
+ when: [['stage', 'keydown']],
61
+ },
62
+ {
63
+ command: KeyBindingCommand.MOVE_LEFT_1,
64
+ keybinding: 'left',
65
+ when: [['stage', 'keydown']],
66
+ },
67
+ {
68
+ command: KeyBindingCommand.MOVE_RIGHT_1,
69
+ keybinding: 'right',
70
+ when: [['stage', 'keydown']],
71
+ },
72
+ {
73
+ command: KeyBindingCommand.MOVE_UP_10,
74
+ keybinding: 'ctrl+up',
75
+ when: [['stage', 'keydown']],
76
+ },
77
+ {
78
+ command: KeyBindingCommand.MOVE_DOWN_10,
79
+ keybinding: 'ctrl+down',
80
+ when: [['stage', 'keydown']],
81
+ },
82
+ {
83
+ command: KeyBindingCommand.MOVE_LEFT_10,
84
+ keybinding: 'ctrl+left',
85
+ when: [['stage', 'keydown']],
86
+ },
87
+ {
88
+ command: KeyBindingCommand.MOVE_RIGHT_10,
89
+ keybinding: 'ctrl+right',
90
+ when: [['stage', 'keydown']],
91
+ },
92
+ {
93
+ command: KeyBindingCommand.SWITCH_NODE,
94
+ keybinding: 'tab',
95
+ when: [
96
+ ['stage', 'keydown'],
97
+ ['layer-panel', 'keydown'],
98
+ ],
99
+ },
100
+ {
101
+ command: KeyBindingCommand.ZOOM_IN,
102
+ keybinding: ['ctrl+=', 'ctrl+numpadplus'],
103
+ when: [['stage', 'keydown']],
104
+ },
105
+ {
106
+ command: KeyBindingCommand.ZOOM_OUT,
107
+ keybinding: ['ctrl+-', 'ctrl+numpad-'],
108
+ when: [['stage', 'keydown']],
109
+ },
110
+ {
111
+ command: KeyBindingCommand.ZOOM_FIT,
112
+ keybinding: 'ctrl+0',
113
+ when: [['stage', 'keydown']],
114
+ },
115
+ {
116
+ command: KeyBindingCommand.ZOOM_RESET,
117
+ keybinding: 'ctrl+1',
118
+ when: [['stage', 'keydown']],
119
+ },
120
+ ] as KeyBindingItem[];
@@ -105,6 +105,40 @@ export const fillConfig = (config: FormConfig = []) => [
105
105
  },
106
106
  ],
107
107
  },
108
+ {
109
+ type: 'fieldset',
110
+ legend: '边框',
111
+ items: [
112
+ {
113
+ name: 'borderWidth',
114
+ text: '宽度',
115
+ defaultValue: '0',
116
+ },
117
+ {
118
+ name: 'borderColor',
119
+ text: '颜色',
120
+ type: 'colorPicker',
121
+ },
122
+ {
123
+ name: 'borderStyle',
124
+ text: '样式',
125
+ type: 'select',
126
+ defaultValue: 'none',
127
+ options: [
128
+ { text: 'none', value: 'none' },
129
+ { text: 'hidden', value: 'hidden' },
130
+ { text: 'dotted', value: 'dotted' },
131
+ { text: 'dashed', value: 'dashed' },
132
+ { text: 'solid', value: 'solid' },
133
+ { text: 'double', value: 'double' },
134
+ { text: 'groove', value: 'groove' },
135
+ { text: 'ridge', value: 'ridge' },
136
+ { text: 'inset', value: 'inset' },
137
+ { text: 'outset', value: 'outset' },
138
+ ],
139
+ },
140
+ ],
141
+ },
108
142
  {
109
143
  type: 'fieldset',
110
144
  legend: '背景',
@@ -90,6 +90,9 @@ declare const _default: import("vue").DefineComponent<{
90
90
  disabledDragStart: {
91
91
  type: BooleanConstructor;
92
92
  };
93
+ extendFormState: {
94
+ type: import("vue").PropType<(state: import("@tmagic/form").FormState) => Record<string, any> | Promise<Record<string, any>>>;
95
+ };
93
96
  }, Services, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("update:modelValue" | "props-panel-mounted")[], "update:modelValue" | "props-panel-mounted", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
94
97
  modelValue: {
95
98
  type: import("vue").PropType<import("@tmagic/schema").MApp>;
@@ -181,6 +184,9 @@ declare const _default: import("vue").DefineComponent<{
181
184
  disabledDragStart: {
182
185
  type: BooleanConstructor;
183
186
  };
187
+ extendFormState: {
188
+ type: import("vue").PropType<(state: import("@tmagic/form").FormState) => Record<string, any> | Promise<Record<string, any>>>;
189
+ };
184
190
  }>> & {
185
191
  "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
186
192
  "onProps-panel-mounted"?: ((...args: any[]) => any) | undefined;
@@ -205,5 +211,5 @@ declare const _default: import("vue").DefineComponent<{
205
211
  containerHighlightDuration: number;
206
212
  containerHighlightType: import("@tmagic/stage").ContainerHighlightType;
207
213
  disabledDragStart: boolean;
208
- }>;
214
+ }, {}>;
209
215
  export default _default;
@@ -40,7 +40,7 @@ declare const _default: import("vue").DefineComponent<__VLS_WithDefaults<__VLS_T
40
40
  }, {
41
41
  editable: boolean;
42
42
  autoSaveDraft: boolean;
43
- }>;
43
+ }, {}>;
44
44
  export default _default;
45
45
  type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
46
46
  type __VLS_TypePropsToRuntimeProps<T> = {
@@ -52,7 +52,10 @@ type __VLS_TypePropsToRuntimeProps<T> = {
52
52
  };
53
53
  };
54
54
  type __VLS_WithDefaults<P, D> = {
55
- [K in keyof Pick<P, keyof P>]: K extends keyof D ? P[K] & {
55
+ [K in keyof Pick<P, keyof P>]: K extends keyof D ? __VLS_Prettify<P[K] & {
56
56
  default: D[K];
57
- } : P[K];
57
+ }> : P[K];
58
58
  };
59
+ type __VLS_Prettify<T> = {
60
+ [K in keyof T]: T[K];
61
+ } & {};
@@ -6,21 +6,23 @@ declare const _default: import("vue").DefineComponent<__VLS_WithDefaults<__VLS_T
6
6
  menuData: () => never[];
7
7
  isSubMenu: boolean;
8
8
  }>, {
9
+ menu: import("vue").Ref<HTMLDivElement | undefined>;
9
10
  hide: () => void;
10
11
  show: (e: MouseEvent) => void;
11
- }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("show" | "hide")[], "show" | "hide", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<{
12
+ contains: (el: HTMLElement) => any;
13
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("hide" | "show")[], "hide" | "show", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<{
12
14
  menuData?: (MenuButton | MenuComponent)[] | undefined;
13
15
  isSubMenu?: boolean | undefined;
14
16
  }>, {
15
17
  menuData: () => never[];
16
18
  isSubMenu: boolean;
17
19
  }>>> & {
18
- onShow?: ((...args: any[]) => any) | undefined;
19
20
  onHide?: ((...args: any[]) => any) | undefined;
21
+ onShow?: ((...args: any[]) => any) | undefined;
20
22
  }, {
21
23
  menuData: (MenuButton | MenuComponent)[];
22
24
  isSubMenu: boolean;
23
- }>;
25
+ }, {}>;
24
26
  export default _default;
25
27
  type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
26
28
  type __VLS_TypePropsToRuntimeProps<T> = {
@@ -32,7 +34,10 @@ type __VLS_TypePropsToRuntimeProps<T> = {
32
34
  };
33
35
  };
34
36
  type __VLS_WithDefaults<P, D> = {
35
- [K in keyof Pick<P, keyof P>]: K extends keyof D ? P[K] & {
37
+ [K in keyof Pick<P, keyof P>]: K extends keyof D ? __VLS_Prettify<P[K] & {
36
38
  default: D[K];
37
- } : P[K];
39
+ }> : P[K];
38
40
  };
41
+ type __VLS_Prettify<T> = {
42
+ [K in keyof T]: T[K];
43
+ } & {};
@@ -22,38 +22,60 @@ declare const _default: import("vue").DefineComponent<__VLS_WithDefaults<__VLS_T
22
22
  codeDraftEditor: import("vue").Ref<({
23
23
  $: import("vue").ComponentInternalInstance;
24
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
- }>> & {
25
+ $props: {
26
+ editable?: boolean | undefined;
27
+ autoSaveDraft?: boolean | undefined;
28
+ key?: string | number | symbol | undefined;
29
+ ref?: import("vue").VNodeRef | undefined;
30
+ ref_for?: boolean | undefined;
31
+ ref_key?: string | undefined;
32
+ onVnodeBeforeMount?: ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
33
+ [key: string]: any;
34
+ }>) => void) | ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
35
+ [key: string]: any;
36
+ }>) => void)[] | undefined;
37
+ onVnodeMounted?: ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
38
+ [key: string]: any;
39
+ }>) => void) | ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
40
+ [key: string]: any;
41
+ }>) => void)[] | undefined;
42
+ onVnodeBeforeUpdate?: ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
43
+ [key: string]: any;
44
+ }>, oldVNode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
45
+ [key: string]: any;
46
+ }>) => void) | ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
47
+ [key: string]: any;
48
+ }>, oldVNode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
49
+ [key: string]: any;
50
+ }>) => void)[] | undefined;
51
+ onVnodeUpdated?: ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
52
+ [key: string]: any;
53
+ }>, oldVNode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
54
+ [key: string]: any;
55
+ }>) => void) | ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
56
+ [key: string]: any;
57
+ }>, oldVNode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
58
+ [key: string]: any;
59
+ }>) => void)[] | undefined;
60
+ onVnodeBeforeUnmount?: ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
61
+ [key: string]: any;
62
+ }>) => void) | ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
63
+ [key: string]: any;
64
+ }>) => void)[] | undefined;
65
+ onVnodeUnmounted?: ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
66
+ [key: string]: any;
67
+ }>) => void) | ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
68
+ [key: string]: any;
69
+ }>) => void)[] | undefined;
70
+ class?: unknown;
71
+ style?: unknown;
72
+ readonly id: Id;
73
+ readonly language?: string | undefined;
74
+ readonly codeOptions?: Object | undefined;
75
+ readonly content: string;
54
76
  onClose?: ((...args: any[]) => any) | undefined;
55
77
  onSaveAndClose?: ((...args: any[]) => any) | undefined;
56
- } & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, "editable" | "autoSaveDraft">;
78
+ };
57
79
  $attrs: {
58
80
  [x: string]: unknown;
59
81
  };
@@ -61,10 +83,10 @@ declare const _default: import("vue").DefineComponent<__VLS_WithDefaults<__VLS_T
61
83
  [x: string]: unknown;
62
84
  };
63
85
  $slots: Readonly<{
64
- [name: string]: import("vue").Slot | undefined;
86
+ [name: string]: import("vue").Slot<any> | undefined;
65
87
  }>;
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;
88
+ $root: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}>, {}, {}> | null;
89
+ $parent: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}>, {}, {}> | null;
68
90
  $emit: (event: "close" | "saveAndClose", ...args: any[]) => void;
69
91
  $el: any;
70
92
  $options: import("vue").ComponentOptionsBase<Readonly<import("vue").ExtractPropTypes<{
@@ -74,9 +96,11 @@ declare const _default: import("vue").DefineComponent<__VLS_WithDefaults<__VLS_T
74
96
  };
75
97
  editable: {
76
98
  type: import("vue").PropType<boolean>;
77
- } & {
78
99
  default: boolean;
79
100
  };
101
+ language: {
102
+ type: import("vue").PropType<string>;
103
+ };
80
104
  codeOptions: {
81
105
  type: import("vue").PropType<Object>;
82
106
  };
@@ -84,24 +108,21 @@ declare const _default: import("vue").DefineComponent<__VLS_WithDefaults<__VLS_T
84
108
  type: import("vue").PropType<string>;
85
109
  required: true;
86
110
  };
87
- language: {
88
- type: import("vue").PropType<string>;
89
- };
90
111
  autoSaveDraft: {
91
112
  type: import("vue").PropType<boolean>;
92
- } & {
93
113
  default: boolean;
94
114
  };
95
115
  }>> & {
96
116
  onClose?: ((...args: any[]) => any) | undefined;
97
117
  onSaveAndClose?: ((...args: any[]) => any) | undefined;
98
118
  }, {
119
+ /** 代码块id */
99
120
  saveAndClose: () => void;
100
121
  close: () => Promise<void>;
101
122
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("close" | "saveAndClose")[], string, {
102
123
  editable: boolean;
103
124
  autoSaveDraft: boolean;
104
- }> & {
125
+ }, {}, string, {}> & {
105
126
  beforeCreate?: ((() => void) | (() => void)[]) | undefined;
106
127
  created?: ((() => void) | (() => void)[]) | undefined;
107
128
  beforeMount?: ((() => void) | (() => void)[]) | undefined;
@@ -116,11 +137,11 @@ declare const _default: import("vue").DefineComponent<__VLS_WithDefaults<__VLS_T
116
137
  unmounted?: ((() => void) | (() => void)[]) | undefined;
117
138
  renderTracked?: (((e: import("vue").DebuggerEvent) => void) | ((e: import("vue").DebuggerEvent) => void)[]) | undefined;
118
139
  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;
140
+ 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;
120
141
  };
121
142
  $forceUpdate: () => void;
122
143
  $nextTick: typeof import("vue").nextTick;
123
- $watch(source: string | Function, cb: Function, options?: import("vue").WatchOptions<boolean> | undefined): import("vue").WatchStopHandle;
144
+ $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;
124
145
  } & Readonly<import("vue").ExtractPropTypes<{
125
146
  id: {
126
147
  type: import("vue").PropType<Id>;
@@ -128,9 +149,11 @@ declare const _default: import("vue").DefineComponent<__VLS_WithDefaults<__VLS_T
128
149
  };
129
150
  editable: {
130
151
  type: import("vue").PropType<boolean>;
131
- } & {
132
152
  default: boolean;
133
153
  };
154
+ language: {
155
+ type: import("vue").PropType<string>;
156
+ };
134
157
  codeOptions: {
135
158
  type: import("vue").PropType<Object>;
136
159
  };
@@ -138,22 +161,19 @@ declare const _default: import("vue").DefineComponent<__VLS_WithDefaults<__VLS_T
138
161
  type: import("vue").PropType<string>;
139
162
  required: true;
140
163
  };
141
- language: {
142
- type: import("vue").PropType<string>;
143
- };
144
164
  autoSaveDraft: {
145
165
  type: import("vue").PropType<boolean>;
146
- } & {
147
166
  default: boolean;
148
167
  };
149
168
  }>> & {
150
169
  onClose?: ((...args: any[]) => any) | undefined;
151
170
  onSaveAndClose?: ((...args: any[]) => any) | undefined;
152
171
  } & import("vue").ShallowUnwrapRef<{
172
+ /** 代码块id */
153
173
  saveAndClose: () => void;
154
174
  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<{
175
+ }> & {} & import("vue").ComponentCustomProperties & {}) | undefined>;
176
+ }, 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<{
157
177
  /** 代码块id */
158
178
  id: Id;
159
179
  /** 代码块名称 */
@@ -174,7 +194,7 @@ declare const _default: import("vue").DefineComponent<__VLS_WithDefaults<__VLS_T
174
194
  }>>>, {
175
195
  editable: boolean;
176
196
  autoSaveDraft: boolean;
177
- }>;
197
+ }, {}>;
178
198
  export default _default;
179
199
  type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
180
200
  type __VLS_TypePropsToRuntimeProps<T> = {
@@ -186,7 +206,10 @@ type __VLS_TypePropsToRuntimeProps<T> = {
186
206
  };
187
207
  };
188
208
  type __VLS_WithDefaults<P, D> = {
189
- [K in keyof Pick<P, keyof P>]: K extends keyof D ? P[K] & {
209
+ [K in keyof Pick<P, keyof P>]: K extends keyof D ? __VLS_Prettify<P[K] & {
190
210
  default: D[K];
191
- } : P[K];
211
+ }> : P[K];
192
212
  };
213
+ type __VLS_Prettify<T> = {
214
+ [K in keyof T]: T[K];
215
+ } & {};
@@ -1,8 +1,8 @@
1
1
  declare const _default: import("vue").DefineComponent<__VLS_TypePropsToRuntimeProps<{
2
2
  icon?: any;
3
- }>, {}, 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<{
3
+ }>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToRuntimeProps<{
4
4
  icon?: any;
5
- }>>>, {}>;
5
+ }>>>, {}, {}>;
6
6
  export default _default;
7
7
  type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
8
8
  type __VLS_TypePropsToRuntimeProps<T> = {
@@ -1,7 +1,7 @@
1
1
  declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "change"[], "change", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>> & {
2
2
  onChange?: ((...args: any[]) => any) | undefined;
3
- }, {}>, {
4
- default: (_: {}) => any;
3
+ }, {}, {}>, {
4
+ default?(_: {}): any;
5
5
  }>;
6
6
  export default _default;
7
7
  type __VLS_WithTemplateSlots<T, S> = T & {
@@ -10,7 +10,7 @@ declare const _default: import("vue").DefineComponent<__VLS_TypePropsToRuntimePr
10
10
  pos: number;
11
11
  }>>> & {
12
12
  onScroll?: ((...args: any[]) => any) | undefined;
13
- }, {}>;
13
+ }, {}, {}>;
14
14
  export default _default;
15
15
  type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
16
16
  type __VLS_TypePropsToRuntimeProps<T> = {
@@ -20,7 +20,7 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__
20
20
  };
21
21
  }>, {
22
22
  container: import("vue").Ref<HTMLDivElement | undefined>;
23
- }, 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<{
23
+ }, 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<{
24
24
  width?: number | undefined;
25
25
  height?: number | undefined;
26
26
  wrapWidth?: number | undefined;
@@ -50,8 +50,8 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__
50
50
  width: number;
51
51
  height: number;
52
52
  };
53
- }>, {
54
- default: (_: {}) => any;
53
+ }, {}>, {
54
+ default?(_: {}): any;
55
55
  }>;
56
56
  export default _default;
57
57
  type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
@@ -64,12 +64,15 @@ type __VLS_TypePropsToRuntimeProps<T> = {
64
64
  };
65
65
  };
66
66
  type __VLS_WithDefaults<P, D> = {
67
- [K in keyof Pick<P, keyof P>]: K extends keyof D ? P[K] & {
67
+ [K in keyof Pick<P, keyof P>]: K extends keyof D ? __VLS_Prettify<P[K] & {
68
68
  default: D[K];
69
- } : P[K];
69
+ }> : P[K];
70
70
  };
71
71
  type __VLS_WithTemplateSlots<T, S> = T & {
72
72
  new (): {
73
73
  $slots: S;
74
74
  };
75
75
  };
76
+ type __VLS_Prettify<T> = {
77
+ [K in keyof T]: T[K];
78
+ } & {};