yuang-framework-ui-pc
Version:
yuang-framework-ui-pc Library
53 lines (51 loc) • 2.03 kB
TypeScript
import { Ref } from 'vue';
import { ElDialogInstance } from '../ele-app/el';
import { EleDialogProps } from './props';
export declare const containerClass = "ele-dialog-container";
export declare const wrapperClass = "ele-dialog";
export declare const closedClass = "ele-dialog-closed";
/**
* 获取弹窗容器
* @param inner 是否限制在主体内部
* @param multiple 是否支持同时打开多个
* @param appendTo 自定义插入的容器
* @param dialogsEl 限制在主体内部时的容器
*/
export declare function getDialogContainer(inner?: boolean, multiple?: boolean, appendTo?: string | HTMLElement, dialogsEl?: HTMLElement | null): HTMLElement | string;
/**
* 弹窗支持移动
* @param dialogRef 弹窗实例
* @param props 属性
* @param isFullscreen 全屏状态
*/
export declare function useDialogMove(dialogRef: Ref<ElDialogInstance>, props: EleDialogProps, isFullscreen: Ref<boolean>): {
handleHeaderMousedown: (e: MouseEvent) => void;
handleHeaderTouchstart: (e: TouchEvent) => void;
};
/**
* 弹窗支持拉伸
* @param dialogRef 弹窗实例
* @param props 属性
* @param isFullscreen 全屏状态
*/
export declare function useDialogResize(dialogRef: Ref<ElDialogInstance>, props: EleDialogProps, isFullscreen: Ref<boolean>): {
handleResizeMousedown: (e: MouseEvent) => void;
handleResizeTouchstart: (e: TouchEvent) => void;
};
/**
* 弹窗事件处理
* @param dialogRef 弹窗实例
* @param props 属性
* @param isFullscreen 全屏状态
*/
export declare function useDialogEvent(dialogRef: Ref<ElDialogInstance>, props: EleDialogProps, isFullscreen: Ref<boolean>): {
handleHeaderMousedown: (e: MouseEvent) => void;
handleHeaderTouchstart: (e: TouchEvent) => void;
handleResizeMousedown: (e: MouseEvent) => void;
handleResizeTouchstart: (e: TouchEvent) => void;
bindAutoTopEvent: () => void;
unbindAutoTopEvent: () => void;
topDialog: (el?: HTMLElement) => void;
setInitPosition: () => void;
resetDialogStyle: () => void;
};