@odx/angular 2.4.0 → 2.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,3 +1,29 @@
1
+ # @odx/angular 2.6.0 (2023-08-09)
2
+
3
+
4
+ ### Features
5
+
6
+ * add base-select component to storybook ([40a5d42](https://dev.azure.com/draeger/ODXP/_git/odx-libraries/commit/40a5d429109740015d47b0b670cfc553c89f9463))
7
+
8
+ # @odx/angular 2.5.0 (2023-08-07)
9
+
10
+
11
+ ### Bug Fixes
12
+
13
+ * any ([c396297](https://dev.azure.com/draeger/ODXP/_git/odx-libraries/commit/c396297e2ae066ac385e7e9b301b29d1db6e3779))
14
+ * optional dependencies ([67733b4](https://dev.azure.com/draeger/ODXP/_git/odx-libraries/commit/67733b4ca075ab3bbe47f89f85debfcef76f0bf2))
15
+ * pie chart scales ([319228f](https://dev.azure.com/draeger/ODXP/_git/odx-libraries/commit/319228f300ea480506166a6c13aff9fe5e645338))
16
+ * pr issues ([a62bf0f](https://dev.azure.com/draeger/ODXP/_git/odx-libraries/commit/a62bf0f33a9604a663ecc5b2edf7d45f98807632))
17
+ * unit test for getCSSColorStyles ([b3ee9cf](https://dev.azure.com/draeger/ODXP/_git/odx-libraries/commit/b3ee9cf2a96cddb5c881d15230fd42b177f48d0e))
18
+
19
+
20
+ ### Features
21
+
22
+ * chart theme directive ([1ec10f2](https://dev.azure.com/draeger/ODXP/_git/odx-libraries/commit/1ec10f2cf18a1410726a38f672dacc8f7d416f33))
23
+ * naming and structure ([12783e9](https://dev.azure.com/draeger/ODXP/_git/odx-libraries/commit/12783e941140fdfe097535493e05e9d46634852d))
24
+ * new story for echarts library ([6fd7015](https://dev.azure.com/draeger/ODXP/_git/odx-libraries/commit/6fd7015a4e4ffdc6c7065f4475ea41a0226ad297))
25
+ * series colors, charts config ([ff207ac](https://dev.azure.com/draeger/ODXP/_git/odx-libraries/commit/ff207ace7037271e940626cd6edf37194ae6f75b))
26
+
1
27
  # @odx/angular 2.4.0 (2023-07-24)
2
28
 
3
29
 
@@ -0,0 +1,3 @@
1
+ # @odx/angular/charts-config
2
+
3
+ Secondary entry point of `@odx/angular`. It can be used by importing from `@odx/angular/charts-config`.
@@ -0,0 +1,3 @@
1
+ export * from './lib/charts-theme.module';
2
+ export * from './lib/charts-theme.service';
3
+ export * from './lib/charts-theme.directive';
@@ -0,0 +1,10 @@
1
+ import { ElementRef, NgZone } from '@angular/core';
2
+ import { BaseChartDirective, ThemeService } from 'ng2-charts';
3
+ import * as i0 from "@angular/core";
4
+ export declare class ChartThemeDirective extends BaseChartDirective {
5
+ private readonly chartsThemeServise;
6
+ private readonly takeUntilDestroyed;
7
+ constructor(element: ElementRef, ngzone: NgZone, parentThemeService: ThemeService);
8
+ static ɵfac: i0.ɵɵFactoryDeclaration<ChartThemeDirective, never>;
9
+ static ɵdir: i0.ɵɵDirectiveDeclaration<ChartThemeDirective, "canvas[odxChart]", never, {}, {}, never, never, true, never>;
10
+ }
@@ -0,0 +1,8 @@
1
+ import * as i0 from "@angular/core";
2
+ import * as i1 from "ng2-charts";
3
+ import * as i2 from "./charts-theme.directive";
4
+ export declare class ChartThemeModule {
5
+ static ɵfac: i0.ɵɵFactoryDeclaration<ChartThemeModule, never>;
6
+ static ɵmod: i0.ɵɵNgModuleDeclaration<ChartThemeModule, never, [typeof i1.NgChartsModule, typeof i2.ChartThemeDirective], [typeof i1.NgChartsModule, typeof i2.ChartThemeDirective]>;
7
+ static ɵinj: i0.ɵɵInjectorDeclaration<ChartThemeModule>;
8
+ }
@@ -0,0 +1,60 @@
1
+ import { Theme } from '@odx/angular/theming';
2
+ import { ChartConfiguration, Color } from 'chart.js';
3
+ import { Observable } from 'rxjs';
4
+ import * as i0 from "@angular/core";
5
+ export declare class ChartsThemeServise {
6
+ private readonly coreChartThemeService;
7
+ private readonly document;
8
+ private readonly windowRef;
9
+ private readonly themingService;
10
+ getOverrides: {
11
+ borderColor: string;
12
+ backgroundColor: string;
13
+ color: string;
14
+ font: {
15
+ family: string;
16
+ size: number;
17
+ };
18
+ plugins: {
19
+ colors: {
20
+ enabled: boolean;
21
+ };
22
+ tooltip: {
23
+ backgroundColor: string;
24
+ cornerRadius: number;
25
+ };
26
+ };
27
+ datasets: {
28
+ line: {
29
+ backgroundColor: (context: any) => string;
30
+ borderColor: (context: any) => string;
31
+ pointBackgroundColor: (context: any) => string;
32
+ pointBorderColor: string;
33
+ };
34
+ bar: {
35
+ backgroundColor: (context: any) => string;
36
+ borderColor: (context: any) => string;
37
+ };
38
+ doughnut: {
39
+ backgroundColor: (context: any) => string;
40
+ borderColor: string;
41
+ };
42
+ polarArea: {
43
+ backgroundColor: (context: any) => string;
44
+ borderColor: (context: any) => string;
45
+ };
46
+ readonly pie: Record<string, Color | ((context: any) => Color)>;
47
+ readonly bubble: Record<string, Color | ((context: any) => Color)>;
48
+ readonly scatter: Record<string, Color | ((context: any) => Color)>;
49
+ readonly area: Record<string, Color | ((context: any) => Color)>;
50
+ readonly radar: Record<string, Color | ((context: any) => Color)>;
51
+ };
52
+ };
53
+ seriesColors: string[];
54
+ observeThemeChanging$: Observable<MutationRecord | Theme>;
55
+ setTheme(chartConf: ChartConfiguration): void;
56
+ private themeColorsOverrides;
57
+ private buildBodyObserver;
58
+ static ɵfac: i0.ɵɵFactoryDeclaration<ChartsThemeServise, never>;
59
+ static ɵprov: i0.ɵɵInjectableDeclaration<ChartsThemeServise>;
60
+ }
@@ -0,0 +1,4 @@
1
+ export * from './lib/charts-theme.module';
2
+ export * from './lib/charts-theme.service';
3
+ export * from './lib/charts-theme.directive';
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvY2hhcnRzLWNvbmZpZy9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYywyQkFBMkIsQ0FBQztBQUMxQyxjQUFjLDRCQUE0QixDQUFDO0FBQzNDLGNBQWMsOEJBQThCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2xpYi9jaGFydHMtdGhlbWUubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NoYXJ0cy10aGVtZS5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NoYXJ0cy10aGVtZS5kaXJlY3RpdmUnO1xuIl19
@@ -0,0 +1,27 @@
1
+ import { Directive, ElementRef, inject, NgZone } from '@angular/core';
2
+ import { untilDestroyed } from '@odx/angular/utils';
3
+ import { BaseChartDirective, ThemeService } from 'ng2-charts';
4
+ import { ChartsThemeServise } from './charts-theme.service';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "ng2-charts";
7
+ export class ChartThemeDirective extends BaseChartDirective {
8
+ constructor(element, ngzone, parentThemeService) {
9
+ super(element, ngzone, parentThemeService);
10
+ this.chartsThemeServise = inject(ChartsThemeServise);
11
+ this.takeUntilDestroyed = untilDestroyed();
12
+ this.chartsThemeServise.observeThemeChanging$
13
+ .pipe(this.takeUntilDestroyed())
14
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
15
+ .subscribe(() => this.chartsThemeServise.setTheme(this.chart?.config));
16
+ }
17
+ }
18
+ ChartThemeDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ChartThemeDirective, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }, { token: i1.ThemeService }], target: i0.ɵɵFactoryTarget.Directive });
19
+ ChartThemeDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.9", type: ChartThemeDirective, isStandalone: true, selector: "canvas[odxChart]", usesInheritance: true, ngImport: i0 });
20
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ChartThemeDirective, decorators: [{
21
+ type: Directive,
22
+ args: [{
23
+ selector: 'canvas[odxChart]',
24
+ standalone: true,
25
+ }]
26
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.NgZone }, { type: i1.ThemeService }]; } });
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhcnRzLXRoZW1lLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci9jaGFydHMtY29uZmlnL3NyYy9saWIvY2hhcnRzLXRoZW1lLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3RFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNwRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsWUFBWSxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQzlELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDOzs7QUFNNUQsTUFBTSxPQUFPLG1CQUFvQixTQUFRLGtCQUFrQjtJQUl6RCxZQUFZLE9BQW1CLEVBQUUsTUFBYyxFQUFFLGtCQUFnQztRQUMvRSxLQUFLLENBQUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxrQkFBa0IsQ0FBQyxDQUFDO1FBSjVCLHVCQUFrQixHQUFHLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1FBQ2hELHVCQUFrQixHQUFHLGNBQWMsRUFBRSxDQUFDO1FBSXJELElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxxQkFBcUI7YUFDMUMsSUFBSSxDQUFDLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO1lBQ2hDLDhEQUE4RDthQUM3RCxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLE1BQWEsQ0FBQyxDQUFDLENBQUM7SUFDbEYsQ0FBQzs7Z0hBVlUsbUJBQW1CO29HQUFuQixtQkFBbUI7MkZBQW5CLG1CQUFtQjtrQkFKL0IsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsa0JBQWtCO29CQUM1QixVQUFVLEVBQUUsSUFBSTtpQkFDakIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIGluamVjdCwgTmdab25lIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyB1bnRpbERlc3Ryb3llZCB9IGZyb20gJ0BvZHgvYW5ndWxhci91dGlscyc7XG5pbXBvcnQgeyBCYXNlQ2hhcnREaXJlY3RpdmUsIFRoZW1lU2VydmljZSB9IGZyb20gJ25nMi1jaGFydHMnO1xuaW1wb3J0IHsgQ2hhcnRzVGhlbWVTZXJ2aXNlIH0gZnJvbSAnLi9jaGFydHMtdGhlbWUuc2VydmljZSc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ2NhbnZhc1tvZHhDaGFydF0nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxufSlcbmV4cG9ydCBjbGFzcyBDaGFydFRoZW1lRGlyZWN0aXZlIGV4dGVuZHMgQmFzZUNoYXJ0RGlyZWN0aXZlIHtcbiAgcHJpdmF0ZSByZWFkb25seSBjaGFydHNUaGVtZVNlcnZpc2UgPSBpbmplY3QoQ2hhcnRzVGhlbWVTZXJ2aXNlKTtcbiAgcHJpdmF0ZSByZWFkb25seSB0YWtlVW50aWxEZXN0cm95ZWQgPSB1bnRpbERlc3Ryb3llZCgpO1xuXG4gIGNvbnN0cnVjdG9yKGVsZW1lbnQ6IEVsZW1lbnRSZWYsIG5nem9uZTogTmdab25lLCBwYXJlbnRUaGVtZVNlcnZpY2U6IFRoZW1lU2VydmljZSkge1xuICAgIHN1cGVyKGVsZW1lbnQsIG5nem9uZSwgcGFyZW50VGhlbWVTZXJ2aWNlKTtcbiAgICB0aGlzLmNoYXJ0c1RoZW1lU2VydmlzZS5vYnNlcnZlVGhlbWVDaGFuZ2luZyRcbiAgICAgIC5waXBlKHRoaXMudGFrZVVudGlsRGVzdHJveWVkKCkpXG4gICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB0aGlzLmNoYXJ0c1RoZW1lU2VydmlzZS5zZXRUaGVtZSh0aGlzLmNoYXJ0Py5jb25maWcgYXMgYW55KSk7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,33 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { BaseChartDirective, NgChartsConfiguration, NgChartsModule } from 'ng2-charts';
3
+ import { ChartThemeDirective } from './charts-theme.directive';
4
+ import { ChartsThemeServise } from './charts-theme.service';
5
+ import * as i0 from "@angular/core";
6
+ export class ChartThemeModule {
7
+ }
8
+ ChartThemeModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ChartThemeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
9
+ ChartThemeModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: ChartThemeModule, imports: [NgChartsModule, ChartThemeDirective], exports: [NgChartsModule, ChartThemeDirective] });
10
+ ChartThemeModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ChartThemeModule, providers: [
11
+ {
12
+ provide: NgChartsConfiguration,
13
+ useFactory: (service) => ({ defaults: service.getOverrides, generateColors: false }),
14
+ deps: [ChartsThemeServise],
15
+ },
16
+ BaseChartDirective,
17
+ ], imports: [NgChartsModule, NgChartsModule] });
18
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ChartThemeModule, decorators: [{
19
+ type: NgModule,
20
+ args: [{
21
+ imports: [NgChartsModule, ChartThemeDirective],
22
+ providers: [
23
+ {
24
+ provide: NgChartsConfiguration,
25
+ useFactory: (service) => ({ defaults: service.getOverrides, generateColors: false }),
26
+ deps: [ChartsThemeServise],
27
+ },
28
+ BaseChartDirective,
29
+ ],
30
+ exports: [NgChartsModule, ChartThemeDirective],
31
+ }]
32
+ }] });
33
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhcnRzLXRoZW1lLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci9jaGFydHMtY29uZmlnL3NyYy9saWIvY2hhcnRzLXRoZW1lLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxxQkFBcUIsRUFBRSxjQUFjLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDdkYsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDL0QsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7O0FBYzVELE1BQU0sT0FBTyxnQkFBZ0I7OzZHQUFoQixnQkFBZ0I7OEdBQWhCLGdCQUFnQixZQVhqQixjQUFjLEVBQUUsbUJBQW1CLGFBU25DLGNBQWMsRUFBRSxtQkFBbUI7OEdBRWxDLGdCQUFnQixhQVZoQjtRQUNUO1lBQ0UsT0FBTyxFQUFFLHFCQUFxQjtZQUM5QixVQUFVLEVBQUUsQ0FBQyxPQUEyQixFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUUsUUFBUSxFQUFFLE9BQU8sQ0FBQyxZQUFZLEVBQUUsY0FBYyxFQUFFLEtBQUssRUFBRSxDQUFDO1lBQ3hHLElBQUksRUFBRSxDQUFDLGtCQUFrQixDQUFDO1NBQzNCO1FBQ0Qsa0JBQWtCO0tBQ25CLFlBUlMsY0FBYyxFQVNkLGNBQWM7MkZBRWIsZ0JBQWdCO2tCQVo1QixRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRSxDQUFDLGNBQWMsRUFBRSxtQkFBbUIsQ0FBQztvQkFDOUMsU0FBUyxFQUFFO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSxxQkFBcUI7NEJBQzlCLFVBQVUsRUFBRSxDQUFDLE9BQTJCLEVBQUUsRUFBRSxDQUFDLENBQUMsRUFBRSxRQUFRLEVBQUUsT0FBTyxDQUFDLFlBQVksRUFBRSxjQUFjLEVBQUUsS0FBSyxFQUFFLENBQUM7NEJBQ3hHLElBQUksRUFBRSxDQUFDLGtCQUFrQixDQUFDO3lCQUMzQjt3QkFDRCxrQkFBa0I7cUJBQ25CO29CQUNELE9BQU8sRUFBRSxDQUFDLGNBQWMsRUFBRSxtQkFBbUIsQ0FBQztpQkFDL0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQmFzZUNoYXJ0RGlyZWN0aXZlLCBOZ0NoYXJ0c0NvbmZpZ3VyYXRpb24sIE5nQ2hhcnRzTW9kdWxlIH0gZnJvbSAnbmcyLWNoYXJ0cyc7XG5pbXBvcnQgeyBDaGFydFRoZW1lRGlyZWN0aXZlIH0gZnJvbSAnLi9jaGFydHMtdGhlbWUuZGlyZWN0aXZlJztcbmltcG9ydCB7IENoYXJ0c1RoZW1lU2VydmlzZSB9IGZyb20gJy4vY2hhcnRzLXRoZW1lLnNlcnZpY2UnO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbTmdDaGFydHNNb2R1bGUsIENoYXJ0VGhlbWVEaXJlY3RpdmVdLFxuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBOZ0NoYXJ0c0NvbmZpZ3VyYXRpb24sXG4gICAgICB1c2VGYWN0b3J5OiAoc2VydmljZTogQ2hhcnRzVGhlbWVTZXJ2aXNlKSA9PiAoeyBkZWZhdWx0czogc2VydmljZS5nZXRPdmVycmlkZXMsIGdlbmVyYXRlQ29sb3JzOiBmYWxzZSB9KSxcbiAgICAgIGRlcHM6IFtDaGFydHNUaGVtZVNlcnZpc2VdLFxuICAgIH0sXG4gICAgQmFzZUNoYXJ0RGlyZWN0aXZlLFxuICBdLFxuICBleHBvcnRzOiBbTmdDaGFydHNNb2R1bGUsIENoYXJ0VGhlbWVEaXJlY3RpdmVdLFxufSlcbmV4cG9ydCBjbGFzcyBDaGFydFRoZW1lTW9kdWxlIHt9XG4iXX0=
@@ -0,0 +1,114 @@
1
+ /* eslint-disable @typescript-eslint/no-explicit-any */
2
+ import { DOCUMENT } from '@angular/common';
3
+ import { inject, Injectable } from '@angular/core';
4
+ import { WindowRef } from '@odx/angular';
5
+ import { ThemingService } from '@odx/angular/theming';
6
+ import { createMutationObserver } from '@odx/angular/utils';
7
+ import { ThemeService } from 'ng2-charts';
8
+ import { distinctUntilChanged, Observable } from 'rxjs';
9
+ import * as i0 from "@angular/core";
10
+ export class ChartsThemeServise {
11
+ constructor() {
12
+ this.coreChartThemeService = inject(ThemeService);
13
+ this.document = inject(DOCUMENT);
14
+ this.windowRef = inject(WindowRef);
15
+ this.themingService = inject(ThemingService);
16
+ this.getOverrides = {
17
+ borderColor: this.windowRef.getCSSVariable('gray-200'),
18
+ backgroundColor: 'rgba(0,0,0,0)',
19
+ color: this.windowRef.getCSSVariable('blue-700'),
20
+ font: {
21
+ family: 'Pangea',
22
+ size: 13.333,
23
+ },
24
+ plugins: {
25
+ colors: { enabled: false },
26
+ tooltip: {
27
+ backgroundColor: this.windowRef.getCSSVariable('blue-800'),
28
+ cornerRadius: 3,
29
+ },
30
+ },
31
+ datasets: {
32
+ line: {
33
+ backgroundColor: (context) => `${this.seriesColors[context.datasetIndex]}66`,
34
+ borderColor: (context) => `${this.seriesColors[context.datasetIndex]}`,
35
+ pointBackgroundColor: (context) => `${this.seriesColors[context.datasetIndex]}`,
36
+ pointBorderColor: '#fff',
37
+ },
38
+ bar: {
39
+ backgroundColor: (context) => `${this.seriesColors[context.datasetIndex]}99`,
40
+ borderColor: (context) => `${this.seriesColors[context.datasetIndex]}`,
41
+ },
42
+ doughnut: {
43
+ backgroundColor: (context) => `${this.seriesColors[context.dataIndex]}`,
44
+ borderColor: this.windowRef.getCSSVariable('gray-200'),
45
+ },
46
+ polarArea: {
47
+ backgroundColor: (context) => `${this.seriesColors[context.dataIndex]}99`,
48
+ borderColor: (context) => `${this.seriesColors[context.dataIndex]}`,
49
+ },
50
+ get pie() {
51
+ return this.doughnut;
52
+ },
53
+ get bubble() {
54
+ return this.doughnut;
55
+ },
56
+ get scatter() {
57
+ return this.doughnut;
58
+ },
59
+ get area() {
60
+ return this.polarArea;
61
+ },
62
+ get radar() {
63
+ return this.line;
64
+ },
65
+ },
66
+ };
67
+ this.seriesColors = Object.values(this.windowRef.getCSSColorStyles('charts-series'));
68
+ this.observeThemeChanging$ = this.document.body.className.includes('sb-')
69
+ ? this.buildBodyObserver().pipe(distinctUntilChanged())
70
+ : this.themingService.theme$;
71
+ }
72
+ setTheme(chartConf) {
73
+ const type = (chartConf && chartConf['type']) || 'bar';
74
+ this.coreChartThemeService.setColorschemesOptions(this.themeColorsOverrides(type));
75
+ }
76
+ themeColorsOverrides(type) {
77
+ const scales = type === 'pie' || type === 'doughnut'
78
+ ? undefined
79
+ : {
80
+ x: {
81
+ ticks: { color: this.windowRef.getCSSVariable('blue-700') },
82
+ grid: { color: this.windowRef.getCSSVariable('gray-200') },
83
+ },
84
+ y: {
85
+ ticks: { color: this.windowRef.getCSSVariable('blue-700') },
86
+ grid: { color: this.windowRef.getCSSVariable('gray-200') },
87
+ },
88
+ };
89
+ return {
90
+ color: this.windowRef.getCSSVariable('blue-700'),
91
+ scales,
92
+ plugins: {
93
+ colors: {
94
+ forceOverride: true,
95
+ },
96
+ legend: {},
97
+ },
98
+ };
99
+ }
100
+ buildBodyObserver() {
101
+ return new Observable((observer) => {
102
+ const mutation = createMutationObserver(observer, (mutations) => mutations.some(({ type }) => type === 'attributes'));
103
+ mutation.observe(this.document.body, { attributes: true });
104
+ return () => mutation.disconnect();
105
+ });
106
+ }
107
+ }
108
+ ChartsThemeServise.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ChartsThemeServise, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
109
+ ChartsThemeServise.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ChartsThemeServise, providedIn: 'root' });
110
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ChartsThemeServise, decorators: [{
111
+ type: Injectable,
112
+ args: [{ providedIn: 'root' }]
113
+ }] });
114
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhcnRzLXRoZW1lLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvY2hhcnRzLWNvbmZpZy9zcmMvbGliL2NoYXJ0cy10aGVtZS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHVEQUF1RDtBQUN2RCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDM0MsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUN6QyxPQUFPLEVBQVMsY0FBYyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDN0QsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFNUQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLFlBQVksQ0FBQztBQUMxQyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsVUFBVSxFQUFFLE1BQU0sTUFBTSxDQUFDOztBQUd4RCxNQUFNLE9BQU8sa0JBQWtCO0lBRC9CO1FBRW1CLDBCQUFxQixHQUFHLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUM3QyxhQUFRLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQzVCLGNBQVMsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDOUIsbUJBQWMsR0FBRyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUM7UUFFbEQsaUJBQVksR0FBRztZQUNwQixXQUFXLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxjQUFjLENBQUMsVUFBVSxDQUFDO1lBQ3RELGVBQWUsRUFBRSxlQUFlO1lBQ2hDLEtBQUssRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLGNBQWMsQ0FBQyxVQUFVLENBQUM7WUFDaEQsSUFBSSxFQUFFO2dCQUNKLE1BQU0sRUFBRSxRQUFRO2dCQUNoQixJQUFJ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QyxFQUFFLElBQUksRUFBRSxFQUFFLEVBQUUsQ0FBQyxJQUFJLEtBQUssWUFBWSxDQUFDLENBQUMsQ0FBQztZQUN4SSxRQUFRLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7WUFDM0QsT0FBTyxHQUFHLEVBQUUsQ0FBQyxRQUFRLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDckMsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOzsrR0FwR1Usa0JBQWtCO21IQUFsQixrQkFBa0IsY0FETCxNQUFNOzJGQUNuQixrQkFBa0I7a0JBRDlCLFVBQVU7bUJBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueSAqL1xuaW1wb3J0IHsgRE9DVU1FTlQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgaW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBXaW5kb3dSZWYgfSBmcm9tICdAb2R4L2FuZ3VsYXInO1xuaW1wb3J0IHsgVGhlbWUsIFRoZW1pbmdTZXJ2aWNlIH0gZnJvbSAnQG9keC9hbmd1bGFyL3RoZW1pbmcnO1xuaW1wb3J0IHsgY3JlYXRlTXV0YXRpb25PYnNlcnZlciB9IGZyb20gJ0BvZHgvYW5ndWxhci91dGlscyc7XG5pbXBvcnQgeyBDaGFydENvbmZpZ3VyYXRpb24sIENoYXJ0VHlwZSwgQ29sb3IgfSBmcm9tICdjaGFydC5qcyc7XG5pbXBvcnQgeyBUaGVtZVNlcnZpY2UgfSBmcm9tICduZzItY2hhcnRzJztcbmltcG9ydCB7IGRpc3RpbmN0VW50aWxDaGFuZ2VkLCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5cbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXG5leHBvcnQgY2xhc3MgQ2hhcnRzVGhlbWVTZXJ2aXNlIHtcbiAgcHJpdmF0ZSByZWFkb25seSBjb3JlQ2hhcnRUaGVtZVNlcnZpY2UgPSBpbmplY3QoVGhlbWVTZXJ2aWNlKTtcbiAgcHJpdmF0ZSByZWFkb25seSBkb2N1bWVudCA9IGluamVjdChET0NVTUVOVCk7XG4gIHByaXZhdGUgcmVhZG9ubHkgd2luZG93UmVmID0gaW5qZWN0KFdpbmRvd1JlZik7XG4gIHByaXZhdGUgcmVhZG9ubHkgdGhlbWluZ1NlcnZpY2UgPSBpbmplY3QoVGhlbWluZ1NlcnZpY2UpO1xuXG4gIHB1YmxpYyBnZXRPdmVycmlkZXMgPSB7XG4gICAgYm9yZGVyQ29sb3I6IHRoaXMud2luZG93UmVmLmdldENTU1ZhcmlhYmxlKCdncmF5LTIwMCcpLFxuICAgIGJhY2tncm91bmRDb2xvcjogJ3JnYmEoMCwwLDAsMCknLFxuICAgIGNvbG9yOiB0aGlzLndpbmRvd1JlZi5nZXRDU1NWYXJpYWJsZSgnYmx1ZS03MDAnKSxcbiAgICBmb250OiB7XG4gICAgICBmYW1pbHk6ICdQYW5nZWEnLFxuICAgICAgc2l6ZTogMTMuMzMzLFxuICAgIH0sXG4gICAgcGx1Z2luczoge1xuICAgICAgY29sb3JzOiB7IGVuYWJsZWQ6IGZhbHNlIH0sXG4gICAgICB0b29sdGlwOiB7XG4gICAgICAgIGJhY2tncm91bmRDb2xvcjogdGhpcy53aW5kb3dSZWYuZ2V0Q1NTVmFyaWFibGUoJ2JsdWUtODAwJyksXG4gICAgICAgIGNvcm5lclJhZGl1czogMyxcbiAgICAgIH0sXG4gICAgfSxcbiAgICBkYXRhc2V0czoge1xuICAgICAgbGluZToge1xuICAgICAgICBiYWNrZ3JvdW5kQ29sb3I6IChjb250ZXh0OiBhbnkpID0+IGAke3RoaXMuc2VyaWVzQ29sb3JzW2NvbnRleHQuZGF0YXNldEluZGV4XX02NmAsXG4gICAgICAgIGJvcmRlckNvbG9yOiAoY29udGV4dDogYW55KSA9PiBgJHt0aGlzLnNlcmllc0NvbG9yc1tjb250ZXh0LmRhdGFzZXRJbmRleF19YCxcbiAgICAgICAgcG9pbnRCYWNrZ3JvdW5kQ29sb3I6IChjb250ZXh0OiBhbnkpID0+IGAke3RoaXMuc2VyaWVzQ29sb3JzW2NvbnRleHQuZGF0YXNldEluZGV4XX1gLFxuICAgICAgICBwb2ludEJvcmRlckNvbG9yOiAnI2ZmZicsXG4gICAgICB9LFxuICAgICAgYmFyOiB7XG4gICAgICAgIGJhY2tncm91bmRDb2xvcjogKGNvbnRleHQ6IGFueSkgPT4gYCR7dGhpcy5zZXJpZXNDb2xvcnNbY29udGV4dC5kYXRhc2V0SW5kZXhdfTk5YCxcbiAgICAgICAgYm9yZGVyQ29sb3I6IChjb250ZXh0OiBhbnkpID0+IGAke3RoaXMuc2VyaWVzQ29sb3JzW2NvbnRleHQuZGF0YXNldEluZGV4XX1gLFxuICAgICAgfSxcbiAgICAgIGRvdWdobnV0OiB7XG4gICAgICAgIGJhY2tncm91bmRDb2xvcjogKGNvbnRleHQ6IGFueSkgPT4gYCR7dGhpcy5zZXJpZXNDb2xvcnNbY29udGV4dC5kYXRhSW5kZXhdfWAsXG4gICAgICAgIGJvcmRlckNvbG9yOiB0aGlzLndpbmRvd1JlZi5nZXRDU1NWYXJpYWJsZSgnZ3JheS0yMDAnKSxcbiAgICAgIH0sXG4gICAgICBwb2xhckFyZWE6IHtcbiAgICAgICAgYmFja2dyb3VuZENvbG9yOiAoY29udGV4dDogYW55KSA9PiBgJHt0aGlzLnNlcmllc0NvbG9yc1tjb250ZXh0LmRhdGFJbmRleF19OTlgLFxuICAgICAgICBib3JkZXJDb2xvcjogKGNvbnRleHQ6IGFueSkgPT4gYCR7dGhpcy5zZXJpZXNDb2xvcnNbY29udGV4dC5kYXRhSW5kZXhdfWAsXG4gICAgICB9LFxuICAgICAgZ2V0IHBpZSgpOiBSZWNvcmQ8c3RyaW5nLCAoKGNvbnRleHQ6IGFueSkgPT4gQ29sb3IpIHwgQ29sb3I+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZG91Z2hudXQ7XG4gICAgICB9LFxuICAgICAgZ2V0IGJ1YmJsZSgpOiBSZWNvcmQ8c3RyaW5nLCAoKGNvbnRleHQ6IGFueSkgPT4gQ29sb3IpIHwgQ29sb3I+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZG91Z2hudXQ7XG4gICAgICB9LFxuICAgICAgZ2V0IHNjYXR0ZXIoKTogUmVjb3JkPHN0cmluZywgKChjb250ZXh0OiBhbnkpID0+IENvbG9yKSB8IENvbG9yPiB7XG4gICAgICAgIHJldHVybiB0aGlzLmRvdWdobnV0O1xuICAgICAgfSxcbiAgICAgIGdldCBhcmVhKCk6IFJlY29yZDxzdHJpbmcsICgoY29udGV4dDogYW55KSA9PiBDb2xvcikgfCBDb2xvcj4ge1xuICAgICAgICByZXR1cm4gdGhpcy5wb2xhckFyZWE7XG4gICAgICB9LFxuICAgICAgZ2V0IHJhZGFyKCk6IFJlY29yZDxzdHJpbmcsICgoY29udGV4dDogYW55KSA9PiBDb2xvcikgfCBDb2xvcj4ge1xuICAgICAgICByZXR1cm4gdGhpcy5saW5lO1xuICAgICAgfSxcbiAgICB9LFxuICB9O1xuXG4gIHB1YmxpYyBzZXJpZXNDb2xvcnMgPSBPYmplY3QudmFsdWVzKHRoaXMud2luZG93UmVmLmdldENTU0NvbG9yU3R5bGVzKCdjaGFydHMtc2VyaWVzJykpO1xuICBwdWJsaWMgb2JzZXJ2ZVRoZW1lQ2hhbmdpbmckOiBPYnNlcnZhYmxlPE11dGF0aW9uUmVjb3JkIHwgVGhlbWU+ID0gdGhpcy5kb2N1bWVudC5ib2R5LmNsYXNzTmFtZS5pbmNsdWRlcygnc2ItJylcbiAgICA/IHRoaXMuYnVpbGRCb2R5T2JzZXJ2ZXIoKS5waXBlKGRpc3RpbmN0VW50aWxDaGFuZ2VkKCkpXG4gICAgOiB0aGlzLnRoZW1pbmdTZXJ2aWNlLnRoZW1lJDtcblxuICBwdWJsaWMgc2V0VGhlbWUoY2hhcnRDb25mOiBDaGFydENvbmZpZ3VyYXRpb24pIHtcbiAgICBjb25zdCB0eXBlOiBDaGFydFR5cGUgPSAoY2hhcnRDb25mICYmIGNoYXJ0Q29uZlsndHlwZSddKSB8fCAnYmFyJztcbiAgICB0aGlzLmNvcmVDaGFydFRoZW1lU2VydmljZS5zZXRDb2xvcnNjaGVtZXNPcHRpb25zKHRoaXMudGhlbWVDb2xvcnNPdmVycmlkZXModHlwZSkpO1xuICB9XG5cbiAgcHJpdmF0ZSB0aGVtZUNvbG9yc092ZXJyaWRlcyh0eXBlPzogQ2hhcnRUeXBlKTogQ2hhcnRDb25maWd1cmF0aW9uWydvcHRpb25zJ10ge1xuICAgIGNvbnN0IHNjYWxlcyA9XG4gICAgICB0eXBlID09PSAncGllJyB8fCB0eXBlID09PSAnZG91Z2hudXQnXG4gICAgICAgID8gdW5kZWZpbmVkXG4gICAgICAgIDoge1xuICAgICAgICAgICAgeDoge1xuICAgICAgICAgICAgICB0aWNrczogeyBjb2xvcjogdGhpcy53aW5kb3dSZWYuZ2V0Q1NTVmFyaWFibGUoJ2JsdWUtNzAwJykgfSxcbiAgICAgICAgICAgICAgZ3JpZDogeyBjb2xvcjogdGhpcy53aW5kb3dSZWYuZ2V0Q1NTVmFyaWFibGUoJ2dyYXktMjAwJykgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB5OiB7XG4gICAgICAgICAgICAgIHRpY2tzOiB7IGNvbG9yOiB0aGlzLndpbmRvd1JlZi5nZXRDU1NWYXJpYWJsZSgnYmx1ZS03MDAnKSB9LFxuICAgICAgICAgICAgICBncmlkOiB7IGNvbG9yOiB0aGlzLndpbmRvd1JlZi5nZXRDU1NWYXJpYWJsZSgnZ3JheS0yMDAnKSB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9O1xuICAgIHJldHVybiB7XG4gICAgICBjb2xvcjogdGhpcy53aW5kb3dSZWYuZ2V0Q1NTVmFyaWFibGUoJ2JsdWUtNzAwJyksXG4gICAgICBzY2FsZXMsXG4gICAgICBwbHVnaW5zOiB7XG4gICAgICAgIGNvbG9yczoge1xuICAgICAgICAgIGZvcmNlT3ZlcnJpZGU6IHRydWUsXG4gICAgICAgIH0sXG4gICAgICAgIGxlZ2VuZDoge30sXG4gICAgICB9LFxuICAgIH07XG4gIH1cblxuICBwcml2YXRlIGJ1aWxkQm9keU9ic2VydmVyKCk6IE9ic2VydmFibGU8TXV0YXRpb25SZWNvcmQ+IHtcbiAgICByZXR1cm4gbmV3IE9ic2VydmFibGUoKG9ic2VydmVyKSA9PiB7XG4gICAgICBjb25zdCBtdXRhdGlvbjogTXV0YXRpb25PYnNlcnZlciA9IGNyZWF0ZU11dGF0aW9uT2JzZXJ2ZXIob2JzZXJ2ZXIsIChtdXRhdGlvbnMpID0+IG11dGF0aW9ucy5zb21lKCh7IHR5cGUgfSkgPT4gdHlwZSA9PT0gJ2F0dHJpYnV0ZXMnKSk7XG4gICAgICBtdXRhdGlvbi5vYnNlcnZlKHRoaXMuZG9jdW1lbnQuYm9keSwgeyBhdHRyaWJ1dGVzOiB0cnVlIH0pO1xuICAgICAgcmV0dXJuICgpID0+IG11dGF0aW9uLmRpc2Nvbm5lY3QoKTtcbiAgICB9KTtcbiAgfVxufVxuIl19
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './index';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2R4LWFuZ3VsYXItY2hhcnRzLWNvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci9jaGFydHMtY29uZmlnL3NyYy9vZHgtYW5ndWxhci1jaGFydHMtY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vaW5kZXgnO1xuIl19
@@ -8,7 +8,8 @@ import * as i0 from "@angular/core";
8
8
  export class WindowRef {
9
9
  constructor() {
10
10
  this.title = inject(Title);
11
- this.nativeWindow = inject(DOCUMENT).defaultView ?? window;
11
+ this.document = inject(DOCUMENT);
12
+ this.nativeWindow = this.document.defaultView ?? window;
12
13
  this.isOnline$ = fromEvents(this.nativeWindow, 'offline', 'online').pipe(startWith(null), map(() => this.isOnline()), distinctUntilChanged(), shareReplay({ refCount: true }));
13
14
  this.pageTitle$ = (inject(Router, { optional: true })?.events ?? EMPTY).pipe(filter((event) => event instanceof NavigationEnd), startWith(null), debounceTime(0), map(() => this.title.getTitle()), shareReplay({ refCount: true }));
14
15
  }
@@ -34,6 +35,28 @@ export class WindowRef {
34
35
  const componentType = reflectComponentType(type);
35
36
  return componentType ? this.nativeWindow.document.querySelector(componentType.selector) : null;
36
37
  }
38
+ getCSSVariable(name, element = this.document.body) {
39
+ return this.nativeWindow.getComputedStyle(element).getPropertyValue(`--${name}`).trim();
40
+ }
41
+ getCSSColorStyles(filter, selector = 'body') {
42
+ const selectorFilter = new RegExp(`^${selector}$`);
43
+ const nameFilter = new RegExp(`^--${filter}`);
44
+ const arr = Array.from(this.document.styleSheets)
45
+ .filter(({ href }) => !href || href.startsWith(this.nativeWindow.location.origin))
46
+ .map(({ cssRules }) => Array.from(cssRules)[0])
47
+ .filter((rule) => rule instanceof CSSStyleRule && selectorFilter.test(rule.selectorText.trim()))
48
+ .reduce((colors, rule) => {
49
+ Object.values(rule.style)
50
+ .map((style) => style.toString().trim())
51
+ .filter((name) => Boolean(name) && nameFilter.test(name))
52
+ .forEach((name) => {
53
+ const key = name.replace('--', '');
54
+ colors[key] = this.getCSSVariable(key);
55
+ });
56
+ return colors;
57
+ }, {});
58
+ return arr;
59
+ }
37
60
  }
38
61
  WindowRef.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: WindowRef, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
39
62
  WindowRef.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: WindowRef, providedIn: 'root' });
@@ -43,4 +66,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
43
66
  providedIn: 'root',
44
67
  }]
