mce 0.12.5 → 0.13.1

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.
@@ -47,6 +47,12 @@ declare const _default: {
47
47
  'view:timeline': string;
48
48
  'view:statusbar': string;
49
49
  'view:frameOutline': string;
50
+ 'checkerboardStyle:grid': string;
51
+ 'checkerboardStyle:dot': string;
52
+ panels: string;
53
+ 'panels:layers': string;
54
+ pixelate: string;
55
+ layers: string;
50
56
  zoomIn: string;
51
57
  zoomOut: string;
52
58
  zoomTo100: string;
@@ -0,0 +1,84 @@
1
+ declare const _default: {
2
+ cancel: string;
3
+ constrainToAxis: string;
4
+ loading: string;
5
+ exporting: string;
6
+ selecting: string;
7
+ selectObject: string;
8
+ commitChanges: string;
9
+ extend: string;
10
+ goBackSelectedArea: string;
11
+ selectArea: string;
12
+ dragSelected: string;
13
+ file: string;
14
+ new: string;
15
+ open: string;
16
+ import: string;
17
+ export: string;
18
+ 'saveAs:png': string;
19
+ 'saveAs:jpeg': string;
20
+ 'saveAs:webp': string;
21
+ 'saveAs:svg': string;
22
+ 'saveAs:gif': string;
23
+ 'saveAs:mp4': string;
24
+ 'saveAs:pdf': string;
25
+ 'saveAs:pptx': string;
26
+ 'saveAs:json': string;
27
+ edit: string;
28
+ undo: string;
29
+ redo: string;
30
+ cut: string;
31
+ copy: string;
32
+ copyAs: string;
33
+ 'copyAs:svg': string;
34
+ 'copyAs:json': string;
35
+ paste: string;
36
+ duplicate: string;
37
+ delete: string;
38
+ selectAll: string;
39
+ deselectAll: string;
40
+ selectParent: string;
41
+ previousSelection: string;
42
+ nextSelection: string;
43
+ view: string;
44
+ 'view:checkerboard': string;
45
+ 'view:pixelGrid': string;
46
+ 'view:ruler': string;
47
+ 'view:scrollbar': string;
48
+ 'view:timeline': string;
49
+ 'view:statusbar': string;
50
+ 'view:frameOutline': string;
51
+ 'checkerboardStyle:grid': string;
52
+ 'checkerboardStyle:dot': string;
53
+ panels: string;
54
+ 'panels:layers': string;
55
+ pixelate: string;
56
+ layers: string;
57
+ zoomIn: string;
58
+ zoomOut: string;
59
+ zoomTo100: string;
60
+ zoomToFit: string;
61
+ zoomToSelection: string;
62
+ object: string;
63
+ groupSelection: string;
64
+ frameSelection: string;
65
+ ungroup: string;
66
+ flip: string;
67
+ flipHorizontal: string;
68
+ flipVertical: string;
69
+ 'hide/show': string;
70
+ 'lock/unlock': string;
71
+ layerOrder: string;
72
+ bringToFront: string;
73
+ bringForward: string;
74
+ sendBackward: string;
75
+ sendToBack: string;
76
+ layerPosition: string;
77
+ alignLeft: string;
78
+ alignHorizontalCenter: string;
79
+ alignRight: string;
80
+ alignTop: string;
81
+ alignVerticalCenter: string;
82
+ alignBottom: string;
83
+ };
84
+ export default _default;
@@ -1,3 +1,4 @@
1
+ import type { CheckerboardStyle } from 'modern-canvas';
1
2
  declare global {
2
3
  namespace Mce {
3
4
  interface Options extends Partial<Config> {
@@ -15,14 +16,17 @@ declare global {
15
16
  interface Config {
16
17
  theme: Theme;
17
18
  viewMode: ViewMode;
19
+ watermark?: string;
18
20
  checkerboard: boolean;
21
+ checkerboardStyle: CheckerboardStyle;
19
22
  pixelGrid: boolean;
23
+ pixelate: boolean;
20
24
  camera: boolean;
21
25
  ruler: boolean;
22
26
  scrollbar: boolean;
27
+ layers: boolean;
23
28
  timeline: boolean;
24
29
  statusbar: boolean;
25
- wheelZoom: boolean;
26
30
  frameOutline: boolean;
27
31
  frameGap: number;
28
32
  typographyStrategy: TypographyStrategy;
@@ -18,6 +18,8 @@ declare global {
18
18
  drawboardPointer: Ref<Vector2Data | undefined>;
19
19
  doc: Ref<Doc>;
20
20
  root: ComputedRef<Node>;
21
+ nodes: Ref<Node[]>;
22
+ nodeIndexMap: Map<string, number>;
21
23
  state: Ref<State | undefined>;
22
24
  setState: (state: State, context?: StateContext) => void;
23
25
  stateContext: Ref<StateContext | undefined>;
@@ -1,9 +1,11 @@
1
- import type { Element2D } from 'modern-canvas';
1
+ import type { Node } from 'modern-canvas';
2
2
  import type { Ref } from 'vue';
3
+ import { Element2D } from 'modern-canvas';
3
4
  declare global {
4
5
  namespace Mce {
5
6
  interface Editor {
6
- selection: Ref<Element2D[]>;
7
+ selection: Ref<Node[]>;
8
+ elementSelection: Ref<Element2D[]>;
7
9
  textSelection: Ref<any[] | undefined>;
8
10
  hoverElement: Ref<Element2D | undefined>;
9
11
  }
@@ -1,5 +1,4 @@
1
- import type { Node } from 'modern-canvas';
2
- import { Element2D } from 'modern-canvas';
1
+ import { Element2D, Node } from 'modern-canvas';
3
2
  declare global {
4
3
  namespace Mce {
5
4
  type Tblock = 'top' | 'bottom';
@@ -17,9 +16,13 @@ declare global {
17
16
  };
18
17
  interface Editor {
19
18
  parseAnchor: (anchor: Anchor, isRtl?: boolean) => ParsedAnchor;
19
+ isRoot: (value: any) => value is Node;
20
+ isElement: (value: any) => value is Element2D;
20
21
  isFrame: (node: Node) => node is Element2D;
21
- isLocked: (element: Element2D) => boolean;
22
- setLock: (element: Element2D, lock: boolean) => void;
22
+ isVisible: (node: Node) => boolean;
23
+ setVisible: (node: Node, visible: boolean) => void;
24
+ isLock: (node: Node) => boolean;
25
+ setLock: (node: Node, lock: boolean) => void;
23
26
  }
24
27
  }
25
28
  }
@@ -1,4 +1,4 @@
1
- import type { Element2D } from 'modern-canvas';
1
+ import type { Element2D, Node } from 'modern-canvas';
2
2
  import type { ComputedRef, Ref } from 'vue';
3
3
  import type { AxisAlignedBoundingBox } from '../types';
4
4
  declare global {
@@ -14,7 +14,7 @@ declare global {
14
14
  currentFrameIndex: Ref<number>;
15
15
  currentFrame: ComputedRef<Element2D | undefined>;
16
16
  currentFrameAabb: ComputedRef<AxisAlignedBoundingBox>;
17
- getAncestorFrame: (element?: Element2D) => Element2D | undefined;
17
+ getAncestorFrame: (node?: Node) => Element2D | undefined;
18
18
  }
19
19
  }
20
20
  }
@@ -1,11 +1,12 @@
1
+ import type { ComputedRef } from 'vue';
1
2
  declare global {
2
3
  namespace Mce {
3
4
  interface Editor {
4
- getScreenCenterOffset: () => Required<ScreenCenterOffset>;
5
- getScreenCenter: () => {
5
+ screenCenterOffset: ComputedRef<Required<ScreenCenterOffset>>;
6
+ screenCenter: ComputedRef<{
6
7
  x: number;
7
8
  y: number;
8
- };
9
+ }>;
9
10
  }
10
11
  }
11
12
  }
@@ -1,4 +1,4 @@
1
- import type { Element2D } from 'modern-canvas';
1
+ import type { Node } from 'modern-canvas';
2
2
  declare global {
3
3
  namespace Mce {
4
4
  interface Hotkeys {
@@ -8,10 +8,10 @@ declare global {
8
8
  sendToBack: [event: KeyboardEvent];
9
9
  }
10
10
  interface Commands {
11
- bringToFront: (target?: Element2D | Element2D[]) => void;
12
- bringForward: (target?: Element2D) => void;
13
- sendBackward: (target?: Element2D) => void;
14
- sendToBack: (target?: Element2D | Element2D[]) => void;
11
+ bringToFront: (target?: Node | Node[]) => void;
12
+ bringForward: (target?: Node) => void;
13
+ sendBackward: (target?: Node) => void;
14
+ sendToBack: (target?: Node | Node[]) => void;
15
15
  }
16
16
  }
17
17
  }
@@ -5,7 +5,8 @@ declare global {
5
5
  key: string;
6
6
  disabled?: boolean;
7
7
  checked?: boolean;
8
- children: MenuItem[];
8
+ children?: MenuItem[];
9
+ handle?: (event: MouseEvent) => void;
9
10
  }
10
11
  interface Editor {
11
12
  mainMenu: ComputedRef<MenuItem[]>;
@@ -0,0 +1,12 @@
1
+ declare global {
2
+ namespace Mce {
3
+ interface Panels {
4
+ layers: [];
5
+ }
6
+ interface Commands {
7
+ panel: <T extends keyof Panels>(panel: T, ...args: Panels[T]) => Promise<boolean>;
8
+ }
9
+ }
10
+ }
11
+ declare const _default: import("..").Plugin;
12
+ export default _default;
@@ -45,6 +45,7 @@ import './plugins/menu'
45
45
  import './plugins/move'
46
46
  import './plugins/new'
47
47
  import './plugins/open'
48
+ import './plugins/panels'
48
49
  import './plugins/saveAs'
49
50
  import './plugins/scroll'
50
51
  import './plugins/select'
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "mce",
3
3
  "type": "module",
4
- "version": "0.12.5",
4
+ "version": "0.13.1",
5
5
  "description": "The headless canvas editor framework. only the ESM.",
6
6
  "author": "wxm",
7
7
  "license": "MIT",
@@ -61,7 +61,7 @@
61
61
  "diff": "^8.0.2",
62
62
  "file-saver": "^2.0.5",
63
63
  "lodash-es": "^4.17.21",
64
- "modern-canvas": "^0.13.0",
64
+ "modern-canvas": "^0.13.1",
65
65
  "modern-font": "^0.4.4",
66
66
  "modern-idoc": "^0.10.5",
67
67
  "modern-text": "^1.10.3",