@carbon/styles 1.18.0-rc.0 → 1.19.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.
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@carbon/styles",
3
3
  "description": "Styles for the Carbon Design System",
4
- "version": "1.18.0-rc.0",
4
+ "version": "1.19.0-rc.0",
5
5
  "license": "Apache-2.0",
6
6
  "repository": {
7
7
  "type": "git",
@@ -32,13 +32,13 @@
32
32
  "sass": "^1.33.0"
33
33
  },
34
34
  "dependencies": {
35
- "@carbon/colors": "^11.9.0-rc.0",
36
- "@carbon/feature-flags": "^0.10.0-rc.0",
37
- "@carbon/grid": "^11.8.0-rc.0",
38
- "@carbon/layout": "^11.8.0-rc.0",
39
- "@carbon/motion": "^11.6.0-rc.0",
40
- "@carbon/themes": "^11.13.0-rc.0",
41
- "@carbon/type": "^11.12.0-rc.0",
35
+ "@carbon/colors": "^11.10.0-rc.0",
36
+ "@carbon/feature-flags": "^0.11.0-rc.0",
37
+ "@carbon/grid": "^11.9.0-rc.0",
38
+ "@carbon/layout": "^11.9.0-rc.0",
39
+ "@carbon/motion": "^11.7.0-rc.0",
40
+ "@carbon/themes": "^11.14.0-rc.0",
41
+ "@carbon/type": "^11.13.0-rc.0",
42
42
  "@ibm/plex": "6.0.0-next.6"
43
43
  },
44
44
  "devDependencies": {
@@ -59,5 +59,5 @@
59
59
  "scss/**/*.css",
60
60
  "css/**/*.css"
61
61
  ],
62
- "gitHead": "50cfaf729cfe80fecb6f7371ef13b53b25514145"
62
+ "gitHead": "a9d6ab5cc79665453f218fd5821c65c399337c15"
63
63
  }
@@ -31,6 +31,7 @@
31
31
  @use 'fluid-select';
32
32
  @use 'fluid-text-area';
33
33
  @use 'fluid-text-input';
34
+ @use 'fluid-time-picker';
34
35
  @use 'form';
35
36
  @use 'inline-loading';
36
37
  @use 'link';
@@ -42,4 +42,20 @@
42
42
  .#{$prefix}--list-box__field {
43
43
  padding: 0;
44
44
  }
45
+
46
+ // readonly
47
+ .#{$prefix}--combo-box--readonly,
48
+ .#{$prefix}--combo-box--readonly:hover {
49
+ background-color: transparent;
50
+ }
51
+
52
+ .#{$prefix}--combo-box--readonly .#{$prefix}--list-box__menu-icon,
53
+ .#{$prefix}--combo-box--readonly .#{$prefix}--list-box__selection {
54
+ cursor: default;
55
+ }
56
+
57
+ .#{$prefix}--combo-box--readonly .#{$prefix}--list-box__menu-icon svg,
58
+ .#{$prefix}--combo-box--readonly .#{$prefix}--list-box__selection svg {
59
+ fill: $icon-disabled;
60
+ }
45
61
  }
@@ -473,4 +473,19 @@
473
473
  .#{$prefix}--list-box__menu-item__selected-icon {
474
474
  @include high-contrast-mode('icon-fill');
475
475
  }
476
+
477
+ // readonly
478
+ .#{$prefix}--dropdown--readonly,
479
+ .#{$prefix}--dropdown--readonly:hover {
480
+ background-color: transparent;
481
+ }
482
+
483
+ .#{$prefix}--dropdown--readonly .#{$prefix}--list-box__field,
484
+ .#{$prefix}--dropdown--readonly .#{$prefix}--list-box__menu-icon {
485
+ cursor: default;
486
+ }
487
+
488
+ .#{$prefix}--dropdown--readonly .#{$prefix}--list-box__menu-icon svg {
489
+ fill: $icon-disabled;
490
+ }
476
491
  }
