@porsche-design-system/components-react 3.6.1 → 3.7.0-rc.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (177) hide show
  1. package/CHANGELOG.md +38 -0
  2. package/cjs/lib/components/multi-select-option.wrapper.cjs +25 -0
  3. package/cjs/lib/components/multi-select.wrapper.cjs +26 -0
  4. package/cjs/lib/components/pin-code.wrapper.cjs +26 -0
  5. package/cjs/lib/components/radio-button-wrapper.wrapper.cjs +3 -3
  6. package/cjs/public-api.cjs +6 -0
  7. package/esm/lib/components/accordion.wrapper.d.ts +1 -1
  8. package/esm/lib/components/banner.wrapper.d.ts +1 -1
  9. package/esm/lib/components/button-pure.wrapper.d.ts +1 -1
  10. package/esm/lib/components/button-tile.wrapper.d.ts +1 -1
  11. package/esm/lib/components/button.wrapper.d.ts +1 -1
  12. package/esm/lib/components/carousel.wrapper.d.ts +1 -1
  13. package/esm/lib/components/checkbox-wrapper.wrapper.d.ts +1 -1
  14. package/esm/lib/components/content-wrapper.wrapper.d.ts +1 -1
  15. package/esm/lib/components/display.wrapper.d.ts +1 -1
  16. package/esm/lib/components/divider.wrapper.d.ts +1 -1
  17. package/esm/lib/components/fieldset-wrapper.wrapper.d.ts +1 -1
  18. package/esm/lib/components/fieldset.wrapper.d.ts +1 -1
  19. package/esm/lib/components/flyout.wrapper.d.ts +1 -1
  20. package/esm/lib/components/heading.wrapper.d.ts +1 -1
  21. package/esm/lib/components/headline.wrapper.d.ts +1 -1
  22. package/esm/lib/components/icon.wrapper.d.ts +1 -1
  23. package/esm/lib/components/index.d.ts +3 -0
  24. package/esm/lib/components/inline-notification.wrapper.d.ts +1 -1
  25. package/esm/lib/components/link-pure.wrapper.d.ts +1 -1
  26. package/esm/lib/components/link-social.wrapper.d.ts +1 -1
  27. package/esm/lib/components/link-tile.wrapper.d.ts +1 -1
  28. package/esm/lib/components/link.wrapper.d.ts +1 -1
  29. package/esm/lib/components/modal.wrapper.d.ts +4 -2
  30. package/esm/lib/components/model-signature.wrapper.d.ts +1 -1
  31. package/esm/lib/components/multi-select-option.wrapper.d.ts +23 -0
  32. package/esm/lib/components/multi-select-option.wrapper.mjs +23 -0
  33. package/esm/lib/components/multi-select.wrapper.d.ts +104 -0
  34. package/esm/lib/components/multi-select.wrapper.mjs +24 -0
  35. package/esm/lib/components/pagination.wrapper.d.ts +1 -1
  36. package/esm/lib/components/pin-code.wrapper.d.ts +120 -0
  37. package/esm/lib/components/pin-code.wrapper.mjs +24 -0
  38. package/esm/lib/components/popover.wrapper.d.ts +1 -1
  39. package/esm/lib/components/radio-button-wrapper.wrapper.d.ts +9 -1
  40. package/esm/lib/components/radio-button-wrapper.wrapper.mjs +3 -3
  41. package/esm/lib/components/scroller.wrapper.d.ts +1 -1
  42. package/esm/lib/components/segmented-control.wrapper.d.ts +1 -1
  43. package/esm/lib/components/select-wrapper.wrapper.d.ts +1 -1
  44. package/esm/lib/components/spinner.wrapper.d.ts +1 -1
  45. package/esm/lib/components/stepper-horizontal.wrapper.d.ts +1 -1
  46. package/esm/lib/components/switch.wrapper.d.ts +1 -1
  47. package/esm/lib/components/table.wrapper.d.ts +1 -1
  48. package/esm/lib/components/tabs-bar.wrapper.d.ts +1 -1
  49. package/esm/lib/components/tabs.wrapper.d.ts +1 -1
  50. package/esm/lib/components/tag-dismissible.wrapper.d.ts +1 -1
  51. package/esm/lib/components/tag.wrapper.d.ts +1 -1
  52. package/esm/lib/components/text-field-wrapper.wrapper.d.ts +1 -1
  53. package/esm/lib/components/text-list.wrapper.d.ts +1 -1
  54. package/esm/lib/components/text.wrapper.d.ts +1 -1
  55. package/esm/lib/components/textarea-wrapper.wrapper.d.ts +1 -1
  56. package/esm/lib/components/toast.wrapper.d.ts +1 -1
  57. package/esm/lib/components/wordmark.wrapper.d.ts +1 -1
  58. package/esm/lib/types.d.ts +30 -2
  59. package/esm/public-api.mjs +3 -0
  60. package/package.json +2 -2
  61. package/ssr/cjs/components/dist/styles/esm/styles-entry.cjs +1319 -341
  62. package/ssr/cjs/components/dist/utils/esm/utils-entry.cjs +25 -43
  63. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/components/multi-select-option.wrapper.cjs +39 -0
  64. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/components/multi-select.wrapper.cjs +40 -0
  65. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/components/pin-code.wrapper.cjs +40 -0
  66. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/components/radio-button-wrapper.wrapper.cjs +4 -4
  67. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/accordion.cjs +3 -0
  68. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/banner.cjs +3 -0
  69. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/button-pure.cjs +3 -0
  70. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/button-tile.cjs +3 -0
  71. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/button.cjs +4 -1
  72. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/carousel.cjs +10 -1
  73. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/checkbox-wrapper.cjs +3 -0
  74. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/fieldset-wrapper.cjs +1 -1
  75. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/fieldset.cjs +1 -1
  76. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/flyout.cjs +3 -0
  77. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/inline-notification.cjs +3 -0
  78. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/link-pure.cjs +3 -0
  79. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/link-social.cjs +4 -2
  80. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/link-tile-model-signature.cjs +3 -0
  81. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/link-tile.cjs +3 -0
  82. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/link.cjs +4 -1
  83. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/modal.cjs +3 -0
  84. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/multi-select-option.cjs +84 -0
  85. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/multi-select.cjs +104 -0
  86. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/pagination.cjs +3 -0
  87. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/pin-code.cjs +96 -0
  88. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/popover.cjs +3 -0
  89. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/radio-button-wrapper.cjs +68 -2
  90. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/scroller.cjs +3 -0
  91. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/segmented-control-item.cjs +3 -0
  92. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/select-wrapper-dropdown.cjs +6 -5
  93. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/select-wrapper.cjs +3 -0
  94. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/state-message.cjs +3 -0
  95. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/stepper-horizontal-item.cjs +3 -0
  96. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/stepper-horizontal.cjs +3 -0
  97. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/switch.cjs +3 -0
  98. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/table-head-cell.cjs +3 -0
  99. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/table.cjs +3 -0
  100. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/tabs-bar.cjs +3 -0
  101. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/tabs.cjs +3 -0
  102. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/tag-dismissible.cjs +3 -0
  103. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/tag.cjs +3 -0
  104. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/text-field-wrapper.cjs +4 -1
  105. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/textarea-wrapper.cjs +1 -1
  106. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/public-api.cjs +6 -0
  107. package/ssr/esm/components/dist/styles/esm/styles-entry.mjs +1283 -308
  108. package/ssr/esm/components/dist/utils/esm/utils-entry.mjs +23 -40
  109. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/components/multi-select-option.wrapper.mjs +37 -0
  110. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/components/multi-select.wrapper.mjs +38 -0
  111. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/components/pin-code.wrapper.mjs +38 -0
  112. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/components/radio-button-wrapper.wrapper.mjs +4 -4
  113. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/accordion.mjs +5 -2
  114. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/banner.mjs +5 -2
  115. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/button-group.mjs +2 -2
  116. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/button-pure.mjs +5 -2
  117. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/button-tile.mjs +5 -2
  118. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/button.mjs +7 -4
  119. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/carousel.mjs +12 -3
  120. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/checkbox-wrapper.mjs +5 -2
  121. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/content-wrapper.mjs +2 -2
  122. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/crest.mjs +2 -2
  123. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/display.mjs +2 -2
  124. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/divider.mjs +2 -2
  125. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/fieldset-wrapper.mjs +3 -3
  126. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/fieldset.mjs +3 -3
  127. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/flex-item.mjs +2 -2
  128. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/flex.mjs +2 -2
  129. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/flyout.mjs +5 -2
  130. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/grid-item.mjs +2 -2
  131. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/grid.mjs +2 -2
  132. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/heading.mjs +2 -2
  133. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/headline.mjs +2 -2
  134. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/icon.mjs +2 -2
  135. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/inline-notification.mjs +5 -2
  136. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/link-pure.mjs +5 -2
  137. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/link-social.mjs +6 -4
  138. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/link-tile-model-signature.mjs +5 -2
  139. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/link-tile.mjs +5 -2
  140. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/link.mjs +7 -4
  141. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/marque.mjs +2 -2
  142. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/modal.mjs +5 -2
  143. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/model-signature.mjs +2 -2
  144. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/multi-select-option.mjs +82 -0
  145. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/multi-select.mjs +102 -0
  146. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/pagination.mjs +5 -2
  147. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/pin-code.mjs +94 -0
  148. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/popover.mjs +3 -0
  149. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/radio-button-wrapper.mjs +68 -2
  150. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/scroller.mjs +3 -0
  151. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/segmented-control-item.mjs +3 -0
  152. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/select-wrapper-dropdown.mjs +9 -8
  153. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/select-wrapper.mjs +5 -2
  154. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/state-message.mjs +3 -0
  155. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/stepper-horizontal-item.mjs +3 -0
  156. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/stepper-horizontal.mjs +3 -0
  157. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/switch.mjs +3 -0
  158. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/table-head-cell.mjs +3 -0
  159. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/table.mjs +3 -0
  160. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/tabs-bar.mjs +3 -0
  161. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/tabs.mjs +3 -0
  162. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/tag-dismissible.mjs +3 -0
  163. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/tag.mjs +3 -0
  164. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/text-field-wrapper.mjs +4 -1
  165. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/textarea-wrapper.mjs +1 -1
  166. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/public-api.mjs +3 -0
  167. package/ssr/esm/lib/components/index.d.ts +3 -0
  168. package/ssr/esm/lib/components/modal.wrapper.d.ts +4 -2
  169. package/ssr/esm/lib/components/multi-select-option.wrapper.d.ts +23 -0
  170. package/ssr/esm/lib/components/multi-select.wrapper.d.ts +104 -0
  171. package/ssr/esm/lib/components/pin-code.wrapper.d.ts +120 -0
  172. package/ssr/esm/lib/components/radio-button-wrapper.wrapper.d.ts +8 -0
  173. package/ssr/esm/lib/dsr-components/carousel.d.ts +1 -0
  174. package/ssr/esm/lib/dsr-components/multi-select-option.d.ts +6 -0
  175. package/ssr/esm/lib/dsr-components/multi-select.d.ts +17 -0
  176. package/ssr/esm/lib/dsr-components/pin-code.d.ts +9 -0
  177. package/ssr/esm/lib/types.d.ts +30 -2
@@ -529,14 +529,14 @@ var _typeof$1 = typeof Symbol === "function" && typeof Symbol.iterator === "symb
529
529
 
530
530
  var isBrowser = (typeof window === "undefined" ? "undefined" : _typeof$1(window)) === "object" && (typeof document === "undefined" ? "undefined" : _typeof$1(document)) === 'object' && document.nodeType === 9;
531
531
 
532
- function _typeof(obj) {
532
+ function _typeof(o) {
533
533
  "@babel/helpers - typeof";
534
534
 
535
- return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) {
536
- return typeof obj;
537
- } : function (obj) {
538
- return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj;
539
- }, _typeof(obj);
535
+ return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) {
536
+ return typeof o;
537
+ } : function (o) {
538
+ return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o;
539
+ }, _typeof(o);
540
540
  }
541
541
 
