@esri/calcite-components
Version:
Web Components for Esri's Calcite Design System.
85 lines (84 loc) • 2.59 kB
TypeScript
import { EventEmitter, VNode } from "../../stencil-public-runtime";
import { PopperPlacement } from "../../utils/popper";
import { StrictModifiers, Placement, Instance as Popper } from "@popperjs/core";
import { Theme } from "../interfaces";
export declare type FocusId = "close-button";
/**
* @slot image - A slot for adding an image. The image will appear above the other slot content.
*/
export declare class CalcitePopover {
/**
* Display a close button within the Popover.
*/
closeButton: boolean;
/**
* Prevents flipping the popover's placement when it starts to overlap its reference element.
*/
disableFlip: boolean;
/**
* Removes the caret pointer.
*/
disablePointer: boolean;
/**
* Defines the available placements that can be used when a flip occurs.
*/
flipPlacements?: Placement[];
/** Accessible name for the component */
label: string;
/**
* Offset the position of the popover away from the reference element.
*/
offsetDistance: number;
offsetDistanceOffsetHandler(): void;
/**
* Offset the position of the popover along the reference element.
*/
offsetSkidding: number;
offsetSkiddingHandler(): void;
/**
* Display and position the component.
*/
open: boolean;
openHandler(open: boolean): void;
/**
* Determines where the component will be positioned relative to the referenceElement.
*/
placement: PopperPlacement;
placementHandler(): void;
/**
* Reference HTMLElement used to position this component according to the placement property.
*/
referenceElement: HTMLElement | string;
referenceElementHandler(): void;
/** Text for close button. */
intlClose: string;
/** Select theme (light or dark) */
theme: Theme;
el: HTMLCalcitePopoverElement;
_referenceElement: HTMLElement;
popper: Popper;
arrowEl: HTMLDivElement;
closeButtonEl: HTMLButtonElement;
guid: string;
componentDidLoad(): void;
disconnectedCallback(): void;
/** Fired when the popover is closed */
calcitePopoverClose: EventEmitter;
/** Fired when the popover is opened */
calcitePopoverOpen: EventEmitter;
reposition(): Promise<void>;
setFocus(focusId?: FocusId): Promise<void>;
toggle(value?: boolean): Promise<void>;
getId: () => string;
setExpandedAttr: () => void;
addReferences: () => void;
removeReferences: () => void;
getReferenceElement(): HTMLElement;
getModifiers(): Partial<StrictModifiers>[];
createPopper(): void;
destroyPopper(): void;
hide: () => void;
renderImage(): VNode;
renderCloseButton(): VNode;
render(): VNode;
}