@@ -288,12 +288,15 @@
288
288
  .#{$prefix}--date-picker--fluid__skeleton--container {
289
289
  position: relative;
290
290
  width: 100%;
291
- height: rem(64px);
292
- padding: rem(13px) rem(40px) rem(13px) $spacing-05;
291
+ height: 100%;
293
292
  }
294
293
 
295
294
  .#{$prefix}--date-picker--fluid__skeleton .#{$prefix}--skeleton {
296
- height: 1rem;
295
+ position: absolute;
296
+ top: $spacing-05;
297
+ left: $spacing-05;
298
+ width: 25%;
299
+ height: rem(8px);
297
300
  }
298
301
 
299
302
  .#{$prefix}--date-picker--fluid__skeleton .#{$prefix}--label {
@@ -301,14 +304,18 @@
301
304
  }
302
305
 
303
306
  .#{$prefix}--date-picker--fluid__skeleton .#{$prefix}--text-input {
304
- width: 80%;
305
- height: rem(18px);
307
+ position: absolute;
308
+ top: rem(36px);
309
+ left: $spacing-05;
310
+ width: 50%;
311
+ height: rem(8px);
312
+ padding: 0;
306
313
  }
307
314
 
308
315
  .#{$prefix}--date-picker--fluid__skeleton--container
309
316
  .#{$prefix}--date-picker__icon {
310
317
  top: auto;
311
- bottom: rem(2px);
318
+ bottom: $spacing-03;
312
319
  }
313
320
 
314
321
  // Range skeleton
@@ -329,13 +336,9 @@
329
336
  border-right: 1px solid $skeleton-element;
330
337
  }
331
338
 
332
- .#{$prefix}--date-picker--fluid__skeleton--range .#{$prefix}--text-input {
333
- width: 100%;
334
- }
335
-
336
339
  .#{$prefix}--date-picker--fluid__skeleton--range
337
340
  .#{$prefix}--date-picker--fluid__skeleton--container
338
341
  .#{$prefix}--date-picker__icon {
339
- bottom: rem(5px);
342
+ bottom: $spacing-03;
340
343
  }
341
344
  }
@@ -226,10 +226,10 @@
226
226
  .#{$prefix}--skeleton
227
227
  .#{$prefix}--list-box__field {
228
228
  position: absolute;
229
- bottom: rem(13px);
229
+ top: rem(36px);
230
230
  left: $spacing-05;
231
231
  width: 50%;
232
- height: $spacing-05;
232
+ height: rem(8px);
233
233
  padding: 0;
234
234
  }
235
235
 
@@ -237,10 +237,10 @@
237
237
  .#{$prefix}--skeleton
238
238
  .#{$prefix}--list-box__label {
239
239
  position: absolute;
240
- top: rem(13px);
240
+ top: $spacing-05;
241
241
  left: $spacing-05;
242
242
  width: 25%;
243
- height: $spacing-05;
243
+ height: rem(8px);
244
244
  }
245
245
 
246
246
  .#{$prefix}--list-box__wrapper--fluid
@@ -38,13 +38,13 @@
38
38
 
39
39
  .#{$prefix}--select--fluid .#{$prefix}--select-input {
40
40
  min-height: rem(64px);
41
- padding: rem(32px) $spacing-05 rem(13px);
41
+ padding: rem(32px) rem(32px) rem(13px) $spacing-05;
42
42
  outline: none;
43
+ text-overflow: ellipsis;
43
44
  }
44
45
 
45
46
  .#{$prefix}--select--fluid .#{$prefix}--select__arrow {
46
- top: auto;
47
- bottom: 1rem;
47
+ top: $spacing-07;
48
48
  height: 1rem;
49
49
  }
50
50
 
@@ -54,10 +54,10 @@
54
54
  }
55
55
 
56
56
  // Invalid + Warn states
