@clayui/css 3.40.1 → 3.44.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 (91) hide show
  1. package/lib/css/atlas.css +1369 -1347
  2. package/lib/css/atlas.css.map +1 -1
  3. package/lib/css/base.css +1196 -1146
  4. package/lib/css/base.css.map +1 -1
  5. package/lib/css/bootstrap.css.map +1 -1
  6. package/lib/css/cadmin.css +1104 -1097
  7. package/lib/css/cadmin.css.map +1 -1
  8. package/lib/images/icons/date-time.svg +12 -0
  9. package/lib/images/icons/filter.svg +1 -1
  10. package/lib/images/icons/icons.svg +1 -1
  11. package/package.json +2 -2
  12. package/src/images/icons/date-time.svg +12 -0
  13. package/src/images/icons/filter.svg +1 -1
  14. package/src/scss/_mixins.scss +2 -0
  15. package/src/scss/atlas/variables/_application-bar.scss +32 -12
  16. package/src/scss/atlas/variables/_buttons.scss +2 -31
  17. package/src/scss/atlas/variables/_forms.scss +33 -1
  18. package/src/scss/atlas/variables/_globals.scss +13 -0
  19. package/src/scss/atlas/variables/_management-bar.scss +53 -21
  20. package/src/scss/atlas/variables/_navigation-bar.scss +104 -18
  21. package/src/scss/atlas/variables/_navs.scss +20 -15
  22. package/src/scss/atlas/variables/_pagination.scss +2 -0
  23. package/src/scss/atlas/variables/_sidebar.scss +1 -1
  24. package/src/scss/cadmin/components/_dropdowns.scss +4 -0
  25. package/src/scss/cadmin/components/_form-validation.scss +10 -237
  26. package/src/scss/cadmin/components/_input-groups.scss +12 -312
  27. package/src/scss/cadmin/components/_navs.scss +35 -113
  28. package/src/scss/cadmin/components/_pagination.scss +20 -236
  29. package/src/scss/cadmin/components/_popovers.scss +31 -252
  30. package/src/scss/cadmin/components/_reboot.scss +1 -8
  31. package/src/scss/cadmin/components/_toggle-switch.scss +20 -358
  32. package/src/scss/cadmin/components/_tooltip.scss +29 -167
  33. package/src/scss/cadmin/components/_utilities-functional-important.scss +4 -3
  34. package/src/scss/cadmin/variables/_alerts.scss +3 -2
  35. package/src/scss/cadmin/variables/_dropdowns.scss +31 -2
  36. package/src/scss/cadmin/variables/_forms.scss +719 -7
  37. package/src/scss/cadmin/variables/_globals.scss +14 -0
  38. package/src/scss/cadmin/variables/_management-bar.scss +70 -30
  39. package/src/scss/cadmin/variables/_navigation-bar.scss +118 -22
  40. package/src/scss/cadmin/variables/_navs.scss +270 -53
  41. package/src/scss/cadmin/variables/_pagination.scss +274 -68
  42. package/src/scss/cadmin/variables/_popovers.scss +410 -0
  43. package/src/scss/cadmin/variables/_sidebar.scss +17 -5
  44. package/src/scss/cadmin/variables/_toggle-switch.scss +404 -1
  45. package/src/scss/cadmin/variables/_tooltip.scss +299 -0
  46. package/src/scss/components/_button-groups.scss +6 -6
  47. package/src/scss/components/_buttons.scss +87 -49
  48. package/src/scss/components/_cards.scss +16 -116
  49. package/src/scss/components/_dropdowns.scss +4 -0
  50. package/src/scss/components/_form-validation.scss +8 -237
  51. package/src/scss/components/_input-groups.scss +12 -308
  52. package/src/scss/components/_multi-step-nav.scss +12 -8
  53. package/src/scss/components/_navs.scss +45 -128
  54. package/src/scss/components/_pagination.scss +18 -234
  55. package/src/scss/components/_popovers.scss +30 -237
  56. package/src/scss/components/_reboot.scss +1 -8
  57. package/src/scss/components/_toggle-switch.scss +36 -351
  58. package/src/scss/components/_tooltip.scss +29 -164
  59. package/src/scss/functions/_global-functions.scss +18 -0
  60. package/src/scss/functions/_lx-icons-generated.scss +3 -1
  61. package/src/scss/mixins/_buttons.scss +674 -472
  62. package/src/scss/mixins/_cards.scss +746 -560
  63. package/src/scss/mixins/_close.scss +0 -1
  64. package/src/scss/mixins/_custom-forms.scss +442 -409
  65. package/src/scss/mixins/_dropdown-menu.scss +483 -406
  66. package/src/scss/mixins/_forms.scss +751 -260
  67. package/src/scss/mixins/_globals.scss +7 -0
  68. package/src/scss/mixins/_input-groups.scss +405 -11
  69. package/src/scss/mixins/_labels.scss +320 -296
  70. package/src/scss/mixins/_links.scss +645 -414
  71. package/src/scss/mixins/_nav.scss +202 -131
  72. package/src/scss/mixins/_navbar.scss +791 -140
  73. package/src/scss/mixins/_pagination.scss +422 -0
  74. package/src/scss/mixins/_popovers.scss +90 -0
  75. package/src/scss/mixins/_toggle-switch.scss +1140 -14
  76. package/src/scss/mixins/_tooltip.scss +70 -0
  77. package/src/scss/variables/_alerts.scss +1 -0
  78. package/src/scss/variables/_application-bar.scss +18 -6
  79. package/src/scss/variables/_buttons.scss +26 -3
  80. package/src/scss/variables/_cards.scss +273 -1
  81. package/src/scss/variables/_dropdowns.scss +31 -2
  82. package/src/scss/variables/_forms.scss +700 -23
  83. package/src/scss/variables/_globals.scss +13 -0
  84. package/src/scss/variables/_management-bar.scss +45 -12
  85. package/src/scss/variables/_navigation-bar.scss +95 -14
  86. package/src/scss/variables/_navs.scss +266 -33
  87. package/src/scss/variables/_pagination.scss +261 -61
  88. package/src/scss/variables/_popovers.scss +392 -0
  89. package/src/scss/variables/_sidebar.scss +17 -5
  90. package/src/scss/variables/_toggle-switch.scss +404 -5
  91. package/src/scss/variables/_tooltip.scss +299 -0
