New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

@anglify/components

Package Overview
Dependencies
Maintainers
1
Versions
90
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@anglify/components - npm Package Compare versions

Comparing version 0.9.1 to 0.10.0

anglify-components-0.10.0.tgz

11

esm2015/modules/tooltip/tooltip-settings.token.js
import { InjectionToken } from '@angular/core';
export const TOOLTIP_SETTINGS = new InjectionToken('Tooltip Settings');
export const DEFAULT_TOOLTIP_SETTINGS = {
position: 'BOTTOM',
openDelay: 0,
closeDelay: 0,
position: 'bottom',
hoverOpenDelay: 0,
touchOpenDelay: 0,
hoverCloseDelay: 0,
touchCloseDelay: 1000,
mobileTrigger: 'long',
preventContextMenuOnTouchDevice: false,
defaultOffset: 10,
autoCloseOnTouchDevicesAfterDelay: true,
};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC1zZXR0aW5ncy50b2tlbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ2xpZnkvc3JjL21vZHVsZXMvdG9vbHRpcC90b29sdGlwLXNldHRpbmdzLnRva2VuLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHL0MsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQUcsSUFBSSxjQUFjLENBQWtCLGtCQUFrQixDQUFDLENBQUM7QUFFeEYsTUFBTSxDQUFDLE1BQU0sd0JBQXdCLEdBQThCO0lBQ2pFLFFBQVEsRUFBRSxRQUFRO0lBQ2xCLFNBQVMsRUFBRSxDQUFDO0lBQ1osVUFBVSxFQUFFLENBQUM7SUFDYixhQUFhLEVBQUUsTUFBTTtJQUNyQiwrQkFBK0IsRUFBRSxLQUFLO0lBQ3RDLGFBQWEsRUFBRSxFQUFFO0NBQ2xCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3Rpb25Ub2tlbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVG9vbHRpcFNldHRpbmdzIH0gZnJvbSAnLi90b29sdGlwLmludGVyZmFjZSc7XG5cbmV4cG9ydCBjb25zdCBUT09MVElQX1NFVFRJTkdTID0gbmV3IEluamVjdGlvblRva2VuPFRvb2x0aXBTZXR0aW5ncz4oJ1Rvb2x0aXAgU2V0dGluZ3MnKTtcblxuZXhwb3J0IGNvbnN0IERFRkFVTFRfVE9PTFRJUF9TRVRUSU5HUzogUmVxdWlyZWQ8VG9vbHRpcFNldHRpbmdzPiA9IHtcbiAgcG9zaXRpb246ICdCT1RUT00nLFxuICBvcGVuRGVsYXk6IDAsXG4gIGNsb3NlRGVsYXk6IDAsXG4gIG1vYmlsZVRyaWdnZXI6ICdsb25nJyxcbiAgcHJldmVudENvbnRleHRNZW51T25Ub3VjaERldmljZTogZmFsc2UsXG4gIGRlZmF1bHRPZmZzZXQ6IDEwLFxufTtcbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC1zZXR0aW5ncy50b2tlbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ2xpZnkvc3JjL21vZHVsZXMvdG9vbHRpcC90b29sdGlwLXNldHRpbmdzLnRva2VuLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHL0MsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQUcsSUFBSSxjQUFjLENBQTRCLGtCQUFrQixDQUFDLENBQUM7QUFFbEcsTUFBTSxDQUFDLE1BQU0sd0JBQXdCLEdBQThCO0lBQ2pFLFFBQVEsRUFBRSxRQUFRO0lBQ2xCLGNBQWMsRUFBRSxDQUFDO0lBQ2pCLGNBQWMsRUFBRSxDQUFDO0lBQ2pCLGVBQWUsRUFBRSxDQUFDO0lBQ2xCLGVBQWUsRUFBRSxJQUFJO0lBQ3JCLGFBQWEsRUFBRSxNQUFNO0lBQ3JCLCtCQUErQixFQUFFLEtBQUs7SUFDdEMsYUFBYSxFQUFFLEVBQUU7SUFDakIsaUNBQWlDLEVBQUUsSUFBSTtDQUN4QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0aW9uVG9rZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFRvb2x0aXBTZXR0aW5ncyB9IGZyb20gJy4vdG9vbHRpcC5pbnRlcmZhY2UnO1xuXG5leHBvcnQgY29uc3QgVE9PTFRJUF9TRVRUSU5HUyA9IG5ldyBJbmplY3Rpb25Ub2tlbjxSZXF1aXJlZDxUb29sdGlwU2V0dGluZ3M+PignVG9vbHRpcCBTZXR0aW5ncycpO1xuXG5leHBvcnQgY29uc3QgREVGQVVMVF9UT09MVElQX1NFVFRJTkdTOiBSZXF1aXJlZDxUb29sdGlwU2V0dGluZ3M+ID0ge1xuICBwb3NpdGlvbjogJ2JvdHRvbScsXG4gIGhvdmVyT3BlbkRlbGF5OiAwLFxuICB0b3VjaE9wZW5EZWxheTogMCxcbiAgaG92ZXJDbG9zZURlbGF5OiAwLFxuICB0b3VjaENsb3NlRGVsYXk6IDEwMDAsXG4gIG1vYmlsZVRyaWdnZXI6ICdsb25nJyxcbiAgcHJldmVudENvbnRleHRNZW51T25Ub3VjaERldmljZTogZmFsc2UsXG4gIGRlZmF1bHRPZmZzZXQ6IDEwLFxuICBhdXRvQ2xvc2VPblRvdWNoRGV2aWNlc0FmdGVyRGVsYXk6IHRydWUsXG59O1xuIl19
import { __decorate } from "tslib";
import { ContentChild, Directive, HostListener, Inject, Input, Optional, } from '@angular/core';
import { Directive, HostListener, Inject, Injector, Input, Optional, TemplateRef, } from '@angular/core';
import { UntilDestroy, untilDestroyed } from '@ngneat/until-destroy';
import { merge, of, Subject } from 'rxjs';
import { delay, mergeMap, repeat, takeUntil, tap } from 'rxjs/operators';
import { UntilDestroy, untilDestroyed } from '@ngneat/until-destroy';
import { isBooleanLikeTrue, isTouchDevice, observeOnResize } from '../../utils/functions';
import { isBooleanLikeTrue, isTouchDevice } from '../../utils/functions';
import { DEFAULT_TOOLTIP_SETTINGS, TOOLTIP_SETTINGS } from './tooltip-settings.token';
import { TooltipComponent } from './components/tooltip/tooltip.component';
import * as i0 from "@angular/core";
let TooltipDirective = class TooltipDirective {
constructor(elementRef, renderer, viewContainerRef, changeDetectorRef, settings) {
var _a;
this.elementRef = elementRef;
constructor(element, renderer, viewContainerRef, injector, resolver, applicationRef, cdRef, settings) {
this.element = element;
this.renderer = renderer;
this.viewContainerRef = viewContainerRef;
this.changeDetectorRef = changeDetectorRef;
this.injector = injector;
this.resolver = resolver;
this.applicationRef = applicationRef;
this.cdRef = cdRef;
this.settings = settings;
this.position = 'BOTTOM';
this.tooltipOpenDelay = 0;
this.tooltipCloseDelay = 0;
/** Prevents the context menu from opening when the host is long pressed. */
this.preventContextMenuOnTouchDevice = false;
/** Allows you to define whether the tooltip is opened with a quick press or with a long press. */
this.tooltipMobileTrigger = 'long';
this.defaultOffset = 10;
this.tooltip = null;
this.mountingPoint = 'parent';
this._position = DEFAULT_TOOLTIP_SETTINGS.position;
this._offset = DEFAULT_TOOLTIP_SETTINGS.defaultOffset;
this._openAction = new Subject();
this._closeAction = new Subject();
this._repositionAction = new Subject();
this._visibleHandler$ = merge(this._openAction.pipe(mergeMap(openDelay => of(openDelay).pipe(delay(openDelay), takeUntil(this._closeAction), tap(() => {
if (this.tooltip)
return;
this.tooltip = this.create();
this._repositionAction.next();
this.renderer.addClass(this.tooltip, 'anglify-tooltip__open');
}))), repeat()), this._closeAction.pipe(mergeMap(closeDelay => of(closeDelay).pipe(delay(closeDelay), takeUntil(this._openAction), tap(() => {
if (!this.tooltip)
return;
this.renderer.removeClass(this.tooltip, 'anglify-tooltip__open');
this.renderer.removeChild(this.nativeElement, this.tooltip);
this.tooltip = null;
}))), repeat()));
this._repositionHandler$ = this._repositionAction.pipe(tap(() => {
if (!this.tooltip)
return;
this.setPosition();
}));
if (!settings)
this.settings = DEFAULT_TOOLTIP_SETTINGS;
if (settings === null || settings === void 0 ? void 0 : settings.position)
this.position = settings.position;
if (settings === null || settings === void 0 ? void 0 : settings.openDelay)
this.tooltipOpenDelay = settings.openDelay;
if (settings === null || settings === void 0 ? void 0 : settings.closeDelay)
this.tooltipCloseDelay = settings.closeDelay;
if (settings === null || settings === void 0 ? void 0 : settings.preventContextMenuOnTouchDevice)
this.preventContextMenuOnTouchDevice = settings.preventContextMenuOnTouchDevice;
if (settings === null || settings === void 0 ? void 0 : settings.mobileTrigger)
this.tooltipMobileTrigger = settings.mobileTrigger;
if (settings === null || settings === void 0 ? void 0 : settings.defaultOffset)
this.defaultOffset = settings.defaultOffset;
this.nativeElement = this.elementRef.nativeElement;
this.mountingPoint = (_a = this.nativeElement.parentElement) !== null && _a !== void 0 ? _a : document.body;
this.create();
}))), repeat()), this._closeAction.pipe(mergeMap(closeDelay => of(closeDelay).pipe(delay(closeDelay), takeUntil(this._openAction), tap(() => this._detach()))), repeat()));
const mergedSettings = Object.assign({}, DEFAULT_TOOLTIP_SETTINGS, this.settings);
this.position = mergedSettings.position;
this.hoverOpenDelay = mergedSettings.hoverOpenDelay;
this.hoverCloseDelay = mergedSettings.hoverCloseDelay;
this.touchOpenDelay = mergedSettings.touchOpenDelay;
this.touchCloseDelay = mergedSettings.touchCloseDelay;
this.preventContextMenuOnTouchDevice = mergedSettings.preventContextMenuOnTouchDevice;
this.tooltipMobileTrigger = mergedSettings.mobileTrigger;
this.offset = mergedSettings.defaultOffset;
this.autoCloseOnTouchDevicesAfterDelay = mergedSettings.autoCloseOnTouchDevicesAfterDelay;
this._visibleHandler$.pipe(untilDestroyed(this)).subscribe();
this._repositionHandler$.pipe(untilDestroyed(this)).subscribe();
}
/** Distance between the tooltip and the host element */
set offset(value) {
this._offset = value;
if (this.componentRef) {
this.componentRef.instance.offset = value;
}
}
get offset() {
return this._offset;
}
set position(value) {
this._position = value;
if (this.componentRef) {
this.componentRef.instance.position = value;
}
}
get position() {
return this._position;
}
set contentClass(value) {
this._contentClass = value;
if (this.componentRef) {
this.componentRef.instance.contentClass = value;
}
}
get contentClass() {
return this._contentClass;
}
ngOnDestroy() {
this._detach();
}
open(delay = 0) {

@@ -73,83 +78,87 @@ this._openAction.next(delay);

toggle(delay = 0) {
this.tooltip ? this._closeAction.next(delay) : this._openAction.next(delay);
this.componentRef ? this._closeAction.next(delay) : this._openAction.next(delay);
}
_detach() {
var _a, _b;
(_a = this.componentRef) === null || _a === void 0 ? void 0 : _a.destroy();
this.componentRef = undefined;
(_b = this.embeddedView) === null || _b === void 0 ? void 0 : _b.destroy();
this.embeddedView = undefined;
}
onOpenEventDesktop() {
if (isTouchDevice())
return;
this.open(this.tooltipOpenDelay);
this.open(this.hoverOpenDelay);
}
onCloseEventDesktop() {
if (isTouchDevice())
return;
this.close(this.tooltipCloseDelay);
}
onOpenEventMobile(event) {
if (this.tooltipMobileTrigger === 'long' && event.type !== 'contextmenu')
if (!isTouchDevice())
return;
if (this.tooltipMobileTrigger === 'short' && event.type !== 'click')
if (this.tooltipMobileTrigger === 'long' && event.type === 'touchstart')
return;
if (isTouchDevice()) {
if (isBooleanLikeTrue(this.preventContextMenuOnTouchDevice))
event.preventDefault();
setTimeout(() => this.open(), 0); // Open tooltip after other context menus are closed
if (this.tooltipMobileTrigger === 'short' && event.type === 'contextmenu')
return;
if (isBooleanLikeTrue(this.preventContextMenuOnTouchDevice) || isBooleanLikeTrue(this.autoCloseOnTouchDevicesAfterDelay)) {
event.preventDefault();
}
this.open(this.touchOpenDelay);
}
onCloseEventMobile() {
if (isTouchDevice())
this.close();
autoCloseOnMobile() {
if (!isBooleanLikeTrue(this.autoCloseOnTouchDevicesAfterDelay))
return;
if (!isTouchDevice())
return;
this.close(this.touchCloseDelay);
}
onClickOutside(event, targetElement) {
if (!this.componentRef)
return;
if (!Boolean(targetElement))
return;
const clickedInside = this.element.nativeElement.contains(targetElement);
if (!clickedInside)
this.close(0);
}
onCloseEvent() {
this.close(isTouchDevice() ? this.touchCloseDelay : this.hoverCloseDelay);
}
create() {
const tooltip = this.renderer.createElement('span');
if (this.template) {
const view = this.viewContainerRef.createEmbeddedView(this.template);
view.rootNodes.forEach(node => this.renderer.appendChild(tooltip, node));
if (this.componentRef)
return;
const factory = this.resolver.resolveComponentFactory(TooltipComponent);
const injector = Injector.create({
providers: [{ provide: 'tooltipConfig', useValue: { host: this.element.nativeElement } }],
});
this.componentRef = this.viewContainerRef.createComponent(factory, 0, injector, this.generateNgContent());
this.componentRef.instance.position = this.position;
this.componentRef.instance.offset = this.offset;
this.componentRef.instance.contentClass = this.contentClass;
this.changeMountingPoint();
this.cdRef.markForCheck();
}
generateNgContent() {
if (typeof this.content === 'string') {
return [[this.renderer.createText(this.content)]];
}
else if (this.text) {
this.renderer.appendChild(tooltip, this.renderer.createText(this.text));
if (this.content instanceof TemplateRef) {
this.embeddedView = this.content.createEmbeddedView({});
this.applicationRef.attachView(this.embeddedView);
return [this.embeddedView.rootNodes];
}
this.renderer.appendChild(this.mountingPoint, tooltip);
this.renderer.addClass(tooltip, 'anglify-tooltip');
if (this.contentClass)
this.renderer.addClass(tooltip, this.contentClass);
// https://github.com/valentingavran/anglify/issues/19#issuecomment-1030809020
this.changeDetectorRef.markForCheck();
observeOnResize(tooltip)
.pipe(takeUntil(this._closeAction))
.subscribe(() => this.setPosition());
return tooltip;
return [[this.resolver.resolveComponentFactory(this.content).create(this.injector)]];
}
setPosition() {
if (!this.tooltip)
changeMountingPoint() {
if (!this.componentRef)
return;
const hostPos = this.nativeElement.getBoundingClientRect();
const tooltipPos = this.tooltip.getBoundingClientRect();
const scrollPos = window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop || 0;
let top;
let left;
if (this.position === 'TOP') {
top = hostPos.top - tooltipPos.height - this.defaultOffset;
left = Math.max(hostPos.left + (hostPos.width - tooltipPos.width) / 2, this.defaultOffset);
if (this.mountingPoint === 'parent') {
}
else if (this.position === 'BOTTOM') {
top = hostPos.bottom + this.defaultOffset;
left = Math.max(hostPos.left + (hostPos.width - tooltipPos.width) / 2, this.defaultOffset);
else if (this.mountingPoint === 'body') {
this.renderer.appendChild(document.body, this.componentRef.location.nativeElement);
}
else {
top = hostPos.top + (hostPos.height - tooltipPos.height) / 2;
if (this.position === 'LEFT') {
left = Math.max(hostPos.left - tooltipPos.width - this.defaultOffset, this.defaultOffset);
}
else {
left = Math.min(hostPos.right + this.defaultOffset, window.innerWidth - tooltipPos.width - this.defaultOffset);
}
this.renderer.appendChild(this.mountingPoint, this.componentRef.location.nativeElement);
}
this.renderer.setStyle(this.tooltip, 'top', `${top + scrollPos}px`);
this.renderer.setStyle(this.tooltip, 'left', `${left}px`);
}
ngOnDestroy() {
this._closeAction.next(0);
}
};
TooltipDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.1.5", ngImport: i0, type: TooltipDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.ViewContainerRef }, { token: i0.ChangeDetectorRef }, { token: TOOLTIP_SETTINGS, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
TooltipDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.1.5", type: TooltipDirective, selector: "[anglifyTooltip]", inputs: { text: ["anglifyTooltip", "text"], position: "position", contentClass: ["content-class", "contentClass"], tooltipOpenDelay: "tooltipOpenDelay", tooltipCloseDelay: "tooltipCloseDelay", mountingPoint: ["tooltipMountingPoint", "mountingPoint"], preventContextMenuOnTouchDevice: "preventContextMenuOnTouchDevice", tooltipMobileTrigger: "tooltipMobileTrigger" }, host: { listeners: { "mouseenter": "onOpenEventDesktop()", "focus": "onOpenEventDesktop()", "mouseleave": "onCloseEventDesktop()", "blur": "onCloseEventDesktop()", "click": "onOpenEventMobile($event)", "contextmenu": "onOpenEventMobile($event)", "document:click": "onCloseEventMobile()", "document:contextmenu": "onCloseEventMobile()" } }, queries: [{ propertyName: "template", first: true, predicate: ["tooltipContent"], descendants: true }], exportAs: ["anglifyTooltip"], ngImport: i0 });
TooltipDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.1.5", ngImport: i0, type: TooltipDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.ViewContainerRef }, { token: i0.Injector }, { token: i0.ComponentFactoryResolver }, { token: i0.ApplicationRef }, { token: i0.ChangeDetectorRef }, { token: TOOLTIP_SETTINGS, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
TooltipDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.1.5", type: TooltipDirective, selector: "[anglifyTooltip]", inputs: { content: ["anglifyTooltip", "content"], mountingPoint: ["tooltipMountingPoint", "mountingPoint"], hoverOpenDelay: ["tooltipHoverOpenDelay", "hoverOpenDelay"], hoverCloseDelay: ["tooltipHoverCloseDelay", "hoverCloseDelay"], touchOpenDelay: ["tooltipTouchOpenDelay", "touchOpenDelay"], touchCloseDelay: ["tooltipTouchCloseDelay", "touchCloseDelay"], preventContextMenuOnTouchDevice: "preventContextMenuOnTouchDevice", tooltipMobileTrigger: "tooltipMobileTrigger", autoCloseOnTouchDevicesAfterDelay: "autoCloseOnTouchDevicesAfterDelay", offset: "offset", position: "position", contentClass: "contentClass" }, host: { listeners: { "mouseenter": "onOpenEventDesktop()", "touchstart": "onOpenEventMobile($event)", "contextmenu": "onOpenEventMobile($event)", "touchend": "autoCloseOnMobile()", "document:click": "onClickOutside($event,$event.target)", "document:contextmenu": "onClickOutside($event,$event.target)", "mouseleave": "onCloseEvent()" } }, exportAs: ["anglifyTooltip"], ngImport: i0 });
TooltipDirective = __decorate([

@@ -165,3 +174,3 @@ UntilDestroy()

}]
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i0.ViewContainerRef }, { type: i0.ChangeDetectorRef }, { type: undefined, decorators: [{
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i0.ViewContainerRef }, { type: i0.Injector }, { type: i0.ComponentFactoryResolver }, { type: i0.ApplicationRef }, { type: i0.ChangeDetectorRef }, { type: undefined, decorators: [{
type: Optional

@@ -171,20 +180,20 @@ }, {

args: [TOOLTIP_SETTINGS]
}] }]; }, propDecorators: { template: [{
type: ContentChild,
args: ['tooltipContent']
}], text: [{
}] }]; }, propDecorators: { content: [{
type: Input,
args: ['anglifyTooltip']
}], position: [{
type: Input
}], contentClass: [{
type: Input,
args: ['content-class']
}], tooltipOpenDelay: [{
type: Input
}], tooltipCloseDelay: [{
type: Input
}], mountingPoint: [{
type: Input,
args: ['tooltipMountingPoint']
}], hoverOpenDelay: [{
type: Input,
args: ['tooltipHoverOpenDelay']
}], hoverCloseDelay: [{
type: Input,
args: ['tooltipHoverCloseDelay']
}], touchOpenDelay: [{
type: Input,
args: ['tooltipTouchOpenDelay']
}], touchCloseDelay: [{
type: Input,
args: ['tooltipTouchCloseDelay']
}], preventContextMenuOnTouchDevice: [{

@@ -194,27 +203,32 @@ type: Input

type: Input
}], autoCloseOnTouchDevicesAfterDelay: [{
type: Input
}], offset: [{
type: Input
}], position: [{
type: Input
}], contentClass: [{
type: Input
}], onOpenEventDesktop: [{
type: HostListener,
args: ['mouseenter']
}, {
type: HostListener,
args: ['focus']
}], onCloseEventDesktop: [{
type: HostListener,
args: ['mouseleave']
}, {
type: HostListener,
args: ['blur']
}], onOpenEventMobile: [{
type: HostListener,
args: ['click', ['$event']]
args: ['touchstart', ['$event']]
}, {
type: HostListener,
args: ['contextmenu', ['$event']]
}], onCloseEventMobile: [{
}], autoCloseOnMobile: [{
type: HostListener,
args: ['document:click']
args: ['touchend']
}], onClickOutside: [{
type: HostListener,
args: ['document:click', ['$event', '$event.target']]
}, {
type: HostListener,
args: ['document:contextmenu']
args: ['document:contextmenu', ['$event', '$event.target']]
}], onCloseEvent: [{
type: HostListener,
args: ['mouseleave']
}] } });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmdsaWZ5L3NyYy9tb2R1bGVzL3Rvb2x0aXAvdG9vbHRpcC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFFTCxZQUFZLEVBQ1osU0FBUyxFQUVULFlBQVksRUFDWixNQUFNLEVBQ04sS0FBSyxFQUVMLFFBQVEsR0FJVCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDMUMsT0FBTyxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6RSxPQUFPLEVBQUUsWUFBWSxFQUFFLGNBQWMsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3JFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxhQUFhLEVBQUUsZUFBZSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFHMUYsT0FBTyxFQUFFLHdCQUF3QixFQUFFLGdCQUFnQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7O0lBT3pFLGdCQUFnQixTQUFoQixnQkFBZ0I7SUFnRTNCLFlBQ21CLFVBQXNCLEVBQ3RCLFFBQW1CLEVBQ25CLGdCQUFrQyxFQUNsQyxpQkFBb0MsRUFDRSxRQUEwQjs7UUFKaEUsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUN0QixhQUFRLEdBQVIsUUFBUSxDQUFXO1FBQ25CLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDbEMsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtRQUNFLGFBQVEsR0FBUixRQUFRLENBQWtCO1FBakVuRSxhQUFRLEdBQW9CLFFBQVEsQ0FBQztRQUVyQyxxQkFBZ0IsR0FBRyxDQUFDLENBQUM7UUFDckIsc0JBQWlCLEdBQUcsQ0FBQyxDQUFD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O3VCQUFDLE9BQU87Z0JBUWIsbUJBQW1CO3NCQUYxQixZQUFZO3VCQUFDLFlBQVk7O3NCQUN6QixZQUFZO3VCQUFDLE1BQU07Z0JBUVosaUJBQWlCO3NCQUZ4QixZQUFZO3VCQUFDLE9BQU8sRUFBRSxDQUFDLFFBQVEsQ0FBQzs7c0JBQ2hDLFlBQVk7dUJBQUMsYUFBYSxFQUFFLENBQUMsUUFBUSxDQUFDO2dCQWMvQixrQkFBa0I7c0JBRnpCLFlBQVk7dUJBQUMsZ0JBQWdCOztzQkFDN0IsWUFBWTt1QkFBQyxzQkFBc0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29udGVudENoaWxkLFxuICBEaXJlY3RpdmUsXG4gIEVsZW1lbnRSZWYsXG4gIEhvc3RMaXN0ZW5lcixcbiAgSW5qZWN0LFxuICBJbnB1dCxcbiAgT25EZXN0cm95LFxuICBPcHRpb25hbCxcbiAgUmVuZGVyZXIyLFxuICBUZW1wbGF0ZVJlZixcbiAgVmlld0NvbnRhaW5lclJlZixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBtZXJnZSwgb2YsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGRlbGF5LCBtZXJnZU1hcCwgcmVwZWF0LCB0YWtlVW50aWwsIHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IFVudGlsRGVzdHJveSwgdW50aWxEZXN0cm95ZWQgfSBmcm9tICdAbmduZWF0L3VudGlsLWRlc3Ryb3knO1xuaW1wb3J0IHsgaXNCb29sZWFuTGlrZVRydWUsIGlzVG91Y2hEZXZpY2UsIG9ic2VydmVPblJlc2l6ZSB9IGZyb20gJy4uLy4uL3V0aWxzL2Z1bmN0aW9ucyc7XG5pbXBvcnQgeyBCb29sZWFuTGlrZSB9IGZyb20gJy4uLy4uL3V0aWxzL2ludGVyZmFjZXMnO1xuaW1wb3J0IHsgVG9vbHRpcFBvc2l0aW9uLCBUb29sdGlwU2V0dGluZ3MsIFRvb2x0aXBUb3VjaFRyaWdnZXIgfSBmcm9tICcuL3Rvb2x0aXAuaW50ZXJmYWNlJztcbmltcG9ydCB7IERFRkFVTFRfVE9PTFRJUF9TRVRUSU5HUywgVE9PTFRJUF9TRVRUSU5HUyB9IGZyb20gJy4vdG9vbHRpcC1zZXR0aW5ncy50b2tlbic7XG5cbkBVbnRpbERlc3Ryb3koKVxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2FuZ2xpZnlUb29sdGlwXScsXG4gIGV4cG9ydEFzOiAnYW5nbGlmeVRvb2x0aXAnLFxufSlcbmV4cG9ydCBjbGFzcyBUb29sdGlwRGlyZWN0aXZlIGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgQENvbnRlbnRDaGlsZCgndG9vbHRpcENvbnRlbnQnKSBwdWJsaWMgdGVtcGxhdGU/OiBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gIEBJbnB1dCgnYW5nbGlmeVRvb2x0aXAnKSBwdWJsaWMgdGV4dD86IHN0cmluZztcbiAgQElucHV0KCkgcHVibGljIHBvc2l0aW9uOiBUb29sdGlwUG9zaXRpb24gPSAnQk9UVE9NJztcbiAgQElucHV0KCdjb250ZW50LWNsYXNzJykgcHVibGljIGNvbnRlbnRDbGFzcz86IHN0cmluZztcbiAgQElucHV0KCkgcHVibGljIHRvb2x0aXBPcGVuRGVsYXkgPSAwO1xuICBASW5wdXQoKSBwdWJsaWMgdG9vbHRpcENsb3NlRGVsYXkgPSAwO1xuICBASW5wdXQoJ3Rvb2x0aXBNb3VudGluZ1BvaW50JykgcHVibGljIG1vdW50aW5nUG9pbnQ6IEhUTUxFbGVtZW50O1xuXG4gIC8qKiBQcmV2ZW50cyB0aGUgY29udGV4dCBtZW51IGZyb20gb3BlbmluZyB3aGVuIHRoZSBob3N0IGlzIGxvbmcgcHJlc3NlZC4gKi9cbiAgQElucHV0KCkgcHVibGljIHByZXZlbnRDb250ZXh0TWVudU9uVG91Y2hEZXZpY2U6IEJvb2xlYW5MaWtlID0gZmFsc2U7XG5cbiAgLyoqIEFsbG93cyB5b3UgdG8gZGVmaW5lIHdoZXRoZXIgdGhlIHRvb2x0aXAgaXMgb3BlbmVkIHdpdGggYSBxdWljayBwcmVzcyBvciB3aXRoIGEgbG9uZyBwcmVzcy4gKi9cbiAgQElucHV0KCkgcHVibGljIHRvb2x0aXBNb2JpbGVUcmlnZ2VyOiBUb29sdGlwVG91Y2hUcmlnZ2VyID0gJ2xvbmcnO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgZGVmYXVsdE9mZnNldDogbnVtYmVyID0gMTA7XG4gIHByaXZhdGUgcmVhZG9ubHkgbmF0aXZlRWxlbWVudDogSFRNTEVsZW1lbnQ7XG4gIHByaXZhdGUgdG9vbHRpcDogSFRNTEVsZW1lbnQgfCBudWxsID0gbnVsbDtcblxuICBwcml2YXRlIHJlYWRvbmx5IF9vcGVuQWN0aW9uID0gbmV3IFN1YmplY3Q8bnVtYmVyPigpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9jbG9zZUFjdGlvbiA9IG5ldyBTdWJqZWN0PG51bWJlcj4oKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfcmVwb3NpdGlvbkFjdGlvbiA9IG5ldyBTdWJqZWN0KCk7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfdmlzaWJsZUhhbmRsZXIkID0gbWVyZ2UoXG4gICAgdGhpcy5fb3BlbkFjdGlvbi5waXBlKFxuICAgICAgbWVyZ2VNYXAob3BlbkRlbGF5ID0+XG4gICAgICAgIG9mKG9wZW5EZWxheSkucGlwZShcbiAgICAgICAgICBkZWxheShvcGVuRGVsYXkpLFxuICAgICAgICAgIHRha2VVbnRpbCh0aGlzLl9jbG9zZUFjdGlvbiksXG4gICAgICAgICAgdGFwKCgpID0+IHtcbiAgICAgICAgICAgIGlmICh0aGlzLnRvb2x0aXApIHJldHVybjtcbiAgICAgICAgICAgIHRoaXMudG9vbHRpcCA9IHRoaXMuY3JlYXRlKCk7XG4gICAgICAgICAgICB0aGlzLl9yZXBvc2l0aW9uQWN0aW9uLm5leHQoKTtcbiAgICAgICAgICAgIHRoaXMucmVuZGVyZXIuYWRkQ2xhc3ModGhpcy50b29sdGlwLCAnYW5nbGlmeS10b29sdGlwX19vcGVuJyk7XG4gICAgICAgICAgfSlcbiAgICAgICAgKVxuICAgICAgKSxcbiAgICAgIHJlcGVhdCgpXG4gICAgKSxcbiAgICB0aGlzLl9jbG9zZUFjdGlvbi5waXBlKFxuICAgICAgbWVyZ2VNYXAoY2xvc2VEZWxheSA9PlxuICAgICAgICBvZihjbG9zZURlbGF5KS5waXBlKFxuICAgICAgICAgIGRlbGF5KGNsb3NlRGVsYXkpLFxuICAgICAgICAgIHRha2VVbnRpbCh0aGlzLl9vcGVuQWN0aW9uKSxcbiAgICAgICAgICB0YXAoKCkgPT4ge1xuICAgICAgICAgICAgaWYgKCF0aGlzLnRvb2x0aXApIHJldHVybjtcbiAgICAgICAgICAgIHRoaXMucmVuZGVyZXIucmVtb3ZlQ2xhc3ModGhpcy50b29sdGlwLCAnYW5nbGlmeS10b29sdGlwX19vcGVuJyk7XG4gICAgICAgICAgICB0aGlzLnJlbmRlcmVyLnJlbW92ZUNoaWxkKHRoaXMubmF0aXZlRWxlbWVudCwgdGhpcy50b29sdGlwKTtcbiAgICAgICAgICAgIHRoaXMudG9vbHRpcCA9IG51bGw7XG4gICAgICAgICAgfSlcbiAgICAgICAgKVxuICAgICAgKSxcbiAgICAgIHJlcGVhdCgpXG4gICAgKVxuICApO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX3JlcG9zaXRpb25IYW5kbGVyJCA9IHRoaXMuX3JlcG9zaXRpb25BY3Rpb24ucGlwZShcbiAgICB0YXAoKCkgPT4ge1xuICAgICAgaWYgKCF0aGlzLnRvb2x0aXApIHJldHVybjtcbiAgICAgIHRoaXMuc2V0UG9zaXRpb24oKTtcbiAgICB9KVxuICApO1xuXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsXG4gICAgcHJpdmF0ZSByZWFkb25seSByZW5kZXJlcjogUmVuZGVyZXIyLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgdmlld0NvbnRhaW5lclJlZjogVmlld0NvbnRhaW5lclJlZixcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBAT3B0aW9uYWwoKSBASW5qZWN0KFRPT0xUSVBfU0VUVElOR1MpIHByaXZhdGUgcmVhZG9ubHkgc2V0dGluZ3M/OiBUb29sdGlwU2V0dGluZ3NcbiAgKSB7XG4gICAgaWYgKCFzZXR0aW5ncykgdGhpcy5zZXR0aW5ncyA9IERFRkFVTFRfVE9PTFRJUF9TRVRUSU5HUztcbiAgICBpZiAoc2V0dGluZ3M/LnBvc2l0aW9uKSB0aGlzLnBvc2l0aW9uID0gc2V0dGluZ3MucG9zaXRpb247XG4gICAgaWYgKHNldHRpbmdzPy5vcGVuRGVsYXkpIHRoaXMudG9vbHRpcE9wZW5EZWxheSA9IHNldHRpbmdzLm9wZW5EZWxheTtcbiAgICBpZiAoc2V0dGluZ3M/LmNsb3NlRGVsYXkpIHRoaXMudG9vbHRpcENsb3NlRGVsYXkgPSBzZXR0aW5ncy5jbG9zZURlbGF5O1xuICAgIGlmIChzZXR0aW5ncz8ucHJldmVudENvbnRleHRNZW51T25Ub3VjaERldmljZSkgdGhpcy5wcmV2ZW50Q29udGV4dE1lbnVPblRvdWNoRGV2aWNlID0gc2V0dGluZ3MucHJldmVudENvbnRleHRNZW51T25Ub3VjaERldmljZTtcbiAgICBpZiAoc2V0dGluZ3M/Lm1vYmlsZVRyaWdnZXIpIHRoaXMudG9vbHRpcE1vYmlsZVRyaWdnZXIgPSBzZXR0aW5ncy5tb2JpbGVUcmlnZ2VyO1xuICAgIGlmIChzZXR0aW5ncz8uZGVmYXVsdE9mZnNldCkgdGhpcy5kZWZhdWx0T2Zmc2V0ID0gc2V0dGluZ3MuZGVmYXVsdE9mZnNldDtcblxuICAgIHRoaXMubmF0aXZlRWxlbWVudCA9IHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50O1xuICAgIHRoaXMubW91bnRpbmdQb2ludCA9IHRoaXMubmF0aXZlRWxlbWVudC5wYXJlbnRFbGVtZW50ID8/IGRvY3VtZW50LmJvZHk7XG4gICAgdGhpcy5fdmlzaWJsZUhhbmRsZXIkLnBpcGUodW50aWxEZXN0cm95ZWQodGhpcykpLnN1YnNjcmliZSgpO1xuICAgIHRoaXMuX3JlcG9zaXRpb25IYW5kbGVyJC5waXBlKHVudGlsRGVzdHJveWVkKHRoaXMpKS5zdWJzY3JpYmUoKTtcbiAgfVxuXG4gIHB1YmxpYyBvcGVuKGRlbGF5ID0gMCk6IHZvaWQge1xuICAgIHRoaXMuX29wZW5BY3Rpb24ubmV4dChkZWxheSk7XG4gIH1cblxuICBwdWJsaWMgY2xvc2UoZGVsYXkgPSAwKTogdm9pZCB7XG4gICAgdGhpcy5fY2xvc2VBY3Rpb24ubmV4dChkZWxheSk7XG4gIH1cblxuICBwdWJsaWMgdG9nZ2xlKGRlbGF5ID0gMCk6IHZvaWQge1xuICAgIHRoaXMudG9vbHRpcCA/IHRoaXMuX2Nsb3NlQWN0aW9uLm5leHQoZGVsYXkpIDogdGhpcy5fb3BlbkFjdGlvbi5uZXh0KGRlbGF5KTtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ21vdXNlZW50ZXInKVxuICBASG9zdExpc3RlbmVyKCdmb2N1cycpIC8vIE9wZW4gdG9vbHRpcCB3aGVuIGhvc3QgZ2V0cyBmb2N1c2VkICh3aXRoIGtleWJvYXJkIGZvciBleGFtcGxlKVxuICBwcml2YXRlIG9uT3BlbkV2ZW50RGVza3RvcCgpOiB2b2lkIHtcbiAgICBpZiAoaXNUb3VjaERldmljZSgpKSByZXR1cm47XG4gICAgdGhpcy5vcGVuKHRoaXMudG9vbHRpcE9wZW5EZWxheSk7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdtb3VzZWxlYXZlJylcbiAgQEhvc3RMaXN0ZW5lcignYmx1cicpIC8vIENsb3NlIHRvb2x0aXAgd2hlbiBob3N0IGdldHMgYmx1cnJlZCAod2l0aCBrZXlib2FyZCBmb3IgZXhhbXBsZSlcbiAgcHJpdmF0ZSBvbkNsb3NlRXZlbnREZXNrdG9wKCk6IHZvaWQge1xuICAgIGlmIChpc1RvdWNoRGV2aWNlKCkpIHJldHVybjtcbiAgICB0aGlzLmNsb3NlKHRoaXMudG9vbHRpcENsb3NlRGVsYXkpO1xuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignY2xpY2snLCBbJyRldmVudCddKVxuICBASG9zdExpc3RlbmVyKCdjb250ZXh0bWVudScsIFsnJGV2ZW50J10pXG4gIHByaXZhdGUgb25PcGVuRXZlbnRNb2JpbGUoZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgaWYgKHRoaXMudG9vbHRpcE1vYmlsZVRyaWdnZXIgPT09ICdsb25nJyAmJiBldmVudC50eXBlICE9PSAnY29udGV4dG1lbnUnKSByZXR1cm47XG4gICAgaWYgKHRoaXMudG9vbHRpcE1vYmlsZVRyaWdnZXIgPT09ICdzaG9ydCcgJiYgZXZlbnQudHlwZSAhPT0gJ2NsaWNrJykgcmV0dXJuO1xuXG4gICAgaWYgKGlzVG91Y2hEZXZpY2UoKSkge1xuICAgICAgaWYgKGlzQm9vbGVhbkxpa2VUcnVlKHRoaXMucHJldmVudENvbnRleHRNZW51T25Ub3VjaERldmljZSkpIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG5cbiAgICAgIHNldFRpbWVvdXQoKCkgPT4gdGhpcy5vcGVuKCksIDApOyAvLyBPcGVuIHRvb2x0aXAgYWZ0ZXIgb3RoZXIgY29udGV4dCBtZW51cyBhcmUgY2xvc2VkXG4gICAgfVxuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignZG9jdW1lbnQ6Y2xpY2snKVxuICBASG9zdExpc3RlbmVyKCdkb2N1bWVudDpjb250ZXh0bWVudScpIC8vIENsb3NlIHRvb2x0aXAgd2hlbiBvdGhlciB0b29sdGlwcyBhcmUgb3BlbmVkXG4gIHByaXZhdGUgb25DbG9zZUV2ZW50TW9iaWxlKCk6IHZvaWQge1xuICAgIGlmIChpc1RvdWNoRGV2aWNlKCkpIHRoaXMuY2xvc2UoKTtcbiAgfVxuXG4gIHByaXZhdGUgY3JlYXRlKCk6IEhUTUxTcGFuRWxlbWVudCB7XG4gICAgY29uc3QgdG9vbHRpcDogSFRNTFNwYW5FbGVtZW50ID0gdGhpcy5yZW5kZXJlci5jcmVhdGVFbGVtZW50KCdzcGFuJyk7XG4gICAgaWYgKHRoaXMudGVtcGxhdGUpIHtcbiAgICAgIGNvbnN0IHZpZXcgPSB0aGlzLnZpZXdDb250YWluZXJSZWYuY3JlYXRlRW1iZWRkZWRWaWV3KHRoaXMudGVtcGxhdGUpO1xuICAgICAgdmlldy5yb290Tm9kZXMuZm9yRWFjaChub2RlID0+IHRoaXMucmVuZGVyZXIuYXBwZW5kQ2hpbGQodG9vbHRpcCwgbm9kZSkpO1xuICAgIH0gZWxzZSBpZiAodGhpcy50ZXh0KSB7XG4gICAgICB0aGlzLnJlbmRlcmVyLmFwcGVuZENoaWxkKHRvb2x0aXAsIHRoaXMucmVuZGVyZXIuY3JlYXRlVGV4dCh0aGlzLnRleHQpKTtcbiAgICB9XG4gICAgdGhpcy5yZW5kZXJlci5hcHBlbmRDaGlsZCh0aGlzLm1vdW50aW5nUG9pbnQsIHRvb2x0aXApO1xuICAgIHRoaXMucmVuZGVyZXIuYWRkQ2xhc3ModG9vbHRpcCwgJ2FuZ2xpZnktdG9vbHRpcCcpO1xuICAgIGlmICh0aGlzLmNvbnRlbnRDbGFzcykgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyh0b29sdGlwLCB0aGlzLmNvbnRlbnRDbGFzcyk7XG5cbiAgICAvLyBodHRwczovL2dpdGh1Yi5jb20vdmFsZW50aW5nYXZyYW4vYW5nbGlmeS9pc3N1ZXMvMTkjaXNzdWVjb21tZW50LTEwMzA4MDkwMjBcbiAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xuICAgIG9ic2VydmVPblJlc2l6ZSh0b29sdGlwKVxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuX2Nsb3NlQWN0aW9uKSlcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5zZXRQb3NpdGlvbigpKTtcblxuICAgIHJldHVybiB0b29sdGlwO1xuICB9XG5cbiAgcHJpdmF0ZSBzZXRQb3NpdGlvbigpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMudG9vbHRpcCkgcmV0dXJuO1xuICAgIGNvbnN0IGhvc3RQb3MgPSB0aGlzLm5hdGl2ZUVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgY29uc3QgdG9vbHRpcFBvcyA9IHRoaXMudG9vbHRpcC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcblxuICAgIGNvbnN0IHNjcm9sbFBvcyA9IHdpbmRvdy5wYWdlWU9mZnNldCB8fCBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuc2Nyb2xsVG9wIHx8IGRvY3VtZW50LmJvZHkuc2Nyb2xsVG9wIHx8IDA7XG5cbiAgICBsZXQgdG9wO1xuICAgIGxldCBsZWZ0O1xuXG4gICAgaWYgKHRoaXMucG9zaXRpb24gPT09ICdUT1AnKSB7XG4gICAgICB0b3AgPSBob3N0UG9zLnRvcCAtIHRvb2x0aXBQb3MuaGVpZ2h0IC0gdGhpcy5kZWZhdWx0T2Zmc2V0O1xuICAgICAgbGVmdCA9IE1hdGgubWF4KGhvc3RQb3MubGVmdCArIChob3N0UG9zLndpZHRoIC0gdG9vbHRpcFBvcy53aWR0aCkgLyAyLCB0aGlzLmRlZmF1bHRPZmZzZXQpO1xuICAgIH0gZWxzZSBpZiAodGhpcy5wb3NpdGlvbiA9PT0gJ0JPVFRPTScpIHtcbiAgICAgIHRvcCA9IGhvc3RQb3MuYm90dG9tICsgdGhpcy5kZWZhdWx0T2Zmc2V0O1xuICAgICAgbGVmdCA9IE1hdGgubWF4KGhvc3RQb3MubGVmdCArIChob3N0UG9zLndpZHRoIC0gdG9vbHRpcFBvcy53aWR0aCkgLyAyLCB0aGlzLmRlZmF1bHRPZmZzZXQpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0b3AgPSBob3N0UG9zLnRvcCArIChob3N0UG9zLmhlaWdodCAtIHRvb2x0aXBQb3MuaGVpZ2h0KSAvIDI7XG4gICAgICBpZiAodGhpcy5wb3NpdGlvbiA9PT0gJ0xFRlQnKSB7XG4gICAgICAgIGxlZnQgPSBNYXRoLm1heChob3N0UG9zLmxlZnQgLSB0b29sdGlwUG9zLndpZHRoIC0gdGhpcy5kZWZhdWx0T2Zmc2V0LCB0aGlzLmRlZmF1bHRPZmZzZXQpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgbGVmdCA9IE1hdGgubWluKGhvc3RQb3MucmlnaHQgKyB0aGlzLmRlZmF1bHRPZmZzZXQsIHdpbmRvdy5pbm5lcldpZHRoIC0gdG9vbHRpcFBvcy53aWR0aCAtIHRoaXMuZGVmYXVsdE9mZnNldCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLnRvb2x0aXAsICd0b3AnLCBgJHt0b3AgKyBzY3JvbGxQb3N9cHhgKTtcbiAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHRoaXMudG9vbHRpcCwgJ2xlZnQnLCBgJHtsZWZ0fXB4YCk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5fY2xvc2VBY3Rpb24ubmV4dCgwKTtcbiAgfVxufVxuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmdsaWZ5L3NyYy9tb2R1bGVzL3Rvb2x0aXAvdG9vbHRpcC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFLTCxTQUFTLEVBR1QsWUFBWSxFQUNaLE1BQU0sRUFDTixRQUFRLEVBQ1IsS0FBSyxFQUVMLFFBQVEsRUFFUixXQUFXLEdBR1osTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFlBQVksRUFBRSxjQUFjLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNyRSxPQUFPLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDMUMsT0FBTyxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6RSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsYUFBYSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFekUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLGdCQUFnQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFdEYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7O0lBTzdELGdCQUFnQixTQUFoQixnQkFBZ0I7SUFvRjNCLFlBQ21CLE9BQW1CLEVBQ25CLFFBQW1CLEVBQ25CLGdCQUFrQyxFQUNsQyxRQUFrQixFQUNsQixRQUFrQyxFQUNsQyxjQUE4QixFQUM5QixLQUF3QixFQUNjLFFBQW9DO1FBUDFFLFlBQU8sR0FBUCxPQUFPLENBQVk7UUFDbkIsYUFBUSxHQUFSLFFBQVEsQ0FBVztRQUNuQixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBQ2xDLGFBQVEsR0FBUixRQUFRLENBQVU7UUFDbEIsYUFBUSxHQUFSLFFBQVEsQ0FBMEI7UUFDbEMsbUJB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aGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLFxuICBDb21wb25lbnRSZWYsXG4gIERpcmVjdGl2ZSxcbiAgRWxlbWVudFJlZixcbiAgRW1iZWRkZWRWaWV3UmVmLFxuICBIb3N0TGlzdGVuZXIsXG4gIEluamVjdCxcbiAgSW5qZWN0b3IsXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksXG4gIE9wdGlvbmFsLFxuICBSZW5kZXJlcjIsXG4gIFRlbXBsYXRlUmVmLFxuICBUeXBlLFxuICBWaWV3Q29udGFpbmVyUmVmLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFVudGlsRGVzdHJveSwgdW50aWxEZXN0cm95ZWQgfSBmcm9tICdAbmduZWF0L3VudGlsLWRlc3Ryb3knO1xuaW1wb3J0IHsgbWVyZ2UsIG9mLCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBkZWxheSwgbWVyZ2VNYXAsIHJlcGVhdCwgdGFrZVVudGlsLCB0YXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBpc0Jvb2xlYW5MaWtlVHJ1ZSwgaXNUb3VjaERldmljZSB9IGZyb20gJy4uLy4uL3V0aWxzL2Z1bmN0aW9ucyc7XG5pbXBvcnQgeyBCb29sZWFuTGlrZSB9IGZyb20gJy4uLy4uL3V0aWxzL2ludGVyZmFjZXMnO1xuaW1wb3J0IHsgREVGQVVMVF9UT09MVElQX1NFVFRJTkdTLCBUT09MVElQX1NFVFRJTkdTIH0gZnJvbSAnLi90b29sdGlwLXNldHRpbmdzLnRva2VuJztcbmltcG9ydCB7IFRvb2x0aXBQb3NpdGlvbiwgVG9vbHRpcFNldHRpbmdzLCBUb29sdGlwVG91Y2hUcmlnZ2VyIH0gZnJvbSAnLi90b29sdGlwLmludGVyZmFjZSc7XG5pbXBvcnQgeyBUb29sdGlwQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3Rvb2x0aXAvdG9vbHRpcC5jb21wb25lbnQnO1xuXG5AVW50aWxEZXN0cm95KClcbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1thbmdsaWZ5VG9vbHRpcF0nLFxuICBleHBvcnRBczogJ2FuZ2xpZnlUb29sdGlwJyxcbn0pXG5leHBvcnQgY2xhc3MgVG9vbHRpcERpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gIEBJbnB1dCgnYW5nbGlmeVRvb2x0aXAnKSBwdWJsaWMgY29udGVudCE6IHN0cmluZyB8IFRlbXBsYXRlUmVmPGFueT4gfCBUeXBlPGFueT47XG4gIEBJbnB1dCgndG9vbHRpcE1vdW50aW5nUG9pbnQnKSBwdWJsaWMgbW91bnRpbmdQb2ludDogJ2JvZHknIHwgJ3BhcmVudCcgfCBIVE1MRWxlbWVudCA9ICdwYXJlbnQnO1xuICBASW5wdXQoJ3Rvb2x0aXBIb3Zlck9wZW5EZWxheScpIHB1YmxpYyBob3Zlck9wZW5EZWxheTtcbiAgQElucHV0KCd0b29sdGlwSG92ZXJDbG9zZURlbGF5JykgcHVibGljIGhvdmVyQ2xvc2VEZWxheTtcbiAgQElucHV0KCd0b29sdGlwVG91Y2hPcGVuRGVsYXknKSBwdWJsaWMgdG91Y2hPcGVuRGVsYXk7XG4gIEBJbnB1dCgndG9vbHRpcFRvdWNoQ2xvc2VEZWxheScpIHB1YmxpYyB0b3VjaENsb3NlRGVsYXk7XG4gIC8qKiBQcmV2ZW50cyB0aGUgY29udGV4dCBtZW51IGZyb20gb3BlbmluZyB3aGVuIHRoZSBob3N0IGlzIGxvbmcgcHJlc3NlZC4gKi9cbiAgQElucHV0KCkgcHVibGljIHByZXZlbnRDb250ZXh0TWVudU9uVG91Y2hEZXZpY2U6IEJvb2xlYW5MaWtlO1xuICAvKiogQWxsb3dzIHlvdSB0byBkZWZpbmUgd2hldGhlciB0aGUgdG9vbHRpcCBpcyBvcGVuZWQgd2l0aCBhIHF1aWNrIHByZXNzIG9yIHdpdGggYSBsb25nIHByZXNzLiAqL1xuICBASW5wdXQoKSBwdWJsaWMgdG9vbHRpcE1vYmlsZVRyaWdnZXI6IFRvb2x0aXBUb3VjaFRyaWdnZXI7XG4gIEBJbnB1dCgpIHB1YmxpYyBhdXRvQ2xvc2VPblRvdWNoRGV2aWNlc0FmdGVyRGVsYXk6IEJvb2xlYW5MaWtlO1xuXG4gIC8qKiBEaXN0YW5jZSBiZXR3ZWVuIHRoZSB0b29sdGlwIGFuZCB0aGUgaG9zdCBlbGVtZW50ICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgb2Zmc2V0KHZhbHVlOiBudW1iZXIpIHtcbiAgICB0aGlzLl9vZmZzZXQgPSB2YWx1ZTtcbiAgICBpZiAodGhpcy5jb21wb25lbnRSZWYpIHtcbiAgICAgIHRoaXMuY29tcG9uZW50UmVmLmluc3RhbmNlLm9mZnNldCA9IHZhbHVlO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBnZXQgb2Zmc2V0KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuX29mZnNldDtcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgcG9zaXRpb24odmFsdWU6IFRvb2x0aXBQb3NpdGlvbikge1xuICAgIHRoaXMuX3Bvc2l0aW9uID0gdmFsdWU7XG4gICAgaWYgKHRoaXMuY29tcG9uZW50UmVmKSB7XG4gICAgICB0aGlzLmNvbXBvbmVudFJlZi5pbnN0YW5jZS5wb3NpdGlvbiA9IHZhbHVlO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBnZXQgcG9zaXRpb24oKTogVG9vbHRpcFBvc2l0aW9uIHtcbiAgICByZXR1cm4gdGhpcy5fcG9zaXRpb247XG4gIH1cblxuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGNvbnRlbnRDbGFzcyh2YWx1ZTogc3RyaW5nIHwgdW5kZWZpbmVkKSB7XG4gICAgdGhpcy5fY29udGVudENsYXNzID0gdmFsdWU7XG4gICAgaWYgKHRoaXMuY29tcG9uZW50UmVmKSB7XG4gICAgICB0aGlzLmNvbXBvbmVudFJlZi5pbnN0YW5jZS5jb250ZW50Q2xhc3MgPSB2YWx1ZTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgZ2V0IGNvbnRlbnRDbGFzcygpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLl9jb250ZW50Q2xhc3M7XG4gIH1cblxuICBwcml2YXRlIF9wb3NpdGlvbjogVG9vbHRpcFBvc2l0aW9uID0gREVGQVVMVF9UT09MVElQX1NFVFRJTkdTLnBvc2l0aW9uO1xuICBwcml2YXRlIF9vZmZzZXQgPSBERUZBVUxUX1RPT0xUSVBfU0VUVElOR1MuZGVmYXVsdE9mZnNldDtcbiAgcHJpdmF0ZSBfY29udGVudENsYXNzPzogc3RyaW5nO1xuXG4gIHByaXZhdGUgY29tcG9uZW50UmVmOiBDb21wb25lbnRSZWY8VG9vbHRpcENvbXBvbmVudD4gfCB1bmRlZmluZWQ7IC8vIFRvb2x0aXAgQ29tcG9uZW50IFJlZmVyZW5jZVxuICBwcml2YXRlIGVtYmVkZGVkVmlldzogRW1iZWRkZWRWaWV3UmVmPGFueT4gfCB1bmRlZmluZWQ7IC8vIFRvb2x0aXAgQ29udGVudCBUZW1wbGF0ZSBSZWZlcmVuY2VcblxuICBwcml2YXRlIHJlYWRvbmx5IF9vcGVuQWN0aW9uID0gbmV3IFN1YmplY3Q8bnVtYmVyPigpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9jbG9zZUFjdGlvbiA9IG5ldyBTdWJqZWN0PG51bWJlcj4oKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfdmlzaWJsZUhhbmRsZXIkID0gbWVyZ2UoXG4gICAgdGhpcy5fb3BlbkFjdGlvbi5waXBlKFxuICAgICAgbWVyZ2VNYXAob3BlbkRlbGF5ID0+XG4gICAgICAgIG9mKG9wZW5EZWxheSkucGlwZShcbiAgICAgICAgICBkZWxheShvcGVuRGVsYXkpLFxuICAgICAgICAgIHRha2VVbnRpbCh0aGlzLl9jbG9zZUFjdGlvbiksXG4gICAgICAgICAgdGFwKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuY3JlYXRlKCk7XG4gICAgICAgICAgfSlcbiAgICAgICAgKVxuICAgICAgKSxcbiAgICAgIHJlcGVhdCgpXG4gICAgKSxcbiAgICB0aGlzLl9jbG9zZUFjdGlvbi5waXBlKFxuICAgICAgbWVyZ2VNYXAoY2xvc2VEZWxheSA9PlxuICAgICAgICBvZihjbG9zZURlbGF5KS5waXBlKFxuICAgICAgICAgIGRlbGF5KGNsb3NlRGVsYXkpLFxuICAgICAgICAgIHRha2VVbnRpbCh0aGlzLl9vcGVuQWN0aW9uKSxcbiAgICAgICAgICB0YXAoKCkgPT4gdGhpcy5fZGV0YWNoKCkpXG4gICAgICAgIClcbiAgICAgICksXG4gICAgICByZXBlYXQoKVxuICAgIClcbiAgKTtcblxuICBwdWJsaWMgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSBlbGVtZW50OiBFbGVtZW50UmVmLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgcmVuZGVyZXI6IFJlbmRlcmVyMixcbiAgICBwcml2YXRlIHJlYWRvbmx5IHZpZXdDb250YWluZXJSZWY6IFZpZXdDb250YWluZXJSZWYsXG4gICAgcHJpdmF0ZSByZWFkb25seSBpbmplY3RvcjogSW5qZWN0b3IsXG4gICAgcHJpdmF0ZSByZWFkb25seSByZXNvbHZlcjogQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgYXBwbGljYXRpb25SZWY6IEFwcGxpY2F0aW9uUmVmLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgY2RSZWY6IENoYW5nZURldGVjdG9yUmVmLFxuICAgIEBPcHRpb25hbCgpIEBJbmplY3QoVE9PTFRJUF9TRVRUSU5HUykgcHJpdmF0ZSByZWFkb25seSBzZXR0aW5ncz86IFJlcXVpcmVkPFRvb2x0aXBTZXR0aW5ncz5cbiAgKSB7XG4gICAgY29uc3QgbWVyZ2VkU2V0dGluZ3M6IFJlcXVpcmVkPFRvb2x0aXBTZXR0aW5ncz4gPSBPYmplY3QuYXNzaWduKHt9LCBERUZBVUxUX1RPT0xUSVBfU0VUVElOR1MsIHRoaXMuc2V0dGluZ3MpO1xuICAgIHRoaXMucG9zaXRpb24gPSBtZXJnZWRTZXR0aW5ncy5wb3NpdGlvbjtcbiAgICB0aGlzLmhvdmVyT3BlbkRlbGF5ID0gbWVyZ2VkU2V0dGluZ3MuaG92ZXJPcGVuRGVsYXk7XG4gICAgdGhpcy5ob3ZlckNsb3NlRGVsYXkgPSBtZXJnZWRTZXR0aW5ncy5ob3ZlckNsb3NlRGVsYXk7XG4gICAgdGhpcy50b3VjaE9wZW5EZWxheSA9IG1lcmdlZFNldHRpbmdzLnRvdWNoT3BlbkRlbGF5O1xuICAgIHRoaXMudG91Y2hDbG9zZURlbGF5ID0gbWVyZ2VkU2V0dGluZ3MudG91Y2hDbG9zZURlbGF5O1xuICAgIHRoaXMucHJldmVudENvbnRleHRNZW51T25Ub3VjaERldmljZSA9IG1lcmdlZFNldHRpbmdzLnByZXZlbnRDb250ZXh0TWVudU9uVG91Y2hEZXZpY2U7XG4gICAgdGhpcy50b29sdGlwTW9iaWxlVHJpZ2dlciA9IG1lcmdlZFNldHRpbmdzLm1vYmlsZVRyaWdnZXI7XG4gICAgdGhpcy5vZmZzZXQgPSBtZXJnZWRTZXR0aW5ncy5kZWZhdWx0T2Zmc2V0O1xuICAgIHRoaXMuYXV0b0Nsb3NlT25Ub3VjaERldmljZXNBZnRlckRlbGF5ID0gbWVyZ2VkU2V0dGluZ3MuYXV0b0Nsb3NlT25Ub3VjaERldmljZXNBZnRlckRlbGF5O1xuXG4gICAgdGhpcy5fdmlzaWJsZUhhbmRsZXIkLnBpcGUodW50aWxEZXN0cm95ZWQodGhpcykpLnN1YnNjcmliZSgpO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuX2RldGFjaCgpO1xuICB9XG5cbiAgcHVibGljIG9wZW4oZGVsYXkgPSAwKTogdm9pZCB7XG4gICAgdGhpcy5fb3BlbkFjdGlvbi5uZXh0KGRlbGF5KTtcbiAgfVxuXG4gIHB1YmxpYyBjbG9zZShkZWxheSA9IDApOiB2b2lkIHtcbiAgICB0aGlzLl9jbG9zZUFjdGlvbi5uZXh0KGRlbGF5KTtcbiAgfVxuXG4gIHB1YmxpYyB0b2dnbGUoZGVsYXkgPSAwKTogdm9pZCB7XG4gICAgdGhpcy5jb21wb25lbnRSZWYgPyB0aGlzLl9jbG9zZUFjdGlvbi5uZXh0KGRlbGF5KSA6IHRoaXMuX29wZW5BY3Rpb24ubmV4dChkZWxheSk7XG4gIH1cblxuICBwcml2YXRlIF9kZXRhY2goKTogdm9pZCB7XG4gICAgdGhpcy5jb21wb25lbnRSZWY/LmRlc3Ryb3koKTtcbiAgICB0aGlzLmNvbXBvbmVudFJlZiA9IHVuZGVmaW5lZDtcbiAgICB0aGlzLmVtYmVkZGVkVmlldz8uZGVzdHJveSgpO1xuICAgIHRoaXMuZW1iZWRkZWRWaWV3ID0gdW5kZWZpbmVkO1xuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignbW91c2VlbnRlcicpXG4gIHByaXZhdGUgb25PcGVuRXZlbnREZXNrdG9wKCk6IHZvaWQge1xuICAgIGlmIChpc1RvdWNoRGV2aWNlKCkpIHJldHVybjtcbiAgICB0aGlzLm9wZW4odGhpcy5ob3Zlck9wZW5EZWxheSk7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCd0b3VjaHN0YXJ0JywgWyckZXZlbnQnXSlcbiAgQEhvc3RMaXN0ZW5lcignY29udGV4dG1lbnUnLCBbJyRldmVudCddKVxuICBwcml2YXRlIG9uT3BlbkV2ZW50TW9iaWxlKGV2ZW50OiBFdmVudCk6IHZvaWQge1xuICAgIGlmICghaXNUb3VjaERldmljZSgpKSByZXR1cm47XG4gICAgaWYgKHRoaXMudG9vbHRpcE1vYmlsZVRyaWdnZXIgPT09ICdsb25nJyAmJiBldmVudC50eXBlID09PSAndG91Y2hzdGFydCcpIHJldHVybjtcbiAgICBpZiAodGhpcy50b29sdGlwTW9iaWxlVHJpZ2dlciA9PT0gJ3Nob3J0JyAmJiBldmVudC50eXBlID09PSAnY29udGV4dG1lbnUnKSByZXR1cm47XG4gICAgaWYgKGlzQm9vbGVhbkxpa2VUcnVlKHRoaXMucHJldmVudENvbnRleHRNZW51T25Ub3VjaERldmljZSkgfHwgaXNCb29sZWFuTGlrZVRydWUodGhpcy5hdXRvQ2xvc2VPblRvdWNoRGV2aWNlc0FmdGVyRGVsYXkpKSB7XG4gICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIH1cbiAgICB0aGlzLm9wZW4odGhpcy50b3VjaE9wZW5EZWxheSk7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCd0b3VjaGVuZCcpXG4gIHByaXZhdGUgYXV0b0Nsb3NlT25Nb2JpbGUoKTogdm9pZCB7XG4gICAgaWYgKCFpc0Jvb2xlYW5MaWtlVHJ1ZSh0aGlzLmF1dG9DbG9zZU9uVG91Y2hEZXZpY2VzQWZ0ZXJEZWxheSkpIHJldHVybjtcbiAgICBpZiAoIWlzVG91Y2hEZXZpY2UoKSkgcmV0dXJuO1xuICAgIHRoaXMuY2xvc2UodGhpcy50b3VjaENsb3NlRGVsYXkpO1xuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignZG9jdW1lbnQ6Y2xpY2snLCBbJyRldmVudCcsICckZXZlbnQudGFyZ2V0J10pXG4gIEBIb3N0TGlzdGVuZXIoJ2RvY3VtZW50OmNvbnRleHRtZW51JywgWyckZXZlbnQnLCAnJGV2ZW50LnRhcmdldCddKVxuICBwdWJsaWMgb25DbGlja091dHNpZGUoZXZlbnQ6IE1vdXNlRXZlbnQsIHRhcmdldEVsZW1lbnQ6IEhUTUxFbGVtZW50KTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLmNvbXBvbmVudFJlZikgcmV0dXJuO1xuICAgIGlmICghQm9vbGVhbih0YXJnZXRFbGVtZW50KSkgcmV0dXJuO1xuICAgIGNvbnN0IGNsaWNrZWRJbnNpZGUgPSB0aGlzLmVsZW1lbnQubmF0aXZlRWxlbWVudC5jb250YWlucyh0YXJnZXRFbGVtZW50KTtcbiAgICBpZiAoIWNsaWNrZWRJbnNpZGUpIHRoaXMuY2xvc2UoMCk7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdtb3VzZWxlYXZlJylcbiAgcHJpdmF0ZSBvbkNsb3NlRXZlbnQoKTogdm9pZCB7XG4gICAgdGhpcy5jbG9zZShpc1RvdWNoRGV2aWNlKCkgPyB0aGlzLnRvdWNoQ2xvc2VEZWxheSA6IHRoaXMuaG92ZXJDbG9zZURlbGF5KTtcbiAgfVxuXG4gIHByaXZhdGUgY3JlYXRlKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmNvbXBvbmVudFJlZikgcmV0dXJuO1xuICAgIGNvbnN0IGZhY3RvcnkgPSB0aGlzLnJlc29sdmVyLnJlc29sdmVDb21wb25lbnRGYWN0b3J5KFRvb2x0aXBDb21wb25lbnQpO1xuICAgIGNvbnN0IGluamVjdG9yID0gSW5qZWN0b3IuY3JlYXRlKHtcbiAgICAgIHByb3ZpZGVyczogW3sgcHJvdmlkZTogJ3Rvb2x0aXBDb25maWcnLCB1c2VWYWx1ZTogeyBob3N0OiB0aGlzLmVsZW1lbnQubmF0aXZlRWxlbWVudCB9IH1dLFxuICAgIH0pO1xuICAgIHRoaXMuY29tcG9uZW50UmVmID0gdGhpcy52aWV3Q29udGFpbmVyUmVmLmNyZWF0ZUNvbXBvbmVudChmYWN0b3J5LCAwLCBpbmplY3RvciwgdGhpcy5nZW5lcmF0ZU5nQ29udGVudCgpKTtcbiAgICB0aGlzLmNvbXBvbmVudFJlZi5pbnN0YW5jZS5wb3NpdGlvbiA9IHRoaXMucG9zaXRpb247XG4gICAgdGhpcy5jb21wb25lbnRSZWYuaW5zdGFuY2Uub2Zmc2V0ID0gdGhpcy5vZmZzZXQ7XG4gICAgdGhpcy5jb21wb25lbnRSZWYuaW5zdGFuY2UuY29udGVudENsYXNzID0gdGhpcy5jb250ZW50Q2xhc3M7XG5cbiAgICB0aGlzLmNoYW5nZU1vdW50aW5nUG9pbnQoKTtcbiAgICB0aGlzLmNkUmVmLm1hcmtGb3JDaGVjaygpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZW5lcmF0ZU5nQ29udGVudCgpOiBhbnlbXVtdIHtcbiAgICBpZiAodHlwZW9mIHRoaXMuY29udGVudCA9PT0gJ3N0cmluZycpIHtcbiAgICAgIHJldHVybiBbW3RoaXMucmVuZGVyZXIuY3JlYXRlVGV4dCh0aGlzLmNvbnRlbnQpXV07XG4gICAgfVxuICAgIGlmICh0aGlzLmNvbnRlbnQgaW5zdGFuY2VvZiBUZW1wbGF0ZVJlZikge1xuICAgICAgdGhpcy5lbWJlZGRlZFZpZXcgPSB0aGlzLmNvbnRlbnQuY3JlYXRlRW1iZWRkZWRWaWV3KHt9KTtcbiAgICAgIHRoaXMuYXBwbGljYXRpb25SZWYuYXR0YWNoVmlldyh0aGlzLmVtYmVkZGVkVmlldyk7XG4gICAgICByZXR1cm4gW3RoaXMuZW1iZWRkZWRWaWV3LnJvb3ROb2Rlc107XG4gICAgfVxuICAgIHJldHVybiBbW3RoaXMucmVzb2x2ZXIucmVzb2x2ZUNvbXBvbmVudEZhY3RvcnkodGhpcy5jb250ZW50KS5jcmVhdGUodGhpcy5pbmplY3RvcildXTtcbiAgfVxuXG4gIHByaXZhdGUgY2hhbmdlTW91bnRpbmdQb2ludCgpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuY29tcG9uZW50UmVmKSByZXR1cm47XG4gICAgaWYgKHRoaXMubW91bnRpbmdQb2ludCA9PT0gJ3BhcmVudCcpIHtcbiAgICB9IGVsc2UgaWYgKHRoaXMubW91bnRpbmdQb2ludCA9PT0gJ2JvZHknKSB7XG4gICAgICB0aGlzLnJlbmRlcmVyLmFwcGVuZENoaWxkKGRvY3VtZW50LmJvZHksIHRoaXMuY29tcG9uZW50UmVmLmxvY2F0aW9uLm5hdGl2ZUVsZW1lbnQpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnJlbmRlcmVyLmFwcGVuZENoaWxkKHRoaXMubW91bnRpbmdQb2ludCwgdGhpcy5jb21wb25lbnRSZWYubG9jYXRpb24ubmF0aXZlRWxlbWVudCk7XG4gICAgfVxuICB9XG59XG4iXX0=
export {};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmdsaWZ5L3NyYy9tb2R1bGVzL3Rvb2x0aXAvdG9vbHRpcC5pbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB0eXBlIFRvb2x0aXBUb3VjaFRyaWdnZXIgPSAnc2hvcnQnIHwgJ2xvbmcnO1xuXG5leHBvcnQgdHlwZSBUb29sdGlwUG9zaXRpb24gPSAnVE9QJyB8ICdSSUdIVCcgfCAnQk9UVE9NJyB8ICdMRUZUJztcblxuZXhwb3J0IGludGVyZmFjZSBUb29sdGlwU2V0dGluZ3Mge1xuICBwb3NpdGlvbj86IFRvb2x0aXBQb3NpdGlvbjtcbiAgb3BlbkRlbGF5PzogbnVtYmVyO1xuICBjbG9zZURlbGF5PzogbnVtYmVyO1xuICBwcmV2ZW50Q29udGV4dE1lbnVPblRvdWNoRGV2aWNlPzogYm9vbGVhbjtcbiAgbW9iaWxlVHJpZ2dlcj86IFRvb2x0aXBUb3VjaFRyaWdnZXI7XG4gIGRlZmF1bHRPZmZzZXQ/OiBudW1iZXI7XG59XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmdsaWZ5L3NyYy9tb2R1bGVzL3Rvb2x0aXAvdG9vbHRpcC5pbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB0eXBlIFRvb2x0aXBUb3VjaFRyaWdnZXIgPSAnc2hvcnQnIHwgJ2xvbmcnO1xuXG5leHBvcnQgdHlwZSBUb29sdGlwUG9zaXRpb24gPSAndG9wJyB8ICdyaWdodCcgfCAnYm90dG9tJyB8ICdsZWZ0JztcblxuZXhwb3J0IHR5cGUgVG9vbHRpcE1vdW50aW5nUG9pbnQgPSBIVE1MRWxlbWVudCB8ICdib2R5JyB8ICdwYXJlbnQnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFRvb2x0aXBTZXR0aW5ncyB7XG4gIHBvc2l0aW9uPzogVG9vbHRpcFBvc2l0aW9uO1xuICBob3Zlck9wZW5EZWxheT86IG51bWJlcjtcbiAgdG91Y2hPcGVuRGVsYXk/OiBudW1iZXI7XG4gIGhvdmVyQ2xvc2VEZWxheT86IG51bWJlcjtcbiAgdG91Y2hDbG9zZURlbGF5PzogbnVtYmVyO1xuICBwcmV2ZW50Q29udGV4dE1lbnVPblRvdWNoRGV2aWNlPzogYm9vbGVhbjtcbiAgbW9iaWxlVHJpZ2dlcj86IFRvb2x0aXBUb3VjaFRyaWdnZXI7XG4gIGRlZmF1bHRPZmZzZXQ/OiBudW1iZXI7XG4gIGF1dG9DbG9zZU9uVG91Y2hEZXZpY2VzQWZ0ZXJEZWxheT86IGJvb2xlYW47XG59XG4iXX0=
import { NgModule } from '@angular/core';
import { TooltipComponent } from './components/tooltip/tooltip.component';
import { DEFAULT_TOOLTIP_SETTINGS, TOOLTIP_SETTINGS } from './tooltip-settings.token';
import { TooltipDirective } from './tooltip.directive';
import { DEFAULT_TOOLTIP_SETTINGS, TOOLTIP_SETTINGS } from './tooltip-settings.token';
import { CommonModule } from '@angular/common';
import * as i0 from "@angular/core";

@@ -15,11 +17,12 @@ export class TooltipModule {

TooltipModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.1.5", ngImport: i0, type: TooltipModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
TooltipModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.1.5", ngImport: i0, type: TooltipModule, declarations: [TooltipDirective], exports: [TooltipDirective] });
TooltipModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.1.5", ngImport: i0, type: TooltipModule });
TooltipModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.1.5", ngImport: i0, type: TooltipModule, declarations: [TooltipDirective, TooltipComponent], imports: [CommonModule], exports: [TooltipDirective] });
TooltipModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.1.5", ngImport: i0, type: TooltipModule, imports: [[CommonModule]] });
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.1.5", ngImport: i0, type: TooltipModule, decorators: [{
type: NgModule,
args: [{
declarations: [TooltipDirective],
declarations: [TooltipDirective, TooltipComponent],
exports: [TooltipDirective],
imports: [CommonModule],
}]
}] });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmdsaWZ5L3NyYy9tb2R1bGVzL3Rvb2x0aXAvdG9vbHRpcC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUF1QixRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDOUQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFdkQsT0FBTyxFQUFFLHdCQUF3QixFQUFFLGdCQUFnQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7O0FBTXRGLE1BQU0sT0FBTyxhQUFhO0lBQ2pCLE1BQU0sQ0FBQyxPQUFPLENBQUMsUUFBeUI7UUFDN0MsTUFBTSxjQUFjLEdBQThCLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxFQUFFLHdCQUF3QixFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBRXhHLE9BQU87WUFDTCxRQUFRLEVBQUUsYUFBYTtZQUN2QixTQUFTLEVBQUUsQ0FBQyxFQUFFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxRQUFRLEVBQUUsY0FBYyxFQUFFLENBQUM7U0FDckUsQ0FBQztJQUNKLENBQUM7OzBHQVJVLGFBQWE7MkdBQWIsYUFBYSxpQkFIVCxnQkFBZ0IsYUFDckIsZ0JBQWdCOzJHQUVmLGFBQWE7MkZBQWIsYUFBYTtrQkFKekIsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQztvQkFDaEMsT0FBTyxFQUFFLENBQUMsZ0JBQWdCLENBQUM7aUJBQzVCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTW9kdWxlV2l0aFByb3ZpZGVycywgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFRvb2x0aXBEaXJlY3RpdmUgfSBmcm9tICcuL3Rvb2x0aXAuZGlyZWN0aXZlJztcbmltcG9ydCB7IFRvb2x0aXBTZXR0aW5ncyB9IGZyb20gJy4vdG9vbHRpcC5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgREVGQVVMVF9UT09MVElQX1NFVFRJTkdTLCBUT09MVElQX1NFVFRJTkdTIH0gZnJvbSAnLi90b29sdGlwLXNldHRpbmdzLnRva2VuJztcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbVG9vbHRpcERpcmVjdGl2ZV0sXG4gIGV4cG9ydHM6IFtUb29sdGlwRGlyZWN0aXZlXSxcbn0pXG5leHBvcnQgY2xhc3MgVG9vbHRpcE1vZHVsZSB7XG4gIHB1YmxpYyBzdGF0aWMgZm9yUm9vdChzZXR0aW5nczogVG9vbHRpcFNldHRpbmdzKTogTW9kdWxlV2l0aFByb3ZpZGVyczxUb29sdGlwTW9kdWxlPiB7XG4gICAgY29uc3QgbWVyZ2VkU2V0dGluZ3M6IFJlcXVpcmVkPFRvb2x0aXBTZXR0aW5ncz4gPSBPYmplY3QuYXNzaWduKHt9LCBERUZBVUxUX1RPT0xUSVBfU0VUVElOR1MsIHNldHRpbmdzKTtcblxuICAgIHJldHVybiB7XG4gICAgICBuZ01vZHVsZTogVG9vbHRpcE1vZHVsZSxcbiAgICAgIHByb3ZpZGVyczogW3sgcHJvdmlkZTogVE9PTFRJUF9TRVRUSU5HUywgdXNlVmFsdWU6IG1lcmdlZFNldHRpbmdzIH1dLFxuICAgIH07XG4gIH1cbn1cbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmdsaWZ5L3NyYy9tb2R1bGVzL3Rvb2x0aXAvdG9vbHRpcC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUF1QixRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDOUQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDMUUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLGdCQUFnQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDdEYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFdkQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDOztBQU8vQyxNQUFNLE9BQU8sYUFBYTtJQUNqQixNQUFNLENBQUMsT0FBTyxDQUFDLFFBQXlCO1FBQzdDLE1BQU0sY0FBYyxHQUE4QixNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFBRSx3QkFBd0IsRUFBRSxRQUFRLENBQUMsQ0FBQztRQUV4RyxPQUFPO1lBQ0wsUUFBUSxFQUFFLGFBQWE7WUFDdkIsU0FBUyxFQUFFLENBQUMsRUFBRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsUUFBUSxFQUFFLGNBQWMsRUFBRSxDQUFDO1NBQ3JFLENBQUM7SUFDSixDQUFDOzswR0FSVSxhQUFhOzJHQUFiLGFBQWEsaUJBSlQsZ0JBQWdCLEVBQUUsZ0JBQWdCLGFBRXZDLFlBQVksYUFEWixnQkFBZ0I7MkdBR2YsYUFBYSxZQUZmLENBQUMsWUFBWSxDQUFDOzJGQUVaLGFBQWE7a0JBTHpCLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFLENBQUMsZ0JBQWdCLEVBQUUsZ0JBQWdCLENBQUM7b0JBQ2xELE9BQU8sRUFBRSxDQUFDLGdCQUFnQixDQUFDO29CQUMzQixPQUFPLEVBQUUsQ0FBQyxZQUFZLENBQUM7aUJBQ3hCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTW9kdWxlV2l0aFByb3ZpZGVycywgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFRvb2x0aXBDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvdG9vbHRpcC90b29sdGlwLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBERUZBVUxUX1RPT0xUSVBfU0VUVElOR1MsIFRPT0xUSVBfU0VUVElOR1MgfSBmcm9tICcuL3Rvb2x0aXAtc2V0dGluZ3MudG9rZW4nO1xuaW1wb3J0IHsgVG9vbHRpcERpcmVjdGl2ZSB9IGZyb20gJy4vdG9vbHRpcC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgVG9vbHRpcFNldHRpbmdzIH0gZnJvbSAnLi90b29sdGlwLmludGVyZmFjZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtUb29sdGlwRGlyZWN0aXZlLCBUb29sdGlwQ29tcG9uZW50XSxcbiAgZXhwb3J0czogW1Rvb2x0aXBEaXJlY3RpdmVdLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlXSxcbn0pXG5leHBvcnQgY2xhc3MgVG9vbHRpcE1vZHVsZSB7XG4gIHB1YmxpYyBzdGF0aWMgZm9yUm9vdChzZXR0aW5nczogVG9vbHRpcFNldHRpbmdzKTogTW9kdWxlV2l0aFByb3ZpZGVyczxUb29sdGlwTW9kdWxlPiB7XG4gICAgY29uc3QgbWVyZ2VkU2V0dGluZ3M6IFJlcXVpcmVkPFRvb2x0aXBTZXR0aW5ncz4gPSBPYmplY3QuYXNzaWduKHt9LCBERUZBVUxUX1RPT0xUSVBfU0VUVElOR1MsIHNldHRpbmdzKTtcblxuICAgIHJldHVybiB7XG4gICAgICBuZ01vZHVsZTogVG9vbHRpcE1vZHVsZSxcbiAgICAgIHByb3ZpZGVyczogW3sgcHJvdmlkZTogVE9PTFRJUF9TRVRUSU5HUywgdXNlVmFsdWU6IG1lcmdlZFNldHRpbmdzIH1dLFxuICAgIH07XG4gIH1cbn1cbiJdfQ==

