@wwtdev/bsds-css 3.0.0-rc.45 → 3.0.0-rc.47
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/wwt-bsds-components.css +234 -333
- package/dist/wwt-bsds-components.min.css +1 -1
- package/dist/wwt-bsds-tokens.css +3 -0
- package/dist/wwt-bsds-tokens.min.css +1 -1
- package/dist/wwt-bsds.css +238 -334
- package/dist/wwt-bsds.min.css +1 -1
- package/package.json +1 -1
|
@@ -765,129 +765,131 @@ Custom properties:
|
|
|
765
765
|
}
|
|
766
766
|
/* Base Toast Styles */
|
|
767
767
|
.bs-toast-deprecated {
|
|
768
|
-
|
|
768
|
+
--toast-transform: translate(0, calc(100% + 1.5rem));
|
|
769
769
|
|
|
770
|
-
|
|
771
|
-
|
|
772
|
-
|
|
773
|
-
|
|
774
|
-
|
|
775
|
-
|
|
776
|
-
|
|
777
|
-
|
|
778
|
-
|
|
779
|
-
|
|
780
|
-
|
|
781
|
-
|
|
782
|
-
|
|
783
|
-
|
|
784
|
-
|
|
785
|
-
|
|
786
|
-
|
|
770
|
+
background-color: var(--bs-bg-base-elevated);
|
|
771
|
+
border-top: 4px solid var(--bs-primary-base);
|
|
772
|
+
bottom: 1.5rem;
|
|
773
|
+
box-shadow: var(--bs-shadow-contentMedium);
|
|
774
|
+
left: 0;
|
|
775
|
+
margin-left: 1.5rem;
|
|
776
|
+
margin-right: 1.5rem;
|
|
777
|
+
opacity: 0;
|
|
778
|
+
position: fixed;
|
|
779
|
+
right: 0;
|
|
780
|
+
transform: var(--toast-transform);
|
|
781
|
+
transition-duration: 200ms;
|
|
782
|
+
transition-property: transform, opacity;
|
|
783
|
+
transition-timing-function: ease;
|
|
784
|
+
/* Clamp width for mobile -> full screen */
|
|
785
|
+
width: clamp(17rem, calc(100vw - 3rem), 25rem);
|
|
786
|
+
z-index: 999;
|
|
787
787
|
}
|
|
788
788
|
.bs-toast-deprecated:where([data-stacked]:not([data-stacked="false"])) {
|
|
789
|
-
|
|
790
|
-
|
|
791
|
-
|
|
792
|
-
|
|
793
|
-
|
|
789
|
+
bottom: auto;
|
|
790
|
+
left: auto;
|
|
791
|
+
position: static;
|
|
792
|
+
right: auto;
|
|
793
|
+
z-index: auto;
|
|
794
794
|
}
|
|
795
795
|
/* Mobile - Toast comes up from bottom */
|
|
796
796
|
.bs-toast-deprecated:where([data-shown]:not([data-shown="false"])) {
|
|
797
|
-
|
|
798
|
-
|
|
797
|
+
opacity: 1;
|
|
798
|
+
transform: translate(0, 0);
|
|
799
799
|
}
|
|
800
800
|
.bs-toast-header-deprecated {
|
|
801
|
-
|
|
802
|
-
|
|
803
|
-
|
|
804
|
-
|
|
805
|
-
|
|
801
|
+
align-items: center;
|
|
802
|
+
color: var(--bs-ink-base);
|
|
803
|
+
display: flex;
|
|
804
|
+
gap: 0.5rem;
|
|
805
|
+
padding: 1rem;
|
|
806
806
|
}
|
|
807
|
-
.bs-toast-header-deprecated :where(.bs-toast-header-icon
|
|
808
|
-
|
|
807
|
+
.bs-toast-header-deprecated :where(.bs-toast-header-deprecated-icon) {
|
|
808
|
+
color: var(--bs-primary-base);
|
|
809
809
|
}
|
|
810
|
-
.bs-toast-header-deprecated :where(
|
|
811
|
-
|
|
810
|
+
.bs-toast-header-deprecated :where(.bs-toast-header-deprecated-text) {
|
|
811
|
+
font-size: var(--bs-text-md);
|
|
812
|
+
font-weight: var(--bs-font-normal);
|
|
813
|
+
line-height: var(--bs-leading-lg);
|
|
812
814
|
}
|
|
813
815
|
.bs-toast-body-deprecated {
|
|
814
|
-
|
|
815
|
-
|
|
816
|
-
|
|
817
|
-
|
|
818
|
-
|
|
816
|
+
border-bottom: 1px solid var(--bs-border-base);
|
|
817
|
+
color: var(--bs-ink-light);
|
|
818
|
+
padding-bottom: 1rem;
|
|
819
|
+
padding-left: 1rem;
|
|
820
|
+
padding-right: 1rem;
|
|
819
821
|
}
|
|
820
822
|
.bs-toast-actions-deprecated {
|
|
821
|
-
|
|
822
|
-
|
|
823
|
-
|
|
824
|
-
|
|
825
|
-
|
|
826
|
-
|
|
827
|
-
|
|
828
|
-
|
|
829
|
-
|
|
823
|
+
/* Mobile - Buttons will be stacked */
|
|
824
|
+
display: flex;
|
|
825
|
+
flex-direction: row;
|
|
826
|
+
gap: 1rem;
|
|
827
|
+
justify-content: flex-end;
|
|
828
|
+
padding-bottom: 0.5rem;
|
|
829
|
+
padding-left: 1rem;
|
|
830
|
+
padding-right: 1rem;
|
|
831
|
+
padding-top: 0.5rem;
|
|
830
832
|
}
|
|
831
833
|
.bs-toast-actions-deprecated:where([data-stacked]:not([data-stacked="false"])) {
|
|
832
|
-
|
|
834
|
+
flex-direction: column-reverse;
|
|
833
835
|
}
|
|
834
836
|
/* Warning Toast Styles */
|
|
835
837
|
.bs-toast-deprecated:where([data-variant^='warning']) {
|
|
836
|
-
|
|
838
|
+
border-top: 4px solid var(--bs-warning-base);
|
|
837
839
|
}
|
|
838
|
-
.bs-toast-deprecated:where([data-variant^='warning']) :where(.bs-toast-header-deprecated .bs-toast-header-icon
|
|
839
|
-
|
|
840
|
+
.bs-toast-deprecated:where([data-variant^='warning']) :where(.bs-toast-header-deprecated .bs-toast-header-deprecated-icon) {
|
|
841
|
+
color: var(--bs-ink-warning);
|
|
840
842
|
}
|
|
841
843
|
/* Positive Toast Styles */
|
|
842
844
|
.bs-toast-deprecated:where([data-variant^='positive']) {
|
|
843
|
-
|
|
845
|
+
border-top: 4px solid var(--bs-positive-base);
|
|
844
846
|
}
|
|
845
|
-
.bs-toast-deprecated:where([data-variant^='positive']) :where(.bs-toast-header-deprecated .bs-toast-header-icon
|
|
846
|
-
|
|
847
|
+
.bs-toast-deprecated:where([data-variant^='positive']) :where(.bs-toast-header-deprecated .bs-toast-header-deprecated-icon) {
|
|
848
|
+
color: var(--bs-ink-positive);
|
|
847
849
|
}
|
|
848
850
|
:where(.dark) .bs-toast-deprecated:where([data-variant^='positive']) {
|
|
849
|
-
|
|
851
|
+
border-top: 4px solid var(--bs-positive-light);
|
|
850
852
|
}
|
|
851
|
-
:where(.dark) .bs-toast-deprecated:where([data-variant^='positive']) :where(.bs-toast-header-deprecated .bs-toast-header-icon
|
|
852
|
-
|
|
853
|
+
:where(.dark) .bs-toast-deprecated:where([data-variant^='positive']) :where(.bs-toast-header-deprecated .bs-toast-header-deprecated-icon) {
|
|
854
|
+
color: var(--bs-positive-light);
|
|
853
855
|
}
|
|
854
856
|
/* Negative Toast Styles */
|
|
855
857
|
.bs-toast-deprecated:where([data-variant^='negative']) {
|
|
856
|
-
|
|
858
|
+
border-top: 4px solid var(--bs-negative-dark);
|
|
857
859
|
}
|
|
858
|
-
.bs-toast-deprecated:where([data-variant^='negative']) :where(.bs-toast-header-deprecated .bs-toast-header-icon
|
|
859
|
-
|
|
860
|
+
.bs-toast-deprecated:where([data-variant^='negative']) :where(.bs-toast-header-deprecated .bs-toast-header-deprecated-icon) {
|
|
861
|
+
color: var(--bs-negative-dark);
|
|
860
862
|
}
|
|
861
863
|
@media (min-width: 440px) {
|
|
862
|
-
|
|
863
|
-
|
|
864
|
+
.bs-toast-deprecated {
|
|
865
|
+
--toast-transform: translate(calc(100% + 1.5rem), 0);
|
|
864
866
|
|
|
865
|
-
|
|
866
|
-
|
|
867
|
-
|
|
868
|
-
|
|
869
|
-
|
|
870
|
-
|
|
867
|
+
left: auto;
|
|
868
|
+
margin-left: 0;
|
|
869
|
+
margin-right: 0;
|
|
870
|
+
opacity: 0;
|
|
871
|
+
right: 1.5rem;
|
|
872
|
+
}
|
|
871
873
|
|
|
872
|
-
|
|
873
|
-
|
|
874
|
-
|
|
875
|
-
|
|
874
|
+
.bs-toast-deprecated:where([data-shown]:not([data-shown="false"])) {
|
|
875
|
+
opacity: 1;
|
|
876
|
+
transform: translate(0, 0);
|
|
877
|
+
}
|
|
876
878
|
|
|
877
|
-
|
|
878
|
-
|
|
879
|
-
|
|
879
|
+
.bs-toast-actions-deprecated:where([data-stacked]:not([data-stacked="false"])) {
|
|
880
|
+
flex-direction: row;
|
|
881
|
+
}
|
|
880
882
|
}
|
|
881
883
|
/* Vue Transition Styles - Only used in Vue component */
|
|
882
|
-
.bs-toast-deprecated:where(.bs-toast-enter-from),
|
|
883
|
-
.bs-toast-deprecated:where(.bs-toast-leave-to) {
|
|
884
|
-
|
|
885
|
-
|
|
884
|
+
.bs-toast-deprecated:where(.bs-toast-deprecated-enter-from),
|
|
885
|
+
.bs-toast-deprecated:where(.bs-toast-deprecated-leave-to) {
|
|
886
|
+
opacity: 0;
|
|
887
|
+
transform: var(--toast-transform);
|
|
886
888
|
}
|
|
887
|
-
.bs-toast-deprecated:where(.bs-toast-enter-to),
|
|
888
|
-
.bs-toast-deprecated:where(.bs-toast-leave-from) {
|
|
889
|
-
|
|
890
|
-
|
|
889
|
+
.bs-toast-deprecated:where(.bs-toast-deprecated-enter-to),
|
|
890
|
+
.bs-toast-deprecated:where(.bs-toast-deprecated-leave-from) {
|
|
891
|
+
opacity: 1;
|
|
892
|
+
transform: translate(0, 0);
|
|
891
893
|
}
|
|
892
894
|
/* Container for holding all toasts that will be visible */
|
|
893
895
|
.bs-toaster-deprecated {
|
|
@@ -5110,13 +5112,6 @@ a.bs-text-button {
|
|
|
5110
5112
|
--step-color: var(--bs-ink-negative);
|
|
5111
5113
|
--progress-step-bg: var(--bs-negative-base);
|
|
5112
5114
|
}
|
|
5113
|
-
:root {
|
|
5114
|
-
--bs-vertical-nav-width: 9.875rem;
|
|
5115
|
-
--bs-vertical-nav-narrow-width: 4.5rem;
|
|
5116
|
-
--bs-vertical-nav-collapsed-width: 4rem;
|
|
5117
|
-
/* Dynamic width set by the navigation component for page layout */
|
|
5118
|
-
--bs-page-nav-width: 0px;
|
|
5119
|
-
}
|
|
5120
5115
|
.bs-vertical-nav-wrapper {
|
|
5121
5116
|
--active-color: rgba(255, 255, 255, 0.25);
|
|
5122
5117
|
--bg-color: var(--bs-navy-base);
|
|
@@ -5548,8 +5543,13 @@ a.bs-text-button {
|
|
|
5548
5543
|
transition: margin-inline-start 350ms cubic-bezier(0.4, 0, 0.2, 1);
|
|
5549
5544
|
}
|
|
5550
5545
|
/*
|
|
5551
|
-
POP SYSTEM COMPONENTS
|
|
5552
|
-
Components that are built on top of BsPopover
|
|
5546
|
+
POP SYSTEM COMPONENTS (the order matters)
|
|
5547
|
+
- Components that are built on top of BsPopover
|
|
5548
|
+
- The popover.css must come first
|
|
5549
|
+
- In the future, could refactor this file to use @layer instead
|
|
5550
|
+
*/
|
|
5551
|
+
/*
|
|
5552
|
+
HEADS-UP: BsPopover and its styles are the base for all popover-based components and their styles
|
|
5553
5553
|
*/
|
|
5554
5554
|
#bs-popover-teleport-target {
|
|
5555
5555
|
z-index: var(--bs-popover-z-index);
|
|
@@ -5571,31 +5571,22 @@ a.bs-text-button {
|
|
|
5571
5571
|
position: absolute;
|
|
5572
5572
|
top: 0;
|
|
5573
5573
|
left: 0;
|
|
5574
|
+
display: flex;
|
|
5575
|
+
flex-direction: column;
|
|
5574
5576
|
width: var(--bs-popover-width, -moz-fit-content);
|
|
5575
5577
|
width: var(--bs-popover-width, fit-content);
|
|
5576
5578
|
height: var(--bs-popover-height, -moz-fit-content);
|
|
5577
5579
|
height: var(--bs-popover-height, fit-content);
|
|
5578
5580
|
max-width: calc(100dvw - 3rem);
|
|
5579
5581
|
max-height: calc(100dvh - 3rem);
|
|
5580
|
-
padding: var(--bs-space-6);
|
|
5581
5582
|
background-color: var(--bs-bg-base-to-light);
|
|
5582
5583
|
border-radius: var(--bs-space-1);
|
|
5583
5584
|
box-shadow: var(--bs-shadow-contentLowCenter);
|
|
5584
5585
|
pointer-events: auto; /* due to `pointer-events: none` on bs-popover-wrap */
|
|
5586
|
+
overflow: hidden;
|
|
5585
5587
|
}
|
|
5586
|
-
.bs-popover-
|
|
5587
|
-
|
|
5588
|
-
background: transparent;
|
|
5589
|
-
border-color: transparent;
|
|
5590
|
-
color: inherit;
|
|
5591
|
-
cursor: pointer;
|
|
5592
|
-
font-family: inherit;
|
|
5593
|
-
font-size: var(--bs-text-base);
|
|
5594
|
-
padding: var(--bs-space-2); /* to make a bit nicer hit target */
|
|
5595
|
-
position: absolute;
|
|
5596
|
-
right: var(--bs-space-2);
|
|
5597
|
-
text-decoration: none;
|
|
5598
|
-
top: var(--bs-space-2);
|
|
5588
|
+
.bs-popover:where(:not(:has(.bs-pop-header, .bs-pop-body, .bs-pop-footer))) {
|
|
5589
|
+
padding: var(--bs-space-6);
|
|
5599
5590
|
}
|
|
5600
5591
|
/* -- SIZING -- */
|
|
5601
5592
|
.bs-popover:where([data-size="sm"]) {
|
|
@@ -5686,95 +5677,105 @@ a.bs-text-button {
|
|
|
5686
5677
|
transform: scale(.95);
|
|
5687
5678
|
}
|
|
5688
5679
|
/*
|
|
5689
|
-
|
|
5690
|
-
|
|
5691
|
-
so some of these styles are there to override those defaults.
|
|
5680
|
+
Used in BsPopover, but exists as its own thing in case
|
|
5681
|
+
consumers need/want to use it for custom layout cases.
|
|
5692
5682
|
*/
|
|
5693
|
-
.bs-
|
|
5694
|
-
|
|
5695
|
-
|
|
5696
|
-
|
|
5697
|
-
|
|
5698
|
-
|
|
5699
|
-
|
|
5700
|
-
|
|
5683
|
+
.bs-pop-x-button {
|
|
5684
|
+
background-color: inherit;
|
|
5685
|
+
background: transparent;
|
|
5686
|
+
border-color: transparent;
|
|
5687
|
+
color: inherit;
|
|
5688
|
+
cursor: pointer;
|
|
5689
|
+
font-family: inherit;
|
|
5690
|
+
font-size: var(--bs-text-base);
|
|
5691
|
+
padding: var(--bs-space-3); /* to make a bit nicer hit target */
|
|
5692
|
+
position: absolute;
|
|
5693
|
+
right: var(--bs-pop-x-btn-right, var(--bs-space-1));
|
|
5694
|
+
text-decoration: none;
|
|
5695
|
+
top: var(--bs-pop-x-btn-top, var(--bs-space-1));
|
|
5701
5696
|
}
|
|
5702
|
-
|
|
5703
|
-
|
|
5704
|
-
|
|
5705
|
-
top: calc(var(--bs-flyout-padding) - .5rem);
|
|
5706
|
-
right: calc(var(--bs-flyout-padding) - .5rem);
|
|
5697
|
+
.bs-popover:where(:has(.bs-pop-header)) {
|
|
5698
|
+
--bs-pop-x-btn-right: var(--bs-space-4);
|
|
5699
|
+
--bs-pop-x-btn-top: var(--bs-space-4);
|
|
5707
5700
|
}
|
|
5708
|
-
|
|
5709
|
-
|
|
5701
|
+
.bs-pop-header {
|
|
5702
|
+
color: var(--bs-ink-base);
|
|
5703
|
+
font-size: var(--bs-text-md);
|
|
5710
5704
|
flex-shrink: 0;
|
|
5711
|
-
padding: var(--bs-
|
|
5712
|
-
}
|
|
5713
|
-
/* with border */
|
|
5714
|
-
.bs-flyout-header:where([data-border="true"]) {
|
|
5715
|
-
border-bottom: 1px solid var(--bs-border-base);
|
|
5716
|
-
}
|
|
5717
|
-
.bs-flyout-title {
|
|
5718
|
-
display: flex;
|
|
5719
|
-
align-items: center;
|
|
5720
|
-
gap: var(--bs-space-2);
|
|
5721
|
-
margin: 0 var(--bs-space-6) 0 0;
|
|
5722
|
-
font-size: var(--bs-text-lg);
|
|
5723
|
-
font-weight: normal;
|
|
5705
|
+
padding: var(--bs-pop-header-padding, var(--bs-space-6));
|
|
5724
5706
|
line-height: var(--bs-leading-regular);
|
|
5725
5707
|
}
|
|
5726
|
-
.bs-
|
|
5708
|
+
.bs-pop-header:where(:not(:has(.bs-pop-title, .bs-pop-subtitle))) {
|
|
5727
5709
|
display: flex;
|
|
5728
5710
|
align-items: center;
|
|
5729
5711
|
gap: var(--bs-space-2);
|
|
5730
|
-
margin: var(--bs-space-2) 0 0 0;
|
|
5731
|
-
font-size: var(--bs-text-sm);
|
|
5732
|
-
font-weight: normal;
|
|
5733
|
-
line-height: var(--bs-leading-lg);
|
|
5734
5712
|
}
|
|
5735
|
-
.bs-
|
|
5713
|
+
.bs-pop-header:where([data-border="true"]) {
|
|
5736
5714
|
border-bottom: 1px solid var(--bs-border-base);
|
|
5737
5715
|
}
|
|
5738
|
-
|
|
5739
|
-
.bs-flyout-body {
|
|
5716
|
+
.bs-pop-body {
|
|
5740
5717
|
flex: 1;
|
|
5741
|
-
padding: 0 var(--bs-flyout-padding);
|
|
5742
5718
|
overflow-y: auto;
|
|
5743
5719
|
overscroll-behavior: contain;
|
|
5720
|
+
padding: var(--bs-pop-body-padding, var(--bs-space-6));
|
|
5744
5721
|
}
|
|
5745
|
-
|
|
5746
|
-
|
|
5747
|
-
padding-top: var(--bs-flyout-padding-top);
|
|
5722
|
+
.bs-pop-body:where([data-background="true"]) {
|
|
5723
|
+
background-color: var(--bs-bg-light);
|
|
5748
5724
|
}
|
|
5749
|
-
|
|
5750
|
-
|
|
5751
|
-
padding-bottom: var(--bs-flyout-padding);
|
|
5725
|
+
.bs-pop-header:where(:not([data-border="true"])) + :where(.bs-pop-body:not([data-background="true"])) {
|
|
5726
|
+
padding-top: 0;
|
|
5752
5727
|
}
|
|
5753
|
-
|
|
5754
|
-
|
|
5755
|
-
|
|
5728
|
+
.bs-pop-footer {
|
|
5729
|
+
align-items: center;
|
|
5730
|
+
display: flex;
|
|
5731
|
+
flex-shrink: 0;
|
|
5732
|
+
gap: var(--bs-space-6);
|
|
5733
|
+
justify-content: flex-end;
|
|
5734
|
+
padding: var(--bs-pop-footer-padding, var(--bs-space-4) var(--bs-space-6));
|
|
5756
5735
|
}
|
|
5757
|
-
|
|
5758
|
-
|
|
5759
|
-
padding-bottom: var(--bs-flyout-padding);
|
|
5736
|
+
.bs-pop-footer:where([data-border="true"]) {
|
|
5737
|
+
border-top: 1px solid var(--bs-border-base);
|
|
5760
5738
|
}
|
|
5761
|
-
|
|
5762
|
-
|
|
5739
|
+
.bs-pop-title {
|
|
5740
|
+
align-items: center;
|
|
5763
5741
|
display: flex;
|
|
5764
|
-
|
|
5742
|
+
font-size: var(--bs-text-md);
|
|
5743
|
+
font-weight: normal;
|
|
5744
|
+
gap: var(--bs-space-2);
|
|
5745
|
+
line-height: var(--bs-leading-regular);
|
|
5746
|
+
margin: 0 var(--bs-space-12) 0 0;
|
|
5747
|
+
}
|
|
5748
|
+
.bs-pop-subtitle {
|
|
5765
5749
|
align-items: center;
|
|
5766
|
-
|
|
5767
|
-
|
|
5768
|
-
|
|
5750
|
+
color: var(--bs-ink-light);
|
|
5751
|
+
display: flex;
|
|
5752
|
+
font-size: var(--bs-text-sm);
|
|
5753
|
+
font-weight: normal;
|
|
5754
|
+
gap: var(--bs-space-2);
|
|
5755
|
+
line-height: var(--bs-leading-lg);
|
|
5756
|
+
margin: var(--bs-space-2) 0 0 0;
|
|
5769
5757
|
}
|
|
5770
|
-
/*
|
|
5771
|
-
|
|
5772
|
-
|
|
5758
|
+
/*
|
|
5759
|
+
HEADS-UP:
|
|
5760
|
+
Most BsFlyout base styles come from its BsPopover root element,
|
|
5761
|
+
so some of these styles are there to override those defaults.
|
|
5762
|
+
*/
|
|
5763
|
+
.bs-flyout {
|
|
5764
|
+
--bs-pop-header-padding: var(--bs-space-6);
|
|
5765
|
+
--bs-pop-body-padding: var(--bs-space-6);
|
|
5766
|
+
--bs-pop-footer-padding: var(--bs-space-6);
|
|
5767
|
+
margin: 0;
|
|
5768
|
+
border-radius: 0;
|
|
5769
|
+
}
|
|
5770
|
+
/* targeting header too, so consumer could just do: <BsPopHeader>My Title</BsPopHeader> */
|
|
5771
|
+
.bs-flyout :where(.bs-pop-header, .bs-pop-title) {
|
|
5772
|
+
font-size: var(--bs-text-lg);
|
|
5773
5773
|
}
|
|
5774
5774
|
/* -- SIZING -- */
|
|
5775
5775
|
.bs-flyout {
|
|
5776
5776
|
--bs-popover-height: 100dvh;
|
|
5777
5777
|
max-height: unset;
|
|
5778
|
+
max-width: 100dvw;
|
|
5778
5779
|
}
|
|
5779
5780
|
.bs-flyout:where([data-size="sm"]) {
|
|
5780
5781
|
--bs-popover-width: 22.5rem; /* 360px */
|
|
@@ -5828,142 +5829,50 @@ a.bs-text-button {
|
|
|
5828
5829
|
...so some of these styles override those defaults.
|
|
5829
5830
|
*/
|
|
5830
5831
|
.bs-modal {
|
|
5831
|
-
--bs-
|
|
5832
|
-
--bs-
|
|
5833
|
-
--bs-
|
|
5834
|
-
--bs-modal-padding:
|
|
5835
|
-
--bs-modal-lg-padding:
|
|
5836
|
-
display: flex;
|
|
5837
|
-
flex-direction: column;
|
|
5838
|
-
margin: 0;
|
|
5839
|
-
padding: 0;
|
|
5832
|
+
--bs-pop-header-padding: var(--bs-modal-padding);
|
|
5833
|
+
--bs-pop-body-padding: var(--bs-modal-padding);
|
|
5834
|
+
--bs-pop-footer-padding: var(--bs-space-4) var(--bs-modal-padding);
|
|
5835
|
+
--bs-modal-padding: var(--bs-space-6);
|
|
5836
|
+
--bs-modal-lg-padding: var(--bs-space-8);
|
|
5840
5837
|
background-color: var(--bs-bg-base-to-medium);
|
|
5841
5838
|
box-shadow: var(--bs-shadow-contentHigh);
|
|
5842
|
-
|
|
5843
|
-
}
|
|
5844
|
-
/* -- CLOSE BUTTON -- */
|
|
5845
|
-
/* calc() adjusts for default .5rem padding .bs-popover-close-button has, which exists for a nicer hit target */
|
|
5846
|
-
.bs-modal :where(.bs-popover-close-button) {
|
|
5847
|
-
top: calc(var(--bs-modal-padding) - .5rem);
|
|
5848
|
-
right: calc(var(--bs-modal-padding) - .5rem);
|
|
5849
|
-
}
|
|
5850
|
-
.bs-modal:where([data-size="lg"]) :where(.bs-popover-close-button) {
|
|
5851
|
-
top: calc(var(--bs-modal-lg-padding) - .5rem);
|
|
5852
|
-
right: calc(var(--bs-modal-lg-padding) - .5rem);
|
|
5853
|
-
}
|
|
5854
|
-
/* -- HEADER -- */
|
|
5855
|
-
.bs-modal-header {
|
|
5856
|
-
flex-shrink: 0;
|
|
5857
|
-
padding: var(--bs-modal-padding);
|
|
5858
|
-
}
|
|
5859
|
-
/* with border */
|
|
5860
|
-
.bs-modal-header:where([data-border="true"]) {
|
|
5861
|
-
border-bottom: 1px solid var(--bs-border-base);
|
|
5862
|
-
}
|
|
5863
|
-
/* large size, no border */
|
|
5864
|
-
.bs-modal:where([data-size="lg"]) :where(.bs-modal-header) {
|
|
5865
|
-
padding: var(--bs-modal-lg-padding);
|
|
5866
|
-
}
|
|
5867
|
-
/* large size, with border */
|
|
5868
|
-
.bs-modal:where([data-size="lg"]) :where(.bs-modal-header[data-border="true"]) {
|
|
5869
|
-
padding: var(--bs-modal-lg-padding);
|
|
5870
|
-
padding-bottom: var(--bs-modal-padding);
|
|
5839
|
+
margin: 0;
|
|
5871
5840
|
}
|
|
5872
|
-
|
|
5873
|
-
|
|
5874
|
-
align-items: center;
|
|
5875
|
-
gap: var(--bs-space-2);
|
|
5876
|
-
margin: 0 var(--bs-space-6) 0 0;
|
|
5841
|
+
/* targeting header too, so consumer could just do: <BsPopHeader>My Title</BsPopHeader> */
|
|
5842
|
+
.bs-modal :where(.bs-pop-header, .bs-pop-title) {
|
|
5877
5843
|
font-size: var(--bs-text-lg);
|
|
5878
|
-
font-weight: normal;
|
|
5879
|
-
line-height: var(--bs-leading-regular);
|
|
5880
5844
|
}
|
|
5881
|
-
.bs-modal-
|
|
5882
|
-
|
|
5883
|
-
|
|
5884
|
-
|
|
5885
|
-
|
|
5886
|
-
font-size: var(--bs-text-sm);
|
|
5887
|
-
font-weight: normal;
|
|
5888
|
-
line-height: var(--bs-leading-lg);
|
|
5889
|
-
}
|
|
5890
|
-
/* -- BODY -- */
|
|
5891
|
-
.bs-modal-body {
|
|
5892
|
-
flex: 1;
|
|
5893
|
-
overflow-y: auto;
|
|
5894
|
-
padding: 0 var(--bs-modal-padding);
|
|
5895
|
-
overscroll-behavior: contain;
|
|
5845
|
+
.bs-modal:where([data-size="lg"]) {
|
|
5846
|
+
--bs-pop-x-btn-right: var(--bs-space-6);
|
|
5847
|
+
--bs-pop-header-padding: var(--bs-modal-lg-padding) var(--bs-modal-lg-padding) var(--bs-modal-padding);
|
|
5848
|
+
--bs-pop-body-padding: var(--bs-modal-padding) var(--bs-modal-lg-padding);
|
|
5849
|
+
--bs-pop-footer-padding: var(--bs-space-4) var(--bs-modal-lg-padding);
|
|
5896
5850
|
}
|
|
5897
|
-
|
|
5898
|
-
|
|
5899
|
-
|
|
5900
|
-
}
|
|
5901
|
-
/* no header exists */
|
|
5902
|
-
.bs-modal:where(:not(:has(.bs-modal-header))) :where(.bs-modal-body) {
|
|
5903
|
-
padding-top: var(--bs-modal-padding);
|
|
5904
|
-
}
|
|
5905
|
-
/* large size, no header exists */
|
|
5906
|
-
.bs-modal:where([data-size="lg"]):where(:not(:has(.bs-modal-header))) :where(.bs-modal-body) {
|
|
5907
|
-
padding-top: var(--bs-modal-lg-padding);
|
|
5908
|
-
}
|
|
5909
|
-
/* no footer exists */
|
|
5910
|
-
.bs-modal:where(:not(:has(.bs-modal-footer))) :where(.bs-modal-body) {
|
|
5911
|
-
padding-bottom: var(--bs-modal-padding);
|
|
5912
|
-
}
|
|
5913
|
-
/* large size, no footer exists */
|
|
5914
|
-
.bs-modal:where([data-size="lg"]):where(:not(:has(.bs-modal-footer))) :where(.bs-modal-body) {
|
|
5915
|
-
padding-bottom: var(--bs-modal-lg-padding);
|
|
5916
|
-
}
|
|
5917
|
-
/* header border exists */
|
|
5918
|
-
.bs-modal:where(:has(.bs-modal-header[data-border="true"])) :where(.bs-modal-body) {
|
|
5919
|
-
padding-top: var(--bs-modal-padding);
|
|
5920
|
-
}
|
|
5921
|
-
/* footer border exists */
|
|
5922
|
-
.bs-modal:where(:has(.bs-modal-footer[data-border="true"])) :where(.bs-modal-body) {
|
|
5923
|
-
padding-bottom: var(--bs-modal-padding);
|
|
5924
|
-
}
|
|
5925
|
-
/* -- FOOTER -- */
|
|
5926
|
-
.bs-modal-footer {
|
|
5927
|
-
display: flex;
|
|
5928
|
-
justify-content: flex-end;
|
|
5929
|
-
align-items: center;
|
|
5930
|
-
gap: var(--bs-space-6);
|
|
5931
|
-
flex-shrink: 0;
|
|
5932
|
-
padding: var(--bs-space-6) var(--bs-modal-padding);
|
|
5933
|
-
}
|
|
5934
|
-
/* with border */
|
|
5935
|
-
.bs-modal-footer:where([data-border="true"]) {
|
|
5936
|
-
border-top: 1px solid var(--bs-border-base);
|
|
5937
|
-
padding: var(--bs-space-4) var(--bs-modal-padding);
|
|
5938
|
-
}
|
|
5939
|
-
/* large size, no border */
|
|
5940
|
-
.bs-modal:where([data-size="lg"]) :where(.bs-modal-footer) {
|
|
5941
|
-
padding: var(--bs-modal-lg-padding);
|
|
5942
|
-
}
|
|
5943
|
-
/* large size, with border */
|
|
5944
|
-
.bs-modal:where([data-size="lg"]) :where(.bs-modal-footer[data-border="true"]) {
|
|
5945
|
-
padding: var(--bs-space-4) var(--bs-modal-lg-padding);
|
|
5851
|
+
.bs-modal:where([data-size="lg"]:has(.bs-pop-header)) {
|
|
5852
|
+
--bs-pop-x-btn-right: var(--bs-space-6);
|
|
5853
|
+
--bs-pop-x-btn-top: var(--bs-space-6);
|
|
5946
5854
|
}
|
|
5947
5855
|
/* -- SIZING -- */
|
|
5948
5856
|
.bs-modal {
|
|
5949
|
-
|
|
5857
|
+
--bs-popover-width: calc(100dvw - 3rem);
|
|
5950
5858
|
max-height: calc(100dvh - 3rem);
|
|
5951
5859
|
}
|
|
5952
5860
|
@media (min-width: 752px) {
|
|
5953
5861
|
.bs-modal {
|
|
5862
|
+
--bs-popover-width: fit-content;
|
|
5954
5863
|
max-height: min(calc(100dvh - 3rem), 40.625rem);
|
|
5955
5864
|
}
|
|
5956
5865
|
|
|
5957
5866
|
.bs-modal:where([data-size="sm"]) {
|
|
5958
|
-
--bs-popover-width:
|
|
5867
|
+
--bs-popover-width: 21.25rem; /* 340px */
|
|
5959
5868
|
}
|
|
5960
5869
|
|
|
5961
5870
|
.bs-modal:where([data-size="md"]) {
|
|
5962
|
-
--bs-popover-width:
|
|
5871
|
+
--bs-popover-width: 35rem; /* 560px */
|
|
5963
5872
|
}
|
|
5964
5873
|
|
|
5965
5874
|
.bs-modal:where([data-size="lg"]) {
|
|
5966
|
-
--bs-popover-width:
|
|
5875
|
+
--bs-popover-width: 45.3125rem; /* 725px */
|
|
5967
5876
|
}
|
|
5968
5877
|
}
|
|
5969
5878
|
/* -- TRANSITIONS -- */
|
|
@@ -6017,84 +5926,76 @@ a.bs-text-button {
|
|
|
6017
5926
|
}
|
|
6018
5927
|
/* Toast */
|
|
6019
5928
|
.bs-toast {
|
|
5929
|
+
--bs-pop-header-padding: var(--bs-space-4);
|
|
5930
|
+
--bs-pop-body-padding: var(--bs-space-4);
|
|
5931
|
+
--bs-pop-footer-padding: var(--bs-space-2) var(--bs-space-4);
|
|
6020
5932
|
--bs-popover-width: min(23rem, calc(100dvw - 3rem));
|
|
6021
5933
|
--toast-transform: translate(0, calc(100% + 1.5rem));
|
|
6022
5934
|
--toast-variant-color: var(--bs-primary-base);
|
|
5935
|
+
--toast-icon: var(--toast-icon-base);
|
|
5936
|
+
--toast-icon-color: var(--bs-ink-primary);
|
|
5937
|
+
--toast-icon-base: url('https://cdn.apps.wwt.com/static/wwt-blue-steel-icons/icon-circle-info.svg');
|
|
5938
|
+
--toast-icon-warning: url('https://cdn.apps.wwt.com/static/wwt-blue-steel-icons/icon-warning.svg');
|
|
5939
|
+
--toast-icon-positive: url('https://cdn.apps.wwt.com/static/wwt-blue-steel-icons/icon-thumbs-up-stroke.svg');
|
|
6023
5940
|
background-color: var(--bs-bg-base-to-light);
|
|
6024
5941
|
border-radius: 0;
|
|
6025
5942
|
border-top: 4px solid var(--toast-variant-color);
|
|
6026
5943
|
box-shadow: var(--bs-shadow-contentMedium);
|
|
6027
5944
|
margin: 0;
|
|
6028
5945
|
order: var(--toast-order, 0);
|
|
6029
|
-
|
|
5946
|
+
}
|
|
5947
|
+
/* Toast Footer Mobile - Buttons will be stacked */
|
|
5948
|
+
.bs-toast :where(.bs-pop-footer) {
|
|
5949
|
+
align-items: stretch;
|
|
5950
|
+
flex-direction: column-reverse;
|
|
5951
|
+
gap: var(--bs-space-2);
|
|
6030
5952
|
}
|
|
6031
5953
|
@media (min-width: 440px) {
|
|
6032
5954
|
.bs-toast {
|
|
6033
5955
|
--toast-transform: translate(calc(100% + 1.5rem), 0);
|
|
6034
5956
|
}
|
|
5957
|
+
|
|
5958
|
+
.bs-toast :where(.bs-pop-footer) {
|
|
5959
|
+
align-items: center;
|
|
5960
|
+
flex-direction: row;
|
|
5961
|
+
gap: var(--bs-space-6);
|
|
5962
|
+
}
|
|
6035
5963
|
}
|
|
5964
|
+
/* Toast Variants */
|
|
6036
5965
|
.bs-toast:where([data-variant="warning"]) {
|
|
5966
|
+
--toast-icon: var(--toast-icon-warning);
|
|
5967
|
+
--toast-icon-color: var(--bs-ink-warning);
|
|
6037
5968
|
--toast-variant-color: var(--bs-warning-base);
|
|
6038
|
-
|
|
6039
|
-
.bs-toast-header-icon {
|
|
6040
|
-
color: var(--bs-ink-warning);
|
|
6041
|
-
}
|
|
6042
5969
|
}
|
|
6043
5970
|
.bs-toast:where([data-variant="positive"]) {
|
|
5971
|
+
--toast-icon: var(--toast-icon-positive);
|
|
5972
|
+
--toast-icon-color: var(--bs-ink-positive);
|
|
6044
5973
|
--toast-variant-color: var(--bs-positive-base);
|
|
6045
|
-
|
|
6046
|
-
.bs-toast-header-icon {
|
|
6047
|
-
color: var(--bs-ink-positive);
|
|
6048
|
-
}
|
|
6049
5974
|
}
|
|
6050
|
-
.bs-toast
|
|
6051
|
-
--toast-
|
|
6052
|
-
|
|
6053
|
-
.bs-toast-header-icon {
|
|
6054
|
-
color: var(--bs-ink-negative);
|
|
6055
|
-
}
|
|
5975
|
+
.dark :where(.bs-toast[data-variant="positive"]) {
|
|
5976
|
+
--toast-icon-color: var(--bs-positive-light);
|
|
5977
|
+
--toast-variant-color: var(--bs-positive-light);
|
|
6056
5978
|
}
|
|
6057
|
-
|
|
6058
|
-
|
|
6059
|
-
|
|
6060
|
-
color: var(--bs-
|
|
6061
|
-
display: flex;
|
|
6062
|
-
gap: 0.5rem;
|
|
6063
|
-
padding: 1rem;
|
|
6064
|
-
}
|
|
6065
|
-
.bs-toast :where(.bs-toast-header .bs-toast-header-icon) {
|
|
6066
|
-
color: var(--bs-ink-primary);
|
|
5979
|
+
.bs-toast:where([data-variant="negative"]) {
|
|
5980
|
+
--toast-icon: var(--toast-icon-warning);
|
|
5981
|
+
--toast-icon-color: var(--bs-negative-dark);
|
|
5982
|
+
--toast-variant-color: var(--bs-negative-dark);
|
|
6067
5983
|
}
|
|
6068
|
-
|
|
6069
|
-
|
|
6070
|
-
|
|
6071
|
-
|
|
5984
|
+
/* Toast Header - auto-add the icon */
|
|
5985
|
+
.bs-toast :where(.bs-pop-header:not(:has(.bs-pop-title, .bs-pop-subtitle)))::before,
|
|
5986
|
+
.bs-toast :where(.bs-pop-header .bs-pop-title)::before {
|
|
5987
|
+
display: block;
|
|
5988
|
+
content: '';
|
|
5989
|
+
background-color: var(--toast-icon-color);
|
|
5990
|
+
-webkit-mask: var(--toast-icon) center/contain no-repeat;
|
|
5991
|
+
mask: var(--toast-icon) center/contain no-repeat;
|
|
5992
|
+
flex-shrink: 0;
|
|
5993
|
+
height: var(--bs-space-4);
|
|
5994
|
+
width: var(--bs-space-4);
|
|
6072
5995
|
}
|
|
6073
5996
|
/* Toast Body */
|
|
6074
|
-
.bs-toast :where(.bs-
|
|
6075
|
-
border-bottom: 1px solid var(--bs-border-base);
|
|
5997
|
+
.bs-toast :where(.bs-pop-body) {
|
|
6076
5998
|
color: var(--bs-ink-light);
|
|
6077
|
-
padding-bottom: 1rem;
|
|
6078
|
-
padding-left: 1rem;
|
|
6079
|
-
padding-right: 1rem;
|
|
6080
|
-
}
|
|
6081
|
-
.bs-toast :where(:not(:has(.bs-toast-header)) .bs-toast-body) {
|
|
6082
|
-
padding-top: 1rem;
|
|
6083
|
-
}
|
|
6084
|
-
/* Toast Footer */
|
|
6085
|
-
.bs-toast :where(.bs-toast-footer) {
|
|
6086
|
-
/* Mobile - Buttons will be stacked */
|
|
6087
|
-
display: flex;
|
|
6088
|
-
flex-direction: row;
|
|
6089
|
-
gap: 1rem;
|
|
6090
|
-
justify-content: flex-end;
|
|
6091
|
-
padding-bottom: 0.5rem;
|
|
6092
|
-
padding-left: 1rem;
|
|
6093
|
-
padding-right: 1rem;
|
|
6094
|
-
padding-top: 0.5rem;
|
|
6095
|
-
}
|
|
6096
|
-
.bs-toast :where(.bs-toast-footer):where([data-stacked]:not([data-stacked="false"])) {
|
|
6097
|
-
flex-direction: column-reverse;
|
|
6098
5999
|
}
|
|
6099
6000
|
/* Vue Transition Styles */
|
|
6100
6001
|
.bs-toast-enter-active,
|