45
68
  }] });
46
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2luZG93LXJlZi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci9zcmMvbGliL3NlcnZpY2VzL3dpbmRvdy1yZWYudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLG9CQUFvQixFQUFRLE1BQU0sZUFBZSxDQUFDO0FBQy9FLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNsRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsWUFBWSxFQUFFLG9CQUFvQixFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7O0FBS3RHLE1BQU0sT0FBTyxTQUFTO0lBSHRCO1FBSW1CLFVBQUssR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDdkIsaUJBQVksR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsV0FBVyxJQUFJLE1BQU0sQ0FBQztRQUN0RCxjQUFTLEdBQUcsVUFBVSxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsU0FBUyxFQUFFLFFBQVEsQ0FBQyxDQUFDLElBQUksQ0FDakYsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUNmLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsRUFDMUIsb0JBQW9CLEVBQUUsRUFDdEIsV0FBVyxDQUFDLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDLENBQ2hDLENBQUM7UUFDYyxlQUFVLEdBQUcsQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDLEVBQUUsTUFBTSxJQUFJLEtBQUssQ0FBQyxDQUFDLElBQUksQ0FDckYsTUFBTSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLFlBQVksYUFBYSxDQUFDLEVBQ2pELFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFDZixZQUFZLENBQUMsQ0FBQyxDQUFDLEVBQ2YsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUMsRUFDaEMsV0FBVyxDQUFDLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDLENBQ2hDLENBQUM7S0ErQkg7SUE3QkMsSUFBVyxRQUFRO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUM7SUFDcEMsQ0FBQztJQUVNLFFBQVE7UUFDYixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQztJQUM1QyxDQUFDO0lBRU0sV0FBVztRQUNoQixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQztJQUM5QyxDQUFDO0lBRU0sZUFBZTtRQUNwQixPQUFPLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDMUQsQ0FBQztJQUVNLFNBQVM7UUFDZCxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDO0lBQzlCLENBQUM7SUFFTSxVQUFVO1FBQ2YsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sRUFBRSxDQUFDO0lBQ2hDLENBQUM7SUFFTSxnQkFBZ0IsQ0FBSSxJQUFhO1FBQ3RDLE1BQU0sYUFBYSxHQUFHLG9CQUFvQixDQUFDLElBQUksQ0FBQyxDQUFDO1FBRWpELE9BQU8sYUFBYSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFDakcsQ0FBQzs7c0dBN0NVLFNBQVM7MEdBQVQsU0FBUyxjQUZSLE1BQU07MkZBRVAsU0FBUztrQkFIckIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBET0NVTUVOVCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUsIHJlZmxlY3RDb21wb25lbnRUeXBlLCBUeXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUaXRsZSB9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xuaW1wb3J0IHsgTmF2aWdhdGlvbkVuZCwgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IGZyb21FdmVudHMgfSBmcm9tICdAb2R4L2FuZ3VsYXIvcnhqcyc7XG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUsIGRpc3RpbmN0VW50aWxDaGFuZ2VkLCBFTVBUWSwgZmlsdGVyLCBtYXAsIHNoYXJlUmVwbGF5LCBzdGFydFdpdGggfSBmcm9tICdyeGpzJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIFdpbmRvd1JlZiB7XG4gIHByaXZhdGUgcmVhZG9ubHkgdGl0bGUgPSBpbmplY3QoVGl0bGUpO1xuICBwdWJsaWMgcmVhZG9ubHkgbmF0aXZlV2luZG93ID0gaW5qZWN0KERPQ1VNRU5UKS5kZWZhdWx0VmlldyA/PyB3aW5kb3c7XG4gIHB1YmxpYyByZWFkb25seSBpc09ubGluZSQgPSBmcm9tRXZlbnRzKHRoaXMubmF0aXZlV2luZG93LCAnb2ZmbGluZScsICdvbmxpbmUnKS5waXBlKFxuICAgIHN0YXJ0V2l0aChudWxsKSxcbiAgICBtYXAoKCkgPT4gdGhpcy5pc09ubGluZSgpKSxcbiAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgIHNoYXJlUmVwbGF5KHsgcmVmQ291bnQ6IHRydWUgfSlcbiAgKTtcbiAgcHVibGljIHJlYWRvbmx5IHBhZ2VUaXRsZSQgPSAoaW5qZWN0KFJvdXRlciwgeyBvcHRpb25hbDogdHJ1ZSB9KT8uZXZlbnRzID8/IEVNUFRZKS5waXBlKFxuICAgIGZpbHRlcigoZXZlbnQpID0+IGV2ZW50IGluc3RhbmNlb2YgTmF2aWdhdGlvbkVuZCksXG4gICAgc3RhcnRXaXRoKG51bGwpLFxuICAgIGRlYm91bmNlVGltZSgwKSxcbiAgICBtYXAoKCkgPT4gdGhpcy50aXRsZS5nZXRUaXRsZSgpKSxcbiAgICBzaGFyZVJlcGxheSh7IHJlZkNvdW50OiB0cnVlIH0pXG4gICk7XG5cbiAgcHVibGljIGdldCBsb2NhdGlvbigpOiBMb2NhdGlvbiB7XG4gICAgcmV0dXJuIHRoaXMubmF0aXZlV2luZG93LmxvY2F0aW9uO1xuICB9XG5cbiAgcHVibGljIGlzT25saW5lKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLm5hdGl2ZVdpbmRvdy5uYXZpZ2F0b3Iub25MaW5lO1xuICB9XG5cbiAgcHVibGljIGdldExhbmd1YWdlKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMubmF0aXZlV2luZG93Lm5hdmlnYXRvci5sYW5ndWFnZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRMYW5ndWFnZUNvZGUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5nZXRMYW5ndWFnZSgpLnNwbGl0KC8tfF8vKVswXS50b0xvd2VyQ2FzZSgpO1xuICB9XG5cbiAgcHVibGljIGdldE9yaWdpbigpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmxvY2F0aW9uLm9yaWdpbjtcbiAgfVxuXG4gIHB1YmxpYyByZWxvYWRQYWdlKCk6IHZvaWQge1xuICAgIHJldHVybiB0aGlzLmxvY2F0aW9uLnJlbG9hZCgpO1xuICB9XG5cbiAgcHVibGljIHF1ZXJ5QnlDb21wb25lbnQ8VD4odHlwZTogVHlwZTxUPik6IEhUTUxFbGVtZW50IHwgbnVsbCB7XG4gICAgY29uc3QgY29tcG9uZW50VHlwZSA9IHJlZmxlY3RDb21wb25lbnRUeXBlKHR5cGUpO1xuXG4gICAgcmV0dXJuIGNvbXBvbmVudFR5cGUgPyB0aGlzLm5hdGl2ZVdpbmRvdy5kb2N1bWVudC5xdWVyeVNlbGVjdG9yKGNvbXBvbmVudFR5cGUuc2VsZWN0b3IpIDogbnVsbDtcbiAgfVxufVxuIl19
69
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2luZG93LXJlZi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci9zcmMvbGliL3NlcnZpY2VzL3dpbmRvdy1yZWYudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLG9CQUFvQixFQUFRLE1BQU0sZUFBZSxDQUFDO0FBQy9FLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNsRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsWUFBWSxFQUFFLG9CQUFvQixFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7O0FBS3RHLE1BQU0sT0FBTyxTQUFTO0lBSHRCO1FBSW1CLFVBQUssR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDdkIsYUFBUSxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUM1QixpQkFBWSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxJQUFJLE1BQU0sQ0FBQztRQUNuRCxjQUFTLEdBQUcsVUFBVSxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsU0FBUyxFQUFFLFFBQVEsQ0FBQyxDQUFDLElBQUksQ0FDakYsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUNmLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsRUFDMUIsb0JBQW9CLEVBQUUsRUFDdEIsV0FBVyxDQUFDLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDLENBQ2hDLENBQUM7UUFD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O1lBQy9DLE1BQU0sQ0FBQyxNQUFNLENBQUUsSUFBcUIsQ0FBQyxLQUFLLENBQUM7aUJBQ3hDLEdBQUcsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDLElBQUksRUFBRSxDQUFDO2lCQUN2QyxNQUFNLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO2lCQUN4RCxPQUFPLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTtnQkFDaEIsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUM7Z0JBQ25DLE1BQU0sQ0FBQyxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ3pDLENBQUMsQ0FBQyxDQUFDO1lBQ0wsT0FBTyxNQUFNLENBQUM7UUFDaEIsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ1QsT0FBTyxHQUFHLENBQUM7SUFDYixDQUFDOztzR0F0RVUsU0FBUzswR0FBVCxTQUFTLGNBRlIsTUFBTTsyRkFFUCxTQUFTO2tCQUhyQixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERPQ1VNRU5UIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IGluamVjdCwgSW5qZWN0YWJsZSwgcmVmbGVjdENvbXBvbmVudFR5cGUsIFR5cGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFRpdGxlIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XG5pbXBvcnQgeyBOYXZpZ2F0aW9uRW5kLCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgZnJvbUV2ZW50cyB9IGZyb20gJ0BvZHgvYW5ndWxhci9yeGpzJztcbmltcG9ydCB7IGRlYm91bmNlVGltZSwgZGlzdGluY3RVbnRpbENoYW5nZWQsIEVNUFRZLCBmaWx0ZXIsIG1hcCwgc2hhcmVSZXBsYXksIHN0YXJ0V2l0aCB9IGZyb20gJ3J4anMnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgV2luZG93UmVmIHtcbiAgcHJpdmF0ZSByZWFkb25seSB0aXRsZSA9IGluamVjdChUaXRsZSk7XG4gIHB1YmxpYyByZWFkb25seSBkb2N1bWVudCA9IGluamVjdChET0NVTUVOVCk7XG4gIHB1YmxpYyByZWFkb25seSBuYXRpdmVXaW5kb3cgPSB0aGlzLmRvY3VtZW50LmRlZmF1bHRWaWV3ID8/IHdpbmRvdztcbiAgcHVibGljIHJlYWRvbmx5IGlzT25saW5lJCA9IGZyb21FdmVudHModGhpcy5uYXRpdmVXaW5kb3csICdvZmZsaW5lJywgJ29ubGluZScpLnBpcGUoXG4gICAgc3RhcnRXaXRoKG51bGwpLFxuICAgIG1hcCgoKSA9PiB0aGlzLmlzT25saW5lKCkpLFxuICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgc2hhcmVSZXBsYXkoeyByZWZDb3VudDogdHJ1ZSB9KVxuICApO1xuICBwdWJsaWMgcmVhZG9ubHkgcGFnZVRpdGxlJCA9IChpbmplY3QoUm91dGVyLCB7IG9wdGlvbmFsOiB0cnVlIH0pPy5ldmVudHMgPz8gRU1QVFkpLnBpcGUoXG4gICAgZmlsdGVyKChldmVudCkgPT4gZXZlbnQgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uRW5kKSxcbiAgICBzdGFydFdpdGgobnVsbCksXG4gICAgZGVib3VuY2VUaW1lKDApLFxuICAgIG1hcCgoKSA9PiB0aGlzLnRpdGxlLmdldFRpdGxlKCkpLFxuICAgIHNoYXJlUmVwbGF5KHsgcmVmQ291bnQ6IHRydWUgfSlcbiAgKTtcblxuICBwdWJsaWMgZ2V0IGxvY2F0aW9uKCk6IExvY2F0aW9uIHtcbiAgICByZXR1cm4gdGhpcy5uYXRpdmVXaW5kb3cubG9jYXRpb247XG4gIH1cblxuICBwdWJsaWMgaXNPbmxpbmUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMubmF0aXZlV2luZG93Lm5hdmlnYXRvci5vbkxpbmU7XG4gIH1cblxuICBwdWJsaWMgZ2V0TGFuZ3VhZ2UoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5uYXRpdmVXaW5kb3cubmF2aWdhdG9yLmxhbmd1YWdlO1xuICB9XG5cbiAgcHVibGljIGdldExhbmd1YWdlQ29kZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmdldExhbmd1YWdlKCkuc3BsaXQoLy18Xy8pWzBdLnRvTG93ZXJDYXNlKCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0T3JpZ2luKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMubG9jYXRpb24ub3JpZ2luO1xuICB9XG5cbiAgcHVibGljIHJlbG9hZFBhZ2UoKTogdm9pZCB7XG4gICAgcmV0dXJuIHRoaXMubG9jYXRpb24ucmVsb2FkKCk7XG4gIH1cblxuICBwdWJsaWMgcXVlcnlCeUNvbXBvbmVudDxUPih0eXBlOiBUeXBlPFQ+KTogSFRNTEVsZW1lbnQgfCBudWxsIHtcbiAgICBjb25zdCBjb21wb25lbnRUeXBlID0gcmVmbGVjdENvbXBvbmVudFR5cGUodHlwZSk7XG5cbiAgICByZXR1cm4gY29tcG9uZW50VHlwZSA/IHRoaXMubmF0aXZlV2luZG93LmRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoY29tcG9uZW50VHlwZS5zZWxlY3RvcikgOiBudWxsO1xuICB9XG5cbiAgcHVibGljIGdldENTU1ZhcmlhYmxlKG5hbWU6IHN0cmluZywgZWxlbWVudDogSFRNTEVsZW1lbnQgPSB0aGlzLmRvY3VtZW50LmJvZHkpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLm5hdGl2ZVdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGVsZW1lbnQpLmdldFByb3BlcnR5VmFsdWUoYC0tJHtuYW1lfWApLnRyaW0oKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRDU1NDb2xvclN0eWxlcyhmaWx0ZXI6IHN0cmluZywgc2VsZWN0b3IgPSAnYm9keScpOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+IHtcbiAgICBjb25zdCBzZWxlY3RvckZpbHRlciA9IG5ldyBSZWdFeHAoYF4ke3NlbGVjdG9yfSRgKTtcbiAgICBjb25zdCBuYW1lRmlsdGVyID0gbmV3IFJlZ0V4cChgXi0tJHtmaWx0ZXJ9YCk7XG4gICAgY29uc3QgYXJyID0gQXJyYXkuZnJvbSh0aGlzLmRvY3VtZW50LnN0eWxlU2hlZXRzKVxuICAgICAgLmZpbHRlcigoeyBocmVmIH0pID0+ICFocmVmIHx8IGhyZWYuc3RhcnRzV2l0aCh0aGlzLm5hdGl2ZVdpbmRvdy5sb2NhdGlvbi5vcmlnaW4pKVxuICAgICAgLm1hcCgoeyBjc3NSdWxlcyB9KSA9PiBBcnJheS5mcm9tKGNzc1J1bGVzKVswXSlcbiAgICAgIC5maWx0ZXIoKHJ1bGUpID0+IHJ1bGUgaW5zdGFuY2VvZiBDU1NTdHlsZVJ1bGUgJiYgc2VsZWN0b3JGaWx0ZXIudGVzdChydWxlLnNlbGVjdG9yVGV4dC50cmltKCkpKVxuICAgICAgLnJlZHVjZSgoY29sb3JzOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+LCBydWxlKSA9PiB7XG4gICAgICAgIE9iamVjdC52YWx1ZXMoKHJ1bGUgYXMgQ1NTU3R5bGVSdWxlKS5zdHlsZSlcbiAgICAgICAgICAubWFwKChzdHlsZSkgPT4gc3R5bGUudG9TdHJpbmcoKS50cmltKCkpXG4gICAgICAgICAgLmZpbHRlcigobmFtZSkgPT4gQm9vbGVhbihuYW1lKSAmJiBuYW1lRmlsdGVyLnRlc3QobmFtZSkpXG4gICAgICAgICAgLmZvckVhY2goKG5hbWUpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGtleSA9IG5hbWUucmVwbGFjZSgnLS0nLCAnJyk7XG4gICAgICAgICAgICBjb2xvcnNba2V5XSA9IHRoaXMuZ2V0Q1NTVmFyaWFibGUoa2V5KTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuIGNvbG9ycztcbiAgICAgIH0sIHt9KTtcbiAgICByZXR1cm4gYXJyO1xuICB9XG59XG4iXX0=
@@ -42,6 +42,18 @@ export function createResizeObserver(callback) {
42
42
  return { observe: () => void 0, disconnect: () => void 0, unobserve: () => void 0 };
43
43
  }
