@planningcenter/tapestry 4.4.0-rc.2 → 4.4.0-rc.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (51) hide show
  1. package/dist/components/DataTable/DataTable.d.ts.map +1 -1
  2. package/dist/components/DataTable/DataTable.js +4 -4
  3. package/dist/components/DataTable/DataTable.js.map +1 -1
  4. package/dist/components/DataTable/ViewSettingsToggle.d.ts +19 -0
  5. package/dist/components/DataTable/ViewSettingsToggle.d.ts.map +1 -0
  6. package/dist/components/DataTable/ViewSettingsToggle.js +32 -0
  7. package/dist/components/DataTable/ViewSettingsToggle.js.map +1 -0
  8. package/dist/components/dropdown/Dropdown.d.ts.map +1 -1
  9. package/dist/components/dropdown/Dropdown.js +14 -4
  10. package/dist/components/dropdown/Dropdown.js.map +1 -1
  11. package/dist/components/internal/filterable-list-box/FilterableListBox.d.ts +95 -0
  12. package/dist/components/internal/filterable-list-box/FilterableListBox.d.ts.map +1 -0
  13. package/dist/components/internal/filterable-list-box/FilterableListBox.js +86 -0
  14. package/dist/components/internal/filterable-list-box/FilterableListBox.js.map +1 -0
  15. package/dist/components/internal/filterable-list-box/index.d.ts +4 -0
  16. package/dist/components/internal/filterable-list-box/index.d.ts.map +1 -0
  17. package/dist/components/page-header/index.js +1 -1
  18. package/dist/components/sidenav/index.js +1 -1
  19. package/dist/packages/tapestry-wc/dist/components/{p-B44Tfu4T.js → p-8HUAbvqM.js} +3 -3
  20. package/dist/packages/tapestry-wc/dist/components/{p-B44Tfu4T.js.map → p-8HUAbvqM.js.map} +1 -1
  21. package/dist/packages/tapestry-wc/dist/components/{p-B1DDWns3.js → p-BUA1lBjE.js} +2 -2
  22. package/dist/packages/tapestry-wc/dist/components/{p-B1DDWns3.js.map → p-BUA1lBjE.js.map} +1 -1
  23. package/dist/packages/tapestry-wc/dist/components/{p-BuJcUcG0.js → p-BsYEHzfH.js} +3 -3
  24. package/dist/packages/tapestry-wc/dist/components/{p-BuJcUcG0.js.map → p-BsYEHzfH.js.map} +1 -1
  25. package/dist/packages/tapestry-wc/dist/components/{p-DNl8TKDo.js → p-CHx6cgt5.js} +3 -3
  26. package/dist/packages/tapestry-wc/dist/components/{p-DNl8TKDo.js.map → p-CHx6cgt5.js.map} +1 -1
  27. package/dist/packages/tapestry-wc/dist/components/{p-knol55bm.js → p-DpGMDplX.js} +2 -2
  28. package/dist/packages/tapestry-wc/dist/components/{p-knol55bm.js.map → p-DpGMDplX.js.map} +1 -1
  29. package/dist/packages/tapestry-wc/dist/components/tds-page-header-nav.js +2 -2
  30. package/dist/packages/tapestry-wc/dist/components/tds-page-header-nav.js.map +1 -1
  31. package/dist/packages/tapestry-wc/dist/components/tds-page-header.js +3 -3
  32. package/dist/packages/tapestry-wc/dist/components/tds-page-header.js.map +1 -1
  33. package/dist/packages/tapestry-wc/dist/components/tds-sidenav-item.js +3 -3
  34. package/dist/packages/tapestry-wc/dist/components/tds-sidenav-item.js.map +1 -1
  35. package/dist/packages/tapestry-wc/dist/components/tds-sidenav-responsive-header.js +2 -2
  36. package/dist/packages/tapestry-wc/dist/components/tds-sidenav-responsive-header.js.map +1 -1
  37. package/dist/packages/tapestry-wc/dist/components/tds-sidenav-section.js +3 -3
  38. package/dist/packages/tapestry-wc/dist/components/tds-sidenav-section.js.map +1 -1
  39. package/dist/packages/tapestry-wc/dist/components/tds-sidenav.js +5 -5
  40. package/dist/packages/tapestry-wc/dist/components/tds-sidenav.js.map +1 -1
  41. package/dist/reactRender.css +505 -247
  42. package/dist/reactRender.css.map +1 -1
  43. package/dist/reactRenderLegacy.css +505 -247
  44. package/dist/reactRenderLegacy.css.map +1 -1
  45. package/dist/unstable.css +685 -427
  46. package/dist/unstable.css.map +1 -1
  47. package/package.json +4 -4
  48. package/dist/components/DataTable/ColumnVisibilityToggle.d.ts +0 -17
  49. package/dist/components/DataTable/ColumnVisibilityToggle.d.ts.map +0 -1
  50. package/dist/components/DataTable/ColumnVisibilityToggle.js +0 -15
  51. package/dist/components/DataTable/ColumnVisibilityToggle.js.map +0 -1
package/dist/unstable.css CHANGED
@@ -671,9 +671,7 @@
671
671
  border-top:1px solid var(--tds-data-table-border-color);
672
672
  }
673
673
 
674
- .tds-data-table-column-visibility{
675
- flex:0 1 12rem;
676
- inline-size:12rem;
674
+ .tds-data-table-view-settings-toggle{
677
675
  margin-inline-start:auto;
678
676
  }
679
677
 
@@ -1031,6 +1029,63 @@
1031
1029
  }
1032
1030
  }
1033
1031
 
1032
+ .tds-data-table-popover-trigger[aria-expanded="true"]{
1033
+ color:var(--tds-btn-color-active);
1034
+ cursor:pointer;
1035
+ background-color:var(--tds-btn-bg-active);
1036
+ border-color:var(--tds-btn-border-color-active);
1037
+ }
1038
+
1039
+ .tds-data-table-popover-trigger[aria-expanded="true"]:hover,.tds-data-table-popover-trigger[aria-expanded="true"]:focus-visible{
1040
+ color:var(--tds-btn-color-active);
1041
+ background-color:var(--tds-btn-bg-active);
1042
+ border-color:var(--tds-btn-border-color-active);
1043
+ }
1044
+
1045
+ .tds-data-table-popover{
1046
+ inline-size:16rem;
1047
+ max-block-size:inherit;
1048
+ padding:var(--t-spacing-1);
1049
+ overflow:auto;
1050
+ overscroll-behavior:none;
1051
+ -webkit-user-select:none;
1052
+ -moz-user-select:none;
1053
+ user-select:none;
1054
+ outline:0;
1055
+ scrollbar-color:#0004 var(--t-surface-color-card);
1056
+ scrollbar-width:thin;
1057
+ background:var(--t-surface-color-card);
1058
+ background-clip:padding-box;
1059
+ border:1px solid var(--t-border-color);
1060
+ border-radius:var(--t-border-radius);
1061
+ box-shadow:0 10px 15px -3px hsl(0 0% 0% / .05), 0 4px 6px -4px hsl(0 0% 0% / .05);
1062
+ }
1063
+
1064
+ .tds-data-table-popover[data-entering]{
1065
+ animation:tds-data-table-popover var(--t-duration-300) var(--t-ease-out);
1066
+ }
1067
+
1068
+ .tds-data-table-popover[data-exiting]{
1069
+ animation:tds-data-table-popover var(--t-duration-200) var(--t-ease-in) reverse;
1070
+ }
1071
+
1072
+ .tds-data-table-popover[data-entering],.tds-data-table-popover[data-exiting]{
1073
+ will-change:opacity, transform;
1074
+ }
1075
+
1076
+ @keyframes tds-data-table-popover{
1077
+ from{
1078
+ opacity:0;
1079
+ transform:translateY(-8px);
1080
+ }
1081
+ }
1082
+
1083
+ @media (prefers-reduced-motion: reduce){
1084
+ .tds-data-table-popover[data-entering],.tds-data-table-popover[data-exiting]{
1085
+ animation:none;
1086
+ }
1087
+ }
1088
+
1034
1089
  .tds-pagination{
1035
1090
  --tds-pagination-background-color:var(--t-surface-color-canvas);
1036
1091
  --tds-pagination-page-background-color-hover:var(--t-fill-color-neutral-100);
@@ -1855,94 +1910,11 @@
1855
1910
  [data-padding-inline-xl="7"]{ padding-inline:var(--t-spacing-7); }
1856
1911
  }
1857
1912
 
1858
- .tds-combo-box{
1859
- --tds-combo-box-button-offset:4px;
1860
- --tds-combo-box-search-icon-size:var(--tds-field-font-size);
1861
- --tds-combo-box-search-icon-color:var(--t-icon-color-dim);
1862
- }
1863
-
1864
- .tds-combo-box[data-open] .tds-combo-box-button > svg{
1865
- transform:rotate(.5turn);
1866
- }
1867
-
1868
- .tds-combo-box[data-disabled]{
1869
- --tds-combo-box-search-icon-color:var(--t-form-color-disabled);
1870
- }
1871
-
1872
- .tds-combo-box--lg{
1873
- --tds-combo-box-button-offset:5px;
1874
- }
1875
- .tds-combo-box-field:has([readonly]) .tds-combo-box-button{
1876
- display:none;
1877
- }
1878
- .tds-combo-box-field:has(.tds-combo-box-search-icon){
1879
- position:relative;
1880
- }
1881
- .tds-combo-box-search-icon{
1882
- position:absolute;
1883
- inset-block:0;
1884
- inset-inline-start:var(--tds-field-padding-inline);
1885
- inline-size:var(--tds-combo-box-search-icon-size);
1886
- block-size:var(--tds-combo-box-search-icon-size);
1887
- margin-block:auto;
1888
- color:var(--tds-combo-box-search-icon-color);
1889
- pointer-events:none;
1890
- }
1891
- .tds-combo-box-search-icon + .tds-combo-box-input{
1892
- padding-inline-start:calc(
1893
- var(--tds-field-padding-inline) * 2 + var(--tds-combo-box-search-icon-size)
1894
- );
1895
- }
1896
-
1897
- .tds-combo-box-field:has([readonly]){
1898
- --tds-combo-box-search-icon-color:var(--t-form-color-readonly);
1899
- }
1900
- .tds-combo-box-input{
1901
- display:flex;
1902
- flex:1;
1903
- align-items:center;
1904
- padding-block:var(--tds-field-padding-block);
1905
- padding-inline:var(--tds-field-padding-inline);
1906
- font-family:inherit;
1907
- font-size:inherit;
1908
- color:inherit;
1909
- outline:0;
1910
- background:transparent;
1911
- border:0;
1912
- }
1913
- .tds-combo-box-input:has( + .tds-combo-box-button){
1914
- padding-inline-end:0;
1915
- }
1916
- .tds-combo-box-input::-moz-placeholder{
1917
- color:var(--tds-field-placeholder-color);
1918
- -moz-user-select:none;
1919
- user-select:none;
1920
- }
1921
- .tds-combo-box-input::placeholder{
1922
- color:var(--tds-field-placeholder-color);
1923
- -webkit-user-select:none;
1924
- -moz-user-select:none;
1925
- user-select:none;
1926
- }
1927
- .tds-combo-box-button{
1928
- flex-shrink:0;
1929
- align-self:center;
1930
- inline-size:calc(var(--tds-field-min-height) - (var(--tds-combo-box-button-offset) * 2));
1931
- block-size:calc(var(--tds-field-min-height) - (var(--tds-combo-box-button-offset) * 2));
1932
- padding:0;
1933
- margin-inline-end:var(--tds-combo-box-button-offset);
1934
- }
1935
- .tds-combo-box-button > svg{
1936
- inline-size:var(--tds-field-font-size);
1937
- block-size:var(--tds-field-font-size);
1938
- transition:transform var(--t-duration-300) var(--t-ease-in-out);
1939
- }
1940
- .tds-combo-box-popover{
1941
- width:var(--trigger-width);
1942
- max-block-size:inherit;
1913
+ .tds-dropdown-popover{
1914
+ min-inline-size:10rem;
1915
+ max-inline-size:24rem;
1943
1916
  padding:var(--t-spacing-1);
1944
1917
  overflow:auto;
1945
- scroll-behavior:smooth;
1946
1918
  overscroll-behavior:none;
1947
1919
  -webkit-user-select:none;
1948
1920
  -moz-user-select:none;
@@ -1956,17 +1928,17 @@
1956
1928
  border-radius:var(--t-border-radius);
1957
1929
  box-shadow:0 10px 15px -3px hsl(0 0% 0% / .05), 0 4px 6px -4px hsl(0 0% 0% / .05);
1958
1930
  }
1959
- .tds-combo-box-popover[data-entering]{
1960
- animation:tds-combo-box-popover var(--t-duration-300) var(--t-ease-out);
1931
+ .tds-dropdown-popover[data-entering]{
1932
+ animation:tds-dropdown-popover var(--t-duration-300) var(--t-ease-out);
1961
1933
  }
1962
- .tds-combo-box-popover[data-exiting]{
1963
- animation:tds-combo-box-popover var(--t-duration-200) var(--t-ease-in) reverse;
1934
+ .tds-dropdown-popover[data-exiting]{
1935
+ animation:tds-dropdown-popover var(--t-duration-200) var(--t-ease-in) reverse;
1964
1936
  }
1965
- .tds-combo-box-popover[data-entering],.tds-combo-box-popover[data-exiting]{
1937
+ .tds-dropdown-popover[data-entering],.tds-dropdown-popover[data-exiting]{
1966
1938
  will-change:opacity, transform;
1967
1939
  }
1968
1940
 
1969
- @keyframes tds-combo-box-popover{
1941
+ @keyframes tds-dropdown-popover{
1970
1942
  from{
1971
1943
  opacity:0;
1972
1944
  transform:translateY(-8px);
@@ -1974,199 +1946,126 @@
1974
1946
  }
1975
1947
 
1976
1948
  @media (prefers-reduced-motion: reduce){
1977
- .tds-combo-box-popover[data-entering],.tds-combo-box-popover[data-exiting]{
1949
+ .tds-dropdown-popover[data-entering],.tds-dropdown-popover[data-exiting]{
1978
1950
  animation:none;
1979
1951
  }
1980
-
1981
- .tds-combo-box-button > svg{
1982
- transition:none;
1983
- }
1984
1952
  }
1985
- .tds-combo-box-list{
1986
- padding:0;
1987
- margin:0;
1953
+
1954
+ .tds-dropdown-popover [role="menu"]{
1955
+ outline:0;
1988
1956
  }
1989
- .tds-combo-box-list-item{
1990
- display:block;
1957
+ .tds-dropdown-item{
1958
+ --tds-dropdown-item-color:var(--t-text-color);
1959
+ --tds-dropdown-item-row-gap:0;
1960
+ --tds-dropdown-item-column-gap:var(--t-spacing-1);
1961
+
1962
+ display:flex;
1963
+ row-gap:var(--tds-dropdown-item-row-gap);
1964
+ -moz-column-gap:var(--tds-dropdown-item-column-gap);
1965
+ column-gap:var(--tds-dropdown-item-column-gap);
1966
+ align-items:center;
1991
1967
  padding-block:var(--t-spacing-1);
1992
1968
  padding-inline:var(--t-spacing-1-half);
1993
- overflow:hidden;
1994
- text-overflow:ellipsis;
1995
1969
  font-size:1rem;
1996
- color:var(--t-text-color);
1997
- white-space:nowrap;
1970
+ color:var(--tds-dropdown-item-color);
1971
+ text-decoration:none;
1998
1972
  cursor:default;
1973
+ outline:0;
1999
1974
  border-radius:var(--t-border-radius);
2000
1975
  }
2001
- .tds-combo-box-list-item[data-hovered]:not([data-disabled]),.tds-combo-box-list-item[data-focus-visible]{
1976
+ .tds-dropdown-item[data-hovered]:not([data-disabled]),.tds-dropdown-item[data-focus-visible]{
2002
1977
  background:var(--t-fill-color-neutral-070);
2003
1978
  }
2004
- .tds-combo-box-list-item[data-selected]{
2005
- background:var(--t-fill-color-button-interaction-ghost-active);
2006
- }
2007
- .tds-combo-box-list-item[data-pressed]:not([data-disabled]){
1979
+ .tds-dropdown-item[data-pressed]:not([data-disabled]){
2008
1980
  background:var(--t-fill-color-neutral-060);
2009
1981
  }
2010
- .tds-combo-box-list-item[data-disabled]{
2011
- color:var(--t-form-color-disabled);
1982
+ .tds-dropdown-item[data-disabled]{
1983
+ --tds-dropdown-item-color:var(--t-form-color-disabled);
1984
+
2012
1985
  cursor:not-allowed;
2013
1986
  }
2014
- .tds-combo-box-list-item[data-disabled][data-hovered]{
2015
- background:transparent;
2016
- }
2017
- .tds-combo-box-empty-state{
2018
- position:relative;
2019
- min-block-size:var(--t-spacing-3);
2020
- padding-block:var(--t-spacing-1);
2021
- padding-inline:var(--t-spacing-2);
2022
- font-size:var(--t-font-size-md);
2023
- color:var(--t-text-color-secondary);
1987
+
1988
+ .tds-dropdown-item--destructive{
1989
+ --tds-dropdown-item-color:var(--t-text-color-status-error);
2024
1990
  }
2025
- .tds-combo-box-load-more{
2026
- position:relative;
2027
- min-block-size:calc(var(--t-spacing-3) + var(--t-spacing-1));
1991
+
1992
+ .tds-dropdown-item--staff-only{
1993
+ --tds-dropdown-item-color:var(--t-fill-color-product-staff);
1994
+ }
1995
+ a.tds-dropdown-item:is(:hover, :active){
1996
+ color:var(--tds-dropdown-item-color);
1997
+ }
1998
+ .tds-dropdown-item [slot="prefix"],
1999
+ .tds-dropdown-item [slot="suffix"]{
2000
+ flex-shrink:0;
2028
2001
  }
2029
2002
 
2030
- .tds-combo-box-empty-state,
2031
- .tds-combo-box-load-more{
2032
- --tds-loading-spinner-visibility:visible;
2033
- --tds-loading-spinner-animation-play-state:running;
2003
+ .tds-dropdown-item [slot="label"]{
2004
+ flex:1;
2005
+ min-width:0;
2006
+ overflow:hidden;
2007
+ text-overflow:ellipsis;
2008
+ white-space:nowrap;
2034
2009
  }
2035
- .tds-combo-box-list-section:not(:first-child){
2036
- margin-block-start:var(--t-spacing-half);
2037
- }
2038
- .tds-combo-box-section-header{
2039
- padding-block:var(--t-spacing-1);
2040
- padding-inline:var(--t-spacing-half);
2010
+
2011
+ .tds-dropdown-item [slot="description"]{
2041
2012
  font-size:var(--t-font-size-sm);
2042
- font-weight:var(--t-font-weight-semibold);
2043
2013
  color:var(--t-text-color-secondary);
2044
2014
  }
2045
2015
 
2046
- .tds-field{
2047
- --tds-field-label-color:var(--t-text-color);
2048
- --tds-field-label-cursor:default;
2049
- --tds-field-label-font-size:var(--t-font-size-md);
2050
- --tds-field-description-color:var(--t-text-color-secondary);
2051
- --tds-field-description-cursor:text;
2052
- --tds-field-description-font-size:var(--t-font-size-sm);
2053
- --tds-field-description-line-height:1.35;
2054
- --tds-field-description-invalid-icon-display:none;
2055
- --tds-field-border-color:var(--t-form-border-color);
2056
- --tds-field-border-color-hover:var(--t-form-border-color-hover);
2057
- --tds-field-border-color-active:var(--t-form-border-color-focus);
2058
- --tds-field-background-color:var(--t-form-background-color);
2059
- --tds-field-color:var(--t-form-color);
2060
- --tds-field-placeholder-color:var(--t-form-placeholder-color);
2061
- --tds-field-font-size:var(--t-font-size-md);
2062
- --tds-field-min-height:var(--t-container-size-md);
2063
- --tds-field-padding-block:6px;
2064
- --tds-field-padding-inline:var(--t-spacing-1);
2016
+ .tds-dropdown-item:has([slot="description"]){
2017
+ --tds-dropdown-item-row-gap:var(--t-spacing-half);
2018
+ --tds-dropdown-item-column-gap:0;
2065
2019
 
2066
- position:relative;
2067
- display:flex;
2068
- flex-direction:column;
2069
- gap:var(--t-spacing-half);
2020
+ display:grid;
2021
+ grid-template-areas:"prefix label suffix" ". description .";
2022
+ grid-template-columns:auto 1fr auto;
2070
2023
  }
2071
2024
 
2072
- .tds-field:has(input:disabled):not([data-disabled]),.tds-field:has(select:disabled):not([data-disabled]),.tds-field:has(textarea:disabled):not([data-disabled]){
2073
- --tds-field-label-color:var(--t-form-color-disabled);
2074
- --tds-field-label-cursor:not-allowed;
2075
- --tds-field-description-color:var(--t-form-color-disabled);
2076
- --tds-field-description-cursor:not-allowed;
2077
- }
2078
-
2079
- .tds-field:has([required],[aria-required="true"]) .tds-field-label::after{
2080
- margin-left:.25ch;
2081
- color:var(--t-text-color-status-error);
2082
- content:"*" / "";
2083
- }
2084
-
2085
- .tds-field:has([aria-invalid="true"],:user-invalid){
2086
- --tds-field-description-color:var(--t-text-color-status-error);
2087
- --tds-field-description-invalid-icon-display:inline-block;
2088
- }
2089
-
2090
- .tds-field[data-required] .tds-field-label::after{
2091
- margin-left:.25ch;
2092
- color:var(--t-text-color-status-error);
2093
- content:"*" / "";
2094
- }
2095
-
2096
- .tds-field:has([aria-invalid="true"]),.tds-field[data-invalid]{
2097
- --tds-field-border-color:var(--t-form-border-color-error);
2098
- --tds-field-border-color-hover:var(--t-form-border-color-error-hover);
2099
- --tds-field-border-color-active:var(--t-form-border-color-error-hover);
2100
- --tds-field-background-color:var(--t-form-background-color-error);
2101
- --tds-field-description-color:var(--t-text-color-status-error);
2102
- --tds-field-description-invalid-icon-display:inline-block;
2103
- }
2104
-
2105
- .tds-field[data-disabled]{
2106
- --tds-field-border-color:var(--t-form-border-color-disabled);
2107
- --tds-field-background-color:var(--t-form-background-color-disabled);
2108
- --tds-field-color:var(--t-form-color-disabled);
2109
- --tds-field-placeholder-color:var(--t-form-color-disabled);
2110
- }
2111
-
2112
- .tds-field[data-disabled] .tds-field-control{
2113
- cursor:not-allowed;
2114
- }
2115
-
2116
- .tds-field:has(input[type="checkbox"]),.tds-field:has(tds-indeterminate),.tds-field:has(input[type="radio"]){
2117
- --tds-field-label-cursor:pointer;
2118
-
2119
- display:inline-grid;
2120
- grid-template-columns:auto;
2121
- grid-auto-columns:1fr;
2122
- row-gap:var(--t-spacing-fourth);
2123
- -moz-column-gap:var(--t-spacing-1);
2124
- column-gap:var(--t-spacing-1);
2125
- }
2126
-
2127
- :is(.tds-field:has(input[type="checkbox"]),.tds-field:has(tds-indeterminate),.tds-field:has(input[type="radio"])):has(:disabled){
2128
- --tds-field-label-cursor:not-allowed;
2129
- }
2130
-
2131
- :is(.tds-field:has(input[type="checkbox"]),.tds-field:has(tds-indeterminate),.tds-field:has(input[type="radio"])) input[type="checkbox"],:is(.tds-field:has(input[type="checkbox"]),.tds-field:has(tds-indeterminate),.tds-field:has(input[type="radio"])) input[type="radio"],:is(.tds-field:has(input[type="checkbox"]),.tds-field:has(tds-indeterminate),.tds-field:has(input[type="radio"])) tds-indeterminate{
2132
- grid-row:1;
2133
- grid-column:1;
2134
- align-self:center;
2135
- }
2025
+ .tds-dropdown-item:has([slot="description"]) [slot="prefix"]{
2026
+ grid-area:prefix;
2027
+ margin-inline-end:var(--t-spacing-1);
2028
+ }
2136
2029
 
2137
- :is(.tds-field:has(input[type="checkbox"]),.tds-field:has(tds-indeterminate),.tds-field:has(input[type="radio"])) tds-indeterminate{
2138
- display:flex;
2139
- }
2030
+ .tds-dropdown-item:has([slot="description"]) [slot="label"]{
2031
+ grid-area:label;
2032
+ }
2140
2033
 
2141
- :is(.tds-field:has(input[type="checkbox"]),.tds-field:has(tds-indeterminate),.tds-field:has(input[type="radio"])) .tds-field-label{
2142
- grid-row:1;
2143
- grid-column:2;
2144
- }
2034
+ .tds-dropdown-item:has([slot="description"]) [slot="description"]{
2035
+ grid-area:description;
2036
+ }
2145
2037
 
2146
- :is(.tds-field:has(input[type="checkbox"]),.tds-field:has(tds-indeterminate),.tds-field:has(input[type="radio"])) .tds-field-description{
2147
- grid-row:2;
2148
- grid-column:2;
2149
- }
2038
+ .tds-dropdown-item:has([slot="description"]) [slot="suffix"]{
2039
+ grid-area:suffix;
2040
+ margin-inline-start:var(--t-spacing-1);
2041
+ }
2042
+ .tds-dropdown-section:not(:first-child){
2043
+ margin-block-start:var(--t-spacing-half);
2044
+ }
2150
2045
 
2151
- .tds-field--sm{
2152
- --tds-field-label-font-size:var(--t-font-size-sm);
2153
- --tds-field-description-font-size:var(--t-font-size-xs);
2154
- --tds-field-description-line-height:1.3;
2046
+ .tds-dropdown-section-label{
2047
+ padding-block:var(--t-spacing-1);
2048
+ padding-inline:var(--t-spacing-half);
2049
+ font-size:var(--t-font-size-sm);
2050
+ font-weight:var(--t-font-weight-semibold);
2051
+ color:var(--t-text-color-secondary);
2052
+ }
2053
+ .tds-dropdown-separator{
2054
+ margin-block:var(--t-spacing-half);
2055
+ margin-inline:0;
2056
+ border:0;
2057
+ border-top:1px solid var(--t-border-color);
2155
2058
  }
2156
2059
 
2157
- .tds-field--lg{
2158
- --tds-field-min-height:var(--t-container-size-lg);
2159
- --tds-field-font-size:var(--t-font-size-lg);
2060
+ .tds-filterable-list-box:has(input:disabled){
2061
+ --tds-filterable-list-box-cursor:not-allowed;
2160
2062
  }
2161
2063
 
2162
- .tds-field-label{
2163
- font-size:var(--tds-field-label-font-size);
2164
- font-weight:var(--t-font-weight-normal);
2165
- color:var(--tds-field-label-color);
2166
- cursor:var(--tds-field-label-cursor);
2064
+ .tds-filterable-list-box-header{
2065
+ margin-block-end:var(--t-spacing-half);
2167
2066
  }
2168
2067
 
2169
- .tds-field-label--hidden{
2068
+ .tds-filterable-list-box-label--hidden{
2170
2069
  position:absolute;
2171
2070
  width:1px;
2172
2071
  height:1px;
@@ -2175,239 +2074,192 @@
2175
2074
  clip-path:inset(50%);
2176
2075
  }
2177
2076
 
2178
- .tds-field-control{
2077
+ .tds-filterable-list-box-search-control{
2179
2078
  display:flex;
2079
+ gap:var(--t-spacing-1);
2180
2080
  align-items:center;
2181
2081
  inline-size:100%;
2182
- min-block-size:var(--tds-field-min-height);
2183
- font-family:inherit;
2184
- font-size:var(--tds-field-font-size);
2185
- line-height:1;
2186
- color:var(--tds-field-color);
2187
- -webkit-appearance:none;
2188
- -moz-appearance:none;
2189
- appearance:none;
2190
- cursor:text;
2082
+ min-block-size:var(--t-container-size-md);
2083
+ padding-inline:var(--t-spacing-1);
2084
+ font-size:var(--t-font-size-md);
2085
+ cursor:var(--tds-filterable-list-box-cursor, text);
2191
2086
  outline:var(--t-focus-ring-width) solid transparent;
2192
- outline-color:rgb(from var(--t-focus-ring-color) r g b / 0);
2193
2087
  outline-offset:0;
2194
- background-color:var(--tds-field-background-color);
2195
- border:var(--t-form-border-width) solid var(--tds-field-border-color);
2088
+ background-color:var(--t-form-background-color);
2089
+ border:var(--t-form-border-width) solid var(--t-form-border-color);
2196
2090
  border-radius:var(--t-form-border-radius);
2197
2091
  transition-timing-function:var(--t-ease-in-out);
2198
2092
  transition-duration:var(--t-duration-200);
2199
2093
  transition-property:background-color, border-color, outline-color, outline-offset;
2200
2094
  }
2201
2095
 
2202
- .tds-field-control[data-hovered]:not([data-focus-visible],[data-focus-within],[data-disabled]){
2203
- border-color:var(--tds-field-border-color-hover);
2096
+ .tds-filterable-list-box-search-control:hover:not(:has(input:focus),:has(input:disabled)){
2097
+ border-color:var(--t-form-border-color-hover);
2204
2098
  }
2205
2099
 
2206
- .tds-field-control[data-focus-within]{
2100
+ .tds-filterable-list-box-search-control:has(input:focus){
2207
2101
  outline-color:var(--t-focus-ring-color);
2208
2102
  outline-offset:var(--t-focus-ring-offset);
2209
- border-color:var(--tds-field-border-color-active);
2103
+ border-color:var(--t-form-border-color-focus);
2210
2104
  }
2211
2105
 
2212
- .tds-field-control[data-readonly],.tds-field-control:has([data-readonly]),.tds-field-control:has([readonly]){
2213
- --tds-field-border-color:var(--t-form-border-color-readonly);
2214
- --tds-field-border-color-hover:var(--t-form-border-color-readonly);
2215
- --tds-field-background-color:var(--t-form-background-color-readonly);
2216
- color:var(--t-form-color-readonly);
2106
+ .tds-filterable-list-box-search-control:has(input:disabled){
2107
+ color:var(--t-form-color-disabled);
2108
+ background-color:var(--t-form-background-color-disabled);
2109
+ border-color:var(--t-form-border-color-disabled);
2217
2110
  }
2218
2111
 
2219
- [data-focus-within]:is(.tds-field-control[data-readonly],.tds-field-control:has([data-readonly]),.tds-field-control:has([readonly])){
2220
- border-color:var(--t-form-border-color-hover);
2221
- }
2222
-
2223
- .tds-field-description{
2224
- display:flex;
2225
- gap:var(--t-spacing-half);
2226
- align-items:flex-start;
2227
- margin:0;
2228
- font-size:var(--tds-field-description-font-size);
2229
- line-height:var(--tds-field-description-line-height);
2230
- color:var(--tds-field-description-color, var(--t-text-color-secondary));
2231
- cursor:var(--tds-field-description-cursor);
2232
- }
2112
+ @media (prefers-reduced-motion: reduce){
2233
2113
 
2234
- .tds-field-description .tds-field-description-invalid-icon{
2235
- display:var(--tds-field-description-invalid-icon-display, none);
2236
- flex-shrink:0;
2237
- margin-block-start:calc(.5lh - .5em);
2238
- line-height:var(--tds-field-description-line-height);
2239
- }
2240
- .tds-field-date-segment{
2241
- padding-inline:var(--tds-field-date-segment-padding-inline, 2px);
2242
- text-align:end;
2243
- text-wrap:nowrap;
2244
- caret-color:transparent;
2245
- border-radius:var(--t-border-radius-sm);
2114
+ .tds-filterable-list-box-search-control{
2115
+ transition-property:none;
2246
2116
  }
2247
- .tds-field-date-segment[data-placeholder]{
2248
- color:var(--tds-field-placeholder-color);
2249
- }
2250
- .tds-field-date-segment[data-focused]{
2251
- color:var(--t-text-color-inverted);
2252
- outline:0;
2253
- background-color:var(--t-fill-color-interaction);
2254
2117
  }
2255
- .tds-field-date-segment-separator{
2256
- padding-inline:0;
2257
- color:var(--tds-field-placeholder-color);
2258
- }
2259
-
2260
- .tds-field-date-segment:not([data-placeholder]) + .tds-field-date-segment-separator{
2261
- color:var(--tds-field-color);
2262
- }
2263
2118
 
2264
- .tds-dropdown-popover{
2265
- min-inline-size:10rem;
2266
- max-inline-size:24rem;
2267
- padding:var(--t-spacing-1);
2268
- overflow:auto;
2269
- overscroll-behavior:none;
2270
- -webkit-user-select:none;
2271
- -moz-user-select:none;
2272
- user-select:none;
2119
+ .tds-filterable-list-box-search-input{
2120
+ flex:1;
2121
+ min-inline-size:0;
2122
+ padding:0;
2123
+ overflow:hidden;
2124
+ text-overflow:ellipsis;
2125
+ font-family:inherit;
2126
+ font-size:inherit;
2127
+ color:inherit;
2128
+ white-space:nowrap;
2129
+ -webkit-appearance:none;
2130
+ -moz-appearance:none;
2131
+ appearance:none;
2132
+ cursor:var(--tds-filterable-list-box-cursor, text);
2273
2133
  outline:0;
2274
- scrollbar-color:#0004 var(--t-surface-color-card);
2275
- scrollbar-width:thin;
2276
- background:var(--t-surface-color-card);
2277
- background-clip:padding-box;
2278
- border:1px solid var(--t-border-color);
2279
- border-radius:var(--t-border-radius);
2280
- box-shadow:0 10px 15px -3px hsl(0 0% 0% / .05), 0 4px 6px -4px hsl(0 0% 0% / .05);
2134
+ background-color:transparent;
2135
+ border:0;
2281
2136
  }
2282
- .tds-dropdown-popover[data-entering]{
2283
- animation:tds-dropdown-popover var(--t-duration-300) var(--t-ease-out);
2284
- }
2285
- .tds-dropdown-popover[data-exiting]{
2286
- animation:tds-dropdown-popover var(--t-duration-200) var(--t-ease-in) reverse;
2137
+
2138
+ .tds-filterable-list-box-search-input::-moz-placeholder{
2139
+ color:var(--t-form-placeholder-color);
2140
+ -moz-user-select:none;
2141
+ user-select:none;
2287
2142
  }
2288
- .tds-dropdown-popover[data-entering],.tds-dropdown-popover[data-exiting]{
2289
- will-change:opacity, transform;
2143
+
2144
+ .tds-filterable-list-box-search-input::placeholder{
2145
+ color:var(--t-form-placeholder-color);
2146
+ -webkit-user-select:none;
2147
+ -moz-user-select:none;
2148
+ user-select:none;
2290
2149
  }
2291
2150
 
2292
- @keyframes tds-dropdown-popover{
2293
- from{
2294
- opacity:0;
2295
- transform:translateY(-8px);
2151
+ .tds-filterable-list-box-search-input::-webkit-search-decoration,.tds-filterable-list-box-search-input::-webkit-search-cancel-button,.tds-filterable-list-box-search-input::-webkit-search-results-button,.tds-filterable-list-box-search-input::-webkit-search-results-decoration{
2152
+ -webkit-appearance:none;
2153
+ appearance:none;
2296
2154
  }
2155
+
2156
+ .tds-filterable-list-box-search-clear-button{
2157
+ --tds-btn-color:var(--t-icon-color-dim);
2158
+ --tds-btn-padding-truncated-x:0;
2159
+ --tds-filterable-list-box-search-clear-button-visibility:hidden;
2160
+ visibility:var(--tds-filterable-list-box-search-clear-button-visibility);
2161
+
2162
+ flex-shrink:0;
2163
+ cursor:var(--tds-filterable-list-box-cursor, pointer);
2297
2164
  }
2298
2165
 
2299
- @media (prefers-reduced-motion: reduce){
2300
- .tds-dropdown-popover[data-entering],.tds-dropdown-popover[data-exiting]{
2301
- animation:none;
2302
- }
2166
+ .tds-filterable-list-box-search-field:not([data-empty]):has(input:enabled):is(
2167
+ :hover,
2168
+ :has(input:focus)
2169
+ ) .tds-filterable-list-box-search-clear-button{
2170
+ --tds-filterable-list-box-search-clear-button-visibility:visible;
2303
2171
  }
2304
2172
 
2305
- .tds-dropdown-popover [role="menu"]{
2306
- outline:0;
2173
+ .tds-filterable-list-box-list{
2174
+ margin-block-start:var(--t-spacing-1);
2307
2175
  }
2308
- .tds-dropdown-item{
2309
- --tds-dropdown-item-color:var(--t-text-color);
2310
- --tds-dropdown-item-row-gap:0;
2311
- --tds-dropdown-item-column-gap:var(--t-spacing-1);
2312
2176
 
2313
- display:flex;
2314
- row-gap:var(--tds-dropdown-item-row-gap);
2315
- -moz-column-gap:var(--tds-dropdown-item-column-gap);
2316
- column-gap:var(--tds-dropdown-item-column-gap);
2177
+ .tds-filterable-list-box-empty-state{
2178
+ font-size:var(--t-font-size-sm);
2179
+ }
2180
+
2181
+ .tds-filterable-list-box-item{
2182
+ display:flex;
2183
+ gap:var(--t-spacing-1);
2317
2184
  align-items:center;
2318
2185
  padding-block:var(--t-spacing-1);
2319
2186
  padding-inline:var(--t-spacing-1-half);
2320
2187
  font-size:1rem;
2321
- color:var(--tds-dropdown-item-color);
2322
- text-decoration:none;
2188
+ color:var(--t-text-color);
2323
2189
  cursor:default;
2324
- outline:0;
2325
2190
  border-radius:var(--t-border-radius);
2326
2191
  }
2327
- .tds-dropdown-item[data-hovered]:not([data-disabled]),.tds-dropdown-item[data-focus-visible]{
2192
+
2193
+ .tds-filterable-list-box-item[data-selection-mode="multiple"]{
2194
+ cursor:pointer;
2195
+ }
2196
+
2197
+ .tds-filterable-list-box-item[data-selected]{
2198
+ background:var(--t-fill-color-button-interaction-ghost-active);
2199
+ }
2200
+
2201
+ .tds-filterable-list-box-item[data-hovered]:not([data-disabled]),.tds-filterable-list-box-item[data-focus-visible]{
2328
2202
  background:var(--t-fill-color-neutral-070);
2329
2203
  }
2330
- .tds-dropdown-item[data-pressed]:not([data-disabled]){
2204
+
2205
+ .tds-filterable-list-box-item[data-pressed]:not([data-disabled]){
2331
2206
  background:var(--t-fill-color-neutral-060);
2332
2207
  }
2333
- .tds-dropdown-item[data-disabled]{
2334
- --tds-dropdown-item-color:var(--t-form-color-disabled);
2335
2208
 
2209
+ .tds-filterable-list-box-item[data-disabled]{
2210
+ color:var(--t-form-color-disabled);
2336
2211
  cursor:not-allowed;
2337
2212
  }
2338
-
2339
- .tds-dropdown-item--destructive{
2340
- --tds-dropdown-item-color:var(--t-text-color-status-error);
2341
- }
2342
-
2343
- .tds-dropdown-item--staff-only{
2344
- --tds-dropdown-item-color:var(--t-fill-color-product-staff);
2345
- }
2346
- a.tds-dropdown-item:is(:hover, :active){
2347
- color:var(--tds-dropdown-item-color);
2348
- }
2349
- .tds-dropdown-item [slot="prefix"],
2350
- .tds-dropdown-item [slot="suffix"]{
2213
+ .tds-filterable-list-box-item-checkbox{
2214
+ position:relative;
2215
+ display:none;
2351
2216
  flex-shrink:0;
2217
+ width:var(--t-element-size-md);
2218
+ height:var(--t-element-size-md);
2219
+ background-color:var(--t-form-background-color);
2220
+ border:var(--t-form-border-width) solid var(--t-form-border-color);
2221
+ border-radius:var(--t-border-radius-sm);
2352
2222
  }
2223
+ .tds-filterable-list-box-item-checkbox::before{
2224
+ position:absolute;
2225
+ inset:0;
2226
+ visibility:hidden;
2227
+ content:"";
2228
+ background-color:var(--t-icon-color-inverted);
2229
+ border-radius:var(--t-border-radius-sm);
2230
+ opacity:0;
2231
+ -webkit-mask-repeat:no-repeat;
2232
+ mask-repeat:no-repeat;
2233
+ -webkit-mask-size:contain;
2234
+ mask-size:contain;
2235
+ }
2236
+ [data-selection-mode="multiple"] > .tds-filterable-list-box-item-checkbox{
2237
+ display:block;
2238
+ }
2239
+ [data-selected] > .tds-filterable-list-box-item-checkbox{
2240
+ background-color:var(--t-fill-color-control);
2241
+ border-color:var(--t-border-color-control-info);
2242
+ }
2243
+ :is([data-selected] > .tds-filterable-list-box-item-checkbox)::before{
2244
+ visibility:visible;
2245
+ opacity:1;
2246
+ -webkit-mask-image:url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik02LjUwMjAxIDExLjQyOTNMMy42NzM3NCA4LjM5MkMzLjUxNjE2IDguMjI0ODkgMy41MTYxNiA3Ljk1Mjg5IDMuNjczNzQgNy43ODRMNC4yNDUwNSA3LjE3Njg5QzQuNDAyNjIgNy4wMDk3OCA0LjY1ODc4IDcuMDA5NzggNC44MTYzNiA3LjE3Njg5TDYuNzg4MDcgOS4zMDMxMUwxMS4xODMyIDQuNTY5NzhDMTEuMzQwOCA0LjQwMjY2IDExLjU5NjkgNC40MDI2NiAxMS43NTQ1IDQuNTY5NzhMMTIuMzI1OCA1LjE3Nzc4QzEyLjQ4MzQgNS4zNDQ4OSAxMi40ODM0IDUuNjE3NzggMTIuMzI1OCA1Ljc4NEw3LjA3MzMyIDExLjQyOTNDNi45MTU3NCAxMS41OTY0IDYuNjU5NTggMTEuNTk2NCA2LjUwMjAxIDExLjQyOTNaIiBmaWxsPSJ3aGl0ZSIvPgo8L3N2Zz4K");
2247
+ mask-image:url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik02LjUwMjAxIDExLjQyOTNMMy42NzM3NCA4LjM5MkMzLjUxNjE2IDguMjI0ODkgMy41MTYxNiA3Ljk1Mjg5IDMuNjczNzQgNy43ODRMNC4yNDUwNSA3LjE3Njg5QzQuNDAyNjIgNy4wMDk3OCA0LjY1ODc4IDcuMDA5NzggNC44MTYzNiA3LjE3Njg5TDYuNzg4MDcgOS4zMDMxMUwxMS4xODMyIDQuNTY5NzhDMTEuMzQwOCA0LjQwMjY2IDExLjU5NjkgNC40MDI2NiAxMS43NTQ1IDQuNTY5NzhMMTIuMzI1OCA1LjE3Nzc4QzEyLjQ4MzQgNS4zNDQ4OSAxMi40ODM0IDUuNjE3NzggMTIuMzI1OCA1Ljc4NEw3LjA3MzMyIDExLjQyOTNDNi45MTU3NCAxMS41OTY0IDYuNjU5NTggMTEuNTk2NCA2LjUwMjAxIDExLjQyOTNaIiBmaWxsPSJ3aGl0ZSIvPgo8L3N2Zz4K");
2248
+ }
2249
+ [data-disabled] > .tds-filterable-list-box-item-checkbox{
2250
+ background-color:var(--t-form-background-color-disabled);
2251
+ border-color:var(--t-form-border-color-disabled);
2252
+ }
2253
+ [data-disabled][data-selected] > .tds-filterable-list-box-item-checkbox{
2254
+ background-color:var(--t-border-color-control-disabled);
2255
+ }
2353
2256
 
2354
- .tds-dropdown-item [slot="label"]{
2355
- flex:1;
2356
- min-width:0;
2257
+ .tds-filterable-list-box-item-label{
2357
2258
  overflow:hidden;
2358
2259
  text-overflow:ellipsis;
2359
2260
  white-space:nowrap;
2360
2261
  }
2361
2262
 
2362
- .tds-dropdown-item [slot="description"]{
2363
- font-size:var(--t-font-size-sm);
2364
- color:var(--t-text-color-secondary);
2365
- }
2366
-
2367
- .tds-dropdown-item:has([slot="description"]){
2368
- --tds-dropdown-item-row-gap:var(--t-spacing-half);
2369
- --tds-dropdown-item-column-gap:0;
2370
-
2371
- display:grid;
2372
- grid-template-areas:"prefix label suffix" ". description .";
2373
- grid-template-columns:auto 1fr auto;
2374
- }
2375
-
2376
- .tds-dropdown-item:has([slot="description"]) [slot="prefix"]{
2377
- grid-area:prefix;
2378
- margin-inline-end:var(--t-spacing-1);
2379
- }
2380
-
2381
- .tds-dropdown-item:has([slot="description"]) [slot="label"]{
2382
- grid-area:label;
2383
- }
2384
-
2385
- .tds-dropdown-item:has([slot="description"]) [slot="description"]{
2386
- grid-area:description;
2387
- }
2388
-
2389
- .tds-dropdown-item:has([slot="description"]) [slot="suffix"]{
2390
- grid-area:suffix;
2391
- margin-inline-start:var(--t-spacing-1);
2392
- }
2393
- .tds-dropdown-section:not(:first-child){
2394
- margin-block-start:var(--t-spacing-half);
2395
- }
2396
-
2397
- .tds-dropdown-section-label{
2398
- padding-block:var(--t-spacing-1);
2399
- padding-inline:var(--t-spacing-half);
2400
- font-size:var(--t-font-size-sm);
2401
- font-weight:var(--t-font-weight-semibold);
2402
- color:var(--t-text-color-secondary);
2403
- }
2404
- .tds-dropdown-separator{
2405
- margin-block:var(--t-spacing-half);
2406
- margin-inline:0;
2407
- border:0;
2408
- border-top:1px solid var(--t-border-color);
2409
- }
2410
-
2411
2263
  @layer t-critical, t-component;
2412
2264
 
2413
2265
  :root{
@@ -4899,6 +4751,412 @@ tds-sidenav-section:not(.hydrated) > [slot="ssr"]{
4899
4751
  --tds-checkbox-group-description-line-height:1.3;
4900
4752
  }
4901
4753
 
4754
+ .tds-combo-box{
4755
+ --tds-combo-box-button-offset:4px;
4756
+ --tds-combo-box-search-icon-size:var(--tds-field-font-size);
4757
+ --tds-combo-box-search-icon-color:var(--t-icon-color-dim);
4758
+ }
4759
+
4760
+ .tds-combo-box[data-open] .tds-combo-box-button > svg{
4761
+ transform:rotate(.5turn);
4762
+ }
4763
+
4764
+ .tds-combo-box[data-disabled]{
4765
+ --tds-combo-box-search-icon-color:var(--t-form-color-disabled);
4766
+ }
4767
+
4768
+ .tds-combo-box--lg{
4769
+ --tds-combo-box-button-offset:5px;
4770
+ }
4771
+ .tds-combo-box-field:has([readonly]) .tds-combo-box-button{
4772
+ display:none;
4773
+ }
4774
+ .tds-combo-box-field:has(.tds-combo-box-search-icon){
4775
+ position:relative;
4776
+ }
4777
+ .tds-combo-box-search-icon{
4778
+ position:absolute;
4779
+ inset-block:0;
4780
+ inset-inline-start:var(--tds-field-padding-inline);
4781
+ inline-size:var(--tds-combo-box-search-icon-size);
4782
+ block-size:var(--tds-combo-box-search-icon-size);
4783
+ margin-block:auto;
4784
+ color:var(--tds-combo-box-search-icon-color);
4785
+ pointer-events:none;
4786
+ }
4787
+ .tds-combo-box-search-icon + .tds-combo-box-input{
4788
+ padding-inline-start:calc(
4789
+ var(--tds-field-padding-inline) * 2 + var(--tds-combo-box-search-icon-size)
4790
+ );
4791
+ }
4792
+
4793
+ .tds-combo-box-field:has([readonly]){
4794
+ --tds-combo-box-search-icon-color:var(--t-form-color-readonly);
4795
+ }
4796
+ .tds-combo-box-input{
4797
+ display:flex;
4798
+ flex:1;
4799
+ align-items:center;
4800
+ padding-block:var(--tds-field-padding-block);
4801
+ padding-inline:var(--tds-field-padding-inline);
4802
+ font-family:inherit;
4803
+ font-size:inherit;
4804
+ color:inherit;
4805
+ outline:0;
4806
+ background:transparent;
4807
+ border:0;
4808
+ }
4809
+ .tds-combo-box-input:has( + .tds-combo-box-button){
4810
+ padding-inline-end:0;
4811
+ }
4812
+ .tds-combo-box-input::-moz-placeholder{
4813
+ color:var(--tds-field-placeholder-color);
4814
+ -moz-user-select:none;
4815
+ user-select:none;
4816
+ }
4817
+ .tds-combo-box-input::placeholder{
4818
+ color:var(--tds-field-placeholder-color);
4819
+ -webkit-user-select:none;
4820
+ -moz-user-select:none;
4821
+ user-select:none;
4822
+ }
4823
+ .tds-combo-box-button{
4824
+ flex-shrink:0;
4825
+ align-self:center;
4826
+ inline-size:calc(var(--tds-field-min-height) - (var(--tds-combo-box-button-offset) * 2));
4827
+ block-size:calc(var(--tds-field-min-height) - (var(--tds-combo-box-button-offset) * 2));
4828
+ padding:0;
4829
+ margin-inline-end:var(--tds-combo-box-button-offset);
4830
+ }
4831
+ .tds-combo-box-button > svg{
4832
+ inline-size:var(--tds-field-font-size);
4833
+ block-size:var(--tds-field-font-size);
4834
+ transition:transform var(--t-duration-300) var(--t-ease-in-out);
4835
+ }
4836
+ .tds-combo-box-popover{
4837
+ width:var(--trigger-width);
4838
+ max-block-size:inherit;
4839
+ padding:var(--t-spacing-1);
4840
+ overflow:auto;
4841
+ scroll-behavior:smooth;
4842
+ overscroll-behavior:none;
4843
+ -webkit-user-select:none;
4844
+ -moz-user-select:none;
4845
+ user-select:none;
4846
+ outline:0;
4847
+ scrollbar-color:#0004 var(--t-surface-color-card);
4848
+ scrollbar-width:thin;
4849
+ background:var(--t-surface-color-card);
4850
+ background-clip:padding-box;
4851
+ border:1px solid var(--t-border-color);
4852
+ border-radius:var(--t-border-radius);
4853
+ box-shadow:0 10px 15px -3px hsl(0 0% 0% / .05), 0 4px 6px -4px hsl(0 0% 0% / .05);
4854
+ }
4855
+ .tds-combo-box-popover[data-entering]{
4856
+ animation:tds-combo-box-popover var(--t-duration-300) var(--t-ease-out);
4857
+ }
4858
+ .tds-combo-box-popover[data-exiting]{
4859
+ animation:tds-combo-box-popover var(--t-duration-200) var(--t-ease-in) reverse;
4860
+ }
4861
+ .tds-combo-box-popover[data-entering],.tds-combo-box-popover[data-exiting]{
4862
+ will-change:opacity, transform;
4863
+ }
4864
+
4865
+ @keyframes tds-combo-box-popover{
4866
+ from{
4867
+ opacity:0;
4868
+ transform:translateY(-8px);
4869
+ }
4870
+ }
4871
+
4872
+ @media (prefers-reduced-motion: reduce){
4873
+ .tds-combo-box-popover[data-entering],.tds-combo-box-popover[data-exiting]{
4874
+ animation:none;
4875
+ }
4876
+
4877
+ .tds-combo-box-button > svg{
4878
+ transition:none;
4879
+ }
4880
+ }
4881
+ .tds-combo-box-list{
4882
+ padding:0;
4883
+ margin:0;
4884
+ }
4885
+ .tds-combo-box-list-item{
4886
+ display:block;
4887
+ padding-block:var(--t-spacing-1);
4888
+ padding-inline:var(--t-spacing-1-half);
4889
+ overflow:hidden;
4890
+ text-overflow:ellipsis;
4891
+ font-size:1rem;
4892
+ color:var(--t-text-color);
4893
+ white-space:nowrap;
4894
+ cursor:default;
4895
+ border-radius:var(--t-border-radius);
4896
+ }
4897
+ .tds-combo-box-list-item[data-hovered]:not([data-disabled]),.tds-combo-box-list-item[data-focus-visible]{
4898
+ background:var(--t-fill-color-neutral-070);
4899
+ }
4900
+ .tds-combo-box-list-item[data-selected]{
4901
+ background:var(--t-fill-color-button-interaction-ghost-active);
4902
+ }
4903
+ .tds-combo-box-list-item[data-pressed]:not([data-disabled]){
4904
+ background:var(--t-fill-color-neutral-060);
4905
+ }
4906
+ .tds-combo-box-list-item[data-disabled]{
4907
+ color:var(--t-form-color-disabled);
4908
+ cursor:not-allowed;
4909
+ }
4910
+ .tds-combo-box-list-item[data-disabled][data-hovered]{
4911
+ background:transparent;
4912
+ }
4913
+ .tds-combo-box-empty-state{
4914
+ position:relative;
4915
+ min-block-size:var(--t-spacing-3);
4916
+ padding-block:var(--t-spacing-1);
4917
+ padding-inline:var(--t-spacing-2);
4918
+ font-size:var(--t-font-size-md);
4919
+ color:var(--t-text-color-secondary);
4920
+ }
4921
+ .tds-combo-box-load-more{
4922
+ position:relative;
4923
+ min-block-size:calc(var(--t-spacing-3) + var(--t-spacing-1));
4924
+ }
4925
+
4926
+ .tds-combo-box-empty-state,
4927
+ .tds-combo-box-load-more{
4928
+ --tds-loading-spinner-visibility:visible;
4929
+ --tds-loading-spinner-animation-play-state:running;
4930
+ }
4931
+ .tds-combo-box-list-section:not(:first-child){
4932
+ margin-block-start:var(--t-spacing-half);
4933
+ }
4934
+ .tds-combo-box-section-header{
4935
+ padding-block:var(--t-spacing-1);
4936
+ padding-inline:var(--t-spacing-half);
4937
+ font-size:var(--t-font-size-sm);
4938
+ font-weight:var(--t-font-weight-semibold);
4939
+ color:var(--t-text-color-secondary);
4940
+ }
4941
+
4942
+ .tds-field{
4943
+ --tds-field-label-color:var(--t-text-color);
4944
+ --tds-field-label-cursor:default;
4945
+ --tds-field-label-font-size:var(--t-font-size-md);
4946
+ --tds-field-description-color:var(--t-text-color-secondary);
4947
+ --tds-field-description-cursor:text;
4948
+ --tds-field-description-font-size:var(--t-font-size-sm);
4949
+ --tds-field-description-line-height:1.35;
4950
+ --tds-field-description-invalid-icon-display:none;
4951
+ --tds-field-border-color:var(--t-form-border-color);
4952
+ --tds-field-border-color-hover:var(--t-form-border-color-hover);
4953
+ --tds-field-border-color-active:var(--t-form-border-color-focus);
4954
+ --tds-field-background-color:var(--t-form-background-color);
4955
+ --tds-field-color:var(--t-form-color);
4956
+ --tds-field-placeholder-color:var(--t-form-placeholder-color);
4957
+ --tds-field-font-size:var(--t-font-size-md);
4958
+ --tds-field-min-height:var(--t-container-size-md);
4959
+ --tds-field-padding-block:6px;
4960
+ --tds-field-padding-inline:var(--t-spacing-1);
4961
+
4962
+ position:relative;
4963
+ display:flex;
4964
+ flex-direction:column;
4965
+ gap:var(--t-spacing-half);
4966
+ }
4967
+
4968
+ .tds-field:has(input:disabled):not([data-disabled]),.tds-field:has(select:disabled):not([data-disabled]),.tds-field:has(textarea:disabled):not([data-disabled]){
4969
+ --tds-field-label-color:var(--t-form-color-disabled);
4970
+ --tds-field-label-cursor:not-allowed;
4971
+ --tds-field-description-color:var(--t-form-color-disabled);
4972
+ --tds-field-description-cursor:not-allowed;
4973
+ }
4974
+
4975
+ .tds-field:has([required],[aria-required="true"]) .tds-field-label::after{
4976
+ margin-left:.25ch;
4977
+ color:var(--t-text-color-status-error);
4978
+ content:"*" / "";
4979
+ }
4980
+
4981
+ .tds-field:has([aria-invalid="true"],:user-invalid){
4982
+ --tds-field-description-color:var(--t-text-color-status-error);
4983
+ --tds-field-description-invalid-icon-display:inline-block;
4984
+ }
4985
+
4986
+ .tds-field[data-required] .tds-field-label::after{
4987
+ margin-left:.25ch;
4988
+ color:var(--t-text-color-status-error);
4989
+ content:"*" / "";
4990
+ }
4991
+
4992
+ .tds-field:has([aria-invalid="true"]),.tds-field[data-invalid]{
4993
+ --tds-field-border-color:var(--t-form-border-color-error);
4994
+ --tds-field-border-color-hover:var(--t-form-border-color-error-hover);
4995
+ --tds-field-border-color-active:var(--t-form-border-color-error-hover);
4996
+ --tds-field-background-color:var(--t-form-background-color-error);
4997
+ --tds-field-description-color:var(--t-text-color-status-error);
4998
+ --tds-field-description-invalid-icon-display:inline-block;
4999
+ }
5000
+
5001
+ .tds-field[data-disabled]{
5002
+ --tds-field-border-color:var(--t-form-border-color-disabled);
5003
+ --tds-field-background-color:var(--t-form-background-color-disabled);
5004
+ --tds-field-color:var(--t-form-color-disabled);
5005
+ --tds-field-placeholder-color:var(--t-form-color-disabled);
5006
+ }
5007
+
5008
+ .tds-field[data-disabled] .tds-field-control{
5009
+ cursor:not-allowed;
5010
+ }
5011
+
5012
+ .tds-field:has(input[type="checkbox"]),.tds-field:has(tds-indeterminate),.tds-field:has(input[type="radio"]){
5013
+ --tds-field-label-cursor:pointer;
5014
+
5015
+ display:inline-grid;
5016
+ grid-template-columns:auto;
5017
+ grid-auto-columns:1fr;
5018
+ row-gap:var(--t-spacing-fourth);
5019
+ -moz-column-gap:var(--t-spacing-1);
5020
+ column-gap:var(--t-spacing-1);
5021
+ }
5022
+
5023
+ :is(.tds-field:has(input[type="checkbox"]),.tds-field:has(tds-indeterminate),.tds-field:has(input[type="radio"])):has(:disabled){
5024
+ --tds-field-label-cursor:not-allowed;
5025
+ }
5026
+
5027
+ :is(.tds-field:has(input[type="checkbox"]),.tds-field:has(tds-indeterminate),.tds-field:has(input[type="radio"])) input[type="checkbox"],:is(.tds-field:has(input[type="checkbox"]),.tds-field:has(tds-indeterminate),.tds-field:has(input[type="radio"])) input[type="radio"],:is(.tds-field:has(input[type="checkbox"]),.tds-field:has(tds-indeterminate),.tds-field:has(input[type="radio"])) tds-indeterminate{
5028
+ grid-row:1;
5029
+ grid-column:1;
5030
+ align-self:center;
5031
+ }
5032
+
5033
+ :is(.tds-field:has(input[type="checkbox"]),.tds-field:has(tds-indeterminate),.tds-field:has(input[type="radio"])) tds-indeterminate{
5034
+ display:flex;
5035
+ }
5036
+
5037
+ :is(.tds-field:has(input[type="checkbox"]),.tds-field:has(tds-indeterminate),.tds-field:has(input[type="radio"])) .tds-field-label{
5038
+ grid-row:1;
5039
+ grid-column:2;
5040
+ }
5041
+
5042
+ :is(.tds-field:has(input[type="checkbox"]),.tds-field:has(tds-indeterminate),.tds-field:has(input[type="radio"])) .tds-field-description{
5043
+ grid-row:2;
5044
+ grid-column:2;
5045
+ }
5046
+
5047
+ .tds-field--sm{
5048
+ --tds-field-label-font-size:var(--t-font-size-sm);
5049
+ --tds-field-description-font-size:var(--t-font-size-xs);
5050
+ --tds-field-description-line-height:1.3;
5051
+ }
5052
+
5053
+ .tds-field--lg{
5054
+ --tds-field-min-height:var(--t-container-size-lg);
5055
+ --tds-field-font-size:var(--t-font-size-lg);
5056
+ }
5057
+
5058
+ .tds-field-label{
5059
+ font-size:var(--tds-field-label-font-size);
5060
+ font-weight:var(--t-font-weight-normal);
5061
+ color:var(--tds-field-label-color);
5062
+ cursor:var(--tds-field-label-cursor);
5063
+ }
5064
+
5065
+ .tds-field-label--hidden{
5066
+ position:absolute;
5067
+ width:1px;
5068
+ height:1px;
5069
+ overflow:hidden;
5070
+ white-space:nowrap;
5071
+ clip-path:inset(50%);
5072
+ }
5073
+
5074
+ .tds-field-control{
5075
+ display:flex;
5076
+ align-items:center;
5077
+ inline-size:100%;
5078
+ min-block-size:var(--tds-field-min-height);
5079
+ font-family:inherit;
5080
+ font-size:var(--tds-field-font-size);
5081
+ line-height:1;
5082
+ color:var(--tds-field-color);
5083
+ -webkit-appearance:none;
5084
+ -moz-appearance:none;
5085
+ appearance:none;
5086
+ cursor:text;
5087
+ outline:var(--t-focus-ring-width) solid transparent;
5088
+ outline-color:rgb(from var(--t-focus-ring-color) r g b / 0);
5089
+ outline-offset:0;
5090
+ background-color:var(--tds-field-background-color);
5091
+ border:var(--t-form-border-width) solid var(--tds-field-border-color);
5092
+ border-radius:var(--t-form-border-radius);
5093
+ transition-timing-function:var(--t-ease-in-out);
5094
+ transition-duration:var(--t-duration-200);
5095
+ transition-property:background-color, border-color, outline-color, outline-offset;
5096
+ }
5097
+
5098
+ .tds-field-control[data-hovered]:not([data-focus-visible],[data-focus-within],[data-disabled]){
5099
+ border-color:var(--tds-field-border-color-hover);
5100
+ }
5101
+
5102
+ .tds-field-control[data-focus-within]{
5103
+ outline-color:var(--t-focus-ring-color);
5104
+ outline-offset:var(--t-focus-ring-offset);
5105
+ border-color:var(--tds-field-border-color-active);
5106
+ }
5107
+
5108
+ .tds-field-control[data-readonly],.tds-field-control:has([data-readonly]),.tds-field-control:has([readonly]){
5109
+ --tds-field-border-color:var(--t-form-border-color-readonly);
5110
+ --tds-field-border-color-hover:var(--t-form-border-color-readonly);
5111
+ --tds-field-background-color:var(--t-form-background-color-readonly);
5112
+ color:var(--t-form-color-readonly);
5113
+ }
5114
+
5115
+ [data-focus-within]:is(.tds-field-control[data-readonly],.tds-field-control:has([data-readonly]),.tds-field-control:has([readonly])){
5116
+ border-color:var(--t-form-border-color-hover);
5117
+ }
5118
+
5119
+ .tds-field-description{
5120
+ display:flex;
5121
+ gap:var(--t-spacing-half);
5122
+ align-items:flex-start;
5123
+ margin:0;
5124
+ font-size:var(--tds-field-description-font-size);
5125
+ line-height:var(--tds-field-description-line-height);
5126
+ color:var(--tds-field-description-color, var(--t-text-color-secondary));
5127
+ cursor:var(--tds-field-description-cursor);
5128
+ }
5129
+
5130
+ .tds-field-description .tds-field-description-invalid-icon{
5131
+ display:var(--tds-field-description-invalid-icon-display, none);
5132
+ flex-shrink:0;
5133
+ margin-block-start:calc(.5lh - .5em);
5134
+ line-height:var(--tds-field-description-line-height);
5135
+ }
5136
+ .tds-field-date-segment{
5137
+ padding-inline:var(--tds-field-date-segment-padding-inline, 2px);
5138
+ text-align:end;
5139
+ text-wrap:nowrap;
5140
+ caret-color:transparent;
5141
+ border-radius:var(--t-border-radius-sm);
5142
+ }
5143
+ .tds-field-date-segment[data-placeholder]{
5144
+ color:var(--tds-field-placeholder-color);
5145
+ }
5146
+ .tds-field-date-segment[data-focused]{
5147
+ color:var(--t-text-color-inverted);
5148
+ outline:0;
5149
+ background-color:var(--t-fill-color-interaction);
5150
+ }
5151
+ .tds-field-date-segment-separator{
5152
+ padding-inline:0;
5153
+ color:var(--tds-field-placeholder-color);
5154
+ }
5155
+
5156
+ .tds-field-date-segment:not([data-placeholder]) + .tds-field-date-segment-separator{
5157
+ color:var(--tds-field-color);
5158
+ }
5159
+
4902
5160
  .tds-date-picker{
4903
5161
  --tds-date-picker-button-offset:4px;
4904
5162
  }