UNPKG

vue3-modal-manager

Version:

A flexible and powerful modal manager for Vue 3

69 lines (68 loc) 1.58 kB
import type { modalInfo } from './typing'; export declare class ModalResize { private currentModal; private resizeHandlers; private resizing; private resizeDirection; private initialSize; private initialMouse; /** * 初始化函數 * @param currentModal modal */ constructor(currentModal: modalInfo); /** * 設置當前modal * @param currentModal modal */ setCurrentModal(currentModal: modalInfo): void; /** * 建立resize handle * @param modalId modalId */ private createResizeHandles; /** * 綁定調整大小功能 * @param modalId 模態框ID */ bindResize(modalId: string): void; /** * 開始調整大小 * @param e 滑鼠事件 * @param direction 方向 */ private startResize; /** * 處理調整大小 */ private handleResize; /** * 計算滑鼠移動範圍 * @returns movementRange | movementRangeXY */ private calcMouseMoveRange; /** * 停止調整大小 */ private stopResize; /** * 發出尺寸變更事件 * @param modal modal * @param width modal寬度 * @param height modal高度 */ private emitResizeEvent; /** * 發出調整結束事件 * @param modal modal * @param width modal寬度 * @param height modal高度 */ private emitResizeEndEvent; /** * 解除調整大小綁定 * @param modalId modalId */ unbindResize(modalId: string): void; } export default ModalResize;