@clayui/css 3.45.0 → 3.48.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 (75) hide show
  1. package/README.md +23 -69
  2. package/lib/css/atlas.css +265 -97
  3. package/lib/css/atlas.css.map +1 -1
  4. package/lib/css/base.css +219 -79
  5. package/lib/css/base.css.map +1 -1
  6. package/lib/css/bootstrap.css.map +1 -1
  7. package/lib/css/cadmin.css +182 -76
  8. package/lib/css/cadmin.css.map +1 -1
  9. package/lib/images/icons/export.svg +11 -0
  10. package/lib/images/icons/icons.svg +1 -1
  11. package/package.json +2 -2
  12. package/src/images/icons/export.svg +11 -0
  13. package/src/scss/_cadmin-variables.scss +2 -0
  14. package/src/scss/_variables.scss +1 -0
  15. package/src/scss/atlas/variables/_buttons.scss +3 -0
  16. package/src/scss/atlas/variables/_cards.scss +12 -0
  17. package/src/scss/atlas/variables/_globals.scss +42 -13
  18. package/src/scss/atlas/variables/_list-group.scss +28 -12
  19. package/src/scss/atlas-variables.scss +2 -0
  20. package/src/scss/atlas.scss +2 -0
  21. package/src/scss/base-variables.scss +2 -0
  22. package/src/scss/base.scss +2 -0
  23. package/src/scss/cadmin/_variables.scss +1 -0
  24. package/src/scss/cadmin/components/_aspect-ratio.scss +25 -38
  25. package/src/scss/cadmin/components/_cards.scss +10 -120
  26. package/src/scss/cadmin/components/_empty-state.scss +36 -0
  27. package/src/scss/cadmin/components/_links.scss +0 -8
  28. package/src/scss/cadmin/components/_treeview.scss +58 -1
  29. package/src/scss/cadmin/components/_type.scss +27 -42
  30. package/src/scss/cadmin/components/_utilities-functional-important.scss +35 -15
  31. package/src/scss/cadmin/variables/_aspect-ratio.scss +26 -0
  32. package/src/scss/cadmin/variables/_cards.scss +164 -1
  33. package/src/scss/cadmin/variables/_empty-state.scss +23 -0
  34. package/src/scss/cadmin/variables/_globals.scss +173 -11
  35. package/src/scss/cadmin/variables/_links.scss +14 -0
  36. package/src/scss/cadmin/variables/_list-group.scss +32 -16
  37. package/src/scss/cadmin/variables/_sidebar.scss +1 -1
  38. package/src/scss/cadmin/variables/_treeview.scss +17 -1
  39. package/src/scss/cadmin/variables/_utilities.scss +42 -0
  40. package/src/scss/cadmin.scss +2 -0
  41. package/src/scss/components/_aspect-ratio.scss +25 -38
  42. package/src/scss/components/_cards.scss +28 -122
  43. package/src/scss/components/_custom-forms.scss +2 -2
  44. package/src/scss/components/_dropdowns.scss +0 -28
  45. package/src/scss/components/_empty-state.scss +30 -0
  46. package/src/scss/components/_links.scss +1 -9
  47. package/src/scss/components/_multi-step-nav.scss +11 -5
  48. package/src/scss/components/_tables.scss +0 -8
  49. package/src/scss/components/_treeview.scss +58 -1
  50. package/src/scss/components/_type.scss +27 -41
  51. package/src/scss/components/_utilities-functional-important.scss +35 -15
  52. package/src/scss/functions/_lx-icons-generated.scss +2 -0
  53. package/src/scss/mixins/_alerts.scss +180 -113
  54. package/src/scss/mixins/_buttons.scss +4 -0
  55. package/src/scss/mixins/_cards.scss +59 -25
  56. package/src/scss/mixins/_dropdown-menu.scss +17 -0
  57. package/src/scss/mixins/_grid.scss +29 -0
  58. package/src/scss/mixins/_links.scss +22 -2
  59. package/src/scss/variables/_aspect-ratio.scss +26 -0
  60. package/src/scss/variables/_buttons.scss +6 -0
  61. package/src/scss/variables/_cards.scss +158 -4
  62. package/src/scss/variables/_custom-forms.scss +19 -4
  63. package/src/scss/variables/_dropdowns.scss +45 -0
  64. package/src/scss/variables/_empty-state.scss +23 -0
  65. package/src/scss/variables/_globals.scss +172 -11
  66. package/src/scss/variables/_links.scss +21 -3
  67. package/src/scss/variables/_list-group.scss +22 -12
  68. package/src/scss/variables/_multi-step-nav.scss +6 -0
  69. package/src/scss/variables/_range.scss +4 -2
  70. package/src/scss/variables/_sidebar.scss +3 -3
  71. package/src/scss/variables/_stickers.scss +3 -3
  72. package/src/scss/variables/_tables.scss +14 -0
  73. package/src/scss/variables/_toggle-switch.scss +14 -2
  74. package/src/scss/variables/_treeview.scss +21 -1
  75. package/src/scss/variables/_utilities.scss +42 -0
