@plait/common 0.57.0 → 0.59.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/core/element-flavour.d.ts +13 -0
- package/core/group.component.d.ts +8 -11
- package/esm2022/core/element-flavour.mjs +33 -0
- package/esm2022/core/group.component.mjs +13 -27
- package/esm2022/plugins/with-resize.mjs +3 -2
- package/esm2022/public-api.mjs +2 -2
- package/esm2022/transforms/text.mjs +40 -34
- package/esm2022/types/resize.mjs +1 -1
- package/esm2022/utils/image.mjs +1 -1
- package/esm2022/utils/resize.mjs +1 -1
- package/esm2022/utils/text.mjs +35 -6
- package/fesm2022/plait-common.mjs +88 -69
- package/fesm2022/plait-common.mjs.map +1 -1
- package/package.json +1 -1
- package/plugins/with-resize.d.ts +2 -2
- package/public-api.d.ts +1 -1
- package/types/resize.d.ts +11 -7
- package/utils/resize.d.ts +3 -3
- package/utils/text.d.ts +3 -1
- package/core/plugin-element.d.ts +0 -16
- package/esm2022/core/plugin-element.mjs +0 -40
package/package.json
CHANGED
package/plugins/with-resize.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { PlaitBoard } from '@plait/core';
|
|
2
2
|
import { ResizeHandle } from '../constants/resize';
|
|
3
|
-
import { PlaitElementOrArray, WithResizeOptions } from '../types/resize';
|
|
4
|
-
export declare const withResize: <T extends PlaitElementOrArray = PlaitElementOrArray, K = ResizeHandle>(board: PlaitBoard, options: WithResizeOptions<T, K>) => PlaitBoard;
|
|
3
|
+
import { PlaitElementOrArray, ResizeOptions, WithResizeOptions } from '../types/resize';
|
|
4
|
+
export declare const withResize: <T extends PlaitElementOrArray = PlaitElementOrArray, K = ResizeHandle, P = ResizeOptions>(board: PlaitBoard, options: WithResizeOptions<T, K, P>) => PlaitBoard;
|
package/public-api.d.ts
CHANGED
|
@@ -4,7 +4,7 @@ export * from './transforms';
|
|
|
4
4
|
export * from './shapes';
|
|
5
5
|
export * from './plugins';
|
|
6
6
|
export * from './utils';
|
|
7
|
-
export * from './core/
|
|
7
|
+
export * from './core/element-flavour';
|
|
8
8
|
export * from './core/image-base.component';
|
|
9
9
|
export * from './core/element-ref';
|
|
10
10
|
export * from './algorithms';
|
package/types/resize.d.ts
CHANGED
|
@@ -1,30 +1,34 @@
|
|
|
1
1
|
import { Path, PlaitElement, Point, RectangleClient, ResizeCursorClass } from '@plait/core';
|
|
2
2
|
import { ResizeHandle } from '../constants/resize';
|
|
3
3
|
export type PlaitElementOrArray = PlaitElement | PlaitElement[];
|
|
4
|
-
export interface
|
|
4
|
+
export interface ResizeOptions {
|
|
5
|
+
}
|
|
6
|
+
export interface WithResizeOptions<T extends PlaitElementOrArray = PlaitElementOrArray, K = ResizeHandle, P = ResizeOptions> {
|
|
5
7
|
key: string;
|
|
6
8
|
canResize: () => boolean;
|
|
7
|
-
hitTest: (point: Point) => ResizeHitTestRef<T, K> | null;
|
|
8
|
-
onResize: (resizeRef: ResizeRef<T, K>, resizeState: ResizeState) => void;
|
|
9
|
-
afterResize?: (resizeRef: ResizeRef<T, K>) => void;
|
|
10
|
-
beforeResize?: (resizeRef: ResizeRef<T, K>) => void;
|
|
9
|
+
hitTest: (point: Point) => ResizeHitTestRef<T, K, P> | null;
|
|
10
|
+
onResize: (resizeRef: ResizeRef<T, K, P>, resizeState: ResizeState) => void;
|
|
11
|
+
afterResize?: (resizeRef: ResizeRef<T, K, P>) => void;
|
|
12
|
+
beforeResize?: (resizeRef: ResizeRef<T, K, P>) => void;
|
|
11
13
|
}
|
|
12
|
-
export interface ResizeHitTestRef<T extends PlaitElementOrArray = PlaitElementOrArray, K = ResizeHandle> {
|
|
14
|
+
export interface ResizeHitTestRef<T extends PlaitElementOrArray = PlaitElementOrArray, K = ResizeHandle, P = ResizeOptions> {
|
|
13
15
|
element: T;
|
|
14
16
|
rectangle?: RectangleClient;
|
|
15
17
|
handle: K;
|
|
16
18
|
handleIndex?: number;
|
|
17
19
|
cursorClass?: ResizeCursorClass;
|
|
20
|
+
options?: P;
|
|
18
21
|
}
|
|
19
22
|
export interface ResizeState {
|
|
20
23
|
startPoint: Point;
|
|
21
24
|
endPoint: Point;
|
|
22
25
|
isShift: boolean;
|
|
23
26
|
}
|
|
24
|
-
export interface ResizeRef<T extends PlaitElementOrArray = PlaitElementOrArray, K = ResizeHandle> {
|
|
27
|
+
export interface ResizeRef<T extends PlaitElementOrArray = PlaitElementOrArray, K = ResizeHandle, P = ResizeOptions> {
|
|
25
28
|
element: T;
|
|
26
29
|
rectangle?: RectangleClient;
|
|
27
30
|
path: Path | Path[];
|
|
28
31
|
handle: K;
|
|
29
32
|
handleIndex?: number;
|
|
33
|
+
options?: P;
|
|
30
34
|
}
|
package/utils/resize.d.ts
CHANGED
|
@@ -16,10 +16,10 @@ export declare const getRectangleResizeHandleRefs: (rectangle: RectangleClient,
|
|
|
16
16
|
cursorClass: ResizeCursorClass;
|
|
17
17
|
}[];
|
|
18
18
|
export declare const getResizeHandlePointByIndex: (rectangle: RectangleClient, index: number) => Point;
|
|
19
|
-
export declare const IS_RESIZING: WeakMap<PlaitBoard, ResizeRef<any, any>>;
|
|
19
|
+
export declare const IS_RESIZING: WeakMap<PlaitBoard, ResizeRef<any, any, any>>;
|
|
20
20
|
export declare const isResizing: (board: PlaitBoard) => boolean;
|
|
21
|
-
export declare const isResizingByCondition: <T extends PlaitElementOrArray, K>(board: PlaitBoard, match: (resizeRef: ResizeRef<T, K>) => boolean) => boolean;
|
|
22
|
-
export declare const addResizing: <T extends PlaitElementOrArray, K>(board: PlaitBoard, resizeRef: ResizeRef<T, K>, key: string) => void;
|
|
21
|
+
export declare const isResizingByCondition: <T extends PlaitElementOrArray, K>(board: PlaitBoard, match: (resizeRef: ResizeRef<T, K, import("../types/resize").ResizeOptions>) => boolean) => boolean;
|
|
22
|
+
export declare const addResizing: <T extends PlaitElementOrArray, K, P>(board: PlaitBoard, resizeRef: ResizeRef<T, K, P>, key: string) => void;
|
|
23
23
|
export declare const removeResizing: (board: PlaitBoard, key: string) => void;
|
|
24
24
|
export declare const isEdgeHandle: (board: PlaitBoard, handle: ResizeHandle) => boolean;
|
|
25
25
|
export declare const isCornerHandle: (board: PlaitBoard, handle: ResizeHandle) => boolean;
|
package/utils/text.d.ts
CHANGED
|
@@ -2,9 +2,11 @@ import { PlaitBoard, PlaitElement } from '@plait/core';
|
|
|
2
2
|
import { CustomText, TextManage } from '@plait/text';
|
|
3
3
|
export declare const getTextManages: (element: PlaitElement) => TextManage[];
|
|
4
4
|
export declare const getFirstTextManage: (element: PlaitElement) => TextManage;
|
|
5
|
-
export declare const
|
|
5
|
+
export declare const getTextEditorsByElement: (element: PlaitElement) => (import("slate").BaseEditor & import("slate-angular").AngularEditor & import("slate-history").HistoryEditor)[];
|
|
6
6
|
export declare const getFirstTextEditor: (element: PlaitElement) => import("slate").BaseEditor & import("slate-angular").AngularEditor & import("slate-history").HistoryEditor;
|
|
7
7
|
export declare const findFirstTextEditor: (board: PlaitBoard) => null;
|
|
8
8
|
export declare const getTextMarksByElement: (element: PlaitElement) => Omit<CustomText, "text">;
|
|
9
9
|
export declare const getElementsText: (elements: PlaitElement[]) => string;
|
|
10
|
+
export declare const getTextEditors: (board: PlaitBoard, elements?: PlaitElement[]) => (import("slate").BaseEditor & import("slate-angular").AngularEditor & import("slate-history").HistoryEditor)[] | undefined;
|
|
11
|
+
export declare const getEditingTextEditor: (board: PlaitBoard, elements?: PlaitElement[]) => (import("slate").BaseEditor & import("slate-angular").AngularEditor & import("slate-history").HistoryEditor) | undefined;
|
|
10
12
|
export declare const ELEMENT_TO_TEXT_MANAGES: WeakMap<PlaitElement, TextManage[]>;
|
package/core/plugin-element.d.ts
DELETED
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { PlaitBoard, PlaitElement, PlaitPluginElementComponent } from '@plait/core';
|
|
2
|
-
import { TextManage } from '@plait/text';
|
|
3
|
-
import { PlaitCommonElementRef } from './element-ref';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
export declare abstract class CommonPluginElement<T extends PlaitElement = PlaitElement, K extends PlaitBoard = PlaitBoard, R extends PlaitCommonElementRef = PlaitCommonElementRef> extends PlaitPluginElementComponent<T, K, R> {
|
|
6
|
-
private textManages;
|
|
7
|
-
constructor(elementRef?: PlaitCommonElementRef);
|
|
8
|
-
initializeWeakMap(): void;
|
|
9
|
-
destroyWeakMap(): void;
|
|
10
|
-
initializeTextManages(textManages: TextManage[]): void;
|
|
11
|
-
addTextManage(textManage: TextManage): void;
|
|
12
|
-
destroyTextManages(): void;
|
|
13
|
-
getTextManages(): TextManage[];
|
|
14
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<CommonPluginElement<any, any, any>, never>;
|
|
15
|
-
static ɵdir: i0.ɵɵDirectiveDeclaration<CommonPluginElement<any, any, any>, never, never, {}, {}, never, never, false, never>;
|
|
16
|
-
}
|
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
import { PlaitPluginElementComponent } from '@plait/core';
|
|
2
|
-
import { ELEMENT_TO_TEXT_MANAGES } from '../utils/text';
|
|
3
|
-
import { PlaitCommonElementRef } from './element-ref';
|
|
4
|
-
import { Directive } from '@angular/core';
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
export class CommonPluginElement extends PlaitPluginElementComponent {
|
|
7
|
-
constructor(elementRef = new PlaitCommonElementRef()) {
|
|
8
|
-
super(elementRef);
|
|
9
|
-
this.textManages = [];
|
|
10
|
-
}
|
|
11
|
-
initializeWeakMap() {
|
|
12
|
-
ELEMENT_TO_TEXT_MANAGES.set(this.element, this.textManages);
|
|
13
|
-
}
|
|
14
|
-
destroyWeakMap() {
|
|
15
|
-
ELEMENT_TO_TEXT_MANAGES.delete(this.element);
|
|
16
|
-
}
|
|
17
|
-
initializeTextManages(textManages) {
|
|
18
|
-
this.textManages = textManages;
|
|
19
|
-
this.initializeWeakMap();
|
|
20
|
-
}
|
|
21
|
-
addTextManage(textManage) {
|
|
22
|
-
this.textManages.push(textManage);
|
|
23
|
-
}
|
|
24
|
-
destroyTextManages() {
|
|
25
|
-
this.getTextManages().forEach(manage => {
|
|
26
|
-
manage.destroy();
|
|
27
|
-
});
|
|
28
|
-
this.textManages = [];
|
|
29
|
-
this.destroyWeakMap();
|
|
30
|
-
}
|
|
31
|
-
getTextManages() {
|
|
32
|
-
return this.textManages;
|
|
33
|
-
}
|
|
34
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: CommonPluginElement, deps: "invalid", target: i0.ɵɵFactoryTarget.Directive }); }
|
|
35
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.2.4", type: CommonPluginElement, usesInheritance: true, ngImport: i0 }); }
|
|
36
|
-
}
|
|
37
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: CommonPluginElement, decorators: [{
|
|
38
|
-
type: Directive
|
|
39
|
-
}], ctorParameters: () => [{ type: undefined }] });
|
|
40
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGx1Z2luLWVsZW1lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21tb24vc3JjL2NvcmUvcGx1Z2luLWVsZW1lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUE0QywyQkFBMkIsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUVwRyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDeEQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3RELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBRzFDLE1BQU0sT0FBZ0IsbUJBSXBCLFNBQVEsMkJBQW9DO0lBRzFDLFlBQVksVUFBVSxHQUFHLElBQUkscUJBQXFCLEVBQUU7UUFDaEQsS0FBSyxDQUFDLFVBQWUsQ0FBQyxDQUFDO1FBSG5CLGdCQUFXLEdBQWlCLEVBQUUsQ0FBQztJQUl2QyxDQUFDO0lBRUQsaUJBQWlCO1FBQ2IsdUJBQXVCLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ2hFLENBQUM7SUFFRCxjQUFjO1FBQ1YsdUJBQXVCLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNqRCxDQUFDO0lBRUQscUJBQXFCLENBQUMsV0FBeUI7UUFDM0MsSUFBSSxDQUFDLFdBQVcsR0FBRyxXQUFXLENBQUM7UUFDL0IsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7SUFDN0IsQ0FBQztJQUVELGFBQWEsQ0FBQyxVQUFzQjtRQUNoQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBRUQsa0JBQWtCO1FBQ2QsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsRUFBRTtZQUNuQyxNQUFNLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDckIsQ0FBQyxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsV0FBVyxHQUFHLEVBQUUsQ0FBQztRQUN0QixJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUVELGNBQWM7UUFDVixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUM7SUFDNUIsQ0FBQzs4R0F0Q2lCLG1CQUFtQjtrR0FBbkIsbUJBQW1COzsyRkFBbkIsbUJBQW1CO2tCQUR4QyxTQUFTIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRUxFTUVOVF9UT19SRUYsIFBsYWl0Qm9hcmQsIFBsYWl0RWxlbWVudCwgUGxhaXRQbHVnaW5FbGVtZW50Q29tcG9uZW50IH0gZnJvbSAnQHBsYWl0L2NvcmUnO1xuaW1wb3J0IHsgVGV4dE1hbmFnZSB9IGZyb20gJ0BwbGFpdC90ZXh0JztcbmltcG9ydCB7IEVMRU1FTlRfVE9fVEVYVF9NQU5BR0VTIH0gZnJvbSAnLi4vdXRpbHMvdGV4dCc7XG5pbXBvcnQgeyBQbGFpdENvbW1vbkVsZW1lbnRSZWYgfSBmcm9tICcuL2VsZW1lbnQtcmVmJztcbmltcG9ydCB7IERpcmVjdGl2ZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5ARGlyZWN0aXZlKClcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBDb21tb25QbHVnaW5FbGVtZW50PFxuICAgIFQgZXh0ZW5kcyBQbGFpdEVsZW1lbnQgPSBQbGFpdEVsZW1lbnQsXG4gICAgSyBleHRlbmRzIFBsYWl0Qm9hcmQgPSBQbGFpdEJvYXJkLFxuICAgIFIgZXh0ZW5kcyBQbGFpdENvbW1vbkVsZW1lbnRSZWYgPSBQbGFpdENvbW1vbkVsZW1lbnRSZWZcbj4gZXh0ZW5kcyBQbGFpdFBsdWdpbkVsZW1lbnRDb21wb25lbnQ8VCwgSywgUj4ge1xuICAgIHByaXZhdGUgdGV4dE1hbmFnZXM6IFRleHRNYW5hZ2VbXSA9IFtdO1xuXG4gICAgY29uc3RydWN0b3IoZWxlbWVudFJlZiA9IG5ldyBQbGFpdENvbW1vbkVsZW1lbnRSZWYoKSkge1xuICAgICAgICBzdXBlcihlbGVtZW50UmVmIGFzIFIpO1xuICAgIH1cblxuICAgIGluaXRpYWxpemVXZWFrTWFwKCkge1xuICAgICAgICBFTEVNRU5UX1RPX1RFWFRfTUFOQUdFUy5zZXQodGhpcy5lbGVtZW50LCB0aGlzLnRleHRNYW5hZ2VzKTtcbiAgICB9XG5cbiAgICBkZXN0cm95V2Vha01hcCgpIHtcbiAgICAgICAgRUxFTUVOVF9UT19URVhUX01BTkFHRVMuZGVsZXRlKHRoaXMuZWxlbWVudCk7XG4gICAgfVxuXG4gICAgaW5pdGlhbGl6ZVRleHRNYW5hZ2VzKHRleHRNYW5hZ2VzOiBUZXh0TWFuYWdlW10pIHtcbiAgICAgICAgdGhpcy50ZXh0TWFuYWdlcyA9IHRleHRNYW5hZ2VzO1xuICAgICAgICB0aGlzLmluaXRpYWxpemVXZWFrTWFwKCk7XG4gICAgfVxuXG4gICAgYWRkVGV4dE1hbmFnZSh0ZXh0TWFuYWdlOiBUZXh0TWFuYWdlKSB7XG4gICAgICAgIHRoaXMudGV4dE1hbmFnZXMucHVzaCh0ZXh0TWFuYWdlKTtcbiAgICB9XG5cbiAgICBkZXN0cm95VGV4dE1hbmFnZXMoKSB7XG4gICAgICAgIHRoaXMuZ2V0VGV4dE1hbmFnZXMoKS5mb3JFYWNoKG1hbmFnZSA9PiB7XG4gICAgICAgICAgICBtYW5hZ2UuZGVzdHJveSgpO1xuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy50ZXh0TWFuYWdlcyA9IFtdO1xuICAgICAgICB0aGlzLmRlc3Ryb3lXZWFrTWFwKCk7XG4gICAgfVxuXG4gICAgZ2V0VGV4dE1hbmFnZXMoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLnRleHRNYW5hZ2VzO1xuICAgIH1cbn1cbiJdfQ==
|