@charcoal-ui/react 6.0.0-beta.2 → 6.0.0-rc.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.
Files changed (67) hide show
  1. package/dist/index.cjs +1 -1
  2. package/dist/index.cjs.map +1 -1
  3. package/dist/index.css +160 -152
  4. package/dist/layered.css +160 -152
  5. package/dist/layered.css.map +1 -1
  6. package/package.json +5 -5
  7. package/src/__tests__/css-variables.test.ts +66 -0
  8. package/src/components/Button/__snapshots__/index.css.snap +30 -30
  9. package/src/components/Button/index.css +30 -30
  10. package/src/components/Button/index.story.tsx +18 -0
  11. package/src/components/Checkbox/CheckboxInput/index.css +10 -10
  12. package/src/components/Checkbox/__snapshots__/index.css.snap +1 -1
  13. package/src/components/Checkbox/index.css +1 -1
  14. package/src/components/Checkbox/index.story.tsx +18 -0
  15. package/src/components/Clickable/index.story.tsx +14 -0
  16. package/src/components/DropdownSelector/DropdownMenuItem/index.css +3 -3
  17. package/src/components/DropdownSelector/ListItem/index.css +1 -1
  18. package/src/components/DropdownSelector/MenuItemGroup/index.css +1 -1
  19. package/src/components/DropdownSelector/Popover/index.css +2 -2
  20. package/src/components/DropdownSelector/__snapshots__/index.css.snap +6 -6
  21. package/src/components/DropdownSelector/index.css +6 -6
  22. package/src/components/DropdownSelector/index.story.tsx +49 -0
  23. package/src/components/FieldLabel/__snapshots__/index.css.snap +3 -3
  24. package/src/components/FieldLabel/index.css +3 -3
  25. package/src/components/HintText/__snapshots__/index.css.snap +3 -3
  26. package/src/components/HintText/index.css +3 -3
  27. package/src/components/HintText/index.story.tsx +12 -0
  28. package/src/components/IconButton/__snapshots__/index.css.snap +16 -16
  29. package/src/components/IconButton/index.css +16 -16
  30. package/src/components/IconButton/index.story.tsx +15 -0
  31. package/src/components/LoadingSpinner/__snapshots__/index.css.snap +7 -7
  32. package/src/components/LoadingSpinner/index.css +7 -7
  33. package/src/components/LoadingSpinner/index.story.tsx +13 -0
  34. package/src/components/Modal/Dialog/index.css +1 -1
  35. package/src/components/Modal/ModalPlumbing.css +1 -1
  36. package/src/components/Modal/__snapshots__/index.css.snap +2 -2
  37. package/src/components/Modal/index.css +2 -2
  38. package/src/components/Modal/index.story.tsx +20 -0
  39. package/src/components/MultiSelect/__snapshots__/index.css.snap +10 -10
  40. package/src/components/MultiSelect/index.css +10 -10
  41. package/src/components/MultiSelect/index.story.tsx +50 -0
  42. package/src/components/Pagination/Pagination.story.tsx +11 -0
  43. package/src/components/Pagination/__snapshots__/index.css.snap +11 -11
  44. package/src/components/Pagination/index.css +11 -11
  45. package/src/components/Radio/RadioInput/index.css +10 -10
  46. package/src/components/Radio/__snapshots__/index.css.snap +1 -1
  47. package/src/components/Radio/index.css +1 -1
  48. package/src/components/Radio/index.story.tsx +40 -0
  49. package/src/components/SegmentedControl/__snapshots__/index.css.snap +4 -4
  50. package/src/components/SegmentedControl/index.css +4 -4
  51. package/src/components/SegmentedControl/index.story.tsx +20 -0
  52. package/src/components/Switch/SwitchInput/index.css +9 -9
  53. package/src/components/Switch/__snapshots__/index.css.snap +1 -1
  54. package/src/components/Switch/index.css +1 -1
  55. package/src/components/Switch/index.story.tsx +19 -0
  56. package/src/components/TagItem/__snapshots__/index.css.snap +5 -4
  57. package/src/components/TagItem/index.css +5 -4
  58. package/src/components/TagItem/index.story.tsx +17 -0
  59. package/src/components/TextArea/TextArea.story.tsx +30 -0
  60. package/src/components/TextArea/__snapshots__/index.css.snap +7 -5
  61. package/src/components/TextArea/index.css +8 -5
  62. package/src/components/TextEllipsis/__snapshots__/index.css.snap +3 -0
  63. package/src/components/TextEllipsis/index.css +4 -0
  64. package/src/components/TextField/AssistiveText/index.css +2 -2
  65. package/src/components/TextField/TextField.story.tsx +30 -0
  66. package/src/components/TextField/__snapshots__/index.css.snap +6 -6
  67. package/src/components/TextField/index.css +6 -6
