@charcoal-ui/react 6.0.0-beta.2 → 6.0.0-rc.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 (77) hide show
  1. package/dist/components/Modal/index.d.ts +1 -1
  2. package/dist/components/TagItem/index.d.ts +5 -4
  3. package/dist/components/TagItem/index.d.ts.map +1 -1
  4. package/dist/index.cjs +2 -2
  5. package/dist/index.cjs.map +1 -1
  6. package/dist/index.css +160 -152
  7. package/dist/index.d.ts +2 -2
  8. package/dist/index.d.ts.map +1 -1
  9. package/dist/index.js +2 -2
  10. package/dist/index.js.map +1 -1
  11. package/dist/layered.css +160 -152
  12. package/dist/layered.css.map +1 -1
  13. package/package.json +5 -5
  14. package/src/__tests__/css-variables.test.ts +66 -0
  15. package/src/components/Button/__snapshots__/index.css.snap +30 -30
  16. package/src/components/Button/index.css +30 -30
  17. package/src/components/Button/index.story.tsx +18 -0
  18. package/src/components/Checkbox/CheckboxInput/index.css +10 -10
  19. package/src/components/Checkbox/__snapshots__/index.css.snap +1 -1
  20. package/src/components/Checkbox/index.css +1 -1
  21. package/src/components/Checkbox/index.story.tsx +18 -0
  22. package/src/components/Clickable/index.story.tsx +14 -0
  23. package/src/components/DropdownSelector/DropdownMenuItem/index.css +3 -3
  24. package/src/components/DropdownSelector/ListItem/index.css +1 -1
  25. package/src/components/DropdownSelector/MenuItemGroup/index.css +1 -1
  26. package/src/components/DropdownSelector/Popover/index.css +2 -2
  27. package/src/components/DropdownSelector/__snapshots__/index.css.snap +6 -6
  28. package/src/components/DropdownSelector/index.css +6 -6
  29. package/src/components/DropdownSelector/index.story.tsx +49 -0
  30. package/src/components/FieldLabel/__snapshots__/index.css.snap +3 -3
  31. package/src/components/FieldLabel/index.css +3 -3
  32. package/src/components/HintText/__snapshots__/index.css.snap +3 -3
  33. package/src/components/HintText/index.css +3 -3
  34. package/src/components/HintText/index.story.tsx +12 -0
  35. package/src/components/IconButton/__snapshots__/index.css.snap +16 -16
  36. package/src/components/IconButton/index.css +16 -16
  37. package/src/components/IconButton/index.story.tsx +15 -0
  38. package/src/components/LoadingSpinner/__snapshots__/index.css.snap +7 -7
  39. package/src/components/LoadingSpinner/index.css +7 -7
  40. package/src/components/LoadingSpinner/index.story.tsx +13 -0
  41. package/src/components/Modal/Dialog/index.css +1 -1
  42. package/src/components/Modal/ModalPlumbing.css +1 -1
  43. package/src/components/Modal/__snapshots__/index.css.snap +2 -2
  44. package/src/components/Modal/index.css +2 -2
  45. package/src/components/Modal/index.story.tsx +20 -0
  46. package/src/components/MultiSelect/__snapshots__/index.css.snap +10 -10
  47. package/src/components/MultiSelect/index.css +10 -10
  48. package/src/components/MultiSelect/index.story.tsx +50 -0
  49. package/src/components/Pagination/Pagination.story.tsx +11 -0
  50. package/src/components/Pagination/__snapshots__/index.css.snap +11 -11
  51. package/src/components/Pagination/index.css +11 -11
  52. package/src/components/Radio/RadioInput/index.css +10 -10
  53. package/src/components/Radio/__snapshots__/index.css.snap +1 -1
  54. package/src/components/Radio/index.css +1 -1
  55. package/src/components/Radio/index.story.tsx +40 -0
  56. package/src/components/SegmentedControl/__snapshots__/index.css.snap +4 -4
  57. package/src/components/SegmentedControl/index.css +4 -4
  58. package/src/components/SegmentedControl/index.story.tsx +20 -0
  59. package/src/components/Switch/SwitchInput/index.css +9 -9
  60. package/src/components/Switch/__snapshots__/index.css.snap +1 -1
  61. package/src/components/Switch/index.css +1 -1
  62. package/src/components/Switch/index.story.tsx +19 -0
  63. package/src/components/TagItem/__snapshots__/index.css.snap +5 -4
  64. package/src/components/TagItem/__snapshots__/index.story.storyshot +17 -17
  65. package/src/components/TagItem/index.css +5 -4
  66. package/src/components/TagItem/index.story.tsx +17 -0
  67. package/src/components/TagItem/index.tsx +25 -7
  68. package/src/components/TextArea/TextArea.story.tsx +30 -0
  69. package/src/components/TextArea/__snapshots__/index.css.snap +7 -5
  70. package/src/components/TextArea/index.css +8 -5
  71. package/src/components/TextEllipsis/__snapshots__/index.css.snap +3 -0
  72. package/src/components/TextEllipsis/index.css +4 -0
  73. package/src/components/TextField/AssistiveText/index.css +2 -2
  74. package/src/components/TextField/TextField.story.tsx +30 -0
  75. package/src/components/TextField/__snapshots__/index.css.snap +6 -6
  76. package/src/components/TextField/index.css +6 -6
  77. package/src/index.ts +2 -2
