primeng
Version:
PrimeNG is a premium UI library for Angular featuring a rich set of 90+ components, a theme designer, various theme alternatives such as Material, Bootstrap, Tailwind, premium templates and professional support. In addition, it integrates with PrimeBlock,
183 lines (179 loc) • 7.64 kB
TypeScript
import { PopoverPassThrough, PopoverContentTemplateContext } from 'primeng/types/popover';
export * from 'primeng/types/popover';
import * as _angular_core from '@angular/core';
import { TemplateRef } from '@angular/core';
import { MotionOptions, MotionEvent } from '@primeuix/motion';
import * as i2 from 'primeng/api';
import { OverlayService } from 'primeng/api';
import { BaseComponent } from 'primeng/basecomponent';
import * as i1 from 'primeng/bind';
import { Bind } from 'primeng/bind';
import { ConnectedOverlayScrollHandler } from 'primeng/dom';
import { CSSProperties, AppendTo } from 'primeng/types/shared';
import { Nullable, VoidListener } from 'primeng/ts-helpers';
import { Subscription } from 'rxjs';
import { BaseStyle } from 'primeng/base';
declare class PopoverStyle extends BaseStyle {
name: string;
style: string;
classes: {
root: string;
content: string;
};
inlineStyles: {
root: ({ instance }: {
instance: any;
}) => any;
};
static ɵfac: _angular_core.ɵɵFactoryDeclaration<PopoverStyle, never>;
static ɵprov: _angular_core.ɵɵInjectableDeclaration<PopoverStyle>;
}
/**
* Popover is a container component that can overlay other components on page.
* @group Components
*/
declare class Popover extends BaseComponent<PopoverPassThrough> {
componentName: string;
$pcPopover: Popover | undefined;
bindDirectiveInstance: Bind;
onAfterViewChecked(): void;
/**
* Defines a string that labels the input for accessibility.
* @group Props
*/
ariaLabel: _angular_core.InputSignal<string | undefined>;
/**
* Establishes relationships between the component and label(s) where its value should be one or more element IDs.
* @group Props
*/
ariaLabelledBy: _angular_core.InputSignal<string | undefined>;
/**
* Enables to hide the overlay when outside is clicked.
* @group Props
*/
dismissable: _angular_core.InputSignalWithTransform<boolean, unknown>;
/**
* Inline style of the component.
* @group Props
*/
style: _angular_core.InputSignal<CSSProperties>;
/**
* Style class of the component.
* @group Props
*/
styleClass: _angular_core.InputSignal<string | undefined>;
/**
* Target element to attach the overlay, valid values are "body" or a local ng-template variable of another element (note: use binding with brackets for template variables, e.g. [appendTo]="mydiv" for a div element having #mydiv as variable name).
* @defaultValue 'body'
* @group Props
*/
appendTo: _angular_core.InputSignal<AppendTo>;
/**
* Whether to automatically manage layering.
* @group Props
*/
autoZIndex: _angular_core.InputSignalWithTransform<boolean, unknown>;
/**
* Aria label of the close icon.
* @group Props
*/
ariaCloseLabel: _angular_core.InputSignal<string | undefined>;
/**
* Base zIndex value to use in layering.
* @group Props
*/
baseZIndex: _angular_core.InputSignalWithTransform<number, unknown>;
/**
* When enabled, first button receives focus on show.
* @group Props
*/
focusOnShow: _angular_core.InputSignalWithTransform<boolean, unknown>;
/**
* The motion options.
* @group Props
*/
motionOptions: _angular_core.InputSignal<MotionOptions | undefined>;
computedMotionOptions: _angular_core.Signal<MotionOptions>;
/**
* Callback to invoke when an overlay becomes visible.
* @group Emits
*/
onShow: _angular_core.OutputEmitterRef<any>;
/**
* Callback to invoke when an overlay gets hidden.
* @group Emits
*/
onHide: _angular_core.OutputEmitterRef<any>;
$appendTo: _angular_core.Signal<AppendTo>;
container: Nullable<HTMLDivElement>;
overlayVisible: _angular_core.WritableSignal<boolean>;
render: _angular_core.WritableSignal<boolean>;
selfClick: boolean;
documentClickListener: VoidListener;
target: HTMLElement | null;
willHide: Nullable<boolean>;
scrollHandler: Nullable<ConnectedOverlayScrollHandler>;
documentResizeListener: VoidListener;
/**
* Custom content template.
* @param {PopoverContentTemplateContext} context - content context.
* @see {@link PopoverContentTemplateContext}
* @group Templates
*/
contentTemplate: _angular_core.Signal<TemplateRef<PopoverContentTemplateContext> | undefined>;
onCloseClickCallback: any;
contentTemplateContext: _angular_core.Signal<PopoverContentTemplateContext>;
destroyCallback: Nullable<Function>;
overlayEventListener: Nullable<(event?: any) => void>;
overlaySubscription: Subscription | undefined;
_componentStyle: PopoverStyle;
overlayService: OverlayService;
bindDocumentClickListener(): void;
unbindDocumentClickListener(): void;
/**
* Toggles the visibility of the panel.
* @param {Event} event - Browser event
* @param {Target} target - Target element.
* @group Method
*/
toggle(event: any, target?: any): void;
/**
* Displays the panel.
* @param {Event} event - Browser event
* @param {Target} target - Target element.
* @group Method
*/
show(event: any, target?: any): void;
onOverlayClick(event: MouseEvent): void;
onContentClick(event: MouseEvent): void;
hasTargetChanged(event: any, target: any): boolean;
appendOverlay(): void;
restoreAppend(): void;
setZIndex(): void;
align(): void;
onAnimationStart(event: MotionEvent): void;
onAnimationEnd(): void;
focus(): void;
/**
* Hides the panel.
* @group Method
*/
hide(): void;
onCloseClick(event: MouseEvent): void;
onEscapeKeydown(_event: KeyboardEvent): void;
onWindowResize(): void;
bindDocumentResizeListener(): void;
unbindDocumentResizeListener(): void;
bindScrollListener(): void;
unbindScrollListener(): void;
onContainerDestroy(): void;
onDestroy(): void;
static ɵfac: _angular_core.ɵɵFactoryDeclaration<Popover, never>;
static ɵcmp: _angular_core.ɵɵComponentDeclaration<Popover, "p-popover", never, { "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "ariaLabelledBy": { "alias": "ariaLabelledBy"; "required": false; "isSignal": true; }; "dismissable": { "alias": "dismissable"; "required": false; "isSignal": true; }; "style": { "alias": "style"; "required": false; "isSignal": true; }; "styleClass": { "alias": "styleClass"; "required": false; "isSignal": true; }; "appendTo": { "alias": "appendTo"; "required": false; "isSignal": true; }; "autoZIndex": { "alias": "autoZIndex"; "required": false; "isSignal": true; }; "ariaCloseLabel": { "alias": "ariaCloseLabel"; "required": false; "isSignal": true; }; "baseZIndex": { "alias": "baseZIndex"; "required": false; "isSignal": true; }; "focusOnShow": { "alias": "focusOnShow"; "required": false; "isSignal": true; }; "motionOptions": { "alias": "motionOptions"; "required": false; "isSignal": true; }; }, { "onShow": "onShow"; "onHide": "onHide"; }, ["contentTemplate"], ["*"], true, [{ directive: typeof i1.Bind; inputs: {}; outputs: {}; }]>;
}
declare class PopoverModule {
static ɵfac: _angular_core.ɵɵFactoryDeclaration<PopoverModule, never>;
static ɵmod: _angular_core.ɵɵNgModuleDeclaration<PopoverModule, never, [typeof Popover, typeof i2.SharedModule], [typeof Popover, typeof i2.SharedModule]>;
static ɵinj: _angular_core.ɵɵInjectorDeclaration<PopoverModule>;
}
export { Popover, PopoverModule, PopoverStyle };