UNPKG

@progress/kendo-angular-tooltip

Version:

Kendo UI Tooltip for Angular - A highly customizable and easily themeable tooltip from the creators developers trust for professional Angular components.

103 lines (102 loc) 4.38 kB
/**----------------------------------------------------------------------------------------- * Copyright © 2025 Progress Software Corporation. All rights reserved. * Licensed under commercial license. See LICENSE.md in the project root for more information *-------------------------------------------------------------------------------------------*/ import { ComponentRef, ElementRef, NgZone, Renderer2 } from "@angular/core"; import { PopupRef, PopupService } from "@progress/kendo-angular-popup"; import { PopoverFn } from "../models/functions.model"; import { PopoverShowOption } from "../models/popover-show-option.type"; import { PopoverComponent } from "./popover.component"; import { PopoverService } from "./popover.service"; import { Subscription } from "rxjs"; import * as i0 from "@angular/core"; /** * @hidden */ export declare abstract class PopoverDirectivesBase { protected ngZone: NgZone; protected popupService: PopupService; protected renderer: Renderer2; /** * Specifies the popover instance that will be rendered. * Accepts a [`PopoverComponent`]({% slug api_tooltip_popovercomponent %}) instance or * a [`PopoverFn`]({% slug api_tooltip_popoverfn %}) callback which returns a [`PopoverComponent`]({% slug api_tooltip_popovercomponent %}) instance * depending on the current anchor element. * * [See example](slug:templates_popover#toc-passing-data-to-templates) */ set popover(value: PopoverComponent | PopoverFn); get popover(): PopoverComponent | PopoverFn; /** * The event on which the Popover will be shown * * The supported values are: * - `click` (default) &mdash;The Popover will be shown when its `anchor` element is clicked. * - `hover`&mdash;The Popover will be shown when its `anchor` element is hovered. * - `focus`&mdash;The Popover will be shown when its `anchor` element is focused. * - `none`&mdash;The Popover will not be shown on user interaction. It could be rendered via the Popover API methods. */ set showOn(value: PopoverShowOption); get showOn(): PopoverShowOption; /** * @hidden */ private anchor; popupRef: PopupRef; protected disposeHoverOverListener: () => void; protected disposeHoverOutListener: () => void; protected disposeClickListener: () => void; protected disposePopupHoverOutListener: () => void; protected disposePopupHoverInListener: () => void; protected disposePopupFocusOutListener: () => void; protected subs: Subscription; protected _popoverService: PopoverService; protected _hideSub: Subscription; protected _focusInsideSub: Subscription; private _popover; private _showOn; private _popupOpenSub; private _popupCloseSub; private _popupSubs; constructor(ngZone: NgZone, popupService: PopupService, renderer: Renderer2); ngAfterViewInit(): void; ngOnDestroy(): void; /** * Hides the Popover ([See example]({% slug programmaticcontrol_popover %})). */ hide(): void; /** * @hidden */ protected closePopup(): void; /** * @hidden */ protected openPopup(anchor: Element | ElementRef): void; /** * @hidden */ protected isPrevented(anchorElement: Element, show: boolean): boolean; /** * @hidden */ protected monitorPopup(): void; protected applySettings(contentComponent: ComponentRef<PopoverComponent>, popover: PopoverComponent): void; protected abstract subscribeToShowEvents(args?: any): void; protected abstract subscribeClick(): void; protected abstract mouseenterHandler(args?: any): void; protected abstract mouseleaveHandler(args?: any): void; protected abstract focusHandler(args?: any): void; protected abstract blurHandler(args?: any): void; protected manageEvents(): void; /** * @hidden */ private initializeEvents; private onKeyDown; private initializeCompletionEvents; private shouldEmitEvent; private shouldEmitCompletionEvents; static ɵfac: i0.ɵɵFactoryDeclaration<PopoverDirectivesBase, never>; static ɵdir: i0.ɵɵDirectiveDeclaration<PopoverDirectivesBase, never, never, { "popover": { "alias": "popover"; "required": false; }; "showOn": { "alias": "showOn"; "required": false; }; }, {}, never, never, false, never>; }