theme-lib
Version:
This is a simple example Angular Library published to npm.
91 lines • 7.41 kB
JavaScript
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
/*
* @license
* Copyright Akveo. All Rights Reserved.
* Licensed under the MIT License. See License.txt in the project root for license information.
*/
import { Component, HostBinding, Input } from '@angular/core';
import { NbPosition } from '../cdk';
import { animate, state, style, transition, trigger } from '@angular/animations';
/*
* Tooltip container.
* Renders provided tooltip inside.
*
* @styles
*
* tooltip-bg
* tooltip-primary-bg
* tooltip-info-bg
* tooltip-success-bg
* tooltip-warning-bg
* tooltip-danger-bg
* tooltip-fg
* tooltip-shadow
* tooltip-font-size
*
*/
export class NbTooltipComponent {
constructor() {
/*
* Popover position relatively host element.
* */
this.position = NbPosition.TOP;
this.context = {};
}
/**
* @return {?}
*/
get binding() {
return `${this.position} ${this.context.status}-tooltip`;
}
/**
* @return {?}
*/
get show() {
return true;
}
}
NbTooltipComponent.decorators = [
{ type: Component, args: [{
selector: 'nb-tooltip',
template: `
<span class="arrow"></span>
<div class="content">
<i *ngIf="context?.icon" class="icon {{ context?.icon }}"></i>
<span *ngIf="content">{{ content }}</span>
</div>
`,
animations: [
trigger('showTooltip', [
state('in', style({ opacity: 1 })),
transition('void => *', [
style({ opacity: 0 }),
animate(100),
]),
transition('* => void', [
animate(100, style({ opacity: 0 })),
]),
]),
],
styles: [":host{z-index:10000;border-radius:5px}:host .content{padding:.5rem 1.25rem;display:flex}:host.right .content{flex-direction:row-reverse}:host .arrow{position:absolute;width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent}:host .icon{font-size:1.25rem}:host span{line-height:1.25rem}:host .icon+span{margin-left:.5rem}:host.right .icon+span{margin-right:.5rem}:host.bottom .arrow{top:-5px;left:calc(50% - 5px)}:host.left .arrow{right:-7px;top:calc(50% - 2px);-webkit-transform:rotate(90deg);transform:rotate(90deg)}:host.top .arrow{bottom:-5px;left:calc(50% - 5px);-webkit-transform:rotate(180deg);transform:rotate(180deg)}:host.right .arrow{left:-7px;top:calc(50% - 2px);-webkit-transform:rotate(270deg);transform:rotate(270deg)}"]
}] }
];
NbTooltipComponent.propDecorators = {
content: [{ type: Input }],
position: [{ type: Input }],
binding: [{ type: HostBinding, args: ['class',] }],
show: [{ type: HostBinding, args: ['@showTooltip',] }],
context: [{ type: Input }]
};
if (false) {
/** @type {?} */
NbTooltipComponent.prototype.content;
/** @type {?} */
NbTooltipComponent.prototype.position;
/** @type {?} */
NbTooltipComponent.prototype.context;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly90aGVtZS1saWIvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy90b29sdGlwL3Rvb2x0aXAuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQU1BLE9BQU8sRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUU5RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBQ3BDLE9BQU8sRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLE1BQU0scUJBQXFCLENBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQTJDakYsTUFBTSxPQUFPLGtCQUFrQjtJQXZCL0I7Ozs7UUFnQ0UsYUFBUSxHQUFlLFVBQVUsQ0FBQyxHQUFHLENBQUM7UUFhdEMsWUFBTyxHQUF1QyxFQUFFLENBQUM7SUFDbkQsQ0FBQzs7OztJQVpDLElBQ0ksT0FBTztRQUNULE9BQU8sR0FBRyxJQUFJLENBQUMsUUFBUSxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxVQUFVLENBQUM7SUFDM0QsQ0FBQzs7OztJQUVELElBQ0ksSUFBSTtRQUNOLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQzs7O1lBMUNGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsWUFBWTtnQkFFdEIsUUFBUSxFQUFFOzs7Ozs7R0FNVDtnQkFDRCxVQUFVLEVBQUU7b0JBQ1YsT0FBTyxDQUFDLGFBQWEsRUFBRTt3QkFDckIsS0FBSyxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsRUFBRSxPQUFPLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQzt3QkFDbEMsVUFBVSxDQUFDLFdBQVcsRUFBRTs0QkFDdEIsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxDQUFDOzRCQUNyQixPQUFPLENBQUMsR0FBRyxDQUFDO3lCQUNiLENBQUM7d0JBQ0YsVUFBVSxDQUFDLFdBQVcsRUFBRTs0QkFDdEIsT0FBTyxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsRUFBRSxPQUFPLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQzt5QkFDcEMsQ0FBQztxQkFDSCxDQUFDO2lCQUNIOzthQUNGOzs7c0JBR0UsS0FBSzt1QkFNTCxLQUFLO3NCQUdMLFdBQVcsU0FBQyxPQUFPO21CQUtuQixXQUFXLFNBQUMsY0FBYztzQkFLMUIsS0FBSzs7OztJQW5CTixxQ0FDZ0I7O0lBS2hCLHNDQUNzQzs7SUFZdEMscUNBQ2lEIiwic291cmNlc0NvbnRlbnQiOlsiLypcclxuICogQGxpY2Vuc2VcclxuICogQ29weXJpZ2h0IEFrdmVvLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxyXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UuIFNlZSBMaWNlbnNlLnR4dCBpbiB0aGUgcHJvamVjdCByb290IGZvciBsaWNlbnNlIGluZm9ybWF0aW9uLlxyXG4gKi9cclxuXHJcbmltcG9ydCB7IENvbXBvbmVudCwgSG9zdEJpbmRpbmcsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5pbXBvcnQgeyBOYlBvc2l0aW9uIH0gZnJvbSAnLi4vY2RrJztcclxuaW1wb3J0IHsgYW5pbWF0ZSwgc3RhdGUsIHN0eWxlLCB0cmFuc2l0aW9uLCB0cmlnZ2VyIH0gZnJvbSAnQGFuZ3VsYXIvYW5pbWF0aW9ucyc7XHJcblxyXG5cclxuLypcclxuICogVG9vbHRpcCBjb250YWluZXIuXHJcbiAqIFJlbmRlcnMgcHJvdmlkZWQgdG9vbHRpcCBpbnNpZGUuXHJcbiAqXHJcbiAqIEBzdHlsZXNcclxuICpcclxuICogdG9vbHRpcC1iZ1xyXG4gKiB0b29sdGlwLXByaW1hcnktYmdcclxuICogdG9vbHRpcC1pbmZvLWJnXHJcbiAqIHRvb2x0aXAtc3VjY2Vzcy1iZ1xyXG4gKiB0b29sdGlwLXdhcm5pbmctYmdcclxuICogdG9vbHRpcC1kYW5nZXItYmdcclxuICogdG9vbHRpcC1mZ1xyXG4gKiB0b29sdGlwLXNoYWRvd1xyXG4gKiB0b29sdGlwLWZvbnQtc2l6ZVxyXG4gKlxyXG4gKi9cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICduYi10b29sdGlwJyxcclxuICBzdHlsZVVybHM6IFsnLi90b29sdGlwLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgdGVtcGxhdGU6IGBcclxuICAgIDxzcGFuIGNsYXNzPVwiYXJyb3dcIj48L3NwYW4+XHJcbiAgICA8ZGl2IGNsYXNzPVwiY29udGVudFwiPlxyXG4gICAgICA8aSAqbmdJZj1cImNvbnRleHQ/Lmljb25cIiBjbGFzcz1cImljb24ge3sgY29udGV4dD8uaWNvbiB9fVwiPjwvaT5cclxuICAgICAgPHNwYW4gKm5nSWY9XCJjb250ZW50XCI+e3sgY29udGVudCB9fTwvc3Bhbj5cclxuICAgIDwvZGl2PlxyXG4gIGAsXHJcbiAgYW5pbWF0aW9uczogW1xyXG4gICAgdHJpZ2dlcignc2hvd1Rvb2x0aXAnLCBbXHJcbiAgICAgIHN0YXRlKCdpbicsIHN0eWxlKHsgb3BhY2l0eTogMSB9KSksXHJcbiAgICAgIHRyYW5zaXRpb24oJ3ZvaWQgPT4gKicsIFtcclxuICAgICAgICBzdHlsZSh7IG9wYWNpdHk6IDAgfSksXHJcbiAgICAgICAgYW5pbWF0ZSgxMDApLFxyXG4gICAgICBdKSxcclxuICAgICAgdHJhbnNpdGlvbignKiA9PiB2b2lkJywgW1xyXG4gICAgICAgIGFuaW1hdGUoMTAwLCBzdHlsZSh7IG9wYWNpdHk6IDAgfSkpLFxyXG4gICAgICBdKSxcclxuICAgIF0pLFxyXG4gIF0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBOYlRvb2x0aXBDb21wb25lbnQge1xyXG5cclxuICBASW5wdXQoKVxyXG4gIGNvbnRlbnQ6IHN0cmluZztcclxuXHJcbiAgLypcclxuICAgKiBQb3BvdmVyIHBvc2l0aW9uIHJlbGF0aXZlbHkgaG9zdCBlbGVtZW50LlxyXG4gICAqICovXHJcbiAgQElucHV0KClcclxuICBwb3NpdGlvbjogTmJQb3NpdGlvbiA9IE5iUG9zaXRpb24uVE9QO1xyXG5cclxuICBASG9zdEJpbmRpbmcoJ2NsYXNzJylcclxuICBnZXQgYmluZGluZygpIHtcclxuICAgIHJldHVybiBgJHt0aGlzLnBvc2l0aW9ufSAke3RoaXMuY29udGV4dC5zdGF0dXN9LXRvb2x0aXBgO1xyXG4gIH1cclxuXHJcbiAgQEhvc3RCaW5kaW5nKCdAc2hvd1Rvb2x0aXAnKVxyXG4gIGdldCBzaG93KCkge1xyXG4gICAgcmV0dXJuIHRydWU7XHJcbiAgfVxyXG5cclxuICBASW5wdXQoKVxyXG4gIGNvbnRleHQ6IHsgaWNvbj86IHN0cmluZywgc3RhdHVzPzogc3RyaW5nIH0gPSB7fTtcclxufVxyXG4iXX0=