@porsche-design-system/components-react 3.16.0 → 3.17.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 (429) hide show
  1. package/CHANGELOG.md +84 -1
  2. package/cjs/lib/components/button-tile.wrapper.cjs +1 -1
  3. package/cjs/lib/components/button.wrapper.cjs +3 -3
  4. package/cjs/lib/components/content-wrapper.wrapper.cjs +0 -1
  5. package/cjs/lib/components/fieldset-wrapper.wrapper.cjs +0 -1
  6. package/cjs/lib/components/flex-item.wrapper.cjs +0 -1
  7. package/cjs/lib/components/flex.wrapper.cjs +0 -1
  8. package/cjs/lib/components/flyout.wrapper.cjs +3 -1
  9. package/cjs/lib/components/grid-item.wrapper.cjs +0 -1
  10. package/cjs/lib/components/grid.wrapper.cjs +0 -1
  11. package/cjs/lib/components/headline.wrapper.cjs +0 -1
  12. package/cjs/lib/components/link-social.wrapper.cjs +3 -4
  13. package/cjs/lib/components/link-tile-model-signature.wrapper.cjs +1 -1
  14. package/cjs/lib/components/link-tile.wrapper.cjs +1 -1
  15. package/cjs/lib/components/link.wrapper.cjs +3 -3
  16. package/cjs/lib/components/modal.wrapper.cjs +3 -1
  17. package/cjs/lib/components/optgroup.wrapper.cjs +26 -0
  18. package/cjs/lib/components/tag.wrapper.cjs +3 -3
  19. package/cjs/public-api.cjs +2 -0
  20. package/esm/lib/components/accordion.wrapper.d.ts +11 -12
  21. package/esm/lib/components/banner.wrapper.d.ts +10 -11
  22. package/esm/lib/components/button-group.wrapper.d.ts +2 -3
  23. package/esm/lib/components/button-pure.wrapper.d.ts +17 -18
  24. package/esm/lib/components/button-tile.wrapper.d.ts +14 -15
  25. package/esm/lib/components/button-tile.wrapper.mjs +1 -1
  26. package/esm/lib/components/button.wrapper.d.ts +20 -13
  27. package/esm/lib/components/button.wrapper.mjs +3 -3
  28. package/esm/lib/components/canvas.wrapper.d.ts +7 -8
  29. package/esm/lib/components/carousel.wrapper.d.ts +18 -19
  30. package/esm/lib/components/checkbox-wrapper.wrapper.d.ts +7 -8
  31. package/esm/lib/components/content-wrapper.wrapper.d.ts +4 -6
  32. package/esm/lib/components/content-wrapper.wrapper.mjs +0 -1
  33. package/esm/lib/components/crest.wrapper.d.ts +3 -4
  34. package/esm/lib/components/display.wrapper.d.ts +7 -8
  35. package/esm/lib/components/divider.wrapper.d.ts +4 -5
  36. package/esm/lib/components/fieldset-wrapper.wrapper.d.ts +7 -9
  37. package/esm/lib/components/fieldset-wrapper.wrapper.mjs +0 -1
  38. package/esm/lib/components/fieldset.wrapper.d.ts +7 -8
  39. package/esm/lib/components/flex-item.wrapper.d.ts +7 -9
  40. package/esm/lib/components/flex-item.wrapper.mjs +0 -1
  41. package/esm/lib/components/flex.wrapper.d.ts +7 -9
  42. package/esm/lib/components/flex.wrapper.mjs +0 -1
  43. package/esm/lib/components/flyout-multilevel-item.wrapper.d.ts +2 -3
  44. package/esm/lib/components/flyout-multilevel.wrapper.d.ts +6 -7
  45. package/esm/lib/components/flyout.wrapper.d.ts +23 -8
  46. package/esm/lib/components/flyout.wrapper.mjs +3 -1
  47. package/esm/lib/components/grid-item.wrapper.d.ts +3 -5
  48. package/esm/lib/components/grid-item.wrapper.mjs +0 -1
  49. package/esm/lib/components/grid.wrapper.d.ts +4 -6
  50. package/esm/lib/components/grid.wrapper.mjs +0 -1
  51. package/esm/lib/components/heading.wrapper.d.ts +7 -8
  52. package/esm/lib/components/headline.wrapper.d.ts +7 -9
  53. package/esm/lib/components/headline.wrapper.mjs +0 -1
  54. package/esm/lib/components/icon.wrapper.d.ts +7 -8
  55. package/esm/lib/components/index.d.ts +1 -0
  56. package/esm/lib/components/inline-notification.wrapper.d.ts +13 -14
  57. package/esm/lib/components/link-pure.wrapper.d.ts +16 -17
  58. package/esm/lib/components/link-social.wrapper.d.ts +16 -10
  59. package/esm/lib/components/link-social.wrapper.mjs +3 -4
  60. package/esm/lib/components/link-tile-model-signature.wrapper.d.ts +7 -8
  61. package/esm/lib/components/link-tile-model-signature.wrapper.mjs +1 -1
  62. package/esm/lib/components/link-tile-product.wrapper.d.ts +11 -12
  63. package/esm/lib/components/link-tile.wrapper.d.ts +12 -13
  64. package/esm/lib/components/link-tile.wrapper.mjs +1 -1
  65. package/esm/lib/components/link.wrapper.d.ts +19 -12
  66. package/esm/lib/components/link.wrapper.mjs +3 -3
  67. package/esm/lib/components/marque.wrapper.d.ts +6 -7
  68. package/esm/lib/components/modal.wrapper.d.ts +28 -13
  69. package/esm/lib/components/modal.wrapper.mjs +3 -1
  70. package/esm/lib/components/model-signature.wrapper.d.ts +8 -9
  71. package/esm/lib/components/multi-select-option.wrapper.d.ts +2 -3
  72. package/esm/lib/components/multi-select.wrapper.d.ts +12 -13
  73. package/esm/lib/components/optgroup.wrapper.d.ts +23 -0
  74. package/esm/lib/components/optgroup.wrapper.mjs +24 -0
  75. package/esm/lib/components/pagination.wrapper.d.ts +11 -12
  76. package/esm/lib/components/pin-code.wrapper.d.ts +15 -16
  77. package/esm/lib/components/popover.wrapper.d.ts +5 -6
  78. package/esm/lib/components/radio-button-wrapper.wrapper.d.ts +7 -8
  79. package/esm/lib/components/scroller.wrapper.d.ts +9 -10
  80. package/esm/lib/components/segmented-control-item.wrapper.d.ts +6 -7
  81. package/esm/lib/components/segmented-control.wrapper.d.ts +7 -8
  82. package/esm/lib/components/select-option.wrapper.d.ts +3 -4
  83. package/esm/lib/components/select-wrapper.wrapper.d.ts +10 -11
  84. package/esm/lib/components/select.wrapper.d.ts +12 -13
  85. package/esm/lib/components/spinner.wrapper.d.ts +3 -4
  86. package/esm/lib/components/stepper-horizontal-item.wrapper.d.ts +3 -4
  87. package/esm/lib/components/stepper-horizontal.wrapper.d.ts +5 -6
  88. package/esm/lib/components/switch.wrapper.d.ts +10 -11
  89. package/esm/lib/components/table-body.wrapper.d.ts +1 -2
  90. package/esm/lib/components/table-cell.wrapper.d.ts +2 -3
  91. package/esm/lib/components/table-head-cell.wrapper.d.ts +4 -5
  92. package/esm/lib/components/table-head-row.wrapper.d.ts +1 -2
  93. package/esm/lib/components/table-head.wrapper.d.ts +1 -2
  94. package/esm/lib/components/table-row.wrapper.d.ts +1 -2
  95. package/esm/lib/components/table.wrapper.d.ts +5 -6
  96. package/esm/lib/components/tabs-bar.wrapper.d.ts +8 -9
  97. package/esm/lib/components/tabs-item.wrapper.d.ts +1 -2
  98. package/esm/lib/components/tabs.wrapper.d.ts +9 -10
  99. package/esm/lib/components/tag-dismissible.wrapper.d.ts +5 -6
  100. package/esm/lib/components/tag.wrapper.d.ts +13 -6
  101. package/esm/lib/components/tag.wrapper.mjs +3 -3
  102. package/esm/lib/components/text-field-wrapper.wrapper.d.ts +16 -17
  103. package/esm/lib/components/text-list-item.wrapper.d.ts +1 -2
  104. package/esm/lib/components/text-list.wrapper.d.ts +5 -6
  105. package/esm/lib/components/text.wrapper.d.ts +8 -9
  106. package/esm/lib/components/textarea-wrapper.wrapper.d.ts +9 -10
  107. package/esm/lib/components/toast.wrapper.d.ts +1 -2
  108. package/esm/lib/components/wordmark.wrapper.d.ts +5 -6
  109. package/esm/lib/types.d.ts +16 -3
  110. package/esm/provider.d.ts +1 -1
  111. package/esm/public-api.mjs +1 -0
  112. package/jsdom-polyfill/index.d.ts +0 -1
  113. package/package.json +2 -2
  114. package/ssr/cjs/components/dist/styles/esm/styles-entry.cjs +695 -601
  115. package/ssr/cjs/components/dist/utils/esm/utils-entry.cjs +17 -191
  116. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/components/button-tile.wrapper.cjs +1 -1
  117. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/components/button.wrapper.cjs +4 -4
  118. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/components/content-wrapper.wrapper.cjs +0 -1
  119. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/components/fieldset-wrapper.wrapper.cjs +0 -1
  120. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/components/flex-item.wrapper.cjs +0 -1
  121. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/components/flex.wrapper.cjs +0 -1
  122. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/components/flyout.wrapper.cjs +3 -1
  123. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/components/grid-item.wrapper.cjs +0 -1
  124. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/components/grid.wrapper.cjs +0 -1
  125. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/components/headline.wrapper.cjs +0 -1
  126. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/components/link-social.wrapper.cjs +4 -5
  127. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/components/link-tile-model-signature.wrapper.cjs +1 -1
  128. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/components/link-tile.wrapper.cjs +1 -1
  129. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/components/link.wrapper.cjs +4 -4
  130. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/components/modal.wrapper.cjs +3 -1
  131. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/components/optgroup.wrapper.cjs +40 -0
  132. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/components/tag.wrapper.cjs +4 -4
  133. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/accordion.cjs +7 -0
  134. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/banner.cjs +8 -0
  135. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/button-group.cjs +3 -0
  136. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/button-pure.cjs +4 -0
  137. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/button-tile.cjs +6 -1
  138. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/button.cjs +5 -1
  139. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/canvas.cjs +13 -1
  140. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/carousel.cjs +10 -1
  141. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/checkbox-wrapper.cjs +6 -0
  142. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/content-wrapper.cjs +4 -1
  143. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/display.cjs +3 -0
  144. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/fieldset-wrapper.cjs +7 -1
  145. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/fieldset.cjs +5 -0
  146. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/flex-item.cjs +4 -1
  147. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/flex.cjs +4 -1
  148. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/flyout-multilevel-item.cjs +6 -1
  149. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/flyout-multilevel.cjs +9 -1
  150. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/flyout.cjs +9 -0
  151. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/grid-item.cjs +5 -1
  152. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/grid.cjs +5 -1
  153. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/heading.cjs +3 -0
  154. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/headline.cjs +5 -1
  155. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/inline-notification.cjs +5 -0
  156. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/link-pure.cjs +4 -0
  157. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/link-social.cjs +7 -2
  158. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/link-tile-model-signature.cjs +10 -4
  159. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/link-tile-product.cjs +10 -1
  160. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/link-tile.cjs +7 -3
  161. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/link.cjs +5 -1
  162. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/modal.cjs +9 -0
  163. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/model-signature.cjs +3 -0
  164. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/multi-select-option.cjs +4 -0
  165. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/multi-select.cjs +10 -0
  166. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/optgroup.cjs +23 -0
  167. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/pagination.cjs +4 -0
  168. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/pin-code.cjs +8 -0
  169. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/popover.cjs +4 -0
  170. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/radio-button-wrapper.cjs +6 -0
  171. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/required.cjs +1 -1
  172. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/scroller.cjs +4 -0
  173. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/segmented-control-item.cjs +4 -0
  174. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/segmented-control.cjs +5 -0
  175. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/select-option.cjs +4 -0
  176. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/select-wrapper-dropdown.cjs +1 -0
  177. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/select-wrapper.cjs +7 -0
  178. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/select.cjs +12 -3
  179. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/state-message.cjs +1 -0
  180. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/stepper-horizontal-item.cjs +4 -0
  181. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/stepper-horizontal.cjs +4 -0
  182. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/switch.cjs +6 -0
  183. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/table-body.cjs +3 -0
  184. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/table-cell.cjs +3 -0
  185. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/table-head-cell.cjs +4 -0
  186. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/table-head-row.cjs +3 -0
  187. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/table-head.cjs +3 -0
  188. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/table-row.cjs +3 -0
  189. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/table.cjs +5 -0
  190. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/tabs-bar.cjs +6 -0
  191. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/tabs-item.cjs +3 -0
  192. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/tabs.cjs +6 -0
  193. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/tag-dismissible.cjs +4 -0
  194. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/tag.cjs +7 -2
  195. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/text-field-wrapper.cjs +7 -0
  196. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/text-list-item.cjs +3 -0
  197. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/text-list.cjs +3 -0
  198. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/text.cjs +3 -0
  199. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/textarea-wrapper.cjs +6 -0
  200. package/ssr/cjs/components-react/projects/react-ssr-wrapper/src/public-api.cjs +2 -0
  201. package/ssr/esm/components/dist/styles/esm/styles-entry.mjs +648 -555
  202. package/ssr/esm/components/dist/utils/esm/utils-entry.mjs +18 -190
  203. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/components/button-tile.wrapper.mjs +1 -1
  204. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/components/button.wrapper.mjs +4 -4
  205. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/components/content-wrapper.wrapper.mjs +0 -1
  206. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/components/fieldset-wrapper.wrapper.mjs +0 -1
  207. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/components/flex-item.wrapper.mjs +0 -1
  208. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/components/flex.wrapper.mjs +0 -1
  209. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/components/flyout.wrapper.mjs +3 -1
  210. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/components/grid-item.wrapper.mjs +0 -1
  211. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/components/grid.wrapper.mjs +0 -1
  212. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/components/headline.wrapper.mjs +0 -1
  213. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/components/link-social.wrapper.mjs +4 -5
  214. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/components/link-tile-model-signature.wrapper.mjs +1 -1
  215. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/components/link-tile.wrapper.mjs +1 -1
  216. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/components/link.wrapper.mjs +4 -4
  217. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/components/modal.wrapper.mjs +3 -1
  218. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/components/optgroup.wrapper.mjs +38 -0
  219. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/components/tag.wrapper.mjs +4 -4
  220. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/accordion.mjs +9 -2
  221. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/banner.mjs +10 -2
  222. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/button-group.mjs +5 -2
  223. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/button-pure.mjs +6 -2
  224. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/button-tile.mjs +8 -3
  225. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/button.mjs +6 -2
  226. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/canvas.mjs +15 -3
  227. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/carousel.mjs +12 -3
  228. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/checkbox-wrapper.mjs +8 -2
  229. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/content-wrapper.mjs +6 -3
  230. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/crest.mjs +2 -2
  231. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/display.mjs +5 -2
  232. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/divider.mjs +2 -2
  233. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/fieldset-wrapper.mjs +9 -3
  234. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/fieldset.mjs +7 -2
  235. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/flex-item.mjs +6 -3
  236. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/flex.mjs +6 -3
  237. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/flyout-multilevel-item.mjs +8 -3
  238. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/flyout-multilevel.mjs +11 -3
  239. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/flyout.mjs +11 -2
  240. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/grid-item.mjs +7 -3
  241. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/grid.mjs +7 -3
  242. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/heading.mjs +5 -2
  243. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/headline.mjs +7 -3
  244. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/icon.mjs +2 -2
  245. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/inline-notification.mjs +7 -2
  246. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/link-pure.mjs +6 -2
  247. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/link-social.mjs +8 -3
  248. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/link-tile-model-signature.mjs +12 -6
  249. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/link-tile-product.mjs +12 -3
  250. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/link-tile.mjs +8 -4
  251. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/link.mjs +6 -2
  252. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/marque.mjs +2 -2
  253. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/modal.mjs +11 -2
  254. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/model-signature.mjs +5 -2
  255. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/multi-select-option.mjs +6 -2
  256. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/multi-select.mjs +12 -2
  257. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/optgroup.mjs +21 -0
  258. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/pagination.mjs +6 -2
  259. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/pin-code.mjs +10 -2
  260. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/popover.mjs +6 -2
  261. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/radio-button-wrapper.mjs +8 -2
  262. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/required.mjs +2 -2
  263. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/scroller.mjs +6 -2
  264. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/segmented-control-item.mjs +6 -2
  265. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/segmented-control.mjs +7 -2
  266. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/select-option.mjs +6 -2
  267. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/select-wrapper-dropdown.mjs +3 -2
  268. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/select-wrapper.mjs +9 -2
  269. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/select.mjs +12 -3
  270. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/state-message.mjs +1 -0
  271. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/stepper-horizontal-item.mjs +4 -0
  272. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/stepper-horizontal.mjs +4 -0
  273. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/switch.mjs +6 -0
  274. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/table-body.mjs +3 -0
  275. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/table-cell.mjs +3 -0
  276. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/table-head-cell.mjs +4 -0
  277. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/table-head-row.mjs +3 -0
  278. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/table-head.mjs +3 -0
  279. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/table-row.mjs +3 -0
  280. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/table.mjs +5 -0
  281. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/tabs-bar.mjs +6 -0
  282. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/tabs-item.mjs +3 -0
  283. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/tabs.mjs +6 -0
  284. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/tag-dismissible.mjs +4 -0
  285. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/tag.mjs +8 -3
  286. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/text-field-wrapper.mjs +7 -0
  287. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/text-list-item.mjs +3 -0
  288. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/text-list.mjs +3 -0
  289. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/text.mjs +3 -0
  290. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/textarea-wrapper.mjs +6 -0
  291. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/public-api.mjs +1 -0
  292. package/ssr/esm/lib/components/accordion.wrapper.d.ts +1 -2
  293. package/ssr/esm/lib/components/banner.wrapper.d.ts +1 -2
  294. package/ssr/esm/lib/components/button-group.wrapper.d.ts +1 -2
  295. package/ssr/esm/lib/components/button-pure.wrapper.d.ts +1 -2
  296. package/ssr/esm/lib/components/button-tile.wrapper.d.ts +1 -2
  297. package/ssr/esm/lib/components/button.wrapper.d.ts +9 -2
  298. package/ssr/esm/lib/components/canvas.wrapper.d.ts +1 -2
  299. package/ssr/esm/lib/components/carousel.wrapper.d.ts +1 -2
  300. package/ssr/esm/lib/components/checkbox-wrapper.wrapper.d.ts +1 -2
  301. package/ssr/esm/lib/components/content-wrapper.wrapper.d.ts +1 -3
  302. package/ssr/esm/lib/components/crest.wrapper.d.ts +0 -1
  303. package/ssr/esm/lib/components/display.wrapper.d.ts +1 -2
  304. package/ssr/esm/lib/components/divider.wrapper.d.ts +0 -1
  305. package/ssr/esm/lib/components/fieldset-wrapper.wrapper.d.ts +1 -3
  306. package/ssr/esm/lib/components/fieldset.wrapper.d.ts +1 -2
  307. package/ssr/esm/lib/components/flex-item.wrapper.d.ts +1 -3
  308. package/ssr/esm/lib/components/flex.wrapper.d.ts +1 -3
  309. package/ssr/esm/lib/components/flyout-multilevel-item.wrapper.d.ts +1 -2
  310. package/ssr/esm/lib/components/flyout-multilevel.wrapper.d.ts +1 -2
  311. package/ssr/esm/lib/components/flyout.wrapper.d.ts +18 -3
  312. package/ssr/esm/lib/components/grid-item.wrapper.d.ts +1 -3
  313. package/ssr/esm/lib/components/grid.wrapper.d.ts +1 -3
  314. package/ssr/esm/lib/components/heading.wrapper.d.ts +1 -2
  315. package/ssr/esm/lib/components/headline.wrapper.d.ts +1 -3
  316. package/ssr/esm/lib/components/icon.wrapper.d.ts +0 -1
  317. package/ssr/esm/lib/components/index.d.ts +1 -0
  318. package/ssr/esm/lib/components/inline-notification.wrapper.d.ts +1 -2
  319. package/ssr/esm/lib/components/link-pure.wrapper.d.ts +1 -2
  320. package/ssr/esm/lib/components/link-social.wrapper.d.ts +9 -3
  321. package/ssr/esm/lib/components/link-tile-model-signature.wrapper.d.ts +1 -2
  322. package/ssr/esm/lib/components/link-tile-product.wrapper.d.ts +1 -2
  323. package/ssr/esm/lib/components/link-tile.wrapper.d.ts +1 -2
  324. package/ssr/esm/lib/components/link.wrapper.d.ts +9 -2
  325. package/ssr/esm/lib/components/marque.wrapper.d.ts +0 -1
  326. package/ssr/esm/lib/components/modal.wrapper.d.ts +18 -3
  327. package/ssr/esm/lib/components/model-signature.wrapper.d.ts +1 -2
  328. package/ssr/esm/lib/components/multi-select-option.wrapper.d.ts +1 -2
  329. package/ssr/esm/lib/components/multi-select.wrapper.d.ts +1 -2
  330. package/ssr/esm/lib/components/optgroup.wrapper.d.ts +23 -0
  331. package/ssr/esm/lib/components/pagination.wrapper.d.ts +0 -1
  332. package/ssr/esm/lib/components/pin-code.wrapper.d.ts +1 -2
  333. package/ssr/esm/lib/components/popover.wrapper.d.ts +1 -2
  334. package/ssr/esm/lib/components/radio-button-wrapper.wrapper.d.ts +1 -2
  335. package/ssr/esm/lib/components/scroller.wrapper.d.ts +1 -2
  336. package/ssr/esm/lib/components/segmented-control-item.wrapper.d.ts +1 -2
  337. package/ssr/esm/lib/components/segmented-control.wrapper.d.ts +1 -2
  338. package/ssr/esm/lib/components/select-option.wrapper.d.ts +1 -2
  339. package/ssr/esm/lib/components/select-wrapper-dropdown.wrapper.d.ts +0 -1
  340. package/ssr/esm/lib/components/select-wrapper.wrapper.d.ts +1 -2
  341. package/ssr/esm/lib/components/select.wrapper.d.ts +1 -2
  342. package/ssr/esm/lib/components/spinner.wrapper.d.ts +0 -1
  343. package/ssr/esm/lib/components/stepper-horizontal-item.wrapper.d.ts +1 -2
  344. package/ssr/esm/lib/components/stepper-horizontal.wrapper.d.ts +1 -2
  345. package/ssr/esm/lib/components/switch.wrapper.d.ts +1 -2
  346. package/ssr/esm/lib/components/table-body.wrapper.d.ts +1 -2
  347. package/ssr/esm/lib/components/table-cell.wrapper.d.ts +1 -2
  348. package/ssr/esm/lib/components/table-head-cell.wrapper.d.ts +1 -2
  349. package/ssr/esm/lib/components/table-head-row.wrapper.d.ts +1 -2
  350. package/ssr/esm/lib/components/table-head.wrapper.d.ts +1 -2
  351. package/ssr/esm/lib/components/table-row.wrapper.d.ts +1 -2
  352. package/ssr/esm/lib/components/table.wrapper.d.ts +1 -2
  353. package/ssr/esm/lib/components/tabs-bar.wrapper.d.ts +1 -2
  354. package/ssr/esm/lib/components/tabs-item.wrapper.d.ts +1 -2
  355. package/ssr/esm/lib/components/tabs.wrapper.d.ts +1 -2
  356. package/ssr/esm/lib/components/tag-dismissible.wrapper.d.ts +1 -2
  357. package/ssr/esm/lib/components/tag.wrapper.d.ts +9 -2
  358. package/ssr/esm/lib/components/text-field-wrapper.wrapper.d.ts +1 -2
  359. package/ssr/esm/lib/components/text-list-item.wrapper.d.ts +1 -2
  360. package/ssr/esm/lib/components/text-list.wrapper.d.ts +1 -2
  361. package/ssr/esm/lib/components/text.wrapper.d.ts +1 -2
  362. package/ssr/esm/lib/components/textarea-wrapper.wrapper.d.ts +1 -2
  363. package/ssr/esm/lib/components/toast.wrapper.d.ts +0 -1
  364. package/ssr/esm/lib/components/wordmark.wrapper.d.ts +0 -1
  365. package/ssr/esm/lib/dsr-components/accordion.d.ts +6 -0
  366. package/ssr/esm/lib/dsr-components/banner.d.ts +7 -0
  367. package/ssr/esm/lib/dsr-components/button-group.d.ts +3 -0
  368. package/ssr/esm/lib/dsr-components/button-pure.d.ts +3 -0
  369. package/ssr/esm/lib/dsr-components/button-tile.d.ts +4 -0
  370. package/ssr/esm/lib/dsr-components/button.d.ts +3 -0
  371. package/ssr/esm/lib/dsr-components/canvas.d.ts +12 -1
  372. package/ssr/esm/lib/dsr-components/carousel.d.ts +8 -0
  373. package/ssr/esm/lib/dsr-components/checkbox-wrapper.d.ts +5 -0
  374. package/ssr/esm/lib/dsr-components/content-wrapper.d.ts +4 -1
  375. package/ssr/esm/lib/dsr-components/display.d.ts +3 -0
  376. package/ssr/esm/lib/dsr-components/fieldset-wrapper.d.ts +7 -1
  377. package/ssr/esm/lib/dsr-components/fieldset.d.ts +5 -0
  378. package/ssr/esm/lib/dsr-components/flex-item.d.ts +4 -1
  379. package/ssr/esm/lib/dsr-components/flex.d.ts +4 -1
  380. package/ssr/esm/lib/dsr-components/flyout-multilevel-item.d.ts +5 -1
  381. package/ssr/esm/lib/dsr-components/flyout-multilevel.d.ts +8 -1
  382. package/ssr/esm/lib/dsr-components/flyout.d.ts +8 -0
  383. package/ssr/esm/lib/dsr-components/grid-item.d.ts +5 -1
  384. package/ssr/esm/lib/dsr-components/grid.d.ts +5 -1
  385. package/ssr/esm/lib/dsr-components/heading.d.ts +3 -0
  386. package/ssr/esm/lib/dsr-components/headline.d.ts +5 -1
  387. package/ssr/esm/lib/dsr-components/inline-notification.d.ts +4 -0
  388. package/ssr/esm/lib/dsr-components/link-pure.d.ts +3 -0
  389. package/ssr/esm/lib/dsr-components/link-social.d.ts +5 -1
  390. package/ssr/esm/lib/dsr-components/link-tile-model-signature.d.ts +6 -0
  391. package/ssr/esm/lib/dsr-components/link-tile-product.d.ts +9 -1
  392. package/ssr/esm/lib/dsr-components/link-tile.d.ts +4 -0
  393. package/ssr/esm/lib/dsr-components/link.d.ts +3 -0
  394. package/ssr/esm/lib/dsr-components/modal.d.ts +8 -0
  395. package/ssr/esm/lib/dsr-components/model-signature.d.ts +3 -0
  396. package/ssr/esm/lib/dsr-components/multi-select-option.d.ts +3 -0
  397. package/ssr/esm/lib/dsr-components/multi-select.d.ts +9 -0
  398. package/ssr/esm/lib/dsr-components/optgroup.d.ts +9 -0
  399. package/ssr/esm/lib/dsr-components/pagination.d.ts +3 -0
  400. package/ssr/esm/lib/dsr-components/pin-code.d.ts +7 -0
  401. package/ssr/esm/lib/dsr-components/popover.d.ts +3 -0
  402. package/ssr/esm/lib/dsr-components/radio-button-wrapper.d.ts +5 -0
  403. package/ssr/esm/lib/dsr-components/scroller.d.ts +3 -0
  404. package/ssr/esm/lib/dsr-components/segmented-control-item.d.ts +3 -0
  405. package/ssr/esm/lib/dsr-components/segmented-control.d.ts +5 -0
  406. package/ssr/esm/lib/dsr-components/select-option.d.ts +3 -0
  407. package/ssr/esm/lib/dsr-components/select-wrapper.d.ts +6 -0
  408. package/ssr/esm/lib/dsr-components/select.d.ts +9 -0
  409. package/ssr/esm/lib/dsr-components/stepper-horizontal-item.d.ts +3 -0
  410. package/ssr/esm/lib/dsr-components/stepper-horizontal.d.ts +3 -0
  411. package/ssr/esm/lib/dsr-components/switch.d.ts +5 -0
  412. package/ssr/esm/lib/dsr-components/table-body.d.ts +3 -0
  413. package/ssr/esm/lib/dsr-components/table-cell.d.ts +3 -0
  414. package/ssr/esm/lib/dsr-components/table-head-cell.d.ts +3 -0
  415. package/ssr/esm/lib/dsr-components/table-head-row.d.ts +3 -0
  416. package/ssr/esm/lib/dsr-components/table-head.d.ts +3 -0
  417. package/ssr/esm/lib/dsr-components/table-row.d.ts +3 -0
  418. package/ssr/esm/lib/dsr-components/table.d.ts +4 -0
  419. package/ssr/esm/lib/dsr-components/tabs-bar.d.ts +5 -0
  420. package/ssr/esm/lib/dsr-components/tabs-item.d.ts +3 -0
  421. package/ssr/esm/lib/dsr-components/tabs.d.ts +5 -0
  422. package/ssr/esm/lib/dsr-components/tag-dismissible.d.ts +3 -0
  423. package/ssr/esm/lib/dsr-components/tag.d.ts +3 -0
  424. package/ssr/esm/lib/dsr-components/text-field-wrapper.d.ts +6 -0
  425. package/ssr/esm/lib/dsr-components/text-list-item.d.ts +3 -0
  426. package/ssr/esm/lib/dsr-components/text-list.d.ts +3 -0
  427. package/ssr/esm/lib/dsr-components/text.d.ts +3 -0
  428. package/ssr/esm/lib/dsr-components/textarea-wrapper.d.ts +6 -0
  429. package/ssr/esm/lib/types.d.ts +16 -3
