@wwtdev/bsds-css 3.0.0-rc.41 → 3.0.0-rc.43

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.
@@ -413,6 +413,11 @@ module.exports = {
413
413
  "gray-medium": "var(--bs-gray-medium)",
414
414
  "gray-light": "var(--bs-gray-light)",
415
415
  "gray-lightest": "var(--bs-gray-lightest)",
416
+ // Navy
417
+ "navy-base": "var(--bs-navy-base)",
418
+ "navy-medium": "var(--bs-navy-medium)",
419
+ "navy-light": "var(--bs-navy-light)",
420
+ "navy-lightest": "var(--bs-navy-lightest)",
416
421
  // Orange
417
422
  "warning": "var(--bs-warning)",
418
423
  "orange-base": "var(--bs-orange-base)",
package/dist/wwt-bsds.css CHANGED
@@ -4770,6 +4770,80 @@ data-autosize-icons="true" - see above
4770
4770
  --box-shadow: var(--bs-negative-base);
4771
4771
  --outline-color: var(--bs-negative-base);
4772
4772
  }
4773
+ /*
4774
+ HEADS-UP! Styling to look like an input is inherited from .bs-input
4775
+ */
4776
+ .bs-input-button {
4777
+ display: grid;
4778
+ grid-template-columns: auto 1fr auto auto;
4779
+ align-items: center;
4780
+ cursor: pointer;
4781
+ }
4782
+ /* -- Multiselect Count -- */
4783
+ .bs-input-button-count {
4784
+ grid-column-start: 1;
4785
+ margin-right: var(--bs-space-2);
4786
+ }
4787
+ /* -- Placeholder -- */
4788
+ .bs-input-button-placeholder {
4789
+ grid-column-start: 2;
4790
+ color: var(--input-placeholder, var(--bs-violet-100));
4791
+ text-align: left;
4792
+ text-overflow: ellipsis;
4793
+ overflow: hidden;
4794
+ white-space: nowrap;
4795
+ }
4796
+ :where(.dark) .bs-input-button-placeholder {
4797
+ --input-placeholder: var(--bs-violet-200);
4798
+ }
4799
+ /* -- Display Value -- */
4800
+ /* ...more will be coming here to handle multiselect pill display inside of input. */
4801
+ .bs-input-button-value {
4802
+ grid-column-start: 2;
4803
+ text-align: left;
4804
+ text-overflow: ellipsis;
4805
+ overflow: hidden;
4806
+ white-space: nowrap;
4807
+ }
4808
+ /* -- Clear Button -- */
4809
+ .bs-input-button-clear {
4810
+ grid-column-start: 3;
4811
+ display: flex;
4812
+ align-items: center;
4813
+ justify-content: center;
4814
+ height: 100%;
4815
+ padding: 0 var(--bs-space-3);
4816
+ cursor: pointer;
4817
+ background-color: inherit;
4818
+ transition: transform var(--bs-transition-fast) var(--bs-transition-ease);
4819
+ }
4820
+ .bs-input-button-clear:where(:focus-visible) {
4821
+ outline: none;
4822
+ border-radius: .25rem;
4823
+ box-shadow: var(--bs-blue-base) 0px 0px 0px 1px inset;
4824
+ }
4825
+ /* -- Caret Indicator -- */
4826
+ .bs-input-button-caret {
4827
+ grid-column-start: 4;
4828
+ margin-left: var(--bs-space-2);
4829
+ transition: rotate var(--bs-transition-medium) var(--bs-transition-ease);
4830
+ }
4831
+ .bs-input-button-clear + .bs-input-button-caret {
4832
+ margin-left: var(--bs-space-1);
4833
+ }
4834
+ .bs-input-button:where([aria-expanded="true"]) :where(.bs-input-button-caret) {
4835
+ rotate: 180deg;
4836
+ }
4837
+ /* -- Disabled -- */
4838
+ .bs-input-button:where([aria-disabled="true"]) {
4839
+ cursor: default;
4840
+ }
4841
+ .bs-input-button:where([aria-disabled="true"]) :where(.bs-badge) {
4842
+ --badge-bg: var(--bs-ink-disabled);
4843
+ }
4844
+ .bs-input-button:where([aria-disabled="true"]) :where(.bs-input-button-caret, .bs-input-button-placeholder) {
4845
+ display: none;
4846
+ }
4773
4847
  .bs-input-phone :where(.bs-input-addon) > button {
4774
4848
  align-items: center;
4775
4849
  background-color: inherit;
@@ -4936,13 +5010,13 @@ Custom properties:
4936
5010
  outline-width: 0px;
4937
5011
  }
4938
5012
  /* DISABLED state */
