mce 0.15.24 → 0.15.26

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.
@@ -5,13 +5,17 @@ declare global {
5
5
  }
6
6
  type Theme = 'system' | 'light' | 'dark';
7
7
  type TypographyStrategy = 'autoHeight' | 'autoWidth' | 'fixedWidthHeight' | 'autoFontSize';
8
- type HandleShape = 'rect' | 'circle';
9
- interface ScreenCenterOffset {
8
+ interface ScreenOffset {
10
9
  left?: number;
11
10
  top?: number;
12
11
  right?: number;
13
12
  bottom?: number;
14
13
  }
14
+ interface TransformControlsConfig {
15
+ handleShape?: 'rect' | 'circle';
16
+ handleStrategy?: 'point';
17
+ rotator?: boolean;
18
+ }
15
19
  interface Config {
16
20
  theme: Theme;
17
21
  watermark?: string;
@@ -24,9 +28,9 @@ declare global {
24
28
  frameOutline: boolean;
25
29
  frameGap: number;
26
30
  typographyStrategy: TypographyStrategy;
27
- handleShape: HandleShape;
31
+ transformControls: TransformControlsConfig;
28
32
  localDb: boolean;
29
- screenCenterOffset: ScreenCenterOffset;
33
+ screenCenterOffset: ScreenOffset;
30
34
  }
31
35
  }
32
36
  }
