uiik
Version:
A UI interactions kit includes draggable, splittable, rotatable, selectable, etc.
93 lines (92 loc) • 2.96 kB
TypeScript
export declare const ONE_ANG: number;
export declare const ONE_RAD: number;
export declare const THRESHOLD = 3;
export declare function getBox(child: Element, parent?: Element): {
x: number;
y: number;
w: number;
h: number;
};
export declare function getPointOffset(e: MouseEvent, pos: {
x: number;
y: number;
}): number[];
export declare function isSVGEl(el: Element): el is SVGElement;
export declare const EDGE_THRESHOLD = 5;
export declare const DRAGGING_RULE = "body * { pointer-events: none; }";
export declare function lockPage(): void;
export declare function unlockPage(): void;
export declare function saveCursor(): void;
export declare function setCursor(cursor: string): void;
export declare function restoreCursor(): void;
export declare function getStyleXy(el: HTMLElement | SVGGraphicsElement): {
x: number;
y: number;
};
export declare function getStyleSize(el: HTMLElement | SVGGraphicsElement, cStyle?: CSSStyleDeclaration): {
w: number;
h: number;
};
export declare function getMatrixInfo(el: HTMLElement | SVGGraphicsElement, recur?: boolean): {
scale: number;
angle: number;
x: number;
y: number;
};
export declare function getPointInContainer(event: MouseEvent | PointerEvent, el: HTMLElement | SVGGraphicsElement, elRect?: DOMRect, elCStyle?: CSSStyleDeclaration, matrixInfo?: {
scale: number;
angle: number;
}): {
x: number;
y: number;
scale: number;
};
export declare function getRectInContainer(el: HTMLElement | SVGGraphicsElement, container: HTMLElement | SVGGraphicsElement, matrixInfo?: {
scale: number;
angle: number;
}): {
x: number;
y: number;
w: number;
h: number;
};
export declare function getRectCenter(el: HTMLElement | SVGGraphicsElement, matrixInfo?: {
scale: number;
angle: number;
}): {
x: number;
y: number;
};
export declare function getCenterXy(el: HTMLElement, ox?: number, oy?: number): {
sx: number;
sy: number;
x: number;
y: number;
ox: number;
oy: number;
};
export declare function getCenterXySVG(el: SVGGraphicsElement, ox: number, oy: number): {
sx: number;
sy: number;
x: number;
y: number;
ox: number;
oy: number;
};
export declare function getVertex(el: HTMLElement | SVGGraphicsElement, ox: number | string, oy: number | string): Array<{
x: number;
y: number;
}>;
export declare function calcVertex(w: number, h: number, cx: number, cy: number, sx: number, sy: number, radian: number): Array<{
x: number;
y: number;
}>;
export declare function parseOxy(ox: any, oy: any, w: number, h: number, el?: HTMLElement | SVGGraphicsElement): {
originX: number;
originY: number;
};
export declare function normalizeVector(x: number, y: number): {
x: number;
y: number;
};
export declare function isVisible(el: Element): boolean;