@carbon/styles 1.114.0 → 1.115.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.
- package/css/styles.css +3356 -1547
- package/css/styles.min.css +7 -1
- package/package.json +10 -10
- package/scss/components/Tearsheet/_index.scss +11 -0
- package/scss/components/Tearsheet/_tearsheet.scss +715 -0
- package/scss/components/__tests__/data-table-test.js +49 -0
- package/scss/components/_index.scss +5 -2
- package/scss/components/big-number/_big-number.scss +1 -0
- package/scss/components/button/_button.scss +11 -12
- package/scss/components/button/_vars.scss +4 -4
- package/scss/components/card/_card.scss +2 -2
- package/scss/components/checkbox/_checkbox.scss +69 -26
- package/scss/components/combo-box/_combo-box.scss +32 -21
- package/scss/components/data-table/action/_data-table-action.scss +54 -22
- package/scss/components/data-table/sort/_data-table-sort.scss +37 -3
- package/scss/components/date-picker/_date-picker-next.scss +60 -0
- package/scss/components/date-picker/_date-picker.scss +73 -0
- package/scss/components/date-picker/_flatpickr.scss +10 -0
- package/scss/components/dropdown/_dropdown.scss +26 -4
- package/scss/components/fluid-date-picker/_fluid-date-picker.scss +95 -11
- package/scss/components/fluid-list-box/_fluid-list-box.scss +102 -23
- package/scss/components/fluid-number-input/_fluid-number-input.scss +204 -24
- package/scss/components/fluid-search/_fluid-search.scss +7 -4
- package/scss/components/fluid-select/_fluid-select.scss +31 -2
- package/scss/components/fluid-text-input/_fluid-text-input.scss +34 -4
- package/scss/components/form/_form.scss +1 -14
- package/scss/components/guidebanner/_guidebanner.scss +322 -0
- package/scss/components/guidebanner/_index.scss +11 -0
- package/scss/components/list-box/_list-box.scss +116 -8
- package/scss/components/menu/_menu.scss +18 -1
- package/scss/components/multiselect/_multiselect.scss +82 -47
- package/scss/components/notifications-panel/_index.scss +11 -0
- package/scss/components/notifications-panel/_notifications-panel.scss +459 -0
- package/scss/components/number-input/_number-input.scss +94 -8
- package/scss/components/radio-button/_radio-button.scss +93 -27
- package/scss/components/search/_search.scss +35 -8
- package/scss/components/select/_select.scss +65 -5
- package/scss/components/tabs/_tabs.scss +2 -1
- package/scss/components/tag/_mixins.scss +19 -1
- package/scss/components/tag/_tag.scss +46 -16
- package/scss/components/text-input/_text-input.scss +53 -121
- package/scss/components/tile/_tile.scss +131 -13
- package/scss/utilities/_skeleton.scss +7 -1
- /package/scss/components/{EditInPlace → edit-in-place}/_edit-in-place.scss +0 -0
- /package/scss/components/{EditInPlace → edit-in-place}/_index.scss +0 -0
- /package/scss/components/{OptionsTile → options-tile}/_index.scss +0 -0
- /package/scss/components/{OptionsTile → options-tile}/_options-tile.scss +0 -0
|
@@ -11,6 +11,8 @@
|
|
|
11
11
|
@use '../../utilities/ai-gradient' as *;
|
|
12
12
|
@use '../../utilities/convert' as *;
|
|
13
13
|
@use '../../utilities/skeleton' as *;
|
|
14
|
+
@use '../../feature-flags' as *;
|
|
15
|
+
@use '../../border-radius' as *;
|
|
14
16
|
|
|
15
17
|
/// Shared v12 date-picker rules for both React and Web Components. Each one
|
|
16
18
|
/// scopes them differently so they don't clash with the v11 date picker:
|
|
@@ -132,6 +134,10 @@
|
|
|
132
134
|
inset-block-start: 100%;
|
|
133
135
|
inset-inline-start: 0;
|
|
134
136
|
margin-block-start: 0;
|
|
137
|
+
|
|
138
|
+
@if enabled('enable-v12-release') {
|
|
139
|
+
margin-block-start: $spacing-02;
|
|
140
|
+
}
|
|
135
141
|
}
|
|
136
142
|
|
|
137
143
|
// DATE PICKER INPUT STYLES
|
|
@@ -183,6 +189,24 @@
|
|
|
183
189
|
// Range date picker sizing
|
|
184
190
|
.#{$prefix}--date-picker-container--from {
|
|
185
191
|
margin-inline-end: rem(1px);
|
|
192
|
+
|
|
193
|
+
@if enabled('enable-v12-release') {
|
|
194
|
+
.#{$prefix}--date-picker__input {
|
|
195
|
+
border-end-end-radius: $border-radius-00;
|
|
196
|
+
border-inline-end: none;
|
|
197
|
+
border-start-end-radius: $border-radius-00;
|
|
198
|
+
}
|
|
199
|
+
}
|
|
200
|
+
}
|
|
201
|
+
|
|
202
|
+
.#{$prefix}--date-picker-container--to {
|
|
203
|
+
@if enabled('enable-v12-release') {
|
|
204
|
+
.#{$prefix}--date-picker__input {
|
|
205
|
+
border-end-start-radius: $border-radius-00;
|
|
206
|
+
border-inline-start: none;
|
|
207
|
+
border-start-start-radius: $border-radius-00;
|
|
208
|
+
}
|
|
209
|
+
}
|
|
186
210
|
}
|
|
187
211
|
|
|
188
212
|
.#{$prefix}--date-picker-container--from,
|
|
@@ -198,6 +222,29 @@
|
|
|
198
222
|
.#{$prefix}--date-picker-container--ai-label {
|
|
199
223
|
.#{$prefix}--date-picker__input--decorator {
|
|
200
224
|
@include ai-gradient;
|
|
225
|
+
|
|
226
|
+
@if enabled('enable-v12-release') {
|
|
227
|
+
// Reset the bottom-edge color override from @include ai-gradient so the
|
|
228
|
+
// border-box gradient layer controls all four sides uniformly.
|
|
229
|
+
background:
|
|
230
|
+
linear-gradient(
|
|
231
|
+
0deg,
|
|
232
|
+
$ai-aura-start-sm 0%,
|
|
233
|
+
15%,
|
|
234
|
+
$ai-aura-end 50%,
|
|
235
|
+
transparent 100%
|
|
236
|
+
)
|
|
237
|
+
padding-box,
|
|
238
|
+
linear-gradient($field, $field) padding-box,
|
|
239
|
+
// (ai-border-start → ai-border-end), mirroring the default v12 border gradient
|
|
240
|
+
linear-gradient(
|
|
241
|
+
to bottom,
|
|
242
|
+
$ai-border-start calc(100% - 4px),
|
|
243
|
+
$ai-border-strong 100%
|
|
244
|
+
)
|
|
245
|
+
border-box;
|
|
246
|
+
border-block-end-color: transparent;
|
|
247
|
+
}
|
|
201
248
|
}
|
|
202
249
|
}
|
|
203
250
|
|
|
@@ -262,6 +309,11 @@
|
|
|
262
309
|
max-inline-size: rem(288px);
|
|
263
310
|
outline: none;
|
|
264
311
|
|
|
312
|
+
@if enabled('enable-v12-release') {
|
|
313
|
+
border: 1px solid $border-subtle;
|
|
314
|
+
border-radius: $border-radius-08;
|
|
315
|
+
}
|
|
316
|
+
|
|
265
317
|
&:focus {
|
|
266
318
|
outline: none;
|
|
267
319
|
}
|
|
@@ -297,6 +349,10 @@
|
|
|
297
349
|
svg {
|
|
298
350
|
fill: $icon-primary;
|
|
299
351
|
}
|
|
352
|
+
|
|
353
|
+
@if enabled('enable-v12-release') {
|
|
354
|
+
border-radius: $border-radius-04;
|
|
355
|
+
}
|
|
300
356
|
}
|
|
301
357
|
|
|
302
358
|
.#{$prefix}--date-picker__current-month {
|
|
@@ -405,6 +461,10 @@
|
|
|
405
461
|
outline: 2px solid $focus;
|
|
406
462
|
outline-offset: -2px;
|
|
407
463
|
}
|
|
464
|
+
|
|
465
|
+
@if enabled('enable-v12-release') {
|
|
466
|
+
border-radius: $border-radius-04;
|
|
467
|
+
}
|
|
408
468
|
}
|
|
409
469
|
}
|
|
410
470
|
|
|
@@ -13,6 +13,8 @@
|
|
|
13
13
|
@use '../../theme' as *;
|
|
14
14
|
@use '../../spacing' as *;
|
|
15
15
|
@use '../../type' as *;
|
|
16
|
+
@use '../../border-radius' as *;
|
|
17
|
+
@use '../../feature-flags' as *;
|
|
16
18
|
@use '../../utilities/ai-gradient' as *;
|
|
17
19
|
@use '../../utilities/component-reset';
|
|
18
20
|
@use '../../utilities/convert';
|
|
@@ -133,6 +135,50 @@
|
|
|
133
135
|
}
|
|
134
136
|
}
|
|
135
137
|
|
|
138
|
+
@if enabled('enable-v12-release') {
|
|
139
|
+
.#{$prefix}--date-picker__calendar.open.arrowTop {
|
|
140
|
+
// flatpickr calendar renders with 2px margin-top, add $spacing-01 to get 4px
|
|
141
|
+
margin-block-start: $spacing-01;
|
|
142
|
+
}
|
|
143
|
+
.#{$prefix}--date-picker__calendar.open {
|
|
144
|
+
border: 1px solid $border-subtle;
|
|
145
|
+
border-radius: $border-radius-08;
|
|
146
|
+
}
|
|
147
|
+
|
|
148
|
+
.#{$prefix}--date-picker__input {
|
|
149
|
+
border: 1px solid transparent;
|
|
150
|
+
border-radius: $border-radius-04;
|
|
151
|
+
|
|
152
|
+
&:not(:disabled) {
|
|
153
|
+
// (gray-20 → gray-50)
|
|
154
|
+
background:
|
|
155
|
+
linear-gradient($field, $field) padding-box,
|
|
156
|
+
linear-gradient(
|
|
157
|
+
to bottom,
|
|
158
|
+
$border-subtle calc(100% - 4px),
|
|
159
|
+
$border-strong 100%
|
|
160
|
+
)
|
|
161
|
+
border-box;
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
|
|
165
|
+
.#{$prefix}--date-picker--range {
|
|
166
|
+
.#{$prefix}--date-picker-container:first-of-type
|
|
167
|
+
.#{$prefix}--date-picker__input {
|
|
168
|
+
border-end-end-radius: $border-radius-00;
|
|
169
|
+
border-inline-end: none;
|
|
170
|
+
border-start-end-radius: $border-radius-00;
|
|
171
|
+
}
|
|
172
|
+
|
|
173
|
+
.#{$prefix}--date-picker-container:last-of-type
|
|
174
|
+
.#{$prefix}--date-picker__input {
|
|
175
|
+
border-end-start-radius: $border-radius-00;
|
|
176
|
+
border-inline-start: none;
|
|
177
|
+
border-start-start-radius: $border-radius-00;
|
|
178
|
+
}
|
|
179
|
+
}
|
|
180
|
+
}
|
|
181
|
+
|
|
136
182
|
// Size variant styles
|
|
137
183
|
.#{$prefix}--date-picker__input--lg {
|
|
138
184
|
block-size: convert.to-rem(48px);
|
|
@@ -232,6 +278,29 @@
|
|
|
232
278
|
@include ai-gradient;
|
|
233
279
|
|
|
234
280
|
padding-inline-end: $spacing-10;
|
|
281
|
+
|
|
282
|
+
@if enabled('enable-v12-release') {
|
|
283
|
+
// Reset the bottom-edge color override from @include ai-gradient so the
|
|
284
|
+
// border-box gradient layer controls all four sides uniformly.
|
|
285
|
+
background:
|
|
286
|
+
linear-gradient(
|
|
287
|
+
0deg,
|
|
288
|
+
$ai-aura-start-sm 0%,
|
|
289
|
+
15%,
|
|
290
|
+
$ai-aura-end 50%,
|
|
291
|
+
transparent 100%
|
|
292
|
+
)
|
|
293
|
+
padding-box,
|
|
294
|
+
linear-gradient($field, $field) padding-box,
|
|
295
|
+
// (ai-border-start → ai-border-end), mirroring the default v12 border gradient
|
|
296
|
+
linear-gradient(
|
|
297
|
+
to bottom,
|
|
298
|
+
$ai-border-start calc(100% - 4px),
|
|
299
|
+
$ai-border-strong 100%
|
|
300
|
+
)
|
|
301
|
+
border-box;
|
|
302
|
+
border-block-end-color: transparent;
|
|
303
|
+
}
|
|
235
304
|
}
|
|
236
305
|
|
|
237
306
|
// Read-only State
|
|
@@ -239,6 +308,10 @@
|
|
|
239
308
|
background: transparent;
|
|
240
309
|
border-block-end-color: $border-subtle;
|
|
241
310
|
cursor: text;
|
|
311
|
+
|
|
312
|
+
@if enabled('enable-v12-release') {
|
|
313
|
+
border-radius: $border-radius-00;
|
|
314
|
+
}
|
|
242
315
|
}
|
|
243
316
|
|
|
244
317
|
.#{$prefix}--date-picker__input[readonly] + .#{$prefix}--date-picker__icon {
|
|
@@ -10,8 +10,10 @@
|
|
|
10
10
|
@use '../../spacing' as *;
|
|
11
11
|
@use '../../type' as *;
|
|
12
12
|
@use '../../utilities/box-shadow' as *;
|
|
13
|
+
@use '../../border-radius' as *;
|
|
13
14
|
@use '../../utilities/convert';
|
|
14
15
|
@use '../../utilities/focus-outline' as *;
|
|
16
|
+
@use '../../feature-flags' as *;
|
|
15
17
|
@use '../../utilities/high-contrast-mode' as *;
|
|
16
18
|
|
|
17
19
|
@use '../button/tokens' as *;
|
|
@@ -276,6 +278,14 @@
|
|
|
276
278
|
}
|
|
277
279
|
}
|
|
278
280
|
|
|
281
|
+
@if enabled('enable-v12-release') {
|
|
282
|
+
.flatpickr-prev-month,
|
|
283
|
+
.flatpickr-next-month,
|
|
284
|
+
.flatpickr-day {
|
|
285
|
+
border-radius: $border-radius-04;
|
|
286
|
+
}
|
|
287
|
+
}
|
|
288
|
+
|
|
279
289
|
.numInputWrapper {
|
|
280
290
|
position: relative;
|
|
281
291
|
inline-size: convert.to-rem(60px);
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
//
|
|
2
|
-
// Copyright IBM Corp. 2016,
|
|
2
|
+
// Copyright IBM Corp. 2016, 2026
|
|
3
3
|
//
|
|
4
4
|
// This source code is licensed under the Apache-2.0 license found in the
|
|
5
5
|
// LICENSE file in the root directory of this source tree.
|
|
@@ -7,6 +7,7 @@
|
|
|
7
7
|
|
|
8
8
|
@use '../list-box';
|
|
9
9
|
@use '../../config' as *;
|
|
10
|
+
@use '../../feature-flags' as *;
|
|
10
11
|
@use '../../layer' as *;
|
|
11
12
|
@use '../../motion' as *;
|
|
12
13
|
@use '../../spacing' as *;
|
|
@@ -68,6 +69,10 @@
|
|
|
68
69
|
&:hover {
|
|
69
70
|
background-color: $field-hover;
|
|
70
71
|
}
|
|
72
|
+
|
|
73
|
+
@if enabled('enable-v12-release') {
|
|
74
|
+
border: 1px solid transparent;
|
|
75
|
+
}
|
|
71
76
|
}
|
|
72
77
|
|
|
73
78
|
// Menu's triggering element updated to button with Downshift v5 upgrade
|
|
@@ -94,15 +99,32 @@
|
|
|
94
99
|
}
|
|
95
100
|
|
|
96
101
|
.#{$prefix}--dropdown--open {
|
|
97
|
-
|
|
102
|
+
@if not enabled('enable-v12-release') {
|
|
103
|
+
border-block-end-color: $border-subtle;
|
|
104
|
+
}
|
|
98
105
|
}
|
|
99
106
|
|
|
100
107
|
.#{$prefix}--dropdown--open .#{$prefix}--list-box__field {
|
|
101
108
|
outline: none;
|
|
102
109
|
}
|
|
103
110
|
|
|
104
|
-
|
|
105
|
-
|
|
111
|
+
@if not enabled('enable-v12-release') {
|
|
112
|
+
.#{$prefix}--dropdown--focus .#{$prefix}--list-box__field {
|
|
113
|
+
@include focus-outline('outline');
|
|
114
|
+
}
|
|
115
|
+
} @else {
|
|
116
|
+
// v12 focus outline is on the dropdown itself
|
|
117
|
+
.#{$prefix}--dropdown--focus,
|
|
118
|
+
.#{$prefix}--dropdown:not(.#{$prefix}--dropdown--open):has(
|
|
119
|
+
.#{$prefix}--list-box__field:focus
|
|
120
|
+
) {
|
|
121
|
+
@include focus-outline('outline');
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
// prevent nested borders
|
|
125
|
+
.#{$prefix}--dropdown .#{$prefix}--list-box__field:focus {
|
|
126
|
+
outline: transparent;
|
|
127
|
+
}
|
|
106
128
|
}
|
|
107
129
|
|
|
108
130
|
.#{$prefix}--dropdown--invalid {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
//
|
|
2
|
-
// Copyright IBM Corp. 2022
|
|
2
|
+
// Copyright IBM Corp. 2022, 2026
|
|
3
3
|
//
|
|
4
4
|
// This source code is licensed under the Apache-2.0 license found in the
|
|
5
5
|
// LICENSE file in the root directory of this source tree.
|
|
@@ -15,12 +15,43 @@
|
|
|
15
15
|
@use '../../utilities/ai-gradient' as *;
|
|
16
16
|
@use '../../utilities/convert';
|
|
17
17
|
@use '../../utilities/focus-outline' as *;
|
|
18
|
+
@use '../../border-radius' as *;
|
|
19
|
+
@use '../../feature-flags' as *;
|
|
18
20
|
@use '../date-picker';
|
|
19
21
|
|
|
20
22
|
@mixin fluid-date-picker {
|
|
21
23
|
.#{$prefix}--date-picker--fluid {
|
|
22
24
|
display: inline-flex;
|
|
23
25
|
background: $field;
|
|
26
|
+
|
|
27
|
+
@if enabled('enable-v12-release') {
|
|
28
|
+
border: 1px solid transparent;
|
|
29
|
+
|
|
30
|
+
&:not(.#{$prefix}--date-picker--fluid--readonly) {
|
|
31
|
+
border-radius: $border-radius-04;
|
|
32
|
+
// (gray-20 → gray-50)
|
|
33
|
+
&:not([disabled]) {
|
|
34
|
+
background:
|
|
35
|
+
linear-gradient($field, $field) padding-box,
|
|
36
|
+
linear-gradient(
|
|
37
|
+
to bottom,
|
|
38
|
+
$border-subtle calc(100% - 4px),
|
|
39
|
+
$border-strong 100%
|
|
40
|
+
)
|
|
41
|
+
border-box;
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
&.#{$prefix}--date-picker--fluid--readonly {
|
|
46
|
+
border-block-end: 1px solid $border-subtle;
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
&:focus-within {
|
|
50
|
+
.#{$prefix}--date-picker__input {
|
|
51
|
+
outline-offset: convert.to-rem(-1.5px);
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
}
|
|
24
55
|
}
|
|
25
56
|
|
|
26
57
|
.#{$prefix}--date-picker--fluid .#{$prefix}--date-picker {
|
|
@@ -93,7 +124,9 @@
|
|
|
93
124
|
.#{$prefix}--date-picker--fluid
|
|
94
125
|
.#{$prefix}--date-picker--simple
|
|
95
126
|
.#{$prefix}--date-picker--fluid--warn {
|
|
96
|
-
|
|
127
|
+
@if not enabled('enable-v12-release') {
|
|
128
|
+
border-block-end: 1px solid $border-strong;
|
|
129
|
+
}
|
|
97
130
|
}
|
|
98
131
|
|
|
99
132
|
// Single, Range
|
|
@@ -117,7 +150,9 @@
|
|
|
117
150
|
.#{$prefix}--date-picker__input--invalid
|
|
118
151
|
),
|
|
119
152
|
.#{$prefix}--date-picker--single .#{$prefix}--date-picker--fluid--warn {
|
|
120
|
-
|
|
153
|
+
@if not enabled('enable-v12-release') {
|
|
154
|
+
border-block-end: 1px solid $border-strong;
|
|
155
|
+
}
|
|
121
156
|
}
|
|
122
157
|
|
|
123
158
|
// Range
|
|
@@ -128,7 +163,9 @@
|
|
|
128
163
|
.#{$prefix}--date-picker-container:not(
|
|
129
164
|
.#{$prefix}--date-picker--fluid--invalid
|
|
130
165
|
) {
|
|
131
|
-
|
|
166
|
+
@if not enabled('enable-v12-release') {
|
|
167
|
+
border-block-end: 1px solid $border-strong;
|
|
168
|
+
}
|
|
132
169
|
}
|
|
133
170
|
|
|
134
171
|
.#{$prefix}--date-picker--fluid
|
|
@@ -153,14 +190,34 @@
|
|
|
153
190
|
> .#{$prefix}--date-picker-container:last-child
|
|
154
191
|
.#{$prefix}--date-picker__input {
|
|
155
192
|
border-inline-start: 1px solid $border-strong;
|
|
193
|
+
|
|
194
|
+
@if enabled('enable-v12-release') {
|
|
195
|
+
border-inline-start-color: $border-subtle;
|
|
196
|
+
}
|
|
197
|
+
}
|
|
198
|
+
|
|
199
|
+
@if enabled('enable-v12-release') {
|
|
200
|
+
.#{$prefix}--date-picker--fluid:focus-within
|
|
201
|
+
.#{$prefix}--date-picker--range
|
|
202
|
+
> .#{$prefix}--date-picker-container:last-child
|
|
203
|
+
.#{$prefix}--date-picker__input {
|
|
204
|
+
border-inline-start-color: transparent;
|
|
205
|
+
}
|
|
156
206
|
}
|
|
157
207
|
|
|
158
208
|
// Invalid
|
|
159
209
|
// Entire input
|
|
160
|
-
|
|
210
|
+
|
|
211
|
+
@if enabled('enable-v12-release') {
|
|
212
|
+
.#{$prefix}--date-picker--fluid.#{$prefix}--date-picker--fluid--invalid {
|
|
213
|
+
@include focus-outline('invalid');
|
|
214
|
+
}
|
|
215
|
+
} @else {
|
|
216
|
+
.#{$prefix}--date-picker--fluid.#{$prefix}--date-picker--fluid--invalid,
|
|
161
217
|
// Just one input invalid
|
|
162
218
|
.#{$prefix}--date-picker-container.#{$prefix}--date-picker--fluid--invalid {
|
|
163
|
-
|
|
219
|
+
@include focus-outline('invalid');
|
|
220
|
+
}
|
|
164
221
|
}
|
|
165
222
|
|
|
166
223
|
.#{$prefix}--date-picker--fluid
|
|
@@ -228,18 +285,35 @@
|
|
|
228
285
|
> .#{$prefix}--date-picker-container:first-child::after,
|
|
229
286
|
.#{$prefix}--date-picker--fluid
|
|
230
287
|
.#{$prefix}--date-picker--range
|
|
231
|
-
.#{$prefix}--date-picker--fluid--warn.#{$prefix}--date-picker-container:first-child::after
|
|
232
|
-
.#{$prefix}--date-picker--fluid
|
|
233
|
-
.#{$prefix}--date-picker--range
|
|
234
|
-
.#{$prefix}--date-picker--fluid--warn.#{$prefix}--date-picker-container:last-child::after {
|
|
288
|
+
.#{$prefix}--date-picker--fluid--warn.#{$prefix}--date-picker-container:first-child::after {
|
|
235
289
|
position: absolute;
|
|
236
290
|
display: block;
|
|
237
|
-
background: $border-strong;
|
|
238
291
|
block-size: calc(100% - 1rem);
|
|
239
292
|
content: '';
|
|
240
293
|
inline-size: 1px;
|
|
241
294
|
inset-block-start: convert.to-rem(8px);
|
|
242
295
|
inset-inline-end: 0;
|
|
296
|
+
|
|
297
|
+
@if enabled('enable-v12-release') {
|
|
298
|
+
background: $border-subtle;
|
|
299
|
+
} @else {
|
|
300
|
+
background: $border-strong;
|
|
301
|
+
}
|
|
302
|
+
}
|
|
303
|
+
|
|
304
|
+
@if not enabled('enable-v12-release') {
|
|
305
|
+
.#{$prefix}--date-picker--fluid
|
|
306
|
+
.#{$prefix}--date-picker--range
|
|
307
|
+
.#{$prefix}--date-picker--fluid--warn.#{$prefix}--date-picker-container:last-child::after {
|
|
308
|
+
position: absolute;
|
|
309
|
+
display: block;
|
|
310
|
+
background: $border-strong;
|
|
311
|
+
block-size: calc(100% - 1rem);
|
|
312
|
+
content: '';
|
|
313
|
+
inline-size: 1px;
|
|
314
|
+
inset-block-start: convert.to-rem(8px);
|
|
315
|
+
inset-inline-end: 0;
|
|
316
|
+
}
|
|
243
317
|
}
|
|
244
318
|
|
|
245
319
|
.#{$prefix}--date-picker--fluid
|
|
@@ -318,6 +392,10 @@
|
|
|
318
392
|
background: $skeleton-background;
|
|
319
393
|
block-size: convert.to-rem(64px);
|
|
320
394
|
border-block-end: 1px solid $skeleton-element;
|
|
395
|
+
|
|
396
|
+
@if enabled('enable-v12-release') {
|
|
397
|
+
border-radius: $border-radius-04;
|
|
398
|
+
}
|
|
321
399
|
}
|
|
322
400
|
|
|
323
401
|
.#{$prefix}--date-picker--fluid__skeleton--container {
|
|
@@ -463,4 +541,10 @@
|
|
|
463
541
|
.#{$prefix}--date-picker__input {
|
|
464
542
|
padding-inline-end: $spacing-10;
|
|
465
543
|
}
|
|
544
|
+
|
|
545
|
+
@if enabled('enable-v12-release') {
|
|
546
|
+
.#{$prefix}--date-picker__calendar.#{$prefix}--date-picker__calendar--fluid.open.arrowTop {
|
|
547
|
+
margin-block-start: $spacing-02;
|
|
548
|
+
}
|
|
549
|
+
}
|
|
466
550
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
//
|
|
2
|
-
// Copyright IBM Corp. 2022
|
|
2
|
+
// Copyright IBM Corp. 2022, 2026
|
|
3
3
|
//
|
|
4
4
|
// This source code is licensed under the Apache-2.0 license found in the
|
|
5
5
|
// LICENSE file in the root directory of this source tree.
|
|
@@ -12,6 +12,8 @@
|
|
|
12
12
|
@use '../../motion' as *;
|
|
13
13
|
@use '../../spacing' as *;
|
|
14
14
|
@use '../../theme' as *;
|
|
15
|
+
@use '../../border-radius' as *;
|
|
16
|
+
@use '../../feature-flags' as *;
|
|
15
17
|
@use '../../utilities/convert';
|
|
16
18
|
@use '../../utilities/focus-outline' as *;
|
|
17
19
|
@use '../../utilities/skeleton' as *;
|
|
@@ -24,6 +26,52 @@
|
|
|
24
26
|
transition:
|
|
25
27
|
background-color $duration-fast-01 motion(standard, productive),
|
|
26
28
|
outline $duration-fast-01 motion(standard, productive);
|
|
29
|
+
|
|
30
|
+
@if enabled('enable-v12-release') {
|
|
31
|
+
.#{$prefix}--list-box[data-invalid],
|
|
32
|
+
.#{$prefix}--list-box--warning {
|
|
33
|
+
background: none;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
&:has(.#{$prefix}--list-box--warning) {
|
|
37
|
+
border: 1px solid transparent;
|
|
38
|
+
background:
|
|
39
|
+
linear-gradient($field, $field) padding-box,
|
|
40
|
+
linear-gradient(
|
|
41
|
+
to bottom,
|
|
42
|
+
$border-subtle calc(100% - 4px),
|
|
43
|
+
$border-strong 100%
|
|
44
|
+
)
|
|
45
|
+
border-box;
|
|
46
|
+
|
|
47
|
+
// 2px to offset the wrapper's border, keeping the field 64px.
|
|
48
|
+
.#{$prefix}--list-box {
|
|
49
|
+
border: none;
|
|
50
|
+
min-block-size: convert.to-rem(62px);
|
|
51
|
+
}
|
|
52
|
+
.#{$prefix}--label {
|
|
53
|
+
inline-size: calc(100% - 2rem + 2px);
|
|
54
|
+
inset-block-start: convert.to-rem(12px);
|
|
55
|
+
inset-inline-start: calc(#{$spacing-05} - 1px);
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
&:focus-within {
|
|
59
|
+
.#{$prefix}--list-box {
|
|
60
|
+
outline-offset: -1px;
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
&:not(
|
|
66
|
+
:has(
|
|
67
|
+
.#{$prefix}--dropdown--readonly,
|
|
68
|
+
.#{$prefix}--combo-box--readonly,
|
|
69
|
+
.#{$prefix}--multi-select--readonly
|
|
70
|
+
)
|
|
71
|
+
) {
|
|
72
|
+
border-radius: $border-radius-04;
|
|
73
|
+
}
|
|
74
|
+
}
|
|
27
75
|
}
|
|
28
76
|
|
|
29
77
|
.#{$prefix}--list-box__wrapper--fluid .#{$prefix}--list-box {
|
|
@@ -132,22 +180,28 @@
|
|
|
132
180
|
) {
|
|
133
181
|
@include focus-outline('invalid');
|
|
134
182
|
|
|
135
|
-
|
|
136
|
-
|
|
183
|
+
@if not enabled('enable-v12-release') {
|
|
184
|
+
z-index: 2;
|
|
185
|
+
&:not(:has(.#{$prefix}--list-box__wrapper--fluid-invalid)) {
|
|
186
|
+
outline-offset: 0;
|
|
187
|
+
}
|
|
188
|
+
}
|
|
137
189
|
}
|
|
138
190
|
|
|
139
|
-
|
|
140
|
-
.#{$prefix}--list-
|
|
141
|
-
|
|
142
|
-
.#{$prefix}--list-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
.#{$prefix}--list-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
.#{$prefix}--
|
|
149
|
-
|
|
150
|
-
|
|
191
|
+
@if not enabled('enable-v12-release') {
|
|
192
|
+
.#{$prefix}--list-box__wrapper--fluid.#{$prefix}--list-box__wrapper--fluid--focus
|
|
193
|
+
.#{$prefix}--list-box:not(.#{$prefix}--list-box--invalid),
|
|
194
|
+
.#{$prefix}--list-box__wrapper--fluid.#{$prefix}--list-box__wrapper--fluid--focus
|
|
195
|
+
.#{$prefix}--list-box
|
|
196
|
+
.#{$prefix}--text-input,
|
|
197
|
+
.#{$prefix}--list-box__wrapper--fluid.#{$prefix}--list-box__wrapper--fluid--invalid
|
|
198
|
+
.#{$prefix}--list-box
|
|
199
|
+
.#{$prefix}--text-input,
|
|
200
|
+
.#{$prefix}--list-box__wrapper--fluid
|
|
201
|
+
.#{$prefix}--combo-box.#{$prefix}--list-box--warning
|
|
202
|
+
.#{$prefix}--text-input {
|
|
203
|
+
border-block-end: 1px solid transparent;
|
|
204
|
+
}
|
|
151
205
|
}
|
|
152
206
|
|
|
153
207
|
.#{$prefix}--list-box__wrapper--fluid.#{$prefix}--list-box__wrapper--fluid--invalid
|
|
@@ -162,13 +216,19 @@
|
|
|
162
216
|
}
|
|
163
217
|
|
|
164
218
|
.#{$prefix}--list-box__wrapper--fluid.#{$prefix}--list-box__wrapper--fluid--invalid:focus-within {
|
|
165
|
-
|
|
219
|
+
@if not enabled('enable-v12-release') {
|
|
220
|
+
&:not(:has(.#{$prefix}--list-box__wrapper--fluid-invalid)) {
|
|
221
|
+
outline-offset: 0;
|
|
222
|
+
}
|
|
223
|
+
}
|
|
166
224
|
}
|
|
167
225
|
|
|
168
|
-
|
|
169
|
-
.#{$prefix}--list-
|
|
170
|
-
|
|
171
|
-
|
|
226
|
+
@if not enabled('enable-v12-release') {
|
|
227
|
+
.#{$prefix}--list-box__wrapper--fluid.#{$prefix}--list-box__wrapper--fluid--invalid
|
|
228
|
+
.#{$prefix}--list-box,
|
|
229
|
+
.#{$prefix}--list-box__wrapper--fluid .#{$prefix}--list-box--warning {
|
|
230
|
+
border-block-end: 1px solid transparent;
|
|
231
|
+
}
|
|
172
232
|
}
|
|
173
233
|
|
|
174
234
|
.#{$prefix}--list-box__wrapper--fluid.#{$prefix}--list-box__wrapper--fluid--invalid
|
|
@@ -178,12 +238,18 @@
|
|
|
178
238
|
~ .#{$prefix}--form-requirement {
|
|
179
239
|
padding: convert.to-rem(8px) 4rem convert.to-rem(8px) $spacing-05;
|
|
180
240
|
margin-block-start: 0;
|
|
241
|
+
|
|
242
|
+
@if enabled('enable-v12-release') {
|
|
243
|
+
border-radius: $border-radius-04;
|
|
244
|
+
}
|
|
181
245
|
}
|
|
182
246
|
|
|
183
247
|
.#{$prefix}--list-box__wrapper--fluid
|
|
184
248
|
.#{$prefix}--list-box--warning
|
|
185
249
|
~ .#{$prefix}--form-requirement {
|
|
186
|
-
|
|
250
|
+
@if not enabled('enable-v12-release') {
|
|
251
|
+
border-block-end: 1px solid $border-strong;
|
|
252
|
+
}
|
|
187
253
|
}
|
|
188
254
|
|
|
189
255
|
.#{$prefix}--list-box__wrapper--fluid.#{$prefix}--list-box__wrapper--fluid--invalid
|
|
@@ -252,8 +318,21 @@
|
|
|
252
318
|
|
|
253
319
|
// Skeleton styles
|
|
254
320
|
.#{$prefix}--list-box__wrapper--fluid .#{$prefix}--skeleton {
|
|
255
|
-
|
|
256
|
-
|
|
321
|
+
@if enabled('enable-v12-release') {
|
|
322
|
+
border: 1px solid transparent;
|
|
323
|
+
border-radius: $border-radius-04;
|
|
324
|
+
background:
|
|
325
|
+
linear-gradient($skeleton-background, $skeleton-background) padding-box,
|
|
326
|
+
linear-gradient(
|
|
327
|
+
to bottom,
|
|
328
|
+
$border-subtle calc(100% - 4px),
|
|
329
|
+
$skeleton-element 100%
|
|
330
|
+
)
|
|
331
|
+
border-box;
|
|
332
|
+
} @else {
|
|
333
|
+
background: $skeleton-background;
|
|
334
|
+
border-block-end: 1px solid $skeleton-element;
|
|
335
|
+
}
|
|
257
336
|
}
|
|
258
337
|
|
|
259
338
|
.#{$prefix}--list-box__wrapper--fluid
|