57
- .#{$prefix}--select--fluid .#{$prefix}--select--invalid {
57
+ .#{$prefix}--select--fluid
58
+ .#{$prefix}--select--invalid
59
+ .#{$prefix}--select-input__wrapper {
58
60
  @include focus-outline('invalid');
59
-
60
- outline-offset: 0;
61
61
  }
62
62
 
63
63
  .#{$prefix}--select--fluid
@@ -79,6 +79,7 @@
79
79
  .#{$prefix}--select--fluid
80
80
  .#{$prefix}--select--warning
81
81
  .#{$prefix}--select-input {
82
+ padding-right: rem(32px);
82
83
  border-bottom: 1px solid transparent;
83
84
  }
84
85
 
@@ -86,6 +87,10 @@
86
87
  border-bottom: 1px solid $border-strong;
87
88
  }
88
89
 
90
+ .#{$prefix}--select--fluid .#{$prefix}--select-input__wrapper {
91
+ flex-direction: column;
92
+ }
93
+
89
94
  .#{$prefix}--select--fluid
90
95
  .#{$prefix}--select-input__wrapper[data-invalid]
91
96
  .#{$prefix}--select-input:not(:focus),
@@ -95,6 +100,23 @@
95
100
  outline: none;
96
101
  }
97
102
 
103
+ .#{$prefix}--select--fluid
104
+ .#{$prefix}--select-input__wrapper[data-invalid]
105
+ .#{$prefix}--form-requirement,
106
+ .#{$prefix}--select--fluid
107
+ .#{$prefix}--select--warning
108
+ .#{$prefix}--form-requirement {
109
+ display: block;
110
+ overflow: visible;
111
+ max-height: 100%;
112
+ }
113
+
114
+ .#{$prefix}--select--fluid
115
+ .#{$prefix}--select-input__wrapper[data-invalid]
116
+ .#{$prefix}--form-requirement {
117
+ color: $text-error;
118
+ }
119
+
98
120
  .#{$prefix}--select--fluid .#{$prefix}--form-requirement {
99
121
  padding: $spacing-03 rem(40px) $spacing-03 $spacing-05;
100
122
  margin: 0;
@@ -122,10 +144,10 @@
122
144
  }
123
145
 
124
146
  // Focus styles
125
- .#{$prefix}--select--fluid .#{$prefix}--select--fluid--focus {
147
+ .#{$prefix}--select--fluid
148
+ .#{$prefix}--select--fluid--focus
149
+ .#{$prefix}--select-input__wrapper {
126
150
  @include focus-outline('outline');
127
-
128
- outline-offset: 0;
129
151
  }
130
152
 
131
153
  .#{$prefix}--select--fluid
@@ -154,21 +154,25 @@
154
154
  // Skeleton
155
155
  .#{$prefix}--text-input--fluid__skeleton {
156
156
  position: relative;
157
- height: 100%;
158
- padding: $spacing-05;
157
+ height: rem(64px);
159
158
  border-bottom: 1px solid $skeleton-element;
160
159
  background: $skeleton-background;
161
160
  }
162
161
 
163
162
  .#{$prefix}--text-input--fluid__skeleton .#{$prefix}--skeleton {
164
- height: 0.5rem;
163
+ position: absolute;
164
+ top: $spacing-05;
165
+ left: $spacing-05;
166
+ width: 25%;
167
+ height: rem(8px);
165
168
  }
166
169
 
167
170
  .#{$prefix}--text-input--fluid__skeleton .#{$prefix}--label {
168
- margin-bottom: $spacing-04;
169
- }
170
-
171
- .#{$prefix}--text-input--fluid__skeleton .#{$prefix}--text-input {
172
- width: 80%;
171
+ position: absolute;
172
+ top: rem(36px);
173
+ left: $spacing-05;
174
+ width: 50%;
175
+ height: rem(8px);
176
+ padding: 0;
173
177
  }
174
178
  }
