@clickhouse/click-ui 0.0.235 → 0.0.237-sc-deprecation.1

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.
Files changed (132) hide show
  1. package/README.md +161 -20
  2. package/bin/README.md +178 -0
  3. package/bin/click-ui.config.example.ts +70 -0
  4. package/bin/click-ui.js +97 -0
  5. package/bin/commands/build-default-theme.ts +48 -0
  6. package/bin/commands/generate.js +117 -0
  7. package/bin/commands/init.js +110 -0
  8. package/bin/utils/config-loader.ts +61 -0
  9. package/bin/utils/css-generator.js +32 -0
  10. package/dist/click-ui.bundled.es.js +40740 -48756
  11. package/dist/click-ui.bundled.umd.js +79 -53070
  12. package/dist/click-ui.es.js +40747 -47595
  13. package/dist/click-ui.umd.js +79 -51901
  14. package/dist/components/Accordion/Accordion.d.ts +3 -3
  15. package/dist/components/AutoComplete/AutoComplete.d.ts +0 -1
  16. package/dist/components/Avatar/Avatar.d.ts +1 -1
  17. package/dist/components/Badge/Badge.d.ts +1 -1
  18. package/dist/components/BigStat/BigStat.d.ts +1 -1
  19. package/dist/components/Button/Button.d.ts +1 -1
  20. package/dist/components/ButtonGroup/ButtonGroup.d.ts +1 -1
  21. package/dist/components/CardHorizontal/CardHorizontal.d.ts +5 -1
  22. package/dist/components/CardPrimary/CardPrimaryTopBadge.d.ts +14 -3
  23. package/dist/components/CardPromotion/CardPromotion.d.ts +1 -1
  24. package/dist/components/CardSecondary/CardSecondary.d.ts +1 -1
  25. package/dist/components/Checkbox/Checkbox.d.ts +1 -1
  26. package/dist/components/CodeBlock/CodeBlock.d.ts +1 -1
  27. package/dist/components/CodeBlock/useColorStyle.d.ts +1 -1
  28. package/dist/components/Collapsible/Collapsible.d.ts +3 -3
  29. package/dist/components/Container/Container.d.ts +5 -6
  30. package/dist/components/DatePicker/Common.d.ts +8 -3
  31. package/dist/components/Dialog/Dialog.d.ts +2 -2
  32. package/dist/components/EllipsisContent/EllipsisContent.d.ts +4 -6
  33. package/dist/components/FileTabs/FileTabs.d.ts +2 -2
  34. package/dist/components/Flyout/Flyout.d.ts +1 -1
  35. package/dist/components/GenericMenu.d.ts +22 -10
  36. package/dist/components/Grid/Cell.d.ts +2 -1
  37. package/dist/components/Grid/StyledCell.d.ts +5 -2
  38. package/dist/components/Grid/types.d.ts +1 -1
  39. package/dist/components/GridContainer/GridContainer.d.ts +4 -5
  40. package/dist/components/Icon/IconCommon.d.ts +4 -3
  41. package/dist/components/Icon/types.d.ts +3 -1
  42. package/dist/components/IconWrapper/IconWrapper.d.ts +2 -2
  43. package/dist/components/Input/InputWrapper.d.ts +25 -18
  44. package/dist/components/Link/Link.d.ts +4 -6
  45. package/dist/components/Link/linkStyles.d.ts +134 -0
  46. package/dist/components/Logos/AWSGlue.d.ts +4 -0
  47. package/dist/components/Logos/Logo.d.ts +1 -1
  48. package/dist/components/Logos/types.d.ts +1 -1
  49. package/dist/components/MultiAccordion/MultiAccordion.d.ts +1 -1
  50. package/dist/components/Panel/Panel.d.ts +1 -1
  51. package/dist/components/ProgressBar/ProgressBar.d.ts +1 -1
  52. package/dist/components/RadioGroup/RadioGroup.d.ts +1 -1
  53. package/dist/components/Select/common/SelectStyled.d.ts +24 -26
  54. package/dist/components/Separator/Separator.d.ts +4 -3
  55. package/dist/components/SidebarNavigationItem/SidebarNavigationItem.d.ts +5 -9
  56. package/dist/components/SidebarNavigationTitle/SidebarNavigationTitle.d.ts +5 -7
  57. package/dist/components/Spacer/Spacer.d.ts +2 -1
  58. package/dist/components/SplitButton/SplitButton.d.ts +1 -1
  59. package/dist/components/Tabs/Tabs.d.ts +26 -24
  60. package/dist/components/ThemeToggle/ThemeToggle.d.ts +4 -0
  61. package/dist/components/Typography/Text/Text.d.ts +4 -5
  62. package/dist/components/VerticalStepper/VerticalStepper.d.ts +2 -2
  63. package/dist/components/commonElement.d.ts +21 -17
  64. package/dist/components/commonTypes.d.ts +1 -1
  65. package/dist/components/icons/DataLakes.d.ts +4 -0
  66. package/dist/components/icons/HorizontalLoading.d.ts +3 -1
  67. package/dist/components/icons/Loading.d.ts +1 -1
  68. package/dist/components/icons/LoadingAnimated.d.ts +3 -1
  69. package/dist/components/index.d.ts +6 -3
  70. package/dist/components/types.d.ts +51 -83
  71. package/dist/config/tokens/types.d.ts +15296 -0
  72. package/dist/config/tokens/types.d.ts.map +1 -0
  73. package/dist/config/tokens/types.js +2 -0
  74. package/dist/config/tokens/types.js.map +1 -0
  75. package/dist/config/types.d.ts +55 -0
  76. package/dist/config/types.d.ts.map +1 -0
  77. package/dist/config/types.js +2 -0
  78. package/dist/config/types.js.map +1 -0
  79. package/dist/config/utils/css-builder.d.ts +38 -0
  80. package/dist/config/utils/css-builder.d.ts.map +1 -0
  81. package/dist/config/utils/css-builder.js +56 -0
  82. package/dist/config/utils/css-builder.js.map +1 -0
  83. package/dist/config/utils/css-generator.d.ts +25 -0
  84. package/dist/config/utils/css-generator.d.ts.map +1 -0
  85. package/dist/config/utils/css-generator.js +151 -0
  86. package/dist/config/utils/css-generator.js.map +1 -0
  87. package/dist/config/utils/find-config.d.ts +17 -0
  88. package/dist/config/utils/find-config.d.ts.map +1 -0
  89. package/dist/config/utils/find-config.js +28 -0
  90. package/dist/config/utils/find-config.js.map +1 -0
  91. package/dist/cui-components.css +1 -0
  92. package/dist/cui-default-theme.css +1809 -0
  93. package/dist/cui.css +3 -0
  94. package/dist/index.d.ts +77 -1
  95. package/dist/stories/ChartColorComponent.d.ts +1 -0
  96. package/dist/stories/chart-examples/ChartTooltip.d.ts +12 -0
  97. package/dist/stories/chart-examples/ColorSwatchesChart.d.ts +1 -0
  98. package/dist/stories/chart-examples/GroupedBarChart.d.ts +1 -0
  99. package/dist/stories/chart-examples/MultiLineChart.d.ts +1 -0
  100. package/dist/stories/chart-examples/StackedAreaChart.d.ts +1 -0
  101. package/dist/stories/chart-examples/StackedBarChartDemo.d.ts +1 -0
  102. package/dist/theme/ClickUIProvider/ClickUIProvider.d.ts +5 -0
  103. package/dist/theme/ClickUIProvider/ServerClickUIProvider.d.ts +23 -0
  104. package/dist/theme/ClickUIProvider/context.d.ts +24 -0
  105. package/dist/theme/ClickUIProvider/hooks.d.ts +4 -0
  106. package/dist/theme/ClickUIProvider/index.d.ts +6 -0
  107. package/dist/theme/ClickUIProvider/types.d.ts +39 -0
  108. package/dist/theme/config.d.ts +22 -0
  109. package/dist/theme/hooks/useSystemColorSchemePreference.d.ts +7 -0
  110. package/dist/theme/index.d.ts +6 -12
  111. package/dist/{styles → theme/tokens}/types.d.ts +13 -6
  112. package/dist/{styles → theme/tokens}/variables.dark.json.d.ts +118 -117
  113. package/dist/{styles → theme/tokens}/variables.json.d.ts +20 -13
  114. package/dist/{styles → theme/tokens}/variables.light.json.d.ts +146 -145
  115. package/dist/theme/types.d.ts +54 -0
  116. package/dist/theme/utils/css-builder.d.ts +37 -0
  117. package/dist/theme/utils/css-generator.d.ts +25 -0
  118. package/dist/theme/utils/find-config.d.ts +16 -0
  119. package/dist/theme/utils/theme-attribute.d.ts +13 -0
  120. package/dist/theme/utils.d.ts +29 -0
  121. package/dist/utils/capitalize.d.ts +12 -0
  122. package/dist/utils/polymorphic/index.d.ts +48 -0
  123. package/dist/utils/test-utils.d.ts +1 -3
  124. package/package.json +49 -24
  125. package/dist/click-ui.bundled.es.js.map +0 -1
  126. package/dist/click-ui.bundled.umd.js.map +0 -1
  127. package/dist/click-ui.es.js.map +0 -1
  128. package/dist/click-ui.umd.js.map +0 -1
  129. package/dist/components/ClickUIProvider/ClickUIProvider.d.ts +0 -15
  130. package/dist/components/Link/common.d.ts +0 -7
  131. package/dist/styles/variables.classic.json.d.ts +0 -993
  132. package/dist/theme/theme.d.ts +0 -7
