diff --git a/apps/doc/project.json b/apps/doc/project.json
index b084bf3532..c8e273d54d 100644
--- a/apps/doc/project.json
+++ b/apps/doc/project.json
@@ -33,11 +33,6 @@
"glob": "**/*",
"input": "node_modules/@taiga-ui/icons/src",
"output": "assets/taiga-ui/icons"
- },
- {
- "glob": "**/*",
- "input": "libs/icons/base/src/styles/icons",
- "output": "assets/prizm-icons/fonts"
}
],
"styles": [
diff --git a/apps/doc/src/app/app.module.ts b/apps/doc/src/app/app.module.ts
index 0a245b77ae..1d2c8b4dcc 100644
--- a/apps/doc/src/app/app.module.ts
+++ b/apps/doc/src/app/app.module.ts
@@ -38,6 +38,7 @@ import { SetTaskModule } from './how-to-work/set-task/set-task.module';
import { IntroductionModule } from './forZIIoT/introduction/introduction.module';
import { LibraryRequirementsModule } from './forZIIoT/library-requirements/library-requirements.module';
import { PRIZM_ENGLISH_LANGUAGE, PRIZM_RUSSIAN_LANGUAGE, prizmLanguageSwitcher } from '@prizm-ui/i18n';
+import { ThemeTokenChanger } from './theme-token-changer/theme-token-changer.component';
registerLocaleData(localeRu);
@NgModule({
diff --git a/apps/doc/src/app/logo/logo.component.html b/apps/doc/src/app/logo/logo.component.html
index b66a8f1b72..6ace165966 100644
--- a/apps/doc/src/app/logo/logo.component.html
+++ b/apps/doc/src/app/logo/logo.component.html
@@ -2,8 +2,22 @@
-
-
+
+
+
+
+ {{ token }}
+
+
+
+
+ {{ token }}
+
+
+
diff --git a/apps/doc/src/app/theme-token-changer/theme-token-changer.component.less b/apps/doc/src/app/theme-token-changer/theme-token-changer.component.less
new file mode 100644
index 0000000000..13e96996d2
--- /dev/null
+++ b/apps/doc/src/app/theme-token-changer/theme-token-changer.component.less
@@ -0,0 +1,46 @@
+.logo-block {
+ margin-top: 44px;
+}
+
+.logo-block,
+.sub-text {
+ display: flex;
+ justify-content: space-between;
+ align-items: center;
+}
+
+.x-margin {
+ margin-left: 1.25rem;
+ margin-right: 1.25rem;
+}
+
+.sub-text {
+ margin-top: 14px;
+ color: var(--prizm-palette-gray-h750-dark);
+ margin-bottom: 32px;
+ text-align: left;
+}
+
+.icon {
+ cursor: pointer;
+ color: var(--prizm-text-icon-exception);
+
+ &:hover {
+ color: var(--prizm-status-info-primary-default);
+ }
+}
+
+.buttons-block {
+ display: flex;
+ gap: 0.5rem;
+ align-items: center;
+}
+
+.theme-tokens-updater {
+ color: white;
+ cursor: pointer;
+
+ &:hover {
+ color: var(--prizm-index-plan);
+ }
+}
diff --git a/apps/doc/src/app/theme-token-changer/theme-token-changer.component.ts b/apps/doc/src/app/theme-token-changer/theme-token-changer.component.ts
new file mode 100644
index 0000000000..b2686d5f3e
--- /dev/null
+++ b/apps/doc/src/app/theme-token-changer/theme-token-changer.component.ts
@@ -0,0 +1,61 @@
+import { ChangeDetectionStrategy, Component, ElementRef, Inject, OnInit, ViewChild } from '@angular/core';
+import {
+ PRIZM_THEME_TOKEN_BASE_VARIABLES,
+ PRIZM_THEME_TOKEN_PALETTE_VARIABLES,
+ PrizmThemeModule,
+ PrizmThemeService,
+} from '@prizm-ui/theme';
+import { LOCAL_STORAGE } from '@ng-web-apis/common';
+import {
+ PrizmIconsSvgRegistry,
+ prizmIconSvgOtherGitHub,
+ prizmIconSvgShapeGeometrySquareCirclePlusTriangleFill,
+} from '@prizm-ui/icons';
+import { PrizmLanguageSwitcher } from '@prizm-ui/i18n';
+import { PrizmAddonDocModule } from '@prizm-ui/doc';
+import { DOCUMENT, NgFor } from '@angular/common';
+
+@Component({
+ selector: 'prizm-doc-theme-token-changer',
+ templateUrl: './theme-token-changer.component.html',
+ styleUrls: ['./theme-token-changer.component.less'],
+ changeDetection: ChangeDetectionStrategy.OnPush,
+ standalone: true,
+ imports: [PrizmAddonDocModule, NgFor, PrizmThemeModule],
+})
+export class ThemeTokenChanger implements OnInit {
+ @ViewChild('prizmTheme') prizmThemeElement!: ElementRef;
+ readonly PRIZM_THEME_TOKEN_PALETTE_VARIABLES = PRIZM_THEME_TOKEN_PALETTE_VARIABLES;
+ readonly PRIZM_THEME_TOKEN_BASE_VARIABLES = PRIZM_THEME_TOKEN_BASE_VARIABLES;
+ readonly mapValue = new Map();
+
+ constructor(
+ public readonly themeService: PrizmThemeService,
+ @Inject(DOCUMENT) public readonly document: Document,
+ private readonly svgRegistry: PrizmIconsSvgRegistry
+ ) {
+ this.svgRegistry.registerIcons([
+ prizmIconSvgOtherGitHub,
+ prizmIconSvgShapeGeometrySquareCirclePlusTriangleFill,
+ ]);
+ }
+
+ ngOnInit(): void {
+ this.init();
+ }
+
+ public getTokenValue(token: string): string {
+ return this.mapValue.get(token) ?? '';
+ }
+
+ private init() {
+ this.addTokenValueToMap(PRIZM_THEME_TOKEN_PALETTE_VARIABLES);
+ this.addTokenValueToMap(PRIZM_THEME_TOKEN_BASE_VARIABLES);
+ }
+
+ private addTokenValueToMap(tokens: string[]) {
+ tokens.forEach((token: string) => {
+ this.mapValue.set(token, this.themeService.getTokenValue(token) ?? '');
+ });
+ }
+}
diff --git a/libs/theme/src/index.ts b/libs/theme/src/index.ts
index 4152de4a3f..bccc364231 100644
--- a/libs/theme/src/index.ts
+++ b/libs/theme/src/index.ts
@@ -1,3 +1,4 @@
export * from './lib/services';
export * from './lib/types';
export * from './lib/directive';
+export * from './lib/const';
diff --git a/libs/theme/src/lib/const.ts b/libs/theme/src/lib/const.ts
new file mode 100644
index 0000000000..9fad0d519d
--- /dev/null
+++ b/libs/theme/src/lib/const.ts
@@ -0,0 +1,385 @@
+export const PRIZM_THEME_TOKEN_PALETTE_VARIABLES = [
+ 'prizm-palette-shadow-dark',
+ 'prizm-palette-shadow-light',
+ 'prizm-palette-0-light',
+ 'prizm-palette-1200-light',
+ 'prizm-palette-gray-h50-light',
+ 'prizm-palette-gray-100-light',
+ 'prizm-palette-gray-h150-light',
+ 'prizm-palette-gray-200-light',
+ 'prizm-palette-gray-h250-light',
+ 'prizm-palette-gray-300-light',
+ 'prizm-palette-gray-h350-light',
+ 'prizm-palette-gray-400-light',
+ 'prizm-palette-gray-h450-light',
+ 'prizm-palette-gray-500-light',
+ 'prizm-palette-gray-h550-light',
+ 'prizm-palette-gray-600-light',
+ 'prizm-palette-gray-h650-light',
+ 'prizm-palette-gray-700-light',
+ 'prizm-palette-gray-h750-light',
+ 'prizm-palette-gray-800-light',
+ 'prizm-palette-gray-h850-light',
+ 'prizm-palette-gray-900-light',
+ 'prizm-palette-gray-h950-light',
+ 'prizm-palette-gray-1000-light',
+ 'prizm-palette-gray-h1050-light',
+ 'prizm-palette-gray-1100-light',
+ 'prizm-palette-gray-h1150-light',
+ 'prizm-palette-blue-h50-light',
+ 'prizm-palette-blue-100-light',
+ 'prizm-palette-blue-h150-light',
+ 'prizm-palette-blue-200-light',
+ 'prizm-palette-blue-h250-light',
+ 'prizm-palette-blue-300-light',
+ 'prizm-palette-blue-h350-light',
+ 'prizm-palette-blue-400-light',
+ 'prizm-palette-blue-h450-light',
+ 'prizm-palette-blue-500-light',
+ 'prizm-palette-blue-h550-light',
+ 'prizm-palette-blue-600-light',
+ 'prizm-palette-blue-h650-light',
+ 'prizm-palette-blue-700-light',
+ 'prizm-palette-blue-h750-light',
+ 'prizm-palette-blue-800-light',
+ 'prizm-palette-blue-h850-light',
+ 'prizm-palette-blue-900-light',
+ 'prizm-palette-blue-h950-light',
+ 'prizm-palette-blue-1000-light',
+ 'prizm-palette-blue-h1050-light',
+ 'prizm-palette-blue-1100-light',
+ 'prizm-palette-blue-h1150-light',
+ 'prizm-palette-green-h50-light',
+ 'prizm-palette-green-100-light',
+ 'prizm-palette-green-h150-light',
+ 'prizm-palette-green-200-light',
+ 'prizm-palette-green-h250-light',
+ 'prizm-palette-green-300-light',
+ 'prizm-palette-green-h350-light',
+ 'prizm-palette-green-400-light',
+ 'prizm-palette-green-h450-light',
+ 'prizm-palette-green-500-light',
+ 'prizm-palette-green-h550-light',
+ 'prizm-palette-green-600-light',
+ 'prizm-palette-green-h650-light',
+ 'prizm-palette-green-700-light',
+ 'prizm-palette-green-h750-light',
+ 'prizm-palette-green-800-light',
+ 'prizm-palette-green-h850-light',
+ 'prizm-palette-green-900-light',
+ 'prizm-palette-green-h950-light',
+ 'prizm-palette-green-1000-light',
+ 'prizm-palette-green-h1050-light',
+ 'prizm-palette-green-1100-light',
+ 'prizm-palette-green-h1150-light',
+ 'prizm-palette-yellow-h50-light',
+ 'prizm-palette-yellow-100-light',
+ 'prizm-palette-yellow-h150-light',
+ 'prizm-palette-yellow-200-light',
+ 'prizm-palette-yellow-h250-light',
+ 'prizm-palette-yellow-300-light',
+ 'prizm-palette-yellow-h350-light',
+ 'prizm-palette-yellow-400-light',
+ 'prizm-palette-yellow-h450-light',
+ 'prizm-palette-yellow-500-light',
+ 'prizm-palette-yellow-h550-light',
+ 'prizm-palette-yellow-600-light',
+ 'prizm-palette-yellow-h650-light',
+ 'prizm-palette-yellow-700-light',
+ 'prizm-palette-yellow-h750-light',
+ 'prizm-palette-yellow-800-light',
+ 'prizm-palette-yellow-h850-light',
+ 'prizm-palette-yellow-900-light',
+ 'prizm-palette-yellow-h950-light',
+ 'prizm-palette-yellow-1000-light',
+ 'prizm-palette-yellow-h1050-light',
+ 'prizm-palette-yellow-1100-light',
+ 'prizm-palette-yellow-h1150-light',
+ 'prizm-palette-orange-h50-light',
+ 'prizm-palette-orange-100-light',
+ 'prizm-palette-orange-h150-light',
+ 'prizm-palette-orange-200-light',
+ 'prizm-palette-orange-h250-light',
+ 'prizm-palette-orange-300-light',
+ 'prizm-palette-orange-h350-light',
+ 'prizm-palette-orange-400-light',
+ 'prizm-palette-orange-h450-light',
+ 'prizm-palette-orange-500-light',
+ 'prizm-palette-orange-h550-light',
+ 'prizm-palette-orange-600-light',
+ 'prizm-palette-orange-h650-light',
+ 'prizm-palette-orange-700-light',
+ 'prizm-palette-orange-h750-light',
+ 'prizm-palette-orange-800-light',
+ 'prizm-palette-orange-h850-light',
+ 'prizm-palette-orange-900-light',
+ 'prizm-palette-orange-h950-light',
+ 'prizm-palette-orange-1000-light',
+ 'prizm-palette-orange-h1050-light',
+ 'prizm-palette-orange-1100-light',
+ 'prizm-palette-orange-h1150-light',
+ 'prizm-palette-red-h50-light',
+ 'prizm-palette-red-100-light',
+ 'prizm-palette-red-h150-light',
+ 'prizm-palette-red-200-light',
+ 'prizm-palette-red-h250-light',
+ 'prizm-palette-red-300-light',
+ 'prizm-palette-red-h350-light',
+ 'prizm-palette-red-400-light',
+ 'prizm-palette-red-h450-light',
+ 'prizm-palette-red-500-light',
+ 'prizm-palette-red-h550-light',
+ 'prizm-palette-red-600-light',
+ 'prizm-palette-red-h650-light',
+ 'prizm-palette-red-700-light',
+ 'prizm-palette-red-h750-light',
+ 'prizm-palette-red-800-light',
+ 'prizm-palette-red-h850-light',
+ 'prizm-palette-red-900-light',
+ 'prizm-palette-red-h950-light',
+ 'prizm-palette-red-1000-light',
+ 'prizm-palette-red-h1050-light',
+ 'prizm-palette-red-1050-light',
+ 'prizm-palette-red-h1150-light',
+ 'prizm-palette-0-dark',
+ 'prizm-palette-1200-dark',
+ 'prizm-palette-gray-h50-dark',
+ 'prizm-palette-gray-100-dark',
+ 'prizm-palette-gray-h150-dark',
+ 'prizm-palette-gray-200-dark',
+ 'prizm-palette-gray-h250-dark',
+ 'prizm-palette-gray-300-dark',
+ 'prizm-palette-gray-h350-dark',
+ 'prizm-palette-gray-400-dark',
+ 'prizm-palette-gray-h450-dark',
+ 'prizm-palette-gray-500-dark',
+ 'prizm-palette-gray-h550-dark',
+ 'prizm-palette-gray-600-dark',
+ 'prizm-palette-gray-h650-dark',
+ 'prizm-palette-gray-700-dark',
+ 'prizm-palette-gray-h750-dark',
+ 'prizm-palette-gray-800-dark',
+ 'prizm-palette-gray-h850-dark',
+ 'prizm-palette-gray-900-dark',
+ 'prizm-palette-gray-h950-dark',
+ 'prizm-palette-gray-1000-dark',
+ 'prizm-palette-gray-h1050-dark',
+ 'prizm-palette-gray-1100-dark',
+ 'prizm-palette-gray-h1150-dark',
+ 'prizm-palette-blue-h50-dark',
+ 'prizm-palette-blue-100-dark',
+ 'prizm-palette-blue-h150-dark',
+ 'prizm-palette-blue-200-dark',
+ 'prizm-palette-blue-h250-dark',
+ 'prizm-palette-blue-300-dark',
+ 'prizm-palette-blue-h350-dark',
+ 'prizm-palette-blue-400-dark',
+ 'prizm-palette-blue-h450-dark',
+ 'prizm-palette-blue-500-dark',
+ 'prizm-palette-blue-h550-dark',
+ 'prizm-palette-blue-600-dark',
+ 'prizm-palette-blue-h650-dark',
+ 'prizm-palette-blue-700-dark',
+ 'prizm-palette-blue-h750-dark',
+ 'prizm-palette-blue-800-dark',
+ 'prizm-palette-blue-h850-dark',
+ 'prizm-palette-blue-900-dark',
+ 'prizm-palette-blue-h950-dark',
+ 'prizm-palette-blue-1000-dark',
+ 'prizm-palette-blue-h1050-dark',
+ 'prizm-palette-blue-1100-dark',
+ 'prizm-palette-blue-h1150-dark',
+ 'prizm-palette-green-h50-dark',
+ 'prizm-palette-green-100-dark',
+ 'prizm-palette-green-h150-dark',
+ 'prizm-palette-green-200-dark',
+ 'prizm-palette-green-h250-dark',
+ 'prizm-palette-green-300-dark',
+ 'prizm-palette-green-h350-dark',
+ 'prizm-palette-green-400-dark',
+ 'prizm-palette-green-h450-dark',
+ 'prizm-palette-green-500-dark',
+ 'prizm-palette-green-h550-dark',
+ 'prizm-palette-green-600-dark',
+ 'prizm-palette-green-h650-dark',
+ 'prizm-palette-green-700-dark',
+ 'prizm-palette-green-h750-dark',
+ 'prizm-palette-green-800-dark',
+ 'prizm-palette-green-h850-dark',
+ 'prizm-palette-green-900-dark',
+ 'prizm-palette-green-h950-dark',
+ 'prizm-palette-green-1000-dark',
+ 'prizm-palette-green-h1050-dark',
+ 'prizm-palette-green-1100-dark',
+ 'prizm-palette-green-h1150-dark',
+ 'prizm-palette-yellow-h50-dark',
+ 'prizm-palette-yellow-100-dark',
+ 'prizm-palette-yellow-h150-dark',
+ 'prizm-palette-yellow-200-dark',
+ 'prizm-palette-yellow-h250-dark',
+ 'prizm-palette-yellow-300-dark',
+ 'prizm-palette-yellow-h350-dark',
+ 'prizm-palette-yellow-400-dark',
+ 'prizm-palette-yellow-h450-dark',
+ 'prizm-palette-yellow-500-dark',
+ 'prizm-palette-yellow-h550-dark',
+ 'prizm-palette-yellow-600-dark',
+ 'prizm-palette-yellow-h650-dark',
+ 'prizm-palette-yellow-700-dark',
+ 'prizm-palette-yellow-h750-dark',
+ 'prizm-palette-yellow-800-dark',
+ 'prizm-palette-yellow-h850-dark',
+ 'prizm-palette-yellow-900-dark',
+ 'prizm-palette-yellow-h950-dark',
+ 'prizm-palette-yellow-1000-dark',
+ 'prizm-palette-yellow-h1050-dark',
+ 'prizm-palette-yellow-1100-dark',
+ 'prizm-palette-yellow-h1150-dark',
+ 'prizm-palette-orange-h50-dark',
+ 'prizm-palette-orange-100-dark',
+ 'prizm-palette-orange-h150-dark',
+ 'prizm-palette-orange-200-dark',
+ 'prizm-palette-orange-h250-dark',
+ 'prizm-palette-orange-300-dark',
+ 'prizm-palette-orange-h350-dark',
+ 'prizm-palette-orange-400-dark',
+ 'prizm-palette-orange-h450-dark',
+ 'prizm-palette-orange-500-dark',
+ 'prizm-palette-orange-h550-dark',
+ 'prizm-palette-orange-600-dark',
+ 'prizm-palette-orange-h650-dark',
+ 'prizm-palette-orange-700-dark',
+ 'prizm-palette-orange-h750-dark',
+ 'prizm-palette-orange-800-dark',
+ 'prizm-palette-orange-h850-dark',
+ 'prizm-palette-orange-900-dark',
+ 'prizm-palette-orange-h950-dark',
+ 'prizm-palette-orange-1000-dark',
+ 'prizm-palette-orange-h1050-dark',
+ 'prizm-palette-orange-1100-dark',
+ 'prizm-palette-orange-h1150-dark',
+ 'prizm-palette-red-h50-dark',
+ 'prizm-palette-red-100-dark',
+ 'prizm-palette-red-h150-dark',
+ 'prizm-palette-red-200-dark',
+ 'prizm-palette-red-h250-dark',
+ 'prizm-palette-red-300-dark',
+ 'prizm-palette-red-h350-dark',
+ 'prizm-palette-red-400-dark',
+ 'prizm-palette-red-h450-dark',
+ 'prizm-palette-red-500-dark',
+ 'prizm-palette-red-h550-dark',
+ 'prizm-palette-red-600-dark',
+ 'prizm-palette-red-h650-dark',
+ 'prizm-palette-red-700-dark',
+ 'prizm-palette-red-h750-dark',
+ 'prizm-palette-red-800-dark',
+ 'prizm-palette-red-h850-dark',
+ 'prizm-palette-red-900-dark',
+ 'prizm-palette-red-h950-dark',
+ 'prizm-palette-red-1000-dark',
+ 'prizm-palette-red-h1050-dark',
+ 'prizm-palette-red-1050-dark',
+ 'prizm-palette-red-h1150-dark',
+];
+
+export const PRIZM_THEME_TOKEN_BASE_VARIABLES = [
+ 'prizm-text-icon-primary',
+ 'prizm-text-icon-secondary',
+ 'prizm-text-icon-tertiary',
+ 'prizm-text-icon-disable',
+ 'prizm-text-icon-link',
+ 'prizm-text-icon-link-hover',
+ 'prizm-text-icon-link-visited',
+ 'prizm-text-icon-reverse',
+ 'prizm-text-icon-exception',
+ 'prizm-background-fill-primary',
+ 'prizm-background-fill-secondary',
+ 'prizm-background-fill-panel',
+ 'prizm-background-fill-overlay',
+ 'prizm-background-fill-blanket',
+ 'prizm-background-fill-reverse',
+ 'prizm-background-stroke',
+ 'prizm-background-stroke-focus',
+ 'prizm-table-fill-header-default',
+ 'prizm-table-fill-header-hover',
+ 'prizm-table-fill-row-zebra_default',
+ 'prizm-table-fill-row-hover',
+ 'prizm-table-fill-row-active',
+ 'prizm-table-fill-cell-disable',
+ 'prizm-table-stroke-cell-default',
+ 'prizm-table-stroke-cell-hover',
+ 'prizm-table-stroke-cell-active',
+ 'prizm-status-info-primary-default',
+ 'prizm-status-info-primary-hover',
+ 'prizm-status-info-secondary-default',
+ 'prizm-status-info-secondary-hover',
+ 'prizm-status-none-primary-default',
+ 'prizm-status-none-primary-hover',
+ 'prizm-status-none-secondary-default',
+ 'prizm-status-none-secondary-hover',
+ 'prizm-status-success-primary-default',
+ 'prizm-status-success-primary-hover',
+ 'prizm-status-success-secondary-default',
+ 'prizm-status-success-secondary-hover',
+ 'prizm-status-attention-primary-default',
+ 'prizm-status-attention-primary-hover',
+ 'prizm-status-attention-secondary-default',
+ 'prizm-status-attention-secondary-hover',
+ 'prizm-status-warning-primary-default',
+ 'prizm-status-warning-primary-hover',
+ 'prizm-status-warning-secondary-default',
+ 'prizm-status-warning-secondary-hover',
+ 'prizm-status-alarm-primary-default',
+ 'prizm-status-alarm-primary-hover',
+ 'prizm-status-alarm-secondary-default',
+ 'prizm-status-alarm-secondary-hover',
+ 'prizm-index-plan',
+ 'prizm-index-fact',
+ 'prizm-index-prognosis',
+ 'prizm-button-primary-solid-default',
+ 'prizm-button-primary-solid-hover',
+ 'prizm-button-primary-solid-active',
+ 'prizm-button-primary-ghost-active',
+ 'prizm-button-secondary-solid-default',
+ 'prizm-button-secondary-solid-hover',
+ 'prizm-button-secondary-solid-active',
+ 'prizm-button-secondary-ghost-active',
+ 'prizm-button-success-solid-default',
+ 'prizm-button-success-solid-hover',
+ 'prizm-button-success-solid-active',
+ 'prizm-button-success-ghost-active',
+ 'prizm-button-warning-solid-default',
+ 'prizm-button-warning-solid-hover',
+ 'prizm-button-warning-solid-active',
+ 'prizm-button-warning-ghost-active',
+ 'prizm-button-alarm-solid-default',
+ 'prizm-button-alarm-solid-hover',
+ 'prizm-button-alarm-solid-active',
+ 'prizm-button-alarm-ghost-active',
+ 'prizm-button-ghost-hover',
+ 'prizm-button-disable',
+ 'prizm-form-fill-default',
+ 'prizm-form-fill-disable',
+ 'prizm-form-stroke-default',
+ 'prizm-form-stroke-hover',
+ 'prizm-form-stroke-disable',
+ 'prizm-form-active',
+ 'prizm-form-active-hover',
+ 'prizm-form-active-disable',
+ 'prizm-chart-axis-default',
+ 'prizm-chart-axis-line-hover',
+ 'prizm-chart-axis-line-active',
+ 'prizm-chart-axis-area-hover',
+ 'prizm-chart-axis-area-active',
+ 'prizm-chart-fill-blanket',
+ 'prizm-shadow-color',
+ 'prizm-shadow-big-top',
+ 'prizm-shadow-big-right',
+ 'prizm-shadow-big-left',
+ 'prizm-shadow-big-bottom',
+ 'prizm-shadow-mini-top',
+ 'prizm-shadow-mini-right',
+ 'prizm-shadow-mini-left',
+ 'prizm-shadow-mini-bottom',
+];
diff --git a/libs/theme/src/lib/obj.ts b/libs/theme/src/lib/obj.ts
new file mode 100644
index 0000000000..8ccf5de28a
--- /dev/null
+++ b/libs/theme/src/lib/obj.ts
@@ -0,0 +1,100 @@
+export const AA = {
+ '--prizm-text-icon-primary': 'var(--prizm-palette-1200)',
+ '--prizm-text-icon-secondary': 'var(--prizm-palette-gray-800)',
+ '--prizm-text-icon-tertiary': 'var(--prizm-palette-gray-600)',
+ '--prizm-text-icon-disable': 'var(--prizm-palette-gray-500)',
+ '--prizm-text-icon-link': 'var(--prizm-palette-blue-500)',
+ '--prizm-text-icon-link-hover': 'var(--prizm-palette-blue-h750)',
+ '--prizm-text-icon-link-visited': 'var(--prizm-palette-blue-700)',
+ '--prizm-text-icon-reverse': 'var(--prizm-palette-0)',
+ '--prizm-text-icon-exception': 'var(--prizm-palette-1200)',
+ '--prizm-background-fill-primary': 'var(--prizm-palette-gray-100)',
+ '--prizm-background-fill-secondary': 'var(--prizm-palette-0)',
+ '--prizm-background-fill-panel': 'var(--prizm-palette-gray-300)',
+ '--prizm-background-fill-overlay': 'var(--prizm-palette-gray-200)',
+ '--prizm-background-fill-blanket': '#0f11157f',
+ '--prizm-background-fill-reverse': 'var(--prizm-palette-gray-1100)',
+ '--prizm-background-stroke': 'var(--prizm-palette-gray-400)',
+ '--prizm-background-stroke-focus': 'var(--prizm-palette-blue-800)',
+ '--prizm-table-fill-header-default': 'var(--prizm-palette-gray-200)',
+ '--prizm-table-fill-header-hover': 'var(--prizm-palette-gray-h250)',
+ '--prizm-table-fill-row-zebra_default': 'var(--prizm-palette-gray-200)',
+ '--prizm-table-fill-row-hover': 'var(--prizm-palette-gray-h250)',
+ '--prizm-table-fill-row-active': 'var(--prizm-palette-blue-400)',
+ '--prizm-table-fill-cell-disable': 'var(--prizm-palette-gray-300)',
+ '--prizm-table-stroke-cell-default': 'var(--prizm-palette-gray-400)',
+ '--prizm-table-stroke-cell-hover': 'var(--prizm-palette-gray-h650)',
+ '--prizm-table-stroke-cell-active': 'var(--prizm-palette-blue-600)',
+ '--prizm-status-info-primary-default': 'var(--prizm-palette-blue-600)',
+ '--prizm-status-info-primary-hover': 'var(--prizm-palette-blue-h650)',
+ '--prizm-status-info-secondary-default': 'var(--prizm-palette-blue-300)',
+ '--prizm-status-info-secondary-hover': 'var(--prizm-palette-blue-h350)',
+ '--prizm-status-none-primary-default': 'var(--prizm-palette-gray-600)',
+ '--prizm-status-none-primary-hover': 'var(--prizm-palette-gray-h650)',
+ '--prizm-status-none-secondary-default': 'var(--prizm-palette-gray-300)',
+ '--prizm-status-none-secondary-hover': 'var(--prizm-palette-gray-h350)',
+ '--prizm-status-success-primary-default': 'var(--prizm-palette-green-600)',
+ '--prizm-status-success-primary-hover': 'var(--prizm-palette-green-h650)',
+ '--prizm-status-success-secondary-default': 'var(--prizm-palette-green-300)',
+ '--prizm-status-success-secondary-hover': 'var(--prizm-palette-green-h350)',
+ '--prizm-status-attention-primary-default': 'var(--prizm-palette-yellow-900)',
+ '--prizm-status-attention-primary-hover': 'var(--prizm-palette-yellow-h950)',
+ '--prizm-status-attention-secondary-default': 'var(--prizm-palette-yellow-300)',
+ '--prizm-status-attention-secondary-hover': 'var(--prizm-palette-yellow-h350)',
+ '--prizm-status-warning-primary-default': 'var(--prizm-palette-orange-800)',
+ '--prizm-status-warning-primary-hover': 'var(--prizm-palette-orange-h850)',
+ '--prizm-status-warning-secondary-default': 'var(--prizm-palette-orange-300)',
+ '--prizm-status-warning-secondary-hover': 'var(--prizm-palette-orange-h350)',
+ '--prizm-status-alarm-primary-default': 'var(--prizm-palette-red-600)',
+ '--prizm-status-alarm-primary-hover': 'var(--prizm-palette-red-h650)',
+ '--prizm-status-alarm-secondary-default': 'var(--prizm-palette-red-300)',
+ '--prizm-status-alarm-secondary-hover': 'var(--prizm-palette-red-h350)',
+ '--prizm-index-plan': '#4075ff',
+ '--prizm-index-fact': '#ffffff',
+ '--prizm-index-prognosis': 'var(--prizm-palette-gray-600)',
+ '--prizm-button-primary-solid-default': 'var(--prizm-palette-blue-600)',
+ '--prizm-button-primary-solid-hover': 'var(--prizm-palette-blue-h650)',
+ '--prizm-button-primary-solid-active': 'var(--prizm-palette-blue-700)',
+ '--prizm-button-primary-ghost-active': 'var(--prizm-palette-blue-400)',
+ '--prizm-button-secondary-solid-default': 'var(--prizm-palette-gray-600)',
+ '--prizm-button-secondary-solid-hover': 'var(--prizm-palette-gray-h650)',
+ '--prizm-button-secondary-solid-active': 'var(--prizm-palette-gray-700)',
+ '--prizm-button-secondary-ghost-active': 'var(--prizm-palette-gray-400)',
+ '--prizm-button-success-solid-default': 'var(--prizm-palette-green-600)',
+ '--prizm-button-success-solid-hover': 'var(--prizm-palette-green-h650)',
+ '--prizm-button-success-solid-active': 'var(--prizm-palette-green-700)',
+ '--prizm-button-success-ghost-active': 'var(--prizm-palette-green-400)',
+ '--prizm-button-warning-solid-default': 'var(--prizm-palette-orange-800)',
+ '--prizm-button-warning-solid-hover': 'var(--prizm-palette-orange-h850)',
+ '--prizm-button-warning-solid-active': 'var(--prizm-palette-orange-900)',
+ '--prizm-button-warning-ghost-active': 'var(--prizm-palette-orange-400)',
+ '--prizm-button-alarm-solid-default': 'var(--prizm-palette-red-600)',
+ '--prizm-button-alarm-solid-hover': 'var(--prizm-palette-red-h650)',
+ '--prizm-button-alarm-solid-active': 'var(--prizm-palette-red-700)',
+ '--prizm-button-alarm-ghost-active': 'var(--prizm-palette-red-400)',
+ '--prizm-button-ghost-hover': 'var(--prizm-palette-gray-h350)',
+ '--prizm-button-disable': 'var(--prizm-palette-gray-300)',
+ '--prizm-form-fill-default': 'var(--prizm-palette-0)',
+ '--prizm-form-fill-disable': 'var(--prizm-palette-0)',
+ '--prizm-form-stroke-default': 'var(--prizm-palette-gray-500)',
+ '--prizm-form-stroke-hover': 'var(--prizm-palette-gray-h650)',
+ '--prizm-form-stroke-disable': 'var(--prizm-palette-1200)',
+ '--prizm-form-active': 'var(--prizm-palette-blue-600)',
+ '--prizm-form-active-hover': 'var(--prizm-palette-blue-h650)',
+ '--prizm-form-active-disable': 'var(--prizm-palette-blue-400)',
+ '--prizm-chart-axis-default': 'var(--prizm-palette-gray-300)',
+ '--prizm-chart-axis-line-hover': 'var(--prizm-palette-1200)',
+ '--prizm-chart-axis-line-active': 'var(--prizm-palette-blue-600)',
+ '--prizm-chart-axis-area-hover': '#8a91a233',
+ '--prizm-chart-axis-area-active': '#436cee33',
+ '--prizm-chart-fill-blanket': '#8a91a233',
+ '--prizm-shadow-color': 'var(--prizm-palette-shadow-dark)',
+ '--prizm-shadow-big-top': '0px -8px 32px 0px var(--prizm-shadow-color)',
+ '--prizm-shadow-big-right': '8px 0px 32px 0px var(--prizm-shadow-color)',
+ '--prizm-shadow-big-left': '-8px 0px 32px 0px var(--prizm-shadow-color)',
+ '--prizm-shadow-big-bottom': '0px 8px 32px 0px var(--prizm-shadow-color)',
+ '--prizm-shadow-mini-top': '0px -2px 4px 0px var(--prizm-shadow-color)',
+ '--prizm-shadow-mini-right': '2px 0px 4px 0px var(--prizm-shadow-color)',
+ '--prizm-shadow-mini-left': '-2px 0px 4px 0px var(--prizm-shadow-color)',
+ '--prizm-shadow-mini-bottom': '0px 2px 4px 0px var(--prizm-shadow-color)',
+};
diff --git a/libs/theme/src/lib/services/theme.service.ts b/libs/theme/src/lib/services/theme.service.ts
index 96bd8f1172..3c5dd0ff72 100644
--- a/libs/theme/src/lib/services/theme.service.ts
+++ b/libs/theme/src/lib/services/theme.service.ts
@@ -79,4 +79,20 @@ export class PrizmThemeService implements OnDestroy {
ngOnDestroy(): void {
this.subscription.unsubscribe();
}
+
+ public getTokenValue(token: string, el: HTMLElement | null = null): string | null {
+ el = el ?? this.rootElement;
+ console.log('#Mz getTokenValue', token, this.rootElement);
+ if (!el) return null;
+ const style = getComputedStyle(el);
+ return style.getPropertyValue(`--${token}`);
+ }
+
+ public updateTokenValue(token: string, value: string, el: HTMLElement | null = null): boolean {
+ el = el ?? this.rootElement;
+ if (!el) return false;
+ const style = el.style;
+ style.setProperty(`--${token}`, value);
+ return true;
+ }
}
diff --git a/libs/theme/src/styles/theme/v3/dark.less b/libs/theme/src/styles/theme/v3/dark.less
deleted file mode 100644
index e69de29bb2..0000000000