@@ -0,0 +1,235 @@
1
+ //
2
+ // Copyright IBM Corp. 2022
3
+ //
4
+ // This source code is licensed under the Apache-2.0 license found in the
5
+ // LICENSE file in the root directory of this source tree.
6
+ //
7
+
8
+ //-----------------------------
9
+ // Fluid Time Picker
10
+ //-----------------------------
11
+ @use '../../config' as *;
12
+ @use '../../motion' as *;
13
+ @use '../../spacing' as *;
14
+ @use '../../theme' as *;
15
+ @use '../../utilities/convert' as *;
16
+ @use '../../utilities/focus-outline' as *;
17
+ @use '../fluid-text-input';
18
+ @use '../fluid-select';
19
+
20
+ @mixin fluid-time-picker {
21
+ .#{$prefix}--time-picker--fluid {
22
+ background: $field;
23
+ }
24
+
25
+ .#{$prefix}--time-picker--fluid .#{$prefix}--time-picker--fluid__wrapper {
26
+ display: flex;
27
+ }
28
+
29
+ .#{$prefix}--time-picker--fluid__wrapper > *:nth-child(1),
30
+ .#{$prefix}--time-picker--fluid__wrapper > *:nth-child(2) {
31
+ flex-basis: 25%;
32
+ }
33
+
34
+ .#{$prefix}--time-picker--equal-width
35
+ .#{$prefix}--time-picker--fluid__wrapper
36
+ > * {
37
+ flex-basis: 50%;
38
+ }
39
+
40
+ // Simulated borders
41
+ .#{$prefix}--time-picker--fluid__wrapper
42
+ > *:nth-child(2):not(:last-child)
43
+ .#{$prefix}--select-input__wrapper::before,
44
+ .#{$prefix}--time-picker--fluid__wrapper
45
+ > *:last-child
46
+ .#{$prefix}--select-input__wrapper::before {
47
+ position: absolute;
48
+ display: block;
49
+ width: 1px;
50
+ height: calc(100% - 1px);
51
+ background-color: $border-strong;
52
+ content: '';
53
+ opacity: 1;
54
+ transition: opacity $duration-fast-01 motion(standard, productive);
55
+ }
56
+
57
+ .#{$prefix}--time-picker--fluid__wrapper
58
+ .#{$prefix}--select-input__wrapper::after {
59
+ right: 0;
60
+ }
61
+
62
+ .#{$prefix}--time-picker--fluid__wrapper
63
+ .#{$prefix}--select-input__wrapper::before {
64
+ left: 0;
65
+ }
66
+
67
+ .#{$prefix}--time-picker--fluid:not(.#{$prefix}--time-picker--fluid--disabled)
68
+ .#{$prefix}--time-picker--fluid__wrapper
69
+ > *:nth-child(2):not(:last-child):hover
70
+ .#{$prefix}--select-input__wrapper::before,
71
+ .#{$prefix}--time-picker--fluid:not(.#{$prefix}--time-picker--fluid--disabled)
72
+ .#{$prefix}--time-picker--fluid__wrapper
73
+ > *:nth-child(2):hover:not(:last-child)
74
+ ~ *
75
+ .#{$prefix}--select-input__wrapper::before,
76
+ .#{$prefix}--time-picker--fluid:not(.#{$prefix}--time-picker--fluid--disabled)
77
+ .#{$prefix}--time-picker--fluid__wrapper
78
+ > *:last-child:hover
79
+ .#{$prefix}--select-input__wrapper::before {
80
+ opacity: 0;
81
+ }
82
+
83
+ .#{$prefix}--time-picker--fluid--disabled
84
+ .#{$prefix}--time-picker--fluid__wrapper
85
+ .#{$prefix}--select--disabled
86
+ .#{$prefix}--select-input__wrapper::before {
87
+ background: $border-disabled;
88
+ }
89
+
90
+ // Invalid + Warn states
91
+ .#{$prefix}--time-picker--fluid .#{$prefix}--form-requirement {
92
+ padding: $spacing-03 rem(40px) $spacing-03 $spacing-05;
93
+ margin: 0;
94
+ background: $field;
95
+ }
96
+
97
+ .#{$prefix}--time-picker--fluid--invalid {
98
+ @include focus-outline('invalid');
99
+
100
+ position: relative;
101
+ }
102
+
103
+ .#{$prefix}--time-picker--fluid--invalid .#{$prefix}--text-input,
104
+ .#{$prefix}--time-picker--fluid--invalid .#{$prefix}--text-input-wrapper,
105
+ .#{$prefix}--time-picker--fluid--invalid .#{$prefix}--select-input,
106
+ .#{$prefix}--time-picker--fluid--invalid .#{$prefix}--select {
107
+ background: transparent;
108
+ }
109
+
110
+ .#{$prefix}--time-picker--fluid--invalid .#{$prefix}--select-input {
111
+ padding-top: rem(30px);
112
+ border-top: 2px solid transparent;
113
+ }
114
+
115
+ .#{$prefix}--select--fluid:last-of-type .#{$prefix}--select-input {
116
+ border-right: 2px solid transparent;
117
+ }
118
+
119
+ .#{$prefix}--time-picker--fluid--invalid
120
+ .#{$prefix}--select-input:hover:not([disabled]) {
121
+ background: $field-hover;
122
+ }
123
+
124
+ .#{$prefix}--time-picker--fluid--invalid .#{$prefix}--select-input:hover {
125
+ border-top: 2px solid $support-error;
126
+ }
127
+
128
+ .#{$prefix}--time-picker--fluid--invalid
129
+ .#{$prefix}--select--fluid:last-of-type
130
+ .#{$prefix}--select-input:hover {
131
+ border-right: 2px solid $support-error;
132
+ }
133
+
134
+ .#{$prefix}--time-picker--fluid--warning {
135
+ position: relative;
136
+ }
137
+
138
+ .#{$prefix}--time-picker__icon {
139
+ display: none;
140
+ }
141
+
142
+ .#{$prefix}--time-picker--fluid--invalid .#{$prefix}--time-picker__icon,
143
+ .#{$prefix}--time-picker--fluid--warning .#{$prefix}--time-picker__icon {
144
+ position: absolute;
145
+ top: rem(72px);
146
+ right: $spacing-05;
147
+ display: block;
148
+ }
149
+
150
+ .#{$prefix}--time-picker--fluid--invalid .#{$prefix}--time-picker__icon {
151
+ fill: $support-error;
152
+ }
153
+
154
+ .#{$prefix}--time-picker--fluid--warning .#{$prefix}--time-picker__icon {
155
+ fill: $support-warning;
156
+ }
157
+
158
+ .#{$prefix}--time-picker--fluid--warning
159
+ .#{$prefix}--time-picker__icon
160
+ path:first-of-type {
161
+ fill: $icon-primary;
162
+ }
163
+
164
+ .#{$prefix}--time-picker--fluid--invalid .#{$prefix}--form-requirement,
165
+ .#{$prefix}--time-picker--fluid--warning .#{$prefix}--form-requirement {
166
+ display: block;
167
+ overflow: visible;
168
+ max-height: 100%;
169
+ }
170
+
171
+ .#{$prefix}--time-picker--fluid--invalid .#{$prefix}--form-requirement {
172
+ color: $text-error;
173
+ }
174
+
175
+ .#{$prefix}--time-picker--fluid--invalid
176
+ .#{$prefix}--time-picker--fluid__wrapper
177
+ > *:nth-child(2):not(:last-child)
178
+ .#{$prefix}--select-input__wrapper::before,
179
+ .#{$prefix}--time-picker--fluid--invalid
180
+ .#{$prefix}--time-picker--fluid__wrapper
181
+ > *:last-child
182
+ .#{$prefix}--select-input__wrapper::before,
183
+ .#{$prefix}--time-picker--fluid--warning
184
+ .#{$prefix}--time-picker--fluid__wrapper
185
+ > *:nth-child(2):not(:last-child)
186
+ .#{$prefix}--select-input__wrapper::before,
187
+ .#{$prefix}--time-picker--fluid--warning
188
+ .#{$prefix}--time-picker--fluid__wrapper
189
+ > *:last-child
190
+ .#{$prefix}--select-input__wrapper::before {
191
+ top: 8px;
192
+ height: calc(100% - 1rem);
193
+ }
194
+
195
+ .#{$prefix}--time-picker--fluid--invalid .#{$prefix}--text-input,
196
+ .#{$prefix}--time-picker--fluid--warning .#{$prefix}--text-input,
197
+ .#{$prefix}--time-picker--fluid--invalid .#{$prefix}--select-input,
198
+ .#{$prefix}--time-picker--fluid--warning .#{$prefix}--select-input {
199
+ border-bottom: 1px solid transparent;
200
+ }
201
+
202
+ .#{$prefix}--time-picker--fluid.#{$prefix}--time-picker--fluid--invalid
203
+ .#{$prefix}--time-picker__divider,
204
+ .#{$prefix}--time-picker--fluid.#{$prefix}--time-picker--fluid--warning
205
+ .#{$prefix}--time-picker__divider {
206
+ width: calc(100% - 2rem);
207
+ border-style: solid;
208
+ border-color: $border-subtle;
209
+ border-bottom: none;
210
+ margin: 0 1rem;
211
+ }
212
+
213
+ // Skeleton styles
214
+ .#{$prefix}--time-picker--fluid--skeleton {
215
+ display: flex;
216
+ width: 100%;
217
+ height: rem(64px);
218
+ }
219
+
220
+ .#{$prefix}--time-picker--fluid--skeleton > * {
221
+ width: auto;
222
+ height: 100%;
223
+ }
224
+
225
+ .#{$prefix}--time-picker--fluid--skeleton > *:nth-child(1),
226
+ .#{$prefix}--time-picker--fluid--skeleton > *:nth-child(2) {
227
+ width: 25%;
228
+ }
229
+
230
+ .#{$prefix}--time-picker--fluid--skeleton > *:last-child,
231
+ .#{$prefix}--time-picker--fluid--skeleton.#{$prefix}--time-picker--equal-width
232
+ > *:first-child {
233
+ width: 50%;
234
+ }
235
+ }
@@ -0,0 +1,11 @@
1
+ //
2
+ // Copyright IBM Corp. 2022
3
+ //
4
+ // This source code is licensed under the Apache-2.0 license found in the
5
+ // LICENSE file in the root directory of this source tree.
6
+ //
7
+
8
+ @forward 'fluid-time-picker';
9
+ @use 'fluid-time-picker';
10
+
11
+ @include fluid-time-picker.fluid-time-picker;
@@ -98,6 +98,13 @@
98
98
  color: $text-disabled;
99
99
  }
100
100
 
101
+ //-----------------------------
102
+ // Readonly
103
+ //-----------------------------
104
+ .#{$prefix}--text-area__wrapper--readonly .#{$prefix}--text-area {
105
+ background: transparent;
106
+ }
107
+
101
108
  // V11: Possibly deprecate
102
109
  .#{$prefix}--text-area.#{$prefix}--text-area--light:disabled {
103
110
  background-color: $field-02;
@@ -203,6 +203,17 @@
203
203
  }
204
204
  }
205
205
 
206
+ .#{$prefix}--text-input__counter-alert {
207
+ position: absolute;
208
+ overflow: hidden;
209
+ width: 1px;
210
+ height: 1px;
211
+ padding: 0;
212
+ border: 0;
213
+ margin: -1px;
214
+ clip: rect(0, 0, 0, 0);
215
+ }
216
+
206
217
  //-----------------------------
207
218
  // Disabled
208
219
  //-----------------------------