@@ -24,4 +24,4 @@ import { Observable } from 'rxjs';

export function isTouchDevice() {
return 'ontouchstart' in window || navigator.maxTouchPoints > 0 || navigator.msMaxTouchPoints > 0;
return window.matchMedia('(pointer: coarse)').matches;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnVuY3Rpb25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5nbGlmeS9zcmMvdXRpbHMvZnVuY3Rpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFHbEMsTUFBTSxVQUFVLGlCQUFpQixDQUFDLE1BQVksRUFBRSxNQUF3QztJQUN0RixPQUFPLElBQUksVUFBVSxDQUFDLFFBQVEsQ0FBQyxFQUFFO1FBQy9CLE1BQU0sZ0JBQWdCLEdBQUcsSUFBSSxnQkFBZ0IsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQztRQUNyRixnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQ3pDLE9BQU8sR0FBRyxFQUFFO1lBQ1YsZ0JBQWdCLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDaEMsQ0FBQyxDQUFDO0lBQ0osQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDO0FBRUQsTUFBTSxVQUFVLGVBQWUsQ0FBQyxNQUFlO0lBQzdDLE9BQU8sSUFBSSxVQUFVLENBQUMsUUFBUSxDQUFDLEVBQUU7UUFDL0IsTUFBTSxjQUFjLEdBQUcsSUFBSSxjQUFjLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7UUFDN0UsY0FBYyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUMvQixPQUFPLEdBQUcsRUFBRTtZQUNWLGNBQWMsQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUM5QixDQUFDLENBQUM7SUFDSixDQUFDLENBQUMsQ0FBQztBQUNMLENBQUM7QUFFRCxNQUFNLFVBQVUsaUJBQWlCLENBQUMsS0FBa0I7SUFDbEQsT0FBTyxLQUFLLEtBQUssSUFBSSxJQUFJLEtBQUssS0FBSyxNQUFNLElBQUksS0FBSyxLQUFLLEVBQUUsQ0FBQztBQUM1RCxDQUFDO0FBRUQsTUFBTSxVQUFVLGFBQWE7SUFDM0IsT0FBTyxjQUFjLElBQUksTUFBTSxJQUFJLFNBQVMsQ0FBQyxjQUFjLEdBQUcsQ0FBQyxJQUFJLFNBQVMsQ0FBQyxnQkFBZ0IsR0FBRyxDQUFDLENBQUM7QUFDcEcsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEJvb2xlYW5MaWtlIH0gZnJvbSAnLi9pbnRlcmZhY2VzJztcblxuZXhwb3J0IGZ1bmN0aW9uIG9ic2VydmVPbk11dGF0aW9uKHRhcmdldDogTm9kZSwgY29uZmlnOiBNdXRhdGlvbk9ic2VydmVySW5pdCB8IHVuZGVmaW5lZCk6IE9ic2VydmFibGU8TXV0YXRpb25SZWNvcmRbXT4ge1xuICByZXR1cm4gbmV3IE9ic2VydmFibGUob2JzZXJ2ZXIgPT4ge1xuICAgIGNvbnN0IG11dGF0aW9uT2JzZXJ2ZXIgPSBuZXcgTXV0YXRpb25PYnNlcnZlcihtdXRhdGlvbnMgPT4gb2JzZXJ2ZXIubmV4dChtdXRhdGlvbnMpKTtcbiAgICBtdXRhdGlvbk9ic2VydmVyLm9ic2VydmUodGFyZ2V0LCBjb25maWcpO1xuICAgIHJldHVybiAoKSA9PiB7XG4gICAgICBtdXRhdGlvbk9ic2VydmVyLmRpc2Nvbm5lY3QoKTtcbiAgICB9O1xuICB9KTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIG9ic2VydmVPblJlc2l6ZSh0YXJnZXQ6IEVsZW1lbnQpOiBPYnNlcnZhYmxlPFJlc2l6ZU9ic2VydmVyRW50cnlbXT4ge1xuICByZXR1cm4gbmV3IE9ic2VydmFibGUob2JzZXJ2ZXIgPT4ge1xuICAgIGNvbnN0IHJlc2l6ZU9ic2VydmVyID0gbmV3IFJlc2l6ZU9ic2VydmVyKGVudHJpZXMgPT4gb2JzZXJ2ZXIubmV4dChlbnRyaWVzKSk7XG4gICAgcmVzaXplT2JzZXJ2ZXIub2JzZXJ2ZSh0YXJnZXQpO1xuICAgIHJldHVybiAoKSA9PiB7XG4gICAgICByZXNpemVPYnNlcnZlci5kaXNjb25uZWN0KCk7XG4gICAgfTtcbiAgfSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc0Jvb2xlYW5MaWtlVHJ1ZSh2YWx1ZTogQm9vbGVhbkxpa2UpOiBib29sZWFuIHtcbiAgcmV0dXJuIHZhbHVlID09PSB0cnVlIHx8IHZhbHVlID09PSAndHJ1ZScgfHwgdmFsdWUgPT09ICcnO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNUb3VjaERldmljZSgpOiBib29sZWFuIHtcbiAgcmV0dXJuICdvbnRvdWNoc3RhcnQnIGluIHdpbmRvdyB8fCBuYXZpZ2F0b3IubWF4VG91Y2hQb2ludHMgPiAwIHx8IG5hdmlnYXRvci5tc01heFRvdWNoUG9pbnRzID4gMDtcbn1cbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnVuY3Rpb25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5nbGlmeS9zcmMvdXRpbHMvZnVuY3Rpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFHbEMsTUFBTSxVQUFVLGlCQUFpQixDQUFDLE1BQVksRUFBRSxNQUF3QztJQUN0RixPQUFPLElBQUksVUFBVSxDQUFDLFFBQVEsQ0FBQyxFQUFFO1FBQy9CLE1BQU0sZ0JBQWdCLEdBQUcsSUFBSSxnQkFBZ0IsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQztRQUNyRixnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQ3pDLE9BQU8sR0FBRyxFQUFFO1lBQ1YsZ0JBQWdCLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDaEMsQ0FBQyxDQUFDO0lBQ0osQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDO0FBRUQsTUFBTSxVQUFVLGVBQWUsQ0FBQyxNQUFlO0lBQzdDLE9BQU8sSUFBSSxVQUFVLENBQUMsUUFBUSxDQUFDLEVBQUU7UUFDL0IsTUFBTSxjQUFjLEdBQUcsSUFBSSxjQUFjLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7UUFDN0UsY0FBYyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUMvQixPQUFPLEdBQUcsRUFBRTtZQUNWLGNBQWMsQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUM5QixDQUFDLENBQUM7SUFDSixDQUFDLENBQUMsQ0FBQztBQUNMLENBQUM7QUFFRCxNQUFNLFVBQVUsaUJBQWlCLENBQUMsS0FBa0I7SUFDbEQsT0FBTyxLQUFLLEtBQUssSUFBSSxJQUFJLEtBQUssS0FBSyxNQUFNLElBQUksS0FBSyxLQUFLLEVBQUUsQ0FBQztBQUM1RCxDQUFDO0FBRUQsTUFBTSxVQUFVLGFBQWE7SUFDM0IsT0FBTyxNQUFNLENBQUMsVUFBVSxDQUFDLG1CQUFtQixDQUFDLENBQUMsT0FBTyxDQUFDO0FBQ3hELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBCb29sZWFuTGlrZSB9IGZyb20gJy4vaW50ZXJmYWNlcyc7XG5cbmV4cG9ydCBmdW5jdGlvbiBvYnNlcnZlT25NdXRhdGlvbih0YXJnZXQ6IE5vZGUsIGNvbmZpZzogTXV0YXRpb25PYnNlcnZlckluaXQgfCB1bmRlZmluZWQpOiBPYnNlcnZhYmxlPE11dGF0aW9uUmVjb3JkW10+IHtcbiAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlKG9ic2VydmVyID0+IHtcbiAgICBjb25zdCBtdXRhdGlvbk9ic2VydmVyID0gbmV3IE11dGF0aW9uT2JzZXJ2ZXIobXV0YXRpb25zID0+IG9ic2VydmVyLm5leHQobXV0YXRpb25zKSk7XG4gICAgbXV0YXRpb25PYnNlcnZlci5vYnNlcnZlKHRhcmdldCwgY29uZmlnKTtcbiAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgbXV0YXRpb25PYnNlcnZlci5kaXNjb25uZWN0KCk7XG4gICAgfTtcbiAgfSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBvYnNlcnZlT25SZXNpemUodGFyZ2V0OiBFbGVtZW50KTogT2JzZXJ2YWJsZTxSZXNpemVPYnNlcnZlckVudHJ5W10+IHtcbiAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlKG9ic2VydmVyID0+IHtcbiAgICBjb25zdCByZXNpemVPYnNlcnZlciA9IG5ldyBSZXNpemVPYnNlcnZlcihlbnRyaWVzID0+IG9ic2VydmVyLm5leHQoZW50cmllcykpO1xuICAgIHJlc2l6ZU9ic2VydmVyLm9ic2VydmUodGFyZ2V0KTtcbiAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgcmVzaXplT2JzZXJ2ZXIuZGlzY29ubmVjdCgpO1xuICAgIH07XG4gIH0pO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNCb29sZWFuTGlrZVRydWUodmFsdWU6IEJvb2xlYW5MaWtlKTogYm9vbGVhbiB7XG4gIHJldHVybiB2YWx1ZSA9PT0gdHJ1ZSB8fCB2YWx1ZSA9PT0gJ3RydWUnIHx8IHZhbHVlID09PSAnJztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzVG91Y2hEZXZpY2UoKTogYm9vbGVhbiB7XG4gIHJldHVybiB3aW5kb3cubWF0Y2hNZWRpYSgnKHBvaW50ZXI6IGNvYXJzZSknKS5tYXRjaGVzO1xufVxuIl19
import { InjectionToken } from '@angular/core';
import { TooltipSettings } from './tooltip.interface';
export declare const TOOLTIP_SETTINGS: InjectionToken<TooltipSettings>;
export declare const TOOLTIP_SETTINGS: InjectionToken<Required<TooltipSettings>>;
export declare const DEFAULT_TOOLTIP_SETTINGS: Required<TooltipSettings>;

@@ -1,2 +0,2 @@

import { ChangeDetectorRef, ElementRef, OnDestroy, Renderer2, TemplateRef, ViewContainerRef } from '@angular/core';
import { ApplicationRef, ChangeDetectorRef, ComponentFactoryResolver, ElementRef, Injector, OnDestroy, Renderer2, TemplateRef, Type, ViewContainerRef } from '@angular/core';
import { BooleanLike } from '../../utils/interfaces';

@@ -6,14 +6,16 @@ import { TooltipPosition, TooltipSettings, TooltipTouchTrigger } from './tooltip.interface';

export declare class TooltipDirective implements OnDestroy {
private readonly elementRef;
private readonly element;
private readonly renderer;
private readonly viewContainerRef;
private readonly changeDetectorRef;
private readonly injector;
private readonly resolver;
private readonly applicationRef;
private readonly cdRef;
private readonly settings?;
template?: TemplateRef<any>;
text?: string;
position: TooltipPosition;
contentClass?: string;
tooltipOpenDelay: number;
tooltipCloseDelay: number;
mountingPoint: HTMLElement;
content: string | TemplateRef<any> | Type<any>;
mountingPoint: 'body' | 'parent' | HTMLElement;
hoverOpenDelay: number;
hoverCloseDelay: number;
touchOpenDelay: number;
touchCloseDelay: number;
/** Prevents the context menu from opening when the host is long pressed. */

@@ -23,23 +25,34 @@ preventContextMenuOnTouchDevice: BooleanLike;

tooltipMobileTrigger: TooltipTouchTrigger;
private readonly defaultOffset;
private readonly nativeElement;
private tooltip;
autoCloseOnTouchDevicesAfterDelay: BooleanLike;
/** Distance between the tooltip and the host element */
set offset(value: number);
get offset(): number;
set position(value: TooltipPosition);
get position(): TooltipPosition;
set contentClass(value: string | undefined);
get contentClass(): string | undefined;
private _position;
private _offset;
private _contentClass?;
private componentRef;
private embeddedView;
private readonly _openAction;
private readonly _closeAction;
private readonly _repositionAction;
private readonly _visibleHandler$;
private readonly _repositionHandler$;
constructor(elementRef: ElementRef, renderer: Renderer2, viewContainerRef: ViewContainerRef, changeDetectorRef: ChangeDetectorRef, settings?: TooltipSettings | undefined);
constructor(element: ElementRef, renderer: Renderer2, viewContainerRef: ViewContainerRef, injector: Injector, resolver: ComponentFactoryResolver, applicationRef: ApplicationRef, cdRef: ChangeDetectorRef, settings?: Required<TooltipSettings> | undefined);
ngOnDestroy(): void;
open(delay?: number): void;
close(delay?: number): void;
toggle(delay?: number): void;
private _detach;
private onOpenEventDesktop;
private onCloseEventDesktop;
private onOpenEventMobile;
private onCloseEventMobile;
private autoCloseOnMobile;
onClickOutside(event: MouseEvent, targetElement: HTMLElement): void;
private onCloseEvent;
private create;
private setPosition;
ngOnDestroy(): void;
static ɵfac: i0.ɵɵFactoryDeclaration<TooltipDirective, [null, null, null, null, { optional: true; }]>;
static ɵdir: i0.ɵɵDirectiveDeclaration<TooltipDirective, "[anglifyTooltip]", ["anglifyTooltip"], { "text": "anglifyTooltip"; "position": "position"; "contentClass": "content-class"; "tooltipOpenDelay": "tooltipOpenDelay"; "tooltipCloseDelay": "tooltipCloseDelay"; "mountingPoint": "tooltipMountingPoint"; "preventContextMenuOnTouchDevice": "preventContextMenuOnTouchDevice"; "tooltipMobileTrigger": "tooltipMobileTrigger"; }, {}, ["template"]>;
private generateNgContent;
private changeMountingPoint;
static ɵfac: i0.ɵɵFactoryDeclaration<TooltipDirective, [null, null, null, null, null, null, null, { optional: true; }]>;
static ɵdir: i0.ɵɵDirectiveDeclaration<TooltipDirective, "[anglifyTooltip]", ["anglifyTooltip"], { "content": "anglifyTooltip"; "mountingPoint": "tooltipMountingPoint"; "hoverOpenDelay": "tooltipHoverOpenDelay"; "hoverCloseDelay": "tooltipHoverCloseDelay"; "touchOpenDelay": "tooltipTouchOpenDelay"; "touchCloseDelay": "tooltipTouchCloseDelay"; "preventContextMenuOnTouchDevice": "preventContextMenuOnTouchDevice"; "tooltipMobileTrigger": "tooltipMobileTrigger"; "autoCloseOnTouchDevicesAfterDelay": "autoCloseOnTouchDevicesAfterDelay"; "offset": "offset"; "position": "position"; "contentClass": "contentClass"; }, {}, never>;
}
export declare type TooltipTouchTrigger = 'short' | 'long';
export declare type TooltipPosition = 'TOP' | 'RIGHT' | 'BOTTOM' | 'LEFT';
export declare type TooltipPosition = 'top' | 'right' | 'bottom' | 'left';
export declare type TooltipMountingPoint = HTMLElement | 'body' | 'parent';
export interface TooltipSettings {
position?: TooltipPosition;
openDelay?: number;
closeDelay?: number;
hoverOpenDelay?: number;
touchOpenDelay?: number;
hoverCloseDelay?: number;
touchCloseDelay?: number;
preventContextMenuOnTouchDevice?: boolean;
mobileTrigger?: TooltipTouchTrigger;
defaultOffset?: number;
autoCloseOnTouchDevicesAfterDelay?: boolean;
}

@@ -5,7 +5,9 @@ import { ModuleWithProviders } from '@angular/core';

import * as i1 from "./tooltip.directive";
import * as i2 from "./components/tooltip/tooltip.component";
import * as i3 from "@angular/common";
export declare class TooltipModule {
static forRoot(settings: TooltipSettings): ModuleWithProviders<TooltipModule>;
static ɵfac: i0.ɵɵFactoryDeclaration<TooltipModule, never>;
static ɵmod: i0.ɵɵNgModuleDeclaration<TooltipModule, [typeof i1.TooltipDirective], never, [typeof i1.TooltipDirective]>;
static ɵmod: i0.ɵɵNgModuleDeclaration<TooltipModule, [typeof i1.TooltipDirective, typeof i2.TooltipComponent], [typeof i3.CommonModule], [typeof i1.TooltipDirective]>;
static ɵinj: i0.ɵɵInjectorDeclaration<TooltipModule>;
}
{
"name": "@anglify/components",
"version": "0.9.1",
"version": "0.10.0",
"peerDependencies": {

@@ -5,0 +5,0 @@ "@angular/common": "^12.1.0",

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc