@servicetitan/hammer-token 0.0.0-rc-1.48.0-20251104214834 → 0.0.0-rc-3.0.0-20260127161418

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 (80) hide show
  1. package/CHANGELOG.md +37 -1
  2. package/README.md +222 -0
  3. package/build/web/core/component-variables.scss +176 -130
  4. package/build/web/core/component.d.ts +96 -0
  5. package/build/web/core/component.js +574 -252
  6. package/build/web/core/component.scss +94 -69
  7. package/build/web/core/css-utils/a2-border.css +39 -41
  8. package/build/web/core/css-utils/a2-color.css +367 -227
  9. package/build/web/core/css-utils/a2-font.css +0 -2
  10. package/build/web/core/css-utils/a2-spacing.css +0 -2
  11. package/build/web/core/css-utils/a2-utils.css +434 -292
  12. package/build/web/core/css-utils/border.css +39 -41
  13. package/build/web/core/css-utils/color.css +367 -227
  14. package/build/web/core/css-utils/font.css +0 -2
  15. package/build/web/core/css-utils/spacing.css +0 -2
  16. package/build/web/core/css-utils/utils.css +434 -292
  17. package/build/web/core/index.d.ts +6 -0
  18. package/build/web/core/index.js +1 -1
  19. package/build/web/core/primitive-variables.scss +130 -71
  20. package/build/web/core/primitive.d.ts +185 -0
  21. package/build/web/core/primitive.js +328 -72
  22. package/build/web/core/primitive.scss +183 -124
  23. package/build/web/core/semantic-variables.scss +295 -220
  24. package/build/web/core/semantic.d.ts +198 -0
  25. package/build/web/core/semantic.js +913 -341
  26. package/build/web/core/semantic.scss +196 -140
  27. package/build/web/index.d.ts +3 -4
  28. package/build/web/index.js +0 -1
  29. package/build/web/types.d.ts +17 -0
  30. package/config.js +121 -496
  31. package/package.json +5 -4
  32. package/src/global/primitive/breakpoint.tokens.json +39 -0
  33. package/src/global/primitive/color.tokens.json +536 -0
  34. package/src/global/primitive/duration.tokens.json +32 -0
  35. package/src/global/primitive/font.tokens.json +103 -0
  36. package/src/global/primitive/radius.tokens.json +67 -0
  37. package/src/global/primitive/size.tokens.json +123 -0
  38. package/src/global/primitive/transition.tokens.json +20 -0
  39. package/src/theme/core/background.tokens.json +1058 -0
  40. package/src/theme/core/border.tokens.json +148 -0
  41. package/src/theme/core/charts.tokens.json +802 -0
  42. package/src/theme/core/component/alert.tokens.json +180 -0
  43. package/src/theme/core/component/announcement.tokens.json +186 -0
  44. package/src/theme/core/component/avatar.tokens.json +132 -0
  45. package/src/theme/core/component/badge.tokens.json +40 -0
  46. package/src/theme/core/component/button.tokens.json +752 -0
  47. package/src/theme/core/component/checkbox.tokens.json +292 -0
  48. package/src/theme/core/focus.tokens.json +48 -0
  49. package/src/theme/core/foreground.tokens.json +306 -0
  50. package/src/theme/core/shadow.tokens.json +43 -0
  51. package/src/theme/core/status.tokens.json +70 -0
  52. package/src/theme/core/typography.tokens.json +100 -0
  53. package/src/utils/copy-css-utils-cli.js +13 -0
  54. package/src/utils/css-utils-format-utils.js +98 -1
  55. package/src/utils/sd-build-configs.js +372 -0
  56. package/src/utils/sd-formats.js +752 -0
  57. package/src/utils/sd-transforms.js +126 -0
  58. package/src/utils/token-helpers.js +555 -0
  59. package/tsconfig.json +18 -0
  60. package/.turbo/turbo-build.log +0 -37
  61. package/build/web/core/raw.js +0 -234
  62. package/src/global/primitive/breakpoint.js +0 -19
  63. package/src/global/primitive/color.js +0 -231
  64. package/src/global/primitive/duration.js +0 -16
  65. package/src/global/primitive/font.js +0 -60
  66. package/src/global/primitive/radius.js +0 -31
  67. package/src/global/primitive/size.js +0 -55
  68. package/src/global/primitive/transition.js +0 -16
  69. package/src/theme/core/background.js +0 -170
  70. package/src/theme/core/border.js +0 -103
  71. package/src/theme/core/charts.js +0 -464
  72. package/src/theme/core/component/button.js +0 -708
  73. package/src/theme/core/component/checkbox.js +0 -405
  74. package/src/theme/core/focus.js +0 -35
  75. package/src/theme/core/foreground.js +0 -148
  76. package/src/theme/core/overlay.js +0 -137
  77. package/src/theme/core/shadow.js +0 -29
  78. package/src/theme/core/status.js +0 -49
  79. package/src/theme/core/typography.js +0 -82
  80. package/type/types.ts +0 -344
package/CHANGELOG.md CHANGED
@@ -1,6 +1,42 @@
1
1
  # @servicetitan/hammer-token
2
2
 
