@taiga-ui/kit
Version:
Taiga UI Angular main components kit
74 lines (69 loc) • 4.29 kB
JavaScript
import { __decorate, __param } from 'tslib';
import { Inject, Input, HostBinding, Component, ChangeDetectionStrategy, NgModule } from '@angular/core';
import { TuiDestroyService, tuiDefaultProp } from '@taiga-ui/cdk';
import { TUI_MODE, MODE_PROVIDER, TuiSvgModule } from '@taiga-ui/core';
import { Observable } from 'rxjs';
import { takeUntil } from 'rxjs/operators';
import { CommonModule } from '@angular/common';
let TuiMarkerIconComponent = class TuiMarkerIconComponent {
constructor(destroy$, mode$) {
this.mode = null;
this.size = 'm';
this.src = '';
this.globalMode = null;
mode$.pipe(takeUntil(destroy$)).subscribe(mode => {
this.globalMode = mode;
});
}
// TODO: Simplify
get computedMode() {
return this.globalMode === 'onDark' && !this.mode
? "onDark" /* OnDark */
: this.mode;
}
};
TuiMarkerIconComponent.ctorParameters = () => [
{ type: Observable, decorators: [{ type: Inject, args: [TuiDestroyService,] }] },
{ type: Observable, decorators: [{ type: Inject, args: [TUI_MODE,] }] }
];
__decorate([
Input(),
tuiDefaultProp()
], TuiMarkerIconComponent.prototype, "mode", void 0);
__decorate([
Input(),
HostBinding('attr.data-tui-host-size'),
tuiDefaultProp()
], TuiMarkerIconComponent.prototype, "size", void 0);
__decorate([
Input(),
tuiDefaultProp()
], TuiMarkerIconComponent.prototype, "src", void 0);
__decorate([
HostBinding('attr.data-mode')
], TuiMarkerIconComponent.prototype, "computedMode", null);
TuiMarkerIconComponent = __decorate([
Component({
selector: 'tui-marker-icon',
template: "<tui-svg class=\"icon\" [src]=\"src\"></tui-svg>\n",
changeDetection: ChangeDetectionStrategy.OnPush,
providers: [TuiDestroyService, MODE_PROVIDER],
styles: [":host{transition-duration:.3s;transition-timing-function:ease-in-out;position:relative;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;border-radius:100%;color:var(--tui-text-03);background-color:var(--tui-base-02);background-size:cover!important;transition-property:color,background-color}:host[data-tui-host-size=xs]{width:32px;height:32px}:host[data-tui-host-size='s']{width:48px;height:48px}:host[data-tui-host-size='m']{width:64px;height:64px}:host[data-tui-host-size='l']{width:96px;height:96px}:host[data-tui-host-size=xl]{width:128px;height:128px}:host[data-mode=primary]{color:var(--tui-primary-text);background-color:var(--tui-primary)}:host[data-mode=white]{color:var(--tui-text-03);background-color:var(--tui-base-01)}:host[data-mode=warning]{color:var(--tui-warning-fill);background-color:var(--tui-warning-bg)}:host[data-mode=secondary]{color:var(--tui-base-01);background-color:var(--tui-info-fill)}:host[data-mode=error]{color:var(--tui-error-fill);background-color:var(--tui-error-bg)}:host[data-mode=success]{color:var(--tui-success-fill);background-color:var(--tui-success-bg)}:host[data-mode=onDark]{color:var(--tui-base-01);background-color:var(--tui-clear-inverse)}:host[data-mode=link]{transition-property:color;transition-duration:.3s;transition-timing-function:ease-in-out;cursor:pointer;color:var(--tui-link);background-color:var(--tui-secondary)}:host[data-mode=link]:hover{color:var(--tui-link-hover);background-color:var(--tui-secondary-hover)}:host[data-mode=link]:active{color:var(--tui-link-hover);background-color:var(--tui-secondary-active)}.icon{width:48px;height:48px}:host[data-tui-host-size=xs] .icon{transform:scale(.667)}:host[data-tui-host-size='m'] .icon{transform:scale(1.333)}:host[data-tui-host-size='l'] .icon{transform:scale(2)}:host[data-tui-host-size=xl] .icon{transform:scale(2.667)}"]
}),
__param(0, Inject(TuiDestroyService)),
__param(1, Inject(TUI_MODE))
], TuiMarkerIconComponent);
let TuiMarkerIconModule = class TuiMarkerIconModule {
};
TuiMarkerIconModule = __decorate([
NgModule({
imports: [CommonModule, TuiSvgModule],
declarations: [TuiMarkerIconComponent],
exports: [TuiMarkerIconComponent],
})
], TuiMarkerIconModule);
/**
* Generated bundle index. Do not edit.
*/
export { TuiMarkerIconComponent, TuiMarkerIconModule };
//# sourceMappingURL=taiga-ui-kit-components-marker-icon.js.map