@salt-ds/core 1.30.0 → 1.31.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.
- package/css/salt-core.css +119 -28
- package/dist-cjs/accordion/Accordion.js +2 -0
- package/dist-cjs/accordion/Accordion.js.map +1 -1
- package/dist-cjs/accordion/AccordionContext.js +1 -0
- package/dist-cjs/accordion/AccordionContext.js.map +1 -1
- package/dist-cjs/accordion/AccordionHeader.css.js +1 -1
- package/dist-cjs/accordion/AccordionHeader.js +19 -5
- package/dist-cjs/accordion/AccordionHeader.js.map +1 -1
- package/dist-cjs/accordion/AccordionPanel.css.js +1 -1
- package/dist-cjs/accordion/AccordionPanel.js +4 -2
- package/dist-cjs/accordion/AccordionPanel.js.map +1 -1
- package/dist-cjs/combo-box/ComboBox.js +2 -0
- package/dist-cjs/combo-box/ComboBox.js.map +1 -1
- package/dist-cjs/dropdown/Dropdown.css.js +1 -1
- package/dist-cjs/dropdown/Dropdown.js +6 -1
- package/dist-cjs/dropdown/Dropdown.js.map +1 -1
- package/dist-cjs/file-drop-zone/FileDropZoneTrigger.js +1 -0
- package/dist-cjs/file-drop-zone/FileDropZoneTrigger.js.map +1 -1
- package/dist-cjs/menu/MenuPanel.css.js +1 -1
- package/dist-cjs/option/OptionList.css.js +1 -1
- package/dist-cjs/pill-input/PillInput.css.js +1 -1
- package/dist-cjs/pill-input/PillInput.js +4 -2
- package/dist-cjs/pill-input/PillInput.js.map +1 -1
- package/dist-es/accordion/Accordion.js +2 -0
- package/dist-es/accordion/Accordion.js.map +1 -1
- package/dist-es/accordion/AccordionContext.js +1 -0
- package/dist-es/accordion/AccordionContext.js.map +1 -1
- package/dist-es/accordion/AccordionHeader.css.js +1 -1
- package/dist-es/accordion/AccordionHeader.js +20 -6
- package/dist-es/accordion/AccordionHeader.js.map +1 -1
- package/dist-es/accordion/AccordionPanel.css.js +1 -1
- package/dist-es/accordion/AccordionPanel.js +4 -2
- package/dist-es/accordion/AccordionPanel.js.map +1 -1
- package/dist-es/combo-box/ComboBox.js +2 -0
- package/dist-es/combo-box/ComboBox.js.map +1 -1
- package/dist-es/dropdown/Dropdown.css.js +1 -1
- package/dist-es/dropdown/Dropdown.js +6 -1
- package/dist-es/dropdown/Dropdown.js.map +1 -1
- package/dist-es/file-drop-zone/FileDropZoneTrigger.js +1 -0
- package/dist-es/file-drop-zone/FileDropZoneTrigger.js.map +1 -1
- package/dist-es/menu/MenuPanel.css.js +1 -1
- package/dist-es/option/OptionList.css.js +1 -1
- package/dist-es/pill-input/PillInput.css.js +1 -1
- package/dist-es/pill-input/PillInput.js +4 -2
- package/dist-es/pill-input/PillInput.js.map +1 -1
- package/dist-types/accordion/Accordion.d.ts +4 -0
- package/dist-types/accordion/AccordionContext.d.ts +1 -0
- package/dist-types/dropdown/Dropdown.d.ts +6 -0
- package/dist-types/file-drop-zone/FileDropZoneTrigger.d.ts +2 -2
- package/dist-types/pill-input/PillInput.d.ts +3 -0
- package/package.json +1 -1
package/css/salt-core.css
CHANGED
|
@@ -51,10 +51,6 @@
|
|
|
51
51
|
}
|
|
52
52
|
.saltAccordionHeader .saltAccordionHeader-icon {
|
|
53
53
|
height: var(--salt-size-base);
|
|
54
|
-
transition: transform var(--salt-duration-perceptible) ease-in-out;
|
|
55
|
-
}
|
|
56
|
-
.saltAccordionHeader[aria-expanded=true] > .saltAccordionHeader-icon {
|
|
57
|
-
transform: rotate(90deg);
|
|
58
54
|
}
|
|
59
55
|
.saltAccordionHeader-error {
|
|
60
56
|
background: var(--salt-status-error-background);
|
|
@@ -101,11 +97,14 @@
|
|
|
101
97
|
overflow: hidden;
|
|
102
98
|
}
|
|
103
99
|
.saltAccordionPanel-content {
|
|
104
|
-
padding-left:
|
|
100
|
+
padding-left: var(--salt-spacing-100);
|
|
105
101
|
padding-right: var(--salt-spacing-100);
|
|
106
102
|
padding-top: var(--salt-spacing-300);
|
|
107
103
|
padding-bottom: var(--salt-spacing-300);
|
|
108
104
|
}
|
|
105
|
+
.saltAccordionPanel-indentedContent {
|
|
106
|
+
padding-left: calc(var(--salt-spacing-200) + var(--salt-size-icon));
|
|
107
|
+
}
|
|
109
108
|
@media (prefers-reduced-motion: reduce) {
|
|
110
109
|
.saltAccordionPanel {
|
|
111
110
|
transition: none;
|
|
@@ -898,9 +897,13 @@ a:focus .saltCard-interactable.saltCard-disabled {
|
|
|
898
897
|
|
|
899
898
|
/* src/dropdown/Dropdown.css */
|
|
900
899
|
.saltDropdown {
|
|
900
|
+
--dropdown-border: none;
|
|
901
901
|
--dropdown-borderColor: var(--salt-editable-borderColor);
|
|
902
902
|
--dropdown-color: var(--salt-content-primary-foreground);
|
|
903
903
|
--dropdown-cursor: var(--salt-selectable-cursor-hover);
|
|
904
|
+
--dropdown-borderStyle: var(--salt-editable-borderStyle);
|
|
905
|
+
--dropdown-outlineColor: var(--salt-focused-outlineColor);
|
|
906
|
+
--dropdown-borderWidth: var(--salt-size-border);
|
|
904
907
|
}
|
|
905
908
|
.saltDropdown {
|
|
906
909
|
all: unset;
|
|
@@ -910,8 +913,9 @@ a:focus .saltCard-interactable.saltCard-disabled {
|
|
|
910
913
|
background: var(--dropdown-background);
|
|
911
914
|
cursor: var(--dropdown-cursor);
|
|
912
915
|
min-height: var(--salt-size-base);
|
|
913
|
-
border
|
|
914
|
-
|
|
916
|
+
border: var(--dropdown-border);
|
|
917
|
+
border-radius: var(--salt-palette-corner-weak, 0);
|
|
918
|
+
display: inline-flex;
|
|
915
919
|
align-items: center;
|
|
916
920
|
padding: 0 var(--salt-spacing-100);
|
|
917
921
|
gap: var(--salt-spacing-100);
|
|
@@ -921,13 +925,25 @@ a:focus .saltCard-interactable.saltCard-disabled {
|
|
|
921
925
|
font-weight: var(--salt-text-fontWeight);
|
|
922
926
|
line-height: var(--salt-text-lineHeight);
|
|
923
927
|
letter-spacing: var(--salt-text-letterSpacing);
|
|
928
|
+
position: relative;
|
|
929
|
+
overflow: hidden;
|
|
924
930
|
}
|
|
925
931
|
.saltDropdown:hover {
|
|
926
932
|
--dropdown-borderColor: var(--salt-editable-borderColor-hover);
|
|
933
|
+
--dropdown-borderStyle: var(--salt-editable-borderStyle-hover);
|
|
934
|
+
--dropdown-background: var(--saltDropdown-background-hover, var(--dropdown-background-hover));
|
|
935
|
+
}
|
|
936
|
+
.saltDropdown:active {
|
|
937
|
+
--dropdown-background: var(--saltDropdown-background-active, var(--dropdown-background-active));
|
|
938
|
+
--dropdown-borderColor: var(--salt-editable-borderColor-active);
|
|
939
|
+
--dropdown-borderWidth: var(--salt-editable-borderWidth-active);
|
|
940
|
+
--dropdown-borderStyle: var(--salt-editable-borderStyle-active);
|
|
927
941
|
}
|
|
928
|
-
.saltDropdown:focus
|
|
942
|
+
.saltDropdown:focus {
|
|
929
943
|
outline: var(--salt-focused-outline);
|
|
930
|
-
--dropdown-borderColor: var(--salt-editable-borderColor-
|
|
944
|
+
--dropdown-borderColor: var(--salt-editable-borderColor-active);
|
|
945
|
+
--dropdown-borderWidth: var(--salt-editable-borderWidth-active);
|
|
946
|
+
--dropdown-borderStyle: var(--salt-editable-borderStyle-active);
|
|
931
947
|
}
|
|
932
948
|
.saltDropdown-content {
|
|
933
949
|
flex: 1;
|
|
@@ -942,45 +958,91 @@ a:focus .saltCard-interactable.saltCard-disabled {
|
|
|
942
958
|
}
|
|
943
959
|
.saltDropdown-primary {
|
|
944
960
|
--dropdown-background: var(--salt-editable-primary-background);
|
|
961
|
+
--dropdown-background-active: var(--salt-editable-primary-background-active);
|
|
962
|
+
--dropdown-background-hover: var(--salt-editable-primary-background-hover);
|
|
963
|
+
--dropdown-background-disabled: var(--salt-editable-primary-background-disabled);
|
|
964
|
+
--dropdown-background-readonly: var(--salt-editable-primary-background-readonly);
|
|
945
965
|
}
|
|
946
966
|
.saltDropdown-secondary {
|
|
947
967
|
--dropdown-background: var(--salt-editable-secondary-background);
|
|
948
|
-
|
|
949
|
-
|
|
950
|
-
--dropdown-background: var(--salt-editable-
|
|
968
|
+
--dropdown-background-active: var(--salt-editable-secondary-background-active);
|
|
969
|
+
--dropdown-background-hover: var(--salt-editable-secondary-background-active);
|
|
970
|
+
--dropdown-background-disabled: var(--salt-editable-secondary-background-disabled);
|
|
971
|
+
--dropdown-background-readonly: var(--salt-editable-secondary-background-readonly);
|
|
972
|
+
}
|
|
973
|
+
.saltDropdown:disabled,
|
|
974
|
+
.saltDropdown:disabled:active,
|
|
975
|
+
.saltDropdown:disabled:hover,
|
|
976
|
+
.saltDropdown:disabled:focus {
|
|
977
|
+
--dropdown-background: var(--dropdown-background-disabled);
|
|
951
978
|
--dropdown-borderColor: var(--salt-editable-borderColor-disabled);
|
|
952
979
|
--dropdown-color: var(--salt-content-primary-foreground-disabled);
|
|
953
980
|
--dropdown-cursor: var(--salt-selectable-cursor-disabled);
|
|
981
|
+
--dropdown-borderWidth: var(--salt-size-border);
|
|
954
982
|
}
|
|
955
983
|
.saltDropdown[aria-readonly=true] {
|
|
956
|
-
--dropdown-background: var(--salt-editable-primary-background-readonly);
|
|
957
984
|
--dropdown-borderColor: var(--salt-editable-borderColor-readonly);
|
|
958
985
|
--dropdown-color: var(--salt-content-primary-foreground);
|
|
959
986
|
--dropdown-cursor: var(--salt-selectable-cursor-readonly);
|
|
987
|
+
--dropdown-background: var(--dropdown-background-readonly);
|
|
988
|
+
--dropdown-borderWidth: var(--salt-size-border);
|
|
989
|
+
}
|
|
990
|
+
.saltDropdown[aria-readonly=true]:hover,
|
|
991
|
+
.saltDropdown[aria-readonly=true]:focus {
|
|
992
|
+
--dropdown-background: var(--dropdown-background-readonly);
|
|
993
|
+
--dropdown-borderColor: var(--salt-editable-borderColor-readonly);
|
|
960
994
|
}
|
|
961
|
-
.saltDropdown-error
|
|
995
|
+
.saltDropdown-error,
|
|
996
|
+
.saltDropdown-error:hover,
|
|
997
|
+
.saltDropdown-error:focus {
|
|
962
998
|
--dropdown-background: var(--salt-status-error-background);
|
|
963
999
|
--dropdown-borderColor: var(--salt-status-error-borderColor);
|
|
964
|
-
|
|
965
|
-
|
|
1000
|
+
--dropdown-background-active: var(--salt-status-error-background);
|
|
1001
|
+
--dropdown-background-hover: var(--salt-status-error-background);
|
|
1002
|
+
--dropdown-background-readonly: var(--salt-status-error-background);
|
|
966
1003
|
outline-color: var(--salt-status-error-borderColor);
|
|
967
|
-
--dropdown-borderColor: var(--salt-status-error-borderColor);
|
|
968
1004
|
}
|
|
969
|
-
.saltDropdown-warning
|
|
1005
|
+
.saltDropdown-warning,
|
|
1006
|
+
.saltDropdown-warning:hover,
|
|
1007
|
+
.saltDropdown-warning:focus {
|
|
970
1008
|
--dropdown-background: var(--salt-status-warning-background);
|
|
971
1009
|
--dropdown-borderColor: var(--salt-status-warning-borderColor);
|
|
972
|
-
|
|
973
|
-
|
|
1010
|
+
--dropdown-background-active: var(--salt-status-warning-background);
|
|
1011
|
+
--dropdown-background-hover: var(--salt-status-warning-background);
|
|
1012
|
+
--dropdown-background-readonly: var(--salt-status-warning-background);
|
|
974
1013
|
outline-color: var(--salt-status-warning-borderColor);
|
|
975
|
-
--dropdown-borderColor: var(--salt-status-warning-borderColor);
|
|
976
1014
|
}
|
|
977
|
-
.saltDropdown-success
|
|
1015
|
+
.saltDropdown-success,
|
|
1016
|
+
.saltDropdown-success:hover,
|
|
1017
|
+
.saltDropdown-success:focus {
|
|
978
1018
|
--dropdown-background: var(--salt-status-success-background);
|
|
979
1019
|
--dropdown-borderColor: var(--salt-status-success-borderColor);
|
|
980
|
-
|
|
981
|
-
|
|
1020
|
+
--dropdown-background-active: var(--salt-status-success-background);
|
|
1021
|
+
--dropdown-background-hover: var(--salt-status-success-background);
|
|
1022
|
+
--dropdown-background-readonly: var(--salt-status-success-background);
|
|
982
1023
|
outline-color: var(--salt-status-success-borderColor);
|
|
983
|
-
|
|
1024
|
+
}
|
|
1025
|
+
.saltDropdown-activationIndicator {
|
|
1026
|
+
left: 0;
|
|
1027
|
+
bottom: 0;
|
|
1028
|
+
width: 100%;
|
|
1029
|
+
position: absolute;
|
|
1030
|
+
border-bottom: var(--dropdown-borderWidth) var(--dropdown-borderStyle) var(--dropdown-borderColor);
|
|
1031
|
+
}
|
|
1032
|
+
.saltDropdown-bordered {
|
|
1033
|
+
--dropdown-border: var(--salt-size-border) var(--salt-container-borderStyle) var(--dropdown-borderColor);
|
|
1034
|
+
--dropdown-borderWidth: 0;
|
|
1035
|
+
}
|
|
1036
|
+
.saltDropdown-bordered.saltDropdown:focus,
|
|
1037
|
+
.saltDropdown-bordered:active {
|
|
1038
|
+
--dropdown-borderWidth: var(--salt-editable-borderWidth-active);
|
|
1039
|
+
}
|
|
1040
|
+
.saltDropdown-bordered[aria-readonly=true],
|
|
1041
|
+
.saltDropdown-bordered[aria-readonly=true]:hover,
|
|
1042
|
+
.saltDropdown[aria-readonly=true]:focus,
|
|
1043
|
+
.saltDropdown-bordered.saltDropdown:disabled,
|
|
1044
|
+
.saltDropdown-bordered.saltDropdown:disabled:hover {
|
|
1045
|
+
--dropdown-borderWidth: 0;
|
|
984
1046
|
}
|
|
985
1047
|
|
|
986
1048
|
/* src/file-drop-zone/FileDropZone.css */
|
|
@@ -1765,7 +1827,7 @@ a:focus .saltCard-interactable.saltCard-disabled {
|
|
|
1765
1827
|
overflow-y: auto;
|
|
1766
1828
|
min-width: 10em;
|
|
1767
1829
|
position: relative;
|
|
1768
|
-
z-index: var(--salt-zIndex-
|
|
1830
|
+
z-index: var(--salt-zIndex-flyover);
|
|
1769
1831
|
box-shadow: var(--salt-overlayable-shadow-popout);
|
|
1770
1832
|
box-sizing: border-box;
|
|
1771
1833
|
}
|
|
@@ -2165,6 +2227,7 @@ a:focus .saltCard-interactable.saltCard-disabled {
|
|
|
2165
2227
|
.saltOptionList {
|
|
2166
2228
|
background: var(--salt-container-primary-background);
|
|
2167
2229
|
border: var(--salt-size-border) var(--salt-selectable-borderStyle-selected) var(--salt-selectable-borderColor-selected);
|
|
2230
|
+
border-radius: var(--salt-palette-corner-weak, 0);
|
|
2168
2231
|
overflow: hidden;
|
|
2169
2232
|
overflow-y: auto;
|
|
2170
2233
|
position: relative;
|
|
@@ -2413,6 +2476,7 @@ a:focus .saltCard-interactable.saltCard-disabled {
|
|
|
2413
2476
|
|
|
2414
2477
|
/* src/pill-input/PillInput.css */
|
|
2415
2478
|
.saltPillInput {
|
|
2479
|
+
--input-border: none;
|
|
2416
2480
|
--input-borderColor: var(--salt-editable-borderColor);
|
|
2417
2481
|
--input-borderStyle: var(--salt-editable-borderStyle);
|
|
2418
2482
|
--input-outlineColor: var(--salt-focused-outlineColor);
|
|
@@ -2431,6 +2495,9 @@ a:focus .saltCard-interactable.saltCard-disabled {
|
|
|
2431
2495
|
position: relative;
|
|
2432
2496
|
width: 100%;
|
|
2433
2497
|
box-sizing: border-box;
|
|
2498
|
+
border-radius: var(--salt-palette-corner-weak, 0);
|
|
2499
|
+
border: var(--input-border);
|
|
2500
|
+
overflow: hidden;
|
|
2434
2501
|
}
|
|
2435
2502
|
.saltPillInput-truncate {
|
|
2436
2503
|
height: var(--salt-size-base);
|
|
@@ -2472,6 +2539,7 @@ a:focus .saltCard-interactable.saltCard-disabled {
|
|
|
2472
2539
|
--input-background-hover: var(--salt-status-error-background);
|
|
2473
2540
|
--input-borderColor: var(--salt-status-error-borderColor);
|
|
2474
2541
|
--input-outlineColor: var(--salt-status-error-borderColor);
|
|
2542
|
+
--input-background-readonly: var(--salt-status-error-background);
|
|
2475
2543
|
}
|
|
2476
2544
|
.saltPillInput-warning,
|
|
2477
2545
|
.saltPillInput-warning:hover {
|
|
@@ -2480,6 +2548,7 @@ a:focus .saltCard-interactable.saltCard-disabled {
|
|
|
2480
2548
|
--input-background-hover: var(--salt-status-warning-background);
|
|
2481
2549
|
--input-borderColor: var(--salt-status-warning-borderColor);
|
|
2482
2550
|
--input-outlineColor: var(--salt-status-warning-borderColor);
|
|
2551
|
+
--input-background-readonly: var(--salt-status-warning-background);
|
|
2483
2552
|
}
|
|
2484
2553
|
.saltPillInput-success,
|
|
2485
2554
|
.saltPillInput-success:hover {
|
|
@@ -2488,6 +2557,7 @@ a:focus .saltCard-interactable.saltCard-disabled {
|
|
|
2488
2557
|
--input-background-hover: var(--salt-status-success-background);
|
|
2489
2558
|
--input-borderColor: var(--salt-status-success-borderColor);
|
|
2490
2559
|
--input-outlineColor: var(--salt-status-success-borderColor);
|
|
2560
|
+
--input-background-readonly: var(--salt-status-success-background);
|
|
2491
2561
|
}
|
|
2492
2562
|
.saltPillInput-input {
|
|
2493
2563
|
background: none;
|
|
@@ -2517,7 +2587,8 @@ a:focus .saltCard-interactable.saltCard-disabled {
|
|
|
2517
2587
|
color: var(--salt-content-secondary-foreground);
|
|
2518
2588
|
font-weight: var(--salt-text-fontWeight-small);
|
|
2519
2589
|
}
|
|
2520
|
-
.saltPillInput-focused
|
|
2590
|
+
.saltPillInput-focused,
|
|
2591
|
+
.saltPillInput-focused:hover {
|
|
2521
2592
|
--input-borderColor: var(--input-outlineColor);
|
|
2522
2593
|
--input-borderWidth: var(--salt-editable-borderWidth-active);
|
|
2523
2594
|
outline: var(--saltInput-outline, var(--salt-focused-outlineWidth) var(--salt-focused-outlineStyle) var(--input-outlineColor));
|
|
@@ -2556,6 +2627,19 @@ a:focus .saltCard-interactable.saltCard-disabled {
|
|
|
2556
2627
|
position: absolute;
|
|
2557
2628
|
border-bottom: var(--input-borderWidth) var(--input-borderStyle) var(--input-borderColor);
|
|
2558
2629
|
}
|
|
2630
|
+
.saltPillInput.saltPillInput-bordered {
|
|
2631
|
+
--input-border: var(--salt-size-border) var(--salt-container-borderStyle) var(--input-borderColor);
|
|
2632
|
+
--input-borderWidth: 0;
|
|
2633
|
+
}
|
|
2634
|
+
.saltPillInput-bordered.saltPillInput-focused,
|
|
2635
|
+
.saltPillInput-bordered:active {
|
|
2636
|
+
--input-borderWidth: var(--salt-editable-borderWidth-active);
|
|
2637
|
+
}
|
|
2638
|
+
.saltPillInput-bordered.saltPillInput-readOnly,
|
|
2639
|
+
.saltPillInput-bordered.saltPillInput-disabled:hover,
|
|
2640
|
+
.saltPillInput-bordered.saltPillInput-disabled.saltPillInput-focused {
|
|
2641
|
+
--input-borderWidth: 0;
|
|
2642
|
+
}
|
|
2559
2643
|
.saltPillInput-startAdornmentContainer {
|
|
2560
2644
|
align-items: center;
|
|
2561
2645
|
display: inline-flex;
|
|
@@ -2589,6 +2673,7 @@ a:focus .saltCard-interactable.saltCard-disabled {
|
|
|
2589
2673
|
.saltPillInput-endAdornmentContainer > .saltButton {
|
|
2590
2674
|
--saltButton-padding: calc(var(--salt-spacing-50) - var(--salt-size-border));
|
|
2591
2675
|
--saltButton-height: calc(var(--salt-size-base) - var(--salt-spacing-100));
|
|
2676
|
+
--saltButton-borderRadius: var(--salt-palette-corner-weaker);
|
|
2592
2677
|
}
|
|
2593
2678
|
.saltPillInput-inputWrapper {
|
|
2594
2679
|
display: flex;
|
|
@@ -2602,6 +2687,12 @@ a:focus .saltCard-interactable.saltCard-disabled {
|
|
|
2602
2687
|
overflow-y: auto;
|
|
2603
2688
|
box-sizing: border-box;
|
|
2604
2689
|
}
|
|
2690
|
+
.saltPillInput-bordered > .saltPillInput-endAdornmentContainer {
|
|
2691
|
+
padding-top: calc(var(--salt-spacing-50) - var(--salt-size-border));
|
|
2692
|
+
}
|
|
2693
|
+
.saltPillInput-bordered > .saltPillInput-inputWrapper {
|
|
2694
|
+
padding: calc(var(--salt-spacing-50) - var(--salt-size-border)) 0;
|
|
2695
|
+
}
|
|
2605
2696
|
.saltPillInput-pillList {
|
|
2606
2697
|
display: contents;
|
|
2607
2698
|
}
|
|
@@ -3780,4 +3871,4 @@ label.saltText small,
|
|
|
3780
3871
|
padding-left: var(--salt-spacing-100);
|
|
3781
3872
|
}
|
|
3782
3873
|
|
|
3783
|
-
/* src/
|
|
3874
|
+
/* src/d617c351-7466-4472-a746-ef8092b8c14c.css */
|
|
@@ -119,6 +119,7 @@ const Accordion = React.forwardRef(
|
|
|
119
119
|
defaultExpanded,
|
|
120
120
|
expanded: expandedProp,
|
|
121
121
|
disabled,
|
|
122
|
+
indicatorSide = "left",
|
|
122
123
|
id: idProp,
|
|
123
124
|
onToggle,
|
|
124
125
|
status,
|
|
@@ -147,6 +148,7 @@ const Accordion = React.forwardRef(
|
|
|
147
148
|
value,
|
|
148
149
|
toggle,
|
|
149
150
|
expanded,
|
|
151
|
+
indicatorSide,
|
|
150
152
|
disabled: Boolean(disabled),
|
|
151
153
|
id: id != null ? id : "",
|
|
152
154
|
status
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Accordion.js","sources":["../src/accordion/Accordion.tsx"],"sourcesContent":["import { ComponentPropsWithoutRef, forwardRef, SyntheticEvent } from \"react\";\nimport { clsx } from \"clsx\";\nimport { AccordionContext } from \"./AccordionContext\";\nimport { useWindow } from \"@salt-ds/window\";\nimport { useComponentCssInjection } from \"@salt-ds/styles\";\nimport { makePrefixer, useControlled, useId } from \"../utils\";\nimport accordionCss from \"./Accordion.css\";\nexport interface AccordionProps extends ComponentPropsWithoutRef<\"div\"> {\n /**\n * AccordionGroup value.\n */\n value: string;\n /**\n * Whether the accordion is expanded.\n */\n expanded?: boolean;\n /**\n * Whether the accordion is expanded by default.\n */\n defaultExpanded?: boolean;\n /**\n * Callback fired when the accordion is toggled.\n */\n onToggle?: (event: SyntheticEvent<HTMLButtonElement>) => void;\n /**\n * Whether the accordion is disabled.\n */\n disabled?: boolean;\n /**\n * The status of the accordion.\n */\n status?: \"error\" | \"warning\" | \"success\";\n}\n\nconst withBaseName = makePrefixer(\"saltAccordion\");\n\nexport const Accordion = forwardRef<HTMLDivElement, AccordionProps>(\n function Accordion(props, ref) {\n const {\n className,\n defaultExpanded,\n expanded: expandedProp,\n disabled,\n id: idProp,\n onToggle,\n status,\n value,\n ...rest\n } = props;\n\n const id = useId(idProp);\n const targetWindow = useWindow();\n useComponentCssInjection({\n testId: \"salt-accordion\",\n css: accordionCss,\n window: targetWindow,\n });\n\n const [expanded, setExpanded] = useControlled({\n controlled: expandedProp,\n default: Boolean(defaultExpanded),\n name: \"Accordion\",\n state: \"expanded\",\n });\n\n const toggle = (event: SyntheticEvent<HTMLButtonElement>) => {\n setExpanded((prev) => !prev);\n onToggle?.(event);\n };\n\n return (\n <AccordionContext.Provider\n value={{\n value,\n toggle,\n expanded,\n disabled: Boolean(disabled),\n id: id ?? \"\",\n status,\n }}\n >\n <div\n ref={ref}\n className={clsx(\n withBaseName(),\n { [withBaseName(status ?? \"\")]: status },\n className\n )}\n {...rest}\n />\n </AccordionContext.Provider>\n );\n }\n);\n"],"names":["makePrefixer","forwardRef","Accordion","useId","useWindow","useComponentCssInjection","accordionCss","useControlled","jsx","AccordionContext","clsx"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"Accordion.js","sources":["../src/accordion/Accordion.tsx"],"sourcesContent":["import { ComponentPropsWithoutRef, forwardRef, SyntheticEvent } from \"react\";\nimport { clsx } from \"clsx\";\nimport { AccordionContext } from \"./AccordionContext\";\nimport { useWindow } from \"@salt-ds/window\";\nimport { useComponentCssInjection } from \"@salt-ds/styles\";\nimport { makePrefixer, useControlled, useId } from \"../utils\";\nimport accordionCss from \"./Accordion.css\";\nexport interface AccordionProps extends ComponentPropsWithoutRef<\"div\"> {\n /**\n * AccordionGroup value.\n */\n value: string;\n /**\n * Whether the accordion is expanded.\n */\n expanded?: boolean;\n /**\n * Whether the accordion is expanded by default.\n */\n defaultExpanded?: boolean;\n /**\n * Side to align the Accordion's indicator. Defaults to `left`.\n */\n indicatorSide?: \"left\" | \"right\";\n /**\n * Callback fired when the accordion is toggled.\n */\n onToggle?: (event: SyntheticEvent<HTMLButtonElement>) => void;\n /**\n * Whether the accordion is disabled.\n */\n disabled?: boolean;\n /**\n * The status of the accordion.\n */\n status?: \"error\" | \"warning\" | \"success\";\n}\n\nconst withBaseName = makePrefixer(\"saltAccordion\");\n\nexport const Accordion = forwardRef<HTMLDivElement, AccordionProps>(\n function Accordion(props, ref) {\n const {\n className,\n defaultExpanded,\n expanded: expandedProp,\n disabled,\n indicatorSide = \"left\",\n id: idProp,\n onToggle,\n status,\n value,\n ...rest\n } = props;\n\n const id = useId(idProp);\n const targetWindow = useWindow();\n useComponentCssInjection({\n testId: \"salt-accordion\",\n css: accordionCss,\n window: targetWindow,\n });\n\n const [expanded, setExpanded] = useControlled({\n controlled: expandedProp,\n default: Boolean(defaultExpanded),\n name: \"Accordion\",\n state: \"expanded\",\n });\n\n const toggle = (event: SyntheticEvent<HTMLButtonElement>) => {\n setExpanded((prev) => !prev);\n onToggle?.(event);\n };\n\n return (\n <AccordionContext.Provider\n value={{\n value,\n toggle,\n expanded,\n indicatorSide,\n disabled: Boolean(disabled),\n id: id ?? \"\",\n status,\n }}\n >\n <div\n ref={ref}\n className={clsx(\n withBaseName(),\n { [withBaseName(status ?? \"\")]: status },\n className\n )}\n {...rest}\n />\n </AccordionContext.Provider>\n );\n }\n);\n"],"names":["makePrefixer","forwardRef","Accordion","useId","useWindow","useComponentCssInjection","accordionCss","useControlled","jsx","AccordionContext","clsx"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAsCA,MAAM,YAAA,GAAeA,0BAAa,eAAe,CAAA,CAAA;AAE1C,MAAM,SAAY,GAAAC,gBAAA;AAAA,EACvB,SAASC,UAAU,CAAA,KAAA,EAAO,GAAK,EAAA;AAC7B,IAAM,MAAA;AAAA,MACJ,SAAA;AAAA,MACA,eAAA;AAAA,MACA,QAAU,EAAA,YAAA;AAAA,MACV,QAAA;AAAA,MACA,aAAgB,GAAA,MAAA;AAAA,MAChB,EAAI,EAAA,MAAA;AAAA,MACJ,QAAA;AAAA,MACA,MAAA;AAAA,MACA,KAAA;AAAA,MACG,GAAA,IAAA;AAAA,KACD,GAAA,KAAA,CAAA;AAEJ,IAAM,MAAA,EAAA,GAAKC,YAAM,MAAM,CAAA,CAAA;AACvB,IAAA,MAAM,eAAeC,gBAAU,EAAA,CAAA;AAC/B,IAAyBC,+BAAA,CAAA;AAAA,MACvB,MAAQ,EAAA,gBAAA;AAAA,MACR,GAAK,EAAAC,WAAA;AAAA,MACL,MAAQ,EAAA,YAAA;AAAA,KACT,CAAA,CAAA;AAED,IAAA,MAAM,CAAC,QAAA,EAAU,WAAW,CAAA,GAAIC,2BAAc,CAAA;AAAA,MAC5C,UAAY,EAAA,YAAA;AAAA,MACZ,OAAA,EAAS,QAAQ,eAAe,CAAA;AAAA,MAChC,IAAM,EAAA,WAAA;AAAA,MACN,KAAO,EAAA,UAAA;AAAA,KACR,CAAA,CAAA;AAED,IAAM,MAAA,MAAA,GAAS,CAAC,KAA6C,KAAA;AAC3D,MAAY,WAAA,CAAA,CAAC,IAAS,KAAA,CAAC,IAAI,CAAA,CAAA;AAC3B,MAAW,QAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,QAAA,CAAA,KAAA,CAAA,CAAA;AAAA,KACb,CAAA;AAEA,IACE,uBAAAC,cAAA,CAACC,kCAAiB,QAAjB,EAAA;AAAA,MACC,KAAO,EAAA;AAAA,QACL,KAAA;AAAA,QACA,MAAA;AAAA,QACA,QAAA;AAAA,QACA,aAAA;AAAA,QACA,QAAA,EAAU,QAAQ,QAAQ,CAAA;AAAA,QAC1B,IAAI,EAAM,IAAA,IAAA,GAAA,EAAA,GAAA,EAAA;AAAA,QACV,MAAA;AAAA,OACF;AAAA,MAEA,QAAC,kBAAAD,cAAA,CAAA,KAAA,EAAA;AAAA,QACC,GAAA;AAAA,QACA,SAAW,EAAAE,SAAA;AAAA,UACT,YAAa,EAAA;AAAA,UACb,EAAE,CAAC,YAAA,CAAa,MAAU,IAAA,IAAA,GAAA,MAAA,GAAA,EAAE,IAAI,MAAO,EAAA;AAAA,UACvC,SAAA;AAAA,SACF;AAAA,QACC,GAAG,IAAA;AAAA,OACN,CAAA;AAAA,KACF,CAAA,CAAA;AAAA,GAEJ;AACF;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AccordionContext.js","sources":["../src/accordion/AccordionContext.ts"],"sourcesContent":["import { SyntheticEvent, useContext } from \"react\";\nimport { createContext } from \"../utils\";\n\nexport interface AccordionContextValue {\n value: string;\n expanded: boolean;\n toggle: (event: SyntheticEvent<HTMLButtonElement>) => void;\n disabled: boolean;\n id: string;\n status?: \"error\" | \"warning\" | \"success\";\n}\n\nexport const AccordionContext = createContext<AccordionContextValue>(\n \"AccordionContext\",\n {\n value: \"\",\n expanded: false,\n toggle: () => undefined,\n disabled: false,\n id: \"\",\n }\n);\n\nexport function useAccordion() {\n return useContext(AccordionContext);\n}\n"],"names":["createContext","useContext"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"AccordionContext.js","sources":["../src/accordion/AccordionContext.ts"],"sourcesContent":["import { SyntheticEvent, useContext } from \"react\";\nimport { createContext } from \"../utils\";\n\nexport interface AccordionContextValue {\n value: string;\n expanded: boolean;\n toggle: (event: SyntheticEvent<HTMLButtonElement>) => void;\n disabled: boolean;\n indicatorSide: \"left\" | \"right\";\n id: string;\n status?: \"error\" | \"warning\" | \"success\";\n}\n\nexport const AccordionContext = createContext<AccordionContextValue>(\n \"AccordionContext\",\n {\n value: \"\",\n expanded: false,\n toggle: () => undefined,\n disabled: false,\n indicatorSide: \"left\",\n id: \"\",\n }\n);\n\nexport function useAccordion() {\n return useContext(AccordionContext);\n}\n"],"names":["createContext","useContext"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAaO,MAAM,gBAAmB,GAAAA,2BAAA;AAAA,EAC9B,kBAAA;AAAA,EACA;AAAA,IACE,KAAO,EAAA,EAAA;AAAA,IACP,QAAU,EAAA,KAAA;AAAA,IACV,QAAQ,MAAM,KAAA,CAAA;AAAA,IACd,QAAU,EAAA,KAAA;AAAA,IACV,aAAe,EAAA,MAAA;AAAA,IACf,EAAI,EAAA,EAAA;AAAA,GACN;AACF,EAAA;AAEO,SAAS,YAAe,GAAA;AAC7B,EAAA,OAAOC,iBAAW,gBAAgB,CAAA,CAAA;AACpC;;;;;"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var css_248z = ".saltAccordionHeader {\n display: flex;\n gap: var(--salt-spacing-100);\n padding: var(--salt-spacing-50) var(--salt-spacing-100);\n border: 0;\n width: 100%;\n min-height: calc(var(--salt-size-base) + var(--salt-spacing-100));\n background: var(--salt-actionable-secondary-background);\n font-size: var(--salt-text-fontSize);\n line-height: var(--salt-text-lineHeight);\n font-family: var(--salt-text-fontFamily);\n color: var(--salt-content-primary-foreground);\n font-weight: var(--salt-text-fontWeight-strong);\n text-align: left;\n cursor: var(--salt-actionable-cursor-hover);\n box-sizing: border-box;\n}\n\n.saltAccordionHeader:focus-visible {\n outline: var(--salt-focused-outline);\n outline-offset: calc(-1 * var(--salt-focused-outlineWidth));\n}\n\n.saltAccordionHeader:disabled {\n background: var(--salt-actionable-secondary-background);\n color: var(--salt-content-primary-foreground-disabled);\n cursor: var(--salt-actionable-cursor-disabled);\n}\n\n.saltAccordionHeader-content {\n padding: var(--salt-spacing-75) 0;\n width: 100%;\n box-sizing: border-box;\n}\n\n.saltAccordionHeader .saltAccordionHeader-icon {\n height: var(--salt-size-base);\n
|
|
3
|
+
var css_248z = ".saltAccordionHeader {\n display: flex;\n gap: var(--salt-spacing-100);\n padding: var(--salt-spacing-50) var(--salt-spacing-100);\n border: 0;\n width: 100%;\n min-height: calc(var(--salt-size-base) + var(--salt-spacing-100));\n background: var(--salt-actionable-secondary-background);\n font-size: var(--salt-text-fontSize);\n line-height: var(--salt-text-lineHeight);\n font-family: var(--salt-text-fontFamily);\n color: var(--salt-content-primary-foreground);\n font-weight: var(--salt-text-fontWeight-strong);\n text-align: left;\n cursor: var(--salt-actionable-cursor-hover);\n box-sizing: border-box;\n}\n\n.saltAccordionHeader:focus-visible {\n outline: var(--salt-focused-outline);\n outline-offset: calc(-1 * var(--salt-focused-outlineWidth));\n}\n\n.saltAccordionHeader:disabled {\n background: var(--salt-actionable-secondary-background);\n color: var(--salt-content-primary-foreground-disabled);\n cursor: var(--salt-actionable-cursor-disabled);\n}\n\n.saltAccordionHeader-content {\n padding: var(--salt-spacing-75) 0;\n width: 100%;\n box-sizing: border-box;\n}\n\n.saltAccordionHeader .saltAccordionHeader-icon {\n height: var(--salt-size-base);\n}\n\n.saltAccordionHeader-error {\n background: var(--salt-status-error-background);\n}\n\n.saltAccordionHeader-error:focus-visible {\n outline-color: var(--salt-status-error-borderColor);\n}\n\n.saltAccordionHeader-warning {\n background: var(--salt-status-warning-background);\n}\n\n.saltAccordionHeader-warning:focus-visible {\n outline-color: var(--salt-status-warning-borderColor);\n}\n\n.saltAccordionHeader-success {\n background: var(--salt-status-success-background);\n}\n\n.saltAccordionHeader-success:focus-visible {\n outline-color: var(--salt-status-error-borderColor);\n}\n\n.saltAccordionHeader .saltAccordionHeader-statusIndicator {\n height: var(--salt-size-base);\n margin-left: auto;\n}\n";
|
|
4
4
|
|
|
5
5
|
module.exports = css_248z;
|
|
6
6
|
//# sourceMappingURL=AccordionHeader.css.js.map
|
|
@@ -111,9 +111,21 @@ var AccordionContext = require('./AccordionContext.js');
|
|
|
111
111
|
var AccordionHeader$1 = require('./AccordionHeader.css.js');
|
|
112
112
|
|
|
113
113
|
const withBaseName = makePrefixer.makePrefixer("saltAccordionHeader");
|
|
114
|
+
function ExpansionIcon({ expanded }) {
|
|
115
|
+
if (expanded) {
|
|
116
|
+
return /* @__PURE__ */ jsxRuntime.jsx(icons.ChevronUpIcon, {
|
|
117
|
+
"aria-hidden": true,
|
|
118
|
+
className: withBaseName("icon")
|
|
119
|
+
});
|
|
120
|
+
}
|
|
121
|
+
return /* @__PURE__ */ jsxRuntime.jsx(icons.ChevronDownIcon, {
|
|
122
|
+
"aria-hidden": true,
|
|
123
|
+
className: withBaseName("icon")
|
|
124
|
+
});
|
|
125
|
+
}
|
|
114
126
|
const AccordionHeader = React.forwardRef(function AccordionHeader2(props, ref) {
|
|
115
127
|
const { children, className, onClick, ...rest } = props;
|
|
116
|
-
const { value, expanded, toggle, disabled, id, status } = AccordionContext.useAccordion();
|
|
128
|
+
const { value, expanded, toggle, indicatorSide, disabled, id, status } = AccordionContext.useAccordion();
|
|
117
129
|
const targetWindow = window.useWindow();
|
|
118
130
|
styles.useComponentCssInjection({
|
|
119
131
|
testId: "salt-accordion-header",
|
|
@@ -140,17 +152,19 @@ const AccordionHeader = React.forwardRef(function AccordionHeader2(props, ref) {
|
|
|
140
152
|
type: "button",
|
|
141
153
|
...rest,
|
|
142
154
|
children: [
|
|
143
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
144
|
-
|
|
145
|
-
className: withBaseName("icon")
|
|
155
|
+
indicatorSide === "left" && /* @__PURE__ */ jsxRuntime.jsx(ExpansionIcon, {
|
|
156
|
+
expanded
|
|
146
157
|
}),
|
|
147
|
-
/* @__PURE__ */ jsxRuntime.jsx("
|
|
158
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", {
|
|
148
159
|
className: withBaseName("content"),
|
|
149
160
|
children
|
|
150
161
|
}),
|
|
151
162
|
status && /* @__PURE__ */ jsxRuntime.jsx(StatusIndicator.StatusIndicator, {
|
|
152
163
|
className: withBaseName("statusIndicator"),
|
|
153
164
|
status
|
|
165
|
+
}),
|
|
166
|
+
indicatorSide === "right" && /* @__PURE__ */ jsxRuntime.jsx(ExpansionIcon, {
|
|
167
|
+
expanded
|
|
154
168
|
})
|
|
155
169
|
]
|
|
156
170
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AccordionHeader.js","sources":["../src/accordion/AccordionHeader.tsx"],"sourcesContent":["import {\n ComponentPropsWithoutRef,\n forwardRef,\n MouseEvent,\n ReactNode,\n} from \"react\";\nimport { clsx } from \"clsx\";\nimport { StatusIndicator } from \"../status-indicator\";\nimport {
|
|
1
|
+
{"version":3,"file":"AccordionHeader.js","sources":["../src/accordion/AccordionHeader.tsx"],"sourcesContent":["import {\n ComponentPropsWithoutRef,\n forwardRef,\n MouseEvent,\n ReactNode,\n} from \"react\";\nimport { clsx } from \"clsx\";\nimport { StatusIndicator } from \"../status-indicator\";\nimport { ChevronDownIcon, ChevronUpIcon } from \"@salt-ds/icons\";\nimport { useWindow } from \"@salt-ds/window\";\nimport { useComponentCssInjection } from \"@salt-ds/styles\";\n\nimport { makePrefixer } from \"../utils\";\n\nimport { useAccordion } from \"./AccordionContext\";\nimport accordionHeaderCss from \"./AccordionHeader.css\";\n\nexport interface AccordionHeaderProps\n extends ComponentPropsWithoutRef<\"button\"> {\n /**\n * The content of the Accordion Header\n */\n children?: ReactNode;\n}\n\nconst withBaseName = makePrefixer(\"saltAccordionHeader\");\n\nfunction ExpansionIcon({ expanded }: { expanded: boolean }) {\n if (expanded) {\n return <ChevronUpIcon aria-hidden className={withBaseName(\"icon\")} />;\n }\n\n return <ChevronDownIcon aria-hidden className={withBaseName(\"icon\")} />;\n}\n\nexport const AccordionHeader = forwardRef<\n HTMLButtonElement,\n AccordionHeaderProps\n>(function AccordionHeader(props, ref) {\n const { children, className, onClick, ...rest } = props;\n const { value, expanded, toggle, indicatorSide, disabled, id, status } =\n useAccordion();\n\n const targetWindow = useWindow();\n useComponentCssInjection({\n testId: \"salt-accordion-header\",\n css: accordionHeaderCss,\n window: targetWindow,\n });\n\n const handleClick = (event: MouseEvent<HTMLButtonElement>) => {\n toggle(event);\n onClick?.(event);\n };\n\n return (\n <button\n ref={ref}\n className={clsx(\n withBaseName(),\n { [withBaseName(status ?? \"\")]: status },\n className\n )}\n disabled={disabled}\n onClick={handleClick}\n aria-expanded={expanded}\n id={`${id}-header`}\n aria-controls={`${id}-panel`}\n value={value}\n type=\"button\"\n {...rest}\n >\n {indicatorSide === \"left\" && <ExpansionIcon expanded={expanded} />}\n <span className={withBaseName(\"content\")}>{children}</span>\n {status && (\n <StatusIndicator\n className={withBaseName(\"statusIndicator\")}\n status={status}\n />\n )}\n {indicatorSide === \"right\" && <ExpansionIcon expanded={expanded} />}\n </button>\n );\n});\n"],"names":["makePrefixer","jsx","ChevronUpIcon","ChevronDownIcon","forwardRef","AccordionHeader","useAccordion","useWindow","useComponentCssInjection","accordionHeaderCss","jsxs","clsx","StatusIndicator"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAyBA,MAAM,YAAA,GAAeA,0BAAa,qBAAqB,CAAA,CAAA;AAEvD,SAAS,aAAA,CAAc,EAAE,QAAA,EAAmC,EAAA;AAC1D,EAAA,IAAI,QAAU,EAAA;AACZ,IAAA,uBAAQC,cAAA,CAAAC,mBAAA,EAAA;AAAA,MAAc,aAAW,EAAA,IAAA;AAAA,MAAC,SAAA,EAAW,aAAa,MAAM,CAAA;AAAA,KAAG,CAAA,CAAA;AAAA,GACrE;AAEA,EAAA,uBAAQD,cAAA,CAAAE,qBAAA,EAAA;AAAA,IAAgB,aAAW,EAAA,IAAA;AAAA,IAAC,SAAA,EAAW,aAAa,MAAM,CAAA;AAAA,GAAG,CAAA,CAAA;AACvE,CAAA;AAEO,MAAM,eAAkB,GAAAC,gBAAA,CAG7B,SAASC,gBAAAA,CAAgB,OAAO,GAAK,EAAA;AACrC,EAAA,MAAM,EAAE,QAAA,EAAU,SAAW,EAAA,OAAA,EAAA,GAAY,MAAS,GAAA,KAAA,CAAA;AAClD,EAAM,MAAA,EAAE,OAAO,QAAU,EAAA,MAAA,EAAQ,eAAe,QAAU,EAAA,EAAA,EAAI,MAAO,EAAA,GACnEC,6BAAa,EAAA,CAAA;AAEf,EAAA,MAAM,eAAeC,gBAAU,EAAA,CAAA;AAC/B,EAAyBC,+BAAA,CAAA;AAAA,IACvB,MAAQ,EAAA,uBAAA;AAAA,IACR,GAAK,EAAAC,iBAAA;AAAA,IACL,MAAQ,EAAA,YAAA;AAAA,GACT,CAAA,CAAA;AAED,EAAM,MAAA,WAAA,GAAc,CAAC,KAAyC,KAAA;AAC5D,IAAA,MAAA,CAAO,KAAK,CAAA,CAAA;AACZ,IAAU,OAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,OAAA,CAAA,KAAA,CAAA,CAAA;AAAA,GACZ,CAAA;AAEA,EAAA,uBACGC,eAAA,CAAA,QAAA,EAAA;AAAA,IACC,GAAA;AAAA,IACA,SAAW,EAAAC,SAAA;AAAA,MACT,YAAa,EAAA;AAAA,MACb,EAAE,CAAC,YAAA,CAAa,MAAU,IAAA,IAAA,GAAA,MAAA,GAAA,EAAE,IAAI,MAAO,EAAA;AAAA,MACvC,SAAA;AAAA,KACF;AAAA,IACA,QAAA;AAAA,IACA,OAAS,EAAA,WAAA;AAAA,IACT,eAAe,EAAA,QAAA;AAAA,IACf,IAAI,CAAG,EAAA,EAAA,CAAA,OAAA,CAAA;AAAA,IACP,iBAAe,CAAG,EAAA,EAAA,CAAA,MAAA,CAAA;AAAA,IAClB,KAAA;AAAA,IACA,IAAK,EAAA,QAAA;AAAA,IACJ,GAAG,IAAA;AAAA,IAEH,QAAA,EAAA;AAAA,MAAA,aAAA,KAAkB,0BAAWV,cAAA,CAAA,aAAA,EAAA;AAAA,QAAc,QAAA;AAAA,OAAoB,CAAA;AAAA,sBAC/DA,cAAA,CAAA,MAAA,EAAA;AAAA,QAAK,SAAA,EAAW,aAAa,SAAS,CAAA;AAAA,QAAI,QAAA;AAAA,OAAS,CAAA;AAAA,MACnD,0BACEA,cAAA,CAAAW,+BAAA,EAAA;AAAA,QACC,SAAA,EAAW,aAAa,iBAAiB,CAAA;AAAA,QACzC,MAAA;AAAA,OACF,CAAA;AAAA,MAED,aAAA,KAAkB,2BAAYX,cAAA,CAAA,aAAA,EAAA;AAAA,QAAc,QAAA;AAAA,OAAoB,CAAA;AAAA,KAAA;AAAA,GACnE,CAAA,CAAA;AAEJ,CAAC;;;;"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var css_248z = ".saltAccordionPanel {\n display: grid;\n transition: grid-template-rows var(--salt-duration-perceptible) ease-in-out, opacity var(--salt-duration-perceptible) ease-in-out, visibility var(--salt-duration-perceptible) ease-in-out;\n}\n\n.saltAccordionPanel[aria-hidden=\"true\"] {\n grid-template-rows: 0fr;\n opacity: 0;\n visibility: hidden;\n}\n\n.saltAccordionPanel {\n grid-template-rows: 1fr;\n opacity: 1;\n visibility: visible;\n}\n\n.saltAccordionPanel-inner {\n overflow: hidden;\n}\n\n.saltAccordionPanel-content {\n padding-left:
|
|
3
|
+
var css_248z = ".saltAccordionPanel {\n display: grid;\n transition: grid-template-rows var(--salt-duration-perceptible) ease-in-out, opacity var(--salt-duration-perceptible) ease-in-out, visibility var(--salt-duration-perceptible) ease-in-out;\n}\n\n.saltAccordionPanel[aria-hidden=\"true\"] {\n grid-template-rows: 0fr;\n opacity: 0;\n visibility: hidden;\n}\n\n.saltAccordionPanel {\n grid-template-rows: 1fr;\n opacity: 1;\n visibility: visible;\n}\n\n.saltAccordionPanel-inner {\n overflow: hidden;\n}\n\n.saltAccordionPanel-content {\n padding-left: var(--salt-spacing-100);\n padding-right: var(--salt-spacing-100);\n padding-top: var(--salt-spacing-300);\n padding-bottom: var(--salt-spacing-300);\n}\n\n.saltAccordionPanel-indentedContent {\n padding-left: calc(var(--salt-spacing-200) + var(--salt-size-icon));\n}\n\n@media (prefers-reduced-motion: reduce) {\n .saltAccordionPanel {\n transition: none;\n }\n}\n";
|
|
4
4
|
|
|
5
5
|
module.exports = css_248z;
|
|
6
6
|
//# sourceMappingURL=AccordionPanel.css.js.map
|
|
@@ -120,7 +120,7 @@ const AccordionPanel = React.forwardRef(
|
|
|
120
120
|
css: AccordionPanel$1,
|
|
121
121
|
window: targetWindow
|
|
122
122
|
});
|
|
123
|
-
const { id, expanded } = AccordionContext.useAccordion();
|
|
123
|
+
const { id, expanded, indicatorSide } = AccordionContext.useAccordion();
|
|
124
124
|
return /* @__PURE__ */ jsxRuntime.jsx("div", {
|
|
125
125
|
ref,
|
|
126
126
|
className: clsx.clsx(withBaseName(), className),
|
|
@@ -133,7 +133,9 @@ const AccordionPanel = React.forwardRef(
|
|
|
133
133
|
children: /* @__PURE__ */ jsxRuntime.jsx("div", {
|
|
134
134
|
className: withBaseName("inner"),
|
|
135
135
|
children: /* @__PURE__ */ jsxRuntime.jsx("div", {
|
|
136
|
-
className: withBaseName("content"),
|
|
136
|
+
className: clsx.clsx(withBaseName("content"), {
|
|
137
|
+
[withBaseName("indentedContent")]: indicatorSide === "left"
|
|
138
|
+
}),
|
|
137
139
|
children
|
|
138
140
|
})
|
|
139
141
|
})
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AccordionPanel.js","sources":["../src/accordion/AccordionPanel.tsx"],"sourcesContent":["import { ComponentPropsWithoutRef, forwardRef, ReactNode } from \"react\";\nimport { useWindow } from \"@salt-ds/window\";\nimport { useComponentCssInjection } from \"@salt-ds/styles\";\nimport { clsx } from \"clsx\";\n\nimport { makePrefixer } from \"../utils\";\nimport { useAccordion } from \"./AccordionContext\";\nimport accordionPanelCss from \"./AccordionPanel.css\";\n\nexport interface AccordionPanelProps extends ComponentPropsWithoutRef<\"div\"> {\n /**\n * The content of the Accordion Panel\n */\n children?: ReactNode;\n}\n\nconst withBaseName = makePrefixer(\"saltAccordionPanel\");\n\nexport const AccordionPanel = forwardRef<HTMLDivElement, AccordionPanelProps>(\n function AccordionPanel(props, ref) {\n const { children, className, ...rest } = props;\n\n const targetWindow = useWindow();\n useComponentCssInjection({\n testId: \"salt-accordion-panel\",\n css: accordionPanelCss,\n window: targetWindow,\n });\n\n const { id, expanded } = useAccordion();\n\n return (\n <div\n ref={ref}\n className={clsx(withBaseName(), className)}\n role=\"region\"\n id={`${id}-panel`}\n aria-labelledby={`${id}-header`}\n aria-hidden={!expanded ? \"true\" : undefined}\n hidden={!expanded}\n {...rest}\n >\n <div className={withBaseName(\"inner\")}>\n <div
|
|
1
|
+
{"version":3,"file":"AccordionPanel.js","sources":["../src/accordion/AccordionPanel.tsx"],"sourcesContent":["import { ComponentPropsWithoutRef, forwardRef, ReactNode } from \"react\";\nimport { useWindow } from \"@salt-ds/window\";\nimport { useComponentCssInjection } from \"@salt-ds/styles\";\nimport { clsx } from \"clsx\";\n\nimport { makePrefixer } from \"../utils\";\nimport { useAccordion } from \"./AccordionContext\";\nimport accordionPanelCss from \"./AccordionPanel.css\";\n\nexport interface AccordionPanelProps extends ComponentPropsWithoutRef<\"div\"> {\n /**\n * The content of the Accordion Panel\n */\n children?: ReactNode;\n}\n\nconst withBaseName = makePrefixer(\"saltAccordionPanel\");\n\nexport const AccordionPanel = forwardRef<HTMLDivElement, AccordionPanelProps>(\n function AccordionPanel(props, ref) {\n const { children, className, ...rest } = props;\n\n const targetWindow = useWindow();\n useComponentCssInjection({\n testId: \"salt-accordion-panel\",\n css: accordionPanelCss,\n window: targetWindow,\n });\n\n const { id, expanded, indicatorSide } = useAccordion();\n\n return (\n <div\n ref={ref}\n className={clsx(withBaseName(), className)}\n role=\"region\"\n id={`${id}-panel`}\n aria-labelledby={`${id}-header`}\n aria-hidden={!expanded ? \"true\" : undefined}\n hidden={!expanded}\n {...rest}\n >\n <div className={withBaseName(\"inner\")}>\n <div\n className={clsx(withBaseName(\"content\"), {\n [withBaseName(\"indentedContent\")]: indicatorSide === \"left\",\n })}\n >\n {children}\n </div>\n </div>\n </div>\n );\n }\n);\n"],"names":["makePrefixer","forwardRef","AccordionPanel","useWindow","useComponentCssInjection","accordionPanelCss","useAccordion","jsx","clsx"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgBA,MAAM,YAAA,GAAeA,0BAAa,oBAAoB,CAAA,CAAA;AAE/C,MAAM,cAAiB,GAAAC,gBAAA;AAAA,EAC5B,SAASC,eAAe,CAAA,KAAA,EAAO,GAAK,EAAA;AAClC,IAAA,MAAM,EAAE,QAAA,EAAU,SAAc,EAAA,GAAA,IAAA,EAAS,GAAA,KAAA,CAAA;AAEzC,IAAA,MAAM,eAAeC,gBAAU,EAAA,CAAA;AAC/B,IAAyBC,+BAAA,CAAA;AAAA,MACvB,MAAQ,EAAA,sBAAA;AAAA,MACR,GAAK,EAAAC,gBAAA;AAAA,MACL,MAAQ,EAAA,YAAA;AAAA,KACT,CAAA,CAAA;AAED,IAAA,MAAM,EAAE,EAAA,EAAI,QAAU,EAAA,aAAA,KAAkBC,6BAAa,EAAA,CAAA;AAErD,IAAA,uBACGC,cAAA,CAAA,KAAA,EAAA;AAAA,MACC,GAAA;AAAA,MACA,SAAW,EAAAC,SAAA,CAAK,YAAa,EAAA,EAAG,SAAS,CAAA;AAAA,MACzC,IAAK,EAAA,QAAA;AAAA,MACL,IAAI,CAAG,EAAA,EAAA,CAAA,MAAA,CAAA;AAAA,MACP,mBAAiB,CAAG,EAAA,EAAA,CAAA,OAAA,CAAA;AAAA,MACpB,aAAA,EAAa,CAAC,QAAA,GAAW,MAAS,GAAA,KAAA,CAAA;AAAA,MAClC,QAAQ,CAAC,QAAA;AAAA,MACR,GAAG,IAAA;AAAA,MAEJ,QAAC,kBAAAD,cAAA,CAAA,KAAA,EAAA;AAAA,QAAI,SAAA,EAAW,aAAa,OAAO,CAAA;AAAA,QAClC,QAAC,kBAAAA,cAAA,CAAA,KAAA,EAAA;AAAA,UACC,SAAW,EAAAC,SAAA,CAAK,YAAa,CAAA,SAAS,CAAG,EAAA;AAAA,YACvC,CAAC,YAAA,CAAa,iBAAiB,CAAA,GAAI,aAAkB,KAAA,MAAA;AAAA,WACtD,CAAA;AAAA,UAEA,QAAA;AAAA,SACH,CAAA;AAAA,OACF,CAAA;AAAA,KACF,CAAA,CAAA;AAAA,GAEJ;AACF;;;;"}
|
|
@@ -142,6 +142,7 @@ const ComboBox = React.forwardRef(function ComboBox2(props, ref) {
|
|
|
142
142
|
defaultValue,
|
|
143
143
|
valueToString = ListControlState.defaultValueToString,
|
|
144
144
|
truncate,
|
|
145
|
+
bordered = false,
|
|
145
146
|
...rest
|
|
146
147
|
} = props;
|
|
147
148
|
const targetWindow = window.useWindow();
|
|
@@ -436,6 +437,7 @@ const ComboBox = React.forwardRef(function ComboBox2(props, ref) {
|
|
|
436
437
|
inputRef,
|
|
437
438
|
value: valueState,
|
|
438
439
|
ref: handleRef,
|
|
440
|
+
bordered,
|
|
439
441
|
...getReferenceProps({
|
|
440
442
|
onBlur: handleBlur,
|
|
441
443
|
onFocus: handleFocus,
|