ng-click-outside2
Version:
Angular directive for handling click events outside an element.
51 lines (50 loc) • 2.06 kB
TypeScript
import { ElementRef, NgZone, OnDestroy } from '@angular/core';
import { NgClickOutsideExcludeToken } from "./ng-click-outside-exclude.directive";
import * as i0 from "@angular/core";
/**
* Directive to detect clicks outside of the current element
*
* ```typescript
* @Component({
* selector: 'app',
* template: `
* <div (clickOutside)="onClickedOutside($event)">Click outside this</div>
* `
* })
* export class AppComponent {
* onClickedOutside(e: Event) {
* console.log('Clicked outside:', e);
* }
* }
* ```
*/
export declare class NgClickOutsideDirective implements OnDestroy {
/**
* Enables directive.
*/
clickOutsideEnabled: import("@angular/core").InputSignalWithTransform<boolean, unknown>;
/**
* A comma-separated list of events to cause the trigger.
* ### For example, for additional mobile support:
* `[clickOutsideEvents]="'click,touchstart'"`
*/
clickOutsideEvents: import("@angular/core").InputSignalWithTransform<string[], string | string[]>;
/**
* Outside Click Event
*/
clickOutside: import("@angular/core").OutputEmitterRef<Event>;
excludeDirective: NgClickOutsideExcludeToken | null;
protected _el: ElementRef<any>;
protected _ngZone: NgZone;
private document;
constructor();
ngOnDestroy(): void;
protected _init(): void;
protected _initOnClickBody(): void;
protected _emit(ev: Event): void;
protected _initClickOutsideListener(): void;
protected _removeClickOutsideListener(): void;
private _onClickBody;
static ɵfac: i0.ɵɵFactoryDeclaration<NgClickOutsideDirective, never>;
static ɵdir: i0.ɵɵDirectiveDeclaration<NgClickOutsideDirective, "[clickOutside]:not([delayClickOutsideInit]):not([attachOutsideOnClick])", never, { "clickOutsideEnabled": { "alias": "clickOutsideEnabled"; "required": false; "isSignal": true; }; "clickOutsideEvents": { "alias": "clickOutsideEvents"; "required": false; "isSignal": true; }; }, { "clickOutside": "clickOutside"; }, never, never, true, never>;
}