@gez/date-time-kit
Version:
56 lines (55 loc) • 1.95 kB
TypeScript
import { type BaseAttrs, type BaseEmits, type Emit2EventMap, UiBase } from '../web-component-base';
export type { reExportPopoverAttrs as reExportAttrs } from './attr-sync-helper';
export interface Attrs extends BaseAttrs {
open?: boolean;
disabled?: boolean;
/** @default 'bottom-start' */
placement?: `${'top' | 'bottom' | 'left' | 'right'}${'' | '-start' | '-end'}`;
/** @default 'none' */
strategy?: 'absolute' | 'fixed' | 'none';
/** @default 0 */
offset?: number;
'min-width-with-trigger'?: boolean;
}
export interface Emits extends BaseEmits {
'open-change': boolean;
}
export type EventMap = Emit2EventMap<Emits>;
/**
* 点击触发器后气泡弹出
*/
export declare class Ele extends UiBase<Attrs, Emits> {
static readonly tagName: "dt-popover";
protected static _style: string;
protected static _template: string;
static get observedAttributes(): string[];
get open(): boolean;
set open(v: boolean);
get disabled(): boolean;
set disabled(v: boolean);
get placement(): Attrs["placement"];
set placement(v: Attrs['placement']);
get strategy(): Attrs["strategy"];
set strategy(v: Attrs['strategy']);
get offset(): number;
set offset(v: number);
get _staticEls(): {
readonly pop: HTMLSlotElement;
readonly trigger: HTMLSlotElement;
};
private get _triggerAssignedEle();
private get _popAssignedEle();
/**
* toggle open state
* @returns null if disabled, otherwise the new open state
*/
toggleOpen: (force?: boolean) => boolean | null;
connectedCallback(): void;
disconnectedCallback(): boolean | void;
protected _onAttrChanged(name: string, oldValue: string | null, newValue: string | null): void;
private _onTriggerClick;
private _onDocClick;
private _cleanupAutoUpdate;
private _autoUpdatePosition;
protected _onScreenSizeChanged(isSmall: boolean): void;
}