@opensig/opendesign
Version:
<p align="center"><img src="../docs/public/opendesign-logo-light.png"/></p> <h1 align="center">opendesign</h1> <p align="center">一个 Vue 3 组件库</p> <p align="center"><b>皮肤可定制,使用 TypeScript</b></p>
44 lines (43 loc) • 1.44 kB
TypeScript
import { Ref } from 'vue';
import { PopupPositionT, PopupTriggerT } from './types';
interface Pos {
left: number;
top: number;
}
interface AnchorPosition {
left?: number;
top?: number;
right?: number;
bottom?: number;
}
export declare function calcPopupStyle(popupEl: HTMLElement, targetEl: HTMLElement, position: PopupPositionT, { adaptive, // 自适应容器边缘
anchor, // 是否计算anchor
anchorOffset, // anchor与容器边缘偏移量
offset, // popup 距离target偏移量
edgeOffset, }?: {
adaptive?: boolean;
anchor?: boolean;
anchorOffset?: number;
offset?: number;
edgeOffset?: number;
}): {
popupStyle: Pos;
position: "left" | "right" | "top" | "bottom" | "br" | "rt" | "tr" | "rb" | "tl" | "bl" | "lt" | "lb";
anchorStyle: AnchorPosition;
isFixed?: undefined;
} | {
position: "left" | "right" | "top" | "bottom" | "br" | "rt" | "tr" | "rb" | "tl" | "bl" | "lt" | "lb";
popupStyle: Pos;
anchorStyle: AnchorPosition;
isFixed: boolean;
};
export declare function bindTrigger(el: HTMLElement | null, popupRef: Ref<HTMLElement | null>, triggers: PopupTriggerT[], { updateFn, hoverDelay, autoHide, }: {
updateFn: (isVisible?: boolean, delay?: number) => void;
hoverDelay?: number;
autoHide?: boolean;
}): (() => void)[];
export declare function getTransformOrigin(position: PopupPositionT): {
top: string;
left: string;
};
export {};