@@ -2,7 +2,8 @@ import type { ComputedRef } from 'vue';
2
2
  declare global {
3
3
  namespace Mce {
4
4
  interface Editor {
5
- screenCenterOffset: ComputedRef<Required<ScreenCenterOffset>>;
5
+ screenControlsOffset: ComputedRef<Required<ScreenOffset>>;
6
+ screenCenterOffset: ComputedRef<Required<ScreenOffset>>;
6
7
  screenCenter: ComputedRef<{
7
8
  x: number;
8
9
  y: number;
@@ -3,6 +3,10 @@ declare global {
3
3
  namespace Mce {
4
4
  type ScrollTarget = 'root' | 'selection' | {
5
5
  x: number;
6
+ } | {
7
+ y: number;
8
+ } | {
9
+ x: number;
6
10
  y: number;
7
11
  } | Element2D[];
8
12
  interface ScrollToOptions {
@@ -2,7 +2,7 @@ import type { Element2D } from 'modern-canvas';
2
2
  declare global {
3
3
  namespace Mce {
4
4
  type ZoomTarget = 'root' | 'selection' | Element2D | Element2D[] | number;
5
- type ZoomToMode = 'contain' | 'cover';
5
+ type ZoomToMode = 'contain' | 'cover' | 'width' | 'height';
6
6
  interface ZoomToOptions {
7
7
  intoView?: boolean;
8
8
  mode?: ZoomToMode;
@@ -1,9 +1,15 @@
1
1
  declare global {
2
2
  namespace Mce {
3
3
  interface Commands {
4
+ enter: () => void;
4
5
  flipHorizontal: () => void;
5
6
  flipVertical: () => void;
6
7
  }
8
+ interface Hotkeys {
9
+ enter: [event: KeyboardEvent];
10
+ flipHorizontal: [event: KeyboardEvent];
11
+ flipVertical: [event: KeyboardEvent];
12
+ }
7
13
  }
8
14
  }
9
15
  declare const _default: import("..").Plugin;
@@ -1,21 +1,27 @@
1
- import type { PointerInputEvent } from 'modern-canvas';
2
- import type { AxisAlignedBoundingBox } from '../types';
1
+ import type { Element2D, PointerInputEvent } from 'modern-canvas';
3
2
  declare global {
4
3
  namespace Mce {
5
- interface StartPointerdownOptions {
4
+ interface PointerDownOptions {
6
5
  allowTopFrame?: boolean;
7
6
  }
8
7
  interface Commands {
9
- startPointerdown: (e: PointerInputEvent, options?: StartPointerdownOptions) => void;
8
+ pointerDown: (e: PointerInputEvent, options?: PointerDownOptions) => void;
10
9
  startTyping: (e?: MouseEvent | PointerEvent) => Promise<boolean>;
11
10
  startTransform: (e?: MouseEvent | PointerEvent) => boolean;
12
11
  openContextMenu: (e?: MouseEvent | PointerEvent) => boolean;
13
12
  layerScrollIntoView: () => boolean;
14
13
  }
14
+ type TransformableHandle = 'move' | 'resize-t' | 'resize-r' | 'resize-b' | 'resize-l' | 'resize-tl' | 'resize-tr' | 'resize-bl' | 'resize-br' | 'rotate-tl' | 'rotate-tr' | 'rotate-bl' | 'rotate-br' | 'round-tl' | 'round-tr' | 'round-bl' | 'round-br';
15
+ interface SelectionTransformContext {
16
+ startEvent: MouseEvent | PointerEvent;
17
+ handle: TransformableHandle;
18
+ elements: Element2D[];
19
+ }
15
20
  interface Events {
16
- setTransform: [value: {
17
- aabb: AxisAlignedBoundingBox;
18
- }];
21
+ pointerMove: [event: PointerEvent];
22
+ selectionTransformStart: [context: SelectionTransformContext];
23
+ selectionTransforming: [context: SelectionTransformContext];
24
+ selectionTransformEnd: [context: SelectionTransformContext];
19
25
  }
20
26
  }
21
27
  }
@@ -8,7 +8,6 @@ declare global {
8
8
  zoomOut: () => void;
9
9
  zoomTo100: () => void;
10
10
  zoomToFit: () => void;
11
- zoomToCover: () => void;
12
11
  zoomToSelection: (options?: ZoomToOptions) => void;
13
12
  }
14
13
  interface Hotkeys {
@@ -16,11 +15,8 @@ declare global {
16
15
  zoomOut: [event: KeyboardEvent];
17
16
  zoomTo100: [event: KeyboardEvent];
18
17
  zoomToFit: [event: KeyboardEvent];
19
- zoomToCover: [event: KeyboardEvent];
20
18
  zoomToSelection: [event: KeyboardEvent];
21
19
  }
22
- interface Editor {
23
- }
24
20
  }
25
21
  }
26
22
  declare const _default: import("..").Plugin;
@@ -32,7 +32,6 @@ import './plugins/copyAs'
32
32
  import './plugins/delete'
33
33
  import './plugins/drawingTool'
34
34
  import './plugins/edit'
35
- import './plugins/enter'
36
35
  import './plugins/frame'
37
36
  import './plugins/gif'
38
37
  import './plugins/group'
@@ -11,6 +11,7 @@ export declare function convertToUnit(str: number, unit?: string): string;
11
11
  export declare function convertToUnit(str: string | number | null | undefined, unit?: string): string | undefined;
12
12
  export declare function templateRef(): TemplateRef;
13
13
  export declare function findChildrenWithProvide(key: InjectionKey<any> | symbol, vnode?: VNodeChild): ComponentInternalInstance[];
14
+ export declare function isInputElement(target: HTMLElement): boolean;
14
15
  export declare function isInputEvent(event?: Event): boolean;
15
16
  export declare function toKebabCase(str?: string): string;
16
17
  export declare namespace toKebabCase {
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "mce",
3
3
  "type": "module",
4
- "version": "0.15.24",
4
+ "version": "0.15.26",
5
5
  "description": "The headless canvas editor framework. only the ESM.",
6
6
  "author": "wxm",
7
7
  "license": "MIT",
@@ -1,12 +0,0 @@
1
- declare global {
2
- namespace Mce {
3
- interface Commands {
4
- enter: () => void;
5
- }
6
- interface Hotkeys {
7
- enter: [event: KeyboardEvent];
8
- }
9
- }
10
- }
11
- declare const _default: import("..").Plugin;
12
- export default _default;