542
542
  function _toPrimitive(input, hint) {
@@ -3740,9 +3740,13 @@ const themeDark = {
3740
3740
  infoSoftColorDarken: '#0C1A27',
3741
3741
  infoSoftColorLighten: '#1A3856'
3742
3742
  };
3743
+ const themeAuto = {
3744
+ ...themeLight,
3745
+ };
3743
3746
  const themes = {
3744
3747
  'light': themeLight,
3745
- 'dark': themeDark
3748
+ 'dark': themeDark,
3749
+ 'auto': themeAuto
3746
3750
  };
3747
3751
  /* Auto Generated End */
3748
3752
  const schemeHighContrastMerged = {
@@ -3874,6 +3878,10 @@ const hostHiddenStyles = {
3874
3878
  },
3875
3879
  };
3876
3880
 
3881
+ const colorSchemeStyles = {
3882
+ colorScheme: 'light dark',
3883
+ };
3884
+
3877
3885
  /**
3878
3886
  * utility to wrap jss styles parameter in `@media (hover: hover)`
3879
3887
  * which is used to not have hover styles on touch devices
@@ -3884,6 +3892,10 @@ const hoverMediaQuery = (style) =>
3884
3892
  ({ '@media(hover:hover)': style }) // used for prod build, yarn start and unit tests
3885
3893
  ; // used for staging build in e2e and vrt tests
3886
3894
 
3895
+ const prefersColorSchemeDarkMediaQuery = (theme, style) => {
3896
+ return isThemeAuto(theme) && { '@media (prefers-color-scheme: dark)': style };
3897
+ };
3898
+
3887
3899
  const getSchemedHighContrastMediaQuery = (light, dark) => {
3888
3900
  return {
3889
3901
  '@media (forced-colors: active) and (prefers-color-scheme: light)': light,
@@ -3948,15 +3960,164 @@ const mergeDeep = (...objects) => {
3948
3960
  }, {});
3949
3961
  };
3950
3962
 
3951
- const isThemeDark = (theme) => {
3952
- return theme === 'dark';
3953
- };
3954
-
3955
3963
  const scrollShadowColor = 'rgba(204, 204, 204, 0.35)';
3956
3964
  const scrollShadowColorDark = 'rgba(0, 0, 0, 0.6)';
3957
3965
 
3966
+ const getThemedFormStateColors = (theme, state) => {
3967
+ const themedColors = getThemedColors(theme);
3968
+ return {
3969
+ formStateColor: themedColors[`${state}Color`],
3970
+ formStateHoverColor: themedColors[`${state}ColorDarken`],
3971
+ };
3972
+ };
3973
+
3974
+ const getBaseChildStyles = (child, state, theme, additionalDefaultJssStyle) => {
3975
+ const { primaryColor, contrastLowColor, contrastMediumColor, disabledColor } = getThemedColors(theme);
3976
+ const { primaryColor: primaryColorDark, contrastLowColor: contrastLowColorDark, contrastMediumColor: contrastMediumColorDark, disabledColor: disabledColorDark, } = getThemedColors('dark');
3977
+ const { formStateColor, formStateHoverColor } = getThemedFormStateColors(theme, state);
3978
+ const { formStateColor: formStateColorDark, formStateHoverColor: formStateHoverColorDark } = getThemedFormStateColors('dark', state);
3979
+ return {
3980
+ [`::slotted(${child})`]: {
3981
+ display: 'block',
3982
+ width: '100%',
3983
+ height: child !== 'textarea'
3984
+ ? `calc(${fontLineHeight} + 10px + ${borderWidthBase} * 2 + ${spacingStaticSmall} * 2)` // we need 10px additionally so input height becomes 54px
3985
+ : 'auto',
3986
+ margin: 0,
3987
+ outline: 0,
3988
+ WebkitAppearance: 'none',
3989
+ appearance: 'none',
3990
+ boxSizing: 'border-box',
3991
+ border: `${borderWidthBase} solid ${formStateColor || contrastMediumColor}`,
3992
+ borderRadius: borderRadiusSmall,
3993
+ background: 'transparent',
3994
+ font: textSmallStyle.font.replace('ex', 'ex + 6px'),
3995
+ textIndent: 0,
3996
+ color: primaryColor,
3997
+ transition: ['color', 'border-color', 'background-color'].map(getTransition).join(),
3998
+ ...prefersColorSchemeDarkMediaQuery(theme, {
3999
+ borderColor: formStateColorDark || contrastMediumColorDark,
4000
+ color: primaryColorDark,
4001
+ }),
4002
+ ...additionalDefaultJssStyle,
4003
+ },
4004
+ ...hoverMediaQuery({
4005
+ // with the media query the selector has higher priority and overrides disabled styles
4006
+ [`::slotted(${child}:not(:disabled):not(:focus):not([readonly]):hover)`]: {
4007
+ borderColor: formStateHoverColor || primaryColor,
4008
+ ...prefersColorSchemeDarkMediaQuery(theme, {
4009
+ borderColor: formStateHoverColorDark || primaryColorDark,
4010
+ }),
4011
+ },
4012
+ }),
4013
+ [`::slotted(${child}:focus)`]: {
4014
+ borderColor: primaryColor,
4015
+ ...prefersColorSchemeDarkMediaQuery(theme, {
4016
+ borderColor: primaryColorDark,
4017
+ }),
4018
+ },
4019
+ [`::slotted(${child}:disabled)`]: {
4020
+ cursor: 'not-allowed',
4021
+ color: disabledColor,
4022
+ borderColor: disabledColor,
4023
+ WebkitTextFillColor: disabledColor,
4024
+ ...prefersColorSchemeDarkMediaQuery(theme, {
4025
+ color: disabledColorDark,
4026
+ borderColor: disabledColorDark,
4027
+ WebkitTextFillColor: disabledColorDark,
4028
+ }),
4029
+ },
4030
+ ...(child !== 'select' && {
4031
+ [`::slotted(${child}[readonly])`]: {
4032
+ borderColor: contrastLowColor,
4033
+ background: contrastLowColor,
4034
+ ...prefersColorSchemeDarkMediaQuery(theme, {
4035
+ borderColor: contrastLowColorDark,
4036
+ background: contrastLowColorDark,
4037
+ }),
4038
+ },
4039
+ }),
4040
+ };
4041
+ };
4042
+ const getLabelStyles = (child, isDisabled, hideLabel, state, theme, counterOrUnitOrIconStyles, additionalLabelJssStyle) => {
4043
+ const { primaryColor, disabledColor, contrastHighColor } = getThemedColors(theme);
4044
+ const { primaryColor: primaryColorDark, disabledColor: disabledColorDark, contrastHighColor: contrastHighColorDark, } = getThemedColors('dark');
4045
+ const { formStateHoverColor } = getThemedFormStateColors(theme, state);
4046
+ const { formStateHoverColor: formStateHoverColorDark } = getThemedFormStateColors('dark', state);
4047
+ const counterOrUnitOrIconStylesKey = counterOrUnitOrIconStyles && Object.keys(counterOrUnitOrIconStyles)[0];
4048
+ return {
4049
+ label: {
4050
+ display: 'flex',
4051
+ flexDirection: 'column',
4052
+ gap: spacingStaticXSmall,
4053
+ position: 'relative',
4054
+ '&__text': {
4055
+ display: 'block',
4056
+ ...buildResponsiveStyles(hideLabel, (isHidden) => getHiddenTextJssStyle(isHidden, { width: 'fit-content' })),
4057
+ ...textSmallStyle,
4058
+ color: isDisabled ? disabledColor : primaryColor,
4059
+ transition: getTransition('color'),
4060
+ ...prefersColorSchemeDarkMediaQuery(theme, {
4061
+ color: isDisabled ? disabledColorDark : primaryColorDark,
4062
+ }),
4063
+ '&+&': {
4064
+ marginTop: `-${spacingStaticXSmall}`,
4065
+ fontSize: fontSizeTextXSmall,
4066
+ ...(!isDisabled && {
4067
+ color: contrastHighColor,
4068
+ ...prefersColorSchemeDarkMediaQuery(theme, {
4069
+ color: contrastHighColorDark,
4070
+ }),
4071
+ }),
4072
+ },
4073
+ ...hoverMediaQuery({
4074
+ '&:hover': {
4075
+ [`&~::slotted(${child}:not(:disabled):not(:focus):not([readonly]))`]: {
4076
+ borderColor: addImportantToRule(formStateHoverColor || primaryColor),
4077
+ ...prefersColorSchemeDarkMediaQuery(theme, {
4078
+ borderColor: addImportantToRule(formStateHoverColorDark || primaryColorDark),
4079
+ }),
4080
+ },
4081
+ },
4082
+ }),
4083
+ },
4084
+ ...additionalLabelJssStyle,
4085
+ },
4086
+ ...(counterOrUnitOrIconStyles && {
4087
+ [counterOrUnitOrIconStylesKey]: {
4088
+ ...counterOrUnitOrIconStyles[counterOrUnitOrIconStylesKey],
4089
+ pointerEvents: 'none',
4090
+ ...(isDisabled && {
4091
+ color: disabledColor,
4092
+ cursor: 'not-allowed',
4093
+ ...prefersColorSchemeDarkMediaQuery(theme, {
4094
+ color: disabledColorDark,
4095
+ }),
4096
+ }),
4097
+ },
4098
+ }),
4099
+ };
4100
+ };
4101
+
4102
+ const OPTION_HEIGHT = 40; // optgroups are higher and ignored
4103
+ const MULTI_SELECT_OPTION_HEIGHT = 44;
4104
+ const getNoResultsOptionJssStyle = () => ({
4105
+ '&[role=status]': {
4106
+ cursor: 'not-allowed',
4107
+ },
4108
+ '&__sr': getHiddenTextJssStyle(),
4109
+ });
4110
+
3958
4111
  const hasDocument = typeof document !== 'undefined';
3959
4112
 
4113
+ const isThemeAuto = (theme) => {
4114
+ return theme === 'auto';
4115
+ };
4116
+
4117
+ const isThemeDark = (theme) => {
4118
+ return theme === 'dark';
4119
+ };
4120
+
3960
4121
  const formatObjectOutput = (value) => {
3961
4122
  return JSON.stringify(value)
3962
4123
  .replace(/"([a-zA-Z?]+)":/g, '$1:') // remove double quotes from keys
@@ -3969,15 +4130,20 @@ const formatObjectOutput = (value) => {
3969
4130
 
3970
4131
  const HEADING_TAGS = ['h1', 'h2', 'h3', 'h4', 'h5', 'h6'];
3971
4132
 
3972
- const getComponentCss$Z = (size, compact, open, theme) => {
4133
+ const getComponentCss$10 = (size, compact, open, theme) => {
3973
4134
  const { primaryColor, hoverColor, focusColor, contrastLowColor } = getThemedColors(theme);
4135
+ const { primaryColor: primaryColorDark, hoverColor: hoverColorDark, focusColor: focusColorDark, contrastLowColor: contrastLowColorDark, } = getThemedColors('dark');
3974
4136
  return getCss({
3975
4137
  '@global': {
3976
4138
  ':host': addImportantToEachRule({
3977
4139
  display: 'block',
3978
4140
  ...(!compact && {
3979
4141
  borderBottom: `1px solid ${contrastLowColor}`,
4142
+ ...prefersColorSchemeDarkMediaQuery(theme, {
4143
+ borderColor: contrastLowColorDark,
4144
+ }),
3980
4145
  }),
4146
+ ...colorSchemeStyles,
3981
4147
  ...hostHiddenStyles,
3982
4148
  }),
3983
4149
  button: {
@@ -3993,6 +4159,9 @@ const getComponentCss$Z = (size, compact, open, theme) => {
3993
4159
  cursor: 'pointer',
3994
4160
  textAlign: 'left',
3995
4161
  color: primaryColor,
4162
+ ...prefersColorSchemeDarkMediaQuery(theme, {
4163
+ color: primaryColorDark,
4164
+ }),
3996
4165
  ...textSmallStyle,
3997
4166
  fontWeight: fontWeightSemiBold,
3998
4167
  ...buildResponsiveStyles(size, (s) => ({
@@ -4023,10 +4192,16 @@ const getComponentCss$Z = (size, compact, open, theme) => {
4023
4192
  },
4024
4193
  '&:hover::before': {
4025
4194
  background: hoverColor,
4195
+ ...prefersColorSchemeDarkMediaQuery(theme, {
4196
+ background: hoverColorDark,
4197
+ }),
4026
4198
  },
4027
4199
  })),
4028
4200
  '&:focus::before': {
4029
4201
  border: `${borderWidthBase} solid ${focusColor}`,
4202
+ ...prefersColorSchemeDarkMediaQuery(theme, {
4203
+ borderColor: focusColorDark,
4204
+ }),
4030
4205
  },
4031
4206
  '&:not(:focus-visible)::before': {
4032
4207
  border: 0,
@@ -4052,6 +4227,9 @@ const getComponentCss$Z = (size, compact, open, theme) => {
4052
4227
  },
4053
4228
  collapsible: {
4054
4229
  color: primaryColor,
4230
+ ...prefersColorSchemeDarkMediaQuery(theme, {
4231
+ color: primaryColorDark,
4232
+ }),
4055
4233
  display: 'grid',
4056
4234
  ...(open
4057
4235
  ? {
@@ -4096,7 +4274,7 @@ const duration$1 = `var(${cssVariableAnimationDuration},${ANIMATION_DURATION$1}m
4096
4274
  const easeInQuad$1 = 'cubic-bezier(0.45,0,0.55,1)';
4097
4275
  const easeOutQuad$1 = 'cubic-bezier(0.5,1,0.89,1)';
4098
4276
  const topBottomFallback = '56px';
4099
- const getComponentCss$Y = (isOpen) => {
4277
+ const getComponentCss$$ = (isOpen) => {
4100
4278
  return getCss({
4101
4279
  '@global': {
4102
4280
  ':host': addImportantToEachRule({
@@ -4138,6 +4316,7 @@ const getComponentCss$Y = (isOpen) => {
4138
4316
  left: gridExtendedOffsetXXL,
4139
4317
  right: gridExtendedOffsetXXL,
4140
4318
  },
4319
+ ...colorSchemeStyles,
4141
4320
  ...hostHiddenStyles,
4142
4321
  }),
4143
4322
  },
@@ -4158,12 +4337,15 @@ const getGroupDirectionJssStyles = (direction) => {
4158
4337
  return groupDirectionJssStyles[direction];
4159
4338
  };
4160
4339
 
4161
- const getComponentCss$X = (direction) => {
4340
+ const getComponentCss$_ = (direction) => {
4162
4341
  return getCss({
4163
4342
  '@global': {
4164
4343
  ':host': {
4165
4344
  display: 'block',
4166
- ...addImportantToEachRule(hostHiddenStyles),
4345
+ ...addImportantToEachRule({
4346
+ ...colorSchemeStyles,
4347
+ ...hostHiddenStyles,
4348
+ }),
4167
4349
  },
4168
4350
  div: {
4169
4351
  display: 'flex',
@@ -4208,6 +4390,7 @@ const offsetVertical = '-2px';
4208
4390
  const offsetHorizontal = '-4px';
4209
4391
  const getLinkButtonPureStyles = (icon, iconSource, active, isDisabledOrLoading, stretch, size, hideLabel, alignLabel, hasSlottedAnchor, theme) => {
4210
4392
  const { primaryColor, disabledColor, hoverColor, focusColor } = getThemedColors(theme);
4393
+ const { primaryColor: primaryColorDark, disabledColor: disabledColorDark, hoverColor: hoverColorDark, focusColor: focusColorDark, } = getThemedColors('dark');
4211
4394
  const hasIcon = hasVisibleIcon(icon, iconSource);
4212
4395
  return {
4213
4396
  '@global': {
@@ -4215,6 +4398,7 @@ const getLinkButtonPureStyles = (icon, iconSource, active, isDisabledOrLoading,
4215
4398
  ...addImportantToEachRule({
4216
4399
  transform: 'translate3d(0,0,0)',
4217
4400
  outline: 0,
4401
+ ...colorSchemeStyles,
4218
4402
  ...hostHiddenStyles,
4219
4403
  }),
4220
4404
  ...buildResponsiveStyles(stretch, (responsiveStretch) => ({
@@ -4231,6 +4415,9 @@ const getLinkButtonPureStyles = (icon, iconSource, active, isDisabledOrLoading,
4231
4415
  margin: 0,
4232
4416
  padding: 0,
4233
4417
  color: isDisabledOrLoading ? disabledColor : primaryColor,
4418
+ ...prefersColorSchemeDarkMediaQuery(theme, {
4419
+ color: isDisabledOrLoading ? disabledColorDark : primaryColorDark,
4420
+ }),
4234
4421
  outline: 0,
4235
4422
  ...textSmallStyle,
4236
4423
  ...mergeDeep(buildResponsiveStyles(stretch, (stretchValue) => ({
@@ -4253,6 +4440,9 @@ const getLinkButtonPureStyles = (icon, iconSource, active, isDisabledOrLoading,
4253
4440
  ...(active && {
4254
4441
  ...frostedGlassStyle,
4255
4442
  backgroundColor: hoverColor,
4443
+ ...prefersColorSchemeDarkMediaQuery(theme, {
4444
+ backgroundColor: hoverColorDark,
4445
+ }),
4256
4446
  }),
4257
4447
  },
4258
4448
  ...(!isDisabledOrLoading &&
@@ -4260,11 +4450,17 @@ const getLinkButtonPureStyles = (icon, iconSource, active, isDisabledOrLoading,
4260
4450
  '&:hover::before': {
4261
4451
  ...frostedGlassStyle,
4262
4452
  backgroundColor: hoverColor,
4453
+ ...prefersColorSchemeDarkMediaQuery(theme, {
4454
+ backgroundColor: hoverColorDark,
4455
+ }),
4263
4456
  },
4264
4457
  })),
4265
4458
  ...(!hasSlottedAnchor && {
4266
4459
  '&:focus::before': {
4267
4460
  border: `${borderWidthBase} solid ${focusColor}`,
4461
+ ...prefersColorSchemeDarkMediaQuery(theme, {
4462
+ borderColor: focusColorDark,
4463
+ }),
4268
4464
  },
4269
4465
  '&:not(:focus-visible)::before': {
4270
4466
  border: 0,
@@ -4294,7 +4490,7 @@ const getLinkButtonPureStyles = (icon, iconSource, active, isDisabledOrLoading,
4294
4490
  };
4295
4491
  };
4296
4492
 
4297
- const getComponentCss$W = (icon, iconSource, active, isLoading, isDisabledOrLoading, stretch, size, hideLabel, alignLabel, theme) => {
4493
+ const getComponentCss$Z = (icon, iconSource, active, isLoading, isDisabledOrLoading, stretch, size, hideLabel, alignLabel, theme) => {
4298
4494
  const hasIcon = hasVisibleIcon(icon, iconSource);
4299
4495
  return getCss(mergeDeep(getLinkButtonPureStyles(icon, iconSource, active, isDisabledOrLoading, stretch, size, hideLabel, alignLabel, false, theme), {
4300
4496
  root: {
@@ -4360,7 +4556,11 @@ const getTileBaseStyles = (aspectRatio, isDisabled) => {
4360
4556
  '@global': {
4361
4557
  ':host': {
4362
4558
  display: 'block',
4363
- ...addImportantToEachRule(hostHiddenStyles),
4559
+ hyphens: 'auto',
4560
+ ...addImportantToEachRule({
4561
+ ...colorSchemeStyles,
4562
+ ...hostHiddenStyles,
4563
+ }),
4364
4564
  },
4365
4565
  ...addImportantToEachRule({
4366
4566
  '::slotted': {
@@ -4425,6 +4625,7 @@ background, align, compact, hasGradient, isDisabled) => {
4425
4625
  maxWidth: pxToRemWithUnit(550),
4426
4626
  margin: 0,
4427
4627
  ...textLargeStyle,
4628
+ hyphens: 'inherit',
4428
4629
  ...mergeDeep(buildResponsiveStyles(size, (s) => sizeMap$5[s]), buildResponsiveStyles(weight, (w) => ({
4429
4630
  fontWeight: getFontWeight(w === 'semibold' ? 'semi-bold' : w), // mapping of the deprecated weight semibold
4430
4631
  }))),
@@ -4465,7 +4666,7 @@ background, align, compact, hasGradient, isDisabled) => {
4465
4666
  });
4466
4667
  };
4467
4668
 
4468
- const getComponentCss$V = (isDisabledOrLoading, ...args) => {
4669
+ const getComponentCss$Y = (isDisabledOrLoading, ...args) => {
4469
4670
  const buttonLinkTileStyles = getButtonLinkTileStyles(...args);
4470
4671
  return getCss({
4471
4672
  ...buttonLinkTileStyles,
@@ -4502,6 +4703,7 @@ const getVariantColors = (variant, theme) => {
4502
4703
  const getLinkButtonStyles = (icon, iconSource, variant, hideLabel, isDisabledOrLoading, hasSlottedAnchor, theme) => {
4503
4704
  const isPrimary = variant === 'primary';
4504
4705
  const { textColor, borderColor, borderColorHover, backgroundColor, backgroundColorHover } = getVariantColors(variant, theme);
4706
+ const { textColor: textColorDark, borderColor: borderColorDark, borderColorHover: borderColorHoverDark, backgroundColor: backgroundColorDark, backgroundColorHover: backgroundColorHoverDark, } = getVariantColors(variant, 'dark');
4505
4707
  const { focusColor } = getThemedColors(theme);
4506
4708
  const hasIcon = hasVisibleIcon(icon, iconSource) || hideLabel;
4507
4709
  return {
@@ -4511,6 +4713,7 @@ const getLinkButtonStyles = (icon, iconSource, variant, hideLabel, isDisabledOrL
4511
4713
  ...addImportantToEachRule({
4512
4714
  verticalAlign: 'top',
4513
4715
  outline: 0,
4716
+ ...colorSchemeStyles,
4514
4717
  ...hostHiddenStyles,
4515
4718
  }),
4516
4719
  },
@@ -4556,8 +4759,17 @@ const getLinkButtonStyles = (icon, iconSource, variant, hideLabel, isDisabledOrL
4556
4759
  backgroundColor: backgroundColorHover,
4557
4760
  borderColor: isHighContrastMode ? focusColor : borderColorHover,
4558
4761
  ...(!isPrimary && frostedGlassStyle),
4762
+ ...prefersColorSchemeDarkMediaQuery(theme, {
4763
+ backgroundColor: backgroundColorHoverDark,
4764
+ borderColor: borderColorHoverDark,
4765
+ }),
4559
4766
  },
4560
4767
  })),
4768
+ ...prefersColorSchemeDarkMediaQuery(theme, {
4769
+ borderColor: borderColorDark,
4770
+ backgroundColor: backgroundColorDark,
4771
+ color: textColorDark,
4772
+ }),
4561
4773
  },
4562
4774
  label: buildResponsiveStyles(hideLabel, getHiddenTextJssStyle),
4563
4775
  ...(hasIcon && {
@@ -4586,9 +4798,10 @@ const getDisabledColors = (variant, loading, theme) => {
4586
4798
  };
4587
4799
  return colors[variant === 'tertiary' ? 'secondary' : variant];
4588
4800
  };
4589
- const getComponentCss$U = (icon, iconSource, variant, hideLabel, disabled, loading, theme) => {
4801
+ const getComponentCss$X = (icon, iconSource, variant, hideLabel, disabled, loading, theme) => {
4590
4802
  const disabledOrLoading = isDisabledOrLoading(disabled, loading);
4591
4803
  const { textColor, borderColor, backgroundColor } = getDisabledColors(variant, loading, theme);
4804
+ const { textColor: textColorDark, borderColor: borderColorDark, backgroundColor: backgroundColorDark, } = getDisabledColors(variant, loading, 'dark');
4592
4805
  const isPrimary = variant === 'primary';
4593
4806
  return getCss(mergeDeep(getLinkButtonStyles(icon, iconSource, variant, hideLabel, disabledOrLoading, false, theme), {
4594
4807
  root: {
@@ -4597,6 +4810,11 @@ const getComponentCss$U = (icon, iconSource, variant, hideLabel, disabled, loadi
4597
4810
  backgroundColor,
4598
4811
  borderColor,
4599
4812
  color: textColor,
4813
+ ...prefersColorSchemeDarkMediaQuery(theme, {
4814
+ backgroundColor: backgroundColorDark,
4815
+ borderColor: borderColorDark,
4816
+ color: textColorDark,
4817
+ }),
4600
4818
  }),
4601
4819
  ...(loading && !isPrimary && frostedGlassStyle),
4602
4820
  },
@@ -4609,6 +4827,7 @@ const getComponentCss$U = (icon, iconSource, variant, hideLabel, disabled, loadi
4609
4827
  top: '50%',
4610
4828
  left: '50%',
4611
4829
  transform: 'translate(-50%, -50%)',
4830
+ ...(isPrimary && !isHighContrastMode && { filter: 'invert(1)' }),
4612
4831
  },
4613
4832
  }),
4614
4833
  label: {
@@ -4619,6 +4838,11 @@ const getComponentCss$U = (icon, iconSource, variant, hideLabel, disabled, loadi
4619
4838
  },
4620
4839
  icon: {
4621
4840
  transition: getTransition('opacity'),
4841
+ ...(!disabled &&
4842
+ isPrimary &&
4843
+ !isHighContrastMode && {
4844
+ filter: 'invert(1)',
4845
+ }),
4622
4846
  ...(loading && {
4623
4847
  opacity: 0, // use opacity for smooth transition between states
4624
4848
  }),
@@ -4645,8 +4869,9 @@ const spacingMap = {
4645
4869
  basic: gridBasicOffset,
4646
4870
  extended: gridExtendedOffset,
4647
4871
  };
4648
- const getComponentCss$T = (width, hasPagination, isInfinitePagination, alignHeader, theme) => {
4872
+ const getComponentCss$W = (width, hasPagination, isInfinitePagination, alignHeader, theme) => {
4649
4873
  const { primaryColor, contrastMediumColor, focusColor } = getThemedColors(theme);
4874
+ const { primaryColor: primaryColorDark, contrastMediumColor: contrastMediumColorDark, focusColor: focusColorDark, } = getThemedColors('dark');
4650
4875
  const { canvasTextColor } = getHighContrastColors();
4651
4876
  const isHeaderAlignCenter = alignHeader === 'center';
4652
4877
  return getCss({
@@ -4656,6 +4881,7 @@ const getComponentCss$T = (width, hasPagination, isInfinitePagination, alignHead
4656
4881
  gap: spacingFluidMedium,
4657
4882
  flexDirection: 'column',
4658
4883
  boxSizing: 'content-box',
4884
+ ...colorSchemeStyles,
4659
4885
  ...hostHiddenStyles,
4660
4886
  }),
4661
4887
  '::slotted(*)': {
@@ -4663,6 +4889,9 @@ const getComponentCss$T = (width, hasPagination, isInfinitePagination, alignHead
4663
4889
  },
4664
4890
  '::slotted(*:focus-visible)': addImportantToEachRule({
4665
4891
  outline: `${borderWidthBase} solid ${focusColor}`,
4892
+ ...prefersColorSchemeDarkMediaQuery(theme, {
4893
+ outlineColor: focusColorDark,
4894
+ }),
4666
4895
  outlineOffset: '2px',
4667
4896
  }),
4668
4897
  [selectorHeading]: addImportantToEachRule({
@@ -4677,6 +4906,9 @@ const getComponentCss$T = (width, hasPagination, isInfinitePagination, alignHead
4677
4906
  }),
4678
4907
  [`${selectorHeading},${selectorDescription}`]: addImportantToEachRule({
4679
4908
  color: primaryColor,
4909
+ ...prefersColorSchemeDarkMediaQuery(theme, {
4910
+ color: primaryColorDark,
4911
+ }),
4680
4912
  [mediaQueryS]: isHeaderAlignCenter
4681
4913
  ? {
4682
4914
  gridColumn: 2,
@@ -4733,7 +4965,6 @@ const getComponentCss$T = (width, hasPagination, isInfinitePagination, alignHead
4733
4965
  padding: '4px 0',
4734
4966
  margin: '-4px 0',
4735
4967
  '&__track': {
4736
- cursor: 'grab',
4737
4968
  // !important is necessary to override inline styles set by splide library
4738
4969
  ...addImportantToEachRule({
4739
4970
  padding: `0 ${spacingMap[width].base}`,
@@ -4748,6 +4979,7 @@ const getComponentCss$T = (width, hasPagination, isInfinitePagination, alignHead
4748
4979
  },
4749
4980
  }),
4750
4981
  '&--draggable': {
4982
+ cursor: 'grab',
4751
4983
  userSelect: 'none',
4752
4984
  WebkitUserSelect: 'none',
4753
4985
  WebkitTouchCallout: 'none',
@@ -4765,7 +4997,7 @@ const getComponentCss$T = (width, hasPagination, isInfinitePagination, alignHead
4765
4997
  '&__sr': getHiddenTextJssStyle(), // appears in the DOM when sliding
4766
4998
  },
4767
4999
  ...(hasPagination && {
4768
- ['pagination-container']: {
5000
+ 'pagination-container': {
4769
5001
  ...buildResponsiveStyles(hasPagination, (hasPaginationValue) => ({
4770
5002
  display: hasPaginationValue ? 'flex' : 'none',
4771
5003
  })),
@@ -4785,7 +5017,16 @@ const getComponentCss$T = (width, hasPagination, isInfinitePagination, alignHead
4785
5017
  },
4786
5018
  bullet: {
4787
5019
  borderRadius: borderRadiusSmall,
4788
- background: isHighContrastMode ? canvasTextColor : contrastMediumColor,
5020
+ ...(isHighContrastMode
5021
+ ? {
5022
+ background: canvasTextColor,
5023
+ }
5024
+ : {
5025
+ background: contrastMediumColor,
5026
+ ...prefersColorSchemeDarkMediaQuery(theme, {
5027
+ background: contrastMediumColorDark,
5028
+ }),
5029
+ }),
4789
5030
  ...(isInfinitePagination
4790
5031
  ? {
4791
5032
  width: '0px',
@@ -4799,13 +5040,13 @@ const getComponentCss$T = (width, hasPagination, isInfinitePagination, alignHead
4799
5040
  }),
4800
5041
  },
4801
5042
  ...(isInfinitePagination && {
4802
- [`${paginationInfiniteStartCaseClass}`]: {
4803
- ['& > .bullet:nth-child(-n+4)']: {
5043
+ [paginationInfiniteStartCaseClass]: {
5044
+ '& > .bullet:nth-child(-n+4)': {
4804
5045
  width: paginationBulletSize,
4805
5046
  height: paginationBulletSize,
4806
5047
  },
4807
5048
  },
4808
- [`${bulletInfiniteClass}`]: {
5049
+ [bulletInfiniteClass]: {
4809
5050
  // Necessary to override the bulletActiveClass sibling selector
4810
5051
  ...addImportantToEachRule({
4811
5052
  width: paginationInfiniteBulletSize,
@@ -4821,8 +5062,17 @@ const getComponentCss$T = (width, hasPagination, isInfinitePagination, alignHead
4821
5062
  },
4822
5063
  },
4823
5064
  }),
4824
- [`${bulletActiveClass}`]: {
4825
- background: isHighContrastMode ? canvasTextColor : primaryColor,
5065
+ [bulletActiveClass]: {
5066
+ ...(isHighContrastMode
5067
+ ? {
5068
+ background: canvasTextColor,
5069
+ }
5070
+ : {
5071
+ background: primaryColor,
5072
+ ...prefersColorSchemeDarkMediaQuery(theme, {
5073
+ background: primaryColorDark,
5074
+ }),
5075
+ }),
4826
5076
  height: paginationBulletSize,
4827
5077
  width: addImportantToRule(paginationActiveBulletSize),
4828
5078
  ...(isInfinitePagination && {
@@ -4840,14 +5090,6 @@ const getComponentCss$T = (width, hasPagination, isInfinitePagination, alignHead
4840
5090
  });
4841
5091
  };
4842
5092
 
4843
- const getThemedFormStateColors = (theme, state) => {
4844
- const themedColors = getThemedColors(theme);
4845
- return {
4846
- formStateColor: themedColors[`${state}Color`],
4847
- formStateHoverColor: themedColors[`${state}ColorDarken`],
4848
- };
4849
- };
4850
-
4851
5093
  const getFunctionalComponentRequiredStyles = () => {
4852
5094
  return {
4853
5095
  required: {
@@ -4864,6 +5106,9 @@ const getFunctionalComponentStateMessageStyles = (theme, state) => {
4864
5106
  marginTop: spacingStaticXSmall,
4865
5107
  ...textSmallStyle,
4866
5108
  color: getThemedFormStateColors(theme, state).formStateColor,
5109
+ ...prefersColorSchemeDarkMediaQuery(theme, {
5110
+ color: getThemedFormStateColors('dark', state).formStateColor,
5111
+ }),
4867
5112
  transition: getTransition('color'),
4868
5113
  },
4869
5114
  };
@@ -4871,20 +5116,32 @@ const getFunctionalComponentStateMessageStyles = (theme, state) => {
4871
5116
 
4872
5117
  const getCheckboxRadioJssStyle = (hideLabel, state, isDisabled, isLoading, theme) => {
4873
5118
  const { primaryColor, contrastMediumColor, contrastHighColor, disabledColor, focusColor } = getThemedColors(theme);
5119
+ const { primaryColor: primaryColorDark, contrastMediumColor: contrastMediumColorDark, contrastHighColor: contrastHighColorDark, disabledColor: disabledColorDark, focusColor: focusColorDark, } = getThemedColors('dark');
4874
5120
  const { formStateColor, formStateHoverColor } = getThemedFormStateColors(theme, state);
5121
+ const { formStateColor: formStateColorDark, formStateHoverColor: formStateHoverColorDark } = getThemedFormStateColors('dark', state);
4875
5122
  const { canvasTextColor } = getHighContrastColors();
4876
5123
  const disabledOrLoading = isDisabledOrLoading(isDisabled, isLoading);
5124
+ // TODO: needs to be extracted into a color function
4877
5125
  const uncheckedColor = disabledOrLoading ? disabledColor : formStateColor || contrastMediumColor;
5126
+ const uncheckedColorDark = disabledOrLoading ? disabledColorDark : formStateColorDark || contrastMediumColorDark;
4878
5127
  const uncheckedHoverColor = formStateHoverColor || primaryColor;
5128
+ const uncheckedHoverColorDark = formStateHoverColorDark || primaryColorDark;
4879
5129
  const checkedColor = isHighContrastMode
4880
5130
  ? canvasTextColor
4881
5131
  : disabledOrLoading
4882
5132
  ? disabledColor
4883
5133
  : formStateColor || primaryColor;
5134
+ const checkedColorDark = isHighContrastMode
5135
+ ? canvasTextColor
5136
+ : disabledOrLoading
5137
+ ? disabledColorDark
5138
+ : formStateColorDark || primaryColorDark;
4884
5139
  const checkedHoverColor = formStateHoverColor || contrastHighColor;
5140
+ const checkedHoverColorDark = formStateHoverColorDark || contrastHighColorDark;
4885
5141
  return {
4886
5142
  '@global': {
4887
5143
  ':host': addImportantToEachRule({
5144
+ ...colorSchemeStyles,
4888
5145
  ...hostHiddenStyles,
4889
5146
  display: 'block',
4890
5147
  }),
@@ -4905,6 +5162,9 @@ const getCheckboxRadioJssStyle = (hideLabel, state, isDisabled, isLoading, theme
4905
5162
  background: `transparent 0% 0% / ${fontLineHeight}`,
4906
5163
  transition: ['border-color', 'background-color'].map(getTransition).join(),
4907
5164
  border: `2px solid ${uncheckedColor}`,
5165
+ ...prefersColorSchemeDarkMediaQuery(theme, {
5166
+ borderColor: uncheckedColorDark,
5167
+ }),
4908
5168
  outline: 0,
4909
5169
  cursor: disabledOrLoading ? 'not-allowed' : 'pointer',
4910
5170
  },
@@ -4912,16 +5172,27 @@ const getCheckboxRadioJssStyle = (hideLabel, state, isDisabled, isLoading, theme
4912
5172
  // background-image is merged in later
4913
5173
  borderColor: checkedColor,
4914
5174
  backgroundColor: checkedColor,
5175
+ ...prefersColorSchemeDarkMediaQuery(theme, {
5176
+ borderColor: checkedColorDark,
5177
+ backgroundColor: checkedColorDark,
5178
+ }),
4915
5179
  },
4916
5180
  ...(!disabledOrLoading && {
4917
5181
  ...(!isHighContrastMode &&
4918
5182
  hoverMediaQuery({
4919
5183
  '&(input:hover), .text:hover ~ &(input)': {
4920
5184
  borderColor: uncheckedHoverColor,
5185
+ ...prefersColorSchemeDarkMediaQuery(theme, {
5186
+ borderColor: uncheckedHoverColorDark,
5187
+ }),
4921
5188
  },
4922
5189
  '&(input:checked:hover), .text:hover ~ &(input:checked)': {
4923
5190
  borderColor: checkedHoverColor,
4924
5191
  backgroundColor: checkedHoverColor,
5192
+ ...prefersColorSchemeDarkMediaQuery(theme, {
5193
+ borderColor: checkedHoverColorDark,
5194
+ backgroundColor: checkedHoverColorDark,
5195
+ }),
4925
5196
  },
4926
5197
  })),
4927
5198
  ...(!isDisabled && {
@@ -4930,6 +5201,9 @@ const getCheckboxRadioJssStyle = (hideLabel, state, isDisabled, isLoading, theme
4930
5201
  position: 'absolute',
4931
5202
  ...getInsetJssStyle(-6),
4932
5203
  border: `${borderWidthBase} solid ${focusColor}`,
5204
+ ...prefersColorSchemeDarkMediaQuery(theme, {
5205
+ borderColor: focusColorDark,
5206
+ }),
4933
5207
  },
4934
5208
  '&(input:focus:not(:focus-visible))::before': {
4935
5209
  borderColor: 'transparent',
@@ -4948,11 +5222,28 @@ const getCheckboxRadioJssStyle = (hideLabel, state, isDisabled, isLoading, theme
4948
5222
  cursor: disabledOrLoading ? 'default' : 'pointer',
4949
5223
  ...textSmallStyle,
4950
5224
  color: disabledOrLoading ? disabledColor : primaryColor,
5225
+ ...prefersColorSchemeDarkMediaQuery(theme, {
5226
+ color: disabledOrLoading ? disabledColorDark : primaryColorDark,
5227
+ }),
4951
5228
  transition: getTransition('color'),
4952
5229
  ...buildResponsiveStyles(hideLabel, (isHidden) => getHiddenTextJssStyle(isHidden, { padding: `2px 0 0 ${spacingStaticSmall}` })),
4953
5230
  },
4954
5231
  ...getFunctionalComponentRequiredStyles(),
4955
5232
  ...getFunctionalComponentStateMessageStyles(theme, state),
5233
+ ...(isLoading && {
5234
+ spinner: {
5235
+ position: 'absolute',
5236
+ top: `calc(${fontLineHeight}/2 + 2px)`,
5237
+ left: `calc(${fontLineHeight}/2 + 2px)`,
5238
+ transform: 'translate(-50%, -50%)',
5239
+ height: fontLineHeight,
5240
+ width: fontLineHeight,
5241
+ padding: '2px',
5242
+ fontFamily,
5243
+ fontSize: '1rem',
5244
+ cursor: 'not-allowed',
5245
+ },
5246
+ }),
4956
5247
  };
4957
5248
  };
4958
5249
 
@@ -4960,14 +5251,30 @@ const getInlineSVGBackgroundImage = (path) => {
4960
5251
  return `url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">${path}</svg>')`;
4961
5252
  };
4962
5253
 
4963
- const getComponentCss$S = (hideLabel, state, isDisabled, isLoading, theme) => {
5254
+ const escapeHashCharacter = (colorString) => {
5255
+ return colorString.replace('#', '%23');
5256
+ };
5257
+
5258
+ const getCheckedSVGBackgroundImage$1 = (fill) => {
5259
+ return getInlineSVGBackgroundImage(`<path fill="${fill}" d="m20.22,7.47l-1.47-1.42-9.26,9.02-4.24-4.15-1.47,1.42,5.71,5.6,10.73-10.47Z"/>`);
5260
+ };
5261
+ const getIndeterminateSVGBackgroundImage = (fill) => {
5262
+ return getInlineSVGBackgroundImage(`<path fill="${fill}" d="m20,11v2H4v-2h16Z"/>`);
5263
+ };
5264
+ const getComponentCss$V = (hideLabel, state, isDisabled, isLoading, theme) => {
4964
5265
  const { canvasColor } = getHighContrastColors();
4965
5266
  const checkedIconColor = isHighContrastMode
4966
5267
  ? canvasColor
4967
- : getInvertedThemedColors(theme).primaryColor.replace(/#/g, '%23');
5268
+ : escapeHashCharacter(getInvertedThemedColors(theme).primaryColor);
5269
+ const checkedIconColorDark = isHighContrastMode
5270
+ ? canvasColor
5271
+ : escapeHashCharacter(getInvertedThemedColors('dark').primaryColor);
4968
5272
  const indeterminateIconColor = isHighContrastMode
4969
5273
  ? canvasColor
4970
- : getThemedColors(theme).primaryColor.replace(/#/g, '%23');
5274
+ : escapeHashCharacter(getThemedColors(theme).primaryColor);
5275
+ const indeterminateIconColorDark = isHighContrastMode
5276
+ ? canvasColor
5277
+ : escapeHashCharacter(getThemedColors('dark').primaryColor);
4971
5278
  return getCss(mergeDeep(getCheckboxRadioJssStyle(hideLabel, state, isDisabled, isLoading, theme), {
4972
5279
  '@global': {
4973
5280
  '::slotted': addImportantToEachRule({
@@ -4976,11 +5283,17 @@ const getComponentCss$S = (hideLabel, state, isDisabled, isLoading, theme) => {
4976
5283
  },
4977
5284
  ...(!isLoading && {
4978
5285
  '&(input:checked)': {
4979
- backgroundImage: getInlineSVGBackgroundImage(`<path fill="${checkedIconColor}" d="m20.22,7.47l-1.47-1.42-9.26,9.02-4.24-4.15-1.47,1.42,5.71,5.6,10.73-10.47Z"/>`),
5286
+ backgroundImage: getCheckedSVGBackgroundImage$1(checkedIconColor),
5287
+ ...prefersColorSchemeDarkMediaQuery(theme, {
5288
+ backgroundImage: getCheckedSVGBackgroundImage$1(checkedIconColorDark),
5289
+ }),
4980
5290
  },
4981
5291
  }),
4982
5292
  '&(input:indeterminate)': {
4983
- backgroundImage: getInlineSVGBackgroundImage(`<path fill="${indeterminateIconColor}" d="m20,11v2H4v-2h16Z"/>`),
5293
+ backgroundImage: getIndeterminateSVGBackgroundImage(indeterminateIconColor),
5294
+ ...prefersColorSchemeDarkMediaQuery(theme, {
5295
+ backgroundImage: getIndeterminateSVGBackgroundImage(indeterminateIconColorDark),
5296
+ }),
4984
5297
  },
4985
5298
  ...(!isDisabled && {
4986
5299
  '&(input:focus)::before': {
@@ -4989,19 +5302,6 @@ const getComponentCss$S = (hideLabel, state, isDisabled, isLoading, theme) => {
4989
5302
  }),
4990
5303
  }),
4991
5304
  },
4992
- ...(isLoading && {
4993
- spinner: {
4994
- position: 'absolute',
4995
- top: `calc(${fontLineHeight}/2 + 2px)`,
4996
- left: `calc(${fontLineHeight}/2 + 2px)`,
4997
- transform: 'translate(-50%, -50%)',
4998
- height: fontLineHeight,
4999
- width: fontLineHeight,
5000
- fontFamily,
5001
- fontSize: '1rem',
5002
- cursor: 'not-allowed',
5003
- },
5004
- }),
5005
5305
  }));
5006
5306
  };
5007
5307
 
@@ -5010,12 +5310,15 @@ const widthMap = {
5010
5310
  basic: gridBasicOffset,
5011
5311
  extended: gridExtendedOffset,
5012
5312
  };
5013
- const getComponentCss$R = (width) => {
5313
+ const getComponentCss$U = (width) => {
5014
5314
  return getCss({
5015
5315
  '@global': {
5016
5316
  ':host': {
5017
5317
  display: 'block',
5018
- ...addImportantToEachRule(hostHiddenStyles),
5318
+ ...addImportantToEachRule({
5319
+ ...colorSchemeStyles,
5320
+ ...hostHiddenStyles,
5321
+ }),
5019
5322
  },
5020
5323
  },
5021
5324
  root: {
@@ -5049,7 +5352,7 @@ const getDimensionStyle = {
5049
5352
  width: 'inherit',
5050
5353
  height: 'inherit',
5051
5354
  };
5052
- const getComponentCss$Q = () => {
5355
+ const getComponentCss$T = () => {
5053
5356
  return getCss({
5054
5357
  '@global': {
5055
5358
  ':host': {
@@ -5060,6 +5363,7 @@ const getComponentCss$Q = () => {
5060
5363
  outline: 0,
5061
5364
  boxSizing: 'content-box',
5062
5365
  ...getDimensionStyle,
5366
+ ...colorSchemeStyles,
5063
5367
  ...hostHiddenStyles,
5064
5368
  }),
5065
5369
  },
@@ -5095,6 +5399,9 @@ ellipsis, theme) => {
5095
5399
  padding: 0,
5096
5400
  ...baseTextStyle,
5097
5401
  color: getThemedTypographyColor(theme, color),
5402
+ ...prefersColorSchemeDarkMediaQuery(theme, {
5403
+ color: getThemedTypographyColor('dark', color),
5404
+ }),
5098
5405
  textAlign: align,
5099
5406
  letterSpacing: 'normal',
5100
5407
  listStyleType: 'none',
@@ -5133,12 +5440,15 @@ const sizeMap$4 = {
5133
5440
  medium: fontSizeDisplayMedium,
5134
5441
  large: fontSizeDisplayLarge,
5135
5442
  };
5136
- const getComponentCss$P = (size, align, color, ellipsis, theme) => {
5443
+ const getComponentCss$S = (size, align, color, ellipsis, theme) => {
5137
5444
  return getCss({
5138
5445
  '@global': {
5139
5446
  ':host': {
5140
5447
  display: 'block',
5141
- ...addImportantToEachRule(hostHiddenStyles),
5448
+ ...addImportantToEachRule({
5449
+ ...colorSchemeStyles,
5450
+ ...hostHiddenStyles,
5451
+ }),
5142
5452
  },
5143
5453
  '::slotted': {
5144
5454
  [DISPLAY_TAGS.map((i) => `&(${i})`).join()]: addImportantToEachRule(getTypographySlottedJssStyle()),
@@ -5150,36 +5460,55 @@ const getComponentCss$P = (size, align, color, ellipsis, theme) => {
5150
5460
  });
5151
5461
  };
5152
5462
 
5153
- const getComponentCss$O = (color, orientation, theme) => {
5463
+ const getComponentCss$R = (color, orientation, theme) => {
5154
5464
  const { contrastLowColor, contrastMediumColor, contrastHighColor } = getThemedColors(theme);
5465
+ const { contrastLowColor: contrastLowColorDark, contrastMediumColor: contrastMediumColorDark, contrastHighColor: contrastHighColorDark, } = getThemedColors('dark');
5155
5466
  const colorMap = {
5156
5467
  'contrast-low': contrastLowColor,
5157
5468
  'contrast-medium': contrastMediumColor,
5158
5469
  'contrast-high': contrastHighColor,
5159
5470
  };
5471
+ const colorMapDark = {
5472
+ 'contrast-low': contrastLowColorDark,
5473
+ 'contrast-medium': contrastMediumColorDark,
5474
+ 'contrast-high': contrastHighColorDark,
5475
+ };
5160
5476
  return getCss({
5161
5477
  '@global': {
5162
5478
  ':host': {
5163
5479
  display: 'block',
5164
- ...addImportantToEachRule(hostHiddenStyles),
5480
+ ...addImportantToEachRule({
5481
+ ...colorSchemeStyles,
5482
+ ...hostHiddenStyles,
5483
+ }),
5165
5484
  },
5166
5485
  hr: {
5167
5486
  margin: 0,
5168
5487
  padding: 0,
5169
5488
  border: 'none',
5170
5489
  textAlign: 'left',
5171
- background: isHighContrastMode ? getHighContrastColors().canvasTextColor : colorMap[color],
5490
+ ...(isHighContrastMode
5491
+ ? {
5492
+ background: getHighContrastColors().canvasTextColor,
5493
+ }
5494
+ : {
5495
+ background: colorMap[color],
5496
+ ...prefersColorSchemeDarkMediaQuery(theme, {
5497
+ background: colorMapDark[color],
5498
+ }),
5499
+ }),
5172
5500
  ...buildResponsiveStyles(orientation, (o) => o === 'horizontal' ? { height: '1px', width: '100%' } : { height: '100%', width: '1px' }),
5173
5501
  },
5174
5502
  },
5175
5503
  });
5176
5504
  };
5177
5505
 
5178
- const getComponentCss$N = (state, labelSize, hasLabel, theme) => {
5506
+ const getComponentCss$Q = (state, labelSize, hasLabel, theme) => {
5179
5507
  return getCss({
5180
5508
  '@global': {
5181
5509
  ':host': addImportantToEachRule({
5182
5510
  display: 'block',
5511
+ ...colorSchemeStyles,
5183
5512
  ...hostHiddenStyles,
5184
5513
  }),
5185
5514
  fieldset: {
@@ -5193,6 +5522,9 @@ const getComponentCss$N = (state, labelSize, hasLabel, theme) => {
5193
5522
  padding: 0,
5194
5523
  color: getThemedColors(theme).primaryColor,
5195
5524
  ...(labelSize === 'small' ? headingSmallStyle : headingMediumStyle),
5525
+ ...prefersColorSchemeDarkMediaQuery(theme, {
5526
+ color: getThemedColors('dark').primaryColor,
5527
+ }),
5196
5528
  },
5197
5529
  }),
5198
5530
  },
@@ -5205,11 +5537,12 @@ const getComponentCss$N = (state, labelSize, hasLabel, theme) => {
5205
5537
  });
5206
5538
  };
5207
5539
 
5208
- const getComponentCss$M = (state, labelSize, hasLabel, theme) => {
5540
+ const getComponentCss$P = (state, labelSize, hasLabel, theme) => {
5209
5541
  return getCss({
5210
5542
  '@global': {
5211
5543
  ':host': addImportantToEachRule({
5212
5544
  display: 'block',
5545
+ ...colorSchemeStyles,
5213
5546
  ...hostHiddenStyles,
5214
5547
  }),
5215
5548
  fieldset: {
@@ -5222,6 +5555,9 @@ const getComponentCss$M = (state, labelSize, hasLabel, theme) => {
5222
5555
  margin: `0 0 ${spacingStaticMedium}`,
5223
5556
  padding: 0,
5224
5557
  color: getThemedColors(theme).primaryColor,
5558
+ ...prefersColorSchemeDarkMediaQuery(theme, {
5559
+ color: getThemedColors('dark').primaryColor,
5560
+ }),
5225
5561
  ...(labelSize === 'small' ? headingSmallStyle : headingMediumStyle),
5226
5562
  },
5227
5563
  }),
@@ -5245,7 +5581,7 @@ const flexItemWidths = {
5245
5581
  full: 100,
5246
5582
  auto: 'auto',
5247
5583
  };
5248
- const getComponentCss$L = (width, offset, alignSelf, grow, shrink, flex) => {
5584
+ const getComponentCss$O = (width, offset, alignSelf, grow, shrink, flex) => {
5249
5585
  return getCss({
5250
5586
  '@global': {
5251
5587
  ':host': addImportantToEachRule({
@@ -5267,10 +5603,10 @@ const getComponentCss$L = (width, offset, alignSelf, grow, shrink, flex) => {
5267
5603
  });
5268
5604
  };
5269
5605
 
5270
- const getComponentCss$K = (inline, wrap, direction, justifyContent, alignItems, alignContent) => {
5606
+ const getComponentCss$N = (inline, wrap, direction, justifyContent, alignItems, alignContent) => {
5271
5607
  return getCss({
5272
5608
  '@global': {
5273
- ':host': addImportantToEachRule(mergeDeep(hostHiddenStyles, buildResponsiveStyles(inline, (inlineResponsive) => ({
5609
+ ':host': addImportantToEachRule(mergeDeep(colorSchemeStyles, hostHiddenStyles, buildResponsiveStyles(inline, (inlineResponsive) => ({
5274
5610
  display: inlineResponsive ? 'inline-flex' : 'flex',
5275
5611
  })), buildResponsiveStyles(wrap, (flexWrapResponsive) => ({ flexWrap: flexWrapResponsive })), buildResponsiveStyles(direction, (flexDirectionResponsive) => ({
5276
5612
  flexDirection: flexDirectionResponsive,
@@ -5292,14 +5628,16 @@ const flyoutTransitionTimingFunction = 'cubic-bezier(0.77, 0, 0.175, 1)';
5292
5628
  const cssVariableMaxWidth = '--p-flyout-max-width';
5293
5629
  const maxWidthDefault = '1180px';
5294
5630
  const minWidthDefault = '320px';
5295
- const getComponentCss$J = (isOpen, position, hasHeader, hasFooter, hasSubFooter, theme) => {
5631
+ const getComponentCss$M = (isOpen, position, hasHeader, hasFooter, hasSubFooter, theme) => {
5296
5632
  const { primaryColor, backgroundColor } = getThemedColors(theme);
5633
+ const { primaryColor: primaryColorDark, backgroundColor: backgroundColorDark } = getThemedColors('dark');
5297
5634
  const { contrastHighColor: darkThemeContrastHighColor } = getThemedColors('dark');
5298
5635
  const isPositionLeft = position === 'left';
5299
5636
  const contentPadding = `${spacingStaticMedium} ${spacingFluidLarge} ${spacingStaticMedium} ${spacingFluidLarge}`;
5300
5637
  const isDark = isThemeDark(theme);
5301
5638
  const shadowColor = isDark ? scrollShadowColorDark : scrollShadowColor;
5302
- const transparentColor = isDark ? 'rgba(14, 14, 18, 0)' : 'rgba(255, 255, 255, 0)';
5639
+ const transparentColorDark = 'rgba(14, 14, 18, 0)';
5640
+ const transparentColor = isDark ? transparentColorDark : 'rgba(255, 255, 255, 0)';
5303
5641
  return getCss({
5304
5642
  '@global': addImportantToEachRule({
5305
5643
  ':host': {
@@ -5316,6 +5654,7 @@ const getComponentCss$J = (isOpen, position, hasHeader, hasFooter, hasSubFooter,
5316
5654
  }),
5317
5655
  ...getInsetJssStyle(),
5318
5656
  ...getFrostedGlassBackgroundJssStyles(isOpen, flyoutTransitionDuration),
5657
+ ...colorSchemeStyles,
5319
5658
  ...hostHiddenStyles,
5320
5659
  },
5321
5660
  }),
@@ -5326,12 +5665,18 @@ const getComponentCss$J = (isOpen, position, hasHeader, hasFooter, hasSubFooter,
5326
5665
  }),
5327
5666
  justifyContent: 'flex-end',
5328
5667
  background: backgroundColor,
5668
+ ...prefersColorSchemeDarkMediaQuery(theme, {
5669
+ background: backgroundColorDark,
5670
+ }),
5329
5671
  position: 'sticky',
5330
5672
  top: 0,
5331
5673
  zIndex: 1,
5332
5674
  },
5333
5675
  [headerShadowClass]: {
5334
5676
  boxShadow: `${isDark ? scrollShadowColorDark : scrollShadowColor} 0px 5px 10px`,
5677
+ ...prefersColorSchemeDarkMediaQuery(theme, {
5678
+ boxShadow: `${scrollShadowColorDark} 0px 5px 10px`,
5679
+ }),
5335
5680
  },
5336
5681
  ...(hasHeader && {
5337
5682
  'header-content': {
@@ -5345,6 +5690,10 @@ const getComponentCss$J = (isOpen, position, hasHeader, hasFooter, hasSubFooter,
5345
5690
  border: `2px solid ${backgroundColor}`,
5346
5691
  borderRadius: '4px',
5347
5692
  background: backgroundColor,
5693
+ ...prefersColorSchemeDarkMediaQuery(theme, {
5694
+ borderColor: backgroundColorDark,
5695
+ background: backgroundColorDark,
5696
+ }),
5348
5697
  ...hoverMediaQuery({
5349
5698
  '&:hover': {
5350
5699
  background: darkThemeContrastHighColor,
@@ -5371,6 +5720,10 @@ const getComponentCss$J = (isOpen, position, hasHeader, hasFooter, hasSubFooter,
5371
5720
  transform: isOpen ? 'initial' : `translate3d(${isPositionLeft ? '-100%' : '100%'}, 0, 0)`,
5372
5721
  transition: `opacity ${flyoutTransitionDuration} ${flyoutTransitionTimingFunction} ${isOpen ? '0s' : flyoutTransitionDuration}, transform ${flyoutTransitionDuration} ${flyoutTransitionTimingFunction}`,
5373
5722
  boxShadow: `${isPositionLeft ? '3px' : '-3px'} 0px 30px rgba(0, 0, 0, 0.25)`,
5723
+ ...prefersColorSchemeDarkMediaQuery(theme, {
5724
+ color: primaryColorDark,
5725
+ background: backgroundColorDark,
5726
+ }),
5374
5727
  },
5375
5728
  content: {
5376
5729
  padding: contentPadding,
@@ -5386,6 +5739,9 @@ const getComponentCss$J = (isOpen, position, hasHeader, hasFooter, hasSubFooter,
5386
5739
  backgroundSize: '100% 20px, 100% 20px, 100% 10px, 100% 10px',
5387
5740
  backgroundAttachment: 'local, local, scroll, scroll',
5388
5741
  overscrollBehaviorY: 'none',
5742
+ ...prefersColorSchemeDarkMediaQuery(theme, {
5743
+ backgroundImage: `linear-gradient(to top, ${backgroundColorDark}, ${backgroundColorDark}), linear-gradient(to top, ${backgroundColorDark}, ${backgroundColorDark}), linear-gradient(to top, ${scrollShadowColorDark}, ${transparentColorDark}), linear-gradient(to bottom, ${scrollShadowColorDark}, ${transparentColorDark})`,
5744
+ }),
5389
5745
  }),
5390
5746
  },
5391
5747
  ...(hasFooter && {
@@ -5395,9 +5751,15 @@ const getComponentCss$J = (isOpen, position, hasHeader, hasFooter, hasSubFooter,
5395
5751
  position: 'sticky',
5396
5752
  zIndex: 1,
5397
5753
  bottom: 0,
5754
+ ...prefersColorSchemeDarkMediaQuery(theme, {
5755
+ background: backgroundColorDark,
5756
+ }),
5398
5757
  },
5399
5758
  [footerShadowClass$1]: {
5400
5759
  boxShadow: `${isDark ? scrollShadowColorDark : scrollShadowColor} 0px -5px 10px`,
5760
+ ...prefersColorSchemeDarkMediaQuery(theme, {
5761
+ boxShadow: `${scrollShadowColorDark} 0px -5px 10px`,
5762
+ }),
5401
5763
  },
5402
5764
  }),
5403
5765
  ...(hasSubFooter && {
@@ -5412,7 +5774,7 @@ const gutter$1 = `calc(${gridGap} / 2)`;
5412
5774
  const gridItemWidths = [
5413
5775
  0, 8.333333, 16.666667, 25, 33.333333, 41.666667, 50, 58.333333, 66.666667, 75, 83.333333, 91.666667, 100,
5414
5776
  ];
5415
- const getComponentCss$I = (size, offset) => {
5777
+ const getComponentCss$L = (size, offset) => {
5416
5778
  return getCss({
5417
5779
  '@global': {
5418
5780
  ':host': addImportantToEachRule({
@@ -5432,7 +5794,7 @@ const getComponentCss$I = (size, offset) => {
5432
5794
  };
5433
5795
 
5434
5796
  const gutter = `calc(${gridGap} / -2)`;
5435
- const getComponentCss$H = (direction, wrap) => {
5797
+ const getComponentCss$K = (direction, wrap) => {
5436
5798
  return getCss({
5437
5799
  '@global': {
5438
5800
  ':host': addImportantToEachRule({
@@ -5441,6 +5803,7 @@ const getComponentCss$H = (direction, wrap) => {
5441
5803
  width: 'auto',
5442
5804
  marginLeft: gutter,
5443
5805
  marginRight: gutter,
5806
+ ...colorSchemeStyles,
5444
5807
  ...hostHiddenStyles,
5445
5808
  ...mergeDeep(buildResponsiveStyles(direction, (flexDirection) => ({ flexDirection })), buildResponsiveStyles(wrap, (flexWrap) => ({ flexWrap }))),
5446
5809
  }),
@@ -5455,12 +5818,15 @@ const sizeMap$3 = {
5455
5818
  'x-large': fontSizeHeadingXLarge,
5456
5819
  'xx-large': fontSizeHeadingXXLarge,
5457
5820
  };
5458
- const getComponentCss$G = (size, align, color, ellipsis, theme) => {
5821
+ const getComponentCss$J = (size, align, color, ellipsis, theme) => {
5459
5822
  return getCss({
5460
5823
  '@global': {
5461
5824
  ':host': {
5462
5825
  display: 'block',
5463
- ...addImportantToEachRule(hostHiddenStyles),
5826
+ ...addImportantToEachRule({
5827
+ ...colorSchemeStyles,
5828
+ ...hostHiddenStyles,
5829
+ }),
5464
5830
  },
5465
5831
  '::slotted': {
5466
5832
  [HEADING_TAGS.map((i) => `&(${i})`).join()]: addImportantToEachRule(getTypographySlottedJssStyle()),
@@ -5514,12 +5880,15 @@ const getTextSizeJssStyle = (textSize) => {
5514
5880
  fontSize: textSize === 'inherit' ? textSize : textSizeMap[textSize],
5515
5881
  };
5516
5882
  };
5517
- const getComponentCss$F = (variant, align, color, ellipsis, theme) => {
5883
+ const getComponentCss$I = (variant, align, color, ellipsis, theme) => {
5518
5884
  return getCss({
5519
5885
  '@global': {
5520
5886
  ':host': {
5521
5887
  display: 'block',
5522
- ...addImportantToEachRule(hostHiddenStyles),
5888
+ ...addImportantToEachRule({
5889
+ ...colorSchemeStyles,
5890
+ ...hostHiddenStyles,
5891
+ }),
5523
5892
  },
5524
5893
  '::slotted': {
5525
5894
  [HEADLINE_TAGS.map((i) => `&(${i})`).join()]: addImportantToEachRule(getTypographySlottedJssStyle()),
@@ -5563,29 +5932,32 @@ const sizeMap$2 = {
5563
5932
  large: fontSizeTextLarge,
5564
5933
  'x-large': fontSizeTextXLarge,
5565
5934
  };
5566
- const filter = {
5567
- light: {
5568
- primary: filterLightPrimary,
5569
- 'state-disabled': filterLightDisabled,
5570
- 'contrast-low': filterLightContrastLow,
5571
- 'contrast-medium': filterLightContrastMedium,
5572
- 'contrast-high': filterLightContrastHigh,
5573
- 'notification-success': filterLightNotificationSuccess,
5574
- 'notification-warning': filterLightNotificationWarning,
5575
- 'notification-error': filterLightNotificationError,
5576
- 'notification-info': filterLightNotificationInfo,
5577
- },
5578
- dark: {
5579
- primary: filterDarkPrimary,
5580
- 'state-disabled': filterDarkDisabled,
5581
- 'contrast-low': filterDarkContrastLow,
5582
- 'contrast-medium': filterDarkContrastMedium,
5583
- 'contrast-high': filterDarkContrastHigh,
5584
- 'notification-success': filterDarkNotificationSuccess,
5585
- 'notification-warning': filterDarkNotificationWarning,
5586
- 'notification-error': filterDarkNotificationError,
5587
- 'notification-info': filterDarkNotificationInfo,
5588
- },
5935
+ const filterLight = {
5936
+ primary: filterLightPrimary,
5937
+ 'state-disabled': filterLightDisabled,
5938
+ 'contrast-low': filterLightContrastLow,
5939
+ 'contrast-medium': filterLightContrastMedium,
5940
+ 'contrast-high': filterLightContrastHigh,
5941
+ 'notification-success': filterLightNotificationSuccess,
5942
+ 'notification-warning': filterLightNotificationWarning,
5943
+ 'notification-error': filterLightNotificationError,
5944
+ 'notification-info': filterLightNotificationInfo,
5945
+ };
5946
+ const filterDark = {
5947
+ primary: filterDarkPrimary,
5948
+ 'state-disabled': filterDarkDisabled,
5949
+ 'contrast-low': filterDarkContrastLow,
5950
+ 'contrast-medium': filterDarkContrastMedium,
5951
+ 'contrast-high': filterDarkContrastHigh,
5952
+ 'notification-success': filterDarkNotificationSuccess,
5953
+ 'notification-warning': filterDarkNotificationWarning,
5954
+ 'notification-error': filterDarkNotificationError,
5955
+ 'notification-info': filterDarkNotificationInfo,
5956
+ };
5957
+ const filterMap = {
5958
+ auto: filterLight,
5959
+ light: filterLight,
5960
+ dark: filterDark,
5589
5961
  };
5590
5962
  const forceRerenderAnimationStyle = {
5591
5963
  '0%': {
@@ -5597,7 +5969,7 @@ const forceRerenderAnimationStyle = {
5597
5969
  };
5598
5970
  const keyFramesLight = 'rerender-light';
5599
5971
  const keyFramesDark = 'rerender-dark';
5600
- const getComponentCss$E = (color, size, theme) => {
5972
+ const getComponentCss$H = (color, size, theme) => {
5601
5973
  const isColorInherit = color === 'inherit';
5602
5974
  const isSizeInherit = size === 'inherit';
5603
5975
  const isDark = isThemeDark(theme);
@@ -5606,7 +5978,10 @@ const getComponentCss$E = (color, size, theme) => {
5606
5978
  ':host': {
5607
5979
  display: 'inline-block',
5608
5980
  verticalAlign: 'top',
5609
- ...addImportantToEachRule(hostHiddenStyles),
5981
+ ...addImportantToEachRule({
5982
+ ...colorSchemeStyles,
5983
+ ...hostHiddenStyles,
5984
+ }),
5610
5985
  },
5611
5986
  img: {
5612
5987
  display: 'block',
@@ -5614,12 +5989,15 @@ const getComponentCss$E = (color, size, theme) => {
5614
5989
  padding: 0,
5615
5990
  pointerEvents: 'none',
5616
5991
  ...(!isColorInherit && {
5617
- filter: filter[theme][color],
5992
+ filter: filterMap[theme][color],
5993
+ ...prefersColorSchemeDarkMediaQuery(theme, {
5994
+ filter: filterMap.dark[color],
5995
+ }),
5618
5996
  ...(isHighContrastMode &&
5619
5997
  getSchemedHighContrastMediaQuery({
5620
- filter: filter.light[color],
5998
+ filter: filterMap.light[color],
5621
5999
  }, {
5622
- filter: filter.dark[color],
6000
+ filter: filterMap.dark[color],
5623
6001
  })),
5624
6002
  WebkitAnimation: `${isDark ? `${keyFramesDark}-${color}` : `${keyFramesLight}-${color}`} 1ms`, // needed to enforce repaint in Safari if theme is switched programmatically.
5625
6003
  }),
@@ -5663,6 +6041,9 @@ const getNotificationRootJssStyle = (state, hasAction, hasClose, theme) => {
5663
6041
  placeItems: 'start',
5664
6042
  padding: spacingStaticMedium,
5665
6043
  background: getBackgroundColor(state, theme),
6044
+ ...prefersColorSchemeDarkMediaQuery(theme, {
6045
+ background: getBackgroundColor(state, 'dark'),
6046
+ }),
5666
6047
  borderRadius: borderRadiusSmall,
5667
6048
  ...(isHighContrastMode && {
5668
6049
  outline: '1px solid transparent',
@@ -5688,11 +6069,12 @@ const getNotificationContentJssStyle = () => ({
5688
6069
  });
5689
6070
 
5690
6071
  const mediaQueryMaxS = getMediaQueryMax('s');
5691
- const getComponentCss$D = (state, hasAction, hasClose, theme) => {
6072
+ const getComponentCss$G = (state, hasAction, hasClose, theme) => {
5692
6073
  return getCss({
5693
6074
  '@global': {
5694
6075
  ':host': addImportantToEachRule({
5695
6076
  ...getNotificationRootJssStyle(state, hasAction, hasClose, theme),
6077
+ ...colorSchemeStyles,
5696
6078
  ...hostHiddenStyles,
5697
6079
  }),
5698
6080
  h5: headingSmallStyle,
@@ -5700,6 +6082,9 @@ const getComponentCss$D = (state, hasAction, hasClose, theme) => {
5700
6082
  'h5,p': {
5701
6083
  margin: 0,
5702
6084
  color: getThemedColors(theme).primaryColor,
6085
+ ...prefersColorSchemeDarkMediaQuery(theme, {
6086
+ color: getThemedColors('dark').primaryColor,
6087
+ }),
5703
6088
  },
5704
6089
  },
5705
6090
  icon: getNotificationIconJssStyle(),
@@ -5714,8 +6099,9 @@ const getComponentCss$D = (state, hasAction, hasClose, theme) => {
5714
6099
  });
5715
6100
  };
5716
6101
 
5717
- const getComponentCss$C = (icon, iconSource, active, stretch, size, hideLabel, alignLabel, underline, hasSlottedAnchor, theme) => {
6102
+ const getComponentCss$F = (icon, iconSource, active, stretch, size, hideLabel, alignLabel, underline, hasSlottedAnchor, theme) => {
5718
6103
  const { focusColor } = getThemedColors(theme);
6104
+ const { focusColor: focusColorDark } = getThemedColors('dark');
5719
6105
  return getCss(mergeDeep(getLinkButtonPureStyles(icon, iconSource, active, false, stretch, size, hideLabel, alignLabel, hasSlottedAnchor, theme), {
5720
6106
  root: {
5721
6107
  textDecoration: underline ? 'underline' : 'none',
@@ -5745,6 +6131,9 @@ const getComponentCss$C = (icon, iconSource, active, stretch, size, hideLabel, a
5745
6131
  },
5746
6132
  '&(a:focus)::before': {
5747
6133
  border: `${borderWidthBase} solid ${focusColor}`,
6134
+ ...prefersColorSchemeDarkMediaQuery(theme, {
6135
+ borderColor: focusColorDark,
6136
+ }),
5748
6137
  },
5749
6138
  '&(a:focus:not(:focus-visible))::before': {
5750
6139
  border: 0,
@@ -5754,10 +6143,19 @@ const getComponentCss$C = (icon, iconSource, active, stretch, size, hideLabel, a
5754
6143
  }));
5755
6144
  };
5756
6145
 
5757
- const getComponentCss$B = (icon, iconSource, variant, hideLabel, hasSlottedAnchor, theme) => {
6146
+ const getComponentCss$E = (icon, iconSource, variant, hideLabel, hasSlottedAnchor, theme) => {
5758
6147
  const { focusColor } = getThemedColors(theme);
6148
+ const { focusColor: focusColorDark } = getThemedColors('dark');
5759
6149
  const { linkColor } = getHighContrastColors();
5760
- return getCss(mergeDeep(getLinkButtonStyles(icon, iconSource, variant, hideLabel, false, hasSlottedAnchor, theme), hasSlottedAnchor && {
6150
+ const isPrimary = variant === 'primary';
6151
+ return getCss(mergeDeep(getLinkButtonStyles(icon, iconSource, variant, hideLabel, false, hasSlottedAnchor, theme), {
6152
+ icon: {
6153
+ ...(isPrimary &&
6154
+ !isHighContrastMode && {
6155
+ filter: 'invert(1)',
6156
+ }),
6157
+ },
6158
+ }, hasSlottedAnchor && {
5761
6159
  ...(isHighContrastMode && {
5762
6160
  root: {
5763
6161
  borderColor: linkColor,
@@ -5786,6 +6184,9 @@ const getComponentCss$B = (icon, iconSource, variant, hideLabel, hasSlottedAncho
5786
6184
  },
5787
6185
  '&(a:focus)::before': {
5788
6186
  border: `${borderWidthBase} solid ${focusColor}`,
6187
+ ...prefersColorSchemeDarkMediaQuery(theme, {
6188
+ borderColor: focusColorDark,
6189
+ }),
5789
6190
  },
5790
6191
  '&(a:focus:not(:focus-visible))::before': {
5791
6192
  border: 0,
@@ -5799,7 +6200,7 @@ const getComponentCss$B = (icon, iconSource, variant, hideLabel, hasSlottedAncho
5799
6200
  // because it is created via Object.keys(MODEL_SIGNATURES_MANIFEST) would bundle the entire manifest into both chunks
5800
6201
  const LINK_TILE_MODEL_SIGNATURE_HEADING_TAGS = ['h2', 'h3', 'h4', 'h5', 'h6'];
5801
6202
 
5802
- const getComponentCss$A = (aspectRatio, weight, direction, hasDescription) => {
6203
+ const getComponentCss$D = (aspectRatio, weight, direction, hasDescription) => {
5803
6204
  const tileBaseStyles = getTileBaseStyles(aspectRatio);
5804
6205
  return getCss({
5805
6206
  ...tileBaseStyles,
@@ -5824,12 +6225,14 @@ const getComponentCss$A = (aspectRatio, weight, direction, hasDescription) => {
5824
6225
  heading: {
5825
6226
  margin: 0,
5826
6227
  ...textLargeStyle,
6228
+ hyphens: 'inherit',
5827
6229
  ...buildResponsiveStyles(weight, (w) => ({ fontWeight: getFontWeight(w) })),
5828
6230
  },
5829
6231
  ...(hasDescription && {
5830
6232
  description: {
5831
6233
  margin: '-12px 0 0 ',
5832
6234
  ...textSmallStyle,
6235
+ hyphens: 'inherit',
5833
6236
  },
5834
6237
  }),
5835
6238
  'link-group': {
@@ -5846,7 +6249,7 @@ const getComponentCss$A = (aspectRatio, weight, direction, hasDescription) => {
5846
6249
  });
5847
6250
  };
5848
6251
 
5849
- const getComponentCss$z = (...args) => {
6252
+ const getComponentCss$C = (...args) => {
5850
6253
  return getCss({
5851
6254
  ...getButtonLinkTileStyles(...args),
5852
6255
  'link-overlay': {
@@ -5867,7 +6270,7 @@ const baseSizes = {
5867
6270
  height: '72px',
5868
6271
  },
5869
6272
  };
5870
- const getComponentCss$y = (size) => {
6273
+ const getComponentCss$B = (size) => {
5871
6274
  return getCss({
5872
6275
  '@global': {
5873
6276
  ':host': {
@@ -5876,6 +6279,7 @@ const getComponentCss$y = (size) => {
5876
6279
  verticalAlign: 'top',
5877
6280
  ...addImportantToEachRule({
5878
6281
  outline: 0,
6282
+ ...colorSchemeStyles,
5879
6283
  ...hostHiddenStyles,
5880
6284
  }),
5881
6285
  },
@@ -5955,7 +6359,7 @@ const getSlottedJssStyle = (marginValue, hasHeader, hasDismissButton) => {
5955
6359
  },
5956
6360
  };
5957
6361
  };
5958
- const getComponentCss$x = (isOpen, isFullscreen, hasDismissButton, hasHeader, hasFooter) => {
6362
+ const getComponentCss$A = (isOpen, isFullscreen, hasDismissButton, hasHeader, hasFooter) => {
5959
6363
  const isFullscreenForXlAndXxl = isFullscreenForXl(isFullscreen);
5960
6364
  const duration = isOpen ? '.6s' : '.2s';
5961
6365
  const contentPadding = '32px';
@@ -5978,6 +6382,7 @@ const getComponentCss$x = (isOpen, isFullscreen, hasDismissButton, hasHeader, ha
5978
6382
  visibility: 'hidden',
5979
6383
  transition: 'visibility 0s linear .2s',
5980
6384
  }),
6385
+ ...colorSchemeStyles,
5981
6386
  ...hostHiddenStyles,
5982
6387
  ...getFrostedGlassBackgroundJssStyles(isOpen, duration),
5983
6388
  }),
@@ -6076,21 +6481,24 @@ const getComponentCss$x = (isOpen, isFullscreen, hasDismissButton, hasHeader, ha
6076
6481
 
6077
6482
  const modelSignatureHeight = 36;
6078
6483
 
6484
+ const colorToFilterLight = {
6485
+ primary: filterLightPrimary,
6486
+ 'contrast-low': filterLightContrastLow,
6487
+ 'contrast-medium': filterLightContrastMedium,
6488
+ 'contrast-high': filterLightContrastHigh,
6489
+ };
6490
+ const colorToFilterDark = {
6491
+ primary: filterDarkPrimary,
6492
+ 'contrast-low': filterDarkContrastLow,
6493
+ 'contrast-medium': filterDarkContrastMedium,
6494
+ 'contrast-high': filterDarkContrastHigh,
6495
+ };
6079
6496
  const colorToFilterMap = {
6080
- light: {
6081
- primary: filterLightPrimary,
6082
- 'contrast-low': filterLightContrastLow,
6083
- 'contrast-medium': filterLightContrastMedium,
6084
- 'contrast-high': filterLightContrastHigh,
6085
- },
6086
- dark: {
6087
- primary: filterDarkPrimary,
6088
- 'contrast-low': filterDarkContrastLow,
6089
- 'contrast-medium': filterDarkContrastMedium,
6090
- 'contrast-high': filterDarkContrastHigh,
6091
- },
6497
+ auto: colorToFilterLight,
6498
+ light: colorToFilterLight,
6499
+ dark: colorToFilterDark,
6092
6500
  };
6093
- const getComponentCss$w = (size, color, theme) => {
6501
+ const getComponentCss$z = (size, color, theme) => {
6094
6502
  const isSizeInherit = size === 'inherit';
6095
6503
  const isColorInherit = color === 'inherit';
6096
6504
  return getCss({
@@ -6107,6 +6515,7 @@ const getComponentCss$w = (size, color, theme) => {
6107
6515
  // TODO: we need a width map of all signatures to ensure same fluid behavior like implemented fro crest + wordmark
6108
6516
  maxHeight: `${modelSignatureHeight}px`,
6109
6517
  }),
6518
+ ...colorSchemeStyles,
6110
6519
  ...hostHiddenStyles,
6111
6520
  }),
6112
6521
  },
@@ -6117,6 +6526,9 @@ const getComponentCss$w = (size, color, theme) => {
6117
6526
  pointerEvents: 'none',
6118
6527
  ...(!isColorInherit && {
6119
6528
  filter: colorToFilterMap[theme][color],
6529
+ ...prefersColorSchemeDarkMediaQuery(theme, {
6530
+ filter: colorToFilterMap.dark[color],
6531
+ }),
6120
6532
  ...(isHighContrastMode &&
6121
6533
  getSchemedHighContrastMediaQuery({
6122
6534
  filter: colorToFilterMap.light[color],
@@ -6130,6 +6542,286 @@ const getComponentCss$w = (size, color, theme) => {
6130
6542
  });
6131
6543
  };
6132
6544
 
6545
+ const getComponentCss$y = (theme) => {
6546
+ const { primaryColor, contrastHighColor, backgroundSurfaceColor, disabledColor, contrastLowColor } = getThemedColors(theme);
6547
+ const { primaryColor: primaryColorDark, disabledColor: disabledColorDark, contrastHighColor: contrastHighColorDark, backgroundSurfaceColor: backgroundSurfaceColorDark, contrastLowColor: contrastLowColorDark, } = getThemedColors('dark');
6548
+ const { highlightColor } = getHighContrastColors();
6549
+ return getCss({
6550
+ '@global': {
6551
+ ':host': addImportantToEachRule({
6552
+ scrollMarginTop: spacingStaticSmall,
6553
+ ...hostHiddenStyles,
6554
+ }),
6555
+ },
6556
+ option: {
6557
+ display: 'flex',
6558
+ justifyContent: 'space-between',
6559
+ gap: '12px',
6560
+ padding: `${spacingStaticSmall} 12px`,
6561
+ flex: `1 0 calc(${fontLineHeight} + ${spacingStaticSmall} * 2)`,
6562
+ color: contrastHighColor,
6563
+ ...prefersColorSchemeDarkMediaQuery(theme, {
6564
+ color: contrastHighColorDark,
6565
+ }),
6566
+ cursor: 'pointer',
6567
+ textAlign: 'left',
6568
+ wordBreak: 'break-word',
6569
+ boxSizing: 'border-box',
6570
+ borderRadius: borderRadiusSmall,
6571
+ transition: ['background-color', 'color'].map(getTransition).join(),
6572
+ ...getNoResultsOptionJssStyle(),
6573
+ ...hoverMediaQuery({
6574
+ '&:not([aria-disabled]):not(.option--disabled):not([role=status]):hover': {
6575
+ color: isHighContrastMode ? highlightColor : primaryColor,
6576
+ background: contrastLowColor,
6577
+ ...prefersColorSchemeDarkMediaQuery(theme, {
6578
+ color: isHighContrastMode ? highlightColor : primaryColorDark,
6579
+ background: contrastLowColorDark,
6580
+ }),
6581
+ },
6582
+ }),
6583
+ '&--selected': {
6584
+ background: backgroundSurfaceColor,
6585
+ ...prefersColorSchemeDarkMediaQuery(theme, {
6586
+ background: backgroundSurfaceColorDark,
6587
+ }),
6588
+ },
6589
+ '&--highlighted': {
6590
+ background: contrastLowColor,
6591
+ ...prefersColorSchemeDarkMediaQuery(theme, {
6592
+ background: contrastLowColorDark,
6593
+ }),
6594
+ },
6595
+ '&--highlighted, &--selected': {
6596
+ color: isHighContrastMode ? highlightColor : primaryColor,
6597
+ ...prefersColorSchemeDarkMediaQuery(theme, {
6598
+ color: isHighContrastMode ? highlightColor : primaryColorDark,
6599
+ }),
6600
+ },
6601
+ '&--disabled': {
6602
+ cursor: 'not-allowed',
6603
+ color: disabledColor,
6604
+ ...prefersColorSchemeDarkMediaQuery(theme, {
6605
+ color: disabledColorDark,
6606
+ }),
6607
+ },
6608
+ '&--hidden': {
6609
+ display: 'none',
6610
+ },
6611
+ },
6612
+ checkbox: {
6613
+ pointerEvents: 'none', // Avoid checkbox label click which updates input within p-checkbox-wrapper
6614
+ },
6615
+ });
6616
+ };
6617
+
6618
+ /**
6619
+ * Generates placeholder styles for an input element.
6620
+ *
6621
+ * @param {JssStyle} styles - The styles to apply to the placeholder.
6622
+ * @returns {JssStyle} - The generated placeholder styles.
6623
+ */
6624
+ const getPlaceholderJssStyle = (styles) => ({
6625
+ '&::placeholder': styles,
6626
+ '&::-webkit-input-placeholder': styles /* Chrome/Opera/Safari */,
6627
+ '&::-moz-placeholder': styles /* Firefox 19+ */,
6628
+ '&:-moz-placeholder': styles /* Firefox 18- */,
6629
+ });
6630
+
6631
+ const inputYPadding = '13px';
6632
+ const selectorNativeSelect = '::slotted([slot=select])';
6633
+ const INPUT_HEIGHT_CALC = `${fontLineHeight} + 6px + ${borderWidthBase} * 2 + ${spacingStaticSmall} * 2`;
6634
+ const getComponentCss$x = (direction, isOpen, isDisabled, hideLabel, state, isWithinForm, hasLabel, theme) => {
6635
+ const { primaryColor, contrastMediumColor, contrastHighColor, backgroundColor, disabledColor } = getThemedColors(theme);
6636
+ const { primaryColor: primaryColorDark, contrastMediumColor: contrastMediumColorDark, contrastHighColor: contrastHighColorDark, backgroundColor: backgroundColorDark, disabledColor: disabledColorDark, } = getThemedColors('dark');
6637
+ const { formStateColor, formStateHoverColor } = getThemedFormStateColors(theme, state);
6638
+ const { formStateColor: formStateColorDark, formStateHoverColor: formStateHoverColorDark } = getThemedFormStateColors('dark', state);
6639
+ const isDirectionDown = direction === 'down';
6640
+ return getCss({
6641
+ '@global': {
6642
+ ...addImportantToEachRule({
6643
+ ':host': {
6644
+ display: 'block',
6645
+ position: 'relative',
6646
+ ...colorSchemeStyles,
6647
+ ...hostHiddenStyles,
6648
+ },
6649
+ ...(isWithinForm && {
6650
+ [selectorNativeSelect]: {
6651
+ position: 'absolute',
6652
+ opacity: 0,
6653
+ height: '0px',
6654
+ },
6655
+ }),
6656
+ }),
6657
+ ...getInputStyles(isDisabled, theme),
6658
+ },
6659
+ root: {
6660
+ position: 'relative',
6661
+ },
6662
+ ...getListStyles$1(isOpen, direction, theme),
6663
+ 'input-container': {
6664
+ display: 'flex',
6665
+ transition: ['color', 'border-color', 'background-color'].map(getTransition).join(),
6666
+ cursor: 'text',
6667
+ ...hoverMediaQuery({
6668
+ '&:hover:not(.disabled)': {
6669
+ borderColor: isOpen ? primaryColor : formStateHoverColor || primaryColor,
6670
+ ...prefersColorSchemeDarkMediaQuery(theme, {
6671
+ borderColor: isOpen ? primaryColorDark : formStateHoverColorDark || primaryColorDark,
6672
+ }),
6673
+ },
6674
+ }),
6675
+ ...(!isDisabled && {
6676
+ '&:focus-within': {
6677
+ borderColor: primaryColor,
6678
+ ...prefersColorSchemeDarkMediaQuery(theme, {
6679
+ borderColor: primaryColorDark,
6680
+ }),
6681
+ },
6682
+ }),
6683
+ background: backgroundColor,
6684
+ border: `${borderWidthBase} solid ${isOpen ? primaryColor : formStateColor || contrastMediumColor}`,
6685
+ borderRadius: borderRadiusSmall,
6686
+ ...(isOpen && {
6687
+ [isDirectionDown ? 'paddingBottom' : 'paddingTop']: '1px',
6688
+ [isDirectionDown ? 'borderBottom' : 'borderTop']: addImportantToRule(`1px solid ${contrastMediumColor}`),
6689
+ [isDirectionDown ? 'borderBottomLeftRadius' : 'borderTopLeftRadius']: 0,
6690
+ [isDirectionDown ? 'borderBottomRightRadius' : 'borderTopRightRadius']: 0,
6691
+ }),
6692
+ ...(isDisabled && {
6693
+ cursor: 'not-allowed',
6694
+ color: disabledColor,
6695
+ borderColor: disabledColor,
6696
+ WebkitTextFillColor: disabledColor,
6697
+ }),
6698
+ ...prefersColorSchemeDarkMediaQuery(theme, {
6699
+ background: backgroundColorDark,
6700
+ border: `${borderWidthBase} solid ${isOpen ? primaryColorDark : formStateColorDark || contrastMediumColorDark}`,
6701
+ ...(isOpen && {
6702
+ [isDirectionDown ? 'borderBottom' : 'borderTop']: addImportantToRule(`1px solid ${contrastMediumColorDark}`),
6703
+ }),
6704
+ ...(isDisabled && {
6705
+ color: disabledColorDark,
6706
+ borderColor: disabledColorDark,
6707
+ WebkitTextFillColor: disabledColorDark,
6708
+ }),
6709
+ }),
6710
+ },
6711
+ ...buildResponsiveStyles(hideLabel, (isHidden) => isHidden
6712
+ ? {
6713
+ label: {
6714
+ display: 'none',
6715
+ },
6716
+ }
6717
+ : hasLabel &&
6718
+ getLabelStyles('select', isDisabled, hideLabel, state, theme, undefined, {
6719
+ marginBottom: spacingStaticXSmall,
6720
+ })),
6721
+ icon: {
6722
+ padding: `${inputYPadding} 15px`,
6723
+ cursor: isDisabled ? 'not-allowed' : 'pointer',
6724
+ ...(isDisabled && { pointerEvents: 'none' }),
6725
+ },
6726
+ 'reset-icon': {
6727
+ padding: '4px',
6728
+ margin: 'auto',
6729
+ },
6730
+ 'toggle-icon': {
6731
+ transform: 'rotate3d(0,0,1,0.0001deg)',
6732
+ transition: getTransition('transform'),
6733
+ '&--open': {
6734
+ transform: 'rotate3d(0,0,1,180deg)',
6735
+ },
6736
+ },
6737
+ 'no-results': {
6738
+ padding: `${spacingStaticSmall} 12px`,
6739
+ color: contrastHighColor,
6740
+ ...prefersColorSchemeDarkMediaQuery(theme, {
6741
+ color: contrastHighColorDark,
6742
+ }),
6743
+ boxSizing: 'border-box',
6744
+ ...getNoResultsOptionJssStyle(),
6745
+ },
6746
+ ...getFunctionalComponentRequiredStyles(),
6747
+ ...getFunctionalComponentStateMessageStyles(theme, state),
6748
+ 'sr-text': getHiddenTextJssStyle(),
6749
+ });
6750
+ };
6751
+ const getInputStyles = (isDisabled, theme) => {
6752
+ const { primaryColor, disabledColor } = getThemedColors(theme);
6753
+ const { primaryColor: primaryColorDark, disabledColor: disabledColorDark } = getThemedColors('dark');
6754
+ return {
6755
+ input: {
6756
+ flex: 1,
6757
+ minWidth: 0,
6758
+ height: `calc(${INPUT_HEIGHT_CALC})`,
6759
+ font: textSmallStyle.font.replace('ex', 'ex + 6px'),
6760
+ padding: `${inputYPadding} ${spacingStaticMedium}`,
6761
+ boxSizing: 'border-box',
6762
+ border: 0,
6763
+ outline: 0,
6764
+ appearance: 'none',
6765
+ background: 'transparent',
6766
+ ...textSmallStyle,
6767
+ textOverflow: 'ellipsis',
6768
+ '&:disabled': {
6769
+ cursor: 'not-allowed',
6770
+ },
6771
+ color: primaryColor,
6772
+ ...(isDisabled && getPlaceholderJssStyle({ color: disabledColor })),
6773
+ ...prefersColorSchemeDarkMediaQuery(theme, {
6774
+ color: primaryColorDark,
6775
+ ...(isDisabled && getPlaceholderJssStyle({ color: disabledColorDark })),
6776
+ }),
6777
+ '&:not(:focus)': {
6778
+ ...getPlaceholderJssStyle({ color: primaryColor, opacity: 1 }),
6779
+ ...prefersColorSchemeDarkMediaQuery(theme, getPlaceholderJssStyle({ color: primaryColorDark, opacity: 1 })),
6780
+ }, // Opacity fixes placeholder being shown lighter in firefox
6781
+ },
6782
+ };
6783
+ };
6784
+ const getListStyles$1 = (isOpen, direction, theme) => {
6785
+ const isDirectionDown = direction === 'down';
6786
+ const { primaryColor, backgroundColor } = getThemedColors(theme);
6787
+ const { primaryColor: primaryColorDark, backgroundColor: backgroundColorDark } = getThemedColors('dark');
6788
+ return {
6789
+ listbox: {
6790
+ position: 'absolute',
6791
+ margin: '0',
6792
+ display: isOpen ? 'flex' : 'none',
6793
+ flexDirection: 'column',
6794
+ gap: spacingStaticSmall,
6795
+ padding: '6px',
6796
+ ...textSmallStyle,
6797
+ zIndex: 10,
6798
+ left: 0,
6799
+ right: 0,
6800
+ [isDirectionDown ? 'top' : 'bottom']: isDirectionDown
6801
+ ? '100%'
6802
+ : `calc((${INPUT_HEIGHT_CALC}) + 2 * ${borderWidthBase})`,
6803
+ boxSizing: 'border-box',
6804
+ maxHeight: `${8.5 * (MULTI_SELECT_OPTION_HEIGHT + 8) + 6 + 2}px`,
6805
+ overflowY: 'auto',
6806
+ WebkitOverflowScrolling: 'touch',
6807
+ background: backgroundColor,
6808
+ border: `2px solid ${primaryColor}`,
6809
+ [isDirectionDown ? 'borderTop' : 'borderBottom']: 'none',
6810
+ borderRadius: borderRadiusSmall,
6811
+ [isDirectionDown ? 'borderTopLeftRadius' : 'borderBottomLeftRadius']: 0,
6812
+ [isDirectionDown ? 'borderTopRightRadius' : 'borderBottomRightRadius']: 0,
6813
+ scrollbarWidth: 'thin',
6814
+ scrollbarColor: 'auto',
6815
+ transition: getTransition('border-color'),
6816
+ transform: 'translate3d(0,0,0)',
6817
+ ...prefersColorSchemeDarkMediaQuery(theme, {
6818
+ background: backgroundColorDark,
6819
+ borderColor: primaryColorDark,
6820
+ }),
6821
+ },
6822
+ };
6823
+ };
6824
+
6133
6825
  const mediaQueryMinS = getMediaQueryMin('s');
6134
6826
  // button size needs to be fluid between 320px and 360px viewport width, so that the pagination fits into 320px viewport
6135
6827
  // and text scale 200% works (almost) on mobile viewports too
@@ -6138,13 +6830,17 @@ const disabledCursorStyle = {
6138
6830
  cursor: 'default',
6139
6831
  pointerEvents: 'none', // prevents :hover (has no effect when forced), maybe we can remove it since CSS selectors already cover desired behavior
6140
6832
  };
6141
- const getComponentCss$v = (maxNumberOfPageLinks, theme) => {
6833
+ const getComponentCss$w = (maxNumberOfPageLinks, theme) => {
6142
6834
  const { primaryColor, disabledColor, hoverColor, focusColor } = getThemedColors(theme);
6835
+ const { primaryColor: primaryColorDark, disabledColor: disabledColorDark, hoverColor: hoverColorDark, focusColor: focusColorDark, } = getThemedColors('dark');
6143
6836
  return getCss({
6144
6837
  '@global': {
6145
6838
  ':host': {
6146
6839
  display: 'block',
6147
- ...addImportantToEachRule(hostHiddenStyles),
6840
+ ...addImportantToEachRule({
6841
+ ...colorSchemeStyles,
6842
+ ...hostHiddenStyles,
6843
+ }),
6148
6844
  },
6149
6845
  nav: {
6150
6846
  display: 'flex',
@@ -6190,10 +6886,16 @@ const getComponentCss$v = (maxNumberOfPageLinks, theme) => {
6190
6886
  outline: 0,
6191
6887
  borderRadius: borderRadiusSmall,
6192
6888
  borderColor: 'transparent',
6889
+ ...prefersColorSchemeDarkMediaQuery(theme, {
6890
+ color: primaryColorDark,
6891
+ }),
6193
6892
  ...hoverMediaQuery({
6194
6893
  '&:not([aria-disabled]):not(.ellipsis):hover': {
6195
6894
  ...frostedGlassStyle,
6196
6895
  background: hoverColor,
6896
+ ...prefersColorSchemeDarkMediaQuery(theme, {
6897
+ background: hoverColorDark,
6898
+ }),
6197
6899
  },
6198
6900
  }),
6199
6901
  '&:not(.ellipsis):focus:focus-visible::before': {
@@ -6202,16 +6904,26 @@ const getComponentCss$v = (maxNumberOfPageLinks, theme) => {
6202
6904
  ...getInsetJssStyle(-4),
6203
6905
  border: `${borderWidthBase} solid ${focusColor}`,
6204
6906
  borderRadius: borderRadiusMedium,
6907
+ ...prefersColorSchemeDarkMediaQuery(theme, {
6908
+ borderColor: focusColorDark,
6909
+ }),
6205
6910
  },
6206
6911
  '&[aria-current]': {
6207
6912
  ...disabledCursorStyle,
6208
6913
  color: primaryColor,
6209
6914
  border: `${borderWidthBase} solid ${primaryColor}`,
6915
+ ...prefersColorSchemeDarkMediaQuery(theme, {
6916
+ color: primaryColorDark,
6917
+ borderColor: primaryColorDark,
6918
+ }),
6210
6919
  '&:not(.ellipsis):focus::before': getInsetJssStyle(-6),
6211
6920
  },
6212
6921
  '&[aria-disabled]': {
6213
6922
  ...disabledCursorStyle,
6214
6923
  color: disabledColor,
6924
+ ...prefersColorSchemeDarkMediaQuery(theme, {
6925
+ color: disabledColorDark,
6926
+ }),
6215
6927
  },
6216
6928
  },
6217
6929
  },
@@ -6224,6 +6936,82 @@ const getComponentCss$v = (maxNumberOfPageLinks, theme) => {
6224
6936
  });
6225
6937
  };
6226
6938
 
6939
+ const removeSlottedSelector = (styles) => Object.fromEntries(Object.entries(styles).map(([key, value]) => {
6940
+ value = typeof value === 'object' ? removeSlottedSelector(value) : value;
6941
+ return [key.replace(/::slotted\(([^,]+)\)/g, '$1'), value];
6942
+ }));
6943
+ const removeStyles = (selector, styles) => Object.fromEntries(Object.entries(styles)
6944
+ .filter(([key]) => key !== selector)
6945
+ .map(([key, value]) => {
6946
+ value = typeof value === 'object' ? removeStyles(selector, value) : value;
6947
+ return [key, value];
6948
+ }));
6949
+
6950
+ const getComponentCss$v = (hideLabel, state, isDisabled, isLoading, isWithinForm, length, theme) => {
6951
+ const inputSize = `calc(${fontLineHeight} + 10px + ${borderWidthBase} * 2 + ${spacingStaticSmall} * 2)`; // equivalent to calculation of input height within form-styles
6952
+ const labelStyles = removeStyles('@media(hover:hover)', removeSlottedSelector(getLabelStyles('input', isDisabled, hideLabel, state, theme)));
6953
+ const inputStyles = removeStyles('input[readonly]', removeSlottedSelector(getBaseChildStyles('input', state, theme, {
6954
+ textAlign: 'center',
6955
+ width: inputSize,
6956
+ ...(length === 6 && {
6957
+ [getMediaQueryMax('xs')]: {
6958
+ width: `calc((276px - (${spacingStaticSmall} * 5)) / 6)`, // calculate the max with of the inputs that fit into grid in viewport base (276px)
6959
+ },
6960
+ }),
6961
+ ...(isLoading && {
6962
+ opacity: 0.2,
6963
+ cursor: 'not-allowed',
6964
+ }),
6965
+ })));
6966
+ return getCss({
6967
+ '@global': {
6968
+ ':host': addImportantToEachRule({
6969
+ display: 'block',
6970
+ ...colorSchemeStyles,
6971
+ ...hostHiddenStyles,
6972
+ }),
6973
+ ...inputStyles,
6974
+ ...(isWithinForm &&
6975
+ addImportantToEachRule({
6976
+ '::slotted(input)': {
6977
+ position: 'absolute',
6978
+ height: inputSize,
6979
+ width: 0,
6980
+ opacity: 0,
6981
+ },
6982
+ })),
6983
+ },
6984
+ ...(isLoading && {
6985
+ spinner: {
6986
+ width: '100%',
6987
+ height: inputSize,
6988
+ pointerEvents: 'none',
6989
+ position: 'absolute',
6990
+ top: '50%',
6991
+ left: '50%',
6992
+ transform: 'translate(-50%, -50%)',
6993
+ },
6994
+ }),
6995
+ 'input-container': {
6996
+ display: 'flex',
6997
+ position: 'relative',
6998
+ gap: spacingStaticSmall,
6999
+ flexWrap: 'wrap',
7000
+ width: 'fit-content',
7001
+ },
7002
+ ...mergeDeep(labelStyles, {
7003
+ label: {
7004
+ ...buildResponsiveStyles(hideLabel,
7005
+ // workaround: since pin-code component is not wrapped into label tag it behaves differently
7006
+ (isLabelHidden) => (isLabelHidden ? { display: 'none' } : { display: 'inline-flex' })),
7007
+ marginBottom: spacingStaticXSmall,
7008
+ },
7009
+ }),
7010
+ ...getFunctionalComponentRequiredStyles(),
7011
+ ...getFunctionalComponentStateMessageStyles(theme, state),
7012
+ });
7013
+ };
7014
+
6227
7015
  const { backgroundColor: backgroundColorThemeLight, primaryColor: primaryColorThemeLight } = getThemedColors('light');
6228
7016
  const { canvasColor, canvasTextColor } = getHighContrastColors();
6229
7017
  const directionPositionMap = {
@@ -6298,6 +7086,7 @@ const getComponentCss$u = (direction, theme) => {
6298
7086
  ...addImportantToEachRule({
6299
7087
  position: 'relative',
6300
7088
  display: 'inline-block',
7089
+ ...colorSchemeStyles,
6301
7090
  ...hostHiddenStyles,
6302
7091
  }),
6303
7092
  verticalAlign: 'top',
@@ -6394,19 +7183,30 @@ const getComponentCss$u = (direction, theme) => {
6394
7183
  });
6395
7184
  };
6396
7185
 
6397
- const getComponentCss$t = (hideLabel, state, isDisabled, theme) => {
7186
+ const getCheckedSVGBackgroundImage = (fill) => {
7187
+ return getInlineSVGBackgroundImage(`<circle fill="${fill}" cx="12" cy="12" r="6"/>`);
7188
+ };
7189
+ const getComponentCss$t = (hideLabel, state, isDisabled, isLoading, theme) => {
6398
7190
  const checkedIconColor = isHighContrastMode
6399
7191
  ? getHighContrastColors().canvasColor
6400
- : getInvertedThemedColors(theme).primaryColor.replace(/#/g, '%23');
6401
- return getCss(mergeDeep(getCheckboxRadioJssStyle(hideLabel, state, isDisabled, false, theme), {
7192
+ : escapeHashCharacter(getInvertedThemedColors(theme).primaryColor);
7193
+ const checkedIconColorDark = isHighContrastMode
7194
+ ? getHighContrastColors().canvasColor
7195
+ : escapeHashCharacter(getInvertedThemedColors('dark').primaryColor);
7196
+ return getCss(mergeDeep(getCheckboxRadioJssStyle(hideLabel, state, isDisabled, isLoading, theme), {
6402
7197
  '@global': {
6403
7198
  '::slotted': addImportantToEachRule({
6404
7199
  '&(input)': {
6405
7200
  borderRadius: '50%',
6406
7201
  },
6407
- '&(input:checked)': {
6408
- backgroundImage: getInlineSVGBackgroundImage(`<circle fill="${checkedIconColor}" cx="12" cy="12" r="6"/>`),
6409
- },
7202
+ ...(!isLoading && {
7203
+ '&(input:checked)': {
7204
+ backgroundImage: getCheckedSVGBackgroundImage(checkedIconColor),
7205
+ ...prefersColorSchemeDarkMediaQuery(theme, {
7206
+ backgroundImage: getCheckedSVGBackgroundImage(checkedIconColorDark),
7207
+ }),
7208
+ },
7209
+ }),
6410
7210
  ...(!isDisabled && {
6411
7211
  '&(input:focus)::before': {
6412
7212
  borderRadius: '50%',
@@ -6417,15 +7217,18 @@ const getComponentCss$t = (hideLabel, state, isDisabled, theme) => {
6417
7217
  }));
6418
7218
  };
6419
7219
 
7220
+ const gradientColorLight = {
7221
+ 'background-base': '255,255,255',
7222
+ 'background-surface': '238,239,242',
7223
+ };
7224
+ const gradientColorDark = {
7225
+ 'background-base': '14,14,18',
7226
+ 'background-surface': '33,34,37',
7227
+ };
6420
7228
  const gradientColorMap = {
6421
- light: {
6422
- 'background-base': '255,255,255',
6423
- 'background-surface': '238,239,242',
6424
- },
6425
- dark: {
6426
- 'background-base': '14,14,18',
6427
- 'background-surface': '33,34,37',
6428
- },
7229
+ auto: gradientColorLight,
7230
+ light: gradientColorLight,
7231
+ dark: gradientColorDark,
6429
7232
  };
6430
7233
  const getGradient = (theme, gradientColorTheme) => {
6431
7234
  const gradientColor = gradientColorMap[theme][gradientColorTheme];
@@ -6436,15 +7239,17 @@ const getGradient = (theme, gradientColorTheme) => {
6436
7239
  };
6437
7240
  const getComponentCss$s = (gradientColor, isNextHidden, isPrevHidden, scrollIndicatorPosition, hasScrollbar, theme) => {
6438
7241
  const { backgroundColor, backgroundSurfaceColor, focusColor, hoverColor } = getThemedColors(theme);
6439
- const isDarkTheme = isThemeDark(theme);
7242
+ const { backgroundColor: backgroundColorDark, backgroundSurfaceColor: backgroundSurfaceColorDark, focusColor: focusColorDark, hoverColor: hoverColorDark, } = getThemedColors('dark');
7243
+ const backgroundColorLight = {
7244
+ 'background-base': backgroundColor,
7245
+ 'background-surface': backgroundSurfaceColor,
7246
+ };
6440
7247
  const backgroundColorMap = {
7248
+ auto: backgroundColorLight,
7249
+ light: backgroundColorLight,
6441
7250
  dark: {
6442
- 'background-base': backgroundSurfaceColor,
6443
- 'background-surface': backgroundColor,
6444
- },
6445
- light: {
6446
- 'background-base': backgroundColor,
6447
- 'background-surface': backgroundSurfaceColor,
7251
+ 'background-base': backgroundSurfaceColorDark,
7252
+ 'background-surface': backgroundColorDark,
6448
7253
  },
6449
7254
  };
6450
7255
  const actionPrevNextStyles = {
@@ -6459,6 +7264,7 @@ const getComponentCss$s = (gradientColor, isNextHidden, isPrevHidden, scrollIndi
6459
7264
  ':host': addImportantToEachRule({
6460
7265
  display: 'block',
6461
7266
  height: 'inherit',
7267
+ ...colorSchemeStyles,
6462
7268
  ...hostHiddenStyles,
6463
7269
  }),
6464
7270
  button: {
@@ -6473,15 +7279,21 @@ const getComponentCss$s = (gradientColor, isNextHidden, isPrevHidden, scrollIndi
6473
7279
  outline: 0,
6474
7280
  cursor: 'pointer',
6475
7281
  background: backgroundColorMap[theme][gradientColor],
7282
+ ...prefersColorSchemeDarkMediaQuery(theme, {
7283
+ background: backgroundColorMap.dark[gradientColor],
7284
+ }),
6476
7285
  borderRadius: borderRadiusSmall,
6477
7286
  ...frostedGlassStyle,
6478
7287
  visibility: 'hidden',
6479
- ...(!isDarkTheme && dropShadowLowStyle),
7288
+ ...(!isThemeDark(theme) && dropShadowLowStyle),
6480
7289
  ...hoverMediaQuery({
6481
7290
  transition: getTransition('background-color'),
6482
7291
  '&:hover': {
6483
7292
  ...frostedGlassStyle,
6484
7293
  background: hoverColor,
7294
+ ...prefersColorSchemeDarkMediaQuery(theme, {
7295
+ background: hoverColorDark,
7296
+ }),
6485
7297
  },
6486
7298
  }),
6487
7299
  },
@@ -6524,6 +7336,9 @@ const getComponentCss$s = (gradientColor, isNextHidden, isPrevHidden, scrollIndi
6524
7336
  },
6525
7337
  '&:focus::before': {
6526
7338
  borderColor: focusColor,
7339
+ ...prefersColorSchemeDarkMediaQuery(theme, {
7340
+ borderColor: focusColorDark,
7341
+ }),
6527
7342
  },
6528
7343
  '&:focus:not(:focus-visible)::before': {
6529
7344
  borderColor: 'transparent',
@@ -6548,6 +7363,9 @@ const getComponentCss$s = (gradientColor, isNextHidden, isPrevHidden, scrollIndi
6548
7363
  gridArea: '1 / 1 / 1 / 1',
6549
7364
  justifyContent: 'flex-start',
6550
7365
  background: `linear-gradient(to right, ${getGradient(theme, gradientColor)} 100%)`,
7366
+ ...prefersColorSchemeDarkMediaQuery(theme, {
7367
+ background: `linear-gradient(to right, ${getGradient('dark', gradientColor)} 100%)`,
7368
+ }),
6551
7369
  visibility: isPrevHidden ? 'hidden' : 'visible',
6552
7370
  '& button': {
6553
7371
  marginLeft: '8px',
@@ -6563,6 +7381,9 @@ const getComponentCss$s = (gradientColor, isNextHidden, isPrevHidden, scrollIndi
6563
7381
  gridArea: '1 / 3 / 1 / 3',
6564
7382
  justifyContent: 'flex-end',
6565
7383
  background: `linear-gradient(to left, ${getGradient(theme, gradientColor)} 100%)`,
7384
+ ...prefersColorSchemeDarkMediaQuery(theme, {
7385
+ background: `linear-gradient(to left, ${getGradient('dark', gradientColor)} 100%)`,
7386
+ }),
6566
7387
  visibility: isNextHidden ? 'hidden' : 'visible',
6567
7388
  '& button': {
6568
7389
  marginRight: '8px',
@@ -6591,7 +7412,9 @@ const getColors$2 = (isDisabled, isSelected, theme) => {
6591
7412
  const getItemPadding = (hasIconAndSlottedContent) => hasIconAndSlottedContent ? `13px ${ITEM_PADDING} 13px 13px` : `13px ${ITEM_PADDING}`;
6592
7413
  const getComponentCss$r = (isDisabled, isSelected, hasIcon, hasSlottedContent, theme) => {
6593
7414
  const { focusColor } = getThemedColors(theme);
7415
+ const { focusColor: focusColorDark } = getThemedColors('dark');
6594
7416
  const { buttonColor, labelColor, borderColor, hoverBorderColor } = getColors$2(isDisabled, isSelected, theme);
7417
+ const { buttonColor: buttonColorDark, labelColor: labelColorDark, borderColor: borderColorDark, hoverBorderColor: hoverBorderColorDark, } = getColors$2(isDisabled, isSelected, 'dark');
6595
7418
  return getCss({
6596
7419
  '@global': {
6597
7420
  ':host': addImportantToEachRule({
@@ -6601,6 +7424,7 @@ const getComponentCss$r = (isDisabled, isSelected, hasIcon, hasSlottedContent, t
6601
7424
  }),
6602
7425
  // All width relevant styling has to be kept in sync with the tempDiv of the p-segmented-control utils
6603
7426
  button: {
7427
+ position: 'relative',
6604
7428
  display: 'block',
6605
7429
  height: '100%',
6606
7430
  width: '100%',
@@ -6612,7 +7436,10 @@ const getComponentCss$r = (isDisabled, isSelected, hasIcon, hasSlottedContent, t
6612
7436
  background: 'transparent',
6613
7437
  color: buttonColor,
6614
7438
  ...textSmallStyle,
6615
- position: 'relative',
7439
+ ...prefersColorSchemeDarkMediaQuery(theme, {
7440
+ borderColor: borderColorDark,
7441
+ color: buttonColorDark,
7442
+ }),
6616
7443
  '&::before': {
6617
7444
  content: '""',
6618
7445
  position: 'absolute',
@@ -6622,6 +7449,9 @@ const getComponentCss$r = (isDisabled, isSelected, hasIcon, hasSlottedContent, t
6622
7449
  },
6623
7450
  '&:focus::before': {
6624
7451
  borderColor: focusColor,
7452
+ ...prefersColorSchemeDarkMediaQuery(theme, {
7453
+ borderColor: focusColorDark,
7454
+ }),
6625
7455
  },
6626
7456
  '&:focus:not(:focus-visible)::before': {
6627
7457
  borderColor: 'transparent',
@@ -6637,6 +7467,9 @@ const getComponentCss$r = (isDisabled, isSelected, hasIcon, hasSlottedContent, t
6637
7467
  transition: getTransition('border-color'),
6638
7468
  '&:hover': {
6639
7469
  borderColor: hoverBorderColor,
7470
+ ...prefersColorSchemeDarkMediaQuery(theme, {
7471
+ borderColor: hoverBorderColorDark,
7472
+ }),
6640
7473
  },
6641
7474
  })),
6642
7475
  }),
@@ -6647,6 +7480,9 @@ const getComponentCss$r = (isDisabled, isSelected, hasIcon, hasSlottedContent, t
6647
7480
  ...textXSmallStyle,
6648
7481
  overflowWrap: 'normal',
6649
7482
  color: labelColor,
7483
+ ...prefersColorSchemeDarkMediaQuery(theme, {
7484
+ color: labelColorDark,
7485
+ }),
6650
7486
  },
6651
7487
  },
6652
7488
  ...(hasIcon && {
@@ -6674,146 +7510,19 @@ const getComponentCss$q = (maxWidth, columns) => {
6674
7510
  gridTemplateColumns: col === 'auto' ? `repeat(auto-fit, ${maxWidth}px)` : `repeat(${col}, minmax(0, 1fr))`,
6675
7511
  })),
6676
7512
  gap: '6px',
7513
+ ...colorSchemeStyles,
6677
7514
  ...hostHiddenStyles,
6678
7515
  }),
6679
7516
  },
6680
7517
  });
6681
7518
  };
6682
7519
 
6683
- const getBaseChildStyles = (child, state, theme, additionalDefaultJssStyle) => {
6684
- const { primaryColor, contrastLowColor, contrastMediumColor, disabledColor } = getThemedColors(theme);
6685
- const { formStateColor, formStateHoverColor } = getThemedFormStateColors(theme, state);
6686
- return {
6687
- [`::slotted(${child})`]: {
6688
- display: 'block',
6689
- width: '100%',
6690
- height: child !== 'textarea'
6691
- ? `calc(${fontLineHeight} + 10px + ${borderWidthBase} * 2 + ${spacingStaticSmall} * 2)` // we need 10px additionally so input height becomes 54px
6692
- : 'auto',
6693
- margin: 0,
6694
- outline: 0,
6695
- WebkitAppearance: 'none',
6696
- appearance: 'none',
6697
- boxSizing: 'border-box',
6698
- border: `${borderWidthBase} solid ${formStateColor || contrastMediumColor}`,
6699
- borderRadius: borderRadiusSmall,
6700
- background: 'transparent',
6701
- font: textSmallStyle.font.replace('ex', 'ex + 6px'),
6702
- textIndent: 0,
6703
- color: primaryColor,
6704
- transition: ['color', 'border-color', 'background-color'].map(getTransition).join(),
6705
- ...additionalDefaultJssStyle,
6706
- },
6707
- ...hoverMediaQuery({
6708
- // with the media query the selector has higher priority and overrides disabled styles
6709
- [`::slotted(${child}:not(:disabled):not(:focus):not([readonly]):hover)`]: {
6710
- borderColor: formStateHoverColor || primaryColor,
6711
- },
6712
- }),
6713
- [`::slotted(${child}:focus)`]: {
6714
- borderColor: primaryColor,
6715
- },
6716
- [`::slotted(${child}:disabled)`]: {
6717
- cursor: 'not-allowed',
6718
- color: disabledColor,
6719
- borderColor: disabledColor,
6720
- WebkitTextFillColor: disabledColor,
6721
- },
6722
- ...(child !== 'select' && {
6723
- [`::slotted(${child}[readonly])`]: {
6724
- borderColor: contrastLowColor,
6725
- background: contrastLowColor,
6726
- },
6727
- }),
6728
- };
6729
- };
6730
- const getLabelStyles = (child, isDisabled, hideLabel, state, theme, counterOrUnitOrIconStyles) => {
6731
- const { primaryColor, disabledColor, contrastHighColor } = getThemedColors(theme);
6732
- const { formStateHoverColor } = getThemedFormStateColors(theme, state);
6733
- const counterOrUnitOrIconStylesKey = counterOrUnitOrIconStyles && Object.keys(counterOrUnitOrIconStyles)[0];
6734
- return {
6735
- label: {
6736
- display: 'flex',
6737
- flexDirection: 'column',
6738
- gap: spacingStaticXSmall,
6739
- position: 'relative',
6740
- '&__text': {
6741
- display: 'block',
6742
- ...buildResponsiveStyles(hideLabel, (isHidden) => getHiddenTextJssStyle(isHidden, { width: 'fit-content' })),
6743
- ...textSmallStyle,
6744
- color: isDisabled ? disabledColor : primaryColor,
6745
- transition: getTransition('color'),
6746
- '&+&': {
6747
- marginTop: `-${spacingStaticXSmall}`,
6748
- fontSize: fontSizeTextXSmall,
6749
- ...(!isDisabled && {
6750
- color: contrastHighColor,
6751
- }),
6752
- },
6753
- ...hoverMediaQuery({
6754
- '&:hover': {
6755
- [`&~::slotted(${child}:not(:disabled):not(:focus):not([readonly]))` +
6756
- (formStateHoverColor ? `,::slotted(${child}:not(:disabled):not(:focus):not([readonly]):hover)` : '')]: {
6757
- borderColor: addImportantToRule(formStateHoverColor || primaryColor),
6758
- },
6759
- },
6760
- }),
6761
- },
6762
- },
6763
- ...(counterOrUnitOrIconStyles && {
6764
- [counterOrUnitOrIconStylesKey]: {
6765
- ...counterOrUnitOrIconStyles[counterOrUnitOrIconStylesKey],
6766
- pointerEvents: 'none',
6767
- ...(isDisabled && {
6768
- color: disabledColor,
6769
- cursor: 'not-allowed',
6770
- }),
6771
- },
6772
- }),
6773
- };
6774
- };
6775
-
6776
- const OPTION_HEIGHT = 40; // optgroups are higher and ignored
6777
- const getComponentCss$p = (isDisabled, hasCustomDropdown, hideLabel, state, theme) => {
6778
- return getCss({
6779
- '@global': addImportantToEachRule({
6780
- ':host': {
6781
- display: 'block',
6782
- ...hostHiddenStyles,
6783
- },
6784
- ...getBaseChildStyles('select', state, theme, {
6785
- position: 'static',
6786
- zIndex: 0,
6787
- cursor: 'pointer',
6788
- padding: `8px calc(${fontLineHeight} + 10px + ${borderWidthBase} * 2 + ${spacingStaticSmall} * 2) 8px ${spacingStaticMedium}`,
6789
- ...(hasCustomDropdown && !isDisabled && { borderColor: 'transparent' }),
6790
- }),
6791
- }),
6792
- root: {
6793
- display: 'block',
6794
- position: 'relative',
6795
- },
6796
- ...getLabelStyles('select', isDisabled, hideLabel, state, theme, {
6797
- icon: {
6798
- position: 'absolute',
6799
- bottom: '13px',
6800
- right: '15px',
6801
- transform: 'rotate3d(0,0,1,0.0001deg)',
6802
- transition: getTransition('transform'),
6803
- '&--open': {
6804
- transform: 'rotate3d(0,0,1,180deg)',
6805
- },
6806
- },
6807
- }),
6808
- ...getFunctionalComponentRequiredStyles(),
6809
- ...getFunctionalComponentStateMessageStyles(theme, state),
6810
- });
6811
- };
6812
-
6813
7520
  const dropdownPositionVar = '--p-internal-dropdown-position';
6814
7521
  const getButtonStyles = (direction, isOpen, state, theme) => {
6815
7522
  const { primaryColor, disabledColor, contrastMediumColor } = getThemedColors(theme);
7523
+ const { primaryColor: primaryColorDark, disabledColor: disabledColorDark, contrastMediumColor: contrastMediumColorDark, } = getThemedColors('dark');
6816
7524
  const { formStateHoverColor, formStateColor } = getThemedFormStateColors(theme, state);
7525
+ const { formStateHoverColor: formStateHoverColorDark, formStateColor: formStateColorDark } = getThemedFormStateColors('dark', state);
6817
7526
  const isDirectionDown = direction === 'down';
6818
7527
  return {
6819
7528
  '@global': {
@@ -6830,17 +7539,29 @@ const getButtonStyles = (direction, isOpen, state, theme) => {
6830
7539
  outline: '0',
6831
7540
  cursor: 'pointer',
6832
7541
  transition: getTransition('border-color'),
7542
+ ...prefersColorSchemeDarkMediaQuery(theme, {
7543
+ borderColor: isOpen ? primaryColorDark : formStateColorDark || contrastMediumColorDark,
7544
+ }),
6833
7545
  '&:focus, &:focus ~ ul': {
6834
7546
  borderColor: primaryColor,
7547
+ ...prefersColorSchemeDarkMediaQuery(theme, {
7548
+ borderColor: primaryColorDark,
7549
+ }),
6835
7550
  },
6836
7551
  ...hoverMediaQuery({
6837
7552
  '&:not(:disabled):not(:focus):hover': {
6838
7553
  borderColor: isOpen ? primaryColor : formStateHoverColor || primaryColor,
7554
+ ...prefersColorSchemeDarkMediaQuery(theme, {
7555
+ borderColor: isOpen ? primaryColorDark : formStateHoverColorDark || primaryColorDark,
7556
+ }),
6839
7557
  },
6840
7558
  }),
6841
7559
  '&:disabled': {
6842
7560
  cursor: 'not-allowed',
6843
7561
  borderColor: disabledColor,
7562
+ ...prefersColorSchemeDarkMediaQuery(theme, {
7563
+ borderColor: disabledColorDark,
7564
+ }),
6844
7565
  },
6845
7566
  ...(isOpen && {
6846
7567
  [isDirectionDown ? 'borderBottomLeftRadius' : 'borderTopLeftRadius']: 0,
@@ -6852,12 +7573,18 @@ const getButtonStyles = (direction, isOpen, state, theme) => {
6852
7573
  };
6853
7574
  const getFilterStyles = (direction, isOpen, state, disabled, theme) => {
6854
7575
  const { primaryColor, backgroundColor, disabledColor, contrastMediumColor } = getThemedColors(theme);
7576
+ const { primaryColor: primaryColorDark, backgroundColor: backgroundColorDark, disabledColor: disabledColorDark, contrastMediumColor: contrastMediumColorDark, } = getThemedColors('dark');
6855
7577
  const { formStateHoverColor, formStateColor } = getThemedFormStateColors(theme, state);
7578
+ const { formStateHoverColor: formStateHoverColorDark, formStateColor: formStateColorDark } = getThemedFormStateColors('dark', state);
6856
7579
  const isDirectionDown = direction === 'down';
6857
7580
  const placeHolderJssStyle = {
6858
7581
  opacity: 1,
6859
7582
  color: disabled ? disabledColor : primaryColor,
6860
7583
  };
7584
+ const placeHolderDarkJssStyle = {
7585
+ opacity: 1,
7586
+ color: disabled ? disabledColorDark : primaryColorDark,
7587
+ };
6861
7588
  return {
6862
7589
  '@global': {
6863
7590
  input: {
@@ -6881,23 +7608,45 @@ const getFilterStyles = (direction, isOpen, state, disabled, theme) => {
6881
7608
  cursor: disabled ? 'not-allowed' : 'text',
6882
7609
  color: primaryColor,
6883
7610
  background: backgroundColor,
6884
- '&::placeholder': placeHolderJssStyle,
6885
- '&::-webkit-input-placeholder': placeHolderJssStyle,
6886
- '&::-moz-placeholder': placeHolderJssStyle,
7611
+ ...prefersColorSchemeDarkMediaQuery(theme, {
7612
+ color: primaryColorDark,
7613
+ background: backgroundColorDark,
7614
+ }),
7615
+ '&::placeholder': {
7616
+ ...placeHolderJssStyle,
7617
+ ...prefersColorSchemeDarkMediaQuery(theme, placeHolderDarkJssStyle),
7618
+ },
7619
+ '&::-webkit-input-placeholder': {
7620
+ ...placeHolderJssStyle,
7621
+ ...prefersColorSchemeDarkMediaQuery(theme, placeHolderDarkJssStyle),
7622
+ },
7623
+ '&::-moz-placeholder': {
7624
+ ...placeHolderJssStyle,
7625
+ ...prefersColorSchemeDarkMediaQuery(theme, placeHolderDarkJssStyle),
7626
+ },
6887
7627
  '&:not(:disabled):focus': {
6888
7628
  opacity: 1,
6889
7629
  '&+span, &~ ul': {
6890
7630
  borderColor: primaryColor,
7631
+ ...prefersColorSchemeDarkMediaQuery(theme, {
7632
+ borderColor: primaryColorDark,
7633
+ }),
6891
7634
  },
6892
7635
  },
6893
7636
  ...hoverMediaQuery({
6894
7637
  '&:not(:disabled)': {
6895
7638
  '&+span:hover': {
6896
7639
  borderColor: isOpen ? primaryColor : formStateHoverColor || primaryColor,
7640
+ ...prefersColorSchemeDarkMediaQuery(theme, {
7641
+ borderColor: isOpen ? primaryColorDark : formStateHoverColorDark || primaryColorDark,
7642
+ }),
6897
7643
  },
6898
7644
  '&:hover': {
6899
7645
  '&+span, &~ul': {
6900
7646
  borderColor: isOpen ? primaryColor : formStateHoverColor || primaryColor,
7647
+ ...prefersColorSchemeDarkMediaQuery(theme, {
7648
+ borderColor: isOpen ? primaryColorDark : formStateHoverColorDark || primaryColorDark,
7649
+ }),
6901
7650
  },
6902
7651
  },
6903
7652
  },
@@ -6910,6 +7659,9 @@ const getFilterStyles = (direction, isOpen, state, disabled, theme) => {
6910
7659
  pointerEvents: 'all',
6911
7660
  cursor: disabled ? 'not-allowed' : 'pointer',
6912
7661
  border: `${borderWidthBase} solid ${isOpen ? primaryColor : formStateColor || contrastMediumColor}`,
7662
+ ...prefersColorSchemeDarkMediaQuery(theme, {
7663
+ borderColor: isOpen ? primaryColorDark : formStateColorDark || contrastMediumColorDark,
7664
+ }),
6913
7665
  borderRadius: borderRadiusSmall,
6914
7666
  ...(isOpen && {
6915
7667
  [isDirectionDown ? 'borderBottomLeftRadius' : 'borderTopLeftRadius']: 0,
@@ -6922,7 +7674,8 @@ const getFilterStyles = (direction, isOpen, state, disabled, theme) => {
6922
7674
  };
6923
7675
  const getListStyles = (direction, theme) => {
6924
7676
  const isDirectionDown = direction === 'down';
6925
- const { primaryColor, backgroundColor, contrastMediumColor, contrastHighColor, backgroundSurfaceColor, disabledColor, } = getThemedColors(theme);
7677
+ const { primaryColor: primaryColorDark, backgroundColor: backgroundColorDark, contrastMediumColor: contrastMediumColorDark, disabledColor: disabledColorDark, contrastHighColor: contrastHighColorDark, backgroundSurfaceColor: backgroundSurfaceColorDark, contrastLowColor: contrastLowColorDark, } = getThemedColors('dark');
7678
+ const { primaryColor, backgroundColor, contrastMediumColor, contrastHighColor, backgroundSurfaceColor, disabledColor, contrastLowColor, } = getThemedColors(theme);
6926
7679
  const { highlightColor } = getHighContrastColors();
6927
7680
  return {
6928
7681
  '@global': {
@@ -6952,7 +7705,12 @@ const getListStyles = (direction, theme) => {
6952
7705
  scrollbarWidth: 'thin',
6953
7706
  scrollbarColor: 'auto',
6954
7707
  transition: getTransition('border-color'),
6955
- transform: 'translate3d(0,0,0)', // fix iOS bug if less than 5 items are displayed
7708
+ transform: 'translate3d(0,0,0)',
7709
+ ...prefersColorSchemeDarkMediaQuery(theme, {
7710
+ background: backgroundColorDark,
7711
+ borderColor: primaryColorDark,
7712
+ [isDirectionDown ? 'borderTopColor' : 'borderBottomColor']: addImportantToRule(contrastMediumColorDark),
7713
+ }),
6956
7714
  },
6957
7715
  },
6958
7716
  option: {
@@ -6962,33 +7720,52 @@ const getListStyles = (direction, theme) => {
6962
7720
  padding: `${spacingStaticSmall} 12px`,
6963
7721
  flex: `1 0 calc(${fontLineHeight} + ${spacingStaticSmall} * 2)`,
6964
7722
  color: contrastHighColor,
7723
+ ...prefersColorSchemeDarkMediaQuery(theme, {
7724
+ color: contrastHighColorDark,
7725
+ }),
6965
7726
  cursor: 'pointer',
6966
7727
  textAlign: 'left',
6967
7728
  wordBreak: 'break-word',
6968
7729
  boxSizing: 'border-box',
6969
7730
  borderRadius: borderRadiusSmall,
6970
7731
  transition: ['background-color', 'color'].map(getTransition).join(),
6971
- '&[role=status]': {
6972
- cursor: 'not-allowed',
6973
- },
6974
- '&__sr': getHiddenTextJssStyle(),
7732
+ ...getNoResultsOptionJssStyle(),
6975
7733
  ...hoverMediaQuery({
6976
- '&:not([aria-disabled]):not([role=status]):hover': {
7734
+ '&:not([aria-disabled]):not(.option--disabled):not([role=status]):hover': {
6977
7735
  color: isHighContrastMode ? highlightColor : primaryColor,
6978
- background: backgroundSurfaceColor,
7736
+ background: contrastLowColor,
7737
+ ...prefersColorSchemeDarkMediaQuery(theme, {
7738
+ color: isHighContrastMode ? highlightColor : primaryColorDark,
7739
+ background: contrastLowColorDark,
7740
+ }),
6979
7741
  },
6980
7742
  }),
6981
- '&--highlighted, &--selected': {
6982
- color: isHighContrastMode ? highlightColor : primaryColor,
6983
- background: backgroundSurfaceColor,
6984
- },
6985
7743
  '&--selected': {
6986
7744
  cursor: 'default',
6987
7745
  pointerEvents: 'none',
7746
+ background: backgroundSurfaceColor,
7747
+ ...prefersColorSchemeDarkMediaQuery(theme, {
7748
+ background: backgroundSurfaceColorDark,
7749
+ }),
7750
+ },
7751
+ '&--highlighted': {
7752
+ background: contrastLowColor,
7753
+ ...prefersColorSchemeDarkMediaQuery(theme, {
7754
+ background: contrastLowColorDark,
7755
+ }),
7756
+ },
7757
+ '&--highlighted, &--selected': {
7758
+ color: isHighContrastMode ? highlightColor : primaryColor,
7759
+ ...prefersColorSchemeDarkMediaQuery(theme, {
7760
+ color: isHighContrastMode ? highlightColor : primaryColorDark,
7761
+ }),
6988
7762
  },
6989
7763
  '&--disabled': {
6990
7764
  cursor: 'not-allowed',
6991
7765
  color: disabledColor,
7766
+ ...prefersColorSchemeDarkMediaQuery(theme, {
7767
+ color: disabledColorDark,
7768
+ }),
6992
7769
  },
6993
7770
  '&--hidden': {
6994
7771
  display: 'none',
@@ -7007,9 +7784,11 @@ const getListStyles = (direction, theme) => {
7007
7784
  },
7008
7785
  };
7009
7786
  };
7010
- const getComponentCss$o = (direction, isOpen, state, disabled, filter, theme) => {
7787
+ const getComponentCss$p = (direction, isOpen, state, disabled, filter, theme) => {
7011
7788
  const { primaryColor, contrastMediumColor, disabledColor } = getThemedColors(theme);
7789
+ const { primaryColor: primaryColorDark, contrastMediumColor: contrastMediumColorDark, disabledColor: disabledColorDark, } = getThemedColors('dark');
7012
7790
  const { formStateColor, formStateHoverColor } = getThemedFormStateColors(theme, state);
7791
+ const { formStateColor: formStateColorDark, formStateHoverColor: formStateHoverColorDark } = getThemedFormStateColors('dark', state);
7013
7792
  return getCss(
7014
7793
  // merge because of global styles
7015
7794
  mergeDeep({
@@ -7024,11 +7803,17 @@ const getComponentCss$o = (direction, isOpen, state, disabled, filter, theme) =>
7024
7803
  left: 0,
7025
7804
  right: 0,
7026
7805
  color: disabled ? disabledColor : formStateColor || contrastMediumColor,
7806
+ ...prefersColorSchemeDarkMediaQuery(theme, {
7807
+ color: disabled ? disabledColorDark : formStateColorDark || contrastMediumColorDark,
7808
+ }),
7027
7809
  ...(!disabled &&
7028
7810
  !isHighContrastMode &&
7029
7811
  hoverMediaQuery({
7030
7812
  '&(:hover)': {
7031
7813
  color: formStateHoverColor || primaryColor,
7814
+ ...prefersColorSchemeDarkMediaQuery(theme, {
7815
+ color: formStateHoverColorDark || primaryColorDark,
7816
+ }),
7032
7817
  },
7033
7818
  })),
7034
7819
  },
@@ -7041,6 +7826,43 @@ const getComponentCss$o = (direction, isOpen, state, disabled, filter, theme) =>
7041
7826
  : getButtonStyles(direction, isOpen, state, theme), isOpen && getListStyles(direction, theme)));
7042
7827
  };
7043
7828
 
7829
+ const getComponentCss$o = (isDisabled, hasCustomDropdown, hideLabel, state, theme) => {
7830
+ return getCss({
7831
+ '@global': addImportantToEachRule({
7832
+ ':host': {
7833
+ display: 'block',
7834
+ ...colorSchemeStyles,
7835
+ ...hostHiddenStyles,
7836
+ },
7837
+ ...getBaseChildStyles('select', state, theme, {
7838
+ position: 'static',
7839
+ zIndex: 0,
7840
+ cursor: 'pointer',
7841
+ padding: `8px calc(${fontLineHeight} + 10px + ${borderWidthBase} * 2 + ${spacingStaticSmall} * 2) 8px ${spacingStaticMedium}`,
7842
+ ...(hasCustomDropdown && !isDisabled && { borderColor: 'transparent' }),
7843
+ }),
7844
+ }),
7845
+ root: {
7846
+ display: 'block',
7847
+ position: 'relative',
7848
+ },
7849
+ ...getLabelStyles('select', isDisabled, hideLabel, state, theme, {
7850
+ icon: {
7851
+ position: 'absolute',
7852
+ bottom: '13px',
7853
+ right: '15px',
7854
+ transform: 'rotate3d(0,0,1,0.0001deg)',
7855
+ transition: getTransition('transform'),
7856
+ '&--open': {
7857
+ transform: 'rotate3d(0,0,1,180deg)',
7858
+ },
7859
+ },
7860
+ }),
7861
+ ...getFunctionalComponentRequiredStyles(),
7862
+ ...getFunctionalComponentStateMessageStyles(theme, state),
7863
+ });
7864
+ };
7865
+
7044
7866
  const sizeSmall = '48px';
7045
7867
  const sizeMedium = '72px';
7046
7868
  const sizeLarge = '104px';
@@ -7054,12 +7876,14 @@ const getComponentCss$n = (size, theme) => {
7054
7876
  const strokeDasharray = '57'; // C = 2πR
7055
7877
  const animationDuration = 'var(--p-animation-duration, 2s)';
7056
7878
  const { primaryColor, contrastMediumColor } = getThemedColors(theme);
7879
+ const { primaryColor: primaryColorDark, contrastMediumColor: contrastMediumColorDark } = getThemedColors('dark');
7057
7880
  const { canvasColor, canvasTextColor } = getHighContrastColors();
7058
7881
  return getCss({
7059
7882
  '@global': {
7060
7883
  ':host': addImportantToEachRule({
7061
7884
  display: 'inline-flex',
7062
7885
  verticalAlign: 'top',
7886
+ ...colorSchemeStyles,
7063
7887
  ...hostHiddenStyles,
7064
7888
  }),
7065
7889
  svg: {
@@ -7071,13 +7895,21 @@ const getComponentCss$n = (size, theme) => {
7071
7895
  },
7072
7896
  circle: {
7073
7897
  '&:first-child': {
7898
+ // TODO: High Contrast Mode should be handled within a local color helper function
7074
7899
  stroke: isHighContrastMode ? canvasTextColor : contrastMediumColor,
7900
+ ...prefersColorSchemeDarkMediaQuery(theme, {
7901
+ stroke: isHighContrastMode ? canvasTextColor : contrastMediumColorDark,
7902
+ }),
7075
7903
  animation: `$rotate ${animationDuration} linear infinite`, // needs to rotate to eliminate stutter in safari
7076
7904
  },
7077
7905
  '&:last-child': {
7078
7906
  transformOrigin: '0 0',
7079
7907
  animation: `$dash ${animationDuration} ease-in-out infinite`,
7908
+ // TODO: High Contrast Mode should be handled within a local color helper function
7080
7909
  stroke: isHighContrastMode ? canvasColor : primaryColor,
7910
+ ...prefersColorSchemeDarkMediaQuery(theme, {
7911
+ stroke: isHighContrastMode ? canvasColor : primaryColorDark,
7912
+ }),
7081
7913
  strokeDasharray: strokeDasharray
7082
7914
  ,
7083
7915
  strokeLinecap: 'round',
@@ -7120,7 +7952,7 @@ const getComponentCss$n = (size, theme) => {
7120
7952
 
7121
7953
  const getSVGPath = (stepCount, numberedCircleColors, isStateCurrent) => {
7122
7954
  // # of the hexcolor starts a fragment identifier in URLs, so we have to replace it with the escaped value of # = %23
7123
- numberedCircleColors = Object.entries(numberedCircleColors).reduce((result, [key, value]) => ({ ...result, [key]: value.replace(/#/g, '%23') }), {});
7955
+ numberedCircleColors = Object.entries(numberedCircleColors).reduce((result, [key, value]) => ({ ...result, [key]: escapeHashCharacter(value) }), {});
7124
7956
  const { disabledColor, invertedBaseColor, primaryColor } = numberedCircleColors;
7125
7957
  const fillColor = isStateCurrent ? invertedBaseColor : disabledColor;
7126
7958
  const svgCirclePath = `<circle fill="${isStateCurrent ? primaryColor : 'none'}"${isStateCurrent ? '' : ` stroke="${fillColor}"`} stroke-width="1px" cx="12" cy="12" r="9"/>`;
@@ -7142,6 +7974,7 @@ const getSVGPath = (stepCount, numberedCircleColors, isStateCurrent) => {
7142
7974
  };
7143
7975
  const getComponentCss$m = (state, disabled, theme) => {
7144
7976
  const { primaryColor, hoverColor, disabledColor, focusColor } = getThemedColors(theme);
7977
+ const { primaryColor: primaryColorDark, hoverColor: hoverColorDark, disabledColor: disabledColorDark, focusColor: focusColorDark, } = getThemedColors('dark');
7145
7978
  const isStateCurrent = state === 'current';
7146
7979
  const isStateCurrentOrUndefined = !state || isStateCurrent;
7147
7980
  const isDisabled = !state || disabled;
@@ -7157,6 +7990,13 @@ const getComponentCss$m = (state, disabled, theme) => {
7157
7990
  invertedBaseColor: getInvertedThemedColors(theme).primaryColor,
7158
7991
  disabledColor,
7159
7992
  }, isStateCurrent)),
7993
+ ...prefersColorSchemeDarkMediaQuery(theme, {
7994
+ backgroundImage: getInlineSVGBackgroundImage(getSVGPath(i, {
7995
+ primaryColor: primaryColorDark,
7996
+ invertedBaseColor: getInvertedThemedColors('dark').primaryColor,
7997
+ disabledColor: disabledColorDark,
7998
+ }, isStateCurrent)),
7999
+ }),
7160
8000
  },
7161
8001
  }), {})),
7162
8002
  ...addImportantToEachRule({
@@ -7185,12 +8025,21 @@ const getComponentCss$m = (state, disabled, theme) => {
7185
8025
  ...frostedGlassStyle,
7186
8026
  background: hoverColor,
7187
8027
  }),
8028
+ ...prefersColorSchemeDarkMediaQuery(theme, {
8029
+ color: isDisabled ? disabledColorDark : primaryColorDark,
8030
+ ...(isStateCurrent && {
8031
+ background: hoverColorDark,
8032
+ }),
8033
+ }),
7188
8034
  ...(!isDisabled &&
7189
8035
  hoverMediaQuery({
7190
8036
  transition: getTransition('background-color'),
7191
8037
  '&:hover': {
7192
8038
  ...frostedGlassStyle,
7193
8039
  background: hoverColor,
8040
+ ...prefersColorSchemeDarkMediaQuery(theme, {
8041
+ background: hoverColorDark,
8042
+ }),
7194
8043
  },
7195
8044
  })),
7196
8045
  ...(isStateCurrentOrUndefined && {
@@ -7207,6 +8056,9 @@ const getComponentCss$m = (state, disabled, theme) => {
7207
8056
  position: 'absolute',
7208
8057
  ...getInsetJssStyle(),
7209
8058
  border: `${borderWidthBase} solid ${focusColor}`,
8059
+ ...prefersColorSchemeDarkMediaQuery(theme, {
8060
+ borderColor: focusColorDark,
8061
+ }),
7210
8062
  borderRadius: borderRadiusSmall,
7211
8063
  },
7212
8064
  '&:focus:not(:focus-visible)::after': {
@@ -7230,7 +8082,10 @@ const getComponentCss$l = (size) => {
7230
8082
  '@global': {
7231
8083
  ':host': {
7232
8084
  display: 'block',
7233
- ...addImportantToEachRule(hostHiddenStyles),
8085
+ ...addImportantToEachRule({
8086
+ ...colorSchemeStyles,
8087
+ ...hostHiddenStyles,
8088
+ }),
7234
8089
  },
7235
8090
  },
7236
8091
  scroller: {
@@ -7270,11 +8125,14 @@ const getColors$1 = (checked, disabled, loading, theme) => {
7270
8125
  };
7271
8126
  const getComponentCss$k = (alignLabel, hideLabel, stretch, checked, disabled, loading, theme) => {
7272
8127
  const { buttonBorderColor, buttonBorderColorHover, buttonBackgroundColor, buttonBackgroundColorHover, toggleBackgroundColor, toggleBackgroundColorHover, textColor, } = getColors$1(checked, disabled, loading, theme);
8128
+ const { buttonBorderColor: buttonBorderColorDark, buttonBorderColorHover: buttonBorderColorHoverDark, buttonBackgroundColor: buttonBackgroundColorDark, buttonBackgroundColorHover: buttonBackgroundColorHoverDark, toggleBackgroundColor: toggleBackgroundColorDark, toggleBackgroundColorHover: toggleBackgroundColorHoverDark, textColor: textColorDark, } = getColors$1(checked, disabled, loading, 'dark');
7273
8129
  const { focusColor } = getThemedColors(theme);
8130
+ const { focusColor: focusColorDark } = getThemedColors('dark');
7274
8131
  return getCss({
7275
8132
  '@global': {
7276
8133
  ':host': addImportantToEachRule({
7277
8134
  outline: 0,
8135
+ ...colorSchemeStyles,
7278
8136
  ...hostHiddenStyles,
7279
8137
  ...buildResponsiveStyles(stretch, (stretchValue) => ({
7280
8138
  display: stretchValue ? 'block' : 'inline-block',
@@ -7303,8 +8161,15 @@ const getComponentCss$k = (alignLabel, hideLabel, stretch, checked, disabled, lo
7303
8161
  '&:hover .switch': {
7304
8162
  borderColor: buttonBorderColorHover,
7305
8163
  backgroundColor: buttonBackgroundColorHover,
8164
+ ...prefersColorSchemeDarkMediaQuery(theme, {
8165
+ borderColor: buttonBorderColorHoverDark,
8166
+ backgroundColor: buttonBackgroundColorHoverDark,
8167
+ }),
7306
8168
  '& .toggle': {
7307
8169
  backgroundColor: toggleBackgroundColorHover,
8170
+ ...prefersColorSchemeDarkMediaQuery(theme, {
8171
+ backgroundColor: toggleBackgroundColorHoverDark,
8172
+ }),
7308
8173
  },
7309
8174
  },
7310
8175
  })),
@@ -7313,6 +8178,9 @@ const getComponentCss$k = (alignLabel, hideLabel, stretch, checked, disabled, lo
7313
8178
  position: 'absolute',
7314
8179
  ...getInsetJssStyle(-6),
7315
8180
  border: `${borderWidthBase} solid ${focusColor}`,
8181
+ ...prefersColorSchemeDarkMediaQuery(theme, {
8182
+ borderColor: focusColorDark,
8183
+ }),
7316
8184
  borderRadius: '18px',
7317
8185
  },
7318
8186
  '&:not(:focus-visible) .switch::before': {
@@ -7330,6 +8198,10 @@ const getComponentCss$k = (alignLabel, hideLabel, stretch, checked, disabled, lo
7330
8198
  backgroundColor: buttonBackgroundColor,
7331
8199
  cursor: isDisabledOrLoading(disabled, loading) ? 'not-allowed' : 'pointer',
7332
8200
  transition: `${getTransition('background-color')},${getTransition('border-color')},${getTransition('color')}`,
8201
+ ...prefersColorSchemeDarkMediaQuery(theme, {
8202
+ borderColor: buttonBorderColorDark,
8203
+ backgroundColor: buttonBackgroundColorDark,
8204
+ }),
7333
8205
  },
7334
8206
  toggle: {
7335
8207
  position: 'absolute',
@@ -7340,6 +8212,9 @@ const getComponentCss$k = (alignLabel, hideLabel, stretch, checked, disabled, lo
7340
8212
  display: 'block',
7341
8213
  borderRadius: '50%',
7342
8214
  backgroundColor: toggleBackgroundColor,
8215
+ ...prefersColorSchemeDarkMediaQuery(theme, {
8216
+ backgroundColor: toggleBackgroundColorDark,
8217
+ }),
7343
8218
  transform: `translate3d(${checked ? '20px' : '0'}, 0, 0)`,
7344
8219
  transition: `${getTransition('background-color')},${getTransition('transform')}`,
7345
8220
  },
@@ -7358,6 +8233,9 @@ const getComponentCss$k = (alignLabel, hideLabel, stretch, checked, disabled, lo
7358
8233
  minWidth: 0,
7359
8234
  minHeight: 0,
7360
8235
  color: textColor,
8236
+ ...prefersColorSchemeDarkMediaQuery(theme, {
8237
+ color: textColorDark,
8238
+ }),
7361
8239
  ...mergeDeep(buildResponsiveStyles(alignLabel, (alignLabelValue) => ({
7362
8240
  order: alignLabelValue === 'left' ? -1 : 0,
7363
8241
  })), buildResponsiveStyles(hideLabel, getHiddenTextJssStyle)),
@@ -7403,6 +8281,7 @@ const cssVariableTableBorderColor = '--p-internal-table-border-color';
7403
8281
  const cssVariableTableHeadCellIconFilter = '--p-internal-table-head-cell-icon-filter';
7404
8282
  const getComponentCss$h = (theme) => {
7405
8283
  const { primaryColor, hoverColor, contrastLowColor } = doGetThemedColors(theme);
8284
+ const { primaryColor: primaryColorDark, hoverColor: hoverColorDark, contrastLowColor: contrastLowColorDark, } = doGetThemedColors('dark');
7406
8285
  return getCss({
7407
8286
  '@global': {
7408
8287
  ':host': addImportantToEachRule({
@@ -7410,12 +8289,21 @@ const getComponentCss$h = (theme) => {
7410
8289
  ...textSmallStyle,
7411
8290
  color: primaryColor,
7412
8291
  textAlign: 'left',
8292
+ ...colorSchemeStyles,
7413
8293
  ...hostHiddenStyles,
8294
+ ...prefersColorSchemeDarkMediaQuery(theme, {
8295
+ color: primaryColorDark,
8296
+ }),
7414
8297
  }),
7415
8298
  '::slotted(*)': addImportantToEachRule({
7416
8299
  [cssVariableTableHoverColor]: hoverColor,
7417
8300
  [cssVariableTableBorderColor]: contrastLowColor,
7418
8301
  [cssVariableTableHeadCellIconFilter]: isThemeDark(theme) ? 'invert(100%)' : 'none',
8302
+ ...prefersColorSchemeDarkMediaQuery(theme, {
8303
+ [cssVariableTableHoverColor]: hoverColorDark,
8304
+ [cssVariableTableBorderColor]: contrastLowColorDark,
8305
+ [cssVariableTableHeadCellIconFilter]: 'invert(100%)',
8306
+ }),
7419
8307
  ...(isHighContrastMode &&
7420
8308
  getSchemedHighContrastMediaQuery({
7421
8309
  [cssVariableTableHeadCellIconFilter]: 'none',
@@ -7570,11 +8458,21 @@ const targetSelectors = ['a', 'button'];
7570
8458
  const transformSelector = (selector) => targetSelectors.map((tag) => selector.replace(/\[role]/g, tag)).join();
7571
8459
  const getComponentCss$c = (size, weight, theme) => {
7572
8460
  const { primaryColor, hoverColor, focusColor } = getThemedColors(theme);
8461
+ const { primaryColor: primaryColorDark, hoverColor: hoverColorDark, focusColor: focusColorDark, } = getThemedColors('dark');
7573
8462
  const barJssStyle = {
7574
8463
  position: 'absolute',
7575
8464
  height: '2px',
7576
8465
  left: 0,
7577
- background: isHighContrastMode ? getHighContrastColors().canvasTextColor : primaryColor,
8466
+ ...(isHighContrastMode
8467
+ ? {
8468
+ background: getHighContrastColors().canvasTextColor,
8469
+ }
8470
+ : {
8471
+ background: primaryColor,
8472
+ ...prefersColorSchemeDarkMediaQuery(theme, {
8473
+ background: primaryColorDark,
8474
+ }),
8475
+ }),
7578
8476
  };
7579
8477
  return getCss({
7580
8478
  '@global': {
@@ -7582,6 +8480,7 @@ const getComponentCss$c = (size, weight, theme) => {
7582
8480
  display: 'block',
7583
8481
  ...addImportantToEachRule({
7584
8482
  position: 'relative',
8483
+ ...colorSchemeStyles,
7585
8484
  ...hostHiddenStyles,
7586
8485
  }),
7587
8486
  },
@@ -7612,6 +8511,9 @@ const getComponentCss$c = (size, weight, theme) => {
7612
8511
  cursor: 'pointer',
7613
8512
  borderRadius: borderRadiusSmall,
7614
8513
  zIndex: 0,
8514
+ ...prefersColorSchemeDarkMediaQuery(theme, {
8515
+ color: primaryColorDark,
8516
+ }),
7615
8517
  ...hoverMediaQuery({
7616
8518
  '&::before': {
7617
8519
  content: '""',
@@ -7627,6 +8529,9 @@ const getComponentCss$c = (size, weight, theme) => {
7627
8529
  [transformSelector('::slotted([role]:hover)::before')]: {
7628
8530
  ...frostedGlassStyle,
7629
8531
  background: hoverColor,
8532
+ ...prefersColorSchemeDarkMediaQuery(theme, {
8533
+ background: hoverColorDark,
8534
+ }),
7630
8535
  },
7631
8536
  }),
7632
8537
  // basic invisible bar, that will be delayed via transition: visibility
@@ -7644,6 +8549,9 @@ const getComponentCss$c = (size, weight, theme) => {
7644
8549
  // TODO: combine link-social-styles with link-button-styles and tabs-bar-styles
7645
8550
  [transformSelector('::slotted([role]:focus:focus-visible)::before')]: {
7646
8551
  border: `${borderWidthBase} solid ${focusColor}`,
8552
+ ...prefersColorSchemeDarkMediaQuery(theme, {
8553
+ borderColor: focusColorDark,
8554
+ }),
7647
8555
  },
7648
8556
  [transformSelector('::slotted([role]:not(:last-child))')]: {
7649
8557
  marginRight: spacingStaticMedium,
@@ -7681,20 +8589,27 @@ const getComponentCss$c = (size, weight, theme) => {
7681
8589
 
7682
8590
  const getComponentCss$b = (theme) => {
7683
8591
  const { primaryColor, focusColor } = getThemedColors(theme);
8592
+ const { primaryColor: primaryColorDark, focusColor: focusColorDark } = getThemedColors('dark');
7684
8593
  return getCss({
7685
8594
  '@global': {
7686
8595
  ':host': addImportantToEachRule({
7687
8596
  display: 'block',
7688
8597
  position: 'relative',
7689
8598
  color: primaryColor,
7690
- ...hostHiddenStyles,
7691
8599
  outline: 0,
8600
+ ...hostHiddenStyles,
8601
+ ...prefersColorSchemeDarkMediaQuery(theme, {
8602
+ color: primaryColorDark,
8603
+ }),
7692
8604
  '&(:focus:focus-visible)::before': {
7693
8605
  content: '""',
7694
8606
  position: 'absolute',
7695
8607
  ...getInsetJssStyle(-4),
7696
8608
  border: `${borderWidthBase} solid ${focusColor}`,
7697
8609
  borderRadius: borderRadiusSmall,
8610
+ ...prefersColorSchemeDarkMediaQuery(theme, {
8611
+ borderColor: focusColorDark,
8612
+ }),
7698
8613
  },
7699
8614
  }),
7700
8615
  },
@@ -7706,7 +8621,10 @@ const getComponentCss$a = () => {
7706
8621
  '@global': {
7707
8622
  ':host': {
7708
8623
  display: 'block',
7709
- ...addImportantToEachRule(hostHiddenStyles),
8624
+ ...addImportantToEachRule({
8625
+ ...colorSchemeStyles,
8626
+ ...hostHiddenStyles,
8627
+ }),
7710
8628
  },
7711
8629
  },
7712
8630
  root: {
@@ -7744,14 +8662,18 @@ const getThemedBackgroundColor = (tagColor, themedColors) => {
7744
8662
 
7745
8663
  const getComponentCss$9 = (color, hasLabel, theme) => {
7746
8664
  const themedColors = getThemedColors(theme);
8665
+ const themedColorsDark = getThemedColors('dark');
7747
8666
  const { primaryColor, hoverColor, contrastHighColor } = themedColors;
8667
+ const { primaryColor: primaryColorDark, hoverColor: hoverColorDark, contrastHighColor: contrastHighColorDark, } = themedColorsDark;
7748
8668
  const backgroundColor = getThemedBackgroundColor(color, themedColors);
8669
+ const backgroundColorDark = getThemedBackgroundColor(color, themedColorsDark);
7749
8670
  return getCss({
7750
8671
  '@global': {
7751
8672
  ':host': addImportantToEachRule({
7752
8673
  display: 'inline-block',
7753
8674
  verticalAlign: 'top',
7754
8675
  outline: 0,
8676
+ ...colorSchemeStyles,
7755
8677
  ...hostHiddenStyles,
7756
8678
  }),
7757
8679
  button: {
@@ -7766,6 +8688,10 @@ const getComponentCss$9 = (color, hasLabel, theme) => {
7766
8688
  cursor: 'pointer',
7767
8689
  background: backgroundColor,
7768
8690
  color: primaryColor,
8691
+ ...prefersColorSchemeDarkMediaQuery(theme, {
8692
+ background: backgroundColorDark,
8693
+ color: primaryColorDark,
8694
+ }),
7769
8695
  textAlign: 'left',
7770
8696
  ...textSmallStyle,
7771
8697
  outline: isHighContrastMode ? '1px solid transparent' : 0,
@@ -7773,6 +8699,9 @@ const getComponentCss$9 = (color, hasLabel, theme) => {
7773
8699
  ...hoverMediaQuery({
7774
8700
  '&:hover > .icon': {
7775
8701
  backgroundColor: hoverColor,
8702
+ ...prefersColorSchemeDarkMediaQuery(theme, {
8703
+ backgroundColor: hoverColorDark,
8704
+ }),
7776
8705
  },
7777
8706
  }),
7778
8707
  },
@@ -7782,6 +8711,9 @@ const getComponentCss$9 = (color, hasLabel, theme) => {
7782
8711
  display: 'block',
7783
8712
  marginBottom: '-4px',
7784
8713
  color: contrastHighColor,
8714
+ ...prefersColorSchemeDarkMediaQuery(theme, {
8715
+ color: contrastHighColorDark,
8716
+ }),
7785
8717
  fontSize: fontSizeTextXSmall,
7786
8718
  },
7787
8719
  }),
@@ -7821,14 +8753,19 @@ const getColors = (themedColors, tagColor, theme) => {
7821
8753
  };
7822
8754
  const getComponentCss$8 = (tagColor, isFocusable, theme) => {
7823
8755
  const themedColors = getThemedColors(theme);
8756
+ const themedColorsDark = getThemedColors('dark');
7824
8757
  const { primaryColor, backgroundColor, backgroundHoverColor } = getColors(themedColors, tagColor, theme);
8758
+ const { primaryColor: primaryColorDark, backgroundColor: backgroundColorDark, backgroundHoverColor: backgroundHoverColorDark, } = getColors(themedColorsDark, tagColor, 'dark');
7825
8759
  return getCss({
7826
8760
  '@global': {
7827
8761
  ':host': {
7828
8762
  display: 'inline-flex',
7829
8763
  verticalAlign: 'top',
7830
8764
  whiteSpace: 'nowrap',
7831
- ...addImportantToEachRule(hostHiddenStyles),
8765
+ ...addImportantToEachRule({
8766
+ ...colorSchemeStyles,
8767
+ ...hostHiddenStyles,
8768
+ }),
7832
8769
  },
7833
8770
  span: {
7834
8771
  display: 'flex',
@@ -7839,6 +8776,10 @@ const getComponentCss$8 = (tagColor, isFocusable, theme) => {
7839
8776
  borderRadius: borderRadiusSmall,
7840
8777
  background: backgroundColor,
7841
8778
  color: primaryColor,
8779
+ ...prefersColorSchemeDarkMediaQuery(theme, {
8780
+ background: backgroundColorDark,
8781
+ color: primaryColorDark,
8782
+ }),
7842
8783
  font: textXSmallStyle.font,
7843
8784
  ...(isHighContrastMode && {
7844
8785
  outline: '1px solid transparent',
@@ -7848,6 +8789,9 @@ const getComponentCss$8 = (tagColor, isFocusable, theme) => {
7848
8789
  transition: getTransition('background-color'),
7849
8790
  '&:hover': {
7850
8791
  background: backgroundHoverColor,
8792
+ ...prefersColorSchemeDarkMediaQuery(theme, {
8793
+ background: backgroundHoverColorDark,
8794
+ }),
7851
8795
  },
7852
8796
  })),
7853
8797
  },
@@ -7877,6 +8821,11 @@ const getComponentCss$8 = (tagColor, isFocusable, theme) => {
7877
8821
  icon: {
7878
8822
  marginLeft: '-2px',
7879
8823
  alignSelf: 'flex-start',
8824
+ ...(['neutral-contrast-high', 'primary'].includes(tagColor) && {
8825
+ ...prefersColorSchemeDarkMediaQuery(theme, {
8826
+ filter: 'invert(1)',
8827
+ }),
8828
+ }),
7880
8829
  },
7881
8830
  });
7882
8831
  };
@@ -7914,6 +8863,7 @@ const getButtonOrIconOffsetHorizontal = (buttonOrIconAmount) => {
7914
8863
  };
7915
8864
  const getComponentCss$7 = (isDisabled, hideLabel, state, hasUnitOrVisibleCounter, unitPosition, inputType, showPasswordToggle, isWithinForm, theme) => {
7916
8865
  const { contrastMediumColor } = getThemedColors(theme);
8866
+ const { contrastMediumColor: contrastMediumColorDark } = getThemedColors('dark');
7917
8867
  const isSearch = isType(inputType, 'search');
7918
8868
  const isPassword = isType(inputType, 'password');
7919
8869
  const isNumber = isType(inputType, 'number');
@@ -7932,6 +8882,7 @@ const getComponentCss$7 = (isDisabled, hideLabel, state, hasUnitOrVisibleCounter
7932
8882
  [cssVariableInputPaddingRight]: isSearchOrPassword || isCalendarOrTimeWithCustomIndicator
7933
8883
  ? getInputPaddingHorizontal(isSearchWithForm ? 2 : 1)
7934
8884
  : spacingStaticMedium,
8885
+ ...colorSchemeStyles,
7935
8886
  ...hostHiddenStyles,
7936
8887
  }),
7937
8888
  },
@@ -7979,6 +8930,9 @@ const getComponentCss$7 = (isDisabled, hideLabel, state, hasUnitOrVisibleCounter
7979
8930
  padding: unitPosition === 'suffix' ? `0 ${spacingStaticMedium} 0 10px` : `0 10px 0 ${spacingStaticMedium}`,
7980
8931
  font: textSmallStyle.font,
7981
8932
  color: contrastMediumColor,
8933
+ ...prefersColorSchemeDarkMediaQuery(theme, {
8934
+ color: contrastMediumColorDark,
8935
+ }),
7982
8936
  },
7983
8937
  }),
7984
8938
  ...getFunctionalComponentRequiredStyles(),
@@ -8010,18 +8964,22 @@ const getComponentCss$6 = (type, theme) => {
8010
8964
  display: 'block',
8011
8965
  ...addImportantToEachRule({
8012
8966
  counterReset: counter,
8967
+ ...colorSchemeStyles,
8013
8968
  ...hostHiddenStyles,
8014
8969
  }),
8015
8970
  },
8016
8971
  'ol,ul': {
8017
8972
  ...textSmallStyle,
8018
- color: getThemedColors(theme).primaryColor,
8019
8973
  margin: 0,
8020
8974
  padding: `var(${cssVariablePaddingTop},0) 0 var(${cssVariablePaddingBottom},0) ${isOrderedList
8021
8975
  ? `var(${cssVariableOrderedPaddingLeft},1.5rem)` // reserves space for ::before (root ordered list)
8022
8976
  : `var(${cssVariableUnorderedPaddingLeft},.375rem)` // reserves space for ::marker "•" (root unordered list)
8023
8977
  }`,
8024
- listStyleType: isOrderedList ? 'none' : `var(${cssVariableListStyleType},'•')`, // custom ::marker char for root unordered list
8978
+ listStyleType: isOrderedList ? 'none' : `var(${cssVariableListStyleType},'•')`,
8979
+ color: getThemedColors(theme).primaryColor,
8980
+ ...prefersColorSchemeDarkMediaQuery(theme, {
8981
+ color: getThemedColors('dark').primaryColor,
8982
+ }),
8025
8983
  },
8026
8984
  // css selector for text-list-item
8027
8985
  '::slotted(*)': addImportantToEachRule({
@@ -8080,7 +9038,10 @@ const getComponentCss$4 = (size, weight, align, color, ellipsis, theme) => {
8080
9038
  '@global': {
8081
9039
  ':host': {
8082
9040
  display: 'block',
8083
- ...addImportantToEachRule(hostHiddenStyles),
9041
+ ...addImportantToEachRule({
9042
+ ...colorSchemeStyles,
9043
+ ...hostHiddenStyles,
9044
+ }),
8084
9045
  },
8085
9046
  '::slotted': {
8086
9047
  [TEXT_TAGS.map((i) => `&(${i})`).join()]: addImportantToEachRule(getTypographySlottedJssStyle()),
@@ -8095,10 +9056,12 @@ const getComponentCss$4 = (size, weight, align, color, ellipsis, theme) => {
8095
9056
 
8096
9057
  const getComponentCss$3 = (isDisabled, hideLabel, state, hasCounter, theme) => {
8097
9058
  const { contrastMediumColor } = getThemedColors(theme);
9059
+ const { contrastMediumColor: contrastMediumColorDark } = getThemedColors('dark');
8098
9060
  return getCss({
8099
9061
  '@global': {
8100
9062
  ':host': addImportantToEachRule({
8101
9063
  display: 'block',
9064
+ ...colorSchemeStyles,
8102
9065
  ...hostHiddenStyles,
8103
9066
  }),
8104
9067
  ...mergeDeep(addImportantToEachRule(getBaseChildStyles('textarea', state, theme, {
@@ -8120,6 +9083,9 @@ const getComponentCss$3 = (isDisabled, hideLabel, state, hasCounter, theme) => {
8120
9083
  zIndex: 1,
8121
9084
  font: textSmallStyle.font,
8122
9085
  color: contrastMediumColor,
9086
+ ...prefersColorSchemeDarkMediaQuery(theme, {
9087
+ color: contrastMediumColorDark,
9088
+ }),
8123
9089
  },
8124
9090
  }),
8125
9091
  ...getFunctionalComponentRequiredStyles(),
@@ -8175,6 +9141,7 @@ const getComponentCss$1 = () => {
8175
9141
  [cssVariablePositionBottomInternal]: `var(${cssVariablePositionBottom}, 64px)`,
8176
9142
  bottom: `var(${cssVariablePositionBottomInternal})`,
8177
9143
  },
9144
+ ...colorSchemeStyles,
8178
9145
  ...hostHiddenStyles,
8179
9146
  }),
8180
9147
  '@keyframes in': getKeyframesMobile('in', cssVariablePositionBottomInternal),
@@ -8208,6 +9175,7 @@ const getComponentCss = (size, theme) => {
8208
9175
  height: 'round(down, clamp(0.63rem, 0.42vw + 0.5rem, 1rem), 1px)',
8209
9176
  },
8210
9177
  }),
9178
+ ...colorSchemeStyles,
8211
9179
  ...hostHiddenStyles,
8212
9180
  }),
8213
9181
  },
@@ -8221,11 +9189,18 @@ const getComponentCss = (size, theme) => {
8221
9189
  textDecoration: 'none',
8222
9190
  ...focusPseudoJssStyle,
8223
9191
  },
8224
- svg: {
8225
- fill: isHighContrastMode ? getHighContrastColors().canvasTextColor : getThemedColors(theme).primaryColor,
8226
- },
9192
+ svg: isHighContrastMode
9193
+ ? {
9194
+ fill: getHighContrastColors().canvasTextColor,
9195
+ }
9196
+ : {
9197
+ fill: getThemedColors(theme).primaryColor,
9198
+ ...prefersColorSchemeDarkMediaQuery(theme, {
9199
+ fill: getThemedColors('dark').primaryColor,
9200
+ }),
9201
+ },
8227
9202
  },
8228
9203
  });
8229
9204
  };
8230
9205
 
8231
- export { getComponentCss$Z as getAccordionCss, getComponentCss$Y as getBannerCss, getComponentCss$U as getButtonCss, getComponentCss$X as getButtonGroupCss, getComponentCss$W as getButtonPureCss, getComponentCss$V as getButtonTileCss, getComponentCss$T as getCarouselCss, getComponentCss$S as getCheckboxWrapperCss, getComponentCss$R as getContentWrapperCss, getComponentCss$Q as getCrestCss, getComponentCss$P as getDisplayCss, getComponentCss$O as getDividerCss, getComponentCss$M as getFieldsetCss, getComponentCss$N as getFieldsetWrapperCss, getComponentCss$K as getFlexCss, getComponentCss$L as getFlexItemCss, getComponentCss$J as getFlyoutCss, getFunctionalComponentRequiredStyles, getFunctionalComponentStateMessageStyles, getComponentCss$H as getGridCss, getComponentCss$I as getGridItemCss, getComponentCss$G as getHeadingCss, getComponentCss$F as getHeadlineCss, getComponentCss$E as getIconCss, getComponentCss$D as getInlineNotificationCss, getComponentCss$B as getLinkCss, getComponentCss$C as getLinkPureCss, getComponentCss$B as getLinkSocialCss, getComponentCss$z as getLinkTileCss, getComponentCss$A as getLinkTileModelSignatureCss, getComponentCss$y as getMarqueCss, getComponentCss$x as getModalCss, getComponentCss$w as getModelSignatureCss, getComponentCss$v as getPaginationCss, getComponentCss$u as getPopoverCss, getComponentCss$t as getRadioButtonWrapperCss, getComponentCss$s as getScrollerCss, getComponentCss$q as getSegmentedControlCss, getComponentCss$r as getSegmentedControlItemCss, getComponentCss$p as getSelectWrapperCss, getComponentCss$o as getSelectWrapperDropdownCss, getComponentCss$n as getSpinnerCss, getComponentCss$l as getStepperHorizontalCss, getComponentCss$m as getStepperHorizontalItemCss, getComponentCss$k as getSwitchCss, getComponentCss$j as getTableBodyCss, getComponentCss$i as getTableCellCss, getComponentCss$h as getTableCss, getComponentCss$g as getTableHeadCellCss, getComponentCss$e as getTableHeadCss, getComponentCss$f as getTableHeadRowCss, getComponentCss$d as getTableRowCss, getComponentCss$c as getTabsBarCss, getComponentCss$a as getTabsCss, getComponentCss$b as getTabsItemCss, getComponentCss$8 as getTagCss, getComponentCss$9 as getTagDismissibleCss, getComponentCss$4 as getTextCss, getComponentCss$7 as getTextFieldWrapperCss, getComponentCss$6 as getTextListCss, getComponentCss$5 as getTextListItemCss, getComponentCss$3 as getTextareaWrapperCss, getComponentCss$1 as getToastCss, getComponentCss as getWordmarkCss };
9206
+ export { getComponentCss$10 as getAccordionCss, getComponentCss$$ as getBannerCss, getComponentCss$X as getButtonCss, getComponentCss$_ as getButtonGroupCss, getComponentCss$Z as getButtonPureCss, getComponentCss$Y as getButtonTileCss, getComponentCss$W as getCarouselCss, getComponentCss$V as getCheckboxWrapperCss, getComponentCss$U as getContentWrapperCss, getComponentCss$T as getCrestCss, getComponentCss$S as getDisplayCss, getComponentCss$R as getDividerCss, getComponentCss$P as getFieldsetCss, getComponentCss$Q as getFieldsetWrapperCss, getComponentCss$N as getFlexCss, getComponentCss$O as getFlexItemCss, getComponentCss$M as getFlyoutCss, getFunctionalComponentRequiredStyles, getFunctionalComponentStateMessageStyles, getComponentCss$K as getGridCss, getComponentCss$L as getGridItemCss, getComponentCss$J as getHeadingCss, getComponentCss$I as getHeadlineCss, getComponentCss$H as getIconCss, getComponentCss$G as getInlineNotificationCss, getComponentCss$E as getLinkCss, getComponentCss$F as getLinkPureCss, getComponentCss$E as getLinkSocialCss, getComponentCss$C as getLinkTileCss, getComponentCss$D as getLinkTileModelSignatureCss, getComponentCss$B as getMarqueCss, getComponentCss$A as getModalCss, getComponentCss$z as getModelSignatureCss, getComponentCss$x as getMultiSelectCss, getComponentCss$y as getMultiSelectOptionCss, getComponentCss$w as getPaginationCss, getComponentCss$v as getPinCodeCss, getComponentCss$u as getPopoverCss, getComponentCss$t as getRadioButtonWrapperCss, getComponentCss$s as getScrollerCss, getComponentCss$q as getSegmentedControlCss, getComponentCss$r as getSegmentedControlItemCss, getComponentCss$o as getSelectWrapperCss, getComponentCss$p as getSelectWrapperDropdownCss, getComponentCss$n as getSpinnerCss, getComponentCss$l as getStepperHorizontalCss, getComponentCss$m as getStepperHorizontalItemCss, getComponentCss$k as getSwitchCss, getComponentCss$j as getTableBodyCss, getComponentCss$i as getTableCellCss, getComponentCss$h as getTableCss, getComponentCss$g as getTableHeadCellCss, getComponentCss$e as getTableHeadCss, getComponentCss$f as getTableHeadRowCss, getComponentCss$d as getTableRowCss, getComponentCss$c as getTabsBarCss, getComponentCss$a as getTabsCss, getComponentCss$b as getTabsItemCss, getComponentCss$8 as getTagCss, getComponentCss$9 as getTagDismissibleCss, getComponentCss$4 as getTextCss, getComponentCss$7 as getTextFieldWrapperCss, getComponentCss$6 as getTextListCss, getComponentCss$5 as getTextListItemCss, getComponentCss$3 as getTextareaWrapperCss, getComponentCss$1 as getToastCss, getComponentCss as getWordmarkCss };