@tmagic/editor 1.1.0-beta.9 → 1.1.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.
- package/dist/style.css +46 -0
- package/dist/tmagic-editor.mjs +971 -794
- package/dist/tmagic-editor.mjs.map +1 -1
- package/dist/tmagic-editor.umd.js +974 -794
- package/dist/tmagic-editor.umd.js.map +1 -1
- package/package.json +10 -10
- package/src/Editor.vue +15 -5
- package/src/components/ContentMenu.vue +4 -4
- package/src/components/Icon.vue +6 -20
- package/src/components/ScrollBar.vue +147 -0
- package/src/components/ScrollViewer.vue +89 -44
- package/src/components/ToolButton.vue +40 -138
- package/src/fields/UISelect.vue +2 -2
- package/src/index.ts +2 -0
- package/src/layouts/NavMenu.vue +156 -23
- package/src/layouts/PropsPanel.vue +49 -51
- package/src/layouts/sidebar/LayerMenu.vue +3 -3
- package/src/layouts/sidebar/LayerPanel.vue +39 -8
- package/src/layouts/workspace/PageBar.vue +1 -1
- package/src/layouts/workspace/Stage.vue +8 -90
- package/src/layouts/workspace/ViewerMenu.vue +3 -3
- package/src/layouts/workspace/Workspace.vue +133 -138
- package/src/services/componentList.ts +5 -0
- package/src/services/editor.ts +56 -19
- package/src/services/events.ts +8 -2
- package/src/services/props.ts +31 -52
- package/src/services/storage.ts +4 -0
- package/src/services/ui.ts +32 -30
- package/src/theme/nav-menu.scss +6 -0
- package/src/type.ts +26 -10
- package/src/utils/index.ts +1 -0
- package/src/utils/operator.ts +3 -3
- package/src/utils/props.ts +0 -3
- package/src/utils/scroll-viewer.ts +90 -158
- package/src/utils/stage.ts +91 -0
- package/types/Editor.vue.d.ts +7 -7
- package/types/components/ContentMenu.vue.d.ts +8 -8
- package/types/components/Icon.vue.d.ts +62 -12
- package/types/components/ScrollBar.vue.d.ts +83 -0
- package/types/components/ScrollViewer.vue.d.ts +131 -19
- package/types/components/ToolButton.vue.d.ts +56 -59
- package/types/index.d.ts +2 -0
- package/types/layouts/NavMenu.vue.d.ts +92 -23
- package/types/layouts/PropsPanel.vue.d.ts +25 -208
- package/types/layouts/sidebar/LayerMenu.vue.d.ts +7 -7
- package/types/layouts/sidebar/LayerPanel.vue.d.ts +17 -15
- package/types/layouts/workspace/Workspace.vue.d.ts +54 -4
- package/types/services/componentList.d.ts +1 -0
- package/types/services/editor.d.ts +1 -0
- package/types/services/events.d.ts +1 -0
- package/types/services/props.d.ts +41 -9
- package/types/services/storage.d.ts +1 -0
- package/types/services/ui.d.ts +3 -1
- package/types/type.d.ts +23 -10
- package/types/utils/index.d.ts +1 -0
- package/types/utils/operator.d.ts +1 -1
- package/types/utils/props.d.ts +0 -1
- package/types/utils/scroll-viewer.d.ts +16 -18
- package/types/utils/stage.d.ts +3 -0
package/types/type.d.ts
CHANGED
|
@@ -54,15 +54,20 @@ export interface PropsState {
|
|
|
54
54
|
export interface ComponentGroupState {
|
|
55
55
|
list: ComponentGroup[];
|
|
56
56
|
}
|
|
57
|
+
export declare enum ColumnLayout {
|
|
58
|
+
LEFT = "left",
|
|
59
|
+
CENTER = "center",
|
|
60
|
+
RIGHT = "right"
|
|
61
|
+
}
|
|
57
62
|
export interface SetColumnWidth {
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
63
|
+
[ColumnLayout.LEFT]?: number;
|
|
64
|
+
[ColumnLayout.CENTER]?: number | 'auto';
|
|
65
|
+
[ColumnLayout.RIGHT]?: number;
|
|
61
66
|
}
|
|
62
67
|
export interface GetColumnWidth {
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
68
|
+
[ColumnLayout.LEFT]: number;
|
|
69
|
+
[ColumnLayout.CENTER]: number;
|
|
70
|
+
[ColumnLayout.RIGHT]: number;
|
|
66
71
|
}
|
|
67
72
|
export interface StageRect {
|
|
68
73
|
width: number;
|
|
@@ -139,6 +144,7 @@ export interface MenuButton {
|
|
|
139
144
|
/** type为button/dropdown时点击运行的方法 */
|
|
140
145
|
handler?: (data: Services, event: MouseEvent) => Promise<any> | any;
|
|
141
146
|
/** type为dropdown时,下拉的菜单列表, 或者有子菜单时 */
|
|
147
|
+
className?: string;
|
|
142
148
|
items?: MenuButton[];
|
|
143
149
|
}
|
|
144
150
|
export interface MenuComponent {
|
|
@@ -151,6 +157,7 @@ export interface MenuComponent {
|
|
|
151
157
|
listeners?: Record<string, Function>;
|
|
152
158
|
slots?: Record<string, any>;
|
|
153
159
|
/** 是否显示,默认为true */
|
|
160
|
+
className?: string;
|
|
154
161
|
display?: boolean | ((data?: Services) => Promise<boolean> | boolean);
|
|
155
162
|
}
|
|
156
163
|
/**
|
|
@@ -161,15 +168,15 @@ export interface MenuComponent {
|
|
|
161
168
|
* 'zoom-in': 放大按钮
|
|
162
169
|
* 'zoom-out': 缩小按钮
|
|
163
170
|
*/
|
|
164
|
-
export declare type MenuItem = '/' | 'delete' | 'undo' | 'redo' | 'zoom' | 'zoom-in' | 'zoom-out' | 'guides' | 'rule' | MenuButton | MenuComponent;
|
|
171
|
+
export declare type MenuItem = '/' | 'delete' | 'undo' | 'redo' | 'zoom' | 'zoom-in' | 'zoom-out' | 'guides' | 'rule' | MenuButton | MenuComponent | string;
|
|
165
172
|
/** 工具栏 */
|
|
166
173
|
export interface MenuBarData {
|
|
167
174
|
/** 顶部工具栏左边项 */
|
|
168
|
-
|
|
175
|
+
[ColumnLayout.LEFT]?: MenuItem[];
|
|
169
176
|
/** 顶部工具栏中间项 */
|
|
170
|
-
|
|
177
|
+
[ColumnLayout.CENTER]?: MenuItem[];
|
|
171
178
|
/** 顶部工具栏右边项 */
|
|
172
|
-
|
|
179
|
+
[ColumnLayout.RIGHT]?: MenuItem[];
|
|
173
180
|
}
|
|
174
181
|
export interface SideComponent extends MenuComponent {
|
|
175
182
|
/** 显示文案 */
|
|
@@ -228,3 +235,9 @@ export declare enum Keys {
|
|
|
228
235
|
}
|
|
229
236
|
export declare const H_GUIDE_LINE_STORAGE_KEY = "$MagicStageHorizontalGuidelinesData";
|
|
230
237
|
export declare const V_GUIDE_LINE_STORAGE_KEY = "$MagicStageVerticalGuidelinesData";
|
|
238
|
+
export interface ScrollViewerEvent {
|
|
239
|
+
scrollLeft: number;
|
|
240
|
+
scrollTop: number;
|
|
241
|
+
scrollHeight: number;
|
|
242
|
+
scrollWidth: number;
|
|
243
|
+
}
|
package/types/utils/index.d.ts
CHANGED
|
@@ -17,5 +17,5 @@ export declare const getPositionInContainer: (position: PastePosition | undefine
|
|
|
17
17
|
left: number;
|
|
18
18
|
top: number;
|
|
19
19
|
};
|
|
20
|
-
export declare const getAddParent: (
|
|
20
|
+
export declare const getAddParent: (node: MNode) => MContainer | undefined;
|
|
21
21
|
export declare const getDefaultConfig: (addNode: AddMNode, parentNode: MContainer) => Promise<any>;
|
package/types/utils/props.d.ts
CHANGED
|
@@ -1,35 +1,33 @@
|
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
import { EventEmitter } from 'events';
|
|
1
3
|
interface ScrollViewerOptions {
|
|
2
4
|
container: HTMLDivElement;
|
|
3
5
|
target: HTMLDivElement;
|
|
4
6
|
zoom: number;
|
|
5
7
|
}
|
|
6
|
-
export declare class ScrollViewer {
|
|
7
|
-
private enter;
|
|
8
|
-
private targetEnter;
|
|
9
|
-
private keydown;
|
|
8
|
+
export declare class ScrollViewer extends EventEmitter {
|
|
10
9
|
private container;
|
|
11
10
|
private target;
|
|
12
11
|
private zoom;
|
|
13
12
|
private scrollLeft;
|
|
14
13
|
private scrollTop;
|
|
15
|
-
private
|
|
16
|
-
private
|
|
14
|
+
private scrollHeight;
|
|
15
|
+
private scrollWidth;
|
|
16
|
+
private width;
|
|
17
|
+
private height;
|
|
18
|
+
private translateXCorrectionValue;
|
|
19
|
+
private translateYCorrectionValue;
|
|
17
20
|
private resizeObserver;
|
|
18
21
|
constructor(options: ScrollViewerOptions);
|
|
19
22
|
destroy(): void;
|
|
20
23
|
setZoom(zoom: number): void;
|
|
21
|
-
|
|
22
|
-
|
|
24
|
+
scrollTo({ left, top }: {
|
|
25
|
+
left?: number;
|
|
26
|
+
top?: number;
|
|
27
|
+
}): void;
|
|
23
28
|
private wheelHandler;
|
|
24
|
-
private
|
|
25
|
-
private
|
|
26
|
-
private
|
|
27
|
-
private targetMouseLeaveHandler;
|
|
28
|
-
private mousedownHandler;
|
|
29
|
-
private mouseupHandler;
|
|
30
|
-
private mousemoveHandler;
|
|
31
|
-
private keydownHandler;
|
|
32
|
-
private keyupHandler;
|
|
33
|
-
private setScrollOffset;
|
|
29
|
+
private getPos;
|
|
30
|
+
private setScrollSize;
|
|
31
|
+
private setSize;
|
|
34
32
|
}
|
|
35
33
|
export {};
|