4939
- :is(.bs-input, .bs-textarea):where(:disabled) {
5013
+ :is(.bs-input, .bs-textarea):where(:disabled, [aria-disabled="true"]) {
4940
5014
  --input-border: var(--bs-ink-disabled);
4941
5015
  --input-bg: var(--bs-bg-disabled);
4942
5016
  color: var(--bs-ink-disabled);
4943
5017
  }
4944
5018
  /* Text inputs should not have a border when disabled */
4945
- :is(.bs-input, .bs-textarea):where(:disabled) {
5019
+ :is(.bs-input, .bs-textarea):where(:disabled, [aria-disabled="true"]) {
4946
5020
  --input-border-width: 0px;
4947
5021
  }
4948
5022
  /* Errors and Messages */
@@ -4977,6 +5051,9 @@ label:where(.bs-label) {
4977
5051
  font-weight: 600;
4978
5052
  line-height: var(--bs-leading-lg);
4979
5053
  }
5054
+ :where(.bs-label + .bs-input, .bs-label > .bs-input) {
5055
+ margin-top: 0.25rem;
5056
+ }
4980
5057
  /* Required asterisk */
4981
5058
  .bs-label :where([data-required="true"]) {
4982
5059
  color: var(--label-asterisk-color, var(--bs-ink-negative));
@@ -5116,7 +5193,6 @@ label:where(.bs-label) {
5116
5193
  top: 0;
5117
5194
  }
5118
5195
  .bs-option {
5119
- /* did not use "flex, flex-col, gap" in order to avoid gap spacing pain for consumers with custom cases */
5120
5196
  padding: var(--bs-space-1) var(--bs-space-2);
5121
5197
  color: var(--bs-ink-base);
5122
5198
  cursor: pointer;
@@ -6709,8 +6785,8 @@ a.bs-text-button {
6709
6785
  left: 0;
6710
6786
  width: var(--bs-popover-width, -moz-fit-content);
6711
6787
  width: var(--bs-popover-width, fit-content);
6712
- height:var(--bs-popover-height, -moz-fit-content);
6713
- height:var(--bs-popover-height, fit-content);
6788
+ height: var(--bs-popover-height, -moz-fit-content);
6789
+ height: var(--bs-popover-height, fit-content);
6714
6790
  max-width: calc(100dvw - 3rem);
6715
6791
  max-height: calc(100dvh - 3rem);
6716
6792
  padding: var(--bs-space-6);
@@ -6821,89 +6897,6 @@ a.bs-text-button {
6821
6897
  opacity: 0;
6822
6898
  transform: scale(.95);
6823
6899
  }
6824
- /*
6825
- HEADS-UP:
6826
- BsDropdown inherits base styles from its BsPopover root element
6827
- ...so some of these styles override those defaults.
6828
- */
6829
- .bs-dropdown {
6830
- background-color: var(--bs-bg-base-to-medium);
6831
- max-height: 20rem;
6832
- padding: 0;
6833
- }
6834
- /* filter could be "display: none" if mounted for it's logic, yet hidden due to using an outside input/model */
6835
- .bs-dropdown:where(:has(.bs-dropdown-filter:not([style*="display: none"]))) {
6836
- padding-top: 0;
6837
- }
6838
- .bs-dropdown :where(hr) {
6839
- margin: var(--bs-space-3) 0;
6840
- }
6841
- .bs-dropdown:where(:focus-visible) {
6842
- outline: none;
6843
- }
6844
- .bs-dropdown-list {
6845
- max-height: 20rem;
6846
- overflow-y: auto;
6847
- overscroll-behavior: contain;
6848
- padding: var(--bs-space-3) 0;
6849
- }
6850
- .bs-dropdown-list:where(:focus-visible) {
6851
- outline: none;
6852
- }
6853
- .bs-dropdown:where(:has(.bs-dropdown-filter)) :where(.bs-dropdown-list) {
6854
- padding-top: 0;
6855
- /* filter input is 4rem, so 20rem (default) - 4rem = 16rem */
6856
- max-height: 16rem;
6857
- }
6858
- /* -- FILTER -- */
6859
- .bs-dropdown-filter {
6860
- position: sticky;
6861
- top: 0;
6862
- padding: var(--bs-space-3);
6863
- /* fade to transparent in bottom padding area, so scrolling menu items under filter looks better */
6864
- background-image: linear-gradient(
6865
- var(--bs-bg-base-to-medium) calc(100% - var(--bs-space-3)),
6866
- transparent 100%
6867
- );
6868
- z-index: 1;
6869
- }
6870
- .bs-dropdown-filter-icon {
6871
- margin-left: var(--bs-space-3);
6872
- }
6873
- .bs-dropdown-filter-input {
6874
- padding-inline: var(--bs-space-2);
6875
- }
6876
- /* override form-text-fields.css style that hides placeholder when inputs are focused */
6877
- .bs-dropdown-filter-input::-moz-placeholder {
6878
- opacity: 1;
6879
- }
6880
- .bs-dropdown-filter-input::placeholder {
6881
- opacity: 1;
6882
- }
6883
- .bs-dropdown-filter-button {
6884
- border-color: transparent;
6885
- color: inherit;
6886
- cursor: pointer;
6887
- font-family: inherit;
6888
- font-size: var(--bs-text-base);
6889
- padding: 0 var(--bs-space-3);
6890
- position: relative;
6891
- text-decoration: none;
6892
- }
6893
- .bs-dropdown-filter-button:where(:focus-visible) {
6894
- border-radius: var(--bs-space-1);
6895
- box-shadow: 0px 0px 0px 1px inset var(--bs-primary-base);
6896
- }
6897
- /* -- SIZING -- */
6898
- .bs-dropdown:where([data-size="sm"]) {
6899
- --bs-popover-width: 10rem; /* 160px */
6900
- }
6901
- .bs-dropdown:where([data-size="md"]) {
6902
- --bs-popover-width: 20rem; /* 320px */
6903
- }
6904
- .bs-dropdown:where([data-size="lg"]) {
6905
- --bs-popover-width: 28rem; /* 448px */
6906
- }
6907
6900
  /*
6908
6901
  HEADS-UP:
6909
6902
  Most BsFlyout base styles come from its BsPopover root element,
@@ -7331,6 +7324,89 @@ a.bs-text-button {
7331
7324
  opacity: 0;
7332
7325
  transform: var(--toast-transform);
7333
7326
  }
7327
+ /*
7328
+ HEADS-UP:
7329
+ BsDropdown inherits base styles from its BsPopover root element
7330
+ ...so some of these styles override those defaults.
7331
+ */
7332
+ .bs-dropdown {
7333
+ background-color: var(--bs-bg-base-to-medium);
7334
+ max-height: 20rem;
7335
+ padding: 0;
7336
+ }
7337
+ /* filter could be "display: none" if mounted for it's logic, yet hidden due to using an outside input/model */
7338
+ .bs-dropdown:where(:has(.bs-dropdown-filter:not([style*="display: none"]))) {
7339
+ padding-top: 0;
7340
+ }
7341
+ .bs-dropdown :where(hr) {
7342
+ margin: var(--bs-space-3) 0;
7343
+ }
7344
+ .bs-dropdown:where(:focus-visible) {
7345
+ outline: none;
7346
+ }
7347
+ .bs-dropdown-list {
7348
+ max-height: 20rem;
7349
+ overflow-y: auto;
7350
+ overscroll-behavior: contain;
7351
+ padding: var(--bs-space-3) 0;
7352
+ }
7353
+ .bs-dropdown-list:where(:focus-visible) {
7354
+ outline: none;
7355
+ }
7356
+ .bs-dropdown:where(:has(.bs-dropdown-filter)) :where(.bs-dropdown-list) {
7357
+ padding-top: 0;
7358
+ /* filter input is 4rem, so 20rem (default) - 4rem = 16rem */
7359
+ max-height: 16rem;
7360
+ }
7361
+ /* -- FILTER -- */
7362
+ .bs-dropdown-filter {
7363
+ position: sticky;
7364
+ top: 0;
7365
+ padding: var(--bs-space-3);
7366
+ /* fade to transparent in bottom padding area, so scrolling menu items under filter looks better */
7367
+ background-image: linear-gradient(
7368
+ var(--bs-bg-base-to-medium) calc(100% - var(--bs-space-3)),
7369
+ transparent 100%
7370
+ );
7371
+ z-index: 1;
7372
+ }
7373
+ .bs-dropdown-filter-icon {
7374
+ margin-left: var(--bs-space-3);
7375
+ }
7376
+ .bs-dropdown-filter-input {
7377
+ padding-inline: var(--bs-space-2);
7378
+ }
7379
+ /* override form-text-fields.css style that hides placeholder when inputs are focused */
7380
+ .bs-dropdown-filter-input::-moz-placeholder {
7381
+ opacity: 1;
7382
+ }
7383
+ .bs-dropdown-filter-input::placeholder {
7384
+ opacity: 1;
7385
+ }
7386
+ .bs-dropdown-filter-button {
7387
+ border-color: transparent;
7388
+ color: inherit;
7389
+ cursor: pointer;
7390
+ font-family: inherit;
7391
+ font-size: var(--bs-text-base);
7392
+ padding: 0 var(--bs-space-3);
7393
+ position: relative;
7394
+ text-decoration: none;
7395
+ }
7396
+ .bs-dropdown-filter-button:where(:focus-visible) {
7397
+ border-radius: var(--bs-space-1);
7398
+ box-shadow: 0px 0px 0px 1px inset var(--bs-primary-base);
7399
+ }
7400
+ /* -- SIZING -- */
7401
+ .bs-dropdown:where([data-size="sm"]) {
7402
+ --bs-popover-width: 10rem; /* 160px */
7403
+ }
7404
+ .bs-dropdown:where([data-size="md"]) {
7405
+ --bs-popover-width: 20rem; /* 320px */
7406
+ }
7407
+ .bs-dropdown:where([data-size="lg"]) {
7408
+ --bs-popover-width: 28rem; /* 448px */
7409
+ }
7334
7410
  /*
7335
7411
  HEADS-UP:
7336
7412
  Most BsTooltip base styles come from its BsPopover root element,