@@ -0,0 +1,25 @@
1
+ import type { NestedJSONObject, Theme } from "../types";
2
+ /**
3
+ * Core traverse function to convert nested theme object to flat variable map
4
+ * Used by generateCSSVariables, themeToFlatVariables, and build plugins to avoid duplication
5
+ *
6
+ * @param obj - Theme or nested JSON object to traverse
7
+ * @param prefix - Prefix for CSS variable names (default: "--")
8
+ * @param skipFields - Fields to skip during traversal (default: ["name", "isSystem", "resolvedTheme"])
9
+ * @returns Record of CSS variable names to their values
10
+ */
11
+ export declare const traverseThemeObject: (obj: Theme | NestedJSONObject, prefix?: string, skipFields?: string[]) => Record<string, string>;
12
+ /**
13
+ * Generate CSS variables with light-dark() for colors and fallback handling for non-colors
14
+ * Returns an object with base variables and any theme-specific overrides needed
15
+ */
16
+ export declare const generateLightDarkVariables: (lightTheme: Theme, darkTheme: Theme) => Record<string, string>;
17
+ /**
18
+ * Generate separate theme-specific overrides for non-color variables that differ
19
+ * This is needed when non-color values differ between themes and light-dark() can't be used
20
+ */
21
+ export declare const generateThemeOverrides: (lightTheme: Theme, darkTheme: Theme) => {
22
+ light: Record<string, string>;
23
+ dark: Record<string, string>;
24
+ };
25
+ //# sourceMappingURL=css-generator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"css-generator.d.ts","sourceRoot":"","sources":["../../../src/theme/utils/css-generator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAmDxD;;;;;;;;GAQG;AACH,eAAO,MAAM,mBAAmB,QACzB,KAAK,GAAG,gBAAgB,WACrB,MAAM,eACF,MAAM,EAAE,KACnB,MAAM,CAAC,MAAM,EAAE,MAAM,CAgCvB,CAAC;AAmCF;;;GAGG;AACH,eAAO,MAAM,0BAA0B,eACzB,KAAK,aACN,KAAK,KACf,MAAM,CAAC,MAAM,EAAE,MAAM,CAsBvB,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,sBAAsB,eACrB,KAAK,aACN,KAAK,KACf;IAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAsB/D,CAAC"}
@@ -0,0 +1,151 @@
1
+ // Cache for color detection results
2
+ const colorValueCache = new Map();
3
+ /**
4
+ * Checks if a value is a color
5
+ * Build-time only - uses pattern matching
6
+ */
7
+ const isColorValue = (value) => {
8
+ if (!value || typeof value !== "string") {
9
+ return false;
10
+ }
11
+ // Check cache first
12
+ if (colorValueCache.has(value)) {
13
+ return colorValueCache.get(value);
14
+ }
15
+ // Pattern matching for color detection
16
+ const trimmed = value.trim();
17
+ const isColor = (/^#[0-9A-Fa-f]{3,8}$/.test(trimmed) || // Hex colors
18
+ /^rgba?\([^)]+\)$/.test(trimmed) || // rgb/rgba with any content
19
+ /^hsla?\([^)]+\)$/.test(trimmed) || // hsl/hsla with any content
20
+ /^(lch|lab|oklab|oklch)\([^)]+\)$/.test(trimmed) || // Modern color spaces
21
+ /^color\([^)]+\)$/.test(trimmed) || // color() function
22
+ trimmed.startsWith("var(--") || // CSS variables
23
+ // Named colors (basic set)
24
+ /^(transparent|currentColor|inherit|initial|unset)$/i.test(trimmed));
25
+ // Cache the result
26
+ colorValueCache.set(value, isColor);
27
+ return isColor;
28
+ };
29
+ /**
30
+ * Determines if a variable should use light-dark()
31
+ * Only checks if BOTH values are colors - variable name doesn't matter
32
+ */
33
+ const shouldUseLightDark = (_varName, // Not used - only value matters
34
+ lightValue, darkValue) => {
35
+ // Use light-dark() only if BOTH values are colors
36
+ return isColorValue(lightValue) && isColorValue(darkValue);
37
+ };
38
+ /**
39
+ * Core traverse function to convert nested theme object to flat variable map
40
+ * Used by generateCSSVariables, themeToFlatVariables, and build plugins to avoid duplication
41
+ *
42
+ * @param obj - Theme or nested JSON object to traverse
43
+ * @param prefix - Prefix for CSS variable names (default: "--")
44
+ * @param skipFields - Fields to skip during traversal (default: ["name", "isSystem", "resolvedTheme"])
45
+ * @returns Record of CSS variable names to their values
46
+ */
47
+ export const traverseThemeObject = (obj, prefix = "--", skipFields = ["name", "isSystem", "resolvedTheme"]) => {
48
+ const vars = {};
49
+ const traverse = (current, path = []) => {
50
+ Object.entries(current).forEach(([key, value]) => {
51
+ // Skip non-variable fields
52
+ if (skipFields.includes(key)) {
53
+ return;
54
+ }
55
+ const varPath = [...path, key];
56
+ if (typeof value === "string" || typeof value === "number") {
57
+ const varName = `${prefix}${varPath.join("-")}`;
58
+ vars[varName] = String(value);
59
+ }
60
+ else if (Array.isArray(value)) {
61
+ // Handle arrays: convert each element to a CSS variable with index
62
+ // e.g., border.radii[0] -> --border-radii-0
63
+ value.forEach((item, index) => {
64
+ if (typeof item === "string" || typeof item === "number") {
65
+ const varName = `${prefix}${[...varPath, index].join("-")}`;
66
+ vars[varName] = String(item);
67
+ }
68
+ });
69
+ }
70
+ else if (typeof value === "object" && value !== null) {
71
+ traverse(value, varPath);
72
+ }
73
+ });
74
+ };
75
+ traverse(obj);
76
+ return vars;
77
+ };
78
+ /**
79
+ * Convert theme object to flat variable map
80
+ * Used for light-dark() generation and theme overrides
81
+ */
82
+ const themeToFlatVariables = (theme) => {
83
+ return traverseThemeObject(theme);
84
+ };
85
+ /**
86
+ * Process a variable and determine its CSS value based on light/dark themes
87
+ * Returns the appropriate CSS value (either direct value or light-dark() function)
88
+ */
89
+ const processVariable = (varName, lightValue, darkValue) => {
90
+ // Optimization: if both values are identical, declare it once
91
+ if (lightValue === darkValue) {
92
+ return lightValue;
93
+ }
94
+ // Only use light-dark() for color values
95
+ if (shouldUseLightDark(varName, lightValue, darkValue)) {
96
+ return `light-dark(${lightValue}, ${darkValue})`;
97
+ }
98
+ // Non-color values: use light theme value
99
+ // Note: If you need different non-color values per theme,
100
+ // you'll need to handle them separately with [data-theme] selectors
101
+ return lightValue;
102
+ };
103
+ /**
104
+ * Generate CSS variables with light-dark() for colors and fallback handling for non-colors
105
+ * Returns an object with base variables and any theme-specific overrides needed
106
+ */
107
+ export const generateLightDarkVariables = (lightTheme, darkTheme) => {
108
+ const lightVars = themeToFlatVariables(lightTheme);
109
+ const darkVars = themeToFlatVariables(darkTheme);
110
+ const lightDarkVars = {};
111
+ // Process all light theme variables
112
+ Object.keys(lightVars).forEach(varName => {
113
+ const lightValue = lightVars[varName];
114
+ const darkValue = darkVars[varName] || lightValue;
115
+ lightDarkVars[varName] = processVariable(varName, lightValue, darkValue);
116
+ });
117
+ // Add any dark-only variables
118
+ Object.keys(darkVars).forEach(varName => {
119
+ if (!lightDarkVars[varName]) {
120
+ const darkValue = darkVars[varName];
121
+ const lightValue = lightVars[varName] || darkValue;
122
+ lightDarkVars[varName] = processVariable(varName, lightValue, darkValue);
123
+ }
124
+ });
125
+ return lightDarkVars;
126
+ };
127
+ /**
128
+ * Generate separate theme-specific overrides for non-color variables that differ
129
+ * This is needed when non-color values differ between themes and light-dark() can't be used
130
+ */
131
+ export const generateThemeOverrides = (lightTheme, darkTheme) => {
132
+ const lightVars = themeToFlatVariables(lightTheme);
133
+ const darkVars = themeToFlatVariables(darkTheme);
134
+ const lightOverrides = {};
135
+ const darkOverrides = {};
136
+ // Find non-color variables that have different values
137
+ Object.keys(lightVars).forEach(varName => {
138
+ const lightValue = lightVars[varName];
139
+ const darkValue = darkVars[varName];
140
+ if (darkValue && lightValue !== darkValue) {
141
+ // Skip if both values are colors (already handled by light-dark())
142
+ // Only add to overrides if they're non-color values that differ
143
+ if (!isColorValue(lightValue) || !isColorValue(darkValue)) {
144
+ lightOverrides[varName] = lightValue;
145
+ darkOverrides[varName] = darkValue;
146
+ }
147
+ }
148
+ });
149
+ return { light: lightOverrides, dark: darkOverrides };
150
+ };
151
+ //# sourceMappingURL=css-generator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"css-generator.js","sourceRoot":"","sources":["../../../src/theme/utils/css-generator.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Find Click UI config file in a directory
3
+ * Searches for click-ui.config with various extensions
4
+ *
5
+ * @param root - Directory to search in (usually process.cwd())
6
+ * @returns Full path to config file, or null if not found
7
+ *
8
+ * @example
9
+ * ```typescript
10
+ * const configPath = findConfigFile(process.cwd());
11
+ * if (configPath) {
12
+ * console.log('Found config at:', configPath);
13
+ * }
14
+ * ```
15
+ */
16
+ export declare function findConfigFile(root: string): string | null;
17
+ //# sourceMappingURL=find-config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"find-config.d.ts","sourceRoot":"","sources":["../../../src/theme/utils/find-config.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAW1D"}
@@ -0,0 +1,28 @@
1
+ import * as fs from 'fs';
2
+ import * as path from 'path';
3
+ /**
4
+ * Find Click UI config file in a directory
5
+ * Searches for click-ui.config with various extensions
6
+ *
7
+ * @param root - Directory to search in (usually process.cwd())
8
+ * @returns Full path to config file, or null if not found
9
+ *
10
+ * @example
11
+ * ```typescript
12
+ * const configPath = findConfigFile(process.cwd());
13
+ * if (configPath) {
14
+ * console.log('Found config at:', configPath);
15
+ * }
16
+ * ```
17
+ */
18
+ export function findConfigFile(root) {
19
+ const extensions = ['ts', 'js', 'mjs', 'cjs'];
20
+ for (const ext of extensions) {
21
+ const configPath = path.join(root, `click-ui.config.${ext}`);
22
+ if (fs.existsSync(configPath)) {
23
+ return configPath;
24
+ }
25
+ }
26
+ return null;
27
+ }
28
+ //# sourceMappingURL=find-config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"find-config.js","sourceRoot":"","sources":["../../../src/theme/utils/find-config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAE7B;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,cAAc,CAAC,IAAY;IACzC,MAAM,UAAU,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;IAE9C,KAAK,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;QAC7B,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,mBAAmB,GAAG,EAAE,CAAC,CAAC;QAC7D,IAAI,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YAC9B,OAAO,UAAU,CAAC;QACpB,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC"}