@@ -26,6 +26,24 @@ export const Danger: StoryObj<typeof Button> = {
26
26
  render: () => <Button variant="Danger">Danger</Button>,
27
27
  }
28
28
 
29
+ export const TokenV2: StoryObj<typeof Button> = {
30
+ parameters: {
31
+ tokenVersion: 'v2',
32
+ },
33
+ render: () => (
34
+ <div style={{ display: 'flex', flexWrap: 'wrap', gap: 8 }}>
35
+ <Button>Default</Button>
36
+ <Button variant="Primary">Primary</Button>
37
+ <Button variant="Navigation">Navigation</Button>
38
+ <Button variant="Overlay">Overlay</Button>
39
+ <Button variant="Danger">Danger</Button>
40
+ <Button isActive>Active</Button>
41
+ <Button disabled>Disabled</Button>
42
+ <Button size="S">Small</Button>
43
+ </div>
44
+ ),
45
+ }
46
+
29
47
  export const Small: StoryObj<typeof Button> = {
30
48
  render: () => <Button size="S">Small</Button>,
31
49
  }
@@ -20,7 +20,7 @@
20
20
  }
21
21
 
22
22
  .charcoal-checkbox-input:checked {
23
- background-color: var(--charcoal-brand);
23
+ background-color: var(--charcoal-color-container-primary-default);
24
24
  }
25
25
 
26
26
  .charcoal-checkbox-input:checked::after {
@@ -38,7 +38,7 @@
38
38
  .charcoal-checkbox-input:not(:checked) {
39
39
  border-width: 2px;
40
40
  border-style: solid;
41
- border-color: var(--charcoal-text4);
41
+ border-color: var(--charcoal-color-border-default);
42
42
  }
43
43
 
44
44
  .charcoal-checkbox-input:not(:disabled):focus {
@@ -53,10 +53,10 @@
53
53
  }
54
54
 
55
55
  .charcoal-checkbox-input:checked:not(:disabled):hover {
56
- background-color: var(--charcoal-brand-hover);
56
+ background-color: var(--charcoal-color-container-primary-hover);
57
57
  }
58
58
  .charcoal-checkbox-input:checked:not(:disabled):active {
59
- background-color: var(--charcoal-brand-press);
59
+ background-color: var(--charcoal-color-container-primary-press);
60
60
  }
61
61
 
62
62
  .charcoal-checkbox-input[aria-invalid='true'],
@@ -66,19 +66,19 @@
66
66
 
67
67
  .charcoal-checkbox-input[data-rounded='true'] {
68
68
  border-radius: 10px;
69
- background-color: var(--charcoal-surface3);
69
+ background-color: var(--charcoal-color-container-secondary-default);
70
70
  border: 2px solid transparent;
71
71
  }
72
72
 
73
73
  .charcoal-checkbox-input[data-rounded='true']:checked {
74
- background-color: var(--charcoal-brand);
74
+ background-color: var(--charcoal-color-container-primary-default);
75
75
  }
76
76
 
77
77
  .charcoal-checkbox-input[data-rounded='true']:not(:disabled):hover {
78
- background-color: var(--charcoal-surface3-hover);
78
+ background-color: var(--charcoal-color-container-secondary-hover);
79
79
  }
80
80
  .charcoal-checkbox-input[data-rounded='true']:not(:disabled):active {
81
- background-color: var(--charcoal-surface3-press);
81
+ background-color: var(--charcoal-color-container-secondary-press);
82
82
  }
83
83
 
84
84
  .charcoal-checkbox-input[data-rounded='true']:not(:disabled):focus-visible {
@@ -86,10 +86,10 @@
86
86
  }
87
87
 
88
88
  .charcoal-checkbox-input[data-rounded='true']:checked:not(:disabled):hover {
89
- background-color: var(--charcoal-brand-hover);
89
+ background-color: var(--charcoal-color-container-primary-hover);
90
90
  }
91
91
  .charcoal-checkbox-input[data-rounded='true']:checked:not(:disabled):active {
92
- background-color: var(--charcoal-brand-press);
92
+ background-color: var(--charcoal-color-container-primary-press);
93
93
  }
94
94
 
95
95
  .charcoal-checkbox-input[data-rounded='true'][aria-invalid='true'],
@@ -16,7 +16,7 @@
16
16
 
17
17
  .charcoal-checkbox__label_div {
18
18
  flex: 1;
19
- color: var(--charcoal-text2);
19
+ color: var(--charcoal-color-text-default);
20
20
  font-size: 14px;
21
21
  line-height: 20px;
22
22
  }
@@ -16,7 +16,7 @@
16
16
 
17
17
  .charcoal-checkbox__label_div {
18
18
  flex: 1;
19
- color: var(--charcoal-text2);
19
+ color: var(--charcoal-color-text-default);
20
20
  font-size: 14px;
21
21
  line-height: 20px;
22
22
  }
@@ -71,3 +71,21 @@ export const Invalid: StoryObj<typeof Checkbox> = {
71
71
  )
72
72
  },
