@wwtdev/bsds-css 2.0.9 → 2.1.1
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/dist/components/_accordions.scss +1 -1
- package/dist/components/_badge.scss +43 -16
- package/dist/components/_buttons.scss +31 -24
- package/dist/components/_circle-buttons.scss +5 -3
- package/dist/components/_filter-buttons.scss +101 -0
- package/dist/components/_form-input-composite.scss +13 -7
- package/dist/components/_form-input-search.scss +35 -5
- package/dist/components/_form-text-fields.scss +20 -9
- package/dist/components/accordions.css +1 -1
- package/dist/components/badge.css +43 -16
- package/dist/components/buttons.css +31 -24
- package/dist/components/circle-buttons.css +5 -3
- package/dist/components/filter-buttons.css +97 -0
- package/dist/components/form-input-composite.css +13 -7
- package/dist/components/form-input-search.css +35 -5
- package/dist/components/form-text-fields.css +20 -9
- package/dist/wwt-bsds-wc-base.css +9 -0
- package/dist/wwt-bsds.css +225 -64
- package/dist/wwt-bsds.min.css +1 -1
- package/package.json +1 -1
package/dist/wwt-bsds.css
CHANGED
|
@@ -709,6 +709,14 @@ a:where(.bs-link):where(:focus:not(:focus-visible)) {
|
|
|
709
709
|
.box-shadow:where([data-variant="profile"]) {
|
|
710
710
|
box-shadow: var(--bs-shadow-profilePhoto);
|
|
711
711
|
}
|
|
712
|
+
:root {
|
|
713
|
+
/* get design sign off on these first
|
|
714
|
+
--bs-trans-color: color 100ms ease-in-out;
|
|
715
|
+
--bs-trans-outline-color: outline-color 100ms ease-in-out;
|
|
716
|
+
*/
|
|
717
|
+
|
|
718
|
+
--bs-trans-rotate180: transform 200ms ease-in-out;
|
|
719
|
+
}
|
|
712
720
|
/* Specificity should be either (0, 1, 0) (class-based) or (0, 0, 1) (element-based) for each selector */
|
|
713
721
|
.box {
|
|
714
722
|
background: var(--bg-color, var(--bs-bg-subtle));
|
|
@@ -878,7 +886,7 @@ a:where(.bs-link):where(:focus:not(:focus-visible)) {
|
|
|
878
886
|
.bs-accordion :where(header button) > :where([data-position="end"]) {
|
|
879
887
|
grid-area: end;
|
|
880
888
|
transform: rotate(0);
|
|
881
|
-
transition:
|
|
889
|
+
transition: var(--bs-trans-rotate180);
|
|
882
890
|
}
|
|
883
891
|
.bs-accordion :where(header[data-open]:not([data-open="false"])) :where([data-position="end"]) {
|
|
884
892
|
transform: rotate(180deg);
|
|
@@ -906,8 +914,11 @@ a:where(.bs-link):where(:focus:not(:focus-visible)) {
|
|
|
906
914
|
.bs-badge {
|
|
907
915
|
--badge-bg: var(--bs-red-base);
|
|
908
916
|
--badge-text: var(--bs-white);
|
|
917
|
+
display: inline-block;
|
|
909
918
|
}
|
|
910
|
-
|
|
919
|
+
/* ------ Badge wrapped around text ------ */
|
|
920
|
+
/* Badge DOT */
|
|
921
|
+
.bs-badge:where([data-position^='left'])::before,
|
|
911
922
|
.bs-badge:where(:not([data-position^='left']))::after {
|
|
912
923
|
align-items: center;
|
|
913
924
|
background: var(--badge-bg);
|
|
@@ -927,38 +938,55 @@ a:where(.bs-link):where(:focus:not(:focus-visible)) {
|
|
|
927
938
|
.bs-pill .bs-badge::after {
|
|
928
939
|
font-size: 0.8125em;
|
|
929
940
|
}
|
|
930
|
-
|
|
931
|
-
.bs-badge[data-count]
|
|
941
|
+
/* Badge COUNT */
|
|
942
|
+
.bs-badge:where([data-count][data-position^='left'])::before,
|
|
943
|
+
.bs-badge:where([data-count]:not([data-position^='left']))::after {
|
|
932
944
|
color: var(--badge-text);
|
|
933
945
|
content: attr(data-count);
|
|
934
|
-
|
|
946
|
+
height: 1rem;
|
|
935
947
|
min-width: 1rem;
|
|
936
948
|
padding: 0 4px;
|
|
937
949
|
top: -0.0625rem;
|
|
938
950
|
vertical-align: unset;
|
|
939
951
|
width: auto;
|
|
940
952
|
}
|
|
941
|
-
.bs-badge[data-count]::before
|
|
942
|
-
|
|
943
|
-
}
|
|
944
|
-
.bs-badge[data-count]::after {
|
|
945
|
-
margin-left: 0.25rem;
|
|
946
|
-
}
|
|
947
|
-
.bs-badge[data-count='0']::before,
|
|
948
|
-
.bs-badge[data-count='0']::after {
|
|
953
|
+
.bs-badge:where([data-count='0'])::before,
|
|
954
|
+
.bs-badge:where([data-count='0'])::after {
|
|
949
955
|
display: none;
|
|
950
956
|
}
|
|
951
|
-
.bs-badge[data-show-zero]:where(:not([data-show-zero="false"]))::before,
|
|
952
|
-
.bs-badge[data-show-zero]:where(:not([data-show-zero="false"]))::after {
|
|
957
|
+
.bs-badge:where([data-show-zero]):where(:not([data-show-zero="false"]))::before,
|
|
958
|
+
.bs-badge:where([data-show-zero]):where(:not([data-show-zero="false"]))::after {
|
|
953
959
|
display: inline-flex;
|
|
954
960
|
}
|
|
955
|
-
|
|
961
|
+
/* Badge SPACING against wrapped text */
|
|
962
|
+
.bs-badge::before {
|
|
963
|
+
margin-right: 0.25rem;
|
|
964
|
+
}
|
|
965
|
+
.bs-badge::after {
|
|
966
|
+
margin-left: 0.25rem;
|
|
967
|
+
}
|
|
968
|
+
/* Badge COLORS */
|
|
969
|
+
.bs-badge:where([data-badge-color^='blue']) {
|
|
956
970
|
--badge-bg: var(--bs-blue-base);
|
|
957
971
|
}
|
|
958
|
-
.bs-badge[data-badge-color^='white'] {
|
|
972
|
+
.bs-badge:where([data-badge-color^='white']) {
|
|
959
973
|
--badge-bg: var(--bs-white);
|
|
960
974
|
--badge-text: var(--bs-black);
|
|
961
975
|
}
|
|
976
|
+
/* ------ Standalone Badge (not wrapped around text) ------ */
|
|
977
|
+
.bs-badge:where([data-variant="notext"]) {
|
|
978
|
+
align-items: center;
|
|
979
|
+
display: inline-flex;
|
|
980
|
+
justify-content: center;
|
|
981
|
+
}
|
|
982
|
+
.bs-badge:where([data-variant="notext"]) {
|
|
983
|
+
line-height: 1;
|
|
984
|
+
}
|
|
985
|
+
.bs-badge:where([data-variant="notext"])::after,
|
|
986
|
+
.bs-badge:where([data-variant="notext"])::before {
|
|
987
|
+
margin: 0;
|
|
988
|
+
top: unset;
|
|
989
|
+
}
|
|
962
990
|
.bs-banner {
|
|
963
991
|
background-color: var(--bs-royal-400);
|
|
964
992
|
color: var(--bs-gray-100);
|
|
@@ -1009,7 +1037,7 @@ a:where(.bs-link):where(:focus:not(:focus-visible)) {
|
|
|
1009
1037
|
--btn-main: var(--bs-blue-base);
|
|
1010
1038
|
--btn-secondary: var(--bs-blue-medium);
|
|
1011
1039
|
--btn-highlight: var(--bs-blue-100);
|
|
1012
|
-
--btn-padding: .25rem .75rem
|
|
1040
|
+
--btn-padding: .25rem .75rem;
|
|
1013
1041
|
--btn-focus-pseudo-width: calc(100% + 0.5rem);
|
|
1014
1042
|
align-items: center;
|
|
1015
1043
|
background-color: var(--btn-main);
|
|
@@ -1018,8 +1046,9 @@ a:where(.bs-link):where(:focus:not(:focus-visible)) {
|
|
|
1018
1046
|
color: var(--bs-white);
|
|
1019
1047
|
cursor: pointer;
|
|
1020
1048
|
display: inline-flex;
|
|
1021
|
-
font-size: var(--bs-text-md);
|
|
1049
|
+
font-size: var(--btn-text-size, var(--bs-text-md));
|
|
1022
1050
|
font-weight: 600;
|
|
1051
|
+
height: var(--btn-height, 2.5rem);
|
|
1023
1052
|
justify-content: center;
|
|
1024
1053
|
line-height: 1.5;
|
|
1025
1054
|
outline: 2px solid transparent;
|
|
@@ -1038,7 +1067,7 @@ a:where(.bs-link):where(:focus:not(:focus-visible)) {
|
|
|
1038
1067
|
transform-origin: center;
|
|
1039
1068
|
box-shadow: inset 0px 0px 4px 1px var(--btn-main);
|
|
1040
1069
|
}
|
|
1041
|
-
/*
|
|
1070
|
+
/* ------------ Focus Styles ------------ */
|
|
1042
1071
|
.bs-button::before {
|
|
1043
1072
|
border-color: transparent;
|
|
1044
1073
|
border-radius: 0.5rem;
|
|
@@ -1064,7 +1093,7 @@ a:where(.bs-link):where(:focus:not(:focus-visible)) {
|
|
|
1064
1093
|
border-color: transparent;
|
|
1065
1094
|
box-shadow: none;
|
|
1066
1095
|
}
|
|
1067
|
-
/* Ghost Buttons */
|
|
1096
|
+
/* ------------ Ghost Buttons ------------ */
|
|
1068
1097
|
.bs-button:where([data-ghost]:not([data-ghost="false"])) {
|
|
1069
1098
|
--btn-light: var(--bs-blue-10);
|
|
1070
1099
|
--btn-secondary: var(--bs-blue-10);
|
|
@@ -1084,7 +1113,7 @@ a:where(.bs-link):where(:focus:not(:focus-visible)) {
|
|
|
1084
1113
|
inset 0 0 0 1px var(--btn-main),
|
|
1085
1114
|
inset 0px 0px 4px 1px var(--btn-highlight);
|
|
1086
1115
|
}
|
|
1087
|
-
/* Button type */
|
|
1116
|
+
/* ------------ Button type ------------ */
|
|
1088
1117
|
.bs-button:where([data-variant^='secondary']) {
|
|
1089
1118
|
--btn-main: var(--bs-plum-400);
|
|
1090
1119
|
--btn-secondary: var(--bs-plum-300);
|
|
@@ -1115,14 +1144,15 @@ a:where(.bs-link):where(:focus:not(:focus-visible)) {
|
|
|
1115
1144
|
--btn-light: var(--bs-red-10);
|
|
1116
1145
|
--btn-highlight: var(--bs-red-100);
|
|
1117
1146
|
}
|
|
1118
|
-
/* Text Button */
|
|
1147
|
+
/* ------------ Text Button ------------ */
|
|
1119
1148
|
.bs-button:where([data-text]:not([data-text="false"])) {
|
|
1120
|
-
--btn-
|
|
1121
|
-
--btn-
|
|
1149
|
+
--btn-height: auto;
|
|
1150
|
+
--btn-padding: 0;
|
|
1151
|
+
--btn-focus-pseudo-width: calc(100% + 1rem); /* text btns don't have side padding, but we do want focus outline to look padded */
|
|
1152
|
+
--btn-text-size: var(--bs-text-md);
|
|
1122
1153
|
background-color: transparent;
|
|
1123
1154
|
color: var(--bs-blue-500);
|
|
1124
1155
|
cursor: pointer;
|
|
1125
|
-
font-size: var(--bs-text-md);
|
|
1126
1156
|
font-weight: 400;
|
|
1127
1157
|
line-height: 150%;
|
|
1128
1158
|
}
|
|
@@ -1137,14 +1167,24 @@ a:where(.bs-link):where(:focus:not(:focus-visible)) {
|
|
|
1137
1167
|
.bs-button:where([data-text]:not([data-text="false"])):active {
|
|
1138
1168
|
box-shadow: none;
|
|
1139
1169
|
}
|
|
1140
|
-
/* Button Size */
|
|
1170
|
+
/* ------------ Button Size -------------- */
|
|
1141
1171
|
.bs-button:where([data-size^='sm']) {
|
|
1142
|
-
|
|
1172
|
+
--btn-height: 1.75rem;
|
|
1173
|
+
--btn-padding: .25rem .75rem .375rem;
|
|
1174
|
+
--btn-text-size: var(--bs-text-sm);
|
|
1143
1175
|
}
|
|
1144
|
-
.bs-button:where([data-size
|
|
1145
|
-
|
|
1176
|
+
.bs-button:where([data-size][data-text]:not([data-text="false"])) {
|
|
1177
|
+
--btn-height: auto;
|
|
1178
|
+
--btn-padding: 0;
|
|
1179
|
+
}
|
|
1180
|
+
.bs-button:where([data-size^='sm'][data-text]:not([data-text="false"])) {
|
|
1181
|
+
--btn-text-size: var(--bs-text-base);
|
|
1182
|
+
}
|
|
1183
|
+
/* Size XS only applies to text buttons */
|
|
1184
|
+
.bs-button:where([data-size^='xs'][data-text]:not([data-text="false"])) {
|
|
1185
|
+
--btn-text-size: var(--bs-text-sm);
|
|
1146
1186
|
}
|
|
1147
|
-
/* Disabled Styling */
|
|
1187
|
+
/* ------------ Disabled Styling ------------ */
|
|
1148
1188
|
:where(button:disabled),
|
|
1149
1189
|
.bs-button:where(:disabled),
|
|
1150
1190
|
.bs-button:where([aria-disabled="true"]) /* for links as buttons */ {
|
|
@@ -1163,14 +1203,7 @@ a:where(.bs-link):where(:focus:not(:focus-visible)) {
|
|
|
1163
1203
|
.bs-button:where([data-text]:not([data-text="false"]))[aria-disabled="true"] {
|
|
1164
1204
|
background-color: transparent;
|
|
1165
1205
|
}
|
|
1166
|
-
/*
|
|
1167
|
-
.bs-button :where(svg:not([height])) {
|
|
1168
|
-
height: var(--bs-text-base);
|
|
1169
|
-
}
|
|
1170
|
-
.bs-button:where([data-size^='sm']) :where(svg:not([height])) {
|
|
1171
|
-
height: var(--bs-text-xs);
|
|
1172
|
-
}
|
|
1173
|
-
/* links as buttons */
|
|
1206
|
+
/* ------------ links as buttons ------------ */
|
|
1174
1207
|
a.bs-button {
|
|
1175
1208
|
align-items: center;
|
|
1176
1209
|
display: inline-flex;
|
|
@@ -1216,7 +1249,7 @@ a.bs-circle-button {
|
|
|
1216
1249
|
height: calc(100% + 0.5rem);
|
|
1217
1250
|
inset: -0.25rem;
|
|
1218
1251
|
position: absolute;
|
|
1219
|
-
transition: border-color
|
|
1252
|
+
transition: border-color 125ms ease-in-out, transform 100ms ease-in-out;
|
|
1220
1253
|
width: calc(100% + 0.5rem);
|
|
1221
1254
|
}
|
|
1222
1255
|
.bs-circle-button :where(.bs-circle-button-icon) {
|
|
@@ -1269,10 +1302,12 @@ a.bs-circle-button {
|
|
|
1269
1302
|
transform-origin: center;
|
|
1270
1303
|
box-shadow: inset 0px 0px 4px 1px var(--btn-main);
|
|
1271
1304
|
}
|
|
1272
|
-
.bs-circle-button:where([data-direction="right"]):hover :where(.bs-circle-button-icon)
|
|
1305
|
+
.bs-circle-button:where([data-direction="right"]):hover :where(.bs-circle-button-icon),
|
|
1306
|
+
.bs-circle-button:where([data-direction="right"]):hover::before {
|
|
1273
1307
|
transform: translateX(.25rem);
|
|
1274
1308
|
}
|
|
1275
|
-
.bs-circle-button:where([data-direction="left"]):hover :where(.bs-circle-button-icon)
|
|
1309
|
+
.bs-circle-button:where([data-direction="left"]):hover :where(.bs-circle-button-icon),
|
|
1310
|
+
.bs-circle-button:where([data-direction="left"]):hover::before {
|
|
1276
1311
|
transform: translateX(-.25rem);
|
|
1277
1312
|
}
|
|
1278
1313
|
.bs-circle-button:where([data-ghost]:not([data-ghost="false"])):hover :where(.bs-circle-button-icon) {
|
|
@@ -1557,6 +1592,91 @@ a.bs-circle-button {
|
|
|
1557
1592
|
padding-right: 0.75rem;
|
|
1558
1593
|
}
|
|
1559
1594
|
}
|
|
1595
|
+
/*
|
|
1596
|
+
custom properties:
|
|
1597
|
+
--filterbtn-caret-size
|
|
1598
|
+
--filterbtn-caret-transform
|
|
1599
|
+
--filterbtn-color
|
|
1600
|
+
--filterbtn-focus-color
|
|
1601
|
+
--filterbtn-height
|
|
1602
|
+
--filterbtn-text-size
|
|
1603
|
+
--filterbtn-weight
|
|
1604
|
+
*/
|
|
1605
|
+
button:where(.bs-filter-button) {
|
|
1606
|
+
flex-shrink: 0;
|
|
1607
|
+
}
|
|
1608
|
+
.bs-filter-button {
|
|
1609
|
+
align-items: center;
|
|
1610
|
+
border-radius: 0.25rem;
|
|
1611
|
+
color: var(--filterbtn-color, var(--bs-ink-blue));
|
|
1612
|
+
-moz-column-gap: 0.5rem;
|
|
1613
|
+
column-gap: 0.5rem;
|
|
1614
|
+
cursor: pointer;
|
|
1615
|
+
display: inline-flex;
|
|
1616
|
+
font-size: var(--filterbtn-text-size, var(--bs-text-base));
|
|
1617
|
+
font-weight: var(--filterbtn-weight, 400);
|
|
1618
|
+
height: var(--filterbtn-height, 2rem);
|
|
1619
|
+
line-height: 1.5;
|
|
1620
|
+
outline: solid var(--filterbtn-focus-color, transparent) .125rem;
|
|
1621
|
+
outline-offset: -.125rem;
|
|
1622
|
+
padding-inline: .5rem;
|
|
1623
|
+
transition: outline-color 100ms ease-in-out;
|
|
1624
|
+
width: -moz-max-content;
|
|
1625
|
+
width: max-content;
|
|
1626
|
+
}
|
|
1627
|
+
.bs-filter-button :where(.bs-icon),
|
|
1628
|
+
.bs-filter-button :where(span:has(svg:only-child)) {
|
|
1629
|
+
display: block;
|
|
1630
|
+
height: var(--filterbtn-caret-size, 1rem);
|
|
1631
|
+
line-height: 1;
|
|
1632
|
+
transform: var(--filterbtn-caret-transform, rotate(0deg));
|
|
1633
|
+
transform-origin: center;
|
|
1634
|
+
transition: var(--bs-trans-rotate180);
|
|
1635
|
+
width: var(--filterbtn-caret-size, 1rem);
|
|
1636
|
+
}
|
|
1637
|
+
.bs-filter-button:where([data-size="sm"],[data-size="xs"]) {
|
|
1638
|
+
--filterbtn-height: 1.75rem;
|
|
1639
|
+
--filterbtn-text-size: var(--bs-text-sm);
|
|
1640
|
+
--filterbtn-caret-size: .75rem;
|
|
1641
|
+
}
|
|
1642
|
+
.bs-filter-button:where([data-size="sm"]) {
|
|
1643
|
+
--filterbtn-text-size: var(--bs-text-sm);
|
|
1644
|
+
}
|
|
1645
|
+
.bs-filter-button:where([data-size="xs"]) {
|
|
1646
|
+
--filterbtn-text-size: var(--bs-text-xs);
|
|
1647
|
+
--filterbtn-weight: 600;
|
|
1648
|
+
}
|
|
1649
|
+
/* Hover state */
|
|
1650
|
+
.bs-filter-button:hover {
|
|
1651
|
+
--filterbtn-color: var(--bs-blue-base);
|
|
1652
|
+
}
|
|
1653
|
+
/* Focus state */
|
|
1654
|
+
.bs-filter-button:where(:focus-visible) {
|
|
1655
|
+
--filterbtn-focus-color: var(--bs-blue-base);
|
|
1656
|
+
}
|
|
1657
|
+
/* Filter open state */
|
|
1658
|
+
.bs-filter-button:where([aria-expanded="true"],[data-open="true"]) {
|
|
1659
|
+
--filterbtn-caret-transform: rotate(180deg);
|
|
1660
|
+
}
|
|
1661
|
+
/* Badge non-standard color */
|
|
1662
|
+
.bs-filter-button :where(.bs-badge) {
|
|
1663
|
+
--badge-bg: var(--bs-ink-blue);
|
|
1664
|
+
}
|
|
1665
|
+
:where(.dark) .bs-filter-button :where(.bs-badge) {
|
|
1666
|
+
--badge-bg: var(--bs-blue-medium);
|
|
1667
|
+
}
|
|
1668
|
+
.bs-filter-button:hover :where(.bs-badge) {
|
|
1669
|
+
--badge-bg: var(--filterbtn-color);
|
|
1670
|
+
}
|
|
1671
|
+
/* Disabled state */
|
|
1672
|
+
.bs-filter-button:where(:disabled) {
|
|
1673
|
+
--filterbtn-color: var(--bs-ink-disabled);
|
|
1674
|
+
cursor: default;
|
|
1675
|
+
}
|
|
1676
|
+
.bs-filter-button:where(:disabled) :where(.bs-badge) {
|
|
1677
|
+
--badge-bg: var(--bs-bg-disabled);
|
|
1678
|
+
--badge-text: var(--bs-ink-disabled);
|
|
1679
|
+
}
|
|
1560
1680
|
:where(label, legend),
|
|
1561
1681
|
label:where(.bs-label) {
|
|
1562
1682
|
display: inline-block;
|
|
@@ -1618,28 +1738,37 @@ label:where(.bs-label) {
|
|
|
1618
1738
|
:where(label + select, label > select) {
|
|
1619
1739
|
margin-top: 0.25rem;
|
|
1620
1740
|
}
|
|
1741
|
+
/*
|
|
1742
|
+
Custom properties:
|
|
1743
|
+
--input-bg (background color)
|
|
1744
|
+
--input-border (border color)
|
|
1745
|
+
--input-border-width (border width)
|
|
1746
|
+
--input-caret (caret color)
|
|
1747
|
+
--input-padding-block (padding block)
|
|
1748
|
+
--input-padding-inline (padding inline)
|
|
1749
|
+
--input-placeholder (placeholder color)
|
|
1750
|
+
--input-text-size (font size)
|
|
1751
|
+
*/
|
|
1621
1752
|
input:where(:not([type='checkbox'], [type='radio'], [type='file'], [type='range'])),
|
|
1622
1753
|
textarea,
|
|
1623
1754
|
select,
|
|
1624
1755
|
:is(.bs-input, .bs-select, .bs-textarea) {
|
|
1625
|
-
--input-bg: var(--bs-bg-base);
|
|
1626
|
-
--input-border: var(--bs-violet-medium);
|
|
1627
1756
|
-webkit-appearance: none;
|
|
1628
1757
|
-moz-appearance: none;
|
|
1629
1758
|
appearance: none;
|
|
1630
|
-
background-color: var(--input-bg);
|
|
1631
|
-
border-color: var(--input-border);
|
|
1759
|
+
background-color: var(--input-bg, var(--bs-bg-base));
|
|
1760
|
+
border-color: var(--input-border, var(--bs-violet-medium));
|
|
1632
1761
|
border-radius: 0.25rem;
|
|
1633
1762
|
border-style: solid;
|
|
1634
1763
|
border-width: var(--input-border-width, 1px);
|
|
1635
|
-
caret-color: var(--bs-blue-base);
|
|
1764
|
+
caret-color: var(--input-caret, var(--bs-blue-base));
|
|
1636
1765
|
color: var(--bs-ink-base);
|
|
1637
|
-
font-size: var(--bs-text-base);
|
|
1766
|
+
font-size: var(--input-text-size, var(--bs-text-base));
|
|
1638
1767
|
font-weight: 400;
|
|
1639
1768
|
height: 2.5rem;
|
|
1640
1769
|
line-height: var(--bs-leading-base);
|
|
1641
|
-
|
|
1642
|
-
padding-inline: 0.75rem;
|
|
1770
|
+
padding-block: var(--input-padding-block, 0.0625rem);
|
|
1771
|
+
padding-inline: var(--input-padding-inline, 0.75rem);
|
|
1643
1772
|
}
|
|
1644
1773
|
input:where(:not([type='checkbox'], [type='radio'], [type='file'], [type='range'])),
|
|
1645
1774
|
textarea,
|
|
@@ -1659,11 +1788,11 @@ textarea {
|
|
|
1659
1788
|
resize: vertical;
|
|
1660
1789
|
}
|
|
1661
1790
|
:is(input, textarea, select)::-moz-placeholder, :is(.bs-input, .bs-select, .bs-textarea)::-moz-placeholder {
|
|
1662
|
-
color: var(--bs-violet-lightest);
|
|
1791
|
+
color: var(--input-placeholder, var(--bs-violet-lightest));
|
|
1663
1792
|
}
|
|
1664
1793
|
:is(input, textarea, select)::placeholder,
|
|
1665
1794
|
:is(.bs-input, .bs-select, .bs-textarea)::placeholder {
|
|
1666
|
-
color: var(--bs-violet-lightest);
|
|
1795
|
+
color: var(--input-placeholder, var(--bs-violet-lightest));
|
|
1667
1796
|
}
|
|
1668
1797
|
:is(input, textarea, select):where(:focus-visible)::-moz-placeholder, :is(.bs-input, .bs-select, .bs-textarea):where(:focus-visible)::-moz-placeholder {
|
|
1669
1798
|
opacity: 0;
|
|
@@ -1675,6 +1804,7 @@ textarea {
|
|
|
1675
1804
|
:is(input:where(:not([type='checkbox'], [type='radio'])), textarea, select):where(:focus-visible),
|
|
1676
1805
|
:is(.bs-input, .bs-select, .bs-textarea):where(:focus-visible) {
|
|
1677
1806
|
--input-border: var(--bs-blue-base);
|
|
1807
|
+
outline-style: none;
|
|
1678
1808
|
outline-width: 0px;
|
|
1679
1809
|
}
|
|
1680
1810
|
:is(input:where(:not([type='checkbox'],[type='radio'])), textarea, select):where(:disabled),
|
|
@@ -1743,7 +1873,7 @@ select,
|
|
|
1743
1873
|
border-radius: .25rem;
|
|
1744
1874
|
color: var(--bs-ink-base);
|
|
1745
1875
|
display: flex;
|
|
1746
|
-
height: 2.5rem;
|
|
1876
|
+
height: var(--input-addon-height, 2.5rem);
|
|
1747
1877
|
overflow: hidden;
|
|
1748
1878
|
padding: 0;
|
|
1749
1879
|
pointer-events: none;
|
|
@@ -1781,7 +1911,7 @@ and issues with box-sizing
|
|
|
1781
1911
|
flex-shrink: 0;
|
|
1782
1912
|
position: relative;
|
|
1783
1913
|
}
|
|
1784
|
-
.bs-input-addon > :where([data-autowidth]:not([data-autowidth="false"]), .bs-input-addon, bs-input) {
|
|
1914
|
+
.bs-input-addon > :where([data-autowidth]:not([data-autowidth="false"]), .bs-input-addon, bs-input, .bs-input) {
|
|
1785
1915
|
flex-grow: 1;
|
|
1786
1916
|
flex-shrink: 1;
|
|
1787
1917
|
}
|
|
@@ -1800,6 +1930,7 @@ and issues with box-sizing
|
|
|
1800
1930
|
.bs-input-addon > *,
|
|
1801
1931
|
.bs-input-addon :where(input, select),
|
|
1802
1932
|
.bs-input-addon :is(bs-input, bs-select) :where(input, select),
|
|
1933
|
+
.bs-input-addon :is(input, select):where(.bs-input, .bs-select),
|
|
1803
1934
|
.bs-input-addon :where(.bs-input-addon) {
|
|
1804
1935
|
--input-border: transparent;
|
|
1805
1936
|
--input-border-width: 0px;
|
|
@@ -1807,9 +1938,11 @@ and issues with box-sizing
|
|
|
1807
1938
|
.bs-input-addon {
|
|
1808
1939
|
--input-addon-nested-border: transparent;
|
|
1809
1940
|
}
|
|
1810
|
-
.bs-input-addon :where(:focus-within) :where(input, select),
|
|
1941
|
+
.bs-input-addon :where(:focus-within) :where(input, select, button),
|
|
1811
1942
|
.bs-input-addon :where(:focus-within) :is(bs-input, bs-select) :where(input, select),
|
|
1812
|
-
.bs-input-addon :where(input, select):where(
|
|
1943
|
+
.bs-input-addon :where(:focus-within) :is(input, select, button):where(.bs-input, .bs-select),
|
|
1944
|
+
.bs-input-addon :where(input, select, button):where(:focus, :focus-within, :focus-visible),
|
|
1945
|
+
.bs-input-addon :is(input, select):where(.bs-input, .bs-select):where(:focus, :focus-within, :focus-visible),
|
|
1813
1946
|
.bs-input-addon :is(bs-input, bs-select) :where(input, select):where(:focus, :focus-within, :focus-visible) {
|
|
1814
1947
|
--input-border: transparent;
|
|
1815
1948
|
box-shadow: none;
|
|
@@ -1854,6 +1987,7 @@ and issues with box-sizing
|
|
|
1854
1987
|
.bs-input-addon:where(:not([data-multifocus]):focus-within),
|
|
1855
1988
|
.bs-input-addon:where([data-multifocus="false"]:focus-within),
|
|
1856
1989
|
.bs-input-addon:where([data-multifocus]:not([data-multifocus="false"])) :where(input, select):where(:focus, :focus-within, :focus-visible),
|
|
1990
|
+
.bs-input-addon:where([data-multifocus]:not([data-multifocus="false"])) :is(input, select):where(.bs-input, .bs-select):where(:focus, :focus-within, :focus-visible),
|
|
1857
1991
|
.bs-input-addon:where([data-multifocus]:not([data-multifocus="false"])) :is(bs-input, bs-select) :where(input, select):where(:focus, :focus-within, :focus-visible) {
|
|
1858
1992
|
--input-border: var(--focus-border);
|
|
1859
1993
|
position: relative;
|
|
@@ -1866,11 +2000,13 @@ and issues with box-sizing
|
|
|
1866
2000
|
.bs-input-addon :where(.bs-input-addon:focus-within)::after {
|
|
1867
2001
|
z-index: 1;
|
|
1868
2002
|
}
|
|
1869
|
-
.bs-input-addon:where([data-multifocus]:not([data-multifocus="false"])) > :where(:not(.bs-input-addon)) > :where(input:focus, select:focus),
|
|
2003
|
+
.bs-input-addon:where([data-multifocus]:not([data-multifocus="false"])) > :where(:not(.bs-input-addon)) > :where(input:focus, select:focus, button:focus),
|
|
2004
|
+
.bs-input-addon:where([data-multifocus]:not([data-multifocus="false"])) > :is(input, select):where(.bs-input, .bs-select):where(:focus),
|
|
1870
2005
|
.bs-input-addon:where([data-multifocus]:not([data-multifocus="false"])) > :is(bs-input, bs-select) :where(input:focus, select:focus),
|
|
1871
|
-
.bs-input-addon:where([data-multifocus]:not([data-multifocus="false"])) > :where(input:focus, select:focus) {
|
|
2006
|
+
.bs-input-addon:where([data-multifocus]:not([data-multifocus="false"])) > :where(input:focus, select:focus, button:focus) {
|
|
1872
2007
|
border-radius: .25rem;
|
|
1873
2008
|
box-shadow: var(--focus-border) 0px 0px 0px 1px inset;
|
|
2009
|
+
z-index: 1;
|
|
1874
2010
|
}
|
|
1875
2011
|
.bs-input-addon:where(:not([data-multifocus]):focus-within)::after,
|
|
1876
2012
|
.bs-input-addon:where([data-multifocus="false"]:focus-within)::after {
|
|
@@ -1891,7 +2027,7 @@ and issues with box-sizing
|
|
|
1891
2027
|
}
|
|
1892
2028
|
/* -------- Disabled styles -------- */
|
|
1893
2029
|
.bs-input-addon:where([data-disabled]:not([data-disabled="false"])),
|
|
1894
|
-
.bs-input-addon:where([data-disabled]:not([data-disabled="false"]))
|
|
2030
|
+
.bs-input-addon:where([data-disabled]:not([data-disabled="false"])) .bs-button {
|
|
1895
2031
|
--input-bg: var(--bs-gray-200);
|
|
1896
2032
|
--input-border: var(--bs-gray-400);
|
|
1897
2033
|
color: var(--bs-gray-400);
|
|
@@ -1920,11 +2056,12 @@ and issues with box-sizing
|
|
|
1920
2056
|
.bs-input-search :where(.bs-icon svg) {
|
|
1921
2057
|
box-sizing: content-box;
|
|
1922
2058
|
}
|
|
1923
|
-
.bs-input-search
|
|
1924
|
-
--icon-size: 1.75rem;
|
|
1925
|
-
padding
|
|
2059
|
+
.bs-input-search :where([data-component="bs-icon-search"]) {
|
|
2060
|
+
--icon-size: var(--search-icon-size, 1.75rem);
|
|
2061
|
+
padding: var(--search-icon-padding, 0 0 0 .75rem);
|
|
1926
2062
|
}
|
|
1927
|
-
|
|
2063
|
+
/* Clear Button */
|
|
2064
|
+
.bs-input-search button {
|
|
1928
2065
|
align-items: center;
|
|
1929
2066
|
background-color: transparent;
|
|
1930
2067
|
cursor: pointer;
|
|
@@ -1934,11 +2071,35 @@ and issues with box-sizing
|
|
|
1934
2071
|
padding-right: 0.75rem;
|
|
1935
2072
|
transition: transform 100ms ease-in-out;
|
|
1936
2073
|
}
|
|
1937
|
-
.bs-input-search
|
|
2074
|
+
.bs-input-search button:where(:active) {
|
|
1938
2075
|
transform: scale(0.97);
|
|
1939
2076
|
transform-origin: center;
|
|
1940
2077
|
box-shadow: inset 0px 0px 4px 1px var(--bs-blue-base);
|
|
1941
2078
|
}
|
|
2079
|
+
.bs-input-search button:where(:focus) {
|
|
2080
|
+
border-radius: .25rem;
|
|
2081
|
+
box-shadow: var(--focus-border) 0px 0px 0px 1px inset;
|
|
2082
|
+
z-index: 1;
|
|
2083
|
+
}
|
|
2084
|
+
/* Filter variant */
|
|
2085
|
+
.bs-input-search:where([data-variant="filter"]) {
|
|
2086
|
+
--focus-border: transparent;
|
|
2087
|
+
--input-border: transparent;
|
|
2088
|
+
--input-addon-height: 1.5rem;
|
|
2089
|
+
--input-caret: var(--bs-blue-base);
|
|
2090
|
+
--input-padding-block: 0 0.125rem;
|
|
2091
|
+
--input-padding-inline: 0.5rem;
|
|
2092
|
+
--input-placeholder: var(--bs-ink-light);
|
|
2093
|
+
--input-text-size: var(--bs-text-sm);
|
|
2094
|
+
--search-icon-size: 1rem;
|
|
2095
|
+
--search-icon-padding: 0;
|
|
2096
|
+
}
|
|
2097
|
+
/* -------- Disabled styles -------- */
|
|
2098
|
+
.bs-input-addon:where([data-variant="filter"][data-disabled="true"]),
|
|
2099
|
+
.bs-input-addon:where([data-variant="filter"][data-disabled="true"]) :is(.bs-button, .bs-input) {
|
|
2100
|
+
--input-bg: var(--bs-bg-base);
|
|
2101
|
+
--input-border: transparent;
|
|
2102
|
+
}
|
|
1942
2103
|
.bs-field-details {
|
|
1943
2104
|
display: flex;
|
|
1944
2105
|
justify-content: space-between;
|