@clayui/css 3.95.2 → 3.98.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 (55) hide show
  1. package/lib/css/atlas.css +405 -94
  2. package/lib/css/atlas.css.map +1 -1
  3. package/lib/css/base.css +210 -82
  4. package/lib/css/base.css.map +1 -1
  5. package/lib/css/cadmin.css +375 -178
  6. package/lib/css/cadmin.css.map +1 -1
  7. package/lib/images/icons/accessibility.svg +9 -0
  8. package/lib/images/icons/icons.svg +1 -1
  9. package/lib/images/icons/stars.svg +9 -0
  10. package/package.json +2 -2
  11. package/src/images/icons/accessibility.svg +9 -0
  12. package/src/images/icons/stars.svg +9 -0
  13. package/src/scss/_license-text.scss +1 -1
  14. package/src/scss/atlas/variables/_forms.scss +38 -0
  15. package/src/scss/atlas/variables/_menubar.scss +87 -9
  16. package/src/scss/atlas/variables/_pagination.scss +56 -4
  17. package/src/scss/atlas/variables/_tables.scss +4 -4
  18. package/src/scss/cadmin/components/_date-picker.scss +4 -0
  19. package/src/scss/cadmin/components/_forms.scss +1 -25
  20. package/src/scss/cadmin/components/_grid.scss +0 -12
  21. package/src/scss/cadmin/components/_multi-step-nav.scss +1 -11
  22. package/src/scss/cadmin/components/_navbar.scss +1 -6
  23. package/src/scss/cadmin/components/_progress-bars.scss +6 -0
  24. package/src/scss/cadmin/components/_type.scss +0 -21
  25. package/src/scss/cadmin/components/_utilities-functional-important.scss +30 -10
  26. package/src/scss/cadmin/variables/_buttons.scss +12 -2
  27. package/src/scss/cadmin/variables/_forms.scss +31 -0
  28. package/src/scss/cadmin/variables/_menubar.scss +100 -45
  29. package/src/scss/cadmin/variables/_multi-step-nav.scss +18 -0
  30. package/src/scss/cadmin/variables/_navbar.scss +13 -0
  31. package/src/scss/cadmin/variables/_pagination.scss +48 -4
  32. package/src/scss/cadmin/variables/_tables.scss +4 -4
  33. package/src/scss/cadmin/variables/_utilities.scss +111 -36
  34. package/src/scss/components/_date-picker.scss +4 -0
  35. package/src/scss/components/_forms.scss +1 -25
  36. package/src/scss/components/_grid.scss +0 -10
  37. package/src/scss/components/_multi-step-nav.scss +9 -20
  38. package/src/scss/components/_navbar.scss +1 -6
  39. package/src/scss/components/_type.scss +0 -21
  40. package/src/scss/components/_utilities-functional-important.scss +27 -8
  41. package/src/scss/functions/_lx-icons-generated.scss +4 -0
  42. package/src/scss/mixins/_dropdown-menu.scss +37 -1
  43. package/src/scss/mixins/_globals.scss +46 -17
  44. package/src/scss/mixins/_input-groups.scss +8 -0
  45. package/src/scss/mixins/_links.scss +44 -0
  46. package/src/scss/mixins/_transition.scss +2 -7
  47. package/src/scss/mixins/_type.scss +7 -3
  48. package/src/scss/variables/_buttons.scss +2 -0
  49. package/src/scss/variables/_dropdowns.scss +54 -0
  50. package/src/scss/variables/_forms.scss +48 -3
  51. package/src/scss/variables/_icons.scss +1 -1
  52. package/src/scss/variables/_menubar.scss +8 -10
  53. package/src/scss/variables/_multi-step-nav.scss +43 -1
  54. package/src/scss/variables/_navbar.scss +14 -0
  55. package/src/scss/variables/_utilities.scss +111 -36
@@ -241,6 +241,18 @@
241
241
 
242
242
  $enabled: setter(map-get($map, enabled), true);
243
243
 