@@ -31,11 +31,11 @@ function toPrimitive(t, r) {
31
31
  if ("object" != _typeof(t) || !t) return t;
32
32
  var e = t[Symbol.toPrimitive];
33
33
  if (void 0 !== e) {
34
- var i = e.call(t, r || "default");
34
+ var i = e.call(t, r );
35
35
  if ("object" != _typeof(i)) return i;
36
36
  throw new TypeError("@@toPrimitive must return a primitive value.");
37
37
  }
38
- return ("string" === r ? String : Number)(t);
38
+ return (String )(t);
39
39
  }
40
40
 
41
41
  function toPropertyKey(t) {
@@ -54,7 +54,6 @@ function _defineProperties(target, props) {
54
54
  }
55
55
  function _createClass(Constructor, protoProps, staticProps) {
56
56
  if (protoProps) _defineProperties(Constructor.prototype, protoProps);
57
- if (staticProps) _defineProperties(Constructor, staticProps);
58
57
  Object.defineProperty(Constructor, "prototype", {
59
58
  writable: false
60
59
  });
@@ -3159,6 +3158,18 @@ const hasWindow = typeof window !== 'undefined';
3159
3158
 
3160
3159
  const isHighContrastMode = hasWindow && window.matchMedia?.('(forced-colors: active)').matches;
3161
3160
 
3161
+ const lighten = (hsl) => {
3162
+ return changeColor(hsl, 15);
3163
+ };
3164
+ const darken = (hsl) => {
3165
+ return changeColor(hsl, -15);
3166
+ };
3167
+ const changeColor = (hsl, lightness) => {
3168
+ return hsl.replace(/\s(\d+)(%?)\//, (_, p1, p2) => {
3169
+ return ` ${Math.min(Math.max(parseInt(p1, 10) + lightness, 0), 100)}${p2}/`;
3170
+ });
3171
+ };
3172
+
3162
3173
  const parseJSON = (prop) => {
3163
3174
  if (typeof prop === 'string') {
3164
3175
  try {
@@ -3459,6 +3470,11 @@ const textSmallStyle = {
3459
3470
  ...fontHyphenationStyle,
3460
3471
  };
3461
3472
 
3473
+ const textMediumStyle = {
3474
+ font: `${_textFontPartA}${fontSizeTextMedium}${_textFontPartB}`,
3475
+ ...fontHyphenationStyle,
3476
+ };
3477
+
3462
3478
  const textLargeStyle = {
3463
3479
  font: `${_textFontPartA}${fontSizeTextLarge}${_textFontPartB}`,
3464
3480
  ...fontHyphenationStyle,
@@ -3475,6 +3491,7 @@ const themeLight = {
3475
3491
  backgroundSurfaceColorDarken: '#CBCED7',
3476
3492
  backgroundSurfaceColorLighten: '#FFFFFF',
3477
3493
  backgroundShadingColor: 'rgba(1, 2, 5, 0.67)',
3494
+ backgroundFrostedColor: 'hsl(240 4% 85%/35%)',
3478
3495
  contrastLowColor: '#D8D8DB',
3479
3496
  contrastMediumColor: '#6B6D70',
3480
3497
  contrastHighColor: '#535457',
@@ -3514,6 +3531,7 @@ const themeDark = {
3514
3531
  backgroundSurfaceColorDarken: '#040405',
3515
3532
  backgroundSurfaceColorLighten: '#3E4045',
3516
3533
  backgroundShadingColor: 'rgba(38, 38, 41, 0.67)',
3534
+ backgroundFrostedColor: 'hsl(240 3% 26%/35%)',
3517
3535
  contrastLowColor: '#404044',
3518
3536
  contrastMediumColor: '#88898C',
3519
3537
  contrastHighColor: '#AFB0B3',
@@ -3846,185 +3864,12 @@ hasWindow &&
3846
3864
  }
3847
3865
  });
3848
3866
 
3849
- /* eslint-disable no-undefined,no-param-reassign,no-shadow */
3850
-
3851
- /**
3852
- * Throttle execution of a function. Especially useful for rate limiting
3853
- * execution of handlers on events like resize and scroll.
3854
- *
3855
- * @param {number} delay - A zero-or-greater delay in milliseconds. For event callbacks, values around 100 or 250 (or even higher)
3856
- * are most useful.
3857
- * @param {Function} callback - A function to be executed after delay milliseconds. The `this` context and all arguments are passed through,
3858
- * as-is, to `callback` when the throttled-function is executed.
3859
- * @param {object} [options] - An object to configure options.
3860
- * @param {boolean} [options.noTrailing] - Optional, defaults to false. If noTrailing is true, callback will only execute every `delay` milliseconds
3861
- * while the throttled-function is being called. If noTrailing is false or unspecified, callback will be executed
3862
- * one final time after the last throttled-function call. (After the throttled-function has not been called for
3863
- * `delay` milliseconds, the internal counter is reset).
3864
- * @param {boolean} [options.noLeading] - Optional, defaults to false. If noLeading is false, the first throttled-function call will execute callback
3865
- * immediately. If noLeading is true, the first the callback execution will be skipped. It should be noted that
3866
- * callback will never executed if both noLeading = true and noTrailing = true.
3867
- * @param {boolean} [options.debounceMode] - If `debounceMode` is true (at begin), schedule `clear` to execute after `delay` ms. If `debounceMode` is
3868
- * false (at end), schedule `callback` to execute after `delay` ms.
3869
- *
3870
- * @returns {Function} A new, throttled, function.
3871
- */
3872
- function throttle (delay, callback, options) {
3873
- var _ref = options || {},
3874
- _ref$noTrailing = _ref.noTrailing,
3875
- noTrailing = _ref$noTrailing === void 0 ? false : _ref$noTrailing,
3876
- _ref$noLeading = _ref.noLeading,
3877
- noLeading = _ref$noLeading === void 0 ? false : _ref$noLeading,
3878
- _ref$debounceMode = _ref.debounceMode,
3879
- debounceMode = _ref$debounceMode === void 0 ? undefined : _ref$debounceMode;
3880
- /*
3881
- * After wrapper has stopped being called, this timeout ensures that
3882
- * `callback` is executed at the proper times in `throttle` and `end`
3883
- * debounce modes.
3884
- */
3885
-
3886
-
3887
- var timeoutID;
3888
- var cancelled = false; // Keep track of the last time `callback` was executed.
3889
-
3890
- var lastExec = 0; // Function to clear existing timeout
3891
-
3892
- function clearExistingTimeout() {
3893
- if (timeoutID) {
3894
- clearTimeout(timeoutID);
3895
- }
3896
- } // Function to cancel next exec
3897
-
3898
-
3899
- function cancel(options) {
3900
- var _ref2 = options || {},
3901
- _ref2$upcomingOnly = _ref2.upcomingOnly,
3902
- upcomingOnly = _ref2$upcomingOnly === void 0 ? false : _ref2$upcomingOnly;
3903
-
3904
- clearExistingTimeout();
3905
- cancelled = !upcomingOnly;
3906
- }
3907
- /*
3908
- * The `wrapper` function encapsulates all of the throttling / debouncing
3909
- * functionality and when executed will limit the rate at which `callback`
3910
- * is executed.
3911
- */
3912
-
3913
-
3914
- function wrapper() {
3915
- for (var _len = arguments.length, arguments_ = new Array(_len), _key = 0; _key < _len; _key++) {
3916
- arguments_[_key] = arguments[_key];
3917
- }
3918
-
3919
- var self = this;
3920
- var elapsed = Date.now() - lastExec;
3921
-
3922
- if (cancelled) {
3923
- return;
3924
- } // Execute `callback` and update the `lastExec` timestamp.
3925
-
3926
-
3927
- function exec() {
3928
- lastExec = Date.now();
3929
- callback.apply(self, arguments_);
3930
- }
3931
- /*
3932
- * If `debounceMode` is true (at begin) this is used to clear the flag
3933
- * to allow future `callback` executions.
3934
- */
3935
-
3936
-
3937
- function clear() {
3938
- timeoutID = undefined;
3939
- }
3940
-
3941
- if (!noLeading && debounceMode && !timeoutID) {
3942
- /*
3943
- * Since `wrapper` is being called for the first time and
3944
- * `debounceMode` is true (at begin), execute `callback`
3945
- * and noLeading != true.
3946
- */
3947
- exec();
3948
- }
3949
-
3950
- clearExistingTimeout();
3951
-
3952
- if (debounceMode === undefined && elapsed > delay) {
3953
- if (noLeading) {
3954
- /*
3955
- * In throttle mode with noLeading, if `delay` time has
3956
- * been exceeded, update `lastExec` and schedule `callback`
3957
- * to execute after `delay` ms.
3958
- */
3959
- lastExec = Date.now();
3960
-
3961
- if (!noTrailing) {
3962
- timeoutID = setTimeout(debounceMode ? clear : exec, delay);
3963
- }
3964
- } else {
3965
- /*
3966
- * In throttle mode without noLeading, if `delay` time has been exceeded, execute
3967
- * `callback`.
3968
- */
3969
- exec();
3970
- }
3971
- } else if (noTrailing !== true) {
3972
- /*
3973
- * In trailing throttle mode, since `delay` time has not been
3974
- * exceeded, schedule `callback` to execute `delay` ms after most
3975
- * recent execution.
3976
- *
3977
- * If `debounceMode` is true (at begin), schedule `clear` to execute
3978
- * after `delay` ms.
3979
- *
3980
- * If `debounceMode` is false (at end), schedule `callback` to
3981
- * execute after `delay` ms.
3982
- */
3983
- timeoutID = setTimeout(debounceMode ? clear : exec, debounceMode === undefined ? delay - elapsed : delay);
3984
- }
3985
- }
3986
-
3987
- wrapper.cancel = cancel; // Return the wrapper function.
3988
-
3989
- return wrapper;
3990
- }
3991
-
3992
- /* eslint-disable no-undefined */
3993
- /**
3994
- * Debounce execution of a function. Debouncing, unlike throttling,
3995
- * guarantees that a function is only executed a single time, either at the
3996
- * very beginning of a series of calls, or at the very end.
3997
- *
3998
- * @param {number} delay - A zero-or-greater delay in milliseconds. For event callbacks, values around 100 or 250 (or even higher) are most useful.
3999
- * @param {Function} callback - A function to be executed after delay milliseconds. The `this` context and all arguments are passed through, as-is,
4000
- * to `callback` when the debounced-function is executed.
4001
- * @param {object} [options] - An object to configure options.
4002
- * @param {boolean} [options.atBegin] - Optional, defaults to false. If atBegin is false or unspecified, callback will only be executed `delay` milliseconds
4003
- * after the last debounced-function call. If atBegin is true, callback will be executed only at the first debounced-function call.
4004
- * (After the throttled-function has not been called for `delay` milliseconds, the internal counter is reset).
4005
- *
4006
- * @returns {Function} A new, debounced function.
4007
- */
4008
-
4009
- function debounce (delay, callback, options) {
4010
- var _ref = options || {},
4011
- _ref$atBegin = _ref.atBegin,
4012
- atBegin = _ref$atBegin === void 0 ? false : _ref$atBegin;
4013
-
4014
- return throttle(delay, callback, {
4015
- debounceMode: atBegin !== false
4016
- });
4017
- }
4018
-
4019
- debounce(800, (el, ariaElement) => {
4020
- ariaElement.innerText = `You have ${el.maxLength - el.value.length} out of ${el.maxLength} characters left`;
4021
- });
4022
-
4023
3867
  const getCDNBaseURL = () => global.PORSCHE_DESIGN_SYSTEM_CDN_URL + "/porsche-design-system";
4024
3868
 
4025
- const MODEL_SIGNATURES_MANIFEST = { "718": { "src": "718.min.493a9e3509d6e263fa2207150082def5.svg", "width": 79, "height": 26 }, "911": { "src": "911.min.b68f913216168583298ccf83f1a6b8d5.svg", "width": 94, "height": 25 }, "boxster": { "src": "boxster.min.c321738789b37fda4bba3f7c587542aa.svg", "width": 239, "height": 26 }, "cayenne": { "src": "cayenne.min.25562011631a831516f91ec31d144104.svg", "width": 245, "height": 35 }, "cayman": { "src": "cayman.min.cc8919694c002873e1bb6a3c1dae5d41.svg", "width": 229, "height": 35 }, "macan": { "src": "macan.min.a1844f4c8d23b75e371745e9b8eb49b9.svg", "width": 196, "height": 26 }, "panamera": { "src": "panamera.min.6dae8095186567168f85c145845f090c.svg", "width": 260, "height": 25 }, "taycan": { "src": "taycan.min.df444c6f4cc1f627ceaf1b02584d6bea.svg", "width": 167, "height": 36 }, "turbo-s": { "src": "turbo-s.min.73f1e10731caffe93c07d96fa08546c1.svg", "width": 199, "height": 25 }, "turbo": { "src": "turbo.min.6a4084a8704a6c47a099b2de56b22aef.svg", "width": 143, "height": 25 } };
3869
+ // index.ts
3870
+ var MODEL_SIGNATURES_MANIFEST = { "718": { "src": "718.493a9e3.svg", "width": 79, "height": 26 }, "911": { "src": "911.b68f913.svg", "width": 94, "height": 25 }, "boxster": { "src": "boxster.c321738.svg", "width": 239, "height": 26 }, "cayenne": { "src": "cayenne.2556201.svg", "width": 245, "height": 35 }, "cayman": { "src": "cayman.cc89196.svg", "width": 229, "height": 35 }, "macan": { "src": "macan.a1844f4.svg", "width": 196, "height": 26 }, "panamera": { "src": "panamera.6dae809.svg", "width": 260, "height": 25 }, "taycan": { "src": "taycan.df444c6.svg", "width": 167, "height": 36 }, "turbo-s": { "src": "turbo-s.73f1e10.svg", "width": 199, "height": 25 }, "turbo": { "src": "turbo.6a4084a.svg", "width": 143, "height": 25 } };
4026
3871
 
4027
- const OPTION_HEIGHT = 40; // optgroups are higher and ignored
3872
+ const OPTION_HEIGHT = 40;
4028
3873
  const MULTI_SELECT_OPTION_HEIGHT = 44;
4029
3874
  const getNoResultsOptionJssStyle = () => ({
4030
3875
  '&[role=status]': {
@@ -4084,7 +3929,7 @@ const formatObjectOutput = (value) => {
4084
3929
  'value, ' +
4085
3930
  formatObjectOutput(breakpoints.reduce((prev, key) => ({ ...prev, [key + (key !== 'base' ? '?' : '')]: 'value' }), {})).replace(/"/g, '');
4086
3931
 
4087
- const getComponentCss$16 = (size, compact, open, theme, sticky) => {
3932
+ const getComponentCss$17 = (size, compact, open, theme, sticky) => {
4088
3933
  const { primaryColor, hoverColor, contrastLowColor, backgroundColor } = getThemedColors(theme);
4089
3934
  const { primaryColor: primaryColorDark, hoverColor: hoverColorDark, contrastLowColor: contrastLowColorDark, backgroundColor: backgroundColorDark, } = getThemedColors('dark');
4090
3935
  const cssVariablePositionStickyTop = '--p-accordion-position-sticky-top';
@@ -4253,7 +4098,7 @@ const cssVariableTop = '--p-banner-position-top';
4253
4098
  const cssVariableBottom = '--p-banner-position-bottom';
4254
4099
  const cssVariableZIndex = '--p-internal-banner-z-index';
4255
4100
  const topBottomFallback = '56px';
4256
- const getComponentCss$15 = (isOpen) => {
4101
+ const getComponentCss$16 = (isOpen) => {
4257
4102
  return getCss({
4258
4103
  '@global': {
4259
4104
  ':host': {
@@ -4324,7 +4169,7 @@ const getGroupDirectionJssStyles = (direction) => {
4324
4169
  return groupDirectionJssStyles[direction];
4325
4170
  };
4326
4171
 
4327
- const getComponentCss$14 = (direction) => {
4172
+ const getComponentCss$15 = (direction) => {
4328
4173
  return getCss({
4329
4174
  '@global': {
4330
4175
  ':host': {
@@ -4367,7 +4212,6 @@ const getVisibilityJssStyle = (hideLabel) => {
4367
4212
  : {
4368
4213
  whiteSpace: 'inherit',
4369
4214
  textIndent: 0,
4370
- zIndex: 1, // fix Firefox bug on :hover (#2583)
4371
4215
  overflow: 'visible',
4372
4216
  };
4373
4217
  };
@@ -4457,7 +4301,8 @@ const getLinkButtonPureStyles = (icon, iconSource, active, isDisabledOrLoading,
4457
4301
  height: `round(down, ${fontLineHeight}, 1px)`,
4458
4302
  },
4459
4303
  },
4460
- label: mergeDeep(buildResponsiveStyles(hideLabel, getVisibilityJssStyle), buildResponsiveStyles(alignLabel, (alignLabelValue) => ({
4304
+ label: mergeDeep({ zIndex: '1' }, // fix Firefox bug on :hover (#2583) & pure-link with nested anchor & hidden label (#3349)
4305
+ buildResponsiveStyles(hideLabel, getVisibilityJssStyle), buildResponsiveStyles(alignLabel, (alignLabelValue) => ({
4461
4306
  // TODO: we should remove 'left' here and map the value in the component class already to 'start' but might be difficult due to breakpoint customizable prop value
4462
4307
  order: alignLabelValue === 'left' || alignLabelValue === 'start' ? -1 : 0,
4463
4308
  }))),
@@ -4476,7 +4321,7 @@ const getFunctionalComponentLoadingMessageStyles = () => {
4476
4321
  };
4477
4322
  };
4478
4323
 
4479
- const getComponentCss$13 = (icon, iconSource, active, isLoading, isDisabledOrLoading, stretch, size, hideLabel, alignLabel, underline, theme) => {
4324
+ const getComponentCss$14 = (icon, iconSource, active, isLoading, isDisabledOrLoading, stretch, size, hideLabel, alignLabel, underline, theme) => {
4480
4325
  const hasIcon = hasVisibleIcon(icon, iconSource);
4481
4326
  return getCss(mergeDeep(getLinkButtonPureStyles(icon, iconSource, active, isDisabledOrLoading, stretch, size, hideLabel, alignLabel, underline, false, theme), {
4482
4327
  root: {
@@ -4514,161 +4359,140 @@ const getFontWeight = (weight) => {
4514
4359
  return fontWeightMap[weight];
4515
4360
  };
4516
4361
 
4517
- const getThemedTypographyColor = (theme, textColor // eslint-disable-line @typescript-eslint/no-duplicate-type-constituents
4518
- ) => {
4519
- const themedColors = getThemedColors(theme);
4520
- const colorMap = {
4521
- primary: themedColors.primaryColor,
4522
- default: themedColors.primaryColor, // deprecated but part of HeadlineColor
4523
- 'contrast-low': themedColors.contrastLowColor,
4524
- 'contrast-medium': themedColors.contrastMediumColor,
4525
- 'contrast-high': themedColors.contrastHighColor,
4526
- 'notification-success': themedColors.successColor,
4527
- 'notification-warning': themedColors.warningColor,
4528
- 'notification-error': themedColors.errorColor,
4529
- 'notification-info': themedColors.infoColor,
4530
- inherit: 'currentColor',
4531
- };
4532
- return colorMap[textColor];
4533
- };
4534
-
4535
- const aspectRatioPaddingMap = {
4536
- '1:1': '100%',
4537
- '4:3': '75%',
4538
- '3:4': '133.33%',
4539
- '16:9': '56.25%',
4540
- '9:16': '177.75%',
4541
- };
4542
- const getTileBaseStyles = (aspectRatio, isDisabled) => {
4543
- return {
4362
+ const getComponentCss$13 = (isDisabledOrLoading, aspectRatio, size, weight, background, align, compact, hasGradient, isDisabled) => {
4363
+ const isTopAligned = align === 'top';
4364
+ return getCss({
4544
4365
  '@global': {
4545
4366
  ':host': {
4546
- display: 'block',
4547
- hyphens: 'auto',
4367
+ display: 'block', // `display: flex` would be more ideal, but doesn't work in Safari in all cases
4368
+ hyphens: 'auto', // TODO: shouldn't we expose a CSS variable instead?
4548
4369
  ...addImportantToEachRule({
4549
4370
  ...colorSchemeStyles,
4550
4371
  ...hostHiddenStyles,
4551
4372
  }),
4552
4373
  },
4553
- ...addImportantToEachRule({
4554
- '::slotted': {
4555
- '&(picture)': {
4556
- position: 'absolute',
4557
- inset: 0,
4558
- },
4559
- '&(img)': {
4560
- height: '100%',
4561
- width: '100%',
4562
- objectFit: 'cover',
4563
- },
4374
+ slot: {
4375
+ display: 'block',
4376
+ '&:not([name])': {
4377
+ width: '100%',
4378
+ height: '100%',
4379
+ transition: getTransition('transform', 'moderate'),
4380
+ },
4381
+ '&[name="header"]': {
4382
+ gridArea: `${isTopAligned ? 4 : 2}/2`,
4383
+ zIndex: 3,
4564
4384
  },
4385
+ },
4386
+ '::slotted(:is(img,picture))': addImportantToEachRule({
4387
+ display: 'block',
4388
+ width: '100%',
4389
+ height: '100%',
4565
4390
  }),
4391
+ '::slotted(img)': addImportantToEachRule({
4392
+ objectFit: 'cover',
4393
+ }),
4394
+ a: {
4395
+ gridArea: '1/1/-1 /-1',
4396
+ zIndex: 4,
4397
+ outline: 0, // reset focus style since this element is used to improve mouse interaction only
4398
+ },
4399
+ p: {
4400
+ ...textMediumStyle,
4401
+ zIndex: 3,
4402
+ margin: 0, // reset ua-style
4403
+ maxWidth: '34.375rem',
4404
+ hyphens: 'inherit',
4405
+ ...mergeDeep(buildResponsiveStyles(size, (sizeValue) => ({
4406
+ fontSize: getFontSizeText(sizeValue === 'default' ? 'medium' : sizeValue), // mapping of the deprecated size 'default'
4407
+ })), buildResponsiveStyles(weight, (weightValue) => ({
4408
+ fontWeight: getFontWeight(weightValue),
4409
+ })), buildResponsiveStyles(background, (backgroundValue) => ({
4410
+ color: getThemedColors(backgroundValue).primaryColor,
4411
+ }))),
4412
+ },
4566
4413
  },
4567
4414
  root: {
4568
- position: 'relative',
4569
- overflow: 'hidden',
4570
- transform: 'translate3d(0,0,0)', // change stacking context for position fixed
4571
- borderRadius: borderRadiusLarge,
4572
- color: getThemedTypographyColor('dark', 'primary'),
4573
- ...buildResponsiveStyles(aspectRatio, (ratio) => ({
4574
- paddingTop: aspectRatioPaddingMap[ratio],
4415
+ ...buildResponsiveStyles(aspectRatio, (aspectRatioValue) => ({
4416
+ aspectRatio: aspectRatioValue.replace(':', '/'), // mapping of the deprecated aspect-ratio with ':'
4575
4417
  })),
4418
+ cursor: isDisabledOrLoading ? 'not-allowed' : 'pointer',
4419
+ width: '100%', // necessary in case tile content overflows in grid or flex context
4420
+ height: '100%', // necessary in case tile content overflows in grid or flex context
4421
+ display: 'grid',
4422
+ gridTemplate: `${spacingFluidMedium} auto minmax(0px, 1fr) auto ${spacingFluidMedium}/${spacingFluidMedium} minmax(0px, 1fr) ${spacingFluidMedium}`,
4423
+ ...(hasGradient &&
4424
+ isThemeDark(background) && {
4425
+ '&::after': {
4426
+ content: '""',
4427
+ zIndex: 2,
4428
+ ...(isTopAligned
4429
+ ? {
4430
+ gridArea: '1/1/3/-1',
4431
+ ...gradientToBottomStyle,
4432
+ marginBottom: `calc(${spacingFluidLarge} * -1)`, // to increase the gradient area without reserving additional layout space
4433
+ borderStartStartRadius: borderRadiusLarge,
4434
+ borderStartEndRadius: borderRadiusLarge,
4435
+ }
4436
+ : {
4437
+ gridArea: '4/1/6/-1',
4438
+ ...gradientToTopStyle,
4439
+ marginTop: `calc(${spacingFluidLarge} * -1)`, // to increase the gradient area without reserving additional layout space
4440
+ borderEndStartRadius: borderRadiusLarge,
4441
+ borderEndEndRadius: borderRadiusLarge,
4442
+ }),
4443
+ ...forcedColorsMediaQuery({
4444
+ background: 'rgba(0,0,0,0.7)',
4445
+ }),
4446
+ },
4447
+ }),
4576
4448
  ...(!isDisabled &&
4577
4449
  hoverMediaQuery({
4578
- '&:hover .image-container': {
4450
+ '&:hover slot:not([name])': {
4579
4451
  transform: 'scale3d(1.05,1.05,1.05)',
4580
4452
  },
4581
4453
  })),
4582
4454
  },
4583
- 'image-container': {
4584
- position: 'absolute',
4585
- inset: 0,
4586
- transition: getTransition('transform', 'moderate'),
4455
+ media: {
4456
+ gridArea: '1/1/-1 /-1',
4457
+ zIndex: 1,
4458
+ overflow: 'hidden', // relevant for scaling of nested image
4459
+ borderRadius: borderRadiusLarge,
4587
4460
  },
4588
- content: {
4589
- position: 'absolute',
4590
- left: 0,
4591
- right: 0,
4461
+ footer: {
4462
+ gridArea: `${isTopAligned ? 2 : 4}/2`,
4592
4463
  display: 'flex',
4593
- justifyItems: 'start',
4594
4464
  gap: spacingStaticMedium,
4595
- borderRadius: borderRadiusLarge, // for gradient
4596
- '@media (forced-colors: active)': {
4597
- background: 'rgba(0,0,0,0.7)',
4598
- },
4599
- },
4600
- };
4601
- };
4602
-
4603
- const sizeMap$5 = {
4604
- inherit: { fontSize: 'inherit' },
4605
- default: { fontSize: fontSizeTextMedium },
4606
- };
4607
- const getButtonLinkTileStyles = (aspectRatio, size, weight, // to get deprecated semibold typed
4608
- background, align, compact, hasGradient, isDisabled) => {
4609
- const isTopAligned = align === 'top';
4610
- return mergeDeep(getTileBaseStyles(aspectRatio, isDisabled), {
4611
- '@global': {
4612
- p: {
4613
- maxWidth: '34.375rem', // in this case rem unit makes sense to scale up available space
4614
- margin: 0,
4615
- ...textLargeStyle,
4616
- hyphens: 'inherit',
4617
- ...mergeDeep(buildResponsiveStyles(size, (s) => sizeMap$5[s]), buildResponsiveStyles(weight, (w) => ({
4618
- fontWeight: getFontWeight(w === 'semibold' ? 'semi-bold' : w), // mapping of the deprecated weight semibold
4619
- }))),
4620
- ...buildResponsiveStyles(background, (b) => ({
4621
- color: getThemedColors(b).primaryColor,
4622
- })),
4623
- },
4624
- },
4625
- content: {
4626
- display: 'grid', // TODO: flex via getTileBaseStyles
4627
- ...(isTopAligned ? { top: 0 } : { bottom: 0 }),
4628
- padding: isTopAligned
4629
- ? `${spacingFluidMedium} ${spacingFluidMedium} ${spacingFluidLarge}`
4630
- : `${spacingFluidLarge} ${spacingFluidMedium} ${spacingFluidMedium}`,
4631
- ...mergeDeep(hasGradient &&
4632
- isThemeDark(background) &&
4633
- buildResponsiveStyles(compact, (isCompact) => isCompact && isTopAligned ? gradientToBottomStyle : gradientToTopStyle), buildResponsiveStyles(compact, (isCompact) => isCompact // TODO: use flex
4465
+ justifyContent: 'space-between',
4466
+ ...buildResponsiveStyles(compact, (compactValue) => compactValue
4634
4467
  ? {
4635
4468
  alignItems: 'center',
4636
- gridTemplateColumns: 'auto 24px',
4637
- gridTemplateRows: 'auto',
4638
- ...(isTopAligned ? { top: 0 } : { bottom: 0 }),
4469
+ flexDirection: 'row',
4639
4470
  }
4640
4471
  : {
4641
- gridTemplateRows: 'auto auto',
4642
- gridTemplateColumns: 'auto',
4643
- })),
4472
+ alignItems: 'flex-start',
4473
+ flexDirection: 'column',
4474
+ }),
4475
+ },
4476
+ 'link-or-button-pure': {
4477
+ zIndex: 5,
4478
+ ...buildResponsiveStyles(compact, (compactValue) => ({
4479
+ display: compactValue ? 'inline-block' : 'none',
4480
+ })),
4644
4481
  },
4645
- 'link-or-button-pure': buildResponsiveStyles(compact, (isCompact) => ({
4646
- display: isCompact ? 'inline-block' : 'none',
4647
- })),
4648
4482
  'link-or-button': {
4649
4483
  minHeight: '54px', // prevent content shift
4650
- ...buildResponsiveStyles(compact, (isCompact) => ({
4651
- display: isCompact ? 'none' : 'inline-block',
4484
+ zIndex: 5,
4485
+ ...buildResponsiveStyles(compact, (compactValue) => ({
4486
+ display: compactValue ? 'none' : 'inline-block',
4652
4487
  })),
4653
4488
  },
4654
4489
  });
4655
4490
  };
4656
4491
 
4657
- const getComponentCss$12 = (isDisabledOrLoading, ...args) => {
4658
- const buttonLinkTileStyles = getButtonLinkTileStyles(...args);
4659
- return getCss({
4660
- ...buttonLinkTileStyles,
4661
- root: {
4662
- ...buttonLinkTileStyles.root,
4663
- cursor: isDisabledOrLoading ? 'not-allowed' : 'pointer',
4664
- },
4665
- });
4666
- };
4667
-
4668
4492
  const { primaryColor: darkThemePrimaryColor } = getThemedColors('dark');
4669
4493
  const { primaryColor: lightThemePrimaryColor } = getThemedColors('light');
4670
4494
  const getVariantColors = (variant, theme) => {
4671
- const { primaryColor, contrastHighColor, contrastMediumColor, hoverColor } = getThemedColors(theme);
4495
+ const { primaryColor, contrastHighColor, contrastMediumColor, hoverColor, backgroundFrostedColor } = getThemedColors(theme);
4672
4496
  const { canvasColor } = getHighContrastColors();
4673
4497
  const colors = {
4674
4498
  primary: {
@@ -4685,15 +4509,24 @@ const getVariantColors = (variant, theme) => {
4685
4509
  backgroundColor: isHighContrastMode ? canvasColor : 'transparent',
4686
4510
  backgroundColorHover: hoverColor,
4687
4511
  },
4512
+ ghost: {
4513
+ textColor: primaryColor,
4514
+ borderColor: backgroundFrostedColor,
4515
+ borderColorHover: theme === 'dark' ? lighten(backgroundFrostedColor) : darken(backgroundFrostedColor),
4516
+ backgroundColor: backgroundFrostedColor,
4517
+ backgroundColorHover: theme === 'dark' ? lighten(backgroundFrostedColor) : darken(backgroundFrostedColor),
4518
+ },
4688
4519
  };
4689
4520
  return colors[variant === 'tertiary' ? 'secondary' : variant];
4690
4521
  };
4691
- const getLinkButtonStyles = (icon, iconSource, variant, hideLabel, isDisabledOrLoading, hasSlottedAnchor, theme) => {
4522
+ const getLinkButtonStyles = (icon, iconSource, variant, hideLabel, isDisabledOrLoading, hasSlottedAnchor, compact, theme) => {
4692
4523
  const isPrimary = variant === 'primary';
4693
4524
  const { textColor, borderColor, borderColorHover, backgroundColor, backgroundColorHover } = getVariantColors(variant, theme);
4694
4525
  const { textColor: textColorDark, borderColor: borderColorDark, borderColorHover: borderColorHoverDark, backgroundColor: backgroundColorDark, backgroundColorHover: backgroundColorHoverDark, } = getVariantColors(variant, 'dark');
4695
4526
  const { focusColor } = getThemedColors(theme);
4696
4527
  const hasIcon = hasVisibleIcon(icon, iconSource) || hideLabel;
4528
+ const paddingBlock = compact ? '4px' : '13px';
4529
+ const paddingInline = compact ? '12px' : '26px';
4697
4530
  return {
4698
4531
  '@global': {
4699
4532
  ':host': {
@@ -4711,23 +4544,22 @@ const getLinkButtonStyles = (icon, iconSource, variant, hideLabel, isDisabledOrL
4711
4544
  alignItems: 'flex-start',
4712
4545
  justifyContent: 'center',
4713
4546
  width: '100%',
4714
- minWidth: '54px', // ensure space is already reserved until icon component is loaded (ssr)
4715
- minHeight: '54px', // ensure space is already reserved until icon component is loaded (ssr)
4716
4547
  boxSizing: 'border-box',
4717
4548
  textAlign: 'start',
4718
4549
  WebkitAppearance: 'none', // iOS safari
4719
4550
  appearance: 'none',
4720
4551
  textDecoration: 'none',
4721
- border: `2px solid ${borderColor}`,
4552
+ border: `${borderWidthBase} solid ${borderColor}`,
4722
4553
  borderRadius: borderRadiusSmall,
4723
4554
  transform: 'translate3d(0,0,0)', // creates new stacking context (for slotted anchor + focus)
4724
4555
  backgroundColor,
4556
+ ...(variant === 'ghost' && { ...frostedGlassStyle, backgroundClip: 'padding-box' }), // background color overlays border-color otherwise
4725
4557
  color: textColor,
4726
4558
  ...textSmallStyle,
4727
4559
  transition: `${getTransition('background-color')}, ${getTransition('border-color')}, ${getTransition('color')}`,
4728
4560
  ...buildResponsiveStyles(hideLabel, (hideLabelValue) => ({
4729
- padding: hideLabelValue ? '13px' : '13px 26px',
4730
- gap: hideLabelValue ? 0 : spacingStaticSmall,
4561
+ padding: hideLabelValue ? paddingBlock : `${paddingBlock} ${paddingInline}`,
4562
+ gap: hideLabelValue ? 0 : compact ? '6px' : spacingStaticSmall,
4731
4563
  })),
4732
4564
  ...(!hasSlottedAnchor && getFocusJssStyle(theme)),
4733
4565
  ...(!isDisabledOrLoading &&
@@ -4751,10 +4583,10 @@ const getLinkButtonStyles = (icon, iconSource, variant, hideLabel, isDisabledOrL
4751
4583
  label: buildResponsiveStyles(hideLabel, getHiddenTextJssStyle),
4752
4584
  ...(hasIcon && {
4753
4585
  icon: {
4754
- width: fontLineHeight,
4755
- height: fontLineHeight,
4586
+ width: fontLineHeight, // ensure space is already reserved until icon component is loaded (ssr)
4587
+ height: fontLineHeight, // ensure space is already reserved until icon component is loaded (ssr)
4756
4588
  ...buildResponsiveStyles(hideLabel, (hideLabelValue) => ({
4757
- marginInlineStart: hideLabelValue ? 0 : '-8px', // compensate white space of svg icon and optimize visual alignment
4589
+ marginInlineStart: hideLabelValue ? 0 : compact ? '-6px' : '-8px', // compensate white space of svg icon and optimize visual alignment
4758
4590
  })),
4759
4591
  },
4760
4592
  }),
@@ -4762,7 +4594,7 @@ const getLinkButtonStyles = (icon, iconSource, variant, hideLabel, isDisabledOrL
4762
4594
  };
4763
4595
 
4764
4596
  const getDisabledColors = (variant, loading, theme) => {
4765
- const { contrastMediumColor, contrastHighColor, disabledColor, hoverColor } = getThemedColors(theme);
4597
+ const { contrastMediumColor, contrastHighColor, disabledColor, hoverColor, backgroundFrostedColor } = getThemedColors(theme);
4766
4598
  const { canvasColor } = getHighContrastColors();
4767
4599
  const colors = {
4768
4600
  primary: {
@@ -4775,15 +4607,20 @@ const getDisabledColors = (variant, loading, theme) => {
4775
4607
  borderColor: isHighContrastMode ? disabledColor : loading ? contrastMediumColor : disabledColor,
4776
4608
  backgroundColor: isHighContrastMode ? canvasColor : loading ? hoverColor : 'transparent',
4777
4609
  },
4610
+ ghost: {
4611
+ textColor: disabledColor,
4612
+ borderColor: isHighContrastMode ? disabledColor : loading ? backgroundFrostedColor : backgroundFrostedColor,
4613
+ backgroundColor: isHighContrastMode ? canvasColor : loading ? backgroundFrostedColor : backgroundFrostedColor,
4614
+ },
4778
4615
  };
4779
4616
  return colors[variant === 'tertiary' ? 'secondary' : variant];
4780
4617
  };
4781
- const getComponentCss$11 = (icon, iconSource, variant, hideLabel, disabled, loading, theme) => {
4618
+ const getComponentCss$12 = (icon, iconSource, variant, hideLabel, disabled, loading, compact, theme) => {
4782
4619
  const disabledOrLoading = isDisabledOrLoading(disabled, loading);
4783
4620
  const { textColor, borderColor, backgroundColor } = getDisabledColors(variant, loading, theme);
4784
4621
  const { textColor: textColorDark, borderColor: borderColorDark, backgroundColor: backgroundColorDark, } = getDisabledColors(variant, loading, 'dark');
4785
4622
  const isPrimary = variant === 'primary';
4786
- return getCss(mergeDeep(getLinkButtonStyles(icon, iconSource, variant, hideLabel, disabledOrLoading, false, theme), {
4623
+ return getCss(mergeDeep(getLinkButtonStyles(icon, iconSource, variant, hideLabel, disabledOrLoading, false, compact, theme), {
4787
4624
  root: {
4788
4625
  cursor: disabledOrLoading ? 'not-allowed' : 'pointer',
4789
4626
  ...(disabledOrLoading && {
@@ -4842,7 +4679,7 @@ const sidebarWidths = {
4842
4679
  medium: '320px',
4843
4680
  large: '480px', // TODO: won't work at viewport 1000px when both sidebars are opened
4844
4681
  };
4845
- const getComponentCss$10 = (isSidebarStartOpen, sidebarStartWidth, isSidebarEndOpen, sidebarEndWidth) => {
4682
+ const getComponentCss$11 = (isSidebarStartOpen, sidebarStartWidth, isSidebarEndOpen, sidebarEndWidth) => {
4846
4683
  return getCss({
4847
4684
  '@global': {
4848
4685
  ':host': {
@@ -4951,7 +4788,7 @@ const backfaceVisibilityJssStyle = {
4951
4788
  backfaceVisibility: 'hidden',
4952
4789
  WebkitBackfaceVisibility: 'hidden',
4953
4790
  };
4954
- const getComponentCss$$ = (hasHeading, hasDescription, hasControlsSlot, headingSize, width, hasPagination, isInfinitePagination, alignHeader, theme) => {
4791
+ const getComponentCss$10 = (hasHeading, hasDescription, hasControlsSlot, headingSize, width, hasPagination, isInfinitePagination, alignHeader, theme, hasNavigation) => {
4955
4792
  const { primaryColor, contrastMediumColor } = getThemedColors(theme);
4956
4793
  const { primaryColor: primaryColorDark, contrastMediumColor: contrastMediumColorDark } = getThemedColors('dark');
4957
4794
  const { canvasTextColor } = getHighContrastColors();
@@ -4974,6 +4811,10 @@ const getComponentCss$$ = (hasHeading, hasDescription, hasControlsSlot, headingS
4974
4811
  gridColumnStart: 1,
4975
4812
  gridRowStart: 3,
4976
4813
  alignSelf: 'center', // ensures vertical alignment to prev/next buttons
4814
+ ...(isHeaderAlignCenter &&
4815
+ !hasNavigation && {
4816
+ justifySelf: 'center',
4817
+ }),
4977
4818
  },
4978
4819
  }),
4979
4820
  ...addImportantToEachRule({
@@ -5024,8 +4865,8 @@ const getComponentCss$$ = (hasHeading, hasDescription, hasControlsSlot, headingS
5024
4865
  padding: `0 ${spacingMap[width].base}`,
5025
4866
  [mediaQueryS]: {
5026
4867
  gridTemplateColumns: 'minmax(0px, 1fr) auto',
5027
- columnGap: spacingStaticMedium,
5028
4868
  padding: `0 ${spacingMap[width].s}`,
4869
+ ...(hasNavigation && { columnGap: spacingStaticMedium }),
5029
4870
  },
5030
4871
  [mediaQueryXXL]: {
5031
4872
  padding: `0 ${spacingMap[width].xxl}`,
@@ -5087,6 +4928,14 @@ const getComponentCss$$ = (hasHeading, hasDescription, hasControlsSlot, headingS
5087
4928
  transform: 'translateZ(0)', // fixes mobile safari flickering, https://github.com/nolimits4web/swiper/issues/3527#issuecomment-609088939
5088
4929
  },
5089
4930
  '&__sr': getHiddenTextJssStyle(), // appears in the DOM when sliding
4931
+ ...(isHeaderAlignCenter && {
4932
+ '&:not(.is-overflow) .splide__list': {
4933
+ justifyContent: 'center',
4934
+ },
4935
+ '&:not(.is-overflow) .splide__slide:last-child': {
4936
+ marginInlineEnd: addImportantToRule('0'),
4937
+ },
4938
+ }),
5090
4939
  },
5091
4940
  ...(hasPagination && {
5092
4941
  'pagination-container': {
@@ -5370,7 +5219,7 @@ const getCheckedSVGBackgroundImage$1 = (fill) => {
5370
5219
  const getIndeterminateSVGBackgroundImage = (fill) => {
5371
5220
  return getInlineSVGBackgroundImage(`<path fill="${fill}" d="m20,11v2H4v-2h16Z"/>`);
5372
5221
  };
5373
- const getComponentCss$_ = (hideLabel, state, isDisabled, isLoading, theme) => {
5222
+ const getComponentCss$$ = (hideLabel, state, isDisabled, isLoading, theme) => {
5374
5223
  const { canvasColor } = getHighContrastColors();
5375
5224
  const checkedIconColor = isHighContrastMode
5376
5225
  ? canvasColor
@@ -5465,7 +5314,7 @@ const widthMap = {
5465
5314
  basic: gridBasicOffset,
5466
5315
  extended: gridExtendedOffset,
5467
5316
  };
5468
- const getComponentCss$Z = (width) => {
5317
+ const getComponentCss$_ = (width) => {
5469
5318
  return getCss({
5470
5319
  '@global': {
5471
5320
  ':host': {
@@ -5507,7 +5356,7 @@ const getDimensionStyle = {
5507
5356
  width: 'inherit',
5508
5357
  height: 'inherit',
5509
5358
  };
5510
- const getComponentCss$Y = () => {
5359
+ const getComponentCss$Z = () => {
5511
5360
  return getCss({
5512
5361
  '@global': {
5513
5362
  ':host': {
@@ -5553,6 +5402,24 @@ const getComponentCss$Y = () => {
5553
5402
 
5554
5403
  const DISPLAY_TAGS = ['h1', 'h2', 'h3', 'h4', 'h5', 'h6'];
5555
5404
 
5405
+ const getThemedTypographyColor = (theme, textColor // eslint-disable-line @typescript-eslint/no-duplicate-type-constituents
5406
+ ) => {
5407
+ const themedColors = getThemedColors(theme);
5408
+ const colorMap = {
5409
+ primary: themedColors.primaryColor,
5410
+ default: themedColors.primaryColor, // deprecated but part of HeadlineColor
5411
+ 'contrast-low': themedColors.contrastLowColor,
5412
+ 'contrast-medium': themedColors.contrastMediumColor,
5413
+ 'contrast-high': themedColors.contrastHighColor,
5414
+ 'notification-success': themedColors.successColor,
5415
+ 'notification-warning': themedColors.warningColor,
5416
+ 'notification-error': themedColors.errorColor,
5417
+ 'notification-info': themedColors.infoColor,
5418
+ inherit: 'currentColor',
5419
+ };
5420
+ return colorMap[textColor];
5421
+ };
5422
+
5556
5423
  const getTypographyRootJssStyle = (baseTextStyle, responsiveStyle, align, // eslint-disable-line @typescript-eslint/no-duplicate-type-constituents
5557
5424
  color, // eslint-disable-line @typescript-eslint/no-duplicate-type-constituents
5558
5425
  ellipsis, theme) => {
@@ -5588,7 +5455,7 @@ const sizeMap$4 = {
5588
5455
  medium: fontSizeDisplayMedium,
5589
5456
  large: fontSizeDisplayLarge,
5590
5457
  };
5591
- const getComponentCss$X = (size, align, color, ellipsis, theme) => {
5458
+ const getComponentCss$Y = (size, align, color, ellipsis, theme) => {
5592
5459
  return getCss({
5593
5460
  '@global': {
5594
5461
  ':host': {
@@ -5606,7 +5473,7 @@ const getComponentCss$X = (size, align, color, ellipsis, theme) => {
5606
5473
  });
5607
5474
  };
5608
5475
 
5609
- const getComponentCss$W = (color, orientation, theme) => {
5476
+ const getComponentCss$X = (color, orientation, theme) => {
5610
5477
  const { contrastLowColor, contrastMediumColor, contrastHighColor } = getThemedColors(theme);
5611
5478
  const { contrastLowColor: contrastLowColorDark, contrastMediumColor: contrastMediumColorDark, contrastHighColor: contrastHighColorDark, } = getThemedColors('dark');
5612
5479
  const colorMap = {
@@ -5649,7 +5516,7 @@ const getComponentCss$W = (color, orientation, theme) => {
5649
5516
  });
5650
5517
  };
5651
5518
 
5652
- const getComponentCss$V = (state, labelSize, hasLabel, theme) => {
5519
+ const getComponentCss$W = (state, labelSize, hasLabel, theme) => {
5653
5520
  return getCss({
5654
5521
  '@global': {
5655
5522
  ':host': {
@@ -5685,7 +5552,7 @@ const getComponentCss$V = (state, labelSize, hasLabel, theme) => {
5685
5552
  });
5686
5553
  };
5687
5554
 
5688
- const getComponentCss$U = (state, labelSize, hasLabel, theme) => {
5555
+ const getComponentCss$V = (state, labelSize, hasLabel, theme) => {
5689
5556
  return getCss({
5690
5557
  '@global': {
5691
5558
  ':host': {
@@ -5731,7 +5598,7 @@ const flexItemWidths = {
5731
5598
  full: 100,
5732
5599
  auto: 'auto',
5733
5600
  };
5734
- const getComponentCss$T = (width, offset, alignSelf, grow, shrink, flex) => {
5601
+ const getComponentCss$U = (width, offset, alignSelf, grow, shrink, flex) => {
5735
5602
  return getCss({
5736
5603
  '@global': {
5737
5604
  ':host': addImportantToEachRule({
@@ -5753,7 +5620,7 @@ const getComponentCss$T = (width, offset, alignSelf, grow, shrink, flex) => {
5753
5620
  });
5754
5621
  };
5755
5622
 
5756
- const getComponentCss$S = (inline, wrap, direction, justifyContent, alignItems, alignContent) => {
5623
+ const getComponentCss$T = (inline, wrap, direction, justifyContent, alignItems, alignContent) => {
5757
5624
  return getCss({
5758
5625
  '@global': {
5759
5626
  ':host': {
@@ -5794,7 +5661,7 @@ const frostedGlassBackgroundColorLight$1 = 'rgba(255, 255, 255, 0.79)';
5794
5661
  const frostedGlassBackgroundColorDark$1 = 'rgba(14, 14, 18, 0.79)';
5795
5662
  const scrollerWidthEnhancedView = 'clamp(338px, 10.52vw + 258px, 460px)';
5796
5663
  const mediaQueryEnhancedView = getMediaQueryMin('s');
5797
- const getComponentCss$R = (isPrimaryScrollerVisible, isSecondaryScrollerVisible, theme) => {
5664
+ const getComponentCss$S = (isPrimaryScrollerVisible, isSecondaryScrollerVisible, theme) => {
5798
5665
  const { backgroundColor } = getThemedColors(theme);
5799
5666
  const { backgroundColor: backgroundColorDark } = getThemedColors('dark');
5800
5667
  const frostedGlassBackgroundColor = isThemeDark(theme)
@@ -5933,7 +5800,7 @@ const getContentJssStyle = () => {
5933
5800
 
5934
5801
  const frostedGlassBackgroundColorLight = 'rgba(238, 239, 242, 0.79)';
5935
5802
  const frostedGlassBackgroundColorDark = 'rgba(33, 34, 37, 0.79)';
5936
- const getComponentCss$Q = (isSecondaryScrollerVisible, theme) => {
5803
+ const getComponentCss$R = (isSecondaryScrollerVisible, theme) => {
5937
5804
  const { primaryColor, backgroundSurfaceColor, hoverColor } = getThemedColors(theme);
5938
5805
  const { primaryColor: primaryColorDark, backgroundSurfaceColor: backgroundSurfaceColorDark, hoverColor: hoverColorDark, } = getThemedColors('dark');
5939
5806
  const frostedGlassBackgroundColor = isThemeDark(theme)
@@ -6293,7 +6160,7 @@ const getDialogStickyAreaJssStyle = (area, theme) => {
6293
6160
  const cssVariableWidth$2 = '--p-flyout-width';
6294
6161
  // TODO: we shouldn't expose --p-flyout-max-width
6295
6162
  const cssVariableMaxWidth = '--p-flyout-max-width';
6296
- const getComponentCss$P = (isOpen, position, hasHeader, hasFooter, hasSubFooter, theme) => {
6163
+ const getComponentCss$Q = (isOpen, position, hasHeader, hasFooter, hasSubFooter, theme) => {
6297
6164
  const isPositionStart = position === 'start' || position === 'left';
6298
6165
  return getCss({
6299
6166
  '@global': {
@@ -6367,7 +6234,7 @@ const gutter$1 = `calc(${gridGap} / 2)`;
6367
6234
  const gridItemWidths = [
6368
6235
  0, 8.333333, 16.666667, 25, 33.333333, 41.666667, 50, 58.333333, 66.666667, 75, 83.333333, 91.666667, 100,
6369
6236
  ];
6370
- const getComponentCss$O = (size, offset) => {
6237
+ const getComponentCss$P = (size, offset) => {
6371
6238
  return getCss({
6372
6239
  '@global': {
6373
6240
  ':host': addImportantToEachRule({
@@ -6387,7 +6254,7 @@ const getComponentCss$O = (size, offset) => {
6387
6254
  };
6388
6255
 
6389
6256
  const gutter = `calc(${gridGap} / -2)`;
6390
- const getComponentCss$N = (direction, wrap) => {
6257
+ const getComponentCss$O = (direction, wrap) => {
6391
6258
  return getCss({
6392
6259
  '@global': {
6393
6260
  ':host': {
@@ -6413,7 +6280,7 @@ const sizeMap$3 = {
6413
6280
  'x-large': fontSizeHeadingXLarge,
6414
6281
  'xx-large': fontSizeHeadingXXLarge,
6415
6282
  };
6416
- const getComponentCss$M = (size, align, color, ellipsis, theme) => {
6283
+ const getComponentCss$N = (size, align, color, ellipsis, theme) => {
6417
6284
  return getCss({
6418
6285
  '@global': {
6419
6286
  ':host': {
@@ -6473,7 +6340,7 @@ const getTextSizeJssStyle = (textSize) => {
6473
6340
  fontSize: textSize === 'inherit' ? textSize : textSizeMap[textSize],
6474
6341
  };
6475
6342
  };
6476
- const getComponentCss$L = (variant, align, color, ellipsis, theme) => {
6343
+ const getComponentCss$M = (variant, align, color, ellipsis, theme) => {
6477
6344
  return getCss({
6478
6345
  '@global': {
6479
6346
  ':host': {
@@ -6581,7 +6448,7 @@ const isFlippableIcon = (name, source) => {
6581
6448
  name === 'logout' ||
6582
6449
  name === 'send'));
6583
6450
  };
6584
- const getComponentCss$K = (name, source, color, size, theme) => {
6451
+ const getComponentCss$L = (name, source, color, size, theme) => {
6585
6452
  const isColorInherit = color === 'inherit';
6586
6453
  const isSizeInherit = size === 'inherit';
6587
6454
  const isDark = isThemeDark(theme);
@@ -6698,7 +6565,7 @@ const getHeadingJssStyle = (theme) => ({
6698
6565
  ...headingSmallStyle,
6699
6566
  ...getTextJssStyle(theme),
6700
6567
  });
6701
- const getComponentCss$J = (state, hasAction, hasClose, theme) => {
6568
+ const getComponentCss$K = (state, hasAction, hasClose, theme) => {
6702
6569
  return getCss({
6703
6570
  '@global': {
6704
6571
  ':host': {
@@ -6729,7 +6596,7 @@ const getComponentCss$J = (state, hasAction, hasClose, theme) => {
6729
6596
  });
6730
6597
  };
6731
6598
 
6732
- const getComponentCss$I = (icon, iconSource, active, stretch, size, hideLabel, alignLabel, underline, hasSlottedAnchor, theme) => {
6599
+ const getComponentCss$J = (icon, iconSource, active, stretch, size, hideLabel, alignLabel, underline, hasSlottedAnchor, theme) => {
6733
6600
  return getCss(mergeDeep(getLinkButtonPureStyles(icon, iconSource, active, false, stretch, size, hideLabel, alignLabel, underline, hasSlottedAnchor, theme), hasSlottedAnchor && {
6734
6601
  '@global': addImportantToEachRule({
6735
6602
  '::slotted': {
@@ -6757,10 +6624,10 @@ const getComponentCss$I = (icon, iconSource, active, stretch, size, hideLabel, a
6757
6624
  }));
6758
6625
  };
6759
6626
 
6760
- const getComponentCss$H = (icon, iconSource, variant, hideLabel, hasSlottedAnchor, theme) => {
6627
+ const getComponentCss$I = (icon, iconSource, variant, hideLabel, hasSlottedAnchor, compact, theme) => {
6761
6628
  const { linkColor } = getHighContrastColors();
6762
6629
  const isPrimary = variant === 'primary';
6763
- return getCss(mergeDeep(getLinkButtonStyles(icon, iconSource, variant, hideLabel, false, hasSlottedAnchor, theme), {
6630
+ return getCss(mergeDeep(getLinkButtonStyles(icon, iconSource, variant, hideLabel, false, hasSlottedAnchor, compact, theme), {
6764
6631
  label: {
6765
6632
  clip: addImportantToRule('unset'), // to overrule breakpoint customizable hide-label style
6766
6633
  },
@@ -6799,58 +6666,120 @@ const getComponentCss$H = (icon, iconSource, variant, hideLabel, hasSlottedAncho
6799
6666
  }));
6800
6667
  };
6801
6668
 
6802
- // array is redefined instead of using the one from in model-signature
6803
- // because it is created via Object.keys(MODEL_SIGNATURES_MANIFEST) would bundle the entire manifest into both chunks
6804
- const LINK_TILE_MODEL_SIGNATURE_HEADING_TAGS = ['h2', 'h3', 'h4', 'h5', 'h6'];
6805
-
6806
- const getComponentCss$G = (aspectRatio, weight, direction, hasDescription) => {
6807
- const tileBaseStyles = getTileBaseStyles(aspectRatio);
6669
+ const getComponentCss$H = (aspectRatio, weight, // to get deprecated semibold typed
6670
+ direction, hasDescription) => {
6808
6671
  return getCss({
6809
- ...tileBaseStyles,
6810
6672
  '@global': {
6811
- ...tileBaseStyles['@global'],
6812
- [LINK_TILE_MODEL_SIGNATURE_HEADING_TAGS.join(',')]: {
6813
- margin: addImportantToRule(0),
6673
+ ':host': {
6674
+ display: 'block', // `display: flex` would be more ideal, but doesn't work in Safari in all cases
6675
+ hyphens: 'auto', // TODO: shouldn't we expose a CSS variable instead?
6676
+ ...addImportantToEachRule({
6677
+ ...colorSchemeStyles,
6678
+ ...hostHiddenStyles,
6679
+ }),
6680
+ },
6681
+ slot: {
6682
+ '&:not([name])': {
6683
+ display: 'block',
6684
+ width: '100%',
6685
+ height: '100%',
6686
+ transition: getTransition('transform', 'moderate'),
6687
+ },
6688
+ '&[name=primary]': {
6689
+ pointerEvents: 'auto',
6690
+ },
6691
+ '&[name=secondary]': {
6692
+ pointerEvents: 'auto',
6693
+ },
6694
+ },
6695
+ '::slotted(:is(img,picture))': addImportantToEachRule({
6696
+ display: 'block',
6697
+ width: '100%',
6698
+ height: '100%',
6699
+ }),
6700
+ '::slotted(img)': addImportantToEachRule({
6701
+ objectFit: 'cover',
6702
+ }),
6703
+ a: {
6704
+ gridArea: '1/1/-1 /-1',
6705
+ zIndex: 4,
6706
+ outline: 0, // reset focus style since this element is used to improve mouse interaction only
6814
6707
  },
6708
+ 'h1,h2,h3,h4,h5,h6': {
6709
+ margin: 0,
6710
+ zIndex: 3,
6711
+ maxWidth: '34.375rem',
6712
+ ...textLargeStyle,
6713
+ hyphens: 'inherit',
6714
+ color: getThemedColors('dark').primaryColor,
6715
+ ...buildResponsiveStyles(weight, (w) => ({ fontWeight: getFontWeight(w) })),
6716
+ },
6717
+ ...(hasDescription && {
6718
+ p: {
6719
+ margin: '-12px 0 0 ',
6720
+ zIndex: 3,
6721
+ maxWidth: '34.375rem',
6722
+ ...textSmallStyle,
6723
+ color: getThemedColors('dark').primaryColor,
6724
+ hyphens: 'inherit',
6725
+ },
6726
+ }),
6815
6727
  },
6816
- content: {
6817
- ...tileBaseStyles.content,
6818
- flexDirection: 'column',
6819
- bottom: 0,
6820
- padding: `${spacingFluidLarge} ${spacingFluidMedium} ${spacingFluidMedium}`,
6821
- ...gradientToTopStyle,
6728
+ root: {
6729
+ ...buildResponsiveStyles(aspectRatio, (aspectRatioValue) => ({
6730
+ aspectRatio: aspectRatioValue.replace(':', '/'), // mapping of the deprecated aspect-ratio with ':'
6731
+ })),
6732
+ width: '100%', // necessary in case tile content overflows in grid or flex context
6733
+ height: '100%', // necessary in case tile content overflows in grid or flex context
6734
+ display: 'grid',
6735
+ gridTemplate: `${spacingFluidMedium} auto minmax(0px, 1fr) auto ${spacingFluidMedium}/${spacingFluidMedium} minmax(0px, 1fr) ${spacingFluidMedium}`,
6736
+ '&::after': {
6737
+ content: '""',
6738
+ zIndex: 2,
6739
+ gridArea: '4/1/6/-1',
6740
+ ...gradientToTopStyle,
6741
+ marginTop: `calc(${spacingFluidLarge} * -1)`, // to increase the gradient area without reserving additional layout space
6742
+ borderEndStartRadius: borderRadiusLarge,
6743
+ borderEndEndRadius: borderRadiusLarge,
6744
+ ...forcedColorsMediaQuery({
6745
+ background: 'rgba(0,0,0,0.7)',
6746
+ }),
6747
+ },
6748
+ ...hoverMediaQuery({
6749
+ '&:hover slot:not([name])': {
6750
+ transform: 'scale3d(1.05,1.05,1.05)',
6751
+ },
6752
+ }),
6822
6753
  },
6823
- signature: {
6824
- position: 'absolute',
6825
- top: spacingFluidMedium,
6826
- left: spacingFluidMedium,
6827
- right: spacingFluidMedium,
6754
+ header: {
6755
+ gridArea: '2/2',
6756
+ zIndex: 3,
6828
6757
  display: 'flex',
6758
+ flexDirection: 'column',
6759
+ gap: spacingFluidSmall,
6829
6760
  },
6830
- heading: {
6831
- margin: 0,
6832
- ...textLargeStyle,
6833
- hyphens: 'inherit',
6834
- ...buildResponsiveStyles(weight, (w) => ({ fontWeight: getFontWeight(w) })),
6761
+ media: {
6762
+ gridArea: '1/1/-1 /-1',
6763
+ zIndex: 1,
6764
+ overflow: 'hidden', // relevant for scaling of nested image
6765
+ borderRadius: borderRadiusLarge,
6766
+ },
6767
+ footer: {
6768
+ gridArea: '4/2',
6769
+ display: 'flex',
6770
+ gap: spacingStaticMedium,
6771
+ justifyContent: 'space-between',
6772
+ alignItems: 'flex-start',
6773
+ flexDirection: 'column',
6835
6774
  },
6836
- ...(hasDescription && {
6837
- description: {
6838
- margin: '-12px 0 0 ', // TODO: perhaps gap should be overridden instead
6839
- ...textSmallStyle,
6840
- hyphens: 'inherit',
6841
- },
6842
- }),
6843
6775
  'link-group': {
6776
+ zIndex: 5,
6844
6777
  display: 'flex',
6845
6778
  width: '100%',
6779
+ pointerEvents: 'none',
6846
6780
  gap: spacingFluidSmall,
6847
6781
  ...buildResponsiveStyles(direction, getGroupDirectionJssStyles),
6848
6782
  },
6849
- 'link-overlay': {
6850
- // covers entire tile, used for expanded click-area only
6851
- position: 'fixed',
6852
- inset: 0,
6853
- },
6854
6783
  });
6855
6784
  };
6856
6785
 
@@ -6869,7 +6798,7 @@ const getMultilineEllipsis = (lineClamp) => {
6869
6798
  overflow: 'hidden',
6870
6799
  };
6871
6800
  };
6872
- const getComponentCss$F = (hasLikeButton, hasSlottedAnchor, hasPriceOriginal, hasDescription, aspectRatio, theme) => {
6801
+ const getComponentCss$G = (hasLikeButton, hasSlottedAnchor, hasPriceOriginal, hasDescription, aspectRatio, theme) => {
6873
6802
  const { primaryColor, contrastHighColor, contrastMediumColor, backgroundSurfaceColor } = getThemedColors(theme);
6874
6803
  const { primaryColor: primaryColorDark, contrastHighColor: contrastHighColorDark, contrastMediumColor: contrastMediumColorDark, backgroundSurfaceColor: backgroundSurfaceColorDark, } = getThemedColors('dark');
6875
6804
  return getCss({
@@ -7007,13 +6936,131 @@ const getComponentCss$F = (hasLikeButton, hasSlottedAnchor, hasPriceOriginal, ha
7007
6936
  });
7008
6937
  };
7009
6938
 
7010
- const getComponentCss$E = (...args) => {
6939
+ const getComponentCss$F = (aspectRatio, size, weight, // to get deprecated semibold typed
6940
+ background, align, compact, hasGradient, isDisabled) => {
6941
+ const isTopAligned = align === 'top';
7011
6942
  return getCss({
7012
- ...getButtonLinkTileStyles(...args),
7013
- 'link-overlay': {
7014
- // covers entire tile, used for expanded click-area only
7015
- position: 'fixed',
7016
- inset: 0,
6943
+ '@global': {
6944
+ ':host': {
6945
+ display: 'block', // `display: flex` would be more ideal, but doesn't work in Safari in all cases
6946
+ hyphens: 'auto', // TODO: shouldn't we expose a CSS variable instead?
6947
+ ...addImportantToEachRule({
6948
+ ...colorSchemeStyles,
6949
+ ...hostHiddenStyles,
6950
+ }),
6951
+ },
6952
+ slot: {
6953
+ display: 'block',
6954
+ '&:not([name])': {
6955
+ width: '100%',
6956
+ height: '100%',
6957
+ transition: getTransition('transform', 'moderate'),
6958
+ },
6959
+ '&[name="header"]': {
6960
+ gridArea: `${isTopAligned ? 4 : 2}/2`,
6961
+ zIndex: 3,
6962
+ },
6963
+ },
6964
+ '::slotted(:is(img,picture))': addImportantToEachRule({
6965
+ display: 'block',
6966
+ width: '100%',
6967
+ height: '100%',
6968
+ }),
6969
+ '::slotted(img)': addImportantToEachRule({
6970
+ objectFit: 'cover',
6971
+ }),
6972
+ a: {
6973
+ gridArea: '1/1/-1 /-1',
6974
+ zIndex: 4,
6975
+ outline: 0, // reset focus style since this element is used to improve mouse interaction only
6976
+ },
6977
+ p: {
6978
+ ...textMediumStyle,
6979
+ zIndex: 3,
6980
+ margin: 0, // reset ua-style
6981
+ maxWidth: '34.375rem',
6982
+ hyphens: 'inherit',
6983
+ ...mergeDeep(buildResponsiveStyles(size, (sizeValue) => ({
6984
+ fontSize: getFontSizeText(sizeValue === 'default' ? 'medium' : sizeValue), // mapping of the deprecated size 'default'
6985
+ })), buildResponsiveStyles(weight, (weightValue) => ({
6986
+ fontWeight: getFontWeight(weightValue === 'semibold' ? 'semi-bold' : weightValue), // mapping of the deprecated weight 'semibold'
6987
+ })), buildResponsiveStyles(background, (backgroundValue) => ({
6988
+ color: getThemedColors(backgroundValue).primaryColor,
6989
+ }))),
6990
+ },
6991
+ },
6992
+ root: {
6993
+ ...buildResponsiveStyles(aspectRatio, (aspectRatioValue) => ({
6994
+ aspectRatio: aspectRatioValue.replace(':', '/'), // mapping of the deprecated aspect-ratio with ':'
6995
+ })),
6996
+ width: '100%', // necessary in case tile content overflows in grid or flex context
6997
+ height: '100%', // necessary in case tile content overflows in grid or flex context
6998
+ display: 'grid',
6999
+ gridTemplate: `${spacingFluidMedium} auto minmax(0px, 1fr) auto ${spacingFluidMedium}/${spacingFluidMedium} minmax(0px, 1fr) ${spacingFluidMedium}`,
7000
+ ...(hasGradient &&
7001
+ isThemeDark(background) && {
7002
+ '&::after': {
7003
+ content: '""',
7004
+ zIndex: 2,
7005
+ ...(isTopAligned
7006
+ ? {
7007
+ gridArea: '1/1/3/-1',
7008
+ ...gradientToBottomStyle,
7009
+ marginBottom: `calc(${spacingFluidLarge} * -1)`, // to increase the gradient area without reserving additional layout space
7010
+ borderStartStartRadius: borderRadiusLarge,
7011
+ borderStartEndRadius: borderRadiusLarge,
7012
+ }
7013
+ : {
7014
+ gridArea: '4/1/6/-1',
7015
+ ...gradientToTopStyle,
7016
+ marginTop: `calc(${spacingFluidLarge} * -1)`, // to increase the gradient area without reserving additional layout space
7017
+ borderEndStartRadius: borderRadiusLarge,
7018
+ borderEndEndRadius: borderRadiusLarge,
7019
+ }),
7020
+ ...forcedColorsMediaQuery({
7021
+ background: 'rgba(0,0,0,0.7)',
7022
+ }),
7023
+ },
7024
+ }),
7025
+ ...(hoverMediaQuery({
7026
+ '&:hover slot:not([name])': {
7027
+ transform: 'scale3d(1.05,1.05,1.05)',
7028
+ },
7029
+ })),
7030
+ },
7031
+ media: {
7032
+ gridArea: '1/1/-1 /-1',
7033
+ zIndex: 1,
7034
+ overflow: 'hidden', // relevant for scaling of nested image
7035
+ borderRadius: borderRadiusLarge,
7036
+ },
7037
+ footer: {
7038
+ gridArea: `${isTopAligned ? 2 : 4}/2`,
7039
+ display: 'flex',
7040
+ gap: spacingStaticMedium,
7041
+ justifyContent: 'space-between',
7042
+ ...buildResponsiveStyles(compact, (compactValue) => compactValue
7043
+ ? {
7044
+ alignItems: 'center',
7045
+ flexDirection: 'row',
7046
+ }
7047
+ : {
7048
+ alignItems: 'flex-start',
7049
+ flexDirection: 'column',
7050
+ }),
7051
+ },
7052
+ 'link-or-button-pure': {
7053
+ zIndex: 5,
7054
+ ...buildResponsiveStyles(compact, (compactValue) => ({
7055
+ display: compactValue ? 'inline-block' : 'none',
7056
+ })),
7057
+ },
7058
+ 'link-or-button': {
7059
+ minHeight: '54px', // prevent content shift
7060
+ zIndex: 5,
7061
+ ...buildResponsiveStyles(compact, (compactValue) => ({
7062
+ display: compactValue ? 'none' : 'inline-block',
7063
+ })),
7017
7064
  },
7018
7065
  });
7019
7066
  };
@@ -7028,7 +7075,7 @@ const baseSizes = {
7028
7075
  height: '72px',
7029
7076
  },
7030
7077
  };
7031
- const getComponentCss$D = (size) => {
7078
+ const getComponentCss$E = (size) => {
7032
7079
  return getCss({
7033
7080
  '@global': {
7034
7081
  ':host': {
@@ -7078,7 +7125,7 @@ const cssVariableSpacingBottom = '--p-modal-spacing-bottom'; // TODO: maybe --p-
7078
7125
  const safeZoneVertical = `calc(${spacingFluidSmall} + ${spacingFluidMedium})`;
7079
7126
  const safeZoneHorizontal = `${spacingFluidLarge}`;
7080
7127
  const cssClassNameStretchToFullModalWidth = 'stretch-to-full-modal-width';
7081
- const getComponentCss$C = (isOpen, backdrop, fullscreen, hasDismissButton, hasHeader, hasFooter, theme) => {
7128
+ const getComponentCss$D = (isOpen, backdrop, fullscreen, hasDismissButton, hasHeader, hasFooter, theme) => {
7082
7129
  return getCss({
7083
7130
  '@global': {
7084
7131
  ':host': {
@@ -7215,7 +7262,7 @@ const getThemedColor = (color, themedColors) => {
7215
7262
  };
7216
7263
  return colorMap[color];
7217
7264
  };
7218
- const getComponentCss$B = (model, safeZone, size, color, theme) => {
7265
+ const getComponentCss$C = (model, safeZone, size, color, theme) => {
7219
7266
  const { width, height } = MODEL_SIGNATURES_MANIFEST[model];
7220
7267
  const isSizeInherit = size === 'inherit';
7221
7268
  return getCss({
@@ -7259,7 +7306,8 @@ const getComponentCss$B = (model, safeZone, size, color, theme) => {
7259
7306
  });
7260
7307
  };
7261
7308
 
7262
- const getComponentCss$A = (theme) => {
7309
+ const cssVariableMultiSelectPaddingInlineStart = '--p-internal-multi-select-option-padding-left';
7310
+ const getComponentCss$B = (theme) => {
7263
7311
  const { primaryColor, contrastHighColor, backgroundSurfaceColor, disabledColor, contrastLowColor } = getThemedColors(theme);
7264
7312
  const { primaryColor: primaryColorDark, disabledColor: disabledColorDark, contrastHighColor: contrastHighColorDark, backgroundSurfaceColor: backgroundSurfaceColorDark, contrastLowColor: contrastLowColorDark, } = getThemedColors('dark');
7265
7313
  const { highlightColor } = getHighContrastColors();
@@ -7275,6 +7323,7 @@ const getComponentCss$A = (theme) => {
7275
7323
  justifyContent: 'space-between',
7276
7324
  gap: '12px',
7277
7325
  padding: `${spacingStaticSmall} 12px`,
7326
+ paddingInlineStart: `var(${cssVariableMultiSelectPaddingInlineStart}, 12px)`,
7278
7327
  flex: `1 0 calc(${fontLineHeight} + ${spacingStaticSmall} * 2)`,
7279
7328
  color: contrastHighColor,
7280
7329
  ...prefersColorSchemeDarkMediaQuery(theme, {
@@ -7472,7 +7521,7 @@ const getUnitCounterJssStyle = (isDisabled, theme) => {
7472
7521
 
7473
7522
  const INTERNAL_MULTI_SELECT_SLOT = 'internal-select';
7474
7523
 
7475
- const getComponentCss$z = (direction, isOpen, isDisabled, hideLabel, state, isWithinForm, isNativePopoverCase, theme) => {
7524
+ const getComponentCss$A = (direction, isOpen, isDisabled, hideLabel, state, isWithinForm, isNativePopoverCase, theme) => {
7476
7525
  const { contrastHighColor } = getThemedColors(theme);
7477
7526
  const { contrastHighColor: contrastHighColorDark } = getThemedColors('dark');
7478
7527
  return getCss({
@@ -7552,7 +7601,6 @@ const getComponentCss$z = (direction, isOpen, isDisabled, hideLabel, state, isWi
7552
7601
  };
7553
7602
  // TODO: use getSlottedTextFieldTextareaSelectStyles() instead an manipulate selectors like done with PIN Code or even better make it configurable as parameter
7554
7603
  const getInputStyles = (isDisabled, direction, isOpen, state, theme) => {
7555
- const isDirectionDown = direction === 'down';
7556
7604
  const { primaryColor, disabledColor, backgroundColor, contrastMediumColor } = getThemedColors(theme);
7557
7605
  const { primaryColor: primaryColorDark, disabledColor: disabledColorDark, backgroundColor: backgroundColorDark, contrastMediumColor: contrastMediumColorDark, } = getThemedColors('dark');
7558
7606
  const { formStateColor, formStateHoverColor } = getThemedFormStateColors(theme, state);
@@ -7603,10 +7651,10 @@ const getInputStyles = (isDisabled, direction, isOpen, state, theme) => {
7603
7651
  border: `${borderWidthBase} solid ${isOpen ? primaryColor : formStateColor || contrastMediumColor}`,
7604
7652
  borderRadius: borderRadiusSmall,
7605
7653
  ...(isOpen && {
7606
- [isDirectionDown ? 'paddingBottom' : 'paddingTop']: `calc(${formElementPaddingVertical} + 1px)`, // Add padding to keep same height when border changes
7607
- [isDirectionDown ? 'borderBottom' : 'borderTop']: addImportantToRule(`1px solid ${contrastMediumColor}`),
7608
- [isDirectionDown ? 'borderBottomLeftRadius' : 'borderTopLeftRadius']: 0,
7609
- [isDirectionDown ? 'borderBottomRightRadius' : 'borderTopRightRadius']: 0,
7654
+ ['paddingBottom' ]: `calc(${formElementPaddingVertical} + 1px)`, // Add padding to keep same height when border changes
7655
+ ['borderBottom' ]: addImportantToRule(`1px solid ${contrastMediumColor}`),
7656
+ ['borderBottomLeftRadius' ]: 0,
7657
+ ['borderBottomRightRadius' ]: 0,
7610
7658
  }),
7611
7659
  ...(isDisabled && {
7612
7660
  ...getPlaceholderJssStyle({ color: disabledColor }),
@@ -7620,7 +7668,7 @@ const getInputStyles = (isDisabled, direction, isOpen, state, theme) => {
7620
7668
  background: backgroundColorDark,
7621
7669
  border: `${borderWidthBase} solid ${isOpen ? primaryColorDark : formStateColorDark || contrastMediumColorDark}`,
7622
7670
  ...(isOpen && {
7623
- [isDirectionDown ? 'borderBottom' : 'borderTop']: addImportantToRule(`1px solid ${contrastMediumColorDark}`),
7671
+ ['borderBottom' ]: addImportantToRule(`1px solid ${contrastMediumColorDark}`),
7624
7672
  }),
7625
7673
  ...(isDisabled && {
7626
7674
  ...getPlaceholderJssStyle({ color: disabledColorDark }),
@@ -7632,7 +7680,6 @@ const getInputStyles = (isDisabled, direction, isOpen, state, theme) => {
7632
7680
  };
7633
7681
  };
7634
7682
  const getListStyles$2 = (isOpen, direction, theme) => {
7635
- const isDirectionDown = direction === 'down';
7636
7683
  const { primaryColor, backgroundColor } = getThemedColors(theme);
7637
7684
  const { primaryColor: primaryColorDark, backgroundColor: backgroundColorDark } = getThemedColors('dark');
7638
7685
  return {
@@ -7646,17 +7693,17 @@ const getListStyles$2 = (isOpen, direction, theme) => {
7646
7693
  zIndex: 10,
7647
7694
  left: 0,
7648
7695
  right: 0,
7649
- [isDirectionDown ? 'top' : 'bottom']: '100%',
7696
+ ['top' ]: '100%',
7650
7697
  boxSizing: 'border-box',
7651
7698
  maxHeight: `${8.5 * (MULTI_SELECT_OPTION_HEIGHT + 8) + 6 + 2}px`, // 8.5 options * option height + 8px gap + additional spacing (6px = padding, 2px = border)
7652
7699
  overflowY: 'auto',
7653
7700
  WebkitOverflowScrolling: 'touch',
7654
7701
  background: backgroundColor,
7655
7702
  border: `2px solid ${primaryColor}`,
7656
- [isDirectionDown ? 'borderTop' : 'borderBottom']: 'none',
7703
+ ['borderTop' ]: 'none',
7657
7704
  borderRadius: borderRadiusSmall,
7658
- [isDirectionDown ? 'borderTopLeftRadius' : 'borderBottomLeftRadius']: 0,
7659
- [isDirectionDown ? 'borderTopRightRadius' : 'borderBottomRightRadius']: 0,
7705
+ ['borderTopLeftRadius' ]: 0,
7706
+ ['borderTopRightRadius' ]: 0,
7660
7707
  scrollbarWidth: 'thin', // firefox
7661
7708
  scrollbarColor: 'auto', // firefox
7662
7709
  transition: getTransition('border-color'),
@@ -7668,6 +7715,136 @@ const getListStyles$2 = (isOpen, direction, theme) => {
7668
7715
  };
7669
7716
  };
7670
7717
 
7718
+ const cssVariableSelectPaddingInlineStart = '--p-internal-select-option-padding-left';
7719
+ // TODO: Enforce order of slotted text, img
7720
+ const getComponentCss$z = (theme) => {
7721
+ return getCss({
7722
+ '@global': addImportantToEachRule({
7723
+ ':host': {
7724
+ scrollMargin: '6px', // Aligns option when list is scrolled by navigating with keyboard
7725
+ ...hostHiddenStyles,
7726
+ },
7727
+ '::slotted(img)': {
7728
+ height: fontLineHeight,
7729
+ borderRadius: borderRadiusSmall,
7730
+ },
7731
+ }),
7732
+ ...getOptionStyles(theme),
7733
+ icon: {
7734
+ marginInlineStart: 'auto',
7735
+ },
7736
+ });
7737
+ };
7738
+ // TODO: Copied from multi-select and select-wrapper-dropdown, extract and reuse
7739
+ const getOptionStyles = (theme) => {
7740
+ const { primaryColor: primaryColorDark, contrastHighColor: contrastHighColorDark, disabledColor: disabledColorDark, backgroundSurfaceColor: backgroundSurfaceColorDark, contrastLowColor: contrastLowColorDark, } = getThemedColors('dark');
7741
+ const { primaryColor, contrastHighColor, backgroundSurfaceColor, disabledColor, contrastLowColor } = getThemedColors(theme);
7742
+ const { highlightColor } = getHighContrastColors();
7743
+ return {
7744
+ option: {
7745
+ fontWeight: fontWeightRegular,
7746
+ display: 'flex',
7747
+ gap: '12px',
7748
+ padding: `${spacingStaticSmall} 12px`,
7749
+ paddingInlineStart: `var(${cssVariableSelectPaddingInlineStart}, 12px)`,
7750
+ flex: `1 0 calc(${fontLineHeight} + ${spacingStaticSmall} * 2)`,
7751
+ minHeight: `calc(${fontLineHeight} + ${spacingStaticSmall} * 2)`, // TODO: Added this line to preserve height for empty option
7752
+ color: contrastHighColor,
7753
+ ...prefersColorSchemeDarkMediaQuery(theme, {
7754
+ color: contrastHighColorDark,
7755
+ }),
7756
+ cursor: 'pointer',
7757
+ textAlign: 'start',
7758
+ wordBreak: 'break-word',
7759
+ boxSizing: 'border-box',
7760
+ borderRadius: borderRadiusSmall,
7761
+ transition: `${getTransition('background-color')}, ${getTransition('color')}`,
7762
+ ...getNoResultsOptionJssStyle(),
7763
+ ...hoverMediaQuery({
7764
+ '&:not([aria-disabled]):not(.option--disabled):not([role=status]):hover': {
7765
+ color: isHighContrastMode ? highlightColor : primaryColor,
7766
+ background: contrastLowColor,
7767
+ ...prefersColorSchemeDarkMediaQuery(theme, {
7768
+ color: isHighContrastMode ? highlightColor : primaryColorDark,
7769
+ background: contrastLowColorDark,
7770
+ }),
7771
+ },
7772
+ }),
7773
+ '&--selected': {
7774
+ cursor: 'default',
7775
+ pointerEvents: 'none',
7776
+ background: backgroundSurfaceColor,
7777
+ ...prefersColorSchemeDarkMediaQuery(theme, {
7778
+ background: backgroundSurfaceColorDark,
7779
+ }),
7780
+ },
7781
+ '&--highlighted': {
7782
+ background: contrastLowColor,
7783
+ ...prefersColorSchemeDarkMediaQuery(theme, {
7784
+ background: contrastLowColorDark,
7785
+ }),
7786
+ },
7787
+ '&--highlighted, &--selected': {
7788
+ color: isHighContrastMode ? highlightColor : primaryColor,
7789
+ ...prefersColorSchemeDarkMediaQuery(theme, {
7790
+ color: isHighContrastMode ? highlightColor : primaryColorDark,
7791
+ }),
7792
+ },
7793
+ '&--disabled': {
7794
+ cursor: 'not-allowed',
7795
+ color: disabledColor,
7796
+ ...prefersColorSchemeDarkMediaQuery(theme, {
7797
+ color: disabledColorDark,
7798
+ }),
7799
+ },
7800
+ '&--hidden': {
7801
+ display: 'none',
7802
+ },
7803
+ },
7804
+ };
7805
+ };
7806
+
7807
+ const getComponentCss$y = (isDisabled, theme) => getCss({
7808
+ '@global': {
7809
+ ':host': addImportantToEachRule({
7810
+ ...colorSchemeStyles,
7811
+ ...hostHiddenStyles,
7812
+ }),
7813
+ '::slotted(*)': {
7814
+ [cssVariableSelectPaddingInlineStart]: '28px',
7815
+ [cssVariableMultiSelectPaddingInlineStart]: '28px',
7816
+ },
7817
+ },
7818
+ ...getOptgroupStyles(isDisabled, theme),
7819
+ });
7820
+ const getOptgroupStyles = (isDisabled, theme) => {
7821
+ const { primaryColor, disabledColor } = getThemedColors(theme);
7822
+ const { primaryColor: primaryColorDark, disabledColor: disabledColorDark } = getThemedColors('dark');
7823
+ return {
7824
+ optgroup: {
7825
+ display: 'flex',
7826
+ flexDirection: 'column',
7827
+ gap: spacingStaticSmall,
7828
+ },
7829
+ label: {
7830
+ color: primaryColor,
7831
+ ...prefersColorSchemeDarkMediaQuery(theme, {
7832
+ color: primaryColorDark,
7833
+ }),
7834
+ ...(isDisabled && {
7835
+ color: disabledColor,
7836
+ ...prefersColorSchemeDarkMediaQuery(theme, {
7837
+ color: disabledColorDark,
7838
+ }),
7839
+ }),
7840
+ display: 'block',
7841
+ padding: `${spacingStaticSmall} 12px`,
7842
+ fontSize: fontSizeTextXSmall,
7843
+ fontWeight: fontWeightSemiBold,
7844
+ },
7845
+ };
7846
+ };
7847
+
7671
7848
  const mediaQueryMinS = getMediaQueryMin('s');
7672
7849
  const mediaQueryMaxS = getMediaQueryMax('s');
7673
7850
  // button size needs to be fluid between 320px and 360px viewport width, so that the pagination fits into 320px viewport
@@ -7678,7 +7855,7 @@ const disabledCursorStyle = {
7678
7855
  pointerEvents: 'none', // prevents :hover (has no effect when forced), maybe we can remove it since CSS selectors already cover desired behavior
7679
7856
  };
7680
7857
  const hiddenStyle = { display: 'none' };
7681
- const getComponentCss$y = (activePage, pageTotal, showLastPage, theme) => {
7858
+ const getComponentCss$x = (activePage, pageTotal, showLastPage, theme) => {
7682
7859
  const { primaryColor, disabledColor, hoverColor } = getThemedColors(theme);
7683
7860
  const { primaryColor: primaryColorDark, disabledColor: disabledColorDark, hoverColor: hoverColorDark, } = getThemedColors('dark');
7684
7861
  return getCss({
@@ -7813,7 +7990,7 @@ const removeStyles = (selector, styles) => Object.fromEntries(Object.entries(sty
7813
7990
  return [key, value];
7814
7991
  }));
7815
7992
 
7816
- const getComponentCss$x = (hideLabel, state, isDisabled, isLoading, isWithinForm, length, theme) => {
7993
+ const getComponentCss$w = (hideLabel, state, isDisabled, isLoading, isWithinForm, length, theme) => {
7817
7994
  const inputSize = `calc(${fontLineHeight} + 10px + ${borderWidthBase} * 2 + ${spacingStaticSmall} * 2)`; // equivalent to calculation of input height within form-styles
7818
7995
  const inputStyles = removeStyles('input[readonly]', removeSlottedSelector(getSlottedTextFieldTextareaSelectStyles('input', state, isLoading, theme, {
7819
7996
  // TODO: move into getSlottedTextFieldTextareaSelectStyles()
@@ -7994,7 +8171,7 @@ const getDirectionArrowMap = (theme) => {
7994
8171
  },
7995
8172
  };
7996
8173
  };
7997
- const getComponentCss$w = (direction, isNativePopoverCase, theme) => {
8174
+ const getComponentCss$v = (direction, isNativePopoverCase, theme) => {
7998
8175
  const { hoverColor, backgroundColor, primaryColor, backgroundSurfaceColor } = getThemedColors(theme);
7999
8176
  const { hoverColor: hoverColorDark, primaryColor: primaryColorDark, backgroundSurfaceColor: backgroundSurfaceColorDark, } = getThemedColors('dark');
8000
8177
  const shadowColor = 'rgba(0,0,0,0.3)';
@@ -8104,7 +8281,7 @@ const getComponentCss$w = (direction, isNativePopoverCase, theme) => {
8104
8281
  const getCheckedSVGBackgroundImage = (fill) => {
8105
8282
  return getInlineSVGBackgroundImage(`<circle fill="${fill}" cx="12" cy="12" r="6"/>`);
8106
8283
  };
8107
- const getComponentCss$v = (hideLabel, state, isDisabled, isLoading, theme) => {
8284
+ const getComponentCss$u = (hideLabel, state, isDisabled, isLoading, theme) => {
8108
8285
  const checkedIconColor = isHighContrastMode
8109
8286
  ? getHighContrastColors().canvasColor
8110
8287
  : escapeHashCharacter(getInvertedThemedColors(theme).primaryColor);
@@ -8202,7 +8379,7 @@ const getGradient = (theme, gradientColorTheme) => {
8202
8379
  `rgba(${gradientColor},0)`);
8203
8380
  };
8204
8381
  const prevNextWrapperWidth = `calc(${fontLineHeight} + 24px)`;
8205
- const getComponentCss$u = (gradientColor, isNextHidden, isPrevHidden, scrollIndicatorPosition, hasScrollbar, theme) => {
8382
+ const getComponentCss$t = (gradientColor, isNextHidden, isPrevHidden, scrollIndicatorPosition, hasScrollbar, theme) => {
8206
8383
  const { backgroundColor, backgroundSurfaceColor, hoverColor } = getThemedColors(theme);
8207
8384
  const { backgroundColor: backgroundColorDark, backgroundSurfaceColor: backgroundSurfaceColorDark, hoverColor: hoverColorDark, } = getThemedColors('dark');
8208
8385
  const backgroundColorLight = {
@@ -8369,7 +8546,7 @@ const getColors$2 = (isDisabled, isSelected, theme) => {
8369
8546
  };
8370
8547
  };
8371
8548
  const getItemPadding = (hasIconAndSlottedContent) => hasIconAndSlottedContent ? `13px ${ITEM_PADDING} 13px 13px` : `13px ${ITEM_PADDING}`;
8372
- const getComponentCss$t = (isDisabled, isSelected, hasIcon, hasSlottedContent, theme) => {
8549
+ const getComponentCss$s = (isDisabled, isSelected, hasIcon, hasSlottedContent, theme) => {
8373
8550
  const { buttonColor, labelColor, borderColor, hoverBorderColor } = getColors$2(isDisabled, isSelected, theme);
8374
8551
  const { buttonColor: buttonColorDark, labelColor: labelColorDark, borderColor: borderColorDark, hoverBorderColor: hoverBorderColorDark, } = getColors$2(isDisabled, isSelected, 'dark');
8375
8552
  return getCss({
@@ -8442,7 +8619,7 @@ const getComponentCss$t = (isDisabled, isSelected, hasIcon, hasSlottedContent, t
8442
8619
 
8443
8620
  const MIN_ITEM_WIDTH = 46;
8444
8621
  const MAX_ITEM_WIDTH = 220;
8445
- const getComponentCss$s = (maxWidth, columns) => {
8622
+ const getComponentCss$r = (maxWidth, columns) => {
8446
8623
  maxWidth = (maxWidth > MAX_ITEM_WIDTH && MAX_ITEM_WIDTH) || (maxWidth < MIN_ITEM_WIDTH && MIN_ITEM_WIDTH) || maxWidth;
8447
8624
  return getCss({
8448
8625
  '@global': {
@@ -8690,6 +8867,12 @@ const getListStyles$1 = (direction, theme) => {
8690
8867
  }),
8691
8868
  },
8692
8869
  }),
8870
+ '&--highlighted': {
8871
+ background: contrastLowColor,
8872
+ ...prefersColorSchemeDarkMediaQuery(theme, {
8873
+ background: contrastLowColorDark,
8874
+ }),
8875
+ },
8693
8876
  '&--selected': {
8694
8877
  cursor: 'default',
8695
8878
  pointerEvents: 'none',
@@ -8698,12 +8881,6 @@ const getListStyles$1 = (direction, theme) => {
8698
8881
  background: backgroundSurfaceColorDark,
8699
8882
  }),
8700
8883
  },
8701
- '&--highlighted': {
8702
- background: contrastLowColor,
8703
- ...prefersColorSchemeDarkMediaQuery(theme, {
8704
- background: contrastLowColorDark,
8705
- }),
8706
- },
8707
8884
  '&--highlighted, &--selected': {
8708
8885
  color: isHighContrastMode ? highlightColor : primaryColor,
8709
8886
  ...prefersColorSchemeDarkMediaQuery(theme, {
@@ -8720,25 +8897,32 @@ const getListStyles$1 = (direction, theme) => {
8720
8897
  '&--hidden': {
8721
8898
  display: 'none',
8722
8899
  },
8900
+ '&--indent': {
8901
+ paddingLeft: '28px',
8902
+ },
8723
8903
  },
8724
8904
  optgroup: {
8725
- color: contrastMediumColor,
8905
+ '&--hidden': {
8906
+ display: 'none',
8907
+ },
8908
+ '&--disabled': {
8909
+ color: disabledColor,
8910
+ ...prefersColorSchemeDarkMediaQuery(theme, {
8911
+ color: disabledColorDark,
8912
+ }),
8913
+ },
8914
+ color: primaryColor,
8726
8915
  display: 'block',
8727
- padding: '3px 14px',
8916
+ padding: `${spacingStaticSmall} 12px`,
8917
+ fontSize: fontSizeTextXSmall,
8728
8918
  fontWeight: fontWeightSemiBold,
8729
8919
  ...prefersColorSchemeDarkMediaQuery(theme, {
8730
- color: contrastMediumColorDark,
8920
+ color: primaryColorDark,
8731
8921
  }),
8732
- '&:not(:first-child)': {
8733
- marginTop: spacingStaticSmall,
8734
- },
8735
- '&~$option': {
8736
- paddingLeft: '24px',
8737
- },
8738
8922
  },
8739
8923
  };
8740
8924
  };
8741
- const getComponentCss$r = (direction, isOpen, state, disabled, filter, isNativePopoverCase, theme) => {
8925
+ const getComponentCss$q = (direction, isOpen, state, disabled, filter, isNativePopoverCase, theme) => {
8742
8926
  return getCss(
8743
8927
  // merge because of global styles
8744
8928
  mergeDeep({
@@ -8761,7 +8945,7 @@ const getComponentCss$r = (direction, isOpen, state, disabled, filter, isNativeP
8761
8945
  : getButtonStyles$1(direction, isOpen, state, theme), isOpen && getListStyles$1(direction, theme)));
8762
8946
  };
8763
8947
 
8764
- const getComponentCss$q = (isDisabled, hasCustomDropdown, hideLabel, state, theme) => {
8948
+ const getComponentCss$p = (isDisabled, hasCustomDropdown, hideLabel, state, theme) => {
8765
8949
  return getCss({
8766
8950
  '@global': {
8767
8951
  ':host': {
@@ -8816,93 +9000,6 @@ const getComponentCss$q = (isDisabled, hasCustomDropdown, hideLabel, state, them
8816
9000
  });
8817
9001
  };
8818
9002
 
8819
- // TODO: Enforce order of slotted text, img
8820
- const getComponentCss$p = (theme) => {
8821
- return getCss({
8822
- '@global': addImportantToEachRule({
8823
- ':host': {
8824
- scrollMargin: '6px', // Aligns option when list is scrolled by navigating with keyboard
8825
- ...hostHiddenStyles,
8826
- },
8827
- '::slotted(img)': {
8828
- height: fontLineHeight,
8829
- borderRadius: borderRadiusSmall,
8830
- },
8831
- }),
8832
- ...getOptionStyles(theme),
8833
- icon: {
8834
- marginInlineStart: 'auto',
8835
- },
8836
- });
8837
- };
8838
- // TODO: Copied from multi-select and select-wrapper-dropdown, extract and reuse
8839
- const getOptionStyles = (theme) => {
8840
- const { primaryColor: primaryColorDark, contrastHighColor: contrastHighColorDark, disabledColor: disabledColorDark, backgroundSurfaceColor: backgroundSurfaceColorDark, contrastLowColor: contrastLowColorDark, } = getThemedColors('dark');
8841
- const { primaryColor, contrastHighColor, backgroundSurfaceColor, disabledColor, contrastLowColor } = getThemedColors(theme);
8842
- const { highlightColor } = getHighContrastColors();
8843
- return {
8844
- option: {
8845
- display: 'flex',
8846
- // justifyContent: 'space-between', // TODO: Commenented out
8847
- gap: '12px',
8848
- padding: `${spacingStaticSmall} 12px`,
8849
- flex: `1 0 calc(${fontLineHeight} + ${spacingStaticSmall} * 2)`,
8850
- minHeight: `calc(${fontLineHeight} + ${spacingStaticSmall} * 2)`, // TODO: Added this line to preserve height for empty option
8851
- color: contrastHighColor,
8852
- ...prefersColorSchemeDarkMediaQuery(theme, {
8853
- color: contrastHighColorDark,
8854
- }),
8855
- cursor: 'pointer',
8856
- textAlign: 'start',
8857
- wordBreak: 'break-word',
8858
- boxSizing: 'border-box',
8859
- borderRadius: borderRadiusSmall,
8860
- transition: `${getTransition('background-color')}, ${getTransition('color')}`,
8861
- ...getNoResultsOptionJssStyle(),
8862
- ...hoverMediaQuery({
8863
- '&:not([aria-disabled]):not(.option--disabled):not([role=status]):hover': {
8864
- color: isHighContrastMode ? highlightColor : primaryColor,
8865
- background: contrastLowColor,
8866
- ...prefersColorSchemeDarkMediaQuery(theme, {
8867
- color: isHighContrastMode ? highlightColor : primaryColorDark,
8868
- background: contrastLowColorDark,
8869
- }),
8870
- },
8871
- }),
8872
- '&--selected': {
8873
- cursor: 'default',
8874
- pointerEvents: 'none',
8875
- background: backgroundSurfaceColor,
8876
- ...prefersColorSchemeDarkMediaQuery(theme, {
8877
- background: backgroundSurfaceColorDark,
8878
- }),
8879
- },
8880
- '&--highlighted': {
8881
- background: contrastLowColor,
8882
- ...prefersColorSchemeDarkMediaQuery(theme, {
8883
- background: contrastLowColorDark,
8884
- }),
8885
- },
8886
- '&--highlighted, &--selected': {
8887
- color: isHighContrastMode ? highlightColor : primaryColor,
8888
- ...prefersColorSchemeDarkMediaQuery(theme, {
8889
- color: isHighContrastMode ? highlightColor : primaryColorDark,
8890
- }),
8891
- },
8892
- '&--disabled': {
8893
- cursor: 'not-allowed',
8894
- color: disabledColor,
8895
- ...prefersColorSchemeDarkMediaQuery(theme, {
8896
- color: disabledColorDark,
8897
- }),
8898
- },
8899
- '&--hidden': {
8900
- display: 'none',
8901
- },
8902
- },
8903
- };
8904
- };
8905
-
8906
9003
  const INTERNAL_SELECT_SLOT = 'internal-select';
8907
9004
 
8908
9005
  const getComponentCss$o = (direction, isOpen, isDisabled, hideLabel, state, isWithinForm, isNativePopoverCase, theme) => {
@@ -8963,7 +9060,6 @@ const getComponentCss$o = (direction, isOpen, isDisabled, hideLabel, state, isWi
8963
9060
  // TODO: Rename to JSSStyles
8964
9061
  // TODO: use getSlottedTextFieldTextareaSelectStyles() instead an manipulate selectors like done with PIN Code or even better make it configurable as parameter
8965
9062
  const getButtonStyles = (isDisabled, direction, isOpen, state, theme) => {
8966
- const isDirectionDown = direction === 'down';
8967
9063
  const { primaryColor, disabledColor, backgroundColor, contrastMediumColor } = getThemedColors(theme);
8968
9064
  const { primaryColor: primaryColorDark, disabledColor: disabledColorDark, backgroundColor: backgroundColorDark, contrastMediumColor: contrastMediumColorDark, } = getThemedColors('dark');
8969
9065
  const { formStateColor, formStateHoverColor } = getThemedFormStateColors(theme, state);
@@ -9017,10 +9113,10 @@ const getButtonStyles = (isDisabled, direction, isOpen, state, theme) => {
9017
9113
  border: `${borderWidthBase} solid ${isOpen ? primaryColor : formStateColor || contrastMediumColor}`,
9018
9114
  borderRadius: borderRadiusSmall,
9019
9115
  ...(isOpen && {
9020
- [isDirectionDown ? 'paddingBottom' : 'paddingTop']: `calc(${formElementPaddingVertical} + 1px)`, // Add padding to keep same height when border changes
9021
- [isDirectionDown ? 'borderBottom' : 'borderTop']: addImportantToRule(`1px solid ${contrastMediumColor}`),
9022
- [isDirectionDown ? 'borderBottomLeftRadius' : 'borderTopLeftRadius']: 0,
9023
- [isDirectionDown ? 'borderBottomRightRadius' : 'borderTopRightRadius']: 0,
9116
+ ['paddingBottom' ]: `calc(${formElementPaddingVertical} + 1px)`, // Add padding to keep same height when border changes
9117
+ ['borderBottom' ]: addImportantToRule(`1px solid ${contrastMediumColor}`),
9118
+ ['borderBottomLeftRadius' ]: 0,
9119
+ ['borderBottomRightRadius' ]: 0,
9024
9120
  }),
9025
9121
  ...(isDisabled && {
9026
9122
  ...getPlaceholderJssStyle({ color: disabledColor }),
@@ -9034,7 +9130,7 @@ const getButtonStyles = (isDisabled, direction, isOpen, state, theme) => {
9034
9130
  background: backgroundColorDark,
9035
9131
  border: `${borderWidthBase} solid ${isOpen ? primaryColorDark : formStateColorDark || contrastMediumColorDark}`,
9036
9132
  ...(isOpen && {
9037
- [isDirectionDown ? 'borderBottom' : 'borderTop']: addImportantToRule(`1px solid ${contrastMediumColorDark}`),
9133
+ ['borderBottom' ]: addImportantToRule(`1px solid ${contrastMediumColorDark}`),
9038
9134
  }),
9039
9135
  ...(isDisabled && {
9040
9136
  ...getPlaceholderJssStyle({ color: disabledColorDark }),
@@ -9048,7 +9144,6 @@ const getButtonStyles = (isDisabled, direction, isOpen, state, theme) => {
9048
9144
  // TODO: Rename to JSSStyles
9049
9145
  // TODO: Copied from multi-select, extract and use in select and multi-select
9050
9146
  const getListStyles = (isOpen, direction, theme) => {
9051
- const isDirectionDown = direction === 'down';
9052
9147
  const { primaryColor, backgroundColor } = getThemedColors(theme);
9053
9148
  const { primaryColor: primaryColorDark, backgroundColor: backgroundColorDark } = getThemedColors('dark');
9054
9149
  return {
@@ -9063,17 +9158,17 @@ const getListStyles = (isOpen, direction, theme) => {
9063
9158
  // TODO: Inset inline 0
9064
9159
  left: 0,
9065
9160
  right: 0,
9066
- [isDirectionDown ? 'top' : 'bottom']: '100%',
9161
+ ['top' ]: '100%',
9067
9162
  boxSizing: 'border-box',
9068
- maxHeight: `${8.5 * (MULTI_SELECT_OPTION_HEIGHT + 8) + 6 + 2}px`, // 8.5 options * option height + 8px gap + additional spacing (6px = padding, 2px = border)
9163
+ maxHeight: `${8.5 * (OPTION_HEIGHT + 8) + 6 + 2}px`, // 8.5 options * option height + 8px gap + additional spacing (6px = padding, 2px = border)
9069
9164
  overflowY: 'auto',
9070
9165
  WebkitOverflowScrolling: 'touch',
9071
9166
  background: backgroundColor,
9072
9167
  border: `2px solid ${primaryColor}`,
9073
- [isDirectionDown ? 'borderTop' : 'borderBottom']: 'none',
9168
+ ['borderTop' ]: 'none',
9074
9169
  borderRadius: borderRadiusSmall,
9075
- [isDirectionDown ? 'borderTopLeftRadius' : 'borderBottomLeftRadius']: 0,
9076
- [isDirectionDown ? 'borderTopRightRadius' : 'borderBottomRightRadius']: 0,
9170
+ ['borderTopLeftRadius' ]: 0,
9171
+ ['borderTopRightRadius' ]: 0,
9077
9172
  scrollbarWidth: 'thin', // firefox
9078
9173
  scrollbarColor: 'auto', // firefox
9079
9174
  transition: getTransition('border-color'),
@@ -9822,6 +9917,7 @@ const getThemedBackgroundColor = (tagColor, themedColors) => {
9822
9917
  const colorMap = {
9823
9918
  'background-base': themedColors.backgroundColor,
9824
9919
  'background-surface': themedColors.backgroundSurfaceColor,
9920
+ 'background-frosted': themedColors.backgroundFrostedColor,
9825
9921
  primary: themedColors.primaryColor,
9826
9922
  'notification-info-soft': themedColors.infoSoftColor,
9827
9923
  'notification-warning-soft': themedColors.warningSoftColor,
@@ -9910,6 +10006,9 @@ const getThemedBackgroundHoverColor = (tagColor, themedColors, theme) => {
9910
10006
  const colorMap = {
9911
10007
  'background-base': themedColors[`backgroundColor${keySuffix}`],
9912
10008
  'background-surface': themedColors[`backgroundSurfaceColor${keySuffix}`],
10009
+ 'background-frosted': isDark
10010
+ ? lighten(themedColors.backgroundFrostedColor)
10011
+ : darken(themedColors.backgroundFrostedColor),
9913
10012
  primary: isDark ? themedColors.contrastHighColorLighten : themedColors.contrastHighColor,
9914
10013
  'notification-info-soft': themedColors[`infoSoftColor${keySuffix}`],
9915
10014
  'notification-success-soft': themedColors[`successSoftColor${keySuffix}`],
@@ -9919,50 +10018,50 @@ const getThemedBackgroundHoverColor = (tagColor, themedColors, theme) => {
9919
10018
  return colorMap[tagColor];
9920
10019
  };
9921
10020
 
9922
- const getColors = (themedColors, tagColor, theme) => {
10021
+ const getColors = (tagColor, theme) => {
10022
+ const themedColors = getThemedColors(theme);
9923
10023
  const { primaryColor } = tagColor === 'primary' ? getInvertedThemedColors(theme) : themedColors;
9924
10024
  return {
9925
- primaryColor,
10025
+ textColor: primaryColor,
9926
10026
  backgroundColor: getThemedBackgroundColor(tagColor, themedColors),
9927
10027
  backgroundHoverColor: getThemedBackgroundHoverColor(tagColor, themedColors, theme),
9928
10028
  };
9929
10029
  };
9930
- const getComponentCss$8 = (tagColor, isFocusable, theme) => {
9931
- const themedColors = getThemedColors(theme);
9932
- const themedColorsDark = getThemedColors('dark');
9933
- const { primaryColor, backgroundColor, backgroundHoverColor } = getColors(themedColors, tagColor, theme);
9934
- const { primaryColor: primaryColorDark, backgroundColor: backgroundColorDark, backgroundHoverColor: backgroundHoverColorDark, } = getColors(themedColorsDark, tagColor, 'dark');
10030
+ const getComponentCss$8 = (tagColor, compact, isFocusable, hasIcon, theme) => {
10031
+ const { textColor, backgroundColor, backgroundHoverColor } = getColors(tagColor, theme);
10032
+ const { textColor: textColorDark, backgroundColor: backgroundColorDark, backgroundHoverColor: backgroundHoverColorDark, } = getColors(tagColor, 'dark');
10033
+ const isBackgroundFrosted = tagColor === 'background-frosted';
9935
10034
  return getCss({
9936
10035
  '@global': {
9937
10036
  ':host': {
9938
10037
  display: 'inline-flex',
9939
- verticalAlign: 'top',
9940
- whiteSpace: 'nowrap',
10038
+ verticalAlign: 'top', // TODO: should we set this CSS style at all?
10039
+ whiteSpace: 'nowrap', // TODO: should either be exposed by a controlled CSS variable or a component prop or whitelist as supported custom styles
9941
10040
  ...addImportantToEachRule({
9942
10041
  ...colorSchemeStyles,
9943
10042
  ...hostHiddenStyles,
9944
10043
  }),
9945
10044
  },
9946
10045
  span: {
10046
+ position: 'relative', // necessary as relative anchor to ensure click area of optional slotted focusable element is in sync
9947
10047
  display: 'flex',
9948
10048
  gap: '2px',
9949
- alignItems: 'center',
9950
- position: 'relative',
9951
- padding: '4px 9px',
10049
+ padding: compact ? '1px 6px' : `${spacingStaticXSmall} 9px`,
9952
10050
  borderRadius: borderRadiusSmall,
9953
- background: backgroundColor,
9954
- color: primaryColor,
9955
10051
  font: textXSmallStyle.font,
10052
+ color: textColor,
10053
+ background: backgroundColor,
10054
+ ...(isBackgroundFrosted && frostedGlassStyle),
9956
10055
  ...(isHighContrastMode && {
9957
10056
  outline: '1px solid transparent',
9958
10057
  }),
10058
+ transition: `${getTransition('color')}, ${getTransition('background-color')}, ${getTransition('backdrop-filter')}`, // transition style should always be applied to have a smooth color change in case color prop gets updated during runtime
9959
10059
  ...prefersColorSchemeDarkMediaQuery(theme, {
10060
+ color: textColorDark,
9960
10061
  background: backgroundColorDark,
9961
- color: primaryColorDark,
9962
10062
  }),
9963
10063
  ...(isFocusable &&
9964
10064
  hoverMediaQuery({
9965
- transition: getTransition('background-color'),
9966
10065
  '&:hover': {
9967
10066
  background: backgroundHoverColor,
9968
10067
  ...prefersColorSchemeDarkMediaQuery(theme, {
@@ -9973,17 +10072,11 @@ const getComponentCss$8 = (tagColor, isFocusable, theme) => {
9973
10072
  },
9974
10073
  '::slotted': addImportantToEachRule({
9975
10074
  '&(a),&(button)': {
9976
- ...getResetInitialStylesForSlottedAnchor,
9977
- display: 'inline',
9978
- position: 'static',
10075
+ all: 'unset', // resets any ua-style + custom style set in light dom
9979
10076
  textDecoration: 'underline',
9980
10077
  cursor: 'pointer',
9981
10078
  font: 'inherit',
9982
10079
  color: 'inherit',
9983
- WebkitAppearance: 'none', // iOS safari
9984
- appearance: 'none',
9985
- border: 0,
9986
- textAlign: 'start',
9987
10080
  },
9988
10081
  '&(a)::before,&(button)::before': {
9989
10082
  content: '""',
@@ -9998,15 +10091,15 @@ const getComponentCss$8 = (tagColor, isFocusable, theme) => {
9998
10091
  },
9999
10092
  }),
10000
10093
  },
10001
- icon: {
10002
- marginInlineStart: '-2px', // compensate white space of svg icon and optimize visual alignment
10003
- alignSelf: 'flex-start',
10004
- ...(['neutral-contrast-high', 'primary'].includes(tagColor) && {
10005
- ...prefersColorSchemeDarkMediaQuery(theme, {
10094
+ ...(hasIcon && {
10095
+ icon: {
10096
+ marginInlineStart: '-2px', // compensate white space of svg icon and optimize visual alignment
10097
+ ...(!isHighContrastMode &&
10098
+ tagColor === 'primary' && {
10006
10099
  filter: 'invert(1)',
10007
10100
  }),
10008
- }),
10009
- },
10101
+ },
10102
+ }),
10010
10103
  });
10011
10104
  };
10012
10105
 
@@ -10400,4 +10493,4 @@ const getComponentCss = (size, theme) => {
10400
10493
  });
10401
10494
  };
10402
10495
 
10403
- export { getComponentCss$16 as getAccordionCss, getComponentCss$15 as getBannerCss, getComponentCss$11 as getButtonCss, getComponentCss$14 as getButtonGroupCss, getComponentCss$13 as getButtonPureCss, getComponentCss$12 as getButtonTileCss, getComponentCss$10 as getCanvasCss, getComponentCss$$ as getCarouselCss, getComponentCss$_ as getCheckboxWrapperCss, getComponentCss$Z as getContentWrapperCss, getComponentCss$Y as getCrestCss, getComponentCss$X as getDisplayCss, getComponentCss$W as getDividerCss, getComponentCss$U as getFieldsetCss, getComponentCss$V as getFieldsetWrapperCss, getComponentCss$S as getFlexCss, getComponentCss$T as getFlexItemCss, getComponentCss$P as getFlyoutCss, getComponentCss$R as getFlyoutMultilevelCss, getComponentCss$Q as getFlyoutMultilevelItemCss, getFunctionalComponentLabelStyles, getFunctionalComponentLoadingMessageStyles, getFunctionalComponentRequiredStyles, getFunctionalComponentStateMessageStyles, getComponentCss$N as getGridCss, getComponentCss$O as getGridItemCss, getComponentCss$M as getHeadingCss, getComponentCss$L as getHeadlineCss, getComponentCss$K as getIconCss, getComponentCss$J as getInlineNotificationCss, getComponentCss$H as getLinkCss, getComponentCss$I as getLinkPureCss, getComponentCss$H as getLinkSocialCss, getComponentCss$E as getLinkTileCss, getComponentCss$G as getLinkTileModelSignatureCss, getComponentCss$F as getLinkTileProductCss, getComponentCss$D as getMarqueCss, getComponentCss$C as getModalCss, getComponentCss$B as getModelSignatureCss, getComponentCss$z as getMultiSelectCss, getComponentCss$A as getMultiSelectOptionCss, getComponentCss$y as getPaginationCss, getComponentCss$x as getPinCodeCss, getComponentCss$w as getPopoverCss, getComponentCss$v as getRadioButtonWrapperCss, getComponentCss$u as getScrollerCss, getComponentCss$s as getSegmentedControlCss, getComponentCss$t as getSegmentedControlItemCss, getComponentCss$o as getSelectCss, getComponentCss$p as getSelectOptionCss, getComponentCss$q as getSelectWrapperCss, getComponentCss$r 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 };
10496
+ export { getComponentCss$17 as getAccordionCss, getComponentCss$16 as getBannerCss, getComponentCss$12 as getButtonCss, getComponentCss$15 as getButtonGroupCss, getComponentCss$14 as getButtonPureCss, getComponentCss$13 as getButtonTileCss, getComponentCss$11 as getCanvasCss, getComponentCss$10 as getCarouselCss, getComponentCss$$ as getCheckboxWrapperCss, getComponentCss$_ as getContentWrapperCss, getComponentCss$Z as getCrestCss, getComponentCss$Y as getDisplayCss, getComponentCss$X as getDividerCss, getComponentCss$V as getFieldsetCss, getComponentCss$W as getFieldsetWrapperCss, getComponentCss$T as getFlexCss, getComponentCss$U as getFlexItemCss, getComponentCss$Q as getFlyoutCss, getComponentCss$S as getFlyoutMultilevelCss, getComponentCss$R as getFlyoutMultilevelItemCss, getFunctionalComponentLabelStyles, getFunctionalComponentLoadingMessageStyles, getFunctionalComponentRequiredStyles, getFunctionalComponentStateMessageStyles, getComponentCss$O as getGridCss, getComponentCss$P as getGridItemCss, getComponentCss$N as getHeadingCss, getComponentCss$M as getHeadlineCss, getComponentCss$L as getIconCss, getComponentCss$K as getInlineNotificationCss, getComponentCss$I as getLinkCss, getComponentCss$J as getLinkPureCss, getComponentCss$I as getLinkSocialCss, getComponentCss$F as getLinkTileCss, getComponentCss$H as getLinkTileModelSignatureCss, getComponentCss$G as getLinkTileProductCss, getComponentCss$E as getMarqueCss, getComponentCss$D as getModalCss, getComponentCss$C as getModelSignatureCss, getComponentCss$A as getMultiSelectCss, getComponentCss$B as getMultiSelectOptionCss, getComponentCss$y as getOptgroupCss, getComponentCss$x as getPaginationCss, getComponentCss$w as getPinCodeCss, getComponentCss$v as getPopoverCss, getComponentCss$u as getRadioButtonWrapperCss, getComponentCss$t as getScrollerCss, getComponentCss$r as getSegmentedControlCss, getComponentCss$s as getSegmentedControlItemCss, getComponentCss$o as getSelectCss, getComponentCss$z as getSelectOptionCss, getComponentCss$p as getSelectWrapperCss, getComponentCss$q 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 };