{"version":3,"file":"calf-ngx-tooltip.mjs","sources":["../../../projects/tooltip/src/lib/directives/close.directive.ts","../../../projects/tooltip/src/lib/components/tooltip/tooltip.component.ts","../../../projects/tooltip/src/lib/components/tooltip/tooltip.component.html","../../../projects/tooltip/src/lib/directives/tooltip.directive.ts","../../../projects/tooltip/src/lib/tooltip.module.ts","../../../projects/tooltip/src/public-api.ts","../../../projects/tooltip/src/calf-ngx-tooltip.ts"],"sourcesContent":["// External modules\r\nimport { Directive } from \"@angular/core\";\r\n\r\n@Directive({\r\n    selector: \"[ngxTooltipClose]\"\r\n})\r\nexport class TooltipCloseDirective { }","// External modules\r\nimport { Component, ContentChild, ElementRef, HostBinding, Renderer2 } from \"@angular/core\";\r\n\r\n// Directives\r\nimport { TooltipCloseDirective } from \"../../directives/close.directive\";\r\n\r\n@Component({\r\n    selector: \"ngx-tooltip\",\r\n    templateUrl: \"./tooltip.component.html\",\r\n    styleUrls: [\"./tooltip.component.scss\"]\r\n})\r\nexport class TooltipComponent {\r\n\r\n    @HostBinding(\"class.ngx-tooltip\")\r\n    public hasDefaultClass: boolean = true;\r\n\r\n    // Tooltip close directive\r\n    @ContentChild(TooltipCloseDirective, { read: ElementRef })\r\n    public closeElementRef: ElementRef;\r\n\r\n    // Visibility flag\r\n    private _isVisible: boolean = false;\r\n\r\n    @HostBinding(\"class.ngx-tooltip--visible\")\r\n    public get isVisible(): boolean { return this._isVisible };\r\n\r\n    @HostBinding(\"class.ngx-tooltip--hidden\")\r\n    public get isHidden(): boolean { return !this._isVisible; };\r\n\r\n    // Close listener\r\n    public closeListener: () => void;\r\n\r\n    /**\r\n     * Constructor\r\n     * @param renderer \r\n     */\r\n    constructor(private readonly renderer: Renderer2) { }\r\n\r\n    /**\r\n     * Toggle tooltip\r\n     */\r\n    public async toggle(): Promise<void> {\r\n        // Toggle based on visible flag\r\n        await (this._isVisible ? this.hide() : this.show());\r\n    }\r\n\r\n    /**\r\n     * Show tooltip\r\n     */\r\n    public async show(): Promise<void> {\r\n        // Set as visible\r\n        this._isVisible = true;\r\n\r\n        // Check for close ref\r\n        if (this.closeElementRef) {\r\n            // Attach listener\r\n            this.closeListener = this.renderer.listen(this.closeElementRef.nativeElement, \"click\", (event) => this.hide() as any);\r\n        }\r\n    }\r\n\r\n    /**\r\n     * Hide tooltip\r\n     */\r\n    public async hide(): Promise<void> {\r\n        // Set as invisible\r\n        this._isVisible = false;\r\n\r\n        // Call close listener\r\n        this.closeListener && this.closeListener();\r\n    }\r\n}","<div class=\"ngx-tooltip__backdrop\" (click)=\"hide()\"></div>\r\n<div class=\"ngx-tooltip__content\">\r\n    <ng-content></ng-content>\r\n</div>","// External modules\r\nimport { Directive, HostListener, Input } from \"@angular/core\";\r\n\r\n// Components\r\nimport { TooltipComponent } from \"../components/tooltip/tooltip.component\";\r\n\r\n@Directive({\r\n    selector: \"[ngx-tooltip]\"\r\n})\r\nexport class TooltipDirective {\r\n\r\n    @Input(\"ngx-tooltip\")\r\n    private tooltip: TooltipComponent;\r\n\r\n    @HostListener(\"click\", [\"$event\"])\r\n    public onClick(event: Event): void {\r\n        // Toggle \r\n        this.toggle();\r\n    }\r\n\r\n    /**\r\n     * Toggle tooltip\r\n     */\r\n    public async toggle(): Promise<void> {\r\n        // Check for tooltip\r\n        if (!this.tooltip) {\r\n            // Do nothing\r\n            return;\r\n        }\r\n\r\n        // Toggle tooltip\r\n        await this.tooltip.toggle();\r\n    }\r\n\r\n    /**\r\n     * Show tooltip\r\n     */\r\n    public async show(): Promise<void> {\r\n        // Check for tooltip\r\n        if (!this.tooltip) {\r\n            // Do nothing\r\n            return;\r\n        }\r\n\r\n        // Show tooltip\r\n        await this.tooltip.show();\r\n    }\r\n\r\n    /**\r\n     * Hide tooltip\r\n     */\r\n    public async hide(): Promise<void> {\r\n        // Check for tooltip\r\n        if (!this.tooltip) {\r\n            // Do nothing\r\n            return;\r\n        }\r\n\r\n        // Hide tooltip\r\n        await this.tooltip.hide();\r\n    }\r\n}","// External modules\r\nimport { CommonModule } from \"@angular/common\";\r\nimport { NgModule } from \"@angular/core\";\r\n\r\n// Components\r\nimport { TooltipComponent } from \"./components/tooltip/tooltip.component\";\r\n\r\n// Directives\r\nimport { TooltipDirective } from \"./directives/tooltip.directive\";\r\nimport { TooltipCloseDirective } from \"./directives/close.directive\";\r\n\r\n@NgModule({\r\n\timports: [CommonModule],\r\n\tdeclarations: [\r\n\t\tTooltipDirective,\r\n\t\tTooltipCloseDirective,\r\n\t\tTooltipComponent\r\n\t],\r\n\texports: [\r\n\t\tTooltipDirective,\r\n\t\tTooltipCloseDirective,\r\n\t\tTooltipComponent\r\n\t]\r\n})\r\nexport class TooltipModule { }\r\n","/*\r\n * Public API Surface of tooltip\r\n */\r\n\r\nexport * from \"./lib/tooltip.module\";\r\nexport * from \"./lib/components/tooltip/tooltip.component\";\r\nexport * from \"./lib/directives/tooltip.directive\";\r\nexport * from \"./lib/directives/close.directive\";\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}