3
- ## 0.0.0-rc-1.48.0-20251104214834
3
+ ## 0.0.0-rc-3.0.0-20260127161418
4
+
5
+ ### Major Changes
6
+
7
+ - [#1734](https://github.com/servicetitan/hammer/pull/1734) [`c960a4c`](https://github.com/servicetitan/hammer/commit/c960a4c88d22c7f508b79ac342c8f00eec46ace9) Thanks [@tounsoo](https://github.com/tounsoo)! - [Tokens] Expansion of color ramp
8
+
9
+ - [#1734](https://github.com/servicetitan/hammer/pull/1734) [`c960a4c`](https://github.com/servicetitan/hammer/commit/c960a4c88d22c7f508b79ac342c8f00eec46ace9) Thanks [@tounsoo](https://github.com/tounsoo)! - [Tokens] Renaming of interactive tokens for clarity and better typeahead support
10
+
11
+ - [#1734](https://github.com/servicetitan/hammer/pull/1734) [`c960a4c`](https://github.com/servicetitan/hammer/commit/c960a4c88d22c7f508b79ac342c8f00eec46ace9) Thanks [@tounsoo](https://github.com/tounsoo)! - [Tokens] Prefix of `a2-` is added for all CSS variables
12
+
13
+ - [#1734](https://github.com/servicetitan/hammer/pull/1734) [`c960a4c`](https://github.com/servicetitan/hammer/commit/c960a4c88d22c7f508b79ac342c8f00eec46ace9) Thanks [@tounsoo](https://github.com/tounsoo)! - [Tokens] Charts stroke token is now split into StrokeStyle and StrokeColor for clarity
14
+
15
+ - [#1734](https://github.com/servicetitan/hammer/pull/1734) [`c960a4c`](https://github.com/servicetitan/hammer/commit/c960a4c88d22c7f508b79ac342c8f00eec46ace9) Thanks [@tounsoo](https://github.com/tounsoo)! - [Tokens] JS import object changed to match DTCG format
16
+
17
+ - [#1734](https://github.com/servicetitan/hammer/pull/1734) [`c960a4c`](https://github.com/servicetitan/hammer/commit/c960a4c88d22c7f508b79ac342c8f00eec46ace9) Thanks [@tounsoo](https://github.com/tounsoo)! - [Tokens] Prefix all CSS variables with `a2-` to prevent naming collisions (e.g., `--color-primary` becomes `--a2-color-primary`).
18
+
19
+ - [#1734](https://github.com/servicetitan/hammer/pull/1734) [`c960a4c`](https://github.com/servicetitan/hammer/commit/c960a4c88d22c7f508b79ac342c8f00eec46ace9) Thanks [@tounsoo](https://github.com/tounsoo)! - [Tokens] Renamed types exported for clarity of use
20
+
21
+ ### Minor Changes
22
+
23
+ - [#1734](https://github.com/servicetitan/hammer/pull/1734) [`c960a4c`](https://github.com/servicetitan/hammer/commit/c960a4c88d22c7f508b79ac342c8f00eec46ace9) Thanks [@tounsoo](https://github.com/tounsoo)! - [Tokens] Add new component tokens for Button.
24
+
25
+ - [#1734](https://github.com/servicetitan/hammer/pull/1734) [`c960a4c`](https://github.com/servicetitan/hammer/commit/c960a4c88d22c7f508b79ac342c8f00eec46ace9) Thanks [@tounsoo](https://github.com/tounsoo)! - [Tokens] Update Anvil2 token usages
26
+
27
+ ### Patch Changes
28
+
29
+ - [#1825](https://github.com/servicetitan/hammer/pull/1825) [`5101f0b`](https://github.com/servicetitan/hammer/commit/5101f0be78e8b3f5351da5add81349b4c7532a61) Thanks [@tounsoo](https://github.com/tounsoo)! - [Tokens] Add Avatar component design tokens and migrate SCSS to use token variables
30
+
31
+ - [#1825](https://github.com/servicetitan/hammer/pull/1825) [`5101f0b`](https://github.com/servicetitan/hammer/commit/5101f0be78e8b3f5351da5add81349b4c7532a61) Thanks [@tounsoo](https://github.com/tounsoo)! - [Tokens] Add Announcement component design tokens, missing foreground tokens for success, and migrate SCSS to use token variables
32
+
33
+ - [#1825](https://github.com/servicetitan/hammer/pull/1825) [`5101f0b`](https://github.com/servicetitan/hammer/commit/5101f0be78e8b3f5351da5add81349b4c7532a61) Thanks [@tounsoo](https://github.com/tounsoo)! - [Tokens] Add Badge component design tokens and migrate SCSS to use token variables
34
+
35
+ - [#1734](https://github.com/servicetitan/hammer/pull/1734) [`c960a4c`](https://github.com/servicetitan/hammer/commit/c960a4c88d22c7f508b79ac342c8f00eec46ace9) Thanks [@tounsoo](https://github.com/tounsoo)! - [Tokens] Fix various token configuration, formatting, and SCSS generation issues
36
+
37
+ - [#1825](https://github.com/servicetitan/hammer/pull/1825) [`5101f0b`](https://github.com/servicetitan/hammer/commit/5101f0be78e8b3f5351da5add81349b4c7532a61) Thanks [@tounsoo](https://github.com/tounsoo)! - [Tokens] Add Alert component design tokens and migrate SCSS to use token variables
38
+
39
+ ## 2.5.1
4
40
 
5
41
  ### Patch Changes
6
42
 
package/README.md ADDED
@@ -0,0 +1,222 @@
1
+ # @servicetitan/hammer-token
2
+
3
+ Design token system for the Hammer design system, built with [Style Dictionary v5](https://styledictionary.com/) and the [Design Tokens Community Group (DTCG) format](https://www.designtokens.org/tr/2025.10/format/).
4
+
5
+ ## Overview
6
+
7
+ This package transforms design tokens from JSON source files into multiple output formats for use across web applications. It generates JavaScript modules, SCSS variables, CSS utility classes, and TypeScript definitions to support both runtime and build-time token consumption.
8
+
9
+ ## Build Output (`/build/web`)
10
+
11
+ The build process generates files in `/build/web` organized as follows:
12
+
13
+ ```
14
+ build/web/
15
+ ├── index.js # Main entry point
16
+ ├── index.d.ts # TypeScript definitions
17
+ ├── types.d.ts # Core types (TokenObj, Token)
18
+ └── core/
19
+ ├── primitive.js # Primitive tokens (JS)
20
+ ├── primitive.scss # Primitive tokens (SCSS)
21
+ ├── primitive-variables.scss # Primitive tokens map (SCSS)
22
+ ├── primitive.d.ts # Primitive tokens (TypeScript)
23
+ ├── semantic.js # Semantic tokens (JS)
24
+ ├── semantic.scss # Semantic tokens (SCSS)
25
+ ├── semantic-variables.scss # Semantic tokens map (SCSS)
26
+ ├── semantic.d.ts # Semantic tokens (TypeScript)
27
+ ├── component.js # Component tokens (JS)
28
+ ├── component.scss # Component tokens (SCSS)
29
+ ├── component-variables.scss # Component tokens map (SCSS)
30
+ ├── component.d.ts # Component tokens (TypeScript)
31
+ ├── index.js # Core index
32
+ ├── index.d.ts # Core TypeScript definitions
33
+ └── css-utils/ # CSS utility classes
34
+ ```
35
+
36
+ ### File Types
37
+
38
+ #### `*-variables.scss` Files
39
+
40
+ These files contain SCSS maps used for mapping in `ThemeProvider.module.scss`. They provide structured token data organized by appearance variants (light/dark) and token categories.
41
+
42
+ #### `*.js` Files
43
+
44
+ JavaScript modules for importing tokens in JavaScript/TypeScript code. Each token is exported as a named constant with its value and appearance extensions.
45
+
46
+ **Example:**
47
+
48
+ ```javascript
49
+ import { BackgroundColorPrimary } from "@servicetitan/hammer-token/build/web/core/semantic";
50
+
51
+ // Token structure:
52
+ // {
53
+ // value: "#0265dc",
54
+ // extensions: {
55
+ // appearance: {
56
+ // dark: {
57
+ // value: "#78bbfa"
58
+ // }
59
+ // }
60
+ // }
61
+ // }
62
+ ```
63
+
64
+ > **Caution**: JavaScript tokens return static resolved values at build time. These values are not affected by CSS variable changes at runtime. If you need dynamic theming that responds to CSS variable changes, use the `*.scss` files instead.
65
+
66
+ #### `*.scss` Files
67
+
68
+ SCSS variable files for importing in SCSS stylesheets. Variables use CSS custom properties with fallback values, supporting recursive reference chains and `light-dark()` for dark mode.
69
+
70
+ #### `.d.ts` Files (TypeScript Definitions)
71
+
72
+ Auto-generated TypeScript definition files provide type safety for token imports. We use a unified `TokenObj` type for all exports.
73
+
74
+ **Example generated types:**
75
+
76
+ ```typescript
77
+ // component.d.ts
78
+ import { TokenObj } from "../types";
79
+
80
+ export declare const ButtonPrimaryBackgroundColor: TokenObj;
81
+ export declare const ButtonPrimaryBorderRadius: TokenObj;
82
+ ```
83
+
84
+ ## CSS Variable Prefix
85
+
86
+ All generated CSS variable names include a configurable prefix to avoid naming conflicts with other design systems or libraries. By default, the prefix is `a2-`.
87
+
88
+ ## Configuration File (`config.js`)
89
+
90
+ The main configuration file orchestrates the entire build process using [Style Dictionary v5](https://styledictionary.com/).
91
+
92
+ ### Build Process
93
+
94
+ The configuration executes three sequential builds:
95
+
96
+ 1. **Primitive Tokens Build**: Foundational values (colors, spacing, etc.)
97
+ 2. **Theme Tokens Build**: Decision-based tokens (semantic)
98
+ 3. **Component Tokens Build**: Component-specific tokens
99
+
100
+ ## Utility Files (`src/utils/`)
101
+
102
+ ### `token-helpers.js`
103
+
104
+ Core helper functions for working with DTCG format tokens.
105
+
106
+ **Smart Reference Resolution**: Includes logic to automatically resolve references to groups (e.g., `{background.color.primary}`) by falling back to a nested `.$root` token if the exact path isn't found.
107
+
108
+ ### `sd-transforms.js`
109
+
110
+ Style Dictionary transform registrations:
111
+
112
+ - **`dtcg/name`**: Transforms token paths to kebab-case names, filtering out `$root` and `$schema`.
113
+ - **`dtcg/value`**: Handles dimension tokens by combining `value` and `unit` properties.
114
+
115
+ ## Token Structure
116
+
117
+ Tokens follow the [Design Tokens Community Group (DTCG) format](https://www.designtokens.org/tr/2025.10/format/).
118
+
119
+ ### Standard Color Token
120
+
121
+ ```json
122
+ {
123
+ "$type": "color",
124
+ "$value": "#0265dc",
125
+ "$extensions": {
126
+ "appearance": {
127
+ "dark": {
128
+ "$value": "#78bbfa"
129
+ }
130
+ }
131
+ }
132
+ }
133
+ ```
134
+
135
+ ### Dimension Token
136
+
137
+ Dimension tokens (sizes, radii, breakpoints) use a nested object for the value:
138
+
139
+ ```json
140
+ {
141
+ "$type": "dimension",
142
+ "$value": {
143
+ "value": 0.5,
144
+ "unit": "rem"
145
+ }
146
+ }
147
+ ```
148
+
149
+ ### The $root Pattern
150
+
151
+ The `$root` pattern is a core convention in our **DTCG format standard**. It solves a fundamental challenge in design token systems: allowing a "group" (a category or semantic concept) to have its own primary value while still acting as a container for related sub-tokens (such as interactive states or functional variants).
152
+
153
+ #### Why we use it
154
+
155
+ In a standard nested structure, if a node has a `$value`, it is treated as a leaf token, and tools often ignore its children. Conversely, a group without a `$value` cannot be referenced directly. The `$root` pattern bridges this gap by explicitly defining the "default" or "base" value of a group.
156
+
157
+ ```json
158
+ "primary": {
159
+ "$root": {
160
+ "$type": "color",
161
+ "$value": "{color.blue.500}"
162
+ },
163
+ "hover": {
164
+ "$type": "color",
165
+ "$value": "{color.blue.600}"
166
+ },
167
+ "active": {
168
+ "$type": "color",
169
+ "$value": "{color.blue.700}"
170
+ }
171
+ }
172
+ ```
173
+
174
+ #### Key Benefits & Behavior
175
+
176
+ 1. **DTCG Compliance**: By using `$root` (a reserved property starting with `$`), we remain compatible with DTCG parsing logic while clearly distinguishing the base token from its semantic children.
177
+ 2. **Cleaner Reference Syntax**: Our build system includes smart resolution that allows you to reference the group name directly (e.g., `{background.color.primary}`). You don't need to append `.$root` in your JSON source files.
178
+ 3. **State & Variant Support**: It allows us to keep interactive states like `.hover` and `.active` logically nested within the parent token they modify, rather than flattening them into a messy global list.
179
+ 4. **Automatic Naming Cleanup**: During the transformation process, the `$root` segment is automatically stripped from the path. This ensures that the generated CSS variables and JS exports maintain a clean, flat naming convention (e.g., `--a2-background-color-primary` instead of `--a2-background-color-primary-root`).
180
+
181
+ ## Token Naming Conventions
182
+
183
+ ### Naming Transformation Rules
184
+
185
+ 1. **Path to Name**: JSON object paths are converted to PascalCase.
186
+ 2. **Special Segments**: `$root` segments are removed from the path (e.g., `background.color.default.$root` → `BackgroundColorDefault`).
187
+ 3. **State Suffixes**: State names (hover, active) are capitalized and appended.
188
+
189
+ ## Development
190
+
191
+ ### Adding New Tokens
192
+
193
+ 1. Add token JSON files to `src/global/primitive/` (primitives) or `src/theme/core/` (semantic/component)
194
+ 2. Run `pnpm build` to regenerate output files
195
+ 3. Import tokens in your code using the generated files
196
+
197
+ ### Modifying Build Output
198
+
199
+ - **Transforms**: Edit `src/utils/sd-transforms.js`
200
+ - **Formats**: Edit `src/utils/sd-formats.js`
201
+ - **Build Configs**: Edit `src/utils/sd-build-configs.js`
202
+ - **CSS Utils**: Edit `src/utils/css-utils-format-utils.js`
203
+
204
+ ## Troubleshooting
205
+
206
+ ### Console Reference Errors
207
+
208
+ During the build process (`pnpm build`), you may see "Reference Errors" in the console, such as:
209
+
210
+ ```text
211
+ {button.primary.foreground.color.$root} tries to reference {foreground.color.on.primary}, which is not defined.
212
+ ```
213
+
214
+ #### Why this happens
215
+
216
+ We use a `$root` token pattern to define a default value for a group (e.g., `background.color.primary.$root`). Standard Style Dictionary v5 validation expects references to point to an exact token path. When a component references a group like `{background.color.primary}`, Style Dictionary flags it as "not defined" because it technically points to a group container, not a leaf token.
217
+
218
+ #### Why the build is still correct
219
+
220
+ We have implemented a custom `resolveReference` helper in `src/utils/token-helpers.js`. This helper automatically detects if a reference points to a group and attempts to fall back to the `$root` token (e.g., it converts `{background.color.primary}` to `{background.color.primary.$root}` internally).
221
+
222
+ Because our custom output formats use this helper, the **generated files (JS, SCSS, CSS) are 100% correct**, even if Style Dictionary's internal validator prints warnings. You can safely ignore these specific reference errors as long as the build completes successfully and the output files contain the expected values.
@@ -1,139 +1,185 @@
1
1
  $light: (
2
- button-primary-foreground-color: #ffffff,
3
- button-primary-foreground-color-hover: #ffffff,
4
- button-primary-foreground-color-active: #ffffff,
5
- button-primary-background-color: #0265DC,
6
- button-primary-background-color-hover: #0655b4ff,
7
- button-primary-background-color-active: #09458cff,
8
- button-primary-border-color: transparent,
9
- button-primary-focus-ring-color: #0265DC,
10
- button-secondary-foreground-color: #141414,
11
- button-secondary-foreground-color-hover: #141414,
12
- button-secondary-foreground-color-active: #141414,
13
- button-secondary-background-color: #0404040f,
14
- button-secondary-background-color-hover: #05050522,
15
- button-secondary-background-color-active: #07070735,
16
- button-secondary-border-color: transparent,
17
- button-secondary-focus-ring-color: #0265DC,
18
- button-ghost-foreground-color: #141414,
19
- button-ghost-foreground-color-hover: #141414,
20
- button-ghost-foreground-color-active: #141414,
21
- button-ghost-background-color: transparent,
22
- button-ghost-background-color-hover: #14141414,
23
- button-ghost-background-color-active: #14141429,
24
- button-ghost-border-color: transparent,
25
- button-ghost-focus-ring-color: #0265DC,
26
- button-danger-primary-foreground-color: #ffffff,
27
- button-danger-primary-foreground-color-hover: #ffffff,
28
- button-danger-primary-foreground-color-active: #ffffff,
29
- button-danger-primary-background-color: #e13212,
30
- button-danger-primary-background-color-hover: #b82c12ff,
31
- button-danger-primary-background-color-active: #8f2613ff,
32
- button-danger-primary-border-color: transparent,
33
- button-danger-primary-focus-ring-color: #e13212,
34
- button-danger-secondary-foreground-color: #bf2a00,
35
- button-danger-secondary-foreground-color-hover: #bf2a00,
36
- button-danger-secondary-foreground-color-active: #bf2a00,
37
- button-danger-secondary-background-color: #ffece9,
38
- button-danger-secondary-background-color-hover: #fcd9d4ff,
39
- button-danger-secondary-background-color-active: #f6b4a9ff,
40
- button-danger-secondary-border-color: transparent,
41
- button-danger-secondary-focus-ring-color: #e13212,
42
- checkbox-unchecked-fill-color-default: #141414,
43
- checkbox-unchecked-fill-color-hover: #141414,
44
- checkbox-unchecked-fill-color-active: #141414,
45
- checkbox-unchecked-background-color-default: transparent,
46
- checkbox-unchecked-background-color-hover: #14141414,
47
- checkbox-unchecked-background-color-active: #14141429,
48
- checkbox-checked-fill-color-default: #0265DC,
49
- checkbox-checked-fill-color-hover: #004ba0d1,
50
- checkbox-checked-fill-color-active: #0151afb8,
51
- checkbox-checked-background-color-default: transparent,
52
- checkbox-checked-background-color-hover: #0265dc14,
53
- checkbox-checked-background-color-active: #0265dc29,
54
- checkbox-unchecked-error-fill-color-default: #e13212,
55
- checkbox-unchecked-error-fill-color-hover: #bf2a00,
56
- checkbox-unchecked-error-fill-color-active: #bf2a00,
57
- checkbox-unchecked-error-background-color-default: transparent,
58
- checkbox-unchecked-error-background-color-hover: #e132120f,
59
- checkbox-unchecked-error-background-color-active: #e132122e,
60
- checkbox-checked-error-fill-color-default: #e13212,
61
- checkbox-checked-error-fill-color-hover: #bf2a00,
62
- checkbox-checked-error-fill-color-active: #bf2a00,
63
- checkbox-checked-error-background-color-default: transparent,
64
- checkbox-checked-error-background-color-hover: #e132120f,
65
- checkbox-checked-error-background-color-active: #e132122e,
2
+ alert-background-color: var(--a2-color-neutral-0, #ffffff),
3
+ alert-border-color-info: var(--a2-color-blue-500, #1a82ff),
4
+ alert-border-color-success: var(--a2-color-green-500, #09a569),
5
+ alert-border-color-warning: var(--a2-color-yellow-500, #d6a000),
6
+ alert-border-color-danger: var(--a2-color-red-500, #ff3914),
7
+ alert-status-icon-color-info: var(--a2-color-blue-500, #1a82ff),
8
+ alert-status-icon-color-success: var(--a2-color-green-500, #09a569),
9
+ alert-status-icon-color-warning: var(--a2-color-yellow-500, #d6a000),
10
+ alert-status-icon-color-danger: var(--a2-color-red-500, #ff3914),
11
+ alert-close-button-foreground-color: var(--a2-color-neutral-950, #040404),
12
+ announcement-background-color-info: var(--a2-color-blue-500, #1a82ff),
13
+ announcement-background-color-success: var(--a2-color-green-500, #09a569),
14
+ announcement-background-color-warning: var(--a2-color-yellow-500, #d6a000),
15
+ announcement-background-color-danger: var(--a2-color-red-500, #ff3914),
16
+ announcement-foreground-color-info: var(--a2-color-neutral-0, #ffffff),
17
+ announcement-foreground-color-success: var(--a2-color-neutral-0, #ffffff),
18
+ announcement-foreground-color-warning: var(--a2-color-neutral-950, #040404),
19
+ announcement-foreground-color-danger: var(--a2-color-neutral-0, #ffffff),
20
+ announcement-action-button-background-color-info: #1a1a1a0F,
21
+ announcement-action-button-background-color-success: #1a1a1a0F,
22
+ announcement-action-button-background-color-warning: #1a1a1a0F,
23
+ announcement-action-button-background-color-danger: #1a1a1a0F,
24
+ avatar-background-color: var(--a2-color-neutral-70, #e8e8e8),
25
+ avatar-foreground-color: var(--a2-color-neutral-950, #040404),
26
+ avatar-border-color: var(--a2-color-neutral-0, #ffffff),
27
+ avatar-indicator-background-color-online: var(--a2-color-green-500, #09a569),
28
+ avatar-indicator-background-color-offline: var(--a2-color-neutral-0, #ffffff),
29
+ avatar-indicator-background-color-disabled: var(--a2-color-neutral-100, #dfdfdf),
30
+ avatar-indicator-border-color: var(--a2-color-neutral-80, #e5e5e5),
31
+ badge-background-color: var(--a2-color-red-500, #ff3914),
32
+ badge-foreground-color: var(--a2-color-neutral-0, #ffffff),
33
+ button-primary-foreground-color: var(--a2-color-neutral-0, #ffffff),
34
+ button-primary-foreground-color-hover: var(--a2-color-neutral-0, #ffffff),
35
+ button-primary-foreground-color-active: var(--a2-color-neutral-0, #ffffff),
36
+ button-primary-background-color: var(--a2-color-blue-500, #1a82ff),
37
+ button-primary-background-color-hover: var(--a2-color-blue-600, #0065de),
38
+ button-primary-background-color-active: var(--a2-color-blue-700, #004da9),
39
+ button-primary-border-color: "rgba(0, 0, 0, 0)",
40
+ button-primary-focus-ring-color: var(--a2-color-blue-500, #1a82ff),
41
+ button-secondary-foreground-color: var(--a2-color-neutral-950, #040404),
42
+ button-secondary-foreground-color-hover: var(--a2-color-neutral-950, #040404),
43
+ button-secondary-foreground-color-active: var(--a2-color-neutral-950, #040404),
44
+ button-secondary-background-color: #0404040F,
45
+ button-secondary-background-color-hover: #04040414,
46
+ button-secondary-background-color-active: #04040429,
47
+ button-secondary-border-color: "rgba(0, 0, 0, 0)",
48
+ button-secondary-focus-ring-color: var(--a2-color-blue-500, #1a82ff),
49
+ button-ghost-foreground-color: var(--a2-color-neutral-950, #040404),
50
+ button-ghost-foreground-color-hover: var(--a2-color-neutral-950, #040404),
51
+ button-ghost-foreground-color-active: var(--a2-color-neutral-950, #040404),
52
+ button-ghost-background-color: "rgba(0, 0, 0, 0)",
53
+ button-ghost-background-color-hover: #8b8b8b14,
54
+ button-ghost-background-color-active: #8b8b8b29,
55
+ button-ghost-border-color: "rgba(0, 0, 0, 0)",
56
+ button-ghost-focus-ring-color: var(--a2-color-blue-500, #1a82ff),
57
+ button-danger-primary-foreground-color: var(--a2-color-neutral-0, #ffffff),
58
+ button-danger-primary-foreground-color-hover: var(--a2-color-neutral-0, #ffffff),
59
+ button-danger-primary-foreground-color-active: var(--a2-color-neutral-0, #ffffff),
60
+ button-danger-primary-background-color: var(--a2-color-red-500, #ff3914),
61
+ button-danger-primary-background-color-hover: var(--a2-color-red-600, #d62100),
62
+ button-danger-primary-background-color-active: var(--a2-color-red-700, #a31900),
63
+ button-danger-primary-border-color: "rgba(0, 0, 0, 0)",
64
+ button-danger-primary-focus-ring-color: var(--a2-color-red-500, #ff3914),
65
+ button-danger-secondary-foreground-color: var(--a2-color-red-600, #d62100),
66
+ button-danger-secondary-foreground-color-hover: var(--a2-color-red-600, #d62100),
67
+ button-danger-secondary-foreground-color-active: var(--a2-color-red-600, #d62100),
68
+ button-danger-secondary-background-color: var(--a2-color-red-100, #ffd4cc),
69
+ button-danger-secondary-background-color-hover: var(--a2-color-red-200, #ffac9e),
70
+ button-danger-secondary-background-color-active: var(--a2-color-red-300, #ff8974),
71
+ button-danger-secondary-border-color: "rgba(0, 0, 0, 0)",
72
+ button-danger-secondary-focus-ring-color: var(--a2-color-red-500, #ff3914),
73
+ checkbox-checked-foreground-color: var(--a2-color-blue-500, #1a82ff),
74
+ checkbox-checked-foreground-color-hover: var(--a2-color-blue-600, #0065de),
75
+ checkbox-checked-foreground-color-active: var(--a2-color-blue-600, #0065de),
76
+ checkbox-checked-background-color-hover: #1a82ff1A,
77
+ checkbox-checked-focus-ring-color: var(--a2-color-blue-500, #1a82ff),
78
+ checkbox-unchecked-background-color-hover: #8b8b8b14,
79
+ checkbox-unchecked-focus-ring-color: var(--a2-color-blue-500, #1a82ff),
80
+ checkbox-checked-error-foreground-color: var(--a2-color-red-500, #ff3914),
81
+ checkbox-checked-error-foreground-color-hover: var(--a2-color-red-600, #d62100),
82
+ checkbox-checked-error-foreground-color-active: var(--a2-color-red-600, #d62100),
83
+ checkbox-checked-error-background-color-hover: #ff39141A,
84
+ checkbox-checked-error-focus-ring-color: var(--a2-color-red-500, #ff3914),
85
+ checkbox-unchecked-error-background-color-hover: #ff39141A,
86
+ checkbox-unchecked-error-focus-ring-color: var(--a2-color-red-500, #ff3914),
66
87
  );
67
88
  $dark: (
68
- button-primary-foreground-color: #141414,
69
- button-primary-foreground-color-hover: #141414,
70
- button-primary-foreground-color-active: #141414,
71
- button-primary-background-color: #78BBFA,
72
- button-primary-background-color-hover: #8ec6fbff,
73
- button-primary-background-color-active: #68a0d5ff,
74
- button-primary-border-color: transparent,
75
- button-primary-focus-ring-color: #78BBFA,
76
- button-secondary-foreground-color: #ffffff,
77
- button-secondary-foreground-color-hover: #ffffff,
78
- button-secondary-foreground-color-active: #ffffff,
79
- button-secondary-background-color: #ffffff0f,
80
- button-secondary-background-color-hover: #ffffff22,
81
- button-secondary-background-color-active: #ffffff35,
82
- button-secondary-border-color: transparent,
83
- button-secondary-focus-ring-color: #78BBFA,
84
- button-ghost-foreground-color: #ffffff,
85
- button-ghost-foreground-color-hover: #ffffff,
86
- button-ghost-foreground-color-active: #ffffff,
87
- button-ghost-background-color: transparent,
89
+ alert-background-color: var(--a2-color-neutral-400, #8b8b8b),
90
+ alert-border-color-info: var(--a2-color-blue-100, #cce3ff),
91
+ alert-border-color-success: var(--a2-color-green-100, #b8f5dd),
92
+ alert-border-color-warning: var(--a2-color-yellow-100, #fff0c2),
93
+ alert-border-color-danger: var(--a2-color-red-100, #ffd4cc),
94
+ alert-status-icon-color-info: var(--a2-color-blue-100, #cce3ff),
95
+ alert-status-icon-color-success: var(--a2-color-green-100, #b8f5dd),
96
+ alert-status-icon-color-warning: var(--a2-color-yellow-100, #fff0c2),
97
+ alert-status-icon-color-danger: var(--a2-color-red-100, #ffd4cc),
98
+ alert-close-button-foreground-color: var(--a2-color-neutral-0, #ffffff),
99
+ announcement-background-color-info: var(--a2-color-blue-100, #cce3ff),
100
+ announcement-background-color-success: var(--a2-color-green-100, #b8f5dd),
101
+ announcement-background-color-warning: var(--a2-color-yellow-100, #fff0c2),
102
+ announcement-background-color-danger: var(--a2-color-red-100, #ffd4cc),
103
+ announcement-foreground-color-info: var(--a2-color-neutral-950, #040404),
104
+ announcement-foreground-color-success: var(--a2-color-neutral-950, #040404),
105
+ announcement-foreground-color-warning: var(--a2-color-neutral-950, #040404),
106
+ announcement-foreground-color-danger: var(--a2-color-neutral-950, #040404),
107
+ announcement-action-button-background-color-info: #ffffff0F,
108
+ announcement-action-button-background-color-success: #ffffff0F,
109
+ announcement-action-button-background-color-warning: #ffffff0F,
110
+ announcement-action-button-background-color-danger: #ffffff0F,
111
+ avatar-background-color: var(--a2-color-neutral-800, #292929),
112
+ avatar-foreground-color: var(--a2-color-neutral-0, #ffffff),
113
+ avatar-border-color: var(--a2-color-neutral-0, #ffffff),
114
+ avatar-indicator-background-color-online: var(--a2-color-green-100, #b8f5dd),
115
+ avatar-indicator-background-color-offline: var(--a2-color-neutral-400, #8b8b8b),
116
+ avatar-indicator-background-color-disabled: var(--a2-color-neutral-100, #dfdfdf),
117
+ avatar-indicator-border-color: var(--a2-color-neutral-100, #dfdfdf),
118
+ badge-background-color: var(--a2-color-red-100, #ffd4cc),
119
+ badge-foreground-color: var(--a2-color-neutral-950, #040404),
120
+ button-primary-foreground-color: var(--a2-color-neutral-950, #040404),
121
+ button-primary-foreground-color-hover: var(--a2-color-neutral-950, #040404),
122
+ button-primary-foreground-color-active: var(--a2-color-neutral-950, #040404),
123
+ button-primary-background-color: var(--a2-color-blue-300, #70b1ff),
124
+ button-primary-background-color-hover: var(--a2-color-blue-200, #9ecaff),
125
+ button-primary-background-color-active: var(--a2-color-blue-100, #cce3ff),
126
+ button-primary-border-color: rgba(0, 0, 0, 0),
127
+ button-primary-focus-ring-color: var(--a2-color-blue-300, #70b1ff),
128
+ button-secondary-foreground-color: var(--a2-color-neutral-0, #ffffff),
129
+ button-secondary-foreground-color-hover: var(--a2-color-neutral-0, #ffffff),
130
+ button-secondary-foreground-color-active: var(--a2-color-neutral-0, #ffffff),
131
+ button-secondary-background-color: #ffffff0F,
132
+ button-secondary-background-color-hover: #ffffff14,
133
+ button-secondary-background-color-active: #ffffff29,
134
+ button-secondary-border-color: rgba(0, 0, 0, 0),
135
+ button-secondary-focus-ring-color: var(--a2-color-blue-300, #70b1ff),
136
+ button-ghost-foreground-color: var(--a2-color-neutral-0, #ffffff),
137
+ button-ghost-foreground-color-hover: var(--a2-color-neutral-0, #ffffff),
138
+ button-ghost-foreground-color-active: var(--a2-color-neutral-0, #ffffff),
139
+ button-ghost-background-color: rgba(0, 0, 0, 0),
88
140
  button-ghost-background-color-hover: #ffffff14,
89
141
  button-ghost-background-color-active: #ffffff29,
90
- button-ghost-border-color: transparent,
91
- button-ghost-focus-ring-color: #78BBFA,
92
- button-danger-primary-foreground-color: #141414,
93
- button-danger-primary-foreground-color-hover: #141414,
94
- button-danger-primary-foreground-color-active: #141414,
95
- button-danger-primary-background-color: #ff745f,
96
- button-danger-primary-background-color-hover: #ff8a79ff,
97
- button-danger-primary-background-color-active: #d96553ff,
98
- button-danger-primary-border-color: transparent,
99
- button-danger-primary-focus-ring-color: #ff745f,
100
- button-danger-secondary-foreground-color: #ffffff,
101
- button-danger-secondary-foreground-color-hover: #ff745f,
102
- button-danger-secondary-foreground-color-active: #ff745f,
103
- button-danger-secondary-background-color: #ff745f33,
104
- button-danger-secondary-background-color-hover: #fe6e5852,
105
- button-danger-secondary-background-color-active: #fe6a5466,
106
- button-danger-secondary-border-color: transparent,
107
- button-danger-secondary-focus-ring-color: #ff745f,
108
- checkbox-unchecked-fill-color-default: #ffffff,
109
- checkbox-unchecked-fill-color-hover: #ffffff,
110
- checkbox-unchecked-fill-color-active: #ffffff,
111
- checkbox-unchecked-background-color-default: transparent,
142
+ button-ghost-border-color: rgba(0, 0, 0, 0),
143
+ button-ghost-focus-ring-color: var(--a2-color-blue-300, #70b1ff),
144
+ button-danger-primary-foreground-color: var(--a2-color-neutral-950, #040404),
145
+ button-danger-primary-foreground-color-hover: var(--a2-color-neutral-950, #040404),
146
+ button-danger-primary-foreground-color-active: var(--a2-color-neutral-950, #040404),
147
+ button-danger-primary-background-color: var(--a2-color-red-100, #ffd4cc),
148
+ button-danger-primary-background-color-hover: var(--a2-color-red-200, #ffac9e),
149
+ button-danger-primary-background-color-active: var(--a2-color-red-100, #ffd4cc),
150
+ button-danger-primary-border-color: rgba(0, 0, 0, 0),
151
+ button-danger-primary-focus-ring-color: var(--a2-color-red-300, #ff8974),
152
+ button-danger-secondary-foreground-color: var(--a2-color-neutral-0, #ffffff),
153
+ button-danger-secondary-foreground-color-hover: var(--a2-color-red-100, #ffd4cc),
154
+ button-danger-secondary-foreground-color-active: var(--a2-color-red-100, #ffd4cc),
155
+ button-danger-secondary-background-color: #ff897433,
156
+ button-danger-secondary-background-color-hover: var(--a2-color-red-600, #d62100),
157
+ button-danger-secondary-background-color-active: var(--a2-color-red-800, #731100),
158
+ button-danger-secondary-border-color: rgba(0, 0, 0, 0),
159
+ button-danger-secondary-focus-ring-color: var(--a2-color-red-300, #ff8974),
160
+ checkbox-checked-foreground-color: var(--a2-color-blue-300, #70b1ff),
161
+ checkbox-checked-foreground-color-hover: var(--a2-color-blue-200, #9ecaff),
162
+ checkbox-checked-foreground-color-active: var(--a2-color-blue-200, #9ecaff),
163
+ checkbox-checked-background-color-hover: #70b1ff1A,
164
+ checkbox-checked-focus-ring-color: var(--a2-color-blue-300, #70b1ff),
112
165
  checkbox-unchecked-background-color-hover: #ffffff14,
113
- checkbox-unchecked-background-color-active: #ffffff29,
114
- checkbox-checked-fill-color-default: #78BBFA,
115
- checkbox-checked-fill-color-hover: #abd8feda,
116
- checkbox-checked-fill-color-active: #abd8fee0,
117
- checkbox-checked-background-color-default: transparent,
118
- checkbox-checked-background-color-hover: #78bbfa14,
119
- checkbox-checked-background-color-active: #78bbfa29,
120
- checkbox-unchecked-error-fill-color-default: #ff745f,
121
- checkbox-unchecked-error-fill-color-hover: #ff745f,
122
- checkbox-unchecked-error-fill-color-active: #ff745f,
123
- checkbox-unchecked-error-background-color-default: transparent,
124
- checkbox-unchecked-error-background-color-hover: #f94d321a,
125
- checkbox-unchecked-error-background-color-active: #f94d3240,
126
- checkbox-checked-error-fill-color-default: #ff745f,
127
- checkbox-checked-error-fill-color-hover: #ff745f,
128
- checkbox-checked-error-fill-color-active: #ff745f,
129
- checkbox-checked-error-background-color-default: transparent,
130
- checkbox-checked-error-background-color-hover: #f94d321a,
131
- checkbox-checked-error-background-color-active: #f94d3240,
166
+ checkbox-unchecked-focus-ring-color: var(--a2-color-blue-300, #70b1ff),
167
+ checkbox-checked-error-foreground-color: var(--a2-color-red-100, #ffd4cc),
168
+ checkbox-checked-error-foreground-color-hover: var(--a2-color-red-100, #ffd4cc),
169
+ checkbox-checked-error-foreground-color-active: var(--a2-color-red-100, #ffd4cc),
170
+ checkbox-checked-error-background-color-hover: #ff89741A,
171
+ checkbox-checked-error-focus-ring-color: var(--a2-color-red-300, #ff8974),
172
+ checkbox-unchecked-error-background-color-hover: #ff89741A,
173
+ checkbox-unchecked-error-focus-ring-color: var(--a2-color-red-300, #ff8974),
132
174
  );
133
175
  $nonColor: (
134
- button-primary-border-radius: 0.375rem,
135
- button-secondary-border-radius: 0.375rem,
136
- button-ghost-border-radius: 0.375rem,
137
- button-danger-primary-border-radius: 0.375rem,
138
- button-danger-secondary-border-radius: 0.375rem,
176
+ button-primary-border-radius: var(--a2-border-radius-medium, var(--a2-radius-2, 0.375rem)),
177
+ button-secondary-border-radius: var(--a2-border-radius-medium, var(--a2-radius-2, 0.375rem)),
178
+ button-ghost-border-radius: var(--a2-border-radius-medium, var(--a2-radius-2, 0.375rem)),
179
+ button-danger-primary-border-radius: var(--a2-border-radius-medium, var(--a2-radius-2, 0.375rem)),
180
+ button-danger-secondary-border-radius: var(--a2-border-radius-medium, var(--a2-radius-2, 0.375rem)),
181
+ checkbox-checked-border-radius: var(--a2-border-radius-small, var(--a2-radius-1, 0.1875rem)),
182
+ checkbox-unchecked-border-radius: var(--a2-border-radius-small, var(--a2-radius-1, 0.1875rem)),
183
+ checkbox-checked-error-border-radius: var(--a2-border-radius-small, var(--a2-radius-1, 0.1875rem)),
184
+ checkbox-unchecked-error-border-radius: var(--a2-border-radius-small, var(--a2-radius-1, 0.1875rem)),
139
185
  );