@@ -917,194 +917,845 @@
917
917
  }
918
918
  }
919
919
 
920
- // `clay-navbar-variant` is deprecated as of v2.11.1
921
- // Creates a Navbar color variant
922
- // @param $map - Sass map that contain Navbar Variant properties to modify
920
+ @mixin clay-navbar-expand-variant($map) {
921
+ @if (type-of($map) == 'map') {
922
+ $enabled: setter(map-get($map, enabled), true);
923
923
 
924
- @mixin clay-navbar-variant($map) {
925
- $enabled: setter(map-get($map, enabled), true);
926
- $breakpoints: if(
927
- variable-exists(grid-breakpoints),
928
- $grid-breakpoints,
929
- $cadmin-grid-breakpoints
930
- );
924
+ @if ($enabled) {
925
+ @include clay-css($map);
931
926
 
932
- $bg: map-get($map, bg);
933
- $border-color: setter(map-get($map, border-color), transparent);
934
- $border-style: setter(map-get($map, border-style), solid);
935
- $color: map-get($map, color);
936
- $link-border-radius: map-get($map, link-border-radius);
937
- $link-bg: map-get($map, link-bg);
938
- $link-color: map-get($map, link-color);
939
- $link-font-weight: map-get($map, link-font-weight);
940
- $link-outline: map-get($map, link-outline);
941
- $link-transition: map-get($map, link-transition);
942
- $link-hover-bg: map-get($map, link-hover-bg);
943
- $link-hover-color: map-get($map, link-hover-color);
944
- $link-focus-bg: map-get($map, link-focus-bg);
945
- $link-focus-box-shadow: map-get($map, link-focus-box-shadow);
946
- $link-focus-color: map-get($map, link-focus-color);
947
- $link-active-bg: map-get($map, link-active-bg);
948
- $link-active-color: map-get($map, link-active-color);
949
- $link-disabled-bg: map-get($map, link-disabled-bg);
950
- $link-disabled-box-shadow: map-get($map, link-disabled-box-shadow);
951
- $link-disabled-color: map-get($map, link-disabled-color);
952
- $link-disabled-opacity: map-get($map, link-disabled-opacity);
953
- $link-disabled-pointer-events: map-get($map, link-disabled-pointer-events);
954
- $btn-font-weight: setter(map-get($map, btn-font-weight), $link-font-weight);
955
- $brand-color: map-get($map, brand-color);
956
- $brand-hover-color: map-get($map, brand-hover-color);
957
- $brand-bg: map-get($map, brand-bg);
958
- $brand-hover-bg: map-get($map, brand-hover-bg);
959
- $toggler-color: setter(map-get($map, toggler-color), $link-color);
960
- $toggler-font-weight: setter(
961
- map-get($map, toggler-font-weight),
962
- $link-font-weight
963
- );
964
- $underline-active-bg: map-get($map, underline-active-bg);
927
+ &.navbar-underline {
928
+ @include clay-css(map-deep-get($map, navbar-underline));
965
929
 
966
- @if ($enabled) {
967
- background-color: $bg;
968
- border-color: $border-color;
969
- border-style: $border-style;
970
- color: $color;
930
+ .navbar-nav {
931
+ @include clay-css(
932
+ map-deep-get($map, navbar-underline, navbar-nav)
933
+ );
971
934
 
972
- .nav-link,
973
- .navbar-nav .btn-unstyled {
974
- background-color: $link-bg;
935
+ .nav-link,
936
+ .btn-unstyled {
937
+ @include clay-link(
938
+ map-deep-get(
939
+ $map,
940
+ navbar-underline,
941
+ navbar-nav,
942
+ nav-link
943
+ )
944
+ );
945
+ }
975
946
 
976
- @include border-radius($link-border-radius);
947
+ .nav-link-monospaced {
948
+ @include clay-link(
949
+ map-deep-get(
950
+ $map,
951
+ navbar-underline,
952
+ navbar-nav,
953
+ nav-link-monospaced
954
+ )
955
+ );
956
+ }
977
957
 
978
- color: $link-color;
979
- font-weight: $link-font-weight;
980
- outline: $link-outline;
981
- transition: $link-transition;
958
+ .nav-btn {
959
+ @include clay-button-variant(
960
+ map-deep-get(
961
+ $map,
962
+ navbar-underline,
963
+ navbar-nav,
964
+ nav-btn
965
+ )
966
+ );
967
+ }
982
968
 
983
- &:hover {
984
- background-color: $link-hover-bg;
985
- color: $link-hover-color;
969
+ .nav-btn-monospaced {
970
+ @include clay-button-variant(
971
+ map-deep-get(
972
+ $map,
973
+ navbar-underline,
974
+ navbar-nav,
975
+ nav-btn-monospaced
976
+ )
977
+ );
978
+ }
979
+ }
986
980
  }
987
981
 
988
- &:focus {
989
- background-color: $link-focus-bg;
990
- box-shadow: $link-focus-box-shadow;
991
- color: $link-focus-color;
982
+ &.navbar-collapse-absolute .navbar-collapse {
983
+ @include clay-css(
984
+ map-deep-get(
985
+ $map,
986
+ navbar-collapse-absolute,
987
+ navbar-collapse
988
+ )
989
+ );
992
990
  }
993
991
 
994
- &.active,
995
- &[aria-expanded='true'] {
996
- background-color: $link-active-bg;
997
- color: $link-active-color;
992
+ .navbar-collapse {
993
+ @include clay-css(map-deep-get($map, navbar-collapse));
994
+
995
+ .navbar-nav {
996
+ @include clay-css(
997
+ map-deep-get($map, navbar-collapse, navbar-nav)
998
+ );
999
+
1000
+ .dropdown-header {
1001
+ @include clay-css(
1002
+ map-deep-get(
1003
+ $map,
1004
+ navbar-collapse,
1005
+ navbar-nav,
1006
+ dropdown-header
1007
+ )
1008
+ );
1009
+ }
1010
+
1011
+ .dropdown-divider {
1012
+ @include clay-css(
1013
+ map-deep-get(
1014
+ $map,
1015
+ navbar-collapse,
1016
+ navbar-nav,
1017
+ dropdown-divider
1018
+ )
1019
+ );
1020
+ }
1021
+
1022
+ .dropdown-item {
1023
+ @include clay-link(
1024
+ map-deep-get(
1025
+ $map,
1026
+ navbar-collapse,
1027
+ navbar-nav,
1028
+ dropdown-item
1029
+ )
1030
+ );
1031
+ }
1032
+ }
998
1033
  }
999
1034
 
1000
- &.disabled,
1001
- &:disabled {
1002
- background-color: $link-disabled-bg;
1003
- box-shadow: $link-disabled-box-shadow;
1004
- color: $link-disabled-color;
1005
- opacity: $link-disabled-opacity;
1006
- pointer-events: $link-disabled-pointer-events;
1035
+ .container {
1036
+ @include clay-css(map-deep-get($map, container));
1007
1037
  }
1008
- }
1009
1038
 
1010
- .nav-btn {
1011
- font-weight: $btn-font-weight;
1012
- }
1039
+ .container-fluid {
1040
+ @include clay-css(map-deep-get($map, container-fluid));
1041
+ }
1013
1042
 
1014
- .navbar-brand {
1015
- background-color: $brand-bg;
1043
+ .navbar-nav {
1044
+ .nav-link,
1045
+ .btn-unstyled {
1046
+ @include clay-link(
1047
+ map-deep-get($map, navbar-nav, nav-link)
1048
+ );
1049
+ }
1050
+
1051
+ .nav-link-monospaced {
1052
+ @include clay-link(
1053
+ map-deep-get($map, navbar-nav, nav-link-monospaced)
1054
+ );
1055
+ }
1056
+
1057
+ .nav-btn {
1058
+ @include clay-button-variant(
1059
+ map-deep-get($map, navbar-nav, nav-btn)
1060
+ );
1061
+ }
1062
+
1063
+ .nav-btn-monospaced {
1064
+ @include clay-button-variant(
1065
+ map-deep-get($map, navbar-nav, nav-btn-monospaced)
1066
+ );
1067
+ }
1068
+
1069
+ .nav-item {
1070
+ > .custom-control {
1071
+ @include clay-custom-control-variant(
1072
+ map-deep-get(
1073
+ $map,
1074
+ navbar-nav,
1075
+ nav-item,
1076
+ custom-control
1077
+ )
1078
+ );
1079
+ }
1080
+ }
1081
+ }
1082
+
1083
+ .navbar-form {
1084
+ @include clay-css(map-deep-get($map, navbar-form));
1016
1085
 
1017
- @include border-radius($link-border-radius);
1086
+ > .container {
1087
+ @include clay-css(
1088
+ map-deep-get($map, navbar-form, container)
1089
+ );
1090
+ }
1018
1091
 
1019
- color: $brand-color;
1020
- outline: $link-outline;
1021
- transition: $link-transition;
1092
+ > .container-fluid {
1093
+ @include clay-css(
1094
+ map-deep-get($map, navbar-form, container-fluid)
1095
+ );
1096
+ }
1022
1097
 
1023
- &:hover {
1024
- background-color: $brand-bg;
1025
- color: $brand-hover-color;
1098
+ .form-control {
1099
+ @include clay-form-control-variant(
1100
+ map-deep-get($map, navbar-form, form-control)
1101
+ );
1102
+ }
1026
1103
  }
1027
1104
 
1028
- &:focus {
1029
- box-shadow: $link-focus-box-shadow;
1030
- color: $link-focus-color;
1105
+ .navbar-brand {
1106
+ @include clay-link(map-deep-get($map, navbar-brand));
1031
1107
  }
1032
- }
1033
1108
 
1034
- .navbar-toggler {
1035
- color: $toggler-color;
1036
- font-weight: $toggler-font-weight;
1037
- outline: $link-outline;
1038
- transition: $link-transition;
1039
-
1040
- &:focus {
1041
- box-shadow: $link-focus-box-shadow;
1042
- color: $link-focus-color;
1109
+ .navbar-title {
1110
+ @include clay-link(map-get($map, navbar-title));
1043
1111
  }
1044
- }
1045
1112
 
1046
- .navbar-toggler-link {
1047
- &[aria-expanded='true'] {
1048
- color: $link-active-color;
1113
+ .navbar-text {
1114
+ @include clay-link(map-get($map, navbar-text));
1049
1115
  }
1050
- }
1051
1116
 
1052
- .navbar-overlay {
1053
- background-color: $bg;
1117
+ .navbar-toggler {
1118
+ @include clay-button-variant(
1119
+ map-deep-get($map, navbar-toggler)
1120
+ );
1121
+ }
1122
+
1123
+ .navbar-toggler-link {
1124
+ @include clay-link(map-get($map, navbar-toggler-link));
1125
+ }
1126
+
1127
+ .navbar-overlay {
1128
+ @include clay-css(map-deep-get($map, navbar-overlay));
1129
+ }
1130
+
1131
+ .dropdown-menu {
1132
+ @include clay-dropdown-menu-variant(
1133
+ map-get($map, dropdown-menu)
1134
+ );
1135
+ }
1054
1136
  }
1137
+ }
1138
+ }
1055
1139
 
1056
- &.navbar-expand {
1057
- @each $breakpoint in map-keys($breakpoints) {
1058
- $next: breakpoint-next($breakpoint, $breakpoints);
1059
- $infix: breakpoint-infix($next, $breakpoints);
1140
+ /// A mixin to create `.navbar` variants.
1141
+ /// @param {Map} $map - A map of `key: value` pairs. The keys and value types are listed below:
1142
+ /// @example
1060
1143
 
1061
- &#{$infix} {
1062
- // .navbar-expand, sm, md, lg, xl
1063
- @if not($infix == '') {
1064
- // .navbar-expand-sm, md, lg, xl
1065
- @include media-breakpoint-down($breakpoint) {
1066
- &.navbar-collapse-absolute .navbar-collapse {
1067
- background-color: $bg;
1068
- border-color: $border-color;
1069
- }
1144
+ @mixin clay-navbar-variant($map) {
1145
+ @if (type-of($map) == 'map') {
1146
+ $enabled: setter(map-get($map, enabled), true);
1147
+ $breakpoints: if(
1148
+ variable-exists(grid-breakpoints),
1149
+ $grid-breakpoints,
1150
+ $cadmin-grid-breakpoints
1151
+ );
1070
1152
 
1071
- .navbar-collapse .navbar-nav {
1072
- .dropdown-header,
1073
- .dropdown-item {
1074
- color: $link-color;
1075
- font-weight: $link-font-weight;
1076
- }
1153
+ $base: map-merge(
1154
+ $map,
1155
+ (
1156
+ background-color:
1157
+ setter(map-get($map, bg), map-get($map, background-color)),
1158
+ )
1159
+ );
1160
+
1161
+ $nav-link: map-deep-merge(
1162
+ map-deep-get($map, navbar-nav, nav-link),
1163
+ (
1164
+ background-color:
1165
+ setter(
1166
+ map-deep-get($map, link-bg),
1167
+ map-deep-get(
1168
+ $map,
1169
+ navbar-nav,
1170
+ nav-link,
1171
+ background-color
1172
+ )
1173
+ ),
1174
+ border-radius:
1175
+ setter(
1176
+ map-deep-get($map, link-border-radius),
1177
+ map-deep-get($map, navbar-nav, nav-link, border-radius)
1178
+ ),
1179
+ color:
1180
+ setter(
1181
+ map-deep-get($map, link-color),
1182
+ map-deep-get($map, navbar-nav, nav-link, color)
1183
+ ),
1184
+ font-weight:
1185
+ setter(
1186
+ map-deep-get($map, link-font-weight),
1187
+ map-deep-get($map, navbar-nav, nav-link, font-weight)
1188
+ ),
1189
+ outline:
1190
+ setter(
1191
+ map-deep-get($map, link-outline),
1192
+ map-deep-get($map, navbar-nav, nav-link, outline)
1193
+ ),
1194
+ transition:
1195
+ setter(
1196
+ map-deep-get($map, link-transition),
1197
+ map-deep-get($map, navbar-nav, nav-link, transition)
1198
+ ),
1199
+ hover: (
1200
+ background-color:
1201
+ setter(
1202
+ map-deep-get($map, link-hover-bg),
1203
+ map-deep-get(
1204
+ $map,
1205
+ navbar-nav,
1206
+ nav-link,
1207
+ hover,
1208
+ background-color
1209
+ )
1210
+ ),
1211
+ color:
1212
+ setter(
1213
+ map-deep-get($map, link-hover-color),
1214
+ map-deep-get(
1215
+ $map,
1216
+ navbar-nav,
1217
+ nav-link,
1218
+ hover,
1219
+ color
1220
+ )
1221
+ ),
1222
+ ),
1223
+ focus: (
1224
+ background-color:
1225
+ setter(
1226
+ map-deep-get($map, link-focus-bg),
1227
+ map-deep-get(
1228
+ $map,
1229
+ navbar-nav,
1230
+ nav-link,
1231
+ focus,
1232
+ background-color
1233
+ )
1234
+ ),
1235
+ box-shadow:
1236
+ setter(
1237
+ map-deep-get($map, link-focus-box-shadow),
1238
+ map-deep-get(
1239
+ $map,
1240
+ navbar-nav,
1241
+ nav-link,
1242
+ focus,
1243
+ box-shadow
1244
+ )
1245
+ ),
1246
+ color:
1247
+ setter(
1248
+ map-deep-get($map, link-focus-color),
1249
+ map-deep-get(
1250
+ $map,
1251
+ navbar-nav,
1252
+ nav-link,
1253
+ focus-color
1254
+ )
1255
+ ),
1256
+ ),
1257
+ active: (
1258
+ background-color:
1259
+ setter(
1260
+ map-deep-get($map, link-active-bg),
1261
+ map-deep-get(
1262
+ $map,
1263
+ navbar-nav,
1264
+ nav-link,
1265
+ active,
1266
+ background-color
1267
+ )
1268
+ ),
1269
+ color:
1270
+ setter(
1271
+ map-deep-get($map, link-active-color),
1272
+ map-deep-get(
1273
+ $map,
1274
+ navbar-nav,
1275
+ nav-link,
1276
+ active,
1277
+ color
1278
+ )
1279
+ ),
1280
+ ),
1281
+ disabled: (
1282
+ background-color:
1283
+ setter(
1284
+ map-deep-get($map, link-disabled-bg),
1285
+ map-deep-get(
1286
+ $map,
1287
+ navbar-nav,
1288
+ nav-link,
1289
+ disabled,
1290
+ background-color
1291
+ )
1292
+ ),
1293
+ box-shadow:
1294
+ setter(
1295
+ map-deep-get($map, link-disabled-box-shadow),
1296
+ map-deep-get(
1297
+ $map,
1298
+ navbar-nav,
1299
+ nav-link,
1300
+ disabled,
1301
+ box-shadow
1302
+ )
1303
+ ),
1304
+ color:
1305
+ setter(
1306
+ map-deep-get($map, link-disabled-color),
1307
+ map-deep-get(
1308
+ $map,
1309
+ navbar-nav,
1310
+ nav-link,
1311
+ disabled,
1312
+ color
1313
+ )
1314
+ ),
1315
+ opacity:
1316
+ setter(
1317
+ map-deep-get($map, link-disabled-opacity),
1318
+ map-deep-get(
1319
+ $map,
1320
+ navbar-nav,
1321
+ nav-link,
1322
+ disabled,
1323
+ opacity
1324
+ )
1325
+ ),
1326
+ pointer-events: (
1327
+ map-deep-get($map, link-disabled-pointer-events),
1328
+ map-deep-get(
1329
+ $map,
1330
+ navbar-nav,
1331
+ nav-link,
1332
+ disabled,
1333
+ pointer-events
1334
+ ),
1335
+ ),
1336
+ ),
1337
+ )
1338
+ );
1339
+
1340
+ $nav-btn: map-deep-merge(
1341
+ map-deep-get($map, navbar-nav, nav-btn),
1342
+ (
1343
+ font-weight:
1344
+ setter(
1345
+ map-deep-get($map, btn-font-weight),
1346
+ map-deep-get($map, navbar-nav, nav-btn, font-weight),
1347
+ map-deep-get($nav-link, font-weight)
1348
+ ),
1349
+ )
1350
+ );
1077
1351
 
1078
- .dropdown-divider {
1079
- border-color: $link-color;
1352
+ $navbar-brand: map-deep-merge($nav-link, map-get($map, navbar-brand));
1353
+ $navbar-brand: map-deep-merge(
1354
+ $navbar-brand,
1355
+ (
1356
+ background-color:
1357
+ setter(
1358
+ map-deep-get($map, brand-bg),
1359
+ map-deep-get($map, navbar-brand, background-color)
1360
+ ),
1361
+ color:
1362
+ setter(
1363
+ map-deep-get($map, brand-color),
1364
+ map-deep-get($map, navbar-brand, color)
1365
+ ),
1366
+ hover: (
1367
+ background-color:
1368
+ setter(
1369
+ map-deep-get($map, brand-hover-bg),
1370
+ map-deep-get(
1371
+ $map,
1372
+ navbar-brand,
1373
+ hover,
1374
+ background-color
1375
+ )
1376
+ ),
1377
+ color:
1378
+ setter(
1379
+ map-deep-get($map, brand-hover-color),
1380
+ map-deep-get($map, navbar-brand, hover, color)
1381
+ ),
1382
+ ),
1383
+ )
1384
+ );
1385
+
1386
+ $navbar-toggler: map-deep-merge(
1387
+ map-get($map, navbar-toggler),
1388
+ (
1389
+ color:
1390
+ setter(
1391
+ map-deep-get($map, toggler-color),
1392
+ map-deep-get($map, navbar-toggler, color),
1393
+ map-get($nav-link, color)
1394
+ ),
1395
+ font-weight:
1396
+ setter(
1397
+ map-deep-get($map, toggler-font-weight),
1398
+ map-deep-get($map, navbar-toggler, font-weight),
1399
+ map-get($nav-link, font-weight)
1400
+ ),
1401
+ )
1402
+ );
1403
+
1404
+ $navbar-overlay: map-deep-merge(
1405
+ map-get($map, navbar-overlay),
1406
+ (
1407
+ background-color:
1408
+ setter(
1409
+ map-deep-get($map, navbar-overlay, background-color),
1410
+ map-deep-get($map, background-color)
1411
+ ),
1412
+ )
1413
+ );
1414
+
1415
+ $underline-active-bg: map-get($map, underline-active-bg);
1416
+
1417
+ @if ($enabled) {
1418
+ @include clay-css($base);
1419
+
1420
+ .container {
1421
+ @include clay-css(map-get($map, container));
1422
+ }
1423
+
1424
+ .container-fluid {
1425
+ @include clay-css(map-get($map, container-fluid));
1426
+ }
1427
+
1428
+ .navbar-nav {
1429
+ .nav-link,
1430
+ .btn-unstyled {
1431
+ @include clay-link($nav-link);
1432
+ }
1433
+
1434
+ .nav-link-monospaced {
1435
+ @include clay-link(
1436
+ map-deep-get($map, navbar-nav, nav-link-monospaced)
1437
+ );
1438
+ }
1439
+
1440
+ .nav-btn {
1441
+ @include clay-button-variant($nav-btn);
1442
+ }
1443
+
1444
+ .nav-btn-monospaced {
1445
+ @include clay-button-variant(
1446
+ map-deep-get($map, navbar-nav, nav-btn-monospaced)
1447
+ );
1448
+ }
1449
+
1450
+ .nav-item {
1451
+ > .custom-control {
1452
+ @include clay-custom-control-variant(
1453
+ map-deep-get(
1454
+ $map,
1455
+ navbar-nav,
1456
+ nav-item,
1457
+ custom-control
1458
+ )
1459
+ );
1460
+ }
1461
+ }
1462
+
1463
+ .nav-divider {
1464
+ @include clay-css(map-deep-get($map, nav-divider));
1465
+
1466
+ &::before {
1467
+ @include clay-css(
1468
+ map-deep-get($map, nav-divider, before)
1469
+ );
1470
+ }
1471
+
1472
+ &::after {
1473
+ @include clay-css(
1474
+ map-deep-get($map, nav-divider, after)
1475
+ );
1476
+ }
1477
+ }
1478
+
1479
+ .nav-divider-end {
1480
+ @include clay-css(map-deep-get($map, nav-divider-end));
1481
+
1482
+ &::before {
1483
+ @include clay-css(
1484
+ map-deep-get($map, nav-divider-end, before)
1485
+ );
1486
+ }
1487
+
1488
+ &::after {
1489
+ @include clay-css(
1490
+ map-deep-get($map, nav-divider-end, after)
1491
+ );
1492
+ }
1493
+ }
1494
+ }
1495
+
1496
+ .navbar-form {
1497
+ @include clay-css(map-deep-get($map, navbar-form));
1498
+
1499
+ > .container {
1500
+ @include clay-css(
1501
+ map-deep-get($map, navbar-form, container)
1502
+ );
1503
+ }
1504
+
1505
+ > .container-fluid {
1506
+ @include clay-css(
1507
+ map-deep-get($map, navbar-form, container-fluid)
1508
+ );
1509
+ }
1510
+
1511
+ .form-control {
1512
+ @include clay-form-control-variant(
1513
+ map-deep-get($map, navbar-form, form-control)
1514
+ );
1515
+ }
1516
+ }
1517
+
1518
+ .navbar-brand {
1519
+ @include clay-link($navbar-brand);
1520
+ }
1521
+
1522
+ .navbar-title {
1523
+ @include clay-link(map-get($map, navbar-title));
1524
+ }
1525
+
1526
+ .navbar-text {
1527
+ @include clay-link(map-get($map, navbar-text));
1528
+ }
1529
+
1530
+ .navbar-toggler {
1531
+ @include clay-button-variant($navbar-toggler);
1532
+ }
1533
+
1534
+ .navbar-toggler-link {
1535
+ @include clay-link(map-get($map, navbar-toggler-link));
1536
+ }
1537
+
1538
+ .navbar-overlay {
1539
+ @include clay-css($navbar-overlay);
1540
+ }
1541
+
1542
+ .dropdown-menu {
1543
+ @include clay-dropdown-menu-variant(
1544
+ map-get($map, dropdown-menu)
1545
+ );
1546
+ }
1547
+
1548
+ &.navbar-underline {
1549
+ .navbar-toggler-link {
1550
+ @include clay-link(
1551
+ map-deep-get(
1552
+ $map,
1553
+ navbar-underline,
1554
+ navbar-toggler-link
1555
+ )
1556
+ );
1557
+ }
1558
+ }
1559
+
1560
+ // only output specific media-breakpoint-down styles
1561
+
1562
+ @if (map-get($map, media-breakpoint-down)) {
1563
+ @each $breakpoint
1564
+ in map-keys(map-get($map, media-breakpoint-down))
1565
+ {
1566
+ $media-breakpoint-down: map-deep-get(
1567
+ $map,
1568
+ media-breakpoint-down,
1569
+ $breakpoint
1570
+ );
1571
+
1572
+ @if ($breakpoint) {
1573
+ @include media-breakpoint-down($breakpoint) {
1574
+ $breakpoint-position: index(
1575
+ $breakpoints,
1576
+ $breakpoint map-get($breakpoints, $breakpoint)
1577
+ );
1578
+
1579
+ $is-first-breakpoint: $breakpoint-position == 1;
1580
+
1581
+ $is-last-breakpoint: $breakpoint-position ==
1582
+ length($breakpoints);
1583
+
1584
+ @if not($is-last-breakpoint) {
1585
+ $infix: '-' + breakpoint-next($breakpoint);
1586
+
1587
+ &.navbar-expand#{$infix} {
1588
+ @include clay-navbar-expand-variant(
1589
+ map-deep-get(
1590
+ $media-breakpoint-down,
1591
+ 'navbar-expand#{$infix}'
1592
+ )
1593
+ );
1080
1594
  }
1081
1595
 
1082
- .dropdown-item {
1083
- &:hover {
1084
- color: $link-hover-color;
1596
+ .navbar-overlay-#{$breakpoint}-down {
1597
+ @include clay-css(
1598
+ map-deep-get(
1599
+ $media-breakpoint-down,
1600
+ 'navbar-overlay-#{$breakpoint}-down'
1601
+ )
1602
+ );
1603
+
1604
+ &.show {
1605
+ @include clay-css(
1606
+ map-deep-get(
1607
+ $media-breakpoint-down,
1608
+ 'navbar-overlay-#{$breakpoint}-down',
1609
+ show
1610
+ )
1611
+ );
1085
1612
  }
1613
+ }
1614
+ }
1615
+ }
1616
+ }
1617
+ }
1618
+ }
1619
+
1620
+ // only output specific media-breakpoint-up styles
1621
+
1622
+ @if (map-get($map, media-breakpoint-up)) {
1623
+ @each $breakpoint
1624
+ in map-keys(map-get($map, media-breakpoint-up))
1625
+ {
1626
+ $media-breakpoint-up: map-deep-get(
1627
+ $map,
1628
+ media-breakpoint-up,
1629
+ $breakpoint
1630
+ );
1086
1631
 
1087
- &.active {
1088
- color: $link-active-color;
1632
+ @if ($breakpoint) {
1633
+ @include media-breakpoint-up($breakpoint) {
1634
+ $is-first-breakpoint: index(
1635
+ $breakpoints,
1636
+ $breakpoint
1637
+ map-get($breakpoints, $breakpoint)
1638
+ )
1639
+ == 1;
1640
+
1641
+ @if not($is-first-breakpoint) {
1642
+ $infix: '-' + $breakpoint;
1643
+
1644
+ &.navbar-expand#{$infix} {
1645
+ @include clay-navbar-expand-variant(
1646
+ map-deep-get(
1647
+ $media-breakpoint-up,
1648
+ 'navbar-expand#{$infix}'
1649
+ )
1650
+ );
1651
+ }
1652
+ }
1653
+ }
1654
+ }
1655
+ }
1656
+ }
1657
+
1658
+ // if media-breakpoint-down doesn't exist output styles .navbar-expand-{sm|md|lg|xl|??}
1659
+ // deprecated use `media-breakpoint-down` key instead
1660
+
1661
+ @if not(map-get($map, media-breakpoint-down)) {
1662
+ &.navbar-expand {
1663
+ @each $breakpoint in map-keys($breakpoints) {
1664
+ $next: breakpoint-next($breakpoint, $breakpoints);
1665
+ $infix: breakpoint-infix($next, $breakpoints);
1666
+
1667
+ &#{$infix} {
1668
+ // .navbar-expand, sm, md, lg, xl
1669
+ @if not($infix == '') {
1670
+ // .navbar-expand-sm, md, lg, xl
1671
+ @include media-breakpoint-down($breakpoint) {
1672
+ &.navbar-collapse-absolute {
1673
+ .navbar-collapse {
1674
+ background-color: map-get(
1675
+ $base,
1676
+ background-color
1677
+ );
1678
+ border-color: map-get(
1679
+ $base,
1680
+ border-color
1681
+ );
1682
+ }
1089
1683
  }
1090
1684
 
1091
- &.disabled {
1092
- color: $link-disabled-color;
1685
+ .navbar-collapse .navbar-nav {
1686
+ .dropdown-header,
1687
+ .dropdown-item {
1688
+ color: map-get($nav-link, color);
1689
+ font-weight: map-get(
1690
+ $nav-link,
1691
+ font-weight
1692
+ );
1693
+ }
1694
+
1695
+ .dropdown-divider {
1696
+ border-color: map-get(
1697
+ $nav-link,
1698
+ color
1699
+ );
1700
+ }
1701
+
1702
+ .dropdown-item {
1703
+ &:hover {
1704
+ color: map-deep-get(
1705
+ $nav-link,
1706
+ hover,
1707
+ color
1708
+ );
1709
+ }
1710
+
1711
+ &.active {
1712
+ color: map-deep-get(
1713
+ $nav-link,
1714
+ active-class,
1715
+ color
1716
+ );
1717
+ }
1718
+
1719
+ &.disabled {
1720
+ color: map-deep-get(
1721
+ $nav-link,
1722
+ disabled,
1723
+ color
1724
+ );
1725
+ }
1726
+ }
1093
1727
  }
1094
1728
  }
1095
1729
  }
1096
1730
  }
1097
1731
  }
1732
+ }
1733
+ }
1098
1734
 
1099
- @include media-breakpoint-up($next) {
1100
- &.navbar-underline .navbar-nav .nav-link.active:after {
1101
- background-color: $underline-active-bg;
1735
+ // if media-breakpoint-up doesn't exist output styles .navbar-expand through .navbar-expand-{sm|md|lg|xl|??}
1736
+ // deprecated use `media-breakpoint-up` key instead
1737
+
1738
+ @if not(map-get($map, media-breakpoint-up)) {
1739
+ &.navbar-expand {
1740
+ @each $breakpoint in map-keys($breakpoints) {
1741
+ $next: breakpoint-next($breakpoint, $breakpoints);
1742
+ $infix: breakpoint-infix($next, $breakpoints);
1743
+
1744
+ &#{$infix} {
1745
+ // .navbar-expand, sm, md, lg, xl
1746
+ @include media-breakpoint-up($next) {
1747
+ &.navbar-underline .navbar-nav {
1748
+ .nav-link.active:after {
1749
+ background-color: $underline-active-bg;
1750
+ }
1751
+ }
1752
+ }
1102
1753
  }
1103
1754
  }
1104
1755
  }
1105
1756
  }
1106
- }
1107
1757
 
1108
- @content;
1758
+ @content;
1759
+ }
1109
1760
  }
1110
1761
  }