UNPKG

@engie-group/fluid-design-system-angular

Version:

Fluid Design System Angular

88 lines 11.6 kB
import { CommonModule } from '@angular/common'; import { ChangeDetectionStrategy, Component, Input } from '@angular/core'; import { tooltipAnimation } from './tooltip.animations'; import * as i0 from "@angular/core"; import * as i1 from "@angular/common"; export class TooltipComponent { constructor() { /** * @ignore */ this.tooltipClassName = 'nj-tooltip'; /** * Whether tooltip has arrow or no */ this.hasArrow = true; /** * Tooltip placement */ this.placement = 'top'; /** * Tooltip arrow placement */ this.arrowPlacement = 'center'; /** * Whether tooltip management is standalone */ this.isStandalone = true; /** * Whether tooltip is animated */ this.isAnimated = true; } /** * @ignore */ getPlacementClass() { if (!this.placement) { return ''; } return `${this.tooltipClassName}--${this.placement}`; } /** * @ignore */ getTooltipArrowPlacement() { if (!this.arrowPlacement) { return ''; } return `${this.tooltipClassName}__arrow--${this.arrowPlacement}`; } /** * @ignore */ getIsInverseClass() { return this.isInverse ? `${this.tooltipClassName}--inverse` : ''; } /** * @ignore */ getIsStandaloneClass() { return this.isStandalone ? `${this.tooltipClassName}--standalone` : ''; } static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TooltipComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); } static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TooltipComponent, isStandalone: true, selector: "nj-tooltip", inputs: { isInverse: "isInverse", hasArrow: "hasArrow", label: "label", tooltipId: "tooltipId", placement: "placement", arrowPlacement: "arrowPlacement", isStandalone: "isStandalone", isAnimated: "isAnimated", contentTemplateRef: "contentTemplateRef" }, ngImport: i0, template: "<div class=\"nj-tooltip show\" [ngClass]=\"[getIsInverseClass(), getPlacementClass(), getIsStandaloneClass()]\" [attr.id]=\"tooltipId\" @tooltip [@.disabled]=\"!isAnimated\">\n <div class=\"nj-tooltip__arrow\" *ngIf=\"hasArrow\" [ngClass]=\"[getTooltipArrowPlacement()]\"></div>\n <div class=\"nj-tooltip__inner\">\n <ng-container *ngTemplateOutlet=\"label ? labelTemplate : contentTemplate\"></ng-container>\n </div>\n</div>\n\n<ng-template #labelTemplate>\n {{label}}\n</ng-template>\n\n<ng-template #defaultContentTemplate>\n <ng-content></ng-content>\n</ng-template>\n\n<ng-template #contentTemplate>\n <ng-container *ngTemplateOutlet=\"contentTemplateRef ? contentTemplateRef : defaultContentTemplate\"></ng-container>\n</ng-template>\n", styles: [":host{display:inline-flex;padding:var(--nj-semantic-size-spacing-8)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], animations: [tooltipAnimation.tooltip], changeDetection: i0.ChangeDetectionStrategy.OnPush }); } } i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TooltipComponent, decorators: [{ type: Component, args: [{ selector: 'nj-tooltip', changeDetection: ChangeDetectionStrategy.OnPush, animations: [tooltipAnimation.tooltip], standalone: true, imports: [CommonModule], template: "<div class=\"nj-tooltip show\" [ngClass]=\"[getIsInverseClass(), getPlacementClass(), getIsStandaloneClass()]\" [attr.id]=\"tooltipId\" @tooltip [@.disabled]=\"!isAnimated\">\n <div class=\"nj-tooltip__arrow\" *ngIf=\"hasArrow\" [ngClass]=\"[getTooltipArrowPlacement()]\"></div>\n <div class=\"nj-tooltip__inner\">\n <ng-container *ngTemplateOutlet=\"label ? labelTemplate : contentTemplate\"></ng-container>\n </div>\n</div>\n\n<ng-template #labelTemplate>\n {{label}}\n</ng-template>\n\n<ng-template #defaultContentTemplate>\n <ng-content></ng-content>\n</ng-template>\n\n<ng-template #contentTemplate>\n <ng-container *ngTemplateOutlet=\"contentTemplateRef ? contentTemplateRef : defaultContentTemplate\"></ng-container>\n</ng-template>\n", styles: [":host{display:inline-flex;padding:var(--nj-semantic-size-spacing-8)}\n"] }] }], ctorParameters: function () { return []; }, propDecorators: { isInverse: [{ type: Input }], hasArrow: [{ type: Input }], label: [{ type: Input }], tooltipId: [{ type: Input }], placement: [{ type: Input }], arrowPlacement: [{ type: Input }], isStandalone: [{ type: Input }], isAnimated: [{ type: Input }], contentTemplateRef: [{ type: Input }] } }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy90b29sdGlwL3Rvb2x0aXAuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvdG9vbHRpcC90b29sdGlwLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBQUMsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBYyxNQUFNLGVBQWUsQ0FBQztBQUNyRixPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQzs7O0FBWXRELE1BQU0sT0FBTyxnQkFBZ0I7SUFxRDNCO1FBbkRBOztXQUVHO1FBQ2MscUJBQWdCLEdBQUcsWUFBWSxDQUFDO1FBT2pEOztXQUVHO1FBQ00sYUFBUSxHQUFHLElBQUksQ0FBQztRQWF6Qjs7V0FFRztRQUNNLGNBQVMsR0FBcUIsS0FBSyxDQUFDO1FBRTdDOztXQUVHO1FBQ00sbUJBQWMsR0FBMEIsUUFBUSxDQUFDO1FBRTFEOztXQUVHO1FBQ00saUJBQVksR0FBWSxJQUFJLENBQUM7UUFFdEM7O1dBRUc7UUFDTSxlQUFVLEdBQUcsSUFBSSxDQUFDO0lBUTNCLENBQUM7SUFFRDs7T0FFRztJQUNILGlCQUFpQjtRQUNmLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFO1lBQ25CLE9BQU8sRUFBRSxDQUFDO1NBQ1g7UUFDRCxPQUFPLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixLQUFLLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUN2RCxDQUFDO0lBR0Q7O09BRUc7SUFDSCx3QkFBd0I7UUFDdEIsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLEVBQUU7WUFDeEIsT0FBTyxFQUFFLENBQUM7U0FDWDtRQUNELE9BQU8sR0FBRyxJQUFJLENBQUMsZ0JBQWdCLFlBQVksSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQ25FLENBQUM7SUFFRDs7T0FFRztJQUNILGlCQUFpQjtRQUNmLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLFdBQVcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO0lBQ25FLENBQUM7SUFFRDs7T0FFRztJQUNILG9CQUFvQjtRQUNsQixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixjQUFjLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUN6RSxDQUFDOytHQXpGVSxnQkFBZ0I7bUdBQWhCLGdCQUFnQixvVUNkN0IsZ3ZCQWtCQSwrSEROWSxZQUFZLDBYQUZWLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxDQUFDOzs0RkFJM0IsZ0JBQWdCO2tCQVQ1QixTQUFTOytCQUNFLFlBQVksbUJBR0wsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxDQUFDLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxjQUMxQixJQUFJLFdBQ1AsQ0FBQyxZQUFZLENBQUM7MEVBWWQsU0FBUztzQkFBakIsS0FBSztnQkFLRyxRQUFRO3NCQUFoQixLQUFLO2dCQU1HLEtBQUs7c0JBQWIsS0FBSztnQkFLRyxTQUFTO3NCQUFqQixLQUFLO2dCQUtHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBS0csY0FBYztzQkFBdEIsS0FBSztnQkFLRyxZQUFZO3NCQUFwQixLQUFLO2dCQUtHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBS0csa0JBQWtCO3NCQUExQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21tb25Nb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge0NoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIElucHV0LCBUZW1wbGF0ZVJlZn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge3Rvb2x0aXBBbmltYXRpb259IGZyb20gJy4vdG9vbHRpcC5hbmltYXRpb25zJztcbmltcG9ydCB7VG9vbHRpcEFycm93UGxhY2VtZW50LCBUb29sdGlwUGxhY2VtZW50fSBmcm9tICcuL3Rvb2x0aXAubW9kZWwnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICduai10b29sdGlwJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3Rvb2x0aXAuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi90b29sdGlwLmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBhbmltYXRpb25zOiBbdG9vbHRpcEFuaW1hdGlvbi50b29sdGlwXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZV1cbn0pXG5leHBvcnQgY2xhc3MgVG9vbHRpcENvbXBvbmVudCB7XG5cbiAgLyoqXG4gICAqIEBpZ25vcmVcbiAgICovXG4gIHByaXZhdGUgcmVhZG9ubHkgdG9vbHRpcENsYXNzTmFtZSA9ICduai10b29sdGlwJztcblxuICAvKipcbiAgICogV2hldGhlciB0b29sdGlwIGlzIGludmVyc2Ugb3Igbm9cbiAgICovXG4gIEBJbnB1dCgpIGlzSW52ZXJzZTogYm9vbGVhbjtcblxuICAvKipcbiAgICogV2hldGhlciB0b29sdGlwIGhhcyBhcnJvdyBvciBub1xuICAgKi9cbiAgQElucHV0KCkgaGFzQXJyb3cgPSB0cnVlO1xuXG4gIC8qKlxuICAgKiBUb29sdGlwIGxhYmVsLCBpZiB5b3Ugd2FudCBjdXN0b20gY29udGVudCB1bnNldCB0aGUgbGFiZWwgYW5kIHBsYWNlIGNvbnRlbnQgYXMgZWxlbWVudCBjaGlsZHJlblxuICAgKiBlLmc6IGA8bmotdG9vbHRpcD5Zb3VyIENvbnRlbnQ8L25qLXRvb2x0aXA+YFxuICAgKi9cbiAgQElucHV0KCkgbGFiZWw6IHN0cmluZztcblxuICAvKipcbiAgICogVG9vbHRpcCBpZFxuICAgKi9cbiAgQElucHV0KCkgdG9vbHRpcElkOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRvb2x0aXAgcGxhY2VtZW50XG4gICAqL1xuICBASW5wdXQoKSBwbGFjZW1lbnQ6IFRvb2x0aXBQbGFjZW1lbnQgPSAndG9wJztcblxuICAvKipcbiAgICogVG9vbHRpcCBhcnJvdyBwbGFjZW1lbnRcbiAgICovXG4gIEBJbnB1dCgpIGFycm93UGxhY2VtZW50OiBUb29sdGlwQXJyb3dQbGFjZW1lbnQgPSAnY2VudGVyJztcblxuICAvKipcbiAgICogV2hldGhlciB0b29sdGlwIG1hbmFnZW1lbnQgaXMgc3RhbmRhbG9uZVxuICAgKi9cbiAgQElucHV0KCkgaXNTdGFuZGFsb25lOiBib29sZWFuID0gdHJ1ZTtcblxuICAvKipcbiAgICogV2hldGhlciB0b29sdGlwIGlzIGFuaW1hdGVkXG4gICAqL1xuICBASW5wdXQoKSBpc0FuaW1hdGVkID0gdHJ1ZTtcblxuICAvKipcbiAgICogVG9vbHRpcCBjdXN0b20gdGVtcGxhdGUgcmVmXG4gICAqL1xuICBASW5wdXQoKSBjb250ZW50VGVtcGxhdGVSZWY6IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gIH1cblxuICAvKipcbiAgICogQGlnbm9yZVxuICAgKi9cbiAgZ2V0UGxhY2VtZW50Q2xhc3MoKTogc3RyaW5nIHtcbiAgICBpZiAoIXRoaXMucGxhY2VtZW50KSB7XG4gICAgICByZXR1cm4gJyc7XG4gICAgfVxuICAgIHJldHVybiBgJHt0aGlzLnRvb2x0aXBDbGFzc05hbWV9LS0ke3RoaXMucGxhY2VtZW50fWA7XG4gIH1cblxuXG4gIC8qKlxuICAgKiBAaWdub3JlXG4gICAqL1xuICBnZXRUb29sdGlwQXJyb3dQbGFjZW1lbnQoKTogc3RyaW5nIHtcbiAgICBpZiAoIXRoaXMuYXJyb3dQbGFjZW1lbnQpIHtcbiAgICAgIHJldHVybiAnJztcbiAgICB9XG4gICAgcmV0dXJuIGAke3RoaXMudG9vbHRpcENsYXNzTmFtZX1fX2Fycm93LS0ke3RoaXMuYXJyb3dQbGFjZW1lbnR9YDtcbiAgfVxuXG4gIC8qKlxuICAgKiBAaWdub3JlXG4gICAqL1xuICBnZXRJc0ludmVyc2VDbGFzcygpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmlzSW52ZXJzZSA/IGAke3RoaXMudG9vbHRpcENsYXNzTmFtZX0tLWludmVyc2VgIDogJyc7XG4gIH1cblxuICAvKipcbiAgICogQGlnbm9yZVxuICAgKi9cbiAgZ2V0SXNTdGFuZGFsb25lQ2xhc3MoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5pc1N0YW5kYWxvbmUgPyBgJHt0aGlzLnRvb2x0aXBDbGFzc05hbWV9LS1zdGFuZGFsb25lYCA6ICcnO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwibmotdG9vbHRpcCBzaG93XCIgW25nQ2xhc3NdPVwiW2dldElzSW52ZXJzZUNsYXNzKCksIGdldFBsYWNlbWVudENsYXNzKCksIGdldElzU3RhbmRhbG9uZUNsYXNzKCldXCIgW2F0dHIuaWRdPVwidG9vbHRpcElkXCIgQHRvb2x0aXAgW0AuZGlzYWJsZWRdPVwiIWlzQW5pbWF0ZWRcIj5cbiAgPGRpdiBjbGFzcz1cIm5qLXRvb2x0aXBfX2Fycm93XCIgKm5nSWY9XCJoYXNBcnJvd1wiIFtuZ0NsYXNzXT1cIltnZXRUb29sdGlwQXJyb3dQbGFjZW1lbnQoKV1cIj48L2Rpdj5cbiAgPGRpdiBjbGFzcz1cIm5qLXRvb2x0aXBfX2lubmVyXCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImxhYmVsID8gbGFiZWxUZW1wbGF0ZSA6IGNvbnRlbnRUZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxuICA8L2Rpdj5cbjwvZGl2PlxuXG48bmctdGVtcGxhdGUgI2xhYmVsVGVtcGxhdGU+XG4gIHt7bGFiZWx9fVxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNkZWZhdWx0Q29udGVudFRlbXBsYXRlPlxuICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI2NvbnRlbnRUZW1wbGF0ZT5cbiAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImNvbnRlbnRUZW1wbGF0ZVJlZiA/IGNvbnRlbnRUZW1wbGF0ZVJlZiA6IGRlZmF1bHRDb250ZW50VGVtcGxhdGVcIj48L25nLWNvbnRhaW5lcj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=