@@ -619,12 +619,6 @@
619
619
  }
620
620
  }
621
621
 
622
- // Text
623
-
624
- .text-monospace {
625
- font-family: $font-family-monospace !important;
626
- }
627
-
628
622
  // Text Alignment
629
623
 
630
624
  .text-justify {
@@ -681,34 +675,60 @@
681
675
 
682
676
  // Font Weight and Italics
683
677
 
684
- .font-weight-light {
685
- font-weight: $font-weight-light !important;
678
+ .font-weight-lighter,
679
+ .text-weight-lighter {
680
+ font-weight: $font-weight-lighter !important;
686
681
  }
687
682
 
688
- .font-weight-lighter {
689
- font-weight: $font-weight-lighter !important;
683
+ .font-weight-light,
684
+ .text-weight-light {
685
+ font-weight: $font-weight-light !important;
690
686
  }
691
687
 
692
- .font-weight-normal {
688
+ .font-weight-normal,
689
+ .text-weight-normal {
693
690
  font-weight: $font-weight-normal !important;
694
691
  }
695
692
 
696
- .font-weight-semi-bold {
693
+ .font-weight-semi-bold,
694
+ .text-weight-semi-bold {
697
695
  font-weight: $font-weight-semi-bold !important;
698
696
  }
699
697
 
700
- .font-weight-bold {
698
+ .font-weight-bold,
699
+ .text-weight-bold {
701
700
  font-weight: $font-weight-bold !important;
702
701
  }
703
702
 
704
- .font-weight-bolder {
703
+ .font-weight-bolder,
704
+ .text-weight-bolder {
705
705
  font-weight: $font-weight-bolder !important;
706
706
  }
707
707
 
708
- .font-italic {
708
+ .font-italic,
709
+ .text-italic {
709
710
  font-style: italic !important;
710
711
  }
711
712
 
713
+ .font-monospace,
714
+ .text-monospace {
715
+ font-family: $font-family-monospace !important;
716
+ }
717
+
718
+ // Font Sizes
719
+
720
+ @each $selector, $value in $font-sizes {
721
+ $selector: if(
722
+ starts-with($selector, '.') or starts-with($selector, '#'),
723
+ $selector,
724
+ str-insert($selector, '.', 1)
725
+ );
726
+
727
+ #{$selector} {
728
+ @include clay-css($value);
729
+ }
730
+ }
731
+
712
732
  // Contextual Colors
713
733
 
714
734
  .text-white {
@@ -296,6 +296,8 @@
296
296
 
297
297
  'expand': '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path class="lexicon-icon-outline" d="M64 128v-25.4l88 88c25.5 25.5 64.5-12.8 38.6-38.6l-88-88H128c42.6 0 42.6-64 0-64H32C16.4 0 0 14.4 0 32v96c0 42.7 64 42.6 64 0zm384 0v-25.4l-88 88c-25.5 25.5-64.5-12.8-38.6-38.6l88-88H384c-42.6 0-42.6-64 0-64h96c15.6 0 32 14.4 32 32v96c0 42.7-64 42.6-64 0zM64 384v25.4l88-88c25.5-25.5 64.5 12.8 38.6 38.6l-88 88H128c42.6 0 42.6 64 0 64H32c-15.6 0-32-14.4-32-32v-96c0-42.7 64-42.6 64 0zm384 0v25.4l-88-88c-25.5-25.5-64.5 12.8-38.6 38.6l88 88H384c-42.6 0-42.6 64 0 64h96c15.6 0 32-14.4 32-32v-96c0-42.7-64-42.6-64 0z" fill="#{$color}"/></svg>',
298
298
 
299
+ 'export': '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path class="lexicon-icon-outline export-base" d="M448 256.3v191.8H64V256.3c0-41.6-64-41.6-64 0v191.8C0 483.2 28.8 512 64 512h384c35.2 0 64-28.8 64-63.9V256.3c0-44.8-64-41.6-64 0z" fill="#{$color}"/><path class="lexicon-icon-outline export-dash" d="M320 384.1H192c-41.6 0-41.6-63.9 0-63.9h128c41.6 0 44.8 63.9 0 63.9z" fill="#{$color}"/><path class="lexicon-icon-outline export-arrow-up" d="m233.6 10.1-64 63.9c-28.8 28.8 12.8 67.1 38.4 44.8l16-16v121.5c0 41.6 64 41.6 64 0V102.8l16 16c28.8 22.4 64-19.2 38.4-44.8l-64-63.9c-6.4-6.4-25.6-19.1-44.8 0z" fill="#{$color}"/></svg>',
300
+
299
301
  'fieldset': '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path class="lexicon-icon-outline lx-fieldset-bracket-start" d="M128 64c0-17.7-14.3-32-32-32H64C28.7 32 0 60.7 0 96v320c0 35.3 28.7 64 64 64h32c17.7 0 32-14.3 32-32s-14.3-32-32-32H64V96h32c17.7 0 32-14.3 32-32z" fill="#{$color}"/><path class="lexicon-icon-outline lx-fieldset-bracket-end" d="M512 416c0 35.3-28.7 64-64 64h-32c-17.7 0-32-14.3-32-32s14.3-32 32-32h32V96h-32c-17.7 0-32-14.3-32-32s14.3-32 32-32h32c35.3 0 64 28.7 64 64v320z" fill="#{$color}"/><path class="lexicon-icon-outline lx-fieldset-line-1-dot" d="M128 224c17.7 0 32-14.3 32-32s-14.3-32-32-32-32 14.3-32 32 14.3 32 32 32z" fill="#{$color}"/><path class="lexicon-icon-outline lx-fieldset-line-1-line" d="M224 160h160c17.7 0 32 14.3 32 32s-14.3 32-32 32H224c-17.7 0-32-14.3-32-32s14.3-32 32-32z" fill="#{$color}"/><path class="lexicon-icon-outline lx-fieldset-line-2-dot" d="M384 288H224c-17.7 0-32 14.3-32 32s14.3 32 32 32h160c17.7 0 32-14.3 32-32s-14.3-32-32-32z" fill="#{$color}"/><path class="lexicon-icon-outline lx-fieldset-line-2-line" d="M128 352c17.7 0 32-14.3 32-32s-14.3-32-32-32-32 14.3-32 32 14.3 32 32 32z" fill="#{$color}"/></svg>',
300
302
 
301
303
  'file-script': '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path class="lexicon-icon-outline file-script-border" d="M320 64v64c0 17.7 14.3 32 32 32h64v288H96V64h224zm5.5-64H96C60.7 0 32 28.7 32 64v384c0 35.3 28.7 64 64 64h320c35.3 0 64-28.7 64-64V154.5c0-33.5-18-44.5-63.5-90S360 0 325.5 0z" fill="#{$color}"/><path class="lexicon-icon-outline file-script-forward-slash" d="m212.2 409.2 69.1-187.5c7.7-20.7 37.7-7.7 30.1 10.9l-69.1 187.5C234 440 205 428 212.2 409.2z" fill="#{$color}"/><path class="lexicon-icon-outline file-script-angle-bracket-open" d="m160 320 35.9-35.9-22.6-22.6-35.9 35.9c-12.5 12.5-12.5 32.8 0 45.3l35.9 35.9 22.6-22.6-35.9-36z" fill="#{$color}"/><path class="lexicon-icon-outline file-script-angle-bracket-close" d="M355.9 320 320 284.1l22.6-22.6 35.9 35.9c12.5 12.5 12.5 32.8 0 45.3l-35.9 35.9-22.6-22.7 35.9-35.9z" fill="#{$color}"/></svg>',
@@ -1,3 +1,7 @@
1
+ ////
2
+ /// @group Alerts
3
+ ////
4
+
1
5
  /// This is Bootstrap 4's Alert Variant Mixin.
2
6
  /// @deprecated use the mixin `clay-alert-variant` instead
3
7
  /// @param {Color} $background
@@ -22,153 +26,216 @@
22
26
  /// A mixin to create alert variants.
23
27
  /// @param {Map} $map - A map of `key: value` pairs. The keys and value types are listed below:
24
28
  /// @example
25
- /// enabled: {Bool}, // Set to false to prevent mixin styles from being output. Default: true
26
- /// hr: {Map | Null}, // See mixin `clay-css`
27
- /// alert-btn: {Map | Null}, // See mixin `clay-button-variant`
28
- /// btn-group: {Map | Null}, // See mixin `clay-container`
29
- /// btn-group-item: {Map | Null}, // See mixin `clay-container`
30
- /// close: {Map | Null}, // See mixin `clay-close`
31
- /// lead: {Map | Null}, // See mixin `clay-css`
32
- /// alert-link: {Map | Null}, // See mixin `clay-link`
33
- /// component-title: {Map | Null}, // See mixin `clay-text-typography`
34
- /// component-subtitle: {Map | Null}, // See mixin `clay-text-typography`
29
+ /// (
30
+ /// enabled: {Bool}, // Set to false to prevent mixin styles from being output. Default: true
31
+ /// // .alert
32
+ /// first-child: (
33
+ /// // .alert:first-child
34
+ /// ),
35
+ /// last-child: (
36
+ /// // .alert:last-child
37
+ /// ),
38
+ /// hr: (
39
+ /// // .alert hr
40
+ /// ),
41
+ /// alert-dismissible: (
42
+ /// // .alert.alert-dismissible
43
+ /// container-fluid: (
44
+ /// // .alert.alert-dismissible .container, .alert.alert-dismissible .container-fluid
45
+ /// ),
46
+ /// ),
47
+ /// alert-indicator: (
48
+ /// // .alert .alert-indicator
49
+ /// lexicon-icon: (
50
+ /// // .alert .alert-indicator .lexicon-icon
51
+ /// ),
52
+ /// lead: (
53
+ /// // .alert .alert-indicator + .lead
54
+ /// ),
55
+ /// ),
56
+ /// alert-btn: (
57
+ /// // .alert .alert-btn
58
+ /// ),
59
+ /// btn-group: (
60
+ /// // .alert .btn-group
61
+ /// ),
62
+ /// btn-group-item: (
63
+ /// // .alert .btn-group-item
64
+ /// ),
65
+ /// close: (
66
+ /// // .alert .close
67
+ /// ),
68
+ /// container-fluid: (
69
+ /// // .alert .container, .alert .container-fluid
70
+ /// ),
71
+ /// lead: (
72
+ /// // .alert .lead
73
+ /// ),
74
+ /// alert-link: (
75
+ /// // .alert .alert-link
76
+ /// ),
77
+ /// component-title: (
78
+ /// // .alert .component-title
79
+ /// ),
80
+ /// component-subtitle: (
81
+ /// // .alert .component-subtitle
82
+ /// ),
83
+ /// )
35
84
 
36
85
  @mixin clay-alert-variant($map) {
37
- $enabled: setter(map-get($map, enabled), true);
86
+ @if (type-of($map) == 'map') {
87
+ $enabled: setter(map-get($map, enabled), true);
38
88
 
39
- $base: map-merge(
40
- $map,
41
- (
42
- background-color:
43
- setter(map-get($map, bg), map-get($map, background-color)),
44
- )
45
- );
89
+ $base: map-merge(
90
+ $map,
91
+ (
92
+ background-color:
93
+ setter(map-get($map, bg), map-get($map, background-color)),
94
+ )
95
+ );
46
96
 
47
- $hr: setter(map-get($map, hr), ());
97
+ $hr: setter(map-get($map, hr), ());
48
98
 
49
- $alert-indicator: setter(map-get($map, alert-indicator), ());
99
+ $alert-indicator: setter(map-get($map, alert-indicator), ());
50
100
 
51
- $alert-indicator-lead: setter(map-get($alert-indicator, lead), ());
101
+ $alert-indicator-lead: setter(map-get($alert-indicator, lead), ());
52
102
 
53
- $alert-btn: setter(map-get($map, alert-btn), ());
103
+ $alert-btn: setter(map-get($map, alert-btn), ());
54
104
 
55
- $btn-group: setter(map-get($map, btn-group), ());
105
+ $btn-group: setter(map-get($map, btn-group), ());
56
106
 
57
- $btn-group-item: setter(map-get($map, btn-group-item), ());
107
+ $btn-group-item: setter(map-get($map, btn-group-item), ());
58
108
 
59
- $close: setter(map-get($map, close), ());
60
- $close: map-deep-merge(
61
- $close,
62
- (
63
- color: setter(map-get($map, close-color), map-get($close, color)),
64
- hover: (
109
+ $close: setter(map-get($map, close), ());
110
+ $close: map-deep-merge(
111
+ $close,
112
+ (
65
113
  color:
66
- setter(
67
- map-get($map, close-hover-color),
68
- map-deep-get($close, hover, color)
69
- ),
70
- ),
71
- )
72
- );
73
-
74
- $lead: setter(map-get($map, lead), ());
75
- $lead: map-deep-merge(
76
- $lead,
77
- (
78
- color: setter(map-get($map, lead-color), map-get($lead, color)),
79
- )
80
- );
81
-
82
- $alert-link: setter(map-get($map, alert-link), ());
83
- $alert-link: map-deep-merge(
84
- $alert-link,
85
- (
86
- color:
87
- setter(map-get($map, link-color), map-get($alert-link, color)),
88
- hover: (
114
+ setter(map-get($map, close-color), map-get($close, color)),
115
+ hover: (
116
+ color:
117
+ setter(
118
+ map-get($map, close-hover-color),
119
+ map-deep-get($close, hover, color)
120
+ ),
121
+ ),
122
+ )
123
+ );
124
+
125
+ $lead: setter(map-get($map, lead), ());
126
+ $lead: map-deep-merge(
127
+ $lead,
128
+ (
129
+ color: setter(map-get($map, lead-color), map-get($lead, color)),
130
+ )
131
+ );
132
+
133
+ $alert-link: setter(map-get($map, alert-link), ());
134
+ $alert-link: map-deep-merge(
135
+ $alert-link,
136
+ (
89
137
  color:
90
138
  setter(
91
- map-get($map, link-hover-color),
92
- map-deep-get($alert-link, hover, color)
139
+ map-get($map, link-color),
140
+ map-get($alert-link, color)
93
141
  ),
94
- ),
95
- )
96
- );
142
+ hover: (
143
+ color:
144
+ setter(
145
+ map-get($map, link-hover-color),
146
+ map-deep-get($alert-link, hover, color)
147
+ ),
148
+ ),
149
+ )
150
+ );
97
151
 
98
- $component-title: setter(map-get($map, component-title), ());
152
+ $component-title: setter(map-get($map, component-title), ());
99
153
 
100
- $component-subtitle: setter(map-get($map, component-subtitle), ());
154
+ $component-subtitle: setter(map-get($map, component-subtitle), ());
101
155
 
102
- @if ($enabled) {
103
- @include clay-css($base);
104
-
105
- hr {
106
- @include clay-css($hr);
107
- }
156
+ @if ($enabled) {
157
+ @include clay-css($base);
108
158
 
109
- &.alert-dismissible {
110
- @include clay-css(setter(map-get($map, alert-dismissible), ()));
159
+ &:first-child {
160
+ @include clay-css(map-get($map, first-child));
161
+ }
111
162
 
112
- .container,
113
- .container-fluid {
114
- @include clay-css(
115
- setter(
116
- map-deep-get($map, alert-dismissible, container-fluid),
117
- ()
118
- )
119
- );
163
+ &:last-child {
164
+ @include clay-css(map-get($map, last-child));
120
165
  }
121
- }
122
166
 
123
- .alert-indicator {
124
- @include clay-css($alert-indicator);
167
+ hr {
168
+ @include clay-css($hr);
169
+ }
125
170
 
126
- .lexicon-icon {
127
- @include clay-css(
128
- setter(map-get($alert-indicator, lexicon-icon), ())
129
- );
171
+ &.alert-dismissible {
172
+ @include clay-css(setter(map-get($map, alert-dismissible), ()));
173
+
174
+ .container,
175
+ .container-fluid {
176
+ @include clay-css(
177
+ setter(
178
+ map-deep-get(
179
+ $map,
180
+ alert-dismissible,
181
+ container-fluid
182
+ ),
183
+ ()
184
+ )
185
+ );
186
+ }
130
187
  }
131
188
 
132
- + .lead {
133
- @include clay-css($alert-indicator-lead);
189
+ .alert-indicator {
190
+ @include clay-css($alert-indicator);
191
+
192
+ .lexicon-icon {
193
+ @include clay-css(
194
+ setter(map-get($alert-indicator, lexicon-icon), ())
195
+ );
196
+ }
197
+
198
+ + .lead {
199
+ @include clay-css($alert-indicator-lead);
200
+ }
134
201
  }
135
- }
136
202
 
137
- .alert-btn {
138
- @include clay-button-variant($alert-btn);
139
- }
203
+ .alert-btn {
204
+ @include clay-button-variant($alert-btn);
205
+ }
140
206
 
141
- .btn-group {
142
- @include clay-container($btn-group);
143
- }
207
+ .btn-group {
208
+ @include clay-container($btn-group);
209
+ }
144
210
 
145
- .btn-group-item {
146
- @include clay-container($btn-group-item);
147
- }
211
+ .btn-group-item {
212
+ @include clay-container($btn-group-item);
213
+ }
148
214
 
149
- .close {
150
- @include clay-close($close);
151
- }
215
+ .close {
216
+ @include clay-close($close);
217
+ }
152
218
 
153
- .container,
154
- .container-fluid {
155
- @include clay-css(setter(map-get($map, container-fluid), ()));
156
- }
219
+ .container,
220
+ .container-fluid {
221
+ @include clay-css(setter(map-get($map, container-fluid), ()));
222
+ }
157
223
 
158
- .lead {
159
- @include clay-css($lead);
160
- }
224
+ .lead {
225
+ @include clay-css($lead);
226
+ }
161
227
 
162
- .alert-link {
163
- @include clay-link($alert-link);
164
- }
228
+ .alert-link {
229
+ @include clay-link($alert-link);
230
+ }
165
231
 
166
- .component-title {
167
- @include clay-text-typography($component-title);
168
- }
232
+ .component-title {
233
+ @include clay-text-typography($component-title);
234
+ }
169
235
 
170
- .component-subtitle {
171
- @include clay-text-typography($component-subtitle);
236
+ .component-subtitle {
237
+ @include clay-text-typography($component-subtitle);
238
+ }
172
239
  }
173
240
  }
174
241
  }
@@ -844,6 +844,10 @@
844
844
 
845
845
  .inline-item {
846
846
  @include clay-css($inline-item);
847
+
848
+ .lexicon-icon {
849
+ @include clay-css(map-get($inline-item, lexicon-icon));
850
+ }
847
851
  }
848
852
 
849
853
  .inline-item-before {
@@ -5,33 +5,30 @@
5
5
  /// A mixin that styles a Card Section (e.g., `.card-header`, `.card-body`, `.card-footer` or `.card-row`). This mixin is used by `clay-card-variant`.
6
6
  /// @param {Map} $map - A map of key-value pairs. The keys are defined in the mixin. Example below:
7
7
  /// @example
8
- /// enabled: {Bool}, // Set to false to prevent mixin styles from being output. Default: true
9
- /// bg: {Color | String | Null},
10
- /// border-color: {Color | String | List | Null},
11
- /// border-radius: {Number | String | List | Null},
12
- /// border-style: {String | List | Null},
13
- /// border-width: {Number | String | List | Null},
14
- /// display: {String | Null},
15
- /// flex-basis: {Number | String | Null},
16
- /// flex-direction: {String | Null},
17
- /// flex-grow: {Number | String | Null},
18
- /// flex-shrink: {Number | String | Null},
19
- /// flex-wrap: {String | Null},
20
- /// margin-bottom: {Number | String | Null},
21
- /// margin-left: {Number | String | Null},
22
- /// margin-right: {Number | String | Null},
23
- /// margin-top: {Number | String | Null},
24
- /// padding-bottom: {Number | String | Null},
25
- /// padding-left: {Number | String | Null},
26
- /// padding-right: {Number | String | Null},
27
- /// padding-top: {Number | String | Null},
28
- /// text-align: {String | Null},
29
- /// width: {Number | String | Null},
8
+ /// (
9
+ /// enabled: {Bool}, // Set to false to prevent mixin styles from being output. Default: true
10
+ /// // .card-section
11
+ /// before: (
12
+ /// // .card-section::before
13
+ /// ),
14
+ /// after: (
15
+ /// // .card-section::after
16
+ /// ),
17
+ /// first-child: (
18
+ /// // .card-section:first-child
19
+ /// ),
20
+ /// last-child: (
21
+ /// // .card-section:last-child
22
+ /// ),
23
+ /// autofit-col: (
24
+ /// // .card-section .autofit-col
25
+ /// ),
26
+ ///
27
+ /// )
28
+ /// -=-=-=-=-=- Deprecated -=-=-=-=-=-
29
+ /// bg: {Color | String | Null}, // deprecated after 3.9.0
30
30
  /// autofit-col-padding-left: {Number | String | Null},
31
31
  /// autofit-col-padding-right: {Number | String | Null},
32
- /// @todo
33
- /// - Add @example
34
- /// - Add @link to documentation
35
32
 
36
33
  @mixin clay-card-section-variant($map) {
37
34
  @if (type-of($map) == 'map') {
@@ -65,6 +62,22 @@
65
62
  @if ($enabled) {
66
63
  @include clay-css($base);
67
64
 
65
+ &::before {
66
+ @include clay-css(map-get($map, before));
67
+ }
68
+
69
+ &::after {
70
+ @include clay-css(map-get($map, after));
71
+ }
72
+
73
+ &:first-child {
74
+ @include clay-css(map-get($map, first-child));
75
+ }
76
+
77
+ &:last-child {
78
+ @include clay-css(map-get($map, last-child));
79
+ }
80
+
68
81
  .autofit-col {
69
82
  @include clay-css($autofit-col);
70
83
  }
@@ -187,6 +200,15 @@
187
200
  /// aspect-ratio-item-bottom-left: (
188
201
  /// // .card .aspect-ratio-item-bottom-left
189
202
  /// ),
203
+ /// hr: (
204
+ /// // .card > hr
205
+ /// before: (
206
+ /// // .card > hr::before
207
+ /// ),
208
+ /// after: (
209
+ /// // .card > hr::after
210
+ /// ),
211
+ /// ),
190
212
  /// sticker: (
191
213
  /// // .card .sticker
192
214
  /// ),
@@ -844,6 +866,18 @@
844
866
  @include clay-css(map-get($map, aspect-ratio-item-bottom-left));
845
867
  }
846
868
 
869
+ > hr {
870
+ @include clay-css(map-get($map, hr));
871
+
872
+ &::before {
873
+ @include clay-css(map-deep-get($map, hr, before));
874
+ }
875
+
876
+ &::after {
877
+ @include clay-css(map-deep-get($map, hr, after));
878
+ }
879
+ }
880
+
847
881
  .sticker {
848
882
  @include clay-sticker-variant(
849
883
  setter(map-get($map, sticker), ())
@@ -20,6 +20,15 @@
20
20
  /// show: (
21
21
  /// // .dropdown-menu.show
22
22
  /// ),
23
+ /// dropdown-item: (
24
+ /// // .dropdown-menu .dropdown-item
25
+ /// ),
26
+ /// alert: (
27
+ /// // .dropdown-menu .alert
28
+ /// ),
29
+ /// alert-fluid: (
30
+ /// // .dropdown-menu .alert-fluid
31
+ /// ),
23
32
  /// )
24
33
  /// -=-=-=-=-=- Deprecated -=-=-=-=-=-
25
34
  /// bg: {Color | String | Null}, // deprecated after 3.9.0
@@ -95,6 +104,14 @@
95
104
  map-deep-get($map, dropdown-item)
96
105
  );
97
106
  }
107
+
108
+ .alert {
109
+ @include clay-alert-variant(map-get($map, alert));
110
+ }
111
+
112
+ .alert-fluid {
113
+ @include clay-alert-variant(map-get($map, alert-fluid));
114
+ }
98
115
  }
99
116
  }
100
117
  }
@@ -176,6 +176,35 @@
176
176
  }
177
177
  }
178
178
 
179
+ /// A mixin that generates media-breakpoint-{up|down} styles from a Sass map.
180
+ /// @param {Map} $map - A map of `key: value` pairs that is passed to the `clay-css` mixin
181
+
182
+ @mixin clay-generate-media-breakpoints($map) {
183
+ @if (map-get($map, media-breakpoint-up)) {
184
+ $media-breakpoint-up: map-get($map, media-breakpoint-up);
185
+
186
+ @each $breakpoint in map-keys($media-breakpoint-up) {
187
+ $breakpoint-up: map-get($map, $breakpoint);
188
+
189
+ @include media-breakpoint-up($breakpoint) {
190
+ @include clay-css($breakpoint-up);
191
+ }
192
+ }
193
+ }
194
+
195
+ @if (map-get($map, media-breakpoint-down)) {
196
+ $media-breakpoint-down: map-get($map, media-breakpoint-down);
197
+
198
+ @each $breakpoint in map-keys($map) {
199
+ $breakpoint-down: map-get($map, $breakpoint);
200
+
201
+ @include media-breakpoint-down($breakpoint) {
202
+ @include clay-css($breakpoint-down);
203
+ }
204
+ }
205
+ }
206
+ }
207
+
179
208
  /// A Bootstrap 4 mixin that generates the correct number of grid classes given any value of `$grid-columns`. This mixin is deprecated. This has been inlined into `components/_grid.scss`.
180
209
  /// @deprecated
181
210
  /// @param {Number} $columns[$grid-columns]
@@ -870,10 +870,30 @@
870
870
  $link: setter(map-get($map, link), ());
871
871
  $link: map-merge($link, $clay-link);
872
872
 
873
+ $href: setter(map-get($map, href), ());
874
+ $href: map-deep-merge($href, $link);
875
+
873
876
  @include clay-css($map);
874
877
 
875
- a {
876
- @include clay-link($link);
878
+ &::before {
879
+ @include clay-css(map-get($map, before));
880
+ }
881
+
882
+ &::after {
883
+ @include clay-css(map-get($map, after));
884
+ }
885
+
886
+ &:first-child {
887
+ @include clay-css(map-get($map, first-child));
888
+ }
889
+
890
+ &:last-child {
891
+ @include clay-css(map-get($map, last-child));
892
+ }
893
+
894
+ &[href],
895
+ [href] {
896
+ @include clay-link($href);
877
897
  }
878
898
  }
879
899
  }