@@ -1,17 +1,17 @@
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
  &[data-transparent='true'] {
14
- background-color: var(--charcoal-transparent);
14
+ background-color: var(--charcoal-color-container-default-a);
15
15
  }
16
16
  }
17
17
 
@@ -25,3 +25,16 @@ export const Size: StoryObj<typeof LoadingSpinner> = {
25
25
  export const Padding: StoryObj<typeof LoadingSpinner> = {
26
26
  render: () => <LoadingSpinner padding={24} />,
27
27
  }
28
+
29
+ export const TokenV2: StoryObj<typeof LoadingSpinner> = {
30
+ parameters: {
31
+ tokenVersion: 'v2',
32
+ },
33
+ render: () => (
34
+ <div style={{ display: 'flex', alignItems: 'center', gap: 24 }}>
35
+ <LoadingSpinner />
36
+ <LoadingSpinner transparent />
37
+ <LoadingSpinner size={48} />
38
+ </div>
39
+ ),
40
+ }
@@ -4,7 +4,7 @@
4
4
  height: fit-content;
5
5
  width: 440px;
6
6
 
7
- background-color: var(--charcoal-surface1);
7
+ background-color: var(--charcoal-color-container-default);
8
8
  border-radius: 24px;
9
9
  }
10
10
 
@@ -13,7 +13,7 @@
13
13
  }
14
14
 
15
15
  .charcoal-modal-header-title {
16
- color: var(--charcoal-text1);
16
+ color: var(--charcoal-color-text-default);
17
17
  font-size: 16px;
18
18
  line-height: 24px;
19
19
  font-weight: bold;
@@ -9,7 +9,7 @@
9
9
  justify-content: center;
10
10
  padding: 40px 0;
11
11
  box-sizing: border-box;
12
- background-color: var(--charcoal-surface4);
12
+ background-color: var(--charcoal-color-container-neutral-default);
13
13
  }
14
14
 
15
15
  @media (max-width: 743px) {
@@ -23,7 +23,7 @@
23
23
  position: absolute;
24
24
  top: 8px;
25
25
  right: 8px;
26
- color: var(--charcoal-text3);
26
+ color: var(--charcoal-color-text-tertiary-default);
27
27
  transition: 0.2s color;
28
28
  }
29
29
 
@@ -10,7 +10,7 @@
10
10
  padding: 40px 0;
11
11
  box-sizing: border-box;
12
12
 
13
- background-color: var(--charcoal-surface4);
13
+ background-color: var(--charcoal-color-container-neutral-default);
14
14
 
