From 9a842bf880701d86dc0692b57ea3c0ddb7dfe616 Mon Sep 17 00:00:00 2001 From: Helder Oliveira Date: Wed, 8 Apr 2026 11:20:20 +0100 Subject: [PATCH 01/48] =?UTF-8?q?chore:=20=F0=9F=A4=96=20Create=20director?= =?UTF-8?q?y=20structure,=20copy=20files=20from=20deprecated=20version?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../InitCUIThemeScript/InitCUIThemeScript.tsx | 53 + .../legacy/theme/InitCUIThemeScript/index.ts | 7 + .../design-tokens/legacy/theme/theme.core.ts | 24 + .../design-tokens/legacy/theme/theme.types.ts | 14 + .../design-tokens/legacy/theme/theme.utils.ts | 17 + .../legacy/theme/tokens/variables.dark.ts | 4029 +++++++++++++++++ .../legacy/theme/tokens/variables.light.ts | 4012 ++++++++++++++++ 7 files changed, 8156 insertions(+) create mode 100644 packages/design-tokens/legacy/theme/InitCUIThemeScript/InitCUIThemeScript.tsx create mode 100644 packages/design-tokens/legacy/theme/InitCUIThemeScript/index.ts create mode 100644 packages/design-tokens/legacy/theme/theme.core.ts create mode 100644 packages/design-tokens/legacy/theme/theme.types.ts create mode 100644 packages/design-tokens/legacy/theme/theme.utils.ts create mode 100644 packages/design-tokens/legacy/theme/tokens/variables.dark.ts create mode 100644 packages/design-tokens/legacy/theme/tokens/variables.light.ts diff --git a/packages/design-tokens/legacy/theme/InitCUIThemeScript/InitCUIThemeScript.tsx b/packages/design-tokens/legacy/theme/InitCUIThemeScript/InitCUIThemeScript.tsx new file mode 100644 index 000000000..14f5edaac --- /dev/null +++ b/packages/design-tokens/legacy/theme/InitCUIThemeScript/InitCUIThemeScript.tsx @@ -0,0 +1,53 @@ +/** + * @deprecated This module is deprecated. Use the new CSS variable-based tokens instead. + * Import from '@clickhouse/design-tokens/legacy' only for backward compatibility. + */ + +import { THEME_ATTRIBUTE } from '../../utils/dom'; +import { CUI_THEME_STORAGE_KEY } from '../../utils/localStorage'; +import { THEMES } from '../theme.core'; +import type { ThemeName } from '../theme.types'; + +export interface InitCUIThemeScriptProps { + defaultTheme?: ThemeName; + storageKey?: string; + attribute?: string; + nonce?: string; +} + +// TODO: Provide support for system prefers-color-scheme + +export const InitCUIThemeScript = ({ + defaultTheme = THEMES.Light, + storageKey = CUI_THEME_STORAGE_KEY, + attribute = THEME_ATTRIBUTE, + nonce, +}: InitCUIThemeScriptProps) => { + return ( +