@hxui/angular
Version:
An Angular library based on the [HXUI design system](https://hxui.io).
57 lines (56 loc) • 2.69 kB
TypeScript
import { Overlay, OverlayRef } from '@angular/cdk/overlay';
import { ElementRef, EventEmitter, OnDestroy, Renderer2, ViewContainerRef } from '@angular/core';
import { DropdownMenuDirective } from './dropdown-menu.directive';
import { DropdownConfig } from './dropdown.config';
import * as i0 from "@angular/core";
export declare class DropdownDirective implements OnDestroy {
private _elementRef;
private _viewContainerRef;
overlay: Overlay;
_config: DropdownConfig;
private renderer;
menu: DropdownMenuDirective;
_overlayRef: OverlayRef | null;
private _portal;
private readonly _destroyed;
isOpen: boolean;
placement: 'top' | 'bottom' | 'left' | 'right';
private _autoClose;
set autoClose(value: boolean);
get autoClose(): boolean;
isOpenChange: EventEmitter<boolean>;
onShown: EventEmitter<any>;
onHidden: EventEmitter<any>;
isDisabled: boolean;
showDelay: number;
hideDelay: number;
maxWidthRelativeTo: string;
minWidthRelativeTo: string;
offsetY: number;
offsetX: number;
createClipPathMask: boolean;
constructor(_elementRef: ElementRef, _viewContainerRef: ViewContainerRef, overlay: Overlay, _config: DropdownConfig, renderer: Renderer2);
ngOnDestroy(): void;
/**
* Toggles an element’s popover. This is considered a “manual” triggering of
* the popover.
*/
toggle(value?: boolean): void;
show(delay?: number): void;
hide(delay?: number): void;
private _createOverlay;
private _detach;
private _setWidthsRelativeTo;
private _updatePosition;
/**
* Returns the origin position and a fallback position based on the user's position preference.
* The fallback position is the inverse of the origin (e.g. `'bottom' -> 'top'`).
*/
private _getOrigin;
/** Returns the overlay position and a fallback position based on the user's preference */
private _getOverlayPosition;
private _invertPosition;
private _addClipPathMaskStyles;
static ɵfac: i0.ɵɵFactoryDeclaration<DropdownDirective, never>;
static ɵdir: i0.ɵɵDirectiveDeclaration<DropdownDirective, "[hxaDropdown],[hxDropdown]", ["hx-dropdown", "hxa-dropdown"], { "placement": "placement"; "autoClose": "autoClose"; "isDisabled": "isDisabled"; "showDelay": "showDelay"; "hideDelay": "hideDelay"; "maxWidthRelativeTo": "maxWidthRelativeTo"; "minWidthRelativeTo": "minWidthRelativeTo"; "offsetY": "offsetY"; "offsetX": "offsetX"; "createClipPathMask": "createClipPathMask"; }, { "isOpenChange": "isOpenChange"; "onShown": "onShown"; "onHidden": "onHidden"; }, ["menu"]>;
}