15
15
  @media (max-width: 743px) {
16
16
  &[data-bottom-sheet='true'],
@@ -25,7 +25,7 @@
25
25
  top: 8px;
26
26
  right: 8px;
27
27
 
28
- color: var(--charcoal-text3);
28
+ color: var(--charcoal-color-text-tertiary-default);
29
29
  transition: 0.2s color;
30
30
  }
31
31
 
@@ -135,6 +135,26 @@ const StyledModalText = (props: Omit<React.ComponentProps<'div'>, 'style'>) => {
135
135
 
136
136
  export const Default: StoryObj<typeof Modal> = {}
137
137
 
138
+ export const TokenV2: StoryObj<typeof Modal> = {
139
+ parameters: {
140
+ tokenVersion: 'v2',
141
+ },
142
+ render: function Render(args) {
143
+ const state = useOverlayTriggerState({ defaultOpen: true })
144
+ return (
145
+ <OverlayProvider>
146
+ <Button onClick={() => state.open()}>Open Modal</Button>
147
+ <M
148
+ {...args}
149
+ isDismissable
150
+ isOpen={state.isOpen}
151
+ onClose={() => state.close()}
152
+ />
153
+ </OverlayProvider>
154
+ )
155
+ },
156
+ }
157
+
138
158
  export const FullBottomSheet: StoryObj<typeof Modal> = {
139
159
  args: {
140
160
  bottomSheet: 'full',
@@ -17,7 +17,7 @@
17
17
  align-items: center;
18
18
  font-size: 14px;
19
19
  line-height: 22px;
20
- color: var(--charcoal-text2);
20
+ color: var(--charcoal-color-text-default);
21
21
  }
22
22
 
23
23
  .charcoal-multi-select-label::before {
@@ -42,14 +42,14 @@
42
42
  width: 20px;
43
43
  height: 20px;
44
44
  margin: 0;
45
- background-color: var(--charcoal-text3);
45
+ background-color: var(--charcoal-color-container-neutral-default);
46
46
  border-radius: 999999px;
47
47
  transition: 0.2s background-color,
48
48
  0.2s box-shadow;
49
49
  }
50
50
 
51
51
  .charcoal-multi-select-input[type='checkbox']:checked {
52
- background-color: var(--charcoal-brand);
52
+ background-color: var(--charcoal-color-container-primary-default);
53
53
  }
54
54
 
55
55
  .charcoal-multi-select-input[type='checkbox']:focus {
@@ -66,19 +66,19 @@
66
66
  }
67
67
 
68
68
  .charcoal-multi-select-input[type='checkbox']:hover:not(:disabled):not([aria-disabled]), .charcoal-multi-select-input[type='checkbox']:hover[aria-disabled='false'] {
69
- background-color: var(--charcoal-text3-hover);
69
+ background-color: var(--charcoal-color-container-neutral-hover);
70
70
  }
71
71
 
72
72
  .charcoal-multi-select-input[type='checkbox']:active:not(:disabled):not([aria-disabled]), .charcoal-multi-select-input[type='checkbox']:active[aria-disabled='false'] {
73
- background-color: var(--charcoal-text3-press);
73
+ background-color: var(--charcoal-color-container-neutral-press);
74
74
  }
75
75
 
76
76
  .charcoal-multi-select-input[type='checkbox']:checked:hover:not(:disabled):not([aria-disabled]), .charcoal-multi-select-input[type='checkbox']:checked:hover[aria-disabled='false'] {
77
- background-color: var(--charcoal-brand-hover);
77
+ background-color: var(--charcoal-color-container-primary-hover);
78
78
  }
79
79
 
80
80
  .charcoal-multi-select-input[type='checkbox']:checked:active:not(:disabled):not([aria-disabled]), .charcoal-multi-select-input[type='checkbox']:checked:active[aria-disabled='false'] {
81
- background-color: var(--charcoal-brand-press);
81
+ background-color: var(--charcoal-color-container-primary-press);
82
82
  }
83
83
 
84
84
  .charcoal-multi-select-input[type='checkbox'][aria-invalid='true'][data-overlay='false']:not(:disabled):not([aria-disabled]) {
@@ -90,7 +90,7 @@
90
90
  }
91
91
 
92
92
  .charcoal-multi-select-input[type='checkbox'][data-overlay='true'] {
93
- background-color: var(--charcoal-surface4);
93
+ background-color: var(--charcoal-color-container-on-img-default);
94
94
  }
95
95
 
96
96
  .charcoal-multi-select-overlay {
@@ -104,7 +104,7 @@
104
104
  width: 24px;
105
105
  height: 24px;
106
106
  border-radius: 999999px;
107
- color: var(--charcoal-text5);
107
+ color: var(--charcoal-color-icon-on-primary-default);
108
108
  transition: 0.2s box-shadow;
109
109
  }
110
110
 
@@ -117,7 +117,7 @@
117
117
  }
118
118
 
119
119
  .charcoal-multi-select-overlay[data-overlay='true'] {
120
- border-color: var(--charcoal-text5);
120
+ border-color: var(--charcoal-color-border-hud);
121
121
  border-width: 2px;
122
122
  border-style: solid;
123
123
  }
@@ -18,7 +18,7 @@
18
18
  align-items: center;
19
19
  font-size: 14px;
20
20
  line-height: 22px;
21
- color: var(--charcoal-text2);
21
+ color: var(--charcoal-color-text-default);
22
22
 
23
23
  &::before {
24
24
  display: block;
@@ -43,14 +43,14 @@
43
43
  width: 20px;
44
44
  height: 20px;
45
45
  margin: 0;
46
- background-color: var(--charcoal-text3);
46
+ background-color: var(--charcoal-color-container-neutral-default);
47
47
  border-radius: 999999px;
48
48
  transition:
49
49
  0.2s background-color,
50
50
  0.2s box-shadow;
51
51
 
52
52
  &:checked {
53
- background-color: var(--charcoal-brand);
53
+ background-color: var(--charcoal-color-container-primary-default);
54
54
  }
55
55
 
56
56
  &:focus {
@@ -68,22 +68,22 @@
68
68
 
69
69
  &:hover:not(:disabled):not([aria-disabled]),
70
70
  &:hover[aria-disabled='false'] {
71
- background-color: var(--charcoal-text3-hover);
71
+ background-color: var(--charcoal-color-container-neutral-hover);
72
72
  }
73
73
 
74
74
  &:active:not(:disabled):not([aria-disabled]),
75
75
  &:active[aria-disabled='false'] {
76
- background-color: var(--charcoal-text3-press);
76
+ background-color: var(--charcoal-color-container-neutral-press);
77
77
  }
78
78
 
79
79
  &:checked:hover:not(:disabled):not([aria-disabled]),
80
80
  &:checked:hover[aria-disabled='false'] {
81
- background-color: var(--charcoal-brand-hover);
81
+ background-color: var(--charcoal-color-container-primary-hover);
82
82
  }
83
83
 
84
84
  &:checked:active:not(:disabled):not([aria-disabled]),
85
85
  &:checked:active[aria-disabled='false'] {
86
- background-color: var(--charcoal-brand-press);
86
+ background-color: var(--charcoal-color-container-primary-press);
87
87
  }
88
88
 
89
89
  &[aria-invalid='true'][data-overlay='false']:not(:disabled):not(
@@ -97,7 +97,7 @@
97
97
  }
98
98
 
99
99
  &[data-overlay='true'] {
100
- background-color: var(--charcoal-surface4);
100
+ background-color: var(--charcoal-color-container-on-img-default);
101
101
  }
102
102
  }
103
103
 
@@ -112,7 +112,7 @@
112
112
  width: 24px;
113
113
  height: 24px;
114
114
  border-radius: 999999px;
115
- color: var(--charcoal-text5);
115
+ color: var(--charcoal-color-icon-on-primary-default);
116
116
  transition: 0.2s box-shadow;
117
117
 
118
118
  &[aria-invalid='true'][data-overlay='true']:not(:disabled):not(
@@ -126,7 +126,7 @@
126
126
  }
127
127
 
128
128
  &[data-overlay='true'] {
129
- border-color: var(--charcoal-text5);
129
+ border-color: var(--charcoal-color-border-hud);
130
130
  border-width: 2px;
131
131
  border-style: solid;
132
132
  }
@@ -96,6 +96,56 @@ export const Overlay: StoryObj<typeof MultiSelect> = {
96
96
  },
97
97
  }
98
98
 
99
+ export const TokenV2: StoryObj<typeof MultiSelect> = {
100
+ parameters: {
101
+ tokenVersion: 'v2',
102
+ },
103
+ render: function Render() {
104
+ const options = ['選択肢1', '選択肢2', '選択肢3', '選択肢4']
105
+ return (
106
+ <div style={{ display: 'grid', gap: 24 }}>
107
+ <StyledMultiSelectGroup
108
+ name="token-v2-default"
109
+ label="default"
110
+ onChange={action('click')}
111
+ selected={['選択肢1', '選択肢3']}
112
+ >
113
+ {options.map((option) => (
114
+ <MultiSelect value={option} key={option}>
115
+ {option}
116
+ </MultiSelect>
117
+ ))}
118
+ </StyledMultiSelectGroup>
119
+ <StyledMultiSelectGroup
120
+ name="token-v2-invalid"
121
+ label="invalid"
122
+ onChange={action('click')}
123
+ selected={[]}
124
+ invalid
125
+ >
126
+ {options.map((option) => (
127
+ <MultiSelect value={option} key={option}>
128
+ {option}
129
+ </MultiSelect>
130
+ ))}
131
+ </StyledMultiSelectGroup>
132
+ <StyledMultiSelectGroup
133
+ name="token-v2-overlay"
134
+ label="overlay"
135
+ onChange={action('click')}
136
+ selected={['選択肢2']}
137
+ >
138
+ {options.map((option) => (
139
+ <MultiSelect variant="overlay" value={option} key={option}>
140
+ {option}
141
+ </MultiSelect>
142
+ ))}
143
+ </StyledMultiSelectGroup>
144
+ </div>
145
+ )
146
+ },
147
+ }
148
+
99
149
  export const Playground: StoryObj<typeof MultiSelect> = {
100
150
  render: function Render(args) {
101
151
  const [selected, setSelected] = useState<string[]>([])
@@ -108,6 +108,17 @@ export const PageRange5: StoryObj<typeof Pagination> = {
108
108
  },
109
109
  }
110
110
 
111
+ export const TokenV2: StoryObj<typeof Pagination> = {
112
+ parameters: {
113
+ tokenVersion: 'v2',
114
+ },
115
+ args: {
116
+ page: 50,
117
+ pageCount: 103,
118
+ pageRangeDisplayed: 5,
119
+ },
120
+ }
121
+
111
122
  export const LinkPaginationStory: StoryObj<typeof Pagination> = {
112
123
  args: {
113
124
  page: 5,
@@ -39,8 +39,8 @@
39
39
  */
40
40
  /* stylelint-disable-next-line property-no-vendor-prefix */
41
41
  -webkit-transform: translateZ(0);
42
- color: var(--charcoal-text3);
43
- background-color: var(--charcoal-transparent);
42
+ color: var(--charcoal-color-text-tertiary-default);
43
+ background-color: var(--charcoal-color-container-default-a);
44
44
  border-radius: 20px;
45
45
  transition: 0.2s background-color,
46
46
  0.2s box-shadow;
@@ -61,13 +61,13 @@
61
61
  }
62
62
 
63
63
  .charcoal-pagination-button:not(:disabled):not([aria-disabled]):hover, .charcoal-pagination-button[aria-disabled='false']:hover {
64
- color: var(--charcoal-text3);
65
- background-color: var(--charcoal-surface3);
64
+ color: var(--charcoal-color-text-tertiary-default);
65
+ background-color: var(--charcoal-color-container-secondary-default);
66
66
  }
67
67
 
68
68
  .charcoal-pagination-button:not(:disabled):not([aria-disabled]):active, .charcoal-pagination-button[aria-disabled='false']:active {
69
- color: var(--charcoal-text3);
70
- background-color: var(--charcoal-surface10);
69
+ color: var(--charcoal-color-text-tertiary-press);
70
+ background-color: var(--charcoal-color-container-tertiary-press);
71
71
  }
72
72
 
73
73
  .charcoal-pagination-button:not(:disabled):not([aria-disabled]):focus, .charcoal-pagination-button[aria-disabled='false']:focus {
@@ -85,13 +85,13 @@
85
85
 
86
86
  .charcoal-pagination-button[aria-current] {
87
87
  cursor: default;
88
- background-color: var(--charcoal-surface6);
89
- color: var(--charcoal-text5);
88
+ background-color: var(--charcoal-color-container-hud-default);
89
+ color: var(--charcoal-color-text-on-hud-default);
90
90
  }
91
91
 
92
92
  .charcoal-pagination-button[aria-current]:not(:disabled):not([aria-disabled]):hover, .charcoal-pagination-button[aria-current]:not(:disabled):not([aria-disabled]):active {
93
- background-color: var(--charcoal-surface6);
94
- color: var(--charcoal-text5);
93
+ background-color: var(--charcoal-color-container-hud-default);
94
+ color: var(--charcoal-color-text-on-hud-default);
95
95
  }
96
96
  /* stylelint-enable no-descending-specificity */
97
97
 
@@ -101,7 +101,7 @@
101
101
 
102
102
  .charcoal-pagination-spacer, .charcoal-pagination-spacer:hover, .charcoal-pagination-spacer:active {
103
103
  cursor: default;
104
- color: var(--charcoal-text3);
104
+ color: var(--charcoal-color-text-tertiary-default);
105
105
  background: none;
106
106
  }
107
107
 
@@ -40,8 +40,8 @@
40
40
  /* stylelint-disable-next-line property-no-vendor-prefix */
41
41
  -webkit-transform: translateZ(0);
42
42
 
43
- color: var(--charcoal-text3);
44
- background-color: var(--charcoal-transparent);
43
+ color: var(--charcoal-color-text-tertiary-default);
44
+ background-color: var(--charcoal-color-container-default-a);
45
45
  border-radius: 20px;
46
46
  transition:
47
47
  0.2s background-color,
@@ -63,14 +63,14 @@
63
63
 
64
64
  &:not(:disabled):not([aria-disabled]):hover,
65
65
  &[aria-disabled='false']:hover {
66
- color: var(--charcoal-text3);
67
- background-color: var(--charcoal-surface3);
66
+ color: var(--charcoal-color-text-tertiary-default);
67
+ background-color: var(--charcoal-color-container-secondary-default);
68
68
  }
69
69
 
70
70
  &:not(:disabled):not([aria-disabled]):active,
71
71
  &[aria-disabled='false']:active {
72
- color: var(--charcoal-text3);
73
- background-color: var(--charcoal-surface10);
72
+ color: var(--charcoal-color-text-tertiary-press);
73
+ background-color: var(--charcoal-color-container-tertiary-press);
74
74
  }
75
75
 
76
76
  &:not(:disabled):not([aria-disabled]):focus,
@@ -91,13 +91,13 @@
91
91
 
92
92
  &[aria-current] {
93
93
  cursor: default;
94
- background-color: var(--charcoal-surface6);
95
- color: var(--charcoal-text5);
94
+ background-color: var(--charcoal-color-container-hud-default);
95
+ color: var(--charcoal-color-text-on-hud-default);
96
96
 
97
97
  &:not(:disabled):not([aria-disabled]):hover,
98
98
  &:not(:disabled):not([aria-disabled]):active {
99
- background-color: var(--charcoal-surface6);
100
- color: var(--charcoal-text5);
99
+ background-color: var(--charcoal-color-container-hud-default);
100
+ color: var(--charcoal-color-text-on-hud-default);
101
101
  }
102
102
  }
103
103
  }
@@ -112,7 +112,7 @@
112
112
  &:hover,
113
113
  &:active {
114
114
  cursor: default;
115
- color: var(--charcoal-text3);
115
+ color: var(--charcoal-color-text-tertiary-default);
116
116
  background: none;
117
117
  }
118
118
 
@@ -10,14 +10,14 @@
10
10
  height: 20px;
11
11
  cursor: pointer;
12
12
  border-radius: 999999px;
13
- background-color: var(--charcoal-surface1);
13
+ background-color: var(--charcoal-color-container-default);
14
14
  transition:
15
15
  0.2s background-color,
16
16
  0.2s box-shadow;
17
17
  }
18
18
 
19
19
  .charcoal-radio-input:checked {
20
- background-color: var(--charcoal-brand);
20
+ background-color: var(--charcoal-color-container-primary-default);
21
21
  }
22
22
 
23
23
  .charcoal-radio-input:checked::after {
@@ -26,7 +26,7 @@
26
26
  width: 8px;
27
27
  height: 8px;
28
28
  pointer-events: none;
29
- background-color: var(--charcoal-text5);
29
+ background-color: var(--charcoal-color-icon-on-primary-default);
30
30
  border-radius: 999999px;
31
31
  transition:
32
32
  0.2s background-color,
@@ -36,7 +36,7 @@
36
36
  .charcoal-radio-input:not(:checked) {
37
37
  border-width: 2px;
38
38
  border-style: solid;
39
- border-color: var(--charcoal-text3);
39
+ border-color: var(--charcoal-color-border-default);
40
40
  }
41
41
 
42
42
  .charcoal-radio-input:disabled {
@@ -44,11 +44,11 @@
44
44
  }
45
45
 
46
46
  .charcoal-radio-input:not(:disabled):hover {
47
- background-color: var(--charcoal-surface1-hover);
47
+ background-color: var(--charcoal-color-container-hover);
48
48
  }
49
49
 
50
50
  .charcoal-radio-input:not(:disabled):active {
51
- background-color: var(--charcoal-surface1-press);
51
+ background-color: var(--charcoal-color-container-press);
52
52
  }
53
53
 
54
54
  .charcoal-radio-input:not(:disabled):focus {
@@ -70,17 +70,17 @@
70
70
  }
71
71
 
72
72
  .charcoal-radio-input:checked:not(:disabled):hover {
73
- background-color: var(--charcoal-brand-hover);
73
+ background-color: var(--charcoal-color-container-primary-hover);
74
74
  }
75
75
 
76
76
  .charcoal-radio-input:checked:not(:disabled):hover::after {
77
- background-color: var(--charcoal-text5-hover);
77
+ background-color: var(--charcoal-color-icon-on-primary-hover);
78
78
  }
79
79
 
80
80
  .charcoal-radio-input:checked:not(:disabled):active {
81
- background-color: var(--charcoal-brand-press);
81
+ background-color: var(--charcoal-color-container-primary-press);
82
82
  }
83
83
 
84
84
  .charcoal-radio-input:checked:not(:disabled):active::after {
85
- background-color: var(--charcoal-text5-press);
85
+ background-color: var(--charcoal-color-icon-on-primary-press);
86
86
  }
@@ -14,6 +14,6 @@
14
14
  .charcoal-radio__label_div {
15
15
  font-size: 14px;
16
16
  line-height: 22px;
17
- color: var(--charcoal-text2);
17
+ color: var(--charcoal-color-text-default);
18
18
  }
19
19
 
@@ -14,5 +14,5 @@
14
14
  .charcoal-radio__label_div {
15
15
  font-size: 14px;
16
16
  line-height: 22px;
17
- color: var(--charcoal-text2);
17
+ color: var(--charcoal-color-text-default);
18
18
  }
@@ -146,3 +146,43 @@ export const Invalid: StoryObj<typeof Radio> = {
146
146
  )
147
147
  },
148
148
  }
149
+
150
+ export const TokenV2: StoryObj<typeof Radio> = {
151
+ parameters: {
152
+ tokenVersion: 'v2',
153
+ },
154
+ render: function Render() {
155
+ const [defaultValue, setDefaultValue] = useState<Option>(options[0])
156
+ const [invalidValue, setInvalidValue] = useState<Option>(options[1])
157
+
158
+ return (
159
+ <LayoutDiv>
160
+ <RadioGroup<Option>
161
+ name="token_v2_default_story"
162
+ label="default"
163
+ value={defaultValue}
164
+ onChange={setDefaultValue}
165
+ >
166
+ {options.map((option) => (
167
+ <Radio key={option} value={option} disabled={option === '3'}>
168
+ Value {option}
169
+ </Radio>
170
+ ))}
171
+ </RadioGroup>
172
+ <RadioGroup<Option>
173
+ name="token_v2_invalid_story"
174
+ label="invalid"
175
+ value={invalidValue}
176
+ onChange={setInvalidValue}
177
+ invalid
178
+ >
179
+ {options.map((option) => (
180
+ <Radio key={option} value={option}>
181
+ Value {option}
182
+ </Radio>
183
+ ))}
184
+ </RadioGroup>
185
+ </LayoutDiv>
186
+ )
187
+ },
188
+ }
@@ -1,7 +1,7 @@
1
1
  .charcoal-segmented-control {
2
2
  display: inline-flex;
3
3
  align-items: center;
4
- background-color: var(--charcoal-surface3);
4
+ background-color: var(--charcoal-color-container-secondary-default-a);
5
5
  border-radius: 16px;
6
6
  }
7
7
 
@@ -26,7 +26,7 @@
26
26
  padding-right: 16px;
27
27
  padding-left: 16px;
28
28
  border-radius: 16px;
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
  }
