UNPKG

@angular-mdl/core

Version:

Angular components, directives and styles based on material design lite https://getmdl.io.

119 lines 14.4 kB
import { Component, ElementRef, HostBinding, Input, Renderer2, ViewEncapsulation, } from "@angular/core"; import { MdlTooltipPositionService } from "./mdl-tooltip-position.service"; import * as i0 from "@angular/core"; import * as i1 from "./mdl-tooltip-position.service"; const IS_ACTIVE = "is-active"; export class MdlSimpleTooltipComponent { constructor(elRef, renderer, mdlTooltipPositionService) { this.elRef = elRef; this.renderer = renderer; this.mdlTooltipPositionService = mdlTooltipPositionService; this.large = false; this.position = "top"; this.isTooltip = true; this.tooltipText = ""; this.active = false; this.element = elRef.nativeElement; } get isBottom() { return this.position === "bottom"; } get isRight() { return this.position === "right"; } get isLeft() { return this.position === "left"; } isTop() { return this.position === "top"; } mouseLeave() { if (this.delayTimeout) { clearTimeout(this.delayTimeout); } this.setActive(false); } mouseEnter(event) { if (this.delay) { this.delayTimeout = setTimeout(() => { this.show(event.target); }, this.delay); } else { this.show(event.target); } } isActive() { return this.active; } show(element) { const props = element.getBoundingClientRect(); const offsetWidth = this.element.offsetWidth; const offsetHeight = this.element.offsetHeight; const style = this.mdlTooltipPositionService.calcStyle(offsetWidth, offsetHeight, props, this.position); for (const key of Object.keys(style)) { this.renderer.setStyle(this.elRef.nativeElement, key, style[key]); } this.setActive(true); } setActive(active) { this.active = active; if (active) { this.renderer.addClass(this.elRef.nativeElement, IS_ACTIVE); } else { this.renderer.removeClass(this.elRef.nativeElement, IS_ACTIVE); } } } MdlSimpleTooltipComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: MdlSimpleTooltipComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i1.MdlTooltipPositionService }], target: i0.ɵɵFactoryTarget.Component }); MdlSimpleTooltipComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: MdlSimpleTooltipComponent, selector: "mdl-simple-tooltip", inputs: { position: "position", delay: "delay" }, host: { properties: { "class.mdl-tooltip--large": "this.large", "class.mdl-tooltip": "this.isTooltip", "class.mdl-tooltip--bottom": "this.isBottom", "class.mdl-tooltip--right": "this.isRight", "class.mdl-tooltip--left": "this.isLeft", "class.mdl-tooltip--top": "this.isTop" } }, providers: [MdlTooltipPositionService], ngImport: i0, template: "<div>{{tooltipText}}</div>", isInline: true, encapsulation: i0.ViewEncapsulation.None }); i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: MdlSimpleTooltipComponent, decorators: [{ type: Component, args: [{ selector: "mdl-simple-tooltip", template: "<div>{{tooltipText}}</div>", providers: [MdlTooltipPositionService], encapsulation: ViewEncapsulation.None, }] }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i1.MdlTooltipPositionService }]; }, propDecorators: { large: [{ type: HostBinding, args: ["class.mdl-tooltip--large"] }], position: [{ type: Input }], delay: [{ type: Input }], isTooltip: [{ type: HostBinding, args: ["class.mdl-tooltip"] }], isBottom: [{ type: HostBinding, args: ["class.mdl-tooltip--bottom"] }], isRight: [{ type: HostBinding, args: ["class.mdl-tooltip--right"] }], isLeft: [{ type: HostBinding, args: ["class.mdl-tooltip--left"] }], isTop: [{ type: HostBinding, args: ["class.mdl-tooltip--top"] }] } }); export class MdlTooltipComponent extends MdlSimpleTooltipComponent { constructor(elRef, renderer, mdlTooltipPositionService) { super(elRef, renderer, mdlTooltipPositionService); } } MdlTooltipComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: MdlTooltipComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i1.MdlTooltipPositionService }], target: i0.ɵɵFactoryTarget.Component }); MdlTooltipComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: MdlTooltipComponent, selector: "mdl-tooltip", providers: [MdlTooltipPositionService], exportAs: ["mdlTooltip"], usesInheritance: true, ngImport: i0, template: "<div><ng-content></ng-content></div>", isInline: true, encapsulation: i0.ViewEncapsulation.None }); i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: MdlTooltipComponent, decorators: [{ type: Component, args: [{ selector: "mdl-tooltip", template: "<div><ng-content></ng-content></div>", exportAs: "mdlTooltip", providers: [MdlTooltipPositionService], encapsulation: ViewEncapsulation.None, }] }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i1.MdlTooltipPositionService }]; } }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWRsLXRvb2x0aXAuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9zcmMvbGliL3Rvb2x0aXAvbWRsLXRvb2x0aXAuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsVUFBVSxFQUNWLFdBQVcsRUFDWCxLQUFLLEVBQ0wsU0FBUyxFQUNULGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQzs7O0FBRTNFLE1BQU0sU0FBUyxHQUFHLFdBQVcsQ0FBQztBQVE5QixNQUFNLE9BQU8seUJBQXlCO0lBbUJwQyxZQUNVLEtBQWlCLEVBQ2pCLFFBQW1CLEVBQ25CLHlCQUFvRDtRQUZwRCxVQUFLLEdBQUwsS0FBSyxDQUFZO1FBQ2pCLGFBQVEsR0FBUixRQUFRLENBQVc7UUFDbkIsOEJBQXlCLEdBQXpCLHlCQUF5QixDQUEyQjtRQXBCOUQsVUFBSyxHQUFHLEtBQUssQ0FBQztRQUdkLGFBQVEsR0FBd0MsS0FBSyxDQUFDO1FBTXRELGNBQVMsR0FBRyxJQUFJLENBQUM7UUFFakIsZ0JBQVcsR0FBdUIsRUFBRSxDQUFDO1FBR3JDLFdBQU0sR0FBRyxLQUFLLENBQUM7UUFRYixJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQyxhQUFhLENBQUM7SUFDckMsQ0FBQztJQUVELElBQThDLFFBQVE7UUFDcEQsT0FBTyxJQUFJLENBQUMsUUFBUSxLQUFLLFFBQVEsQ0FBQztJQUNwQyxDQUFDO0lBRUQsSUFBNkMsT0FBTztRQUNsRCxPQUFPLElBQUksQ0FBQyxRQUFRLEtBQUssT0FBTyxDQUFDO0lBQ25DLENBQUM7SUFFRCxJQUE0QyxNQUFNO1FBQ2hELE9BQU8sSUFBSSxDQUFDLFFBQVEsS0FBSyxNQUFNLENBQUM7SUFDbEMsQ0FBQztJQUVzQyxLQUFLO1FB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QUNFLEtBQWlCLEVBQ2pCLFFBQW1CLEVBQ25CLHlCQUFvRDtRQUVwRCxLQUFLLENBQUMsS0FBSyxFQUFFLFFBQVEsRUFBRSx5QkFBeUIsQ0FBQyxDQUFDO0lBQ3BELENBQUM7O2dIQVBVLG1CQUFtQjtvR0FBbkIsbUJBQW1CLHNDQUhuQixDQUFDLHlCQUF5QixDQUFDLDJFQUY1QixzQ0FBc0M7MkZBS3JDLG1CQUFtQjtrQkFQL0IsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsYUFBYTtvQkFDdkIsUUFBUSxFQUFFLHNDQUFzQztvQkFDaEQsUUFBUSxFQUFFLFlBQVk7b0JBQ3RCLFNBQVMsRUFBRSxDQUFDLHlCQUF5QixDQUFDO29CQUN0QyxhQUFhLEVBQUUsaUJBQWlCLENBQUMsSUFBSTtpQkFDdEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIEhvc3RCaW5kaW5nLFxuICBJbnB1dCxcbiAgUmVuZGVyZXIyLFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IE1kbFRvb2x0aXBQb3NpdGlvblNlcnZpY2UgfSBmcm9tIFwiLi9tZGwtdG9vbHRpcC1wb3NpdGlvbi5zZXJ2aWNlXCI7XG5cbmNvbnN0IElTX0FDVElWRSA9IFwiaXMtYWN0aXZlXCI7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogXCJtZGwtc2ltcGxlLXRvb2x0aXBcIixcbiAgdGVtcGxhdGU6IFwiPGRpdj57e3Rvb2x0aXBUZXh0fX08L2Rpdj5cIixcbiAgcHJvdmlkZXJzOiBbTWRsVG9vbHRpcFBvc2l0aW9uU2VydmljZV0sXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG59KVxuZXhwb3J0IGNsYXNzIE1kbFNpbXBsZVRvb2x0aXBDb21wb25lbnQge1xuICBASG9zdEJpbmRpbmcoXCJjbGFzcy5tZGwtdG9vbHRpcC0tbGFyZ2VcIilcbiAgbGFyZ2UgPSBmYWxzZTtcblxuICBASW5wdXQoKVxuICBwb3NpdGlvbjogXCJsZWZ0XCIgfCBcInJpZ2h0XCIgfCBcInRvcFwiIHwgXCJib3R0b21cIiA9IFwidG9wXCI7XG5cbiAgQElucHV0KClcbiAgZGVsYXk6IG51bWJlciB8IHVuZGVmaW5lZDtcblxuICBASG9zdEJpbmRpbmcoXCJjbGFzcy5tZGwtdG9vbHRpcFwiKVxuICBpc1Rvb2x0aXAgPSB0cnVlO1xuXG4gIHRvb2x0aXBUZXh0OiBzdHJpbmcgfCB1bmRlZmluZWQgPSBcIlwiO1xuICBlbGVtZW50OiBIVE1MRWxlbWVudDtcblxuICBhY3RpdmUgPSBmYWxzZTtcbiAgZGVsYXlUaW1lb3V0OiB1bmtub3duO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgZWxSZWY6IEVsZW1lbnRSZWYsXG4gICAgcHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyLFxuICAgIHByaXZhdGUgbWRsVG9vbHRpcFBvc2l0aW9uU2VydmljZTogTWRsVG9vbHRpcFBvc2l0aW9uU2VydmljZVxuICApIHtcbiAgICB0aGlzLmVsZW1lbnQgPSBlbFJlZi5uYXRpdmVFbGVtZW50O1xuICB9XG5cbiAgQEhvc3RCaW5kaW5nKFwiY2xhc3MubWRsLXRvb2x0aXAtLWJvdHRvbVwiKSBnZXQgaXNCb3R0b20oKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMucG9zaXRpb24gPT09IFwiYm90dG9tXCI7XG4gIH1cblxuICBASG9zdEJpbmRpbmcoXCJjbGFzcy5tZGwtdG9vbHRpcC0tcmlnaHRcIikgZ2V0IGlzUmlnaHQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMucG9zaXRpb24gPT09IFwicmlnaHRcIjtcbiAgfVxuXG4gIEBIb3N0QmluZGluZyhcImNsYXNzLm1kbC10b29sdGlwLS1sZWZ0XCIpIGdldCBpc0xlZnQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMucG9zaXRpb24gPT09IFwibGVmdFwiO1xuICB9XG5cbiAgQEhvc3RCaW5kaW5nKFwiY2xhc3MubWRsLXRvb2x0aXAtLXRvcFwiKSBpc1RvcCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5wb3NpdGlvbiA9PT0gXCJ0b3BcIjtcbiAgfVxuXG4gIG1vdXNlTGVhdmUoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuZGVsYXlUaW1lb3V0KSB7XG4gICAgICBjbGVhclRpbWVvdXQodGhpcy5kZWxheVRpbWVvdXQgYXMgbnVtYmVyKTtcbiAgICB9XG4gICAgdGhpcy5zZXRBY3RpdmUoZmFsc2UpO1xuICB9XG5cbiAgbW91c2VFbnRlcihldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5kZWxheSkge1xuICAgICAgdGhpcy5kZWxheVRpbWVvdXQgPSBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgdGhpcy5zaG93KGV2ZW50LnRhcmdldCBhcyBIVE1MRWxlbWVudCk7XG4gICAgICB9LCB0aGlzLmRlbGF5KTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5zaG93KGV2ZW50LnRhcmdldCBhcyBIVE1MRWxlbWVudCk7XG4gICAgfVxuICB9XG5cbiAgaXNBY3RpdmUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuYWN0aXZlO1xuICB9XG5cbiAgcHJpdmF0ZSBzaG93KGVsZW1lbnQ6IEhUTUxFbGVtZW50KSB7XG4gICAgY29uc3QgcHJvcHMgPSBlbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuICAgIGNvbnN0IG9mZnNldFdpZHRoID0gdGhpcy5lbGVtZW50Lm9mZnNldFdpZHRoO1xuICAgIGNvbnN0IG9mZnNldEhlaWdodCA9IHRoaXMuZWxlbWVudC5vZmZzZXRIZWlnaHQ7XG5cbiAgICBjb25zdCBzdHlsZSA9IHRoaXMubWRsVG9vbHRpcFBvc2l0aW9uU2VydmljZS5jYWxjU3R5bGUoXG4gICAgICBvZmZzZXRXaWR0aCxcbiAgICAgIG9mZnNldEhlaWdodCxcbiAgICAgIHByb3BzLFxuICAgICAgdGhpcy5wb3NpdGlvblxuICAgICk7XG5cbiAgICBmb3IgKGNvbnN0IGtleSBvZiBPYmplY3Qua2V5cyhzdHlsZSkpIHtcbiAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5lbFJlZi5uYXRpdmVFbGVtZW50LCBrZXksIHN0eWxlW2tleV0pO1xuICAgIH1cblxuICAgIHRoaXMuc2V0QWN0aXZlKHRydWUpO1xuICB9XG5cbiAgcHJpdmF0ZSBzZXRBY3RpdmUoYWN0aXZlOiBib29sZWFuKSB7XG4gICAgdGhpcy5hY3RpdmUgPSBhY3RpdmU7XG4gICAgaWYgKGFjdGl2ZSkge1xuICAgICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyh0aGlzLmVsUmVmLm5hdGl2ZUVsZW1lbnQsIElTX0FDVElWRSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMucmVuZGVyZXIucmVtb3ZlQ2xhc3ModGhpcy5lbFJlZi5uYXRpdmVFbGVtZW50LCBJU19BQ1RJVkUpO1xuICAgIH1cbiAgfVxufVxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6IFwibWRsLXRvb2x0aXBcIixcbiAgdGVtcGxhdGU6IFwiPGRpdj48bmctY29udGVudD48L25nLWNvbnRlbnQ+PC9kaXY+XCIsXG4gIGV4cG9ydEFzOiBcIm1kbFRvb2x0aXBcIixcbiAgcHJvdmlkZXJzOiBbTWRsVG9vbHRpcFBvc2l0aW9uU2VydmljZV0sXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG59KVxuZXhwb3J0IGNsYXNzIE1kbFRvb2x0aXBDb21wb25lbnQgZXh0ZW5kcyBNZGxTaW1wbGVUb29sdGlwQ29tcG9uZW50IHtcbiAgY29uc3RydWN0b3IoXG4gICAgZWxSZWY6IEVsZW1lbnRSZWYsXG4gICAgcmVuZGVyZXI6IFJlbmRlcmVyMixcbiAgICBtZGxUb29sdGlwUG9zaXRpb25TZXJ2aWNlOiBNZGxUb29sdGlwUG9zaXRpb25TZXJ2aWNlXG4gICkge1xuICAgIHN1cGVyKGVsUmVmLCByZW5kZXJlciwgbWRsVG9vbHRpcFBvc2l0aW9uU2VydmljZSk7XG4gIH1cbn1cbiJdfQ==