73
73
  }
74
+
75
+ export const TokenV2: StoryObj<typeof Checkbox> = {
76
+ parameters: {
77
+ tokenVersion: 'v2',
78
+ },
79
+ render: () => {
80
+ return (
81
+ <div style={{ display: 'grid', gap: 16 }}>
82
+ <Checkbox>Default</Checkbox>
83
+ <Checkbox checked>Checked</Checkbox>
84
+ <Checkbox invalid>Invalid</Checkbox>
85
+ <Checkbox checked disabled>
86
+ Disabled
87
+ </Checkbox>
88
+ </div>
89
+ )
90
+ },
91
+ }
@@ -18,3 +18,17 @@ export const Link: StoryObj = {
18
18
  </Clickable>
19
19
  ),
20
20
  }
21
+
22
+ export const TokenV2: StoryObj = {
23
+ parameters: {
24
+ tokenVersion: 'v2',
25
+ },
26
+ render: () => (
27
+ <div style={{ display: 'flex', gap: 16 }}>
28
+ <Clickable onClick={action('click')}>button</Clickable>
29
+ <Clickable component="a" href="#" onClick={action('click')}>
30
+ link
31
+ </Clickable>
32
+ </div>
33
+ ),
34
+ }
@@ -1,7 +1,7 @@
1
1
  .charcoal-dropdown-selector-menu-item {
2
2
  font-size: 14px;
3
3
  line-height: 22px;
4
- color: var(--charcoal-text2);
4
+ color: var(--charcoal-color-text-secondary-default);
5
5
  padding: 9px 0;
6
6
 
7
7
  display: flex;
@@ -15,7 +15,7 @@
15
15
  }
16
16
 
17
17
  .charcoal-dropdown-selector-menu-item-icon {
18
- color: var(--charcoal-text2);
18
+ color: var(--charcoal-color-text-secondary-default);
19
19
  padding-right: 4px;
20
20
  }
21
21
 