@@ -37,8 +37,8 @@
37
37
  }
38
38
 
39
39
  .charcoal-segmented-control-radio__label[data-checked='true'] {
40
- background-color: var(--charcoal-brand);
41
- color: var(--charcoal-text5);
40
+ background-color: var(--charcoal-color-container-primary-default);
41
+ color: var(--charcoal-color-text-on-primary-default);
42
42
  }
43
43
 
44
44
  .charcoal-segmented-control-radio__label[data-uniform-segment-width='true'], .charcoal-segmented-control-radio__label[data-full-width='true'] {
@@ -2,7 +2,7 @@
2
2
  display: inline-flex;
3
3
  align-items: center;
4
4
 
5
- background-color: var(--charcoal-surface3);
5
+ background-color: var(--charcoal-color-container-secondary-default-a);
6
6
  border-radius: 16px;
7
7
 
8
8
  &[data-uniform-segment-width='true'],
@@ -29,7 +29,7 @@
29
29
  padding-right: 16px;
30
30
  padding-left: 16px;
31
31
  border-radius: 16px;
32
- color: var(--charcoal-text2);
32
+ color: var(--charcoal-color-text-secondary-default);
33
33
 
34
34
  font-size: 14px;
35
35
  line-height: 22px;
@@ -40,8 +40,8 @@
40
40
  }
41
41
 
42
42
  &[data-checked='true'] {
43
- background-color: var(--charcoal-brand);
44
- color: var(--charcoal-text5);
43
+ background-color: var(--charcoal-color-container-primary-default);
44
+ color: var(--charcoal-color-text-on-primary-default);
45
45
  }
46
46
 
47
47
  &[data-uniform-segment-width='true'],