UNPKG

@taiga-ui/cdk

Version:

Base library for creating Angular components and applications using Taiga UI principles regarding of actual visual appearance

33 lines 4.53 kB
import { DOCUMENT } from '@angular/common'; import { inject, Injectable, InjectionToken } from '@angular/core'; import { Meta } from '@angular/platform-browser'; import * as i0 from "@angular/core"; export const TUI_THEME_COLOR = new InjectionToken(ngDevMode ? 'TUI_THEME_COLOR' : '', { factory: () => inject(Meta).getTag('name="theme-color"')?.content ?? '', }); class TuiThemeColorService { constructor() { this.current = inject(TUI_THEME_COLOR); this.doc = inject(DOCUMENT); this.meta = inject(Meta); this.color = this.current; } get color() { return this.current; } set color(content) { this.current = content; this.meta.updateTag({ name: 'theme-color', content }); this.doc.documentElement.style.setProperty('--tui-theme-color', content); } static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiThemeColorService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); } static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiThemeColorService, providedIn: 'root' }); } } export { TuiThemeColorService }; i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiThemeColorService, decorators: [{ type: Injectable, args: [{ providedIn: 'root', }] }], ctorParameters: function () { return []; } }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGhlbWUtY29sb3Iuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2Nkay9zZXJ2aWNlcy90aGVtZS1jb2xvci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QyxPQUFPLEVBQUMsTUFBTSxFQUFFLFVBQVUsRUFBRSxjQUFjLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDakUsT0FBTyxFQUFDLElBQUksRUFBQyxNQUFNLDJCQUEyQixDQUFDOztBQUUvQyxNQUFNLENBQUMsTUFBTSxlQUFlLEdBQUcsSUFBSSxjQUFjLENBQzdDLFNBQVMsQ0FBQyxDQUFDLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFDbEM7SUFDSSxPQUFPLEVBQUUsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLE1BQU0sQ0FBQyxvQkFBb0IsQ0FBQyxFQUFFLE9BQU8sSUFBSSxFQUFFO0NBQzFFLENBQ0osQ0FBQztBQU9GLE1BR2Esb0JBQW9CO0lBSzdCO1FBSlEsWUFBTyxHQUFHLE1BQU0sQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUN6QixRQUFHLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ3ZCLFNBQUksR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7UUFHakMsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDO0lBQzlCLENBQUM7SUFFRCxJQUFXLEtBQUs7UUFDWixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDeEIsQ0FBQztJQUVELElBQVcsS0FBSyxDQUFDLE9BQWU7UUFDNUIsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUM7UUFDdkIsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsRUFBQyxJQUFJLEVBQUUsYUFBYSxFQUFFLE9BQU8sRUFBQyxDQUFDLENBQUM7UUFDcEQsSUFBSSxDQUFDLEdBQUcsQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxtQkFBbUIsRUFBRSxPQUFPLENBQUMsQ0FBQztJQUM3RSxDQUFDOytHQWpCUSxvQkFBb0I7bUhBQXBCLG9CQUFvQixjQUZqQixNQUFNOztTQUVULG9CQUFvQjs0RkFBcEIsb0JBQW9CO2tCQUhoQyxVQUFVO21CQUFDO29CQUNSLFVBQVUsRUFBRSxNQUFNO2lCQUNyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7RE9DVU1FTlR9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge2luamVjdCwgSW5qZWN0YWJsZSwgSW5qZWN0aW9uVG9rZW59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtNZXRhfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcblxuZXhwb3J0IGNvbnN0IFRVSV9USEVNRV9DT0xPUiA9IG5ldyBJbmplY3Rpb25Ub2tlbjxzdHJpbmc+KFxuICAgIG5nRGV2TW9kZSA/ICdUVUlfVEhFTUVfQ09MT1InIDogJycsXG4gICAge1xuICAgICAgICBmYWN0b3J5OiAoKSA9PiBpbmplY3QoTWV0YSkuZ2V0VGFnKCduYW1lPVwidGhlbWUtY29sb3JcIicpPy5jb250ZW50ID8/ICcnLFxuICAgIH0sXG4pO1xuXG5pbnRlcmZhY2UgVHVpVGhlbWVDb2xvciB7XG4gICAgZ2V0IGNvbG9yKCk6IHN0cmluZztcbiAgICBzZXQgY29sb3IodmFsdWU6IHN0cmluZyk7XG59XG5cbkBJbmplY3RhYmxlKHtcbiAgICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIFR1aVRoZW1lQ29sb3JTZXJ2aWNlIGltcGxlbWVudHMgVHVpVGhlbWVDb2xvciB7XG4gICAgcHJpdmF0ZSBjdXJyZW50ID0gaW5qZWN0KFRVSV9USEVNRV9DT0xPUik7XG4gICAgcHJpdmF0ZSByZWFkb25seSBkb2MgPSBpbmplY3QoRE9DVU1FTlQpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgbWV0YSA9IGluamVjdChNZXRhKTtcblxuICAgIGNvbnN0cnVjdG9yKCkge1xuICAgICAgICB0aGlzLmNvbG9yID0gdGhpcy5jdXJyZW50O1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgY29sb3IoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY3VycmVudDtcbiAgICB9XG5cbiAgICBwdWJsaWMgc2V0IGNvbG9yKGNvbnRlbnQ6IHN0cmluZykge1xuICAgICAgICB0aGlzLmN1cnJlbnQgPSBjb250ZW50O1xuICAgICAgICB0aGlzLm1ldGEudXBkYXRlVGFnKHtuYW1lOiAndGhlbWUtY29sb3InLCBjb250ZW50fSk7XG4gICAgICAgIHRoaXMuZG9jLmRvY3VtZW50RWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgnLS10dWktdGhlbWUtY29sb3InLCBjb250ZW50KTtcbiAgICB9XG59XG4iXX0=