44
44
  }
45
+ export function createMutationObserver(observer, callback) {
46
+ try {
47
+ return new MutationObserver((mutations) => {
48
+ if (callback(mutations)) {
49
+ observer.next(mutations[0]);
50
+ }
51
+ });
52
+ }
53
+ catch (error) {
54
+ return { disconnect: () => void 0, observe: () => void 0, takeRecords: () => [] };
55
+ }
56
+ }
45
57
  export function containsElement(parent, other, inclusive = true) {
46
58
  if (!parent || !other)
47
59
  return false;
@@ -49,4 +61,4 @@ export function containsElement(parent, other, inclusive = true) {
49
61
  return false;
50
62
  return parent.contains(other);
51
63
  }
52
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9tLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyL3V0aWxzL3NyYy9saWIvaGVscGVycy9kb20udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFbkQsTUFBTSxVQUFVLFdBQVcsQ0FBQyxPQUFvQixFQUFFLE1BQXVGO0lBQ3ZJLE1BQU0sQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsQ0FBQztBQUN2QyxDQUFDO0FBRUQsTUFBTSxVQUFVLHdCQUF3QixDQUFDLEtBQWM7SUFDckQsT0FBTyxnQ0FBZ0MsQ0FBQyxLQUFLLENBQUMsSUFBSSxPQUFPLENBQUM7QUFDNUQsQ0FBQztBQUVELE1BQU0sVUFBVSxnQ0FBZ0MsQ0FBQyxLQUFjO0lBQzdELE9BQU8sS0FBSyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztBQUMvQixDQUFDO0FBRUQsTUFBTSxVQUFVLEVBQUUsQ0FBQyxLQUFjO0lBQy9CLE9BQU8sUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7QUFDaEQsQ0FBQztBQUVELE1BQU0sVUFBVSxZQUFZLENBQUMsQ0FBYSxFQUFFLENBQWE7SUFDdkQsT0FBTyxlQUFlLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQztBQUN0QyxDQUFDO0FBRUQsTUFBTSxVQUFVLHFCQUFxQixDQUFDLE9BQW9CLEVBQUUsUUFBaUI7SUFDM0UsSUFBSSxRQUFRLEVBQUU7UUFDWixXQUFXLENBQUMsT0FBTyxFQUFFLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxDQUFDLENBQUM7S0FDOUM7U0FBTTtRQUNMLGlCQUFpQixDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQzNCLFdBQVcsQ0FBQyxPQUFPLEVBQUUsRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztLQUM1QztBQUNILENBQUM7QUFFRCxNQUFNLFVBQVUsaUJBQWlCLENBQUMsT0FBb0I7SUFDcEQsT0FBTyxDQUFDLFlBQVksQ0FBQztBQUN2QixDQUFDO0FBRUQsTUFBTSxVQUFVLFlBQVksQ0FBQyxPQUFvQixFQUFFLFNBQWlCLEVBQUUsS0FBZTtJQUNuRixJQUFJLFFBQVEsQ0FBQyxLQUFLLENBQUMsRUFBRTtRQUNuQixPQUFPLENBQUMsWUFBWSxDQUFDLFNBQVMsRUFBRSxLQUFLLENBQUMsQ0FBQztLQUN4QztTQUFNO1FBQ0wsT0FBTyxDQUFDLGVBQWUsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDO0tBQzdDO0FBQ0gsQ0FBQztBQUVELE1BQU0sVUFBVSxvQkFBb0IsQ0FBQyxRQUFnQztJQUNuRSxJQUFJO1FBQ0YsT0FBTyxJQUFJLGNBQWMsQ0FBQyxRQUFRLENBQUMsQ0FBQztLQUNyQztJQUFDLE1BQU07UUFDTixPQUFPLEVBQUUsT0FBTyxFQUFFLEdBQUcsRUFBRSxDQUFDLEtBQUssQ0FBQyxFQUFFLFVBQVUsRUFBRSxHQUFHLEVBQUUsQ0FBQyxLQUFLLENBQUMsRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztLQUNyRjtBQUNILENBQUM7QUFFRCxNQUFNLFVBQVUsZUFBZSxDQUFDLE1BQXVCLEVBQUUsS0FBc0IsRUFBRSxTQUFTLEdBQUcsSUFBSTtJQUMvRixJQUFJLENBQUMsTUFBTSxJQUFJLENBQUMsS0FBSztRQUFFLE9BQU8sS0FBSyxDQUFDO0lBQ3BDLElBQUksQ0FBQyxTQUFTLElBQUksTUFBTSxLQUFLLEtBQUs7UUFBRSxPQUFPLEtBQUssQ0FBQztJQUNqRCxPQUFPLE1BQU0sQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7QUFDaEMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGlzTnVtYmVyLCBpc1N0cmluZyB9IGZyb20gJy4vdHlwZS1ndWFyZHMnO1xuXG5leHBvcnQgZnVuY3Rpb24gYXBwbHlTdHlsZXMoZWxlbWVudDogSFRNTEVsZW1lbnQsIHN0eWxlczogUGFydGlhbDxDU1NTdHlsZURlY2xhcmF0aW9uIHwgUmVjb3JkPGtleW9mIENTU1N0eWxlRGVjbGFyYXRpb24sIHN0cmluZyB8IG51bGw+Pik6IHZvaWQge1xuICBPYmplY3QuYXNzaWduKGVsZW1lbnQuc3R5bGUsIHN0eWxlcyk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBib29sZWFuVG9BdHRyaWJ1dGVTdHJpbmcoc3RhdGU6IGJvb2xlYW4pOiBzdHJpbmcge1xuICByZXR1cm4gYm9vbGVhblRvT3B0aW9uYWxBdHRyaWJ1dGVTdHJpbmcoc3RhdGUpID8/ICdmYWxzZSc7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBib29sZWFuVG9PcHRpb25hbEF0dHJpYnV0ZVN0cmluZyhzdGF0ZTogYm9vbGVhbik6IHN0cmluZyB8IG51bGwge1xuICByZXR1cm4gc3RhdGUgPyAndHJ1ZScgOiBudWxsO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcHgodmFsdWU6IHVua25vd24pOiBgJHtudW1iZXJ9cHhgIHtcbiAgcmV0dXJuIGlzTnVtYmVyKHZhbHVlKSA/IGAke3ZhbHVlfXB4YCA6ICcwcHgnO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gY3NzVHJhbnNsYXRlKHg6IHN0cmluZyB8IDAsIHk6IHN0cmluZyB8IDApOiBgdHJhbnNsYXRlM2QoJHtzdHJpbmcgfCAwfSwgJHtzdHJpbmcgfCAwfSwgMClgIHtcbiAgcmV0dXJuIGB0cmFuc2xhdGUzZCgke3h9LCAke3l9LCAwKWA7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBkaXNhYmxlQ1NTVHJhbnNpdGlvbnMoZWxlbWVudDogSFRNTEVsZW1lbnQsIGRpc2FibGVkOiBib29sZWFuKTogdm9pZCB7XG4gIGlmIChkaXNhYmxlZCkge1xuICAgIGFwcGx5U3R5bGVzKGVsZW1lbnQsIHsgdHJhbnNpdGlvbjogJ25vbmUnIH0pO1xuICB9IGVsc2Uge1xuICAgIGZvcmNlTGF5b3V0UmVmbG93KGVsZW1lbnQpO1xuICAgIGFwcGx5U3R5bGVzKGVsZW1lbnQsIHsgdHJhbnNpdGlvbjogbnVsbCB9KTtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gZm9yY2VMYXlvdXRSZWZsb3coZWxlbWVudDogSFRNTEVsZW1lbnQpOiB2b2lkIHtcbiAgZWxlbWVudC5vZmZzZXRIZWlnaHQ7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBzZXRBdHRyaWJ1dGUoZWxlbWVudDogSFRNTEVsZW1lbnQsIGF0dHJpYnV0ZTogc3RyaW5nLCB2YWx1ZT86IHVua25vd24pIHtcbiAgaWYgKGlzU3RyaW5nKHZhbHVlKSkge1xuICAgIGVsZW1lbnQuc2V0QXR0cmlidXRlKGF0dHJpYnV0ZSwgdmFsdWUpO1xuICB9IGVsc2Uge1xuICAgIGVsZW1lbnQudG9nZ2xlQXR0cmlidXRlKGF0dHJpYnV0ZSwgISF2YWx1ZSk7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZVJlc2l6ZU9ic2VydmVyKGNhbGxiYWNrOiBSZXNpemVPYnNlcnZlckNhbGxiYWNrKTogUmVzaXplT2JzZXJ2ZXIge1xuICB0cnkge1xuICAgIHJldHVybiBuZXcgUmVzaXplT2JzZXJ2ZXIoY2FsbGJhY2spO1xuICB9IGNhdGNoIHtcbiAgICByZXR1cm4geyBvYnNlcnZlOiAoKSA9PiB2b2lkIDAsIGRpc2Nvbm5lY3Q6ICgpID0+IHZvaWQgMCwgdW5vYnNlcnZlOiAoKSA9PiB2b2lkIDAgfTtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gY29udGFpbnNFbGVtZW50KHBhcmVudD86IEVsZW1lbnQgfCBudWxsLCBvdGhlcj86IEVsZW1lbnQgfCBudWxsLCBpbmNsdXNpdmUgPSB0cnVlKTogYm9vbGVhbiB7XG4gIGlmICghcGFyZW50IHx8ICFvdGhlcikgcmV0dXJuIGZhbHNlO1xuICBpZiAoIWluY2x1c2l2ZSAmJiBwYXJlbnQgPT09IG90aGVyKSByZXR1cm4gZmFsc2U7XG4gIHJldHVybiBwYXJlbnQuY29udGFpbnMob3RoZXIpO1xufVxuIl19
64
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9tLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyL3V0aWxzL3NyYy9saWIvaGVscGVycy9kb20udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFbkQsTUFBTSxVQUFVLFdBQVcsQ0FBQyxPQUFvQixFQUFFLE1BQXVGO0lBQ3ZJLE1BQU0sQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsQ0FBQztBQUN2QyxDQUFDO0FBRUQsTUFBTSxVQUFVLHdCQUF3QixDQUFDLEtBQWM7SUFDckQsT0FBTyxnQ0FBZ0MsQ0FBQyxLQUFLLENBQUMsSUFBSSxPQUFPLENBQUM7QUFDNUQsQ0FBQztBQUVELE1BQU0sVUFBVSxnQ0FBZ0MsQ0FBQyxLQUFjO0lBQzdELE9BQU8sS0FBSyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztBQUMvQixDQUFDO0FBRUQsTUFBTSxVQUFVLEVBQUUsQ0FBQyxLQUFjO0lBQy9CLE9BQU8sUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7QUFDaEQsQ0FBQztBQUVELE1BQU0sVUFBVSxZQUFZLENBQUMsQ0FBYSxFQUFFLENBQWE7SUFDdkQsT0FBTyxlQUFlLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQztBQUN0QyxDQUFDO0FBRUQsTUFBTSxVQUFVLHFCQUFxQixDQUFDLE9BQW9CLEVBQUUsUUFBaUI7SUFDM0UsSUFBSSxRQUFRLEVBQUU7UUFDWixXQUFXLENBQUMsT0FBTyxFQUFFLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxDQUFDLENBQUM7S0FDOUM7U0FBTTtRQUNMLGlCQUFpQixDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQzNCLFdBQVcsQ0FBQyxPQUFPLEVBQUUsRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztLQUM1QztBQUNILENBQUM7QUFFRCxNQUFNLFVBQVUsaUJBQWlCLENBQUMsT0FBb0I7SUFDcEQsT0FBTyxDQUFDLFlBQVksQ0FBQztBQUN2QixDQUFDO0FBRUQsTUFBTSxVQUFVLFlBQVksQ0FBQyxPQUFvQixFQUFFLFNBQWlCLEVBQUUsS0FBZTtJQUNuRixJQUFJLFFBQVEsQ0FBQyxLQUFLLENBQUMsRUFBRTtRQUNuQixPQUFPLENBQUMsWUFBWSxDQUFDLFNBQVMsRUFBRSxLQUFLLENBQUMsQ0FBQztLQUN4QztTQUFNO1FBQ0wsT0FBTyxDQUFDLGVBQWUsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDO0tBQzdDO0FBQ0gsQ0FBQztBQUVELE1BQU0sVUFBVSxvQkFBb0IsQ0FBQyxRQUFnQztJQUNuRSxJQUFJO1FBQ0YsT0FBTyxJQUFJLGNBQWMsQ0FBQyxRQUFRLENBQUMsQ0FBQztLQUNyQztJQUFDLE1BQU07UUFDTixPQUFPLEVBQUUsT0FBTyxFQUFFLEdBQUcsRUFBRSxDQUFDLEtBQUssQ0FBQyxFQUFFLFVBQVUsRUFBRSxHQUFHLEVBQUUsQ0FBQyxLQUFLLENBQUMsRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztLQUNyRjtBQUNILENBQUM7QUFFRCxNQUFNLFVBQVUsc0JBQXNCLENBQUMsUUFBb0MsRUFBRSxRQUFrRDtJQUM3SCxJQUFJO1FBQ0YsT0FBTyxJQUFJLGdCQUFnQixDQUFDLENBQUMsU0FBUyxFQUFFLEVBQUU7WUFDeEMsSUFBSSxRQUFRLENBQUMsU0FBUyxDQUFDLEVBQUU7Z0JBQ3ZCLFFBQVEsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7YUFDN0I7UUFDSCxDQUFDLENBQUMsQ0FBQztLQUNKO0lBQUMsT0FBTyxLQUFLLEVBQUU7UUFDZCxPQUFPLEVBQUUsVUFBVSxFQUFFLEdBQUcsRUFBRSxDQUFDLEtBQUssQ0FBQyxFQUFFLE9BQU8sRUFBRSxHQUFHLEVBQUUsQ0FBQyxLQUFLLENBQUMsRUFBRSxXQUFXLEVBQUUsR0FBRyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUM7S0FDbkY7QUFDSCxDQUFDO0FBRUQsTUFBTSxVQUFVLGVBQWUsQ0FBQyxNQUF1QixFQUFFLEtBQXNCLEVBQUUsU0FBUyxHQUFHLElBQUk7SUFDL0YsSUFBSSxDQUFDLE1BQU0sSUFBSSxDQUFDLEtBQUs7UUFBRSxPQUFPLEtBQUssQ0FBQztJQUNwQyxJQUFJLENBQUMsU0FBUyxJQUFJLE1BQU0sS0FBSyxLQUFLO1FBQUUsT0FBTyxLQUFLLENBQUM7SUFDakQsT0FBTyxNQUFNLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO0FBQ2hDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTdWJzY3JpYmVyIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBpc051bWJlciwgaXNTdHJpbmcgfSBmcm9tICcuL3R5cGUtZ3VhcmRzJztcblxuZXhwb3J0IGZ1bmN0aW9uIGFwcGx5U3R5bGVzKGVsZW1lbnQ6IEhUTUxFbGVtZW50LCBzdHlsZXM6IFBhcnRpYWw8Q1NTU3R5bGVEZWNsYXJhdGlvbiB8IFJlY29yZDxrZXlvZiBDU1NTdHlsZURlY2xhcmF0aW9uLCBzdHJpbmcgfCBudWxsPj4pOiB2b2lkIHtcbiAgT2JqZWN0LmFzc2lnbihlbGVtZW50LnN0eWxlLCBzdHlsZXMpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gYm9vbGVhblRvQXR0cmlidXRlU3RyaW5nKHN0YXRlOiBib29sZWFuKTogc3RyaW5nIHtcbiAgcmV0dXJuIGJvb2xlYW5Ub09wdGlvbmFsQXR0cmlidXRlU3RyaW5nKHN0YXRlKSA/PyAnZmFsc2UnO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gYm9vbGVhblRvT3B0aW9uYWxBdHRyaWJ1dGVTdHJpbmcoc3RhdGU6IGJvb2xlYW4pOiBzdHJpbmcgfCBudWxsIHtcbiAgcmV0dXJuIHN0YXRlID8gJ3RydWUnIDogbnVsbDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHB4KHZhbHVlOiB1bmtub3duKTogYCR7bnVtYmVyfXB4YCB7XG4gIHJldHVybiBpc051bWJlcih2YWx1ZSkgPyBgJHt2YWx1ZX1weGAgOiAnMHB4Jztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGNzc1RyYW5zbGF0ZSh4OiBzdHJpbmcgfCAwLCB5OiBzdHJpbmcgfCAwKTogYHRyYW5zbGF0ZTNkKCR7c3RyaW5nIHwgMH0sICR7c3RyaW5nIHwgMH0sIDApYCB7XG4gIHJldHVybiBgdHJhbnNsYXRlM2QoJHt4fSwgJHt5fSwgMClgO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZGlzYWJsZUNTU1RyYW5zaXRpb25zKGVsZW1lbnQ6IEhUTUxFbGVtZW50LCBkaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xuICBpZiAoZGlzYWJsZWQpIHtcbiAgICBhcHBseVN0eWxlcyhlbGVtZW50LCB7IHRyYW5zaXRpb246ICdub25lJyB9KTtcbiAgfSBlbHNlIHtcbiAgICBmb3JjZUxheW91dFJlZmxvdyhlbGVtZW50KTtcbiAgICBhcHBseVN0eWxlcyhlbGVtZW50LCB7IHRyYW5zaXRpb246IG51bGwgfSk7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGZvcmNlTGF5b3V0UmVmbG93KGVsZW1lbnQ6IEhUTUxFbGVtZW50KTogdm9pZCB7XG4gIGVsZW1lbnQub2Zmc2V0SGVpZ2h0O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gc2V0QXR0cmlidXRlKGVsZW1lbnQ6IEhUTUxFbGVtZW50LCBhdHRyaWJ1dGU6IHN0cmluZywgdmFsdWU/OiB1bmtub3duKSB7XG4gIGlmIChpc1N0cmluZyh2YWx1ZSkpIHtcbiAgICBlbGVtZW50LnNldEF0dHJpYnV0ZShhdHRyaWJ1dGUsIHZhbHVlKTtcbiAgfSBlbHNlIHtcbiAgICBlbGVtZW50LnRvZ2dsZUF0dHJpYnV0ZShhdHRyaWJ1dGUsICEhdmFsdWUpO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVSZXNpemVPYnNlcnZlcihjYWxsYmFjazogUmVzaXplT2JzZXJ2ZXJDYWxsYmFjayk6IFJlc2l6ZU9ic2VydmVyIHtcbiAgdHJ5IHtcbiAgICByZXR1cm4gbmV3IFJlc2l6ZU9ic2VydmVyKGNhbGxiYWNrKTtcbiAgfSBjYXRjaCB7XG4gICAgcmV0dXJuIHsgb2JzZXJ2ZTogKCkgPT4gdm9pZCAwLCBkaXNjb25uZWN0OiAoKSA9PiB2b2lkIDAsIHVub2JzZXJ2ZTogKCkgPT4gdm9pZCAwIH07XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZU11dGF0aW9uT2JzZXJ2ZXIob2JzZXJ2ZXI6IFN1YnNjcmliZXI8TXV0YXRpb25SZWNvcmQ+LCBjYWxsYmFjazogKG11dGF0aW9uczogTXV0YXRpb25SZWNvcmRbXSkgPT4gYm9vbGVhbik6IE11dGF0aW9uT2JzZXJ2ZXIge1xuICB0cnkge1xuICAgIHJldHVybiBuZXcgTXV0YXRpb25PYnNlcnZlcigobXV0YXRpb25zKSA9PiB7XG4gICAgICBpZiAoY2FsbGJhY2sobXV0YXRpb25zKSkge1xuICAgICAgICBvYnNlcnZlci5uZXh0KG11dGF0aW9uc1swXSk7XG4gICAgICB9XG4gICAgfSk7XG4gIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgcmV0dXJuIHsgZGlzY29ubmVjdDogKCkgPT4gdm9pZCAwLCBvYnNlcnZlOiAoKSA9PiB2b2lkIDAsIHRha2VSZWNvcmRzOiAoKSA9PiBbXSB9O1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjb250YWluc0VsZW1lbnQocGFyZW50PzogRWxlbWVudCB8IG51bGwsIG90aGVyPzogRWxlbWVudCB8IG51bGwsIGluY2x1c2l2ZSA9IHRydWUpOiBib29sZWFuIHtcbiAgaWYgKCFwYXJlbnQgfHwgIW90aGVyKSByZXR1cm4gZmFsc2U7XG4gIGlmICghaW5jbHVzaXZlICYmIHBhcmVudCA9PT0gb3RoZXIpIHJldHVybiBmYWxzZTtcbiAgcmV0dXJuIHBhcmVudC5jb250YWlucyhvdGhlcik7XG59XG4iXX0=
@@ -0,0 +1,171 @@
1
+ import * as i0 from '@angular/core';
2
+ import { inject, Injectable, Directive, NgModule } from '@angular/core';
3
+ import * as i1 from 'ng2-charts';
4
+ import { ThemeService, BaseChartDirective, NgChartsModule, NgChartsConfiguration } from 'ng2-charts';
5
+ import { createMutationObserver, untilDestroyed } from '@odx/angular/utils';
6
+ import { DOCUMENT } from '@angular/common';
7
+ import { WindowRef } from '@odx/angular';
8
+ import { ThemingService } from '@odx/angular/theming';
9
+ import { distinctUntilChanged, Observable } from 'rxjs';
10
+
11
+ /* eslint-disable @typescript-eslint/no-explicit-any */
12
+ class ChartsThemeServise {
13
+ constructor() {
14
+ this.coreChartThemeService = inject(ThemeService);
15
+ this.document = inject(DOCUMENT);
16
+ this.windowRef = inject(WindowRef);
17
+ this.themingService = inject(ThemingService);
18
+ this.getOverrides = {
19
+ borderColor: this.windowRef.getCSSVariable('gray-200'),
20
+ backgroundColor: 'rgba(0,0,0,0)',
21
+ color: this.windowRef.getCSSVariable('blue-700'),
22
+ font: {
23
+ family: 'Pangea',
24
+ size: 13.333,
25
+ },
26
+ plugins: {
27
+ colors: { enabled: false },
28
+ tooltip: {
29
+ backgroundColor: this.windowRef.getCSSVariable('blue-800'),
30
+ cornerRadius: 3,
31
+ },
32
+ },
33
+ datasets: {
34
+ line: {
35
+ backgroundColor: (context) => `${this.seriesColors[context.datasetIndex]}66`,
36
+ borderColor: (context) => `${this.seriesColors[context.datasetIndex]}`,
37
+ pointBackgroundColor: (context) => `${this.seriesColors[context.datasetIndex]}`,
38
+ pointBorderColor: '#fff',
39
+ },
40
+ bar: {
41
+ backgroundColor: (context) => `${this.seriesColors[context.datasetIndex]}99`,
42
+ borderColor: (context) => `${this.seriesColors[context.datasetIndex]}`,
43
+ },
44
+ doughnut: {
45
+ backgroundColor: (context) => `${this.seriesColors[context.dataIndex]}`,
46
+ borderColor: this.windowRef.getCSSVariable('gray-200'),
47
+ },
48
+ polarArea: {
49
+ backgroundColor: (context) => `${this.seriesColors[context.dataIndex]}99`,
50
+ borderColor: (context) => `${this.seriesColors[context.dataIndex]}`,
51
+ },
52
+ get pie() {
53
+ return this.doughnut;
54
+ },
55
+ get bubble() {
56
+ return this.doughnut;
57
+ },
58
+ get scatter() {
59
+ return this.doughnut;
60
+ },
61
+ get area() {
62
+ return this.polarArea;
63
+ },
64
+ get radar() {
65
+ return this.line;
66
+ },
67
+ },
68
+ };
69
+ this.seriesColors = Object.values(this.windowRef.getCSSColorStyles('charts-series'));
70
+ this.observeThemeChanging$ = this.document.body.className.includes('sb-')
71
+ ? this.buildBodyObserver().pipe(distinctUntilChanged())
72
+ : this.themingService.theme$;
73
+ }
74
+ setTheme(chartConf) {
75
+ const type = (chartConf && chartConf['type']) || 'bar';
76
+ this.coreChartThemeService.setColorschemesOptions(this.themeColorsOverrides(type));
77
+ }
78
+ themeColorsOverrides(type) {
79
+ const scales = type === 'pie' || type === 'doughnut'
80
+ ? undefined
81
+ : {
82
+ x: {
83
+ ticks: { color: this.windowRef.getCSSVariable('blue-700') },
84
+ grid: { color: this.windowRef.getCSSVariable('gray-200') },
85
+ },
86
+ y: {
87
+ ticks: { color: this.windowRef.getCSSVariable('blue-700') },
88
+ grid: { color: this.windowRef.getCSSVariable('gray-200') },
89
+ },
90
+ };
91
+ return {
92
+ color: this.windowRef.getCSSVariable('blue-700'),
93
+ scales,
94
+ plugins: {
95
+ colors: {
96
+ forceOverride: true,
97
+ },
98
+ legend: {},
99
+ },
100
+ };
101
+ }
102
+ buildBodyObserver() {
103
+ return new Observable((observer) => {
104
+ const mutation = createMutationObserver(observer, (mutations) => mutations.some(({ type }) => type === 'attributes'));
105
+ mutation.observe(this.document.body, { attributes: true });
106
+ return () => mutation.disconnect();
107
+ });
108
+ }
109
+ }
110
+ ChartsThemeServise.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ChartsThemeServise, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
111
+ ChartsThemeServise.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ChartsThemeServise, providedIn: 'root' });
112
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ChartsThemeServise, decorators: [{
113
+ type: Injectable,
114
+ args: [{ providedIn: 'root' }]
115
+ }] });
116
+
117
+ class ChartThemeDirective extends BaseChartDirective {
118
+ constructor(element, ngzone, parentThemeService) {
119
+ super(element, ngzone, parentThemeService);
120
+ this.chartsThemeServise = inject(ChartsThemeServise);
121
+ this.takeUntilDestroyed = untilDestroyed();
122
+ this.chartsThemeServise.observeThemeChanging$
123
+ .pipe(this.takeUntilDestroyed())
124
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
125
+ .subscribe(() => { var _a; return this.chartsThemeServise.setTheme((_a = this.chart) === null || _a === void 0 ? void 0 : _a.config); });
126
+ }
127
+ }
128
+ ChartThemeDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ChartThemeDirective, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }, { token: i1.ThemeService }], target: i0.ɵɵFactoryTarget.Directive });
129
+ ChartThemeDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.9", type: ChartThemeDirective, isStandalone: true, selector: "canvas[odxChart]", usesInheritance: true, ngImport: i0 });
130
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ChartThemeDirective, decorators: [{
131
+ type: Directive,
132
+ args: [{
133
+ selector: 'canvas[odxChart]',
134
+ standalone: true,
135
+ }]
136
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.NgZone }, { type: i1.ThemeService }]; } });
137
+
138
+ class ChartThemeModule {
139
+ }
140
+ ChartThemeModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ChartThemeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
141
+ ChartThemeModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: ChartThemeModule, imports: [NgChartsModule, ChartThemeDirective], exports: [NgChartsModule, ChartThemeDirective] });
142
+ ChartThemeModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ChartThemeModule, providers: [
143
+ {
144
+ provide: NgChartsConfiguration,
145
+ useFactory: (service) => ({ defaults: service.getOverrides, generateColors: false }),
146
+ deps: [ChartsThemeServise],
147
+ },
148
+ BaseChartDirective,
149
+ ], imports: [NgChartsModule, NgChartsModule] });
150
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ChartThemeModule, decorators: [{
151
+ type: NgModule,
152
+ args: [{
153
+ imports: [NgChartsModule, ChartThemeDirective],
154
+ providers: [
155
+ {
156
+ provide: NgChartsConfiguration,
157
+ useFactory: (service) => ({ defaults: service.getOverrides, generateColors: false }),
158
+ deps: [ChartsThemeServise],
159
+ },
160
+ BaseChartDirective,
161
+ ],
162
+ exports: [NgChartsModule, ChartThemeDirective],
163
+ }]
164
+ }] });
165
+
166
+ /**
167
+ * Generated bundle index. Do not edit.
168
+ */
169
+
170
+ export { ChartThemeDirective, ChartThemeModule, ChartsThemeServise };
171
+ //# sourceMappingURL=odx-angular-charts-config.mjs.map