@@ -27,7 +27,7 @@
27
27
  .charcoal-dropdown-selector-menu-secondary {
28
28
  font-size: 12px;
29
29
  line-height: 20px;
30
- color: var(--charcoal-text3);
30
+ color: var(--charcoal-color-text-tertiary-default);
31
31
  padding-bottom: 9px;
32
32
 
33
33
  display: flex;
@@ -15,7 +15,7 @@
15
15
  .charcoal-list-item:not([aria-disabled='true']):hover,
16
16
  .charcoal-list-item:not([aria-disabled='true']):focus,
17
17
  .charcoal-list-item:not([aria-disabled='true']):focus-within {
18
- background-color: var(--charcoal-surface3);
18
+ background-color: var(--charcoal-color-container-secondary-default);
19
19
  }
20
20
 
21
21
  .charcoal-list-item[aria-disabled='true'] {
@@ -4,7 +4,7 @@
4
4
 
5
5
  .charcoal-menu-item-group > span {
6
6
  display: block;
7
- color: var(--charcoal-text3);
7
+ color: var(--charcoal-color-text-tertiary-default);
8
8
  font-size: 12px;
9
9
  font-weight: bold;
10
10
  padding: 12px 0 8px 16px;
@@ -3,8 +3,8 @@
3
3
  list-style: none;
4
4
  overflow: auto;
5
5
  max-height: inherit;
6
- background-color: var(--charcoal-background1);
7
- border: solid 1px var(--charcoal-border-default);
6
+ background-color: var(--charcoal-color-background-default);
7
+ border: solid 1px var(--charcoal-color-border-secondary);
8
8
  border-radius: 8px;
9
9
  padding-top: 8px;
10
10
  padding-bottom: 8px;
@@ -23,7 +23,7 @@
23
23
  gap: 4px;
24
24
  padding-right: 8px;
25
25
  padding-left: 8px;
26
- background-color: var(--charcoal-surface3);
26
+ background-color: var(--charcoal-color-container-secondary-default-a);
27
27
  border-radius: 4px;
28
28
  transition: 0.2s box-shadow,
29
29
  0.2s background-color;
@@ -43,11 +43,11 @@
43
43
  }
44
44
 
45
45
  .charcoal-dropdown-selector-button:not(:disabled)[data-active='true'], .charcoal-dropdown-selector-button:not(:disabled):active {
46
- background-color: var(--charcoal-surface3-press);
46
+ background-color: var(--charcoal-color-container-secondary-press-a);
47
47
  }
48
48
 
49
49
  .charcoal-dropdown-selector-button:not(:disabled):hover {
50
- background-color: var(--charcoal-surface3-hover);
50
+ background-color: var(--charcoal-color-container-secondary-hover-a);
51
51
  }
52
52
 
53
53
  .charcoal-dropdown-selector-button:not(:disabled):focus:not(:focus-visible) {
@@ -63,17 +63,17 @@
63
63
  font-size: 14px;
64
64
  line-height: 22px;
65
65
  display: flow-root;
66
- color: var(--charcoal-text2);
66
+ color: var(--charcoal-color-text-default);
67
67
  overflow: hidden;
68
68
  text-overflow: ellipsis;
69
69
  white-space: nowrap;
70
70
  }
71
71
 
72
72
  .charcoal-ui-dropdown-selector-text[data-placeholder='true'] {
73
- color: var(--charcoal-text3);
73
+ color: var(--charcoal-color-text-placeholder-default);
74
74
  }
75
75
 
76
76
  .charcoal-ui-dropdown-selector-icon {
77
- color: var(--charcoal-text2);
77
+ color: var(--charcoal-color-icon-secondary-default);
78
78
  }
79
79
 
@@ -25,7 +25,7 @@
25
25
 
26
26
  padding-right: 8px;
27
27
  padding-left: 8px;
28
- background-color: var(--charcoal-surface3);
28
+ background-color: var(--charcoal-color-container-secondary-default-a);
29
29
  border-radius: 4px;
30
30
 
31
31
  transition:
@@ -48,11 +48,11 @@
48
48
 
49
49
  &[data-active='true'],
50
50
  &:active {
51
- background-color: var(--charcoal-surface3-press);
51
+ background-color: var(--charcoal-color-container-secondary-press-a);
52
52
  }
53
53
 
54
54
  &:hover {
55
- background-color: var(--charcoal-surface3-hover);
55
+ background-color: var(--charcoal-color-container-secondary-hover-a);
56
56
  }
57
57
 
58
58
  &:focus:not(:focus-visible) {
@@ -71,16 +71,16 @@
71
71
  font-size: 14px;
72
72
  line-height: 22px;
73
73
  display: flow-root;
74
- color: var(--charcoal-text2);
74
+ color: var(--charcoal-color-text-default);
75
75
  overflow: hidden;
76
76
  text-overflow: ellipsis;
77
77
  white-space: nowrap;
78
78
 
79
79
  &[data-placeholder='true'] {
80
- color: var(--charcoal-text3);
80
+ color: var(--charcoal-color-text-placeholder-default);
81
81
  }
82
82
  }
83
83
 
84
84
  .charcoal-ui-dropdown-selector-icon {
85
- color: var(--charcoal-text2);
85
+ color: var(--charcoal-color-icon-secondary-default);
86
86
  }
@@ -454,6 +454,55 @@ export const WithSeconday: StoryObj<typeof DropdownSelector> = {
454
454
  },
455
455
  }
456
456
 
457
+ export const TokenV2: StoryObj<typeof DropdownSelector> = {
458
+ parameters: {
459
+ tokenVersion: 'v2',
460
+ },
461
+ render: function Render(props) {
462
+ const [selected, setSelected] = useState('option-3')
463
+ const [invalidSelected, setInvalidSelected] = useState('option-1')
464
+
465
+ return (
466
+ <div style={{ display: 'grid', gap: 24, width: 288 }}>
467
+ <DropdownSelector
468
+ {...props}
469
+ value={selected}
470
+ onChange={setSelected}
471
+ label="Label"
472
+ showLabel
473
+ required
474
+ requiredText="required"
475
+ subLabel="SubLabel"
476
+ assistiveText="assistiveText"
477
+ >
478
+ <DropdownMenuItem value="option-1">Option 1</DropdownMenuItem>
479
+ <DropdownMenuItem value="option-2" disabled>
480
+ Option 2 (disabled)
481
+ </DropdownMenuItem>
482
+ <DropdownMenuItem
483
+ value="option-3"
484
+ secondary={<span>Option 3 Secondary</span>}
485
+ >
486
+ Option 3
487
+ </DropdownMenuItem>
488
+ </DropdownSelector>
489
+ <DropdownSelector
490
+ {...props}
491
+ value={invalidSelected}
492
+ onChange={setInvalidSelected}
493
+ label="Invalid"
494
+ invalid
495
+ assistiveText="エラーメッセージ"
496
+ >
497
+ <DropdownMenuItem value="option-1">Option 1</DropdownMenuItem>
498
+ <DropdownMenuItem value="option-2">Option 2</DropdownMenuItem>
499
+ <DropdownMenuItem value="option-3">Option 3</DropdownMenuItem>
500
+ </DropdownSelector>
501
+ </div>
502
+ )
503
+ },
504
+ }
505
+
457
506
  export const WithRef: StoryObj<typeof DropdownSelector> = {
458
507
  render: function Render(props) {
459
508
  const [selected, setSelected] = useState('1')
@@ -3,21 +3,21 @@
3
3
  line-height: 22px;
4
4
  font-weight: bold;
5
5
  display: flow-root;
6
- color: var(--charcoal-text1);
6
+ color: var(--charcoal-color-text-default);
7
7
  }
8
8
 
9
9
  .charcoal-field-label-required-text {
10
10
  font-size: 14px;
11
11
  line-height: 22px;
12
12
  display: flow-root;
13
- color: var(--charcoal-text2);
13
+ color: var(--charcoal-color-text-secondary-default);
14
14
  }
15
15
 
16
16
  .charcoal-field-label-sub-label {
17
17
  font-size: 14px;
18
18
  line-height: 22px;
19
19
  display: flow-root;
20
- color: var(--charcoal-text3);
20
+ color: var(--charcoal-color-text-tertiary-default);
21
21
  transition: 0.2s color,
22
22
  0.2s box-shadow;
23
23
  }
@@ -3,21 +3,21 @@
3
3
  line-height: 22px;
4
4
  font-weight: bold;
5
5
  display: flow-root;
6
- color: var(--charcoal-text1);
6
+ color: var(--charcoal-color-text-default);
7
7
  }
8
8
 
9
9
  .charcoal-field-label-required-text {
10
10
  font-size: 14px;
11
11
  line-height: 22px;
12
12
  display: flow-root;
13
- color: var(--charcoal-text2);
13
+ color: var(--charcoal-color-text-secondary-default);
14
14
  }
15
15
 
16
16
  .charcoal-field-label-sub-label {
17
17
  font-size: 14px;
18
18
  line-height: 22px;
19
19
  display: flow-root;
20
- color: var(--charcoal-text3);
20
+ color: var(--charcoal-color-text-tertiary-default);
21
21
  transition:
22
22
  0.2s color,
23
23
  0.2s box-shadow;
@@ -1,5 +1,5 @@
1
1
  .charcoal-hint-text {
2
- background-color: var(--charcoal-surface3);
2
+ background-color: var(--charcoal-color-container-secondary-default);
3
3
  border-radius: 8px;
4
4
  padding: 12px 16px;
5
5
  display: flex;
@@ -20,13 +20,13 @@
20
20
  .charcoal-hint-text-icon {
21
21
  display: flex;
22
22
  align-items: center;
23
- color: var(--charcoal-text3);
23
+ color: var(--charcoal-color-icon-tertiary-default);
24
24
  height: 22px;
25
25
  margin: 0 4px 0 0;
26
26
  }
27
27
 
28
28
  .charcoal-hint-text-message {
29
- color: var(--charcoal-text2);
29
+ color: var(--charcoal-color-text-secondary-default);
30
30
  font-size: 14px;
31
31
  line-height: 22px;
32
32
  display: flow-root;
@@ -1,5 +1,5 @@
1
1
  .charcoal-hint-text {
2
- background-color: var(--charcoal-surface3);
2
+ background-color: var(--charcoal-color-container-secondary-default);
3
3
  border-radius: 8px;
4
4
  padding: 12px 16px;
5
5
  display: flex;
@@ -17,13 +17,13 @@
17
17
  .charcoal-hint-text-icon {
18
18
  display: flex;
19
19
  align-items: center;
20
- color: var(--charcoal-text3);
20
+ color: var(--charcoal-color-icon-tertiary-default);
21
21
  height: 22px;
22
22
  margin: 0 4px 0 0;
23
23
  }
24
24
 
25
25
  .charcoal-hint-text-message {
26
- color: var(--charcoal-text2);
26
+ color: var(--charcoal-color-text-secondary-default);
27
27
  font-size: 14px;
28
28
  line-height: 22px;
29
29
  display: flow-root;
@@ -37,3 +37,15 @@ export const NarrowWidth: StoryObj<typeof HintText> = {
37
37
  </div>
38
38
  ),
39
39
  }
40
+
41
+ export const TokenV2: StoryObj<typeof HintText> = {
42
+ parameters: {
43
+ tokenVersion: 'v2',
44
+ },
45
+ render: () => (
46
+ <div style={{ display: 'grid', gap: 16, width: 320 }}>
47
+ <HintText context="section">Section hint text</HintText>
48
+ <HintText context="page">Page hint text</HintText>
49
+ </div>
50
+ ),
51
+ }
@@ -53,43 +53,43 @@
53
53
  }
54
54
 
55
55
  .charcoal-icon-button[data-variant='Default'] {
56
- color: var(--charcoal-text3);
57
- background-color: var(--charcoal-transparent);
56
+ color: var(--charcoal-color-icon-tertiary-default);
57
+ background-color: var(--charcoal-color-container-default-a);
58
58
  }
59
59
 
60
60
  .charcoal-icon-button[data-variant='Default'][data-active='true']:not(:disabled):not([aria-disabled]), .charcoal-icon-button[data-variant='Default'][data-active='true'][aria-disabled='false'] {
61
- color: var(--charcoal-text3-press);
62
- background-color: var(--charcoal-transparent-press);
61
+ color: var(--charcoal-color-icon-tertiary-press);
62
+ background-color: var(--charcoal-color-container-press-a);
63
63
  }
64
64
 
65
65
  .charcoal-icon-button[data-variant='Default'][data-active='false']:not(:disabled):not([aria-disabled]):hover, .charcoal-icon-button[data-variant='Default'][data-active='false'][aria-disabled='false']:hover {
66
- color: var(--charcoal-text3-hover);
67
- background-color: var(--charcoal-transparent-hover);
66
+ color: var(--charcoal-color-icon-tertiary-hover);
67
+ background-color: var(--charcoal-color-container-hover-a);
68
68
  }
69
69
 
70
70
  .charcoal-icon-button[data-variant='Default'][data-active='false']:not(:disabled):not([aria-disabled]):active, .charcoal-icon-button[data-variant='Default'][data-active='false'][aria-disabled='false']:active {
71
- color: var(--charcoal-text3-press);
72
- background-color: var(--charcoal-transparent-press);
71
+ color: var(--charcoal-color-icon-tertiary-press);
72
+ background-color: var(--charcoal-color-container-press-a);
73
73
  }
74
74
 
75
75
  .charcoal-icon-button[data-variant='Overlay'] {
76
- color: var(--charcoal-text5);
77
- background-color: var(--charcoal-surface4);
76
+ color: var(--charcoal-color-icon-on-on-img-default);
77
+ background-color: var(--charcoal-color-container-on-img-default);
78
78
  }
79
79
 
80
80
  .charcoal-icon-button[data-variant='Overlay'][data-active='true']:not(:disabled):not([aria-disabled]), .charcoal-icon-button[data-variant='Overlay'][data-active='true'][aria-disabled='false'] {
81
- color: var(--charcoal-text5-press);
82
- background-color: var(--charcoal-surface4-press);
81
+ color: var(--charcoal-color-icon-on-on-img-press);
82
+ background-color: var(--charcoal-color-container-on-img-press);
83
83
  }
84
84
 
85
85
  .charcoal-icon-button[data-variant='Overlay'][data-active='false']:not(:disabled):not([aria-disabled]):hover, .charcoal-icon-button[data-variant='Overlay'][data-active='false'][aria-disabled='false']:hover {
86
- color: var(--charcoal-text5-hover);
87
- background-color: var(--charcoal-surface4-hover);
86
+ color: var(--charcoal-color-icon-on-on-img-hover);
87
+ background-color: var(--charcoal-color-container-on-img-hover);
88
88
  }
89
89
 
90
90
  .charcoal-icon-button[data-variant='Overlay'][data-active='false']:not(:disabled):not([aria-disabled]):active, .charcoal-icon-button[data-variant='Overlay'][data-active='false'][aria-disabled='false']:active {
91
- color: var(--charcoal-text5-press);
92
- background-color: var(--charcoal-surface4-press);
91
+ color: var(--charcoal-color-icon-on-on-img-press);
92
+ background-color: var(--charcoal-color-container-on-img-press);
93
93
  }
94
94
 
95
95
  .charcoal-icon-button:not(:disabled):not([aria-disabled]):focus, .charcoal-icon-button[aria-disabled='false']:focus {
@@ -55,48 +55,48 @@
55
55
  }
56
56
 
57
57
  &[data-variant='Default'] {
58
- color: var(--charcoal-text3);
59
- background-color: var(--charcoal-transparent);
58
+ color: var(--charcoal-color-icon-tertiary-default);
59
+ background-color: var(--charcoal-color-container-default-a);
60
60
 
61
61
  &[data-active='true']:not(:disabled):not([aria-disabled]),
62
62
  &[data-active='true'][aria-disabled='false'] {
63
- color: var(--charcoal-text3-press);
64
- background-color: var(--charcoal-transparent-press);
63
+ color: var(--charcoal-color-icon-tertiary-press);
64
+ background-color: var(--charcoal-color-container-press-a);
65
65
  }
66
66
 
67
67
  &[data-active='false']:not(:disabled):not([aria-disabled]):hover,
68
68
  &[data-active='false'][aria-disabled='false']:hover {
69
- color: var(--charcoal-text3-hover);
70
- background-color: var(--charcoal-transparent-hover);
69
+ color: var(--charcoal-color-icon-tertiary-hover);
70
+ background-color: var(--charcoal-color-container-hover-a);
71
71
  }
72
72
 
73
73
  &[data-active='false']:not(:disabled):not([aria-disabled]):active,
74
74
  &[data-active='false'][aria-disabled='false']:active {
75
- color: var(--charcoal-text3-press);
76
- background-color: var(--charcoal-transparent-press);
75
+ color: var(--charcoal-color-icon-tertiary-press);
76
+ background-color: var(--charcoal-color-container-press-a);
77
77
  }
78
78
  }
79
79
 
80
80
  &[data-variant='Overlay'] {
81
- color: var(--charcoal-text5);
82
- background-color: var(--charcoal-surface4);
81
+ color: var(--charcoal-color-icon-on-on-img-default);
82
+ background-color: var(--charcoal-color-container-on-img-default);
83
83
 
84
84
  &[data-active='true']:not(:disabled):not([aria-disabled]),
85
85
  &[data-active='true'][aria-disabled='false'] {
86
- color: var(--charcoal-text5-press);
87
- background-color: var(--charcoal-surface4-press);
86
+ color: var(--charcoal-color-icon-on-on-img-press);
87
+ background-color: var(--charcoal-color-container-on-img-press);
88
88
  }
89
89
 
90
90
  &[data-active='false']:not(:disabled):not([aria-disabled]):hover,
91
91
  &[data-active='false'][aria-disabled='false']:hover {
92
- color: var(--charcoal-text5-hover);
93
- background-color: var(--charcoal-surface4-hover);
92
+ color: var(--charcoal-color-icon-on-on-img-hover);
93
+ background-color: var(--charcoal-color-container-on-img-hover);
94
94
  }
95
95
 
96
96
  &[data-active='false']:not(:disabled):not([aria-disabled]):active,
97
97
  &[data-active='false'][aria-disabled='false']:active {
98
- color: var(--charcoal-text5-press);
99
- background-color: var(--charcoal-surface4-press);
98
+ color: var(--charcoal-color-icon-on-on-img-press);
99
+ background-color: var(--charcoal-color-container-on-img-press);
100
100
  }
101
101
  }
102
102
 
@@ -32,3 +32,18 @@ export const Overlay: StoryObj<typeof IconButton> = {
32
32
  return <IconButton icon="16/Add" variant="Overlay" />
33
33
  },
34
34
  }
35
+
36
+ export const TokenV2: StoryObj<typeof IconButton> = {
37
+ parameters: {
38
+ tokenVersion: 'v2',
39
+ },
40
+ render: () => {
41
+ return (
42
+ <div style={{ display: 'flex', gap: 8 }}>
43
+ <IconButton icon="16/Add" title="add" />
44
+ <IconButton icon="16/Add" title="active" isActive />
45
+ <IconButton icon="16/Add" title="overlay" variant="Overlay" />
46
+ </div>
47
+ )
48
+ },
49
+ }
@@ -1,18 +1,18 @@
1
1
  .charcoal-loading-spinner {
2
2
  box-sizing: content-box;
3
3
  margin: auto;
4
- padding: var(--charcoal-loading-spinner-padding);
4
+ padding: 16px;
5
5
  border-radius: 8px;
6
- font-size: var(--charcoal-loading-spinner-size);
7
- width: var(--charcoal-loading-spinner-size);
8
- height: var(--charcoal-loading-spinner-size);
6
+ font-size: 48px;
7
+ width: 48px;
8
+ height: 48px;
9
9
  opacity: 0.84;
10
- color: var(--charcoal-text4);
11
- background-color: var(--charcoal-background1);
10
+ color: var(--charcoal-color-icon-tertiary-default);
11
+ background-color: var(--charcoal-color-background-default);
12
12
  }
13
13
 
14
14
  .charcoal-loading-spinner[data-transparent='true'] {
15
- background-color: var(--charcoal-transparent);
15
+ background-color: var(--charcoal-color-container-default-a);
16
16
  }
17
17
 
18
18
  @keyframes charcoal-loading-spinner-icon-scale-out {