244
+ $_prefers-reduced-motion-media-query: if(
245
+ variable-exists(enable-prefers-reduced-motion-media-query),
246
+ $enable-prefers-reduced-motion-media-query,
247
+ if(
248
+ variable-exists(
249
+ cadmin-enable-prefers-reduced-motion-media-query
250
+ ),
251
+ $cadmin-enable-prefers-reduced-motion-media-query,
252
+ true
253
+ )
254
+ );
255
+
244
256
  @if ($enabled) {
245
257
  @each $key, $value in $map {
246
258
  @if ($value == clay-unset or $value == c-unset) {
@@ -264,19 +276,20 @@
264
276
  animation: $value;
265
277
 
266
278
  @if ($value != 'none' and $value != null) {
279
+ @if ($_prefers-reduced-motion-media-query) {
280
+ @media (prefers-reduced-motion: reduce) {
281
+ animation: none;
282
+ }
283
+ }
284
+
267
285
  @at-root {
268
286
  $selector: '.c-prefers-reduced-motion &';
269
287
 
270
288
  @if (variable-exists(cadmin-selector)) {
271
- $selector: clay-insert-after(
272
- '.cadmin ',
289
+ $selector: clay-insert-before(
290
+ '.cadmin',
273
291
  '.c-prefers-reduced-motion '
274
292
  );
275
- $selector: clay-insert-after(
276
- '.cadmin.',
277
- 'c-prefers-reduced-motion.',
278
- $selector
279
- );
280
293
  }
281
294
 
282
295
  #{$selector} {
@@ -292,27 +305,43 @@
292
305
  } @else if ($key == 'overflow-wrap') {
293
306
  overflow-wrap: $value;
294
307
  word-wrap: $value;
308
+ } @else if ($key == 'text-overflow') {
309
+ @if ($value == 'ellipsis') {
310
+ text-overflow: $value;
311
+
312
+ @at-root {
313
+ $selector: '.c-prefers-expanded-text &';
314
+
315
+ @if (variable-exists(cadmin-selector)) {
316
+ $selector: clay-insert-before(
317
+ '.cadmin',
318
+ '.c-prefers-expanded-text '
319
+ );
320
+ }
321
+
322
+ #{$selector} {
323
+ @extend %c-prefers-expanded-text !optional;
324
+ }
325
+ }
326
+ }
295
327
  } @else if ($key == 'transition') {
296
328
  transition: $value;
297
329
 
298
330
  @if ($value != 'none' and $value != null) {
299
- @media (prefers-reduced-motion: reduce) {
300
- transition: none;
331
+ @if ($_prefers-reduced-motion-media-query) {
332
+ @media (prefers-reduced-motion: reduce) {
333
+ transition: none;
334
+ }
301
335
  }
302
336
 
303
337
  @at-root {
304
338
  $selector: '.c-prefers-reduced-motion &';
305
339
 
306
340
  @if (variable-exists(cadmin-selector)) {
307
- $selector: clay-insert-after(
308
- '.cadmin ',
341
+ $selector: clay-insert-before(
342
+ '.cadmin',
309
343
  '.c-prefers-reduced-motion '
310
344
  );
311
- $selector: clay-insert-after(
312
- '.cadmin.',
313
- 'c-prefers-reduced-motion.',
314
- $selector
315
- );
316
345
  }
317
346
 
318
347
  #{$selector} {
@@ -344,7 +373,7 @@
344
373
  @each $key, $value in $map {
345
374
  @if not clay-is-map-unset($value) {
346
375
  @if (type-of($value) == 'map') {
347
- $valid-prefixes: '#', '&', '.', '>', '@';
376
+ $valid-prefixes: '#', '&', '.', '>', '@', '~', '+', '[';
348
377
 
349
378
  $selector: if(
350
379
  index($valid-prefixes, str-slice($key, 1, 1)),
@@ -300,6 +300,14 @@
300
300
  @if ($enabled) {
301
301
  @include clay-css($map);
302
302
 
303
+ &::before {
304
+ @include clay-css(map-get($map, before));
305
+ }
306
+
307
+ &::after {
308
+ @include clay-css(map-get($map, after));
309
+ }
310
+
303
311
  &.focus {
304
312
  @include clay-input-group-item-variant(
305
313
  map-deep-get($map, focus)
@@ -845,6 +845,50 @@
845
845
  &::after {
846
846
  @include clay-css(map-get($show, after));
847
847
  }
848
+
849
+ &:hover {
850
+ $_show-hover: setter(map-get($show, hover), ());
851
+
852
+ @include clay-css($_show-hover);
853
+
854
+ &::before {
855
+ @include clay-css(map-get($_show-hover, before));
856
+ }
857
+
858
+ &::after {
859
+ @include clay-css(map-get($_show-hover, after));
860
+ }
861
+ }
862
+
863
+ &:focus {
864
+ $_show-focus: setter(map-get($show, focus), ());
865
+
866
+ @include clay-css($_show-focus);
867
+
868
+ &::before {
869
+ @include clay-css(map-get($_show-focus, before));
870
+ }
871
+
872
+ &::after {
873
+ @include clay-css(map-get($_show-focus, after));
874
+ }
875
+ }
876
+
877
+ .inline-item {
878
+ @include clay-css(map-get($show, inline-item));
879
+ }
880
+
881
+ .inline-item-before {
882
+ @include clay-css(map-get($show, inline-item-before));
883
+ }
884
+
885
+ .inline-item-middle {
886
+ @include clay-css(map-get($show, inline-item-middle));
887
+ }
888
+
889
+ .inline-item-after {
890
+ @include clay-css(map-get($show, inline-item-after));
891
+ }
848
892
  }
849
893
 
850
894
  @if (map-get($c-inner, enabled)) {
@@ -37,15 +37,10 @@
37
37
  $selector: '.c-prefers-reduced-motion &';
38
38
 
39
39
  @if (variable-exists(cadmin-selector)) {
40
- $selector: clay-insert-after(
41
- '.cadmin ',
40
+ $selector: clay-insert-before(
41
+ '.cadmin',
42
42
  '.c-prefers-reduced-motion '
43
43
  );
44
- $selector: clay-insert-after(
45
- '.cadmin.',
46
- 'c-prefers-reduced-motion.',
47
- $selector
48
- );
49
44
  }
50
45
 
51
46
  #{$selector} {
@@ -50,9 +50,13 @@
50
50
  /// A Bootstrap 4 mixin for displaying ellipsis if text overflows its container. Requires other CSS properties to function properly depending on the `display` property. Clay CSS `truncate-text-inline` with `text-truncate` is a more fail safe pattern.
51
51
 
52
52
  @mixin text-truncate() {
53
- overflow: hidden;
54
- text-overflow: ellipsis;
55
- white-space: nowrap;
53
+ @include clay-css(
54
+ (
55
+ overflow: hidden,
56
+ text-overflow: ellipsis,
57
+ white-space: nowrap,
58
+ )
59
+ );
56
60
  }
57
61
 
58
62
  // Highlight inline text
@@ -45,6 +45,7 @@ $btn: map-deep-merge(
45
45
  font-family: $btn-font-family,
46
46
  font-size: $btn-font-size,
47
47
  font-weight: $btn-font-weight,
48
+ letter-spacing: inherit,
48
49
  line-height: $btn-line-height,
49
50
  padding-bottom: $btn-padding-y,
50
51
  padding-left: $btn-padding-x,
@@ -350,6 +351,7 @@ $btn-unstyled: map-deep-merge(
350
351
  cursor: $btn-cursor,
351
352
  font-size: inherit,
352
353
  font-weight: inherit,
354
+ letter-spacing: inherit,
353
355
  line-height: inherit,
354
356
  max-width: 100%,
355
357
  padding: 0,
@@ -969,6 +969,55 @@ $dropdown-menu-palette: map-deep-merge(
969
969
  padding-right: 1.5rem,
970
970
  ),
971
971
  ),
972
+ dropdown-item-scroll: (
973
+ font-size: 1rem,
974
+ height: 2rem,
975
+ padding: 0,
976
+ position: absolute,
977
+ text-align: center,
978
+ z-index: 1,
979
+ hover: (
980
+ background-color: $dropdown-link-hover-bg,
981
+ background-image: none,
982
+ color: $dropdown-link-hover-color,
983
+ ),
984
+ focus: (
985
+ background-color: $dropdown-link-hover-bg,
986
+ background-image: none,
987
+ color: $dropdown-link-hover-color,
988
+ ),
989
+ active: (
990
+ background-color: $dropdown-link-active-bg,
991
+ background-image: none,
992
+ color: $dropdown-link-active-color,
993
+ ),
994
+ disabled: (
995
+ background-color: transparent,
996
+ background-image: none,
997
+ color: $dropdown-link-disabled-color,
998
+ cursor: $dropdown-item-disabled-cursor,
999
+ ),
1000
+ ),
1001
+ dropdown-item-scroll-up: (
1002
+ background-image: (
1003
+ linear-gradient(
1004
+ to bottom,
1005
+ rgba(255, 255, 255, 1) 84%,
1006
+ rgba(255, 255, 255, 0) 100%
1007
+ ),
1008
+ ),
1009
+ top: $dropdown-padding-y,
1010
+ ),
1011
+ dropdown-item-scroll-down: (
1012
+ background-image: (
1013
+ linear-gradient(
1014
+ to top,
1015
+ rgba(255, 255, 255, 1) 84%,
1016
+ rgba(255, 255, 255, 0) 100%
1017
+ ),
1018
+ ),
1019
+ bottom: $dropdown-padding-y,
1020
+ ),
972
1021
  dropdown-divider: (
973
1022
  margin: 0.3125rem 0,
974
1023
  ),
@@ -985,6 +1034,11 @@ $dropdown-menu-palette: map-deep-merge(
985
1034
  ),
986
1035
  ),
987
1036
  ),
1037
+ '.dropdown-menu-select.dropdown-menu-height-lg': (
1038
+ inline-scroller: (
1039
+ max-height: 432px,
1040
+ ),
1041
+ ),
988
1042
  ),
989
1043
  $dropdown-menu-palette
990
1044
  );
@@ -70,13 +70,14 @@ $input: map-deep-merge(
70
70
  font-size: $input-font-size,
71
71
  font-weight: $input-font-weight,
72
72
  height: $input-height,
73
+ letter-spacing: inherit,
73
74
  line-height: $input-line-height,
74
75
  min-width: 0,
75
76
  padding-bottom: $input-padding-y,
76
77
  padding-left: $input-padding-x,
77
78
  padding-right: $input-padding-x,
78
79
  padding-top: $input-padding-y,
79
- transition: $input-transition,
80
+ transition: clay-enable-transitions($input-transition),
80
81
  width: 100%,
81
82
  mobile: (
82
83
  font-size: $input-font-size-mobile,
@@ -118,6 +119,36 @@ $input-palette: () !default;
118
119
 
119
120
  $input-plaintext-color: $body-color !default;
120
121
 
122
+ $input-plaintext: () !default;
123
+ $input-plaintext: map-deep-merge(
124
+ (
125
+ background-clip: border-box,
126
+ background-color: transparent,
127
+ border-bottom-width: $input-border-bottom-width,
128
+ border-color: transparent,
129
+ border-left-width: $input-border-left-width,
130
+ border-right-width: $input-border-right-width,
131
+ border-style: solid,
132
+ border-top-width: $input-border-top-width,
133
+ color: $input-plaintext-color,
134
+ display: block,
135
+ font-size: $input-font-size,
136
+ height: $input-height,
137
+ letter-spacing: inherit,
138
+ line-height: $input-line-height,
139
+ // match inputs if this class comes on inputs with default margins
140
+ margin-bottom: 0,
141
+ min-width: 0,
142
+ padding-bottom: $input-padding-y,
143
+ padding-left: 0,
144
+ padding-right: 0,
145
+ padding-top: $input-padding-y,
146
+ text-overflow: ellipsis,
147
+ width: 100%,
148
+ ),
149
+ $input-plaintext
150
+ );
151
+
121
152
  /// @deprecated with no replacement
122
153
 
123
154
  $input-height-border: calc(
@@ -339,7 +370,7 @@ $input-plaintext-readonly: map-deep-merge(
339
370
  (
340
371
  border-radius: $input-border-radius,
341
372
  outline: 0,
342
- transition: $input-transition,
373
+ transition: clay-enable-transitions($input-transition),
343
374
  focus: (
344
375
  box-shadow: $input-focus-box-shadow,
345
376
  ),
@@ -1433,9 +1464,23 @@ $input-group-item: map-deep-merge(
1433
1464
  margin-left: $input-group-item-margin-left,
1434
1465
  width: 1%,
1435
1466
  word-wrap: break-word,
1467
+ after: (
1468
+ border-radius: inherit,
1469
+ bottom: 0,
1470
+ content: '',
1471
+ display: block,
1472
+ left: 0,
1473
+ pointer-events: none,
1474
+ position: absolute,
1475
+ right: 0,
1476
+ top: 0,
1477
+ transition: clay-enable-transitions($input-transition),
1478
+ ),
1436
1479
  focus: (
1437
1480
  border-radius: clay-enable-rounded($input-border-radius),
1438
- box-shadow: $input-focus-box-shadow,
1481
+ after: (
1482
+ box-shadow: $input-focus-box-shadow,
1483
+ ),
1439
1484
  input-group-prepend: (
1440
1485
  border-bottom-right-radius: clay-enable-rounded(0),
1441
1486
  border-top-right-radius: clay-enable-rounded(0),
@@ -65,7 +65,7 @@ $collapse-icon-position-bottom: null !default;
65
65
  $collapse-icon-position-left: null !default;
66
66
  $collapse-icon-position-right: 0.9375rem !default; // 15px
67
67
  $collapse-icon-position-top: clay-collapse-icon-align(
68
- $nav-link-padding-y,
68
+ if(variable-exists(nav-link-padding-y), $nav-link-padding-y, 0.5rem),
69
69
  0.0625rem,
70
70
  0.9375em
71
71
  ) !default;
@@ -9,9 +9,7 @@ $menubar-vertical-expand-md: map-deep-merge(
9
9
  ),
10
10
  media-breakpoint-down: (
11
11
  sm: (
12
- margin-bottom: 1.5rem,
13
- margin-left: math-sign($grid-gutter-width * 0.5),
14
- margin-right: math-sign($grid-gutter-width * 0.5),
12
+ margin-bottom: 1rem,
15
13
  max-width: none,
16
14
  menubar-collapse: (
17
15
  border-color: transparent,
@@ -38,11 +36,13 @@ $menubar-vertical-expand-md: map-deep-merge(
38
36
  border-color: transparent,
39
37
  border-style: solid,
40
38
  border-width: 0.0625rem,
41
- display: flex,
39
+ display: inline-flex,
42
40
  height: 2rem,
43
41
  padding-left: 0.5rem,
44
42
  padding-right: 0.5rem,
45
43
  c-inner: (
44
+ margin-left: -0.5rem,
45
+ margin-right: -0.5rem,
46
46
  max-width: none,
47
47
  ),
48
48
  lexicon-icon: (
@@ -75,7 +75,6 @@ $menubar-vertical-transparent-md: map-deep-merge(
75
75
  ),
76
76
  media-breakpoint-down: (
77
77
  sm: (
78
- background-color: $gray-100,
79
78
  nav-link: (
80
79
  border-radius: clay-enable-rounded(0),
81
80
  color: $gray-900,
@@ -174,9 +173,7 @@ $menubar-vertical-expand-lg: map-deep-merge(
174
173
  ),
175
174
  media-breakpoint-down: (
176
175
  md: (
177
- margin-bottom: 1.5rem,
178
- margin-left: math-sign($grid-gutter-width * 0.5),
179
- margin-right: math-sign($grid-gutter-width * 0.5),
176
+ margin-bottom: 1rem,
180
177
  max-width: none,
181
178
  menubar-collapse: (
182
179
  border-color: transparent,
@@ -203,11 +200,13 @@ $menubar-vertical-expand-lg: map-deep-merge(
203
200
  border-color: transparent,
204
201
  border-style: solid,
205
202
  border-width: 0.0625rem,
206
- display: flex,
203
+ display: inline-flex,
207
204
  height: 2rem,
208
205
  padding-left: 0.5rem,
209
206
  padding-right: 0.5rem,
210
207
  c-inner: (
208
+ margin-left: -0.5rem,
209
+ margin-right: -0.5rem,
211
210
  max-width: none,
212
211
  ),
213
212
  lexicon-icon: (
@@ -240,7 +239,6 @@ $menubar-vertical-transparent-lg: map-deep-merge(
240
239
  ),
241
240
  media-breakpoint-down: (
242
241
  md: (
243
- background-color: $gray-100,
244
242
  nav-link: (
245
243
  border-radius: clay-enable-rounded(0),
246
244
  color: $gray-900,
@@ -40,6 +40,8 @@ $multi-step-divider-spacer-x: 0 !default;
40
40
  $multi-step-divider-top: ($multi-step-divider-height * 0.5) +
41
41
  ($multi-step-icon-size * 0.5) !default;
42
42
 
43
+ // Multi Step Indicator
44
+
43
45
  $multi-step-indicator-width: $multi-step-icon-size +
44
46
  ($multi-step-divider-spacer-x * 2) !default;
45
47
 
@@ -48,6 +50,29 @@ $multi-step-indicator-label-font-size: $font-size-base !default;
48
50
  $multi-step-indicator-label-font-weight: null !default;
49
51
  $multi-step-indicator-label-max-width: 100px !default;
50
52
 
53
+ $multi-step-indicator: () !default;
54
+ $multi-step-indicator: map-deep-merge(
55
+ (
56
+ position: relative,
57
+ width: $multi-step-indicator-width,
58
+ multi-step-indicator-label: (
59
+ color: $multi-step-indicator-label-color,
60
+ font-size: $multi-step-indicator-label-font-size,
61
+ font-weight: $multi-step-indicator-label-font-weight,
62
+ left: 50%,
63
+ max-width: $multi-step-indicator-label-max-width,
64
+ overflow: hidden,
65
+ position: absolute,
66
+ text-overflow: ellipsis,
67
+ transform: translateX(-50%),
68
+ white-space: nowrap,
69
+ ),
70
+ ),
71
+ $multi-step-indicator
72
+ );
73
+
74
+ // Multi Step Title
75
+
51
76
  $multi-step-title-color: null !default;
52
77
  $multi-step-title-font-size: $font-size-base !default;
53
78
  $multi-step-title-font-weight: null !default;
@@ -58,6 +83,24 @@ $multi-step-item-margin-bottom: 10px !default;
58
83
  $multi-step-item-width: 75px !default;
59
84
  $multi-step-item-fixed-width: 150px !default;
60
85
 
86
+ $multi-step-title-center: () !default;
87
+ $multi-step-title-center: map-deep-merge(
88
+ (
89
+ multi-step-title: (
90
+ margin-left: calc(#{$multi-step-icon-size} * 0.5),
91
+ max-width: $multi-step-title-max-width,
92
+ overflow: hidden,
93
+ position: relative,
94
+ text-align: center,
95
+ text-overflow: ellipsis,
96
+ transform: translateX(-50%),
97
+ white-space: nowrap,
98
+ width: auto,
99
+ ),
100
+ ),
101
+ $multi-step-title-center
102
+ );
103
+
61
104
  // data-multi-step-icon::before See https://issues.liferay.com/browse/LPS-147457.
62
105
 
63
106
  $multi-step-item-error: () !default;
@@ -67,7 +110,6 @@ $multi-step-item-error: map-deep-merge(
67
110
  background-color: $danger,
68
111
  background-image: clay-icon(times, $white),
69
112
  color: $white,
70
- text-indent: -100px,
71
113
  data-multi-step-icon: (
72
114
  before: (
73
115
  content: none,
@@ -15,6 +15,20 @@ $navbar-title-text-transform: null !default;
15
15
  $navbar-text-truncate-spacer-right: 1.5625rem !default; // 25px
16
16
  $navbar-text-truncate-max-width: 12.5rem !default; // 200px
17
17
 
18
+ $navbar-text-truncate: () !default;
19
+ $navbar-text-truncate: map-deep-merge(
20
+ (
21
+ display: inline-block,
22
+ max-width: 100%,
23
+ overflow: hidden,
24
+ text-decoration: inherit,
25
+ text-overflow: ellipsis,
26
+ vertical-align: bottom,
27
+ white-space: nowrap,
28
+ ),
29
+ $navbar-text-truncate
30
+ );
31
+
18
32
  // Navbar Brand
19
33
 
20
34
  $navbar-brand-font-size: $font-size-lg !default;