@porsche-design-system/components-react 3.0.0-alpha.2 → 3.0.0-alpha.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (347) hide show
  1. package/CHANGELOG.md +385 -0
  2. package/esm/lib/components/accordion.wrapper.js +2 -1
  3. package/esm/lib/components/banner.wrapper.js +3 -3
  4. package/esm/lib/components/button-tile.wrapper.js +22 -0
  5. package/esm/lib/components/carousel.wrapper.js +4 -3
  6. package/esm/lib/components/divider.wrapper.js +3 -3
  7. package/esm/lib/components/fieldset-wrapper.wrapper.js +1 -0
  8. package/esm/lib/components/fieldset.wrapper.js +22 -0
  9. package/esm/lib/components/link-social.wrapper.js +1 -1
  10. package/esm/lib/components/link-tile-model-signature.wrapper.js +22 -0
  11. package/esm/lib/components/link-tile.wrapper.js +1 -1
  12. package/esm/lib/components/modal.wrapper.js +4 -3
  13. package/esm/lib/components/pagination.wrapper.js +4 -3
  14. package/esm/lib/components/scroller.wrapper.js +3 -3
  15. package/esm/lib/components/segmented-control.wrapper.js +2 -1
  16. package/esm/lib/components/stepper-horizontal.wrapper.js +2 -1
  17. package/esm/lib/components/switch.wrapper.js +2 -1
  18. package/esm/lib/components/table.wrapper.js +6 -3
  19. package/esm/lib/components/tabs-bar.wrapper.js +4 -3
  20. package/esm/lib/components/tabs.wrapper.js +4 -3
  21. package/esm/lib/components/text-field-wrapper.wrapper.js +3 -3
  22. package/esm/lib/components/text-list.wrapper.js +3 -3
  23. package/esm/lib/components/textarea-wrapper.wrapper.js +3 -3
  24. package/esm/public-api.js +3 -0
  25. package/lib/components/accordion.wrapper.d.ts +12 -4
  26. package/lib/components/accordion.wrapper.js +2 -1
  27. package/lib/components/banner.wrapper.d.ts +22 -4
  28. package/lib/components/banner.wrapper.js +3 -3
  29. package/lib/components/button-group.wrapper.d.ts +2 -2
  30. package/lib/components/button-pure.wrapper.d.ts +15 -15
  31. package/lib/components/button-tile.wrapper.d.ts +120 -0
  32. package/lib/components/button-tile.wrapper.js +24 -0
  33. package/lib/components/button.wrapper.d.ts +5 -5
  34. package/lib/components/carousel.wrapper.d.ts +34 -10
  35. package/lib/components/carousel.wrapper.js +4 -3
  36. package/lib/components/checkbox-wrapper.wrapper.d.ts +5 -5
  37. package/lib/components/content-wrapper.wrapper.d.ts +2 -2
  38. package/lib/components/display.wrapper.d.ts +2 -2
  39. package/lib/components/divider.wrapper.d.ts +13 -5
  40. package/lib/components/divider.wrapper.js +3 -3
  41. package/lib/components/fieldset-wrapper.wrapper.d.ts +6 -5
  42. package/lib/components/fieldset-wrapper.wrapper.js +1 -0
  43. package/lib/components/fieldset.wrapper.d.ts +56 -0
  44. package/lib/components/fieldset.wrapper.js +24 -0
  45. package/lib/components/flex-item.wrapper.d.ts +2 -2
  46. package/lib/components/flex.wrapper.d.ts +2 -2
  47. package/lib/components/grid-item.wrapper.d.ts +2 -2
  48. package/lib/components/grid.wrapper.d.ts +2 -2
  49. package/lib/components/heading.wrapper.d.ts +2 -2
  50. package/lib/components/headline.wrapper.d.ts +2 -2
  51. package/lib/components/icon.wrapper.d.ts +2 -2
  52. package/lib/components/index.d.ts +3 -0
  53. package/lib/components/inline-notification.wrapper.d.ts +5 -5
  54. package/lib/components/link-pure.wrapper.d.ts +15 -15
  55. package/lib/components/link-social.wrapper.d.ts +8 -8
  56. package/lib/components/link-social.wrapper.js +1 -1
  57. package/lib/components/link-tile-model-signature.wrapper.d.ts +64 -0
  58. package/lib/components/link-tile-model-signature.wrapper.js +24 -0
  59. package/lib/components/link-tile.wrapper.d.ts +9 -9
  60. package/lib/components/link-tile.wrapper.js +1 -1
  61. package/lib/components/link.wrapper.d.ts +5 -5
  62. package/lib/components/marque.wrapper.d.ts +5 -5
  63. package/lib/components/modal.wrapper.d.ts +22 -6
  64. package/lib/components/modal.wrapper.js +4 -3
  65. package/lib/components/model-signature.wrapper.d.ts +2 -2
  66. package/lib/components/pagination.wrapper.d.ts +31 -15
  67. package/lib/components/pagination.wrapper.js +4 -3
  68. package/lib/components/popover.wrapper.d.ts +5 -5
  69. package/lib/components/radio-button-wrapper.wrapper.d.ts +5 -5
  70. package/lib/components/scroller.wrapper.d.ts +35 -11
  71. package/lib/components/scroller.wrapper.js +3 -3
  72. package/lib/components/segmented-control-item.wrapper.d.ts +5 -5
  73. package/lib/components/segmented-control.wrapper.d.ts +12 -4
  74. package/lib/components/segmented-control.wrapper.js +2 -1
  75. package/lib/components/select-wrapper.wrapper.d.ts +7 -7
  76. package/lib/components/spinner.wrapper.d.ts +2 -2
  77. package/lib/components/stepper-horizontal-item.wrapper.d.ts +5 -5
  78. package/lib/components/stepper-horizontal.wrapper.d.ts +13 -5
  79. package/lib/components/stepper-horizontal.wrapper.js +2 -1
  80. package/lib/components/switch.wrapper.d.ts +13 -5
  81. package/lib/components/switch.wrapper.js +2 -1
  82. package/lib/components/table-body.wrapper.d.ts +2 -2
  83. package/lib/components/table-cell.wrapper.d.ts +2 -2
  84. package/lib/components/table-head-cell.wrapper.d.ts +2 -2
  85. package/lib/components/table-head-row.wrapper.d.ts +2 -2
  86. package/lib/components/table-head.wrapper.d.ts +2 -2
  87. package/lib/components/table-row.wrapper.d.ts +2 -2
  88. package/lib/components/table.wrapper.d.ts +21 -5
  89. package/lib/components/table.wrapper.js +6 -3
  90. package/lib/components/tabs-bar.wrapper.d.ts +27 -11
  91. package/lib/components/tabs-bar.wrapper.js +4 -3
  92. package/lib/components/tabs-item.wrapper.d.ts +2 -2
  93. package/lib/components/tabs.wrapper.d.ts +27 -11
  94. package/lib/components/tabs.wrapper.js +4 -3
  95. package/lib/components/tag-dismissible.wrapper.d.ts +2 -2
  96. package/lib/components/tag.wrapper.d.ts +5 -5
  97. package/lib/components/text-field-wrapper.wrapper.d.ts +17 -9
  98. package/lib/components/text-field-wrapper.wrapper.js +3 -3
  99. package/lib/components/text-list-item.wrapper.d.ts +2 -2
  100. package/lib/components/text-list.wrapper.d.ts +19 -11
  101. package/lib/components/text-list.wrapper.js +3 -3
  102. package/lib/components/text.wrapper.d.ts +2 -2
  103. package/lib/components/textarea-wrapper.wrapper.d.ts +15 -7
  104. package/lib/components/textarea-wrapper.wrapper.js +3 -3
  105. package/lib/components/toast.wrapper.d.ts +2 -2
  106. package/lib/types.d.ts +164 -68
  107. package/package.json +2 -2
  108. package/public-api.js +6 -0
  109. package/ssr/components/dist/styles/esm/styles-entry.js +783 -2672
  110. package/ssr/components/dist/utils/esm/utils-entry.js +153 -2048
  111. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/components/accordion.wrapper.js +2 -1
  112. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/components/banner.wrapper.js +4 -4
  113. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/components/button-tile.wrapper.js +38 -0
  114. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/components/carousel.wrapper.js +5 -4
  115. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/components/divider.wrapper.js +4 -4
  116. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/components/fieldset-wrapper.wrapper.js +1 -0
  117. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/components/fieldset.wrapper.js +38 -0
  118. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/components/link-social.wrapper.js +1 -1
  119. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/components/link-tile-model-signature.wrapper.js +38 -0
  120. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/components/link-tile.wrapper.js +1 -1
  121. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/components/modal.wrapper.js +5 -4
  122. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/components/pagination.wrapper.js +5 -4
  123. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/components/scroller.wrapper.js +4 -4
  124. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/components/segmented-control.wrapper.js +2 -1
  125. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/components/stepper-horizontal.wrapper.js +2 -1
  126. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/components/switch.wrapper.js +2 -1
  127. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/components/table.wrapper.js +7 -4
  128. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/components/tabs-bar.wrapper.js +5 -4
  129. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/components/tabs.wrapper.js +5 -4
  130. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/components/text-field-wrapper.wrapper.js +4 -4
  131. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/components/text-list.wrapper.js +4 -4
  132. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/components/textarea-wrapper.wrapper.js +4 -4
  133. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/accordion.js +4 -1
  134. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/banner.js +6 -2
  135. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/button-group.js +1 -1
  136. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/button-pure.js +4 -1
  137. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/button-tile.js +88 -0
  138. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/button.js +4 -1
  139. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/carousel.js +13 -3
  140. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/checkbox-wrapper.js +1 -1
  141. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/content-wrapper.js +1 -1
  142. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/display.js +1 -1
  143. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/divider.js +7 -2
  144. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/fieldset-wrapper.js +2 -1
  145. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/fieldset.js +22 -0
  146. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/flex-item.js +1 -1
  147. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/flex.js +1 -1
  148. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/grid-item.js +1 -1
  149. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/grid.js +1 -1
  150. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/heading.js +1 -1
  151. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/headline.js +1 -1
  152. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/icon.js +10 -3
  153. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/inline-notification.js +4 -1
  154. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/link-pure.js +4 -1
  155. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/link-social.js +5 -2
  156. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/link-tile-model-signature.js +95 -0
  157. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/link-tile.js +11 -12
  158. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/link.js +4 -1
  159. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/marque.js +2 -2
  160. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/modal.js +10 -3
  161. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/model-signature.js +1 -1
  162. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/pagination.js +17 -4
  163. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/popover.js +4 -1
  164. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/radio-button-wrapper.js +1 -1
  165. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/scroller.js +10 -3
  166. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/segmented-control-item.js +4 -1
  167. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/segmented-control.js +1 -1
  168. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/select-wrapper.js +4 -1
  169. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/spinner.js +1 -1
  170. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/state-message.js +3 -0
  171. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/stepper-horizontal-item.js +4 -1
  172. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/stepper-horizontal.js +4 -1
  173. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/switch.js +4 -1
  174. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/table-body.js +1 -1
  175. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/table-cell.js +1 -1
  176. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/table-head-cell.js +4 -1
  177. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/table-head-row.js +1 -1
  178. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/table-head.js +1 -1
  179. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/table-row.js +1 -1
  180. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/table.js +7 -10
  181. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/tabs-bar.js +8 -2
  182. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/tabs-item.js +1 -1
  183. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/tabs.js +4 -1
  184. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/tag-dismissible.js +8 -2
  185. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/tag.js +13 -2
  186. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/text-field-wrapper.js +16 -7
  187. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/text-list-item.js +1 -1
  188. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/text-list.js +3 -3
  189. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/text.js +14 -2
  190. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/textarea-wrapper.js +1 -1
  191. package/ssr/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/toast.js +1 -1
  192. package/ssr/components-react/projects/react-ssr-wrapper/src/public-api.js +6 -0
  193. package/ssr/esm/components/dist/styles/esm/styles-entry.js +754 -2646
  194. package/ssr/esm/components/dist/utils/esm/utils-entry.js +152 -2049
  195. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/components/accordion.wrapper.js +2 -1
  196. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/components/banner.wrapper.js +4 -4
  197. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/components/button-tile.wrapper.js +36 -0
  198. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/components/carousel.wrapper.js +5 -4
  199. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/components/divider.wrapper.js +4 -4
  200. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/components/fieldset-wrapper.wrapper.js +1 -0
  201. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/components/fieldset.wrapper.js +36 -0
  202. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/components/link-social.wrapper.js +1 -1
  203. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/components/link-tile-model-signature.wrapper.js +36 -0
  204. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/components/link-tile.wrapper.js +1 -1
  205. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/components/modal.wrapper.js +5 -4
  206. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/components/pagination.wrapper.js +5 -4
  207. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/components/scroller.wrapper.js +4 -4
  208. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/components/segmented-control.wrapper.js +2 -1
  209. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/components/stepper-horizontal.wrapper.js +2 -1
  210. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/components/switch.wrapper.js +2 -1
  211. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/components/table.wrapper.js +7 -4
  212. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/components/tabs-bar.wrapper.js +5 -4
  213. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/components/tabs.wrapper.js +5 -4
  214. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/components/text-field-wrapper.wrapper.js +4 -4
  215. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/components/text-list.wrapper.js +4 -4
  216. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/components/textarea-wrapper.wrapper.js +4 -4
  217. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/accordion.js +6 -3
  218. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/banner.js +7 -3
  219. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/button-group.js +3 -3
  220. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/button-pure.js +6 -3
  221. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/button-tile.js +86 -0
  222. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/button.js +6 -3
  223. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/carousel.js +14 -4
  224. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/checkbox-wrapper.js +3 -3
  225. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/content-wrapper.js +3 -3
  226. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/display.js +3 -3
  227. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/divider.js +8 -3
  228. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/fieldset-wrapper.js +4 -3
  229. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/fieldset.js +20 -0
  230. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/flex-item.js +3 -3
  231. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/flex.js +3 -3
  232. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/grid-item.js +3 -3
  233. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/grid.js +3 -3
  234. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/heading.js +3 -3
  235. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/headline.js +3 -3
  236. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/icon.js +11 -4
  237. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/inline-notification.js +6 -3
  238. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/link-pure.js +6 -3
  239. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/link-social.js +7 -4
  240. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/link-tile-model-signature.js +93 -0
  241. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/link-tile.js +12 -13
  242. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/link.js +6 -3
  243. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/marque.js +2 -2
  244. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/modal.js +10 -3
  245. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/model-signature.js +1 -1
  246. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/pagination.js +17 -4
  247. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/popover.js +4 -1
  248. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/radio-button-wrapper.js +1 -1
  249. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/scroller.js +10 -3
  250. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/segmented-control-item.js +4 -1
  251. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/segmented-control.js +1 -1
  252. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/select-wrapper.js +4 -1
  253. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/spinner.js +1 -1
  254. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/state-message.js +3 -0
  255. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/stepper-horizontal-item.js +4 -1
  256. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/stepper-horizontal.js +4 -1
  257. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/switch.js +4 -1
  258. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/table-body.js +1 -1
  259. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/table-cell.js +1 -1
  260. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/table-head-cell.js +6 -3
  261. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/table-head-row.js +3 -3
  262. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/table-head.js +3 -3
  263. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/table-row.js +3 -3
  264. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/table.js +8 -11
  265. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/tabs-bar.js +8 -2
  266. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/tabs-item.js +1 -1
  267. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/tabs.js +4 -1
  268. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/tag-dismissible.js +8 -2
  269. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/tag.js +13 -2
  270. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/text-field-wrapper.js +17 -8
  271. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/text-list-item.js +1 -1
  272. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/text-list.js +3 -3
  273. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/text.js +14 -2
  274. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/textarea-wrapper.js +1 -1
  275. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/lib/dsr-components/toast.js +1 -1
  276. package/ssr/esm/components-react/projects/react-ssr-wrapper/src/public-api.js +3 -0
  277. package/ssr/lib/components/accordion.wrapper.d.ts +12 -4
  278. package/ssr/lib/components/banner.wrapper.d.ts +22 -4
  279. package/ssr/lib/components/button-group.wrapper.d.ts +2 -2
  280. package/ssr/lib/components/button-pure.wrapper.d.ts +15 -15
  281. package/ssr/lib/components/button-tile.wrapper.d.ts +120 -0
  282. package/ssr/lib/components/button.wrapper.d.ts +5 -5
  283. package/ssr/lib/components/carousel.wrapper.d.ts +34 -10
  284. package/ssr/lib/components/checkbox-wrapper.wrapper.d.ts +5 -5
  285. package/ssr/lib/components/content-wrapper.wrapper.d.ts +2 -2
  286. package/ssr/lib/components/display.wrapper.d.ts +2 -2
  287. package/ssr/lib/components/divider.wrapper.d.ts +13 -5
  288. package/ssr/lib/components/fieldset-wrapper.wrapper.d.ts +6 -5
  289. package/ssr/lib/components/fieldset.wrapper.d.ts +56 -0
  290. package/ssr/lib/components/flex-item.wrapper.d.ts +2 -2
  291. package/ssr/lib/components/flex.wrapper.d.ts +2 -2
  292. package/ssr/lib/components/grid-item.wrapper.d.ts +2 -2
  293. package/ssr/lib/components/grid.wrapper.d.ts +2 -2
  294. package/ssr/lib/components/heading.wrapper.d.ts +2 -2
  295. package/ssr/lib/components/headline.wrapper.d.ts +2 -2
  296. package/ssr/lib/components/icon.wrapper.d.ts +2 -2
  297. package/ssr/lib/components/index.d.ts +3 -0
  298. package/ssr/lib/components/inline-notification.wrapper.d.ts +5 -5
  299. package/ssr/lib/components/link-pure.wrapper.d.ts +15 -15
  300. package/ssr/lib/components/link-social.wrapper.d.ts +8 -8
  301. package/ssr/lib/components/link-tile-model-signature.wrapper.d.ts +64 -0
  302. package/ssr/lib/components/link-tile.wrapper.d.ts +9 -9
  303. package/ssr/lib/components/link.wrapper.d.ts +5 -5
  304. package/ssr/lib/components/marque.wrapper.d.ts +5 -5
  305. package/ssr/lib/components/modal.wrapper.d.ts +22 -6
  306. package/ssr/lib/components/model-signature.wrapper.d.ts +2 -2
  307. package/ssr/lib/components/pagination.wrapper.d.ts +31 -15
  308. package/ssr/lib/components/popover.wrapper.d.ts +5 -5
  309. package/ssr/lib/components/radio-button-wrapper.wrapper.d.ts +5 -5
  310. package/ssr/lib/components/scroller.wrapper.d.ts +35 -11
  311. package/ssr/lib/components/segmented-control-item.wrapper.d.ts +5 -5
  312. package/ssr/lib/components/segmented-control.wrapper.d.ts +12 -4
  313. package/ssr/lib/components/select-wrapper.wrapper.d.ts +7 -7
  314. package/ssr/lib/components/spinner.wrapper.d.ts +2 -2
  315. package/ssr/lib/components/stepper-horizontal-item.wrapper.d.ts +5 -5
  316. package/ssr/lib/components/stepper-horizontal.wrapper.d.ts +13 -5
  317. package/ssr/lib/components/switch.wrapper.d.ts +13 -5
  318. package/ssr/lib/components/table-body.wrapper.d.ts +2 -2
  319. package/ssr/lib/components/table-cell.wrapper.d.ts +2 -2
  320. package/ssr/lib/components/table-head-cell.wrapper.d.ts +2 -2
  321. package/ssr/lib/components/table-head-row.wrapper.d.ts +2 -2
  322. package/ssr/lib/components/table-head.wrapper.d.ts +2 -2
  323. package/ssr/lib/components/table-row.wrapper.d.ts +2 -2
  324. package/ssr/lib/components/table.wrapper.d.ts +21 -5
  325. package/ssr/lib/components/tabs-bar.wrapper.d.ts +27 -11
  326. package/ssr/lib/components/tabs-item.wrapper.d.ts +2 -2
  327. package/ssr/lib/components/tabs.wrapper.d.ts +27 -11
  328. package/ssr/lib/components/tag-dismissible.wrapper.d.ts +2 -2
  329. package/ssr/lib/components/tag.wrapper.d.ts +5 -5
  330. package/ssr/lib/components/text-field-wrapper.wrapper.d.ts +17 -9
  331. package/ssr/lib/components/text-list-item.wrapper.d.ts +2 -2
  332. package/ssr/lib/components/text-list.wrapper.d.ts +19 -11
  333. package/ssr/lib/components/text.wrapper.d.ts +2 -2
  334. package/ssr/lib/components/textarea-wrapper.wrapper.d.ts +15 -7
  335. package/ssr/lib/components/toast.wrapper.d.ts +2 -2
  336. package/ssr/lib/dsr-components/button-tile.d.ts +5 -0
  337. package/ssr/lib/dsr-components/carousel.d.ts +1 -1
  338. package/ssr/lib/dsr-components/fieldset-wrapper.d.ts +1 -0
  339. package/ssr/lib/dsr-components/fieldset.d.ts +5 -0
  340. package/ssr/lib/dsr-components/link-social.d.ts +1 -1
  341. package/ssr/lib/dsr-components/link-tile-model-signature.d.ts +5 -0
  342. package/ssr/lib/dsr-components/modal.d.ts +2 -1
  343. package/ssr/lib/dsr-components/table.d.ts +0 -6
  344. package/ssr/lib/dsr-components/text-field-wrapper.d.ts +2 -0
  345. package/ssr/lib/types.d.ts +164 -68
  346. package/styles/_index.scss +1 -0
  347. package/styles/scss.scss +0 -1
@@ -49,6 +49,10 @@ const dropShadowLowStyle = {
49
49
  filter: `drop-shadow(0px 3px 8px ${_dropShadowBackgroundColor})`,
50
50
  };
51
51
 
52
+ const dropShadowHighStyle = {
53
+ filter: `drop-shadow(0px 8px 40px ${_dropShadowBackgroundColor})`,
54
+ };
55
+
52
56
  const fontFamily = "'Porsche Next','Arial Narrow',Arial,'Heiti SC',SimHei,sans-serif";
53
57
 
54
58
  const fontHyphenationStyle = {
@@ -58,6 +62,8 @@ const fontHyphenationStyle = {
58
62
 
59
63
  const fontLineHeight = 'calc(6px + 2.125ex)';
60
64
 
65
+ const fontSizeTextXXSmall = '.75rem';
66
+
61
67
  const fontSizeTextXSmall = 'clamp(0.81rem, 0.23vw + 0.77rem, 0.88rem)';
62
68
 
63
69
  const fontSizeTextSmall = '1rem';
@@ -69,6 +75,7 @@ const fontSizeTextLarge = 'clamp(1.27rem, 0.51vw + 1.16rem, 1.78rem)';
69
75
  const fontSizeTextXLarge = 'clamp(1.42rem, 0.94vw + 1.23rem, 2.37rem)';
70
76
 
71
77
  const fontSizeText = {
78
+ xxSmall: fontSizeTextXXSmall,
72
79
  xSmall: fontSizeTextXSmall,
73
80
  small: fontSizeTextSmall,
74
81
  medium: fontSizeTextMedium,
@@ -86,7 +93,7 @@ const fontSizeHeadingXLarge = fontSizeTextXLarge;
86
93
 
87
94
  const fontSizeHeadingXXLarge = 'clamp(1.6rem, 1.56vw + 1.29rem, 3.16rem)';
88
95
 
89
- const fontSizeHeadingXXXLarge = 'clamp(1.8rem, 2.41vw + 1.32rem, 4.21rem)';
96
+ const fontSizeDisplaySmall = 'clamp(1.8rem, 2.41vw + 1.32rem, 4.21rem)';
90
97
 
91
98
  const fontSizeDisplayMedium = 'clamp(2.03rem, 3.58vw + 1.31rem, 5.61rem)';
92
99
 
@@ -94,20 +101,18 @@ const fontSizeDisplayLarge = 'clamp(2.28rem, 5.2vw + 1.24rem, 7.48rem)';
94
101
 
95
102
  const fontWeightRegular = 400;
96
103
 
97
- const fontWeightSemiBold$1 = 600;
104
+ const fontWeightSemiBold = 600;
98
105
 
99
106
  const fontWeightBold = 700;
100
107
 
101
108
  const fontWeight = {
102
109
  regular: fontWeightRegular,
103
- semiBold: fontWeightSemiBold$1,
110
+ semiBold: fontWeightSemiBold,
104
111
  bold: fontWeightBold,
105
112
  };
106
113
 
107
114
  const fontStyleNormal = 'normal';
108
115
 
109
- const fontStyleItalic = 'italic';
110
-
111
116
  const fontVariant = 'normal';
112
117
 
113
118
  const backdropFilter = 'blur(32px)';
@@ -116,19 +121,42 @@ const frostedGlassStyle = {
116
121
  backdropFilter,
117
122
  };
118
123
 
119
- const breakpointBase = '0px';
124
+ const _gradient = 'rgba(31,31,31,0.9) 0%,' +
125
+ 'rgba(31,31,31,0.9) 20%,' +
126
+ 'rgba(31,31,31,0.852589) 26.67%,' +
127
+ 'rgba(32,32,32,0.768225) 33.33%,' +
128
+ 'rgba(33,33,33,0.668116) 40%,' +
129
+ 'rgba(34,34,34,0.557309) 46.67%,' +
130
+ 'rgba(35,35,35,0.442691) 53.33%,' +
131
+ 'rgba(36,36,36,0.331884) 60%,' +
132
+ 'rgba(37,37,37,0.231775) 66.67%,' +
133
+ 'rgba(38,38,38,0.147411) 73.33%,' +
134
+ 'rgba(39,39,39,0.0816599) 80%,' +
135
+ 'rgba(39,39,39,0.03551) 86.67%,' +
136
+ 'rgba(39,39,39,0.0086472) 93.33%,' +
137
+ 'rgba(39,39,39,0)';
138
+
139
+ const gradientToBottomStyle = {
140
+ background: `linear-gradient(to bottom, ${_gradient} 100%);`,
141
+ };
142
+
143
+ const gradientToTopStyle = {
144
+ background: `linear-gradient(to top, ${_gradient} 100%);`,
145
+ };
146
+
147
+ const breakpointBase = 0;
120
148
 
121
- const breakpointXS = '480px';
149
+ const breakpointXS = 480;
122
150
 
123
- const breakpointS = '760px';
151
+ const breakpointS = 760;
124
152
 
125
- const breakpointM = '1000px';
153
+ const breakpointM = 1000;
126
154
 
127
- const breakpointL = '1300px';
155
+ const breakpointL = 1300;
128
156
 
129
- const breakpointXL = '1760px';
157
+ const breakpointXL = 1760;
130
158
 
131
- const breakpointXXL = '1920px';
159
+ const breakpointXXL = 1920;
132
160
 
133
161
  const breakpoint = {
134
162
  base: breakpointBase,
@@ -141,89 +169,74 @@ const breakpoint = {
141
169
  };
142
170
 
143
171
  function getMediaQueryMin(min) {
144
- return `@media(min-width:${breakpoint[min]})`;
172
+ return `@media(min-width:${breakpoint[min]}px)`;
145
173
  }
146
174
 
147
175
  const spacingFluidMedium = 'clamp(16px, 1.25vw + 12px, 36px)';
148
176
 
149
177
  const gridGap = spacingFluidMedium;
150
178
 
151
- const gridWidthMin = '320px';
179
+ const _gridWidthMax = '2560px';
180
+ // fluid sizing calculated by https://fluidtypography.com/#app-get-started
181
+ const _gridSafeZoneBase = 'max(22px, 10.625vw - 12px)'; // viewport-width range = 320 - 760px / size range = 22 - 68.75px
182
+ const _gridSafeZoneS = 'calc(5vw - 16px)'; // viewport-width range = 760 - 1920px / size range = 22(22.75) - 80(79.71)px
183
+ const _gridSafeZoneXXL = 'min(50vw - 880px, 400px)'; // viewport-width range = 1920 - 2560px / size range = 80(79.71)px - 400(399.71)px
152
184
 
153
- const gridWidthMax = '2560px';
185
+ const columnMap = {
186
+ narrow: 4,
187
+ basic: 2,
188
+ extended: 1,
189
+ };
190
+ const gridColumnWidthS = `calc((100vw - ${_gridSafeZoneS} * 2 - ${gridGap} * 15) / 16)`;
191
+ const gridColumnWidthXXL = `calc((min(100vw, ${_gridWidthMax}) - ${_gridSafeZoneXXL} * 2 - ${gridGap} * 15) / 16)`;
192
+ const _gridPadding = `max(0px, 50vw - ${_gridWidthMax} / 2)`;
193
+ const _getGridOffsetS = (width) => `calc(${_gridSafeZoneS} + (${gridGap} + ${gridColumnWidthS}) * ${columnMap[width]})`;
194
+ const _getGridOffsetXXL = (width) => `calc(${_gridPadding} + ${_gridSafeZoneXXL} + (${gridGap} + ${gridColumnWidthXXL}) * ${columnMap[width]})`;
154
195
 
155
- // fluid sizing calculated by https://fluidtypography.com/#app-get-started
156
- // gridSafeZoneBase: Viewport Width Range = 320 - 1920px / Size Range = 22 - 192px
157
- const gridSafeZoneBase = 'clamp(22px, 10.625vw - 12px, 192px)';
196
+ const gridFullOffset = _gridPadding;
158
197
 
159
- // fluid sizing calculated by https://fluidtypography.com/#app-get-started
160
- // gridSafeZoneXXL: Viewport Width Range = 1920 - 2560px / Size Range = 192 - 512px
161
- const gridSafeZoneXXL = 'clamp(192px, 50vw - 768px, 512px)';
198
+ const gridExtendedOffsetBase = _gridSafeZoneBase;
162
199
 
163
- const gridFullColumnStart = 'full-start';
200
+ const gridExtendedOffsetS = _getGridOffsetS('extended');
164
201
 
165
- const gridExtendedColumnStart = 'extended-start';
202
+ const gridExtendedOffsetXXL = _getGridOffsetXXL('extended');
166
203
 
167
- const gridBasicColumnStart = 'basic-start';
204
+ const gridExtendedOffset = {
205
+ base: gridExtendedOffsetBase,
206
+ s: gridExtendedOffsetS,
207
+ xxl: gridExtendedOffsetXXL,
208
+ };
168
209
 
169
- const gridNarrowColumnStart = 'narrow-start';
210
+ const gridBasicOffsetBase = _gridSafeZoneBase;
170
211
 
171
- const gridNarrowColumnEnd = 'narrow-end';
212
+ const gridBasicOffsetS = _getGridOffsetS('basic');
172
213
 
173
- const gridBasicColumnEnd = 'basic-end';
214
+ const gridBasicOffsetXXL = _getGridOffsetXXL('basic');
174
215
 
175
- const gridExtendedColumnEnd = 'extended-end';
216
+ const gridBasicOffset = {
217
+ base: gridBasicOffsetBase,
218
+ s: gridBasicOffsetS,
219
+ xxl: gridBasicOffsetXXL,
220
+ };
176
221
 
177
- const gridFullColumnEnd = 'full-end';
222
+ const gridNarrowOffsetBase = _gridSafeZoneBase;
178
223
 
179
- const _cssVariableGridExtendedSpanOneHalf = '--pds-grid-extended-span-one-half';
180
- const _cssVariableGridBasicSpanOneHalf = '--pds-grid-basic-span-one-half';
181
- const _cssVariableGridBasicSpanOneThird = '--pds-grid-basic-span-one-third';
182
- const _cssVariableGridBasicSpanTwoThirds = '--pds-grid-basic-span-two-thirds';
183
- const _cssVariableGridNarrowSpanOneHalf = '--pds-grid-narrow-span-one-half';
184
- const _cssVariableGridSafeZone = '--pds-internal-grid-safe-zone';
224
+ const gridNarrowOffsetS = _getGridOffsetS('narrow');
185
225
 
186
- const outerColumn = `minmax(0, calc(var(${_cssVariableGridSafeZone}) - ${gridGap}))`;
187
- const column = 'minmax(0, 1fr)';
188
- const getColumns = (repeat) => (repeat > 1 ? `repeat(${repeat}, ${column})` : column);
189
- const getColumnSpan = (span) => `span ${span}`;
190
- const getGridTemplateColumns = (layout) => layout === 'mobile'
191
- ? `[${gridFullColumnStart}] ${outerColumn} [${gridExtendedColumnStart} ${gridBasicColumnStart} ${gridNarrowColumnStart}] ${getColumns(6)} [${gridNarrowColumnEnd} ${gridBasicColumnEnd} ${gridExtendedColumnEnd}] ${outerColumn} [${gridFullColumnEnd}]`
192
- : `[${gridFullColumnStart}] ${outerColumn} [${gridExtendedColumnStart}] ${getColumns(1)} [${gridBasicColumnStart}] ${getColumns(2)} [${gridNarrowColumnStart}] ${getColumns(8)} [${gridNarrowColumnEnd}] ${getColumns(2)} [${gridBasicColumnEnd}] ${getColumns(1)} [${gridExtendedColumnEnd}] ${outerColumn} [${gridFullColumnEnd}]`;
193
- ({
194
- [_cssVariableGridSafeZone]: gridSafeZoneBase,
195
- [_cssVariableGridExtendedSpanOneHalf]: getColumnSpan(3),
196
- [_cssVariableGridBasicSpanOneHalf]: getColumnSpan(3),
197
- [_cssVariableGridBasicSpanOneThird]: getColumnSpan(2),
198
- [_cssVariableGridBasicSpanTwoThirds]: getColumnSpan(4),
199
- [_cssVariableGridNarrowSpanOneHalf]: getColumnSpan(3),
200
- display: 'grid',
201
- gridGap,
202
- gridTemplateColumns: getGridTemplateColumns('mobile'),
203
- minWidth: gridWidthMin,
204
- maxWidth: gridWidthMax,
205
- margin: 0,
206
- padding: `0 calc(50% - ${gridWidthMax} / 2)`,
207
- boxSizing: 'content-box',
208
- [getMediaQueryMin('s')]: {
209
- [_cssVariableGridExtendedSpanOneHalf]: getColumnSpan(7),
210
- [_cssVariableGridBasicSpanOneHalf]: getColumnSpan(6),
211
- [_cssVariableGridBasicSpanOneThird]: getColumnSpan(4),
212
- [_cssVariableGridBasicSpanTwoThirds]: getColumnSpan(8),
213
- [_cssVariableGridNarrowSpanOneHalf]: getColumnSpan(4),
214
- gridTemplateColumns: getGridTemplateColumns('desktop'),
215
- },
216
- [getMediaQueryMin('xxl')]: {
217
- [_cssVariableGridSafeZone]: gridSafeZoneXXL,
218
- },
219
- });
226
+ const gridNarrowOffsetXXL = _getGridOffsetXXL('narrow');
227
+
228
+ const gridNarrowOffset = {
229
+ base: gridNarrowOffsetBase,
230
+ s: gridNarrowOffsetS,
231
+ xxl: gridNarrowOffsetXXL,
232
+ };
220
233
 
221
234
  function getMediaQueryMax(max) {
222
- return `@media(max-width:${breakpoint[max].slice(0, -2) - 1}px)`;
235
+ return `@media(max-width:${breakpoint[max] - 1}px)`;
223
236
  }
224
237
 
225
238
  function getMediaQueryMinMax(min, max) {
226
- return `@media(min-width:${breakpoint[min]}) and (max-width:${breakpoint[max].slice(0, -2) - 1}px)`;
239
+ return `@media(min-width:${breakpoint[min]}px) and (max-width:${breakpoint[max] - 1}px)`;
227
240
  }
228
241
 
229
242
  const spacingStaticXSmall = '4px';
@@ -238,9 +251,11 @@ const spacingFluidXSmall = 'clamp(4px, 0.25vw + 3px, 8px)';
238
251
 
239
252
  const spacingFluidSmall = 'clamp(8px, 0.5vw + 6px, 16px)';
240
253
 
254
+ const spacingFluidLarge = 'clamp(32px, 2.75vw + 23px, 76px)';
255
+
241
256
  const themeDarkBackgroundShading = 'rgba(1, 2, 5, 0.67)';
242
257
 
243
- const _displayFontPartA = `${fontStyleItalic} ${fontVariant} ${fontWeightSemiBold$1} `;
258
+ const _displayFontPartA = `${fontStyleNormal} ${fontVariant} ${fontWeightRegular} `;
244
259
  const _displayFontPartB = `/${fontLineHeight} ${fontFamily}`;
245
260
 
246
261
  const displayMediumStyle = {
@@ -251,7 +266,7 @@ const displayLargeStyle = {
251
266
  font: `${_displayFontPartA}${fontSizeDisplayLarge}${_displayFontPartB}`,
252
267
  };
253
268
 
254
- const _headingFontPartA = `${fontStyleNormal} ${fontVariant} ${fontWeightSemiBold$1} `;
269
+ const _headingFontPartA = `${fontStyleNormal} ${fontVariant} ${fontWeightSemiBold} `;
255
270
  const _headingFontPartB = `/${fontLineHeight} ${fontFamily}`;
256
271
 
257
272
  const headingSmallStyle = {
@@ -287,13 +302,18 @@ const textSmallStyle = {
287
302
  ...fontHyphenationStyle,
288
303
  };
289
304
 
305
+ const textLargeStyle = {
306
+ font: `${_textFontPartA}${fontSizeTextLarge}${_textFontPartB}`,
307
+ ...fontHyphenationStyle,
308
+ };
309
+
290
310
  // TODO: we shouldn't exclude xxl breakpoint
291
311
  const mediaQueries = Object.entries(breakpoint)
292
312
  .filter(([key]) => key !== 'xxl')
293
- .map(([, val]) => `(min-width:${val})`);
313
+ .map(([, val]) => `(min-width:${val}px)`);
294
314
  hasWindow && window.matchMedia ? mediaQueries.map(window.matchMedia) : [];
295
315
 
296
- Object.entries(breakpoint).reduce((result, [key, val]) => (Object.assign(Object.assign({}, result), { [val]: key })), {});
316
+ Object.entries(breakpoint).reduce((result, [key, val]) => (Object.assign(Object.assign({}, result), { [`${val}px`]: key })), {});
297
317
 
298
318
  const hasVisibleIcon = (iconName, iconSource) => {
299
319
  return iconName !== 'none' || !!iconSource;
@@ -503,12 +523,6 @@ var _typeof$1 = typeof Symbol === "function" && typeof Symbol.iterator === "symb
503
523
 
504
524
  var isBrowser = (typeof window === "undefined" ? "undefined" : _typeof$1(window)) === "object" && (typeof document === "undefined" ? "undefined" : _typeof$1(document)) === 'object' && document.nodeType === 9;
505
525
 
506
- var module$1 = /*#__PURE__*/Object.freeze({
507
- __proto__: null,
508
- default: isBrowser,
509
- isBrowser: isBrowser
510
- });
511
-
512
526
  var isProduction = process.env.NODE_ENV === 'production';
513
527
  function warning(condition, message) {
514
528
  if (!isProduction) {
@@ -1056,7 +1070,7 @@ function () {
1056
1070
 
1057
1071
  return ConditionalRule;
1058
1072
  }();
1059
- var keyRegExp = /@media|@supports\s+/;
1073
+ var keyRegExp = /@container|@media|@supports\s+/;
1060
1074
  var pluginConditionalRule = {
1061
1075
  onCreateRule: function onCreateRule(key, styles, options) {
1062
1076
  return keyRegExp.test(key) ? new ConditionalRule(key, styles, options) : null;
@@ -1353,7 +1367,7 @@ var pluginSimpleRule = {
1353
1367
  }
1354
1368
  };
1355
1369
 
1356
- var plugins$1 = [pluginStyleRule, pluginConditionalRule, pluginKeyframesRule, pluginKeyframeRule, pluginFontFaceRule, pluginViewportRule, pluginSimpleRule];
1370
+ var plugins = [pluginStyleRule, pluginConditionalRule, pluginKeyframesRule, pluginKeyframeRule, pluginFontFaceRule, pluginViewportRule, pluginSimpleRule];
1357
1371
 
1358
1372
  var defaultUpdateOptions = {
1359
1373
  process: true
@@ -2620,7 +2634,7 @@ var Jss =
2620
2634
  function () {
2621
2635
  function Jss(options) {
2622
2636
  this.id = instanceCounter++;
2623
- this.version = "10.9.2";
2637
+ this.version = "10.10.0";
2624
2638
  this.plugins = new PluginsRegistry();
2625
2639
  this.options = {
2626
2640
  id: {
@@ -2634,8 +2648,8 @@ function () {
2634
2648
  minify: false
2635
2649
  });
2636
2650
 
2637
- for (var i = 0; i < plugins$1.length; i++) {
2638
- this.plugins.use(plugins$1[i], {
2651
+ for (var i = 0; i < plugins.length; i++) {
2652
+ this.plugins.use(plugins[i], {
2639
2653
  queue: 'internal'
2640
2654
  });
2641
2655
  }
@@ -2900,54 +2914,24 @@ var jss_esm = /*#__PURE__*/Object.freeze({
2900
2914
  toCssValue: toCssValue
2901
2915
  });
2902
2916
 
2903
- function getAugmentedNamespace(n) {
2904
- if (n.__esModule) return n;
2905
- var f = n.default;
2906
- if (typeof f == "function") {
2907
- var a = function a () {
2908
- if (this instanceof a) {
2909
- var args = [null];
2910
- args.push.apply(args, arguments);
2911
- var Ctor = Function.bind.apply(f, args);
2912
- return new Ctor();
2913
- }
2914
- return f.apply(this, arguments);
2915
- };
2916
- a.prototype = f.prototype;
2917
- } else a = {};
2918
- Object.defineProperty(a, '__esModule', {value: true});
2919
- Object.keys(n).forEach(function (k) {
2920
- var d = Object.getOwnPropertyDescriptor(n, k);
2921
- Object.defineProperty(a, k, d.get ? d : {
2922
- enumerable: true,
2923
- get: function () {
2924
- return n[k];
2925
- }
2926
- });
2927
- });
2928
- return a;
2929
- }
2930
-
2931
2917
  /* eslint-disable no-var, prefer-template */
2932
2918
  var uppercasePattern = /[A-Z]/g;
2933
2919
  var msPattern = /^ms-/;
2934
- var cache$2 = {};
2920
+ var cache = {};
2935
2921
 
2936
2922
  function toHyphenLower(match) {
2937
2923
  return '-' + match.toLowerCase()
2938
2924
  }
2939
2925
 
2940
2926
  function hyphenateStyleName(name) {
2941
- if (cache$2.hasOwnProperty(name)) {
2942
- return cache$2[name]
2927
+ if (cache.hasOwnProperty(name)) {
2928
+ return cache[name]
2943
2929
  }
2944
2930
 
2945
2931
  var hName = name.replace(uppercasePattern, toHyphenLower);
2946
- return (cache$2[name] = msPattern.test(hName) ? '-' + hName : hName)
2932
+ return (cache[name] = msPattern.test(hName) ? '-' + hName : hName)
2947
2933
  }
2948
2934
 
2949
- var index_cjs = hyphenateStyleName;
2950
-
2951
2935
  /**
2952
2936
  * Convert camel cased property names to dash separated.
2953
2937
  */
@@ -2956,7 +2940,7 @@ function convertCase(style) {
2956
2940
  var converted = {};
2957
2941
 
2958
2942
  for (var prop in style) {
2959
- var key = prop.indexOf('--') === 0 ? prop : index_cjs(prop);
2943
+ var key = prop.indexOf('--') === 0 ? prop : hyphenateStyleName(prop);
2960
2944
  converted[key] = style[prop];
2961
2945
  }
2962
2946
 
@@ -2990,7 +2974,7 @@ function camelCase() {
2990
2974
  return value;
2991
2975
  }
2992
2976
 
2993
- var hyphenatedProp = index_cjs(prop); // There was no camel case in place
2977
+ var hyphenatedProp = hyphenateStyleName(prop); // There was no camel case in place
2994
2978
 
2995
2979
  if (prop === hyphenatedProp) return value;
2996
2980
  rule.prop(hyphenatedProp, value); // Core will ignore that property value we set the proper one above.
@@ -3295,6 +3279,34 @@ function jssNested() {
3295
3279
  };
3296
3280
  }
3297
3281
 
3282
+ function getAugmentedNamespace(n) {
3283
+ if (n.__esModule) return n;
3284
+ var f = n.default;
3285
+ if (typeof f == "function") {
3286
+ var a = function a () {
3287
+ if (this instanceof a) {
3288
+ var args = [null];
3289
+ args.push.apply(args, arguments);
3290
+ var Ctor = Function.bind.apply(f, args);
3291
+ return new Ctor();
3292
+ }
3293
+ return f.apply(this, arguments);
3294
+ };
3295
+ a.prototype = f.prototype;
3296
+ } else a = {};
3297
+ Object.defineProperty(a, '__esModule', {value: true});
3298
+ Object.keys(n).forEach(function (k) {
3299
+ var d = Object.getOwnPropertyDescriptor(n, k);
3300
+ Object.defineProperty(a, k, d.get ? d : {
3301
+ enumerable: true,
3302
+ get: function () {
3303
+ return n[k];
3304
+ }
3305
+ });
3306
+ });
3307
+ return a;
3308
+ }
3309
+
3298
3310
  var _tslib$1 = {};
3299
3311
 
3300
3312
  (function (exports) {
@@ -3703,10 +3715,10 @@ const themeLight = {
3703
3715
  contrastHighColor: '#535457',
3704
3716
  contrastHighColorDarken: '#353638',
3705
3717
  contrastHighColorLighten: '#717276',
3706
- hoverColor: 'rgba(148, 149, 152, 0.20)',
3718
+ hoverColor: 'rgba(148, 149, 152, .18)',
3707
3719
  hoverColorDarken: '#75767A',
3708
3720
  activeColor: 'rgba(148, 149, 152, 0.20)',
3709
- focusColor: '#0A0AFF',
3721
+ focusColor: '#1A44EA',
3710
3722
  disabledColor: '#949598',
3711
3723
  errorColor: '#E7323B',
3712
3724
  errorColorDarken: '#C51720',
@@ -3741,10 +3753,10 @@ const themeDark = {
3741
3753
  contrastHighColor: '#AFB0B3',
3742
3754
  contrastHighColorDarken: '#909195',
3743
3755
  contrastHighColorLighten: '#CECFD1',
3744
- hoverColor: 'rgba(126, 127, 130, 0.20)',
3745
- hoverColorDarken: '#606163',
3756
+ hoverColor: 'rgba(148, 149, 152, .18)',
3757
+ hoverColorDarken: '#75767A',
3746
3758
  activeColor: 'rgba(126, 127, 130, 0.20)',
3747
- focusColor: '#1E5BEB',
3759
+ focusColor: '#1A44EA',
3748
3760
  disabledColor: '#7E7F82',
3749
3761
  errorColor: '#CB3333',
3750
3762
  errorColorDarken: '#9A2727',
@@ -3789,13 +3801,10 @@ const addImportantToEachRule = (input) => {
3789
3801
  typeof value === 'object' ? addImportantToEachRule(value) : addImportantToRule(value)),
3790
3802
  result), {});
3791
3803
  };
3792
- const getHoverJssStyle = ({ theme } = { theme: 'light' }) => {
3793
- return {
3794
- transition: getTransition('color'),
3795
- '&:hover': {
3796
- color: getThemedColors(theme).hoverColor,
3797
- },
3798
- };
3804
+ // TODO: this is workaround, in order the colors to be bundled in the main bundle, we need to have at least one function here, which is used in project and which calls "getThemedColors"
3805
+ // TODO: This mechanism needs to be investigated as part of refactoring
3806
+ const doGetThemedColors = (theme = 'light') => {
3807
+ return getThemedColors(theme);
3799
3808
  };
3800
3809
  const getInsetJssStyle = (value = 0) => {
3801
3810
  value = value === 0 || value === 'auto' ? value : `${value}px`;
@@ -3806,6 +3815,14 @@ const getInsetJssStyle = (value = 0) => {
3806
3815
  bottom: value,
3807
3816
  };
3808
3817
  };
3818
+ // reset initial styles, e.g. in case link-pure is used with slotted anchor and nested within e.g. an accordion
3819
+ const getResetInitialStylesForSlottedAnchor = {
3820
+ margin: 0,
3821
+ padding: 0,
3822
+ outline: 0,
3823
+ borderRadius: 0,
3824
+ background: 'transparent',
3825
+ };
3809
3826
  const getFocusJssStyle = (opts) => {
3810
3827
  const { pseudo, offset: outlineOffset, color: outlineColor, } = Object.assign({ color: 'currentColor', offset: 2 }, opts);
3811
3828
  return pseudo
@@ -3924,14 +3941,14 @@ const buildResponsiveStyles = (rawValue, getJssStyle) => {
3924
3941
  [getMediaQueryMin(breakpointValue)]: getJssStyle(value[breakpointValue]) })), getJssStyle(value.base))
3925
3942
  : getJssStyle(value);
3926
3943
  };
3927
- const isObject$1 = (obj) => typeof obj === 'object' && !Array.isArray(obj);
3944
+ const isObject = (obj) => typeof obj === 'object' && !Array.isArray(obj);
3928
3945
  // NOTE: taken from https://stackoverflow.com/a/48218209
3929
3946
  const mergeDeep = (...objects) => {
3930
3947
  return objects.reduce((prev, obj) => {
3931
3948
  Object.keys(obj).forEach((key) => {
3932
3949
  const pVal = prev[key];
3933
3950
  const oVal = obj[key];
3934
- if (isObject$1(pVal) && isObject$1(oVal)) {
3951
+ if (isObject(pVal) && isObject(oVal)) {
3935
3952
  prev[key] = mergeDeep(pVal, oVal);
3936
3953
  }
3937
3954
  else {
@@ -3942,2063 +3959,191 @@ const mergeDeep = (...objects) => {
3942
3959
  }, {});
3943
3960
  };
3944
3961
 
3945
- [
3946
- { name: 'Model', id: 'model' },
3947
- { name: 'Interest', id: 'interest' },
3948
- { name: 'VIN', id: 'vin' },
3949
- { name: 'Purchase Intention', id: 'purchaseIntention' },
3950
- { name: 'Status', id: 'status' },
3951
- { name: 'Comment', id: 'comment' },
3952
- { name: 'Lead ID', id: 'leadId' },
3953
- { name: 'Action', id: 'action', hideLabel: true },
3954
- ].map((item, i) => ({
3955
- ...item,
3956
- ...(i > 0 &&
3957
- i < 7 &&
3958
- i !== 5 && {
3959
- active: i === 1,
3960
- direction: 'asc',
3961
- }),
3962
- }));
3963
-
3964
- [
3965
- { name: 'Column 1', id: 'col1' },
3966
- { name: 'Column 2', id: 'col2' },
3967
- { name: 'Column 3', id: 'col3' },
3968
- ].map((item, i) => ({
3969
- ...item,
3970
- active: i === 1,
3971
- direction: 'asc',
3972
- }));
3973
-
3974
- Array.from(Array(4)).map(() => ({
3975
- imageUrl: 'https://nav.porsche.com/00BC524/series-assets/1366/911@2x.jpg',
3976
- imageWidth: 80,
3977
- imageHeight: 48,
3978
- html: "<a href='#'>link</a>&nbsp;<b>bold</b>&nbsp;<i>italic</i>&nbsp;<strong>strong</strong>&nbsp;<em>emphasized</em>",
3979
- longText: 'Lorem ipsum dolor sit amet, consetetur sadipscing elitr',
3980
- shortText: 'Some text',
3981
- }));
3982
-
3983
- var now = Date.now();
3984
- var fnValuesNs = "fnValues" + now;
3985
- var fnRuleNs = "fnStyle" + ++now;
3986
-
3987
- var functionPlugin = function functionPlugin() {
3988
- return {
3989
- onCreateRule: function onCreateRule(name, decl, options) {
3990
- if (typeof decl !== 'function') return null;
3991
- var rule = createRule(name, {}, options);
3992
- rule[fnRuleNs] = decl;
3993
- return rule;
3994
- },
3995
- onProcessStyle: function onProcessStyle(style, rule) {
3996
- // We need to extract function values from the declaration, so that we can keep core unaware of them.
3997
- // We need to do that only once.
3998
- // We don't need to extract functions on each style update, since this can happen only once.
3999
- // We don't support function values inside of function rules.
4000
- if (fnValuesNs in rule || fnRuleNs in rule) return style;
4001
- var fnValues = {};
4002
-
4003
- for (var prop in style) {
4004
- var value = style[prop];
4005
- if (typeof value !== 'function') continue;
4006
- delete style[prop];
4007
- fnValues[prop] = value;
4008
- }
4009
-
4010
- rule[fnValuesNs] = fnValues;
4011
- return style;
4012
- },
4013
- onUpdate: function onUpdate(data, rule, sheet, options) {
4014
- var styleRule = rule;
4015
- var fnRule = styleRule[fnRuleNs]; // If we have a style function, the entire rule is dynamic and style object
4016
- // will be returned from that function.
4017
-
4018
- if (fnRule) {
4019
- // Empty object will remove all currently defined props
4020
- // in case function rule returns a falsy value.
4021
- styleRule.style = fnRule(data) || {};
4022
-
4023
- if (process.env.NODE_ENV === 'development') {
4024
- for (var prop in styleRule.style) {
4025
- if (typeof styleRule.style[prop] === 'function') {
4026
- process.env.NODE_ENV !== "production" ? warning(false, '[JSS] Function values inside function rules are not supported.') : void 0;
4027
- break;
4028
- }
4029
- }
4030
- }
4031
- }
4032
-
4033
- var fnValues = styleRule[fnValuesNs]; // If we have a fn values map, it is a rule with function values.
4034
-
4035
- if (fnValues) {
4036
- for (var _prop in fnValues) {
4037
- styleRule.prop(_prop, fnValues[_prop](data), options);
4038
- }
4039
- }
4040
- }
4041
- };
3962
+ const isThemeDark = (theme) => {
3963
+ return theme === 'dark';
4042
3964
  };
4043
3965
 
4044
- function symbolObservablePonyfill(root) {
4045
- var result;
4046
- var Symbol = root.Symbol;
4047
-
4048
- if (typeof Symbol === 'function') {
4049
- if (Symbol.observable) {
4050
- result = Symbol.observable;
4051
- } else {
4052
- result = Symbol('observable');
4053
- Symbol.observable = result;
4054
- }
4055
- } else {
4056
- result = '@@observable';
4057
- }
4058
-
4059
- return result;
4060
- }
4061
-
4062
- /* global window */
3966
+ const hasDocument = typeof document !== 'undefined';
4063
3967
 
4064
- var root;
3968
+ hasDocument && 'scrollBehavior' in document.documentElement.style;
4065
3969
 
4066
- if (typeof self !== 'undefined') {
4067
- root = self;
4068
- } else if (typeof window !== 'undefined') {
4069
- root = window;
4070
- } else if (typeof global !== 'undefined') {
4071
- root = global;
4072
- } else if (typeof module !== 'undefined') {
4073
- root = module;
4074
- } else {
4075
- root = Function('return this')();
4076
- }
3970
+ const formatObjectOutput = (value) => {
3971
+ return JSON.stringify(value)
3972
+ .replace(/"([a-zA-Z?]+)":/g, '$1:') // remove double quotes from keys
3973
+ .replace(/([,:{])/g, '$1 ') // add space after following: ,:{
3974
+ .replace(/(})/g, ' $1') // add space before following: }
3975
+ .replace(/^"(.+)"$/, '$1'); // remove wrapping double quotes
3976
+ };
3977
+ 'value, ' +
3978
+ formatObjectOutput(BREAKPOINTS.reduce((prev, key) => (Object.assign(Object.assign({}, prev), { [key + (key !== 'base' ? '?' : '')]: 'value' })), {})).replace(/"/g, '');
4077
3979
 
4078
- var result = symbolObservablePonyfill(root);
3980
+ const HEADING_TAGS = ['h1', 'h2', 'h3', 'h4', 'h5', 'h6'];
4079
3981
 
4080
- var isObservable = function isObservable(value) {
4081
- return value && value[result] && value === value[result]();
3982
+ const getComponentCss$W = (size, compact, open, theme) => {
3983
+ const { primaryColor, hoverColor, focusColor, contrastLowColor } = getThemedColors(theme);
3984
+ const border = `1px solid ${contrastLowColor}`;
3985
+ return getCss(Object.assign(Object.assign({ '@global': {
3986
+ ':host': addImportantToEachRule(Object.assign({ display: 'block' }, hostHiddenStyles)),
3987
+ button: Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({ display: 'flex', position: 'relative', justifyContent: 'space-between', margin: '2px 0', width: '100%', textDecoration: 'none', border: 0, outline: 0, gap: '24px', background: 'transparent', cursor: 'pointer', textAlign: 'left', color: primaryColor }, textSmallStyle), { fontWeight: fontWeight.semiBold }), buildResponsiveStyles(size, (s) => ({
3988
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
3989
+ // @ts-ignore
3990
+ fontSize: fontSizeText[s],
3991
+ padding: compact ? '4px 0' : `${s === 'medium' ? '20px' : '12px'} 0`,
3992
+ }))), mergeDeep({
3993
+ '&::before': Object.assign({ content: '""', position: 'absolute', borderRadius: borderRadiusSmall, left: '-4px', right: '-4px' }, (compact
3994
+ ? {
3995
+ top: '2px',
3996
+ bottom: '2px',
3997
+ }
3998
+ : {
3999
+ top: '6px',
4000
+ bottom: '6px',
4001
+ })),
4002
+ }, hoverMediaQuery({
4003
+ '&::before': {
4004
+ transition: getTransition('background-color'),
4005
+ },
4006
+ '&:hover::before': {
4007
+ background: hoverColor,
4008
+ },
4009
+ }))), { '&:focus::before': {
4010
+ border: `${borderWidthBase} solid ${focusColor}`,
4011
+ }, '&:not(:focus-visible)::before': {
4012
+ border: 0,
4013
+ } }),
4014
+ } }, (!compact && {
4015
+ root: {
4016
+ borderBottom: border,
4017
+ },
4018
+ })), { heading: {
4019
+ margin: 0,
4020
+ padding: 0,
4021
+ }, icon: {
4022
+ width: fontLineHeight,
4023
+ height: fontLineHeight,
4024
+ transformOrigin: '50% 50%',
4025
+ transform: open ? 'rotate3d(0)' : 'rotate3d(0,0,1,90deg)',
4026
+ transition: getTransition('transform'),
4027
+ }, collapsible: Object.assign({ color: primaryColor, padding: 0, overflow: 'hidden' }, (open
4028
+ ? {
4029
+ height: 'auto',
4030
+ paddingBottom: compact ? spacingStaticSmall : '24px',
4031
+ visibility: 'visible',
4032
+ transition: getTransition('height') + `,visibility ${transitionDuration}`,
4033
+ animation: `$open ${transitionDuration} ease forwards`,
4034
+ }
4035
+ : {
4036
+ height: 0,
4037
+ visibility: 'hidden',
4038
+ transition: getTransition('height') + `,visibility ${transitionDuration} linear ${transitionDuration}`,
4039
+ })),
4040
+ // TODO: this doesn't get shortened and results in `keyframes-open` for some unknown reason
4041
+ '@keyframes open': {
4042
+ '0%,99%': {
4043
+ overflow: 'hidden',
4044
+ },
4045
+ '100%': {
4046
+ overflow: 'visible',
4047
+ },
4048
+ } }));
4082
4049
  };
4083
4050
 
4084
- var observablePlugin = function observablePlugin(updateOptions) {
4085
- return {
4086
- onCreateRule: function onCreateRule(name, decl, options) {
4087
- if (!isObservable(decl)) return null;
4088
- var style$ = decl;
4089
- var rule = createRule(name, {}, options); // TODO
4090
- // Call `stream.subscribe()` returns a subscription, which should be explicitly
4091
- // unsubscribed from when we know this sheet is no longer needed.
4092
-
4093
- style$.subscribe(function (style) {
4094
- for (var prop in style) {
4095
- rule.prop(prop, style[prop], updateOptions);
4051
+ const easeInQuad = 'cubic-bezier(0.45,0,0.55,1)';
4052
+ const easeOutQuad = 'cubic-bezier(0.5,1,0.89,1)';
4053
+ const ANIMATION_DURATION = 600;
4054
+ const getAnimationIn = (keyframesName, durationVar) => {
4055
+ const duration = durationVar ? `var(${durationVar},${ANIMATION_DURATION}ms)` : `${ANIMATION_DURATION}ms`;
4056
+ return {
4057
+ animation: `${duration} $${keyframesName} ${easeInQuad} forwards`,
4058
+ };
4059
+ };
4060
+ const getAnimationOut = (keyframesName) => ({
4061
+ animation: addImportantToRule(`${ANIMATION_DURATION}ms $${keyframesName} ${easeOutQuad} forwards`),
4062
+ });
4063
+ const getKeyframes = (direction, outsideStyle) => {
4064
+ const insideStyle = { opacity: 1, transform: 'translate3d(0,0,0)' };
4065
+ return direction === 'in'
4066
+ ? {
4067
+ from: outsideStyle,
4068
+ to: insideStyle,
4096
4069
  }
4097
- });
4098
- return rule;
4099
- },
4100
- onProcessRule: function onProcessRule(rule) {
4101
- if (rule && rule.type !== 'style') return;
4102
- var styleRule = rule;
4103
- var style = styleRule.style;
4104
-
4105
- var _loop = function _loop(prop) {
4106
- var value = style[prop];
4107
- if (!isObservable(value)) return "continue";
4108
- delete style[prop];
4109
- value.subscribe({
4110
- next: function next(nextValue) {
4111
- styleRule.prop(prop, nextValue, updateOptions);
4112
- }
4113
- });
4114
- };
4070
+ : {
4071
+ from: insideStyle,
4072
+ to: outsideStyle,
4073
+ };
4074
+ };
4075
+ const getKeyframesMobile = (direction, bottomVar) => getKeyframes(direction, {
4076
+ opacity: 0,
4077
+ transform: `translate3d(0,calc(var(${bottomVar}) + 100%),0)`, // space before and after "+" is crucial
4078
+ });
4115
4079
 
4116
- for (var prop in style) {
4117
- var _ret = _loop(prop);
4080
+ const TOAST_Z_INDEX = 999999;
4081
+ const MODAL_Z_INDEX = 99999;
4082
+ const POPOVER_Z_INDEX = 9999;
4083
+ const BANNER_Z_INDEX = 99;
4118
4084
 
4119
- if (_ret === "continue") continue;
4120
- }
4121
- }
4122
- };
4085
+ const cssVariableTop = '--p-banner-position-top';
4086
+ const cssVariableBottom = '--p-banner-position-bottom';
4087
+ const cssVariableAnimationDuration = '--p-animation-duration';
4088
+ const cssVariableZIndex = '--p-internal-banner-z-index';
4089
+ const mediaQueryBaseToS = getMediaQueryMinMax('base', 's');
4090
+ const mediaQueryS$1 = getMediaQueryMin('s');
4091
+ const mediaQueryXXL$1 = getMediaQueryMin('xxl');
4092
+ const getKeyframesDesktop = (direction, topVar) => getKeyframes(direction, {
4093
+ opacity: 0,
4094
+ transform: `translate3d(0,calc(-100% - var(${topVar})),0)`, // space before and after "-" is crucial
4095
+ });
4096
+ const getComponentCss$V = () => {
4097
+ return getCss({
4098
+ '@global': {
4099
+ ':host': Object.assign(Object.assign({ opacity: 0 }, addImportantToEachRule(Object.assign(Object.assign(Object.assign({ [cssVariableTop]: '56px', [cssVariableBottom]: '56px', position: 'fixed', top: 'auto', bottom: `var(${cssVariableBottom})`, left: gridExtendedOffsetBase, right: gridExtendedOffsetBase, margin: 0, padding: 0, width: 'auto', zIndex: `var(${cssVariableZIndex},${BANNER_Z_INDEX})`, willChange: 'opacity,transform' }, dropShadowHighStyle), { [mediaQueryS$1]: {
4100
+ top: `var(${cssVariableTop})`,
4101
+ bottom: 'auto',
4102
+ left: gridExtendedOffsetS,
4103
+ right: gridExtendedOffsetS,
4104
+ }, [mediaQueryXXL$1]: {
4105
+ left: gridExtendedOffsetXXL,
4106
+ right: gridExtendedOffsetXXL,
4107
+ } }), hostHiddenStyles))), { '&(.hydrated),&(.ssr)': {
4108
+ [mediaQueryBaseToS]: getAnimationIn('mobileIn', cssVariableAnimationDuration),
4109
+ [mediaQueryS$1]: getAnimationIn('desktopIn', cssVariableAnimationDuration),
4110
+ }, '&(.banner--close)': {
4111
+ [mediaQueryBaseToS]: getAnimationOut('mobileOut'),
4112
+ [mediaQueryS$1]: getAnimationOut('desktopOut'),
4113
+ } }),
4114
+ '@keyframes mobileIn': getKeyframesMobile('in', cssVariableBottom),
4115
+ '@keyframes mobileOut': getKeyframesMobile('out', cssVariableBottom),
4116
+ '@keyframes desktopIn': getKeyframesDesktop('in', cssVariableTop),
4117
+ '@keyframes desktopOut': getKeyframesDesktop('out', cssVariableTop),
4118
+ },
4119
+ });
4123
4120
  };
4124
4121
 
4125
- var semiWithNl = /;\n/;
4126
- /**
4127
- * Naive CSS parser.
4128
- * - Supports only rule body (no selectors)
4129
- * - Requires semicolon and new line after the value (except of last line)
4130
- * - No nested rules support
4131
- */
4122
+ const groupDirectionJssStyles = {
4123
+ column: {
4124
+ flexFlow: 'column nowrap',
4125
+ alignItems: 'stretch',
4126
+ },
4127
+ row: {
4128
+ flexFlow: 'row wrap',
4129
+ alignItems: 'center',
4130
+ },
4131
+ };
4132
+ const getGroupDirectionJssStyles = (direction) => {
4133
+ return groupDirectionJssStyles[direction];
4134
+ };
4132
4135
 
4133
- var parse = function parse(cssText) {
4134
- var style = {};
4135
- var split = cssText.split(semiWithNl);
4136
-
4137
- for (var i = 0; i < split.length; i++) {
4138
- var decl = (split[i] || '').trim();
4139
- if (!decl) continue;
4140
- var colonIndex = decl.indexOf(':');
4141
-
4142
- if (colonIndex === -1) {
4143
- process.env.NODE_ENV !== "production" ? warning(false, "[JSS] Malformed CSS string \"" + decl + "\"") : void 0;
4144
- continue;
4145
- }
4146
-
4147
- var prop = decl.substr(0, colonIndex).trim();
4148
- var value = decl.substr(colonIndex + 1).trim();
4149
- style[prop] = value;
4150
- }
4151
-
4152
- return style;
4153
- };
4154
-
4155
- var onProcessRule = function onProcessRule(rule) {
4156
- if (typeof rule.style === 'string') {
4157
- rule.style = parse(rule.style);
4158
- }
4159
- };
4160
-
4161
- function templatePlugin() {
4162
- return {
4163
- onProcessRule: onProcessRule
4164
- };
4165
- }
4166
-
4167
- var isObject = function isObject(obj) {
4168
- return obj && typeof obj === 'object' && !Array.isArray(obj);
4169
- };
4170
-
4171
- var valueNs = "extendCurrValue" + Date.now();
4172
-
4173
- function mergeExtend(style, rule, sheet, newStyle) {
4174
- var extendType = typeof style.extend; // Extend using a rule name.
4175
-
4176
- if (extendType === 'string') {
4177
- if (!sheet) return;
4178
- var refRule = sheet.getRule(style.extend);
4179
- if (!refRule) return;
4180
-
4181
- if (refRule === rule) {
4182
- process.env.NODE_ENV !== "production" ? warning(false, "[JSS] A rule tries to extend itself \n" + rule.toString()) : void 0;
4183
- return;
4184
- }
4185
-
4186
- var parent = refRule.options.parent;
4187
-
4188
- if (parent) {
4189
- var originalStyle = parent.rules.raw[style.extend];
4190
- extend(originalStyle, rule, sheet, newStyle);
4191
- }
4192
-
4193
- return;
4194
- } // Extend using an array.
4195
-
4196
-
4197
- if (Array.isArray(style.extend)) {
4198
- for (var index = 0; index < style.extend.length; index++) {
4199
- var singleExtend = style.extend[index];
4200
- var singleStyle = typeof singleExtend === 'string' ? _extends({}, style, {
4201
- extend: singleExtend
4202
- }) : style.extend[index];
4203
- extend(singleStyle, rule, sheet, newStyle);
4204
- }
4205
-
4206
- return;
4207
- } // Extend is a style object.
4208
-
4209
-
4210
- for (var prop in style.extend) {
4211
- if (prop === 'extend') {
4212
- extend(style.extend.extend, rule, sheet, newStyle);
4213
- continue;
4214
- }
4215
-
4216
- if (isObject(style.extend[prop])) {
4217
- if (!(prop in newStyle)) newStyle[prop] = {};
4218
- extend(style.extend[prop], rule, sheet, newStyle[prop]);
4219
- continue;
4220
- }
4221
-
4222
- newStyle[prop] = style.extend[prop];
4223
- }
4224
- }
4225
-
4226
- function mergeRest(style, rule, sheet, newStyle) {
4227
- // Copy base style.
4228
- for (var prop in style) {
4229
- if (prop === 'extend') continue;
4230
-
4231
- if (isObject(newStyle[prop]) && isObject(style[prop])) {
4232
- extend(style[prop], rule, sheet, newStyle[prop]);
4233
- continue;
4234
- }
4235
-
4236
- if (isObject(style[prop])) {
4237
- newStyle[prop] = extend(style[prop], rule, sheet);
4238
- continue;
4239
- }
4240
-
4241
- newStyle[prop] = style[prop];
4242
- }
4243
- }
4244
- /**
4245
- * Recursively extend styles.
4246
- */
4247
-
4248
-
4249
- function extend(style, rule, sheet, newStyle) {
4250
- if (newStyle === void 0) {
4251
- newStyle = {};
4252
- }
4253
-
4254
- mergeExtend(style, rule, sheet, newStyle);
4255
- mergeRest(style, rule, sheet, newStyle);
4256
- return newStyle;
4257
- }
4258
- /**
4259
- * Handle `extend` property.
4260
- */
4261
-
4262
-
4263
- function jssExtend() {
4264
- function onProcessStyle(style, rule, sheet) {
4265
- if ('extend' in style) return extend(style, rule, sheet);
4266
- return style;
4267
- }
4268
-
4269
- function onChangeValue(value, prop, rule) {
4270
- if (prop !== 'extend') return value; // Value is empty, remove properties set previously.
4271
-
4272
- if (value == null || value === false) {
4273
- for (var key in rule[valueNs]) {
4274
- rule.prop(key, null);
4275
- }
4276
-
4277
- rule[valueNs] = null;
4278
- return null;
4279
- }
4280
-
4281
- if (typeof value === 'object') {
4282
- for (var _key in value) {
4283
- rule.prop(_key, value[_key]);
4284
- }
4285
-
4286
- rule[valueNs] = value;
4287
- } // Make sure we don't set the value in the core.
4288
-
4289
-
4290
- return null;
4291
- }
4292
-
4293
- return {
4294
- onProcessStyle: onProcessStyle,
4295
- onChangeValue: onChangeValue
4296
- };
4297
- }
4298
-
4299
- /**
4300
- * Set selector.
4301
- *
4302
- * @param original rule
4303
- * @param className class string
4304
- * @return flag indicating function was successfull or not
4305
- */
4306
-
4307
- function registerClass(rule, className) {
4308
- // Skip falsy values
4309
- if (!className) return true; // Support array of class names `{composes: ['foo', 'bar']}`
4310
-
4311
- if (Array.isArray(className)) {
4312
- for (var index = 0; index < className.length; index++) {
4313
- var isSetted = registerClass(rule, className[index]);
4314
- if (!isSetted) return false;
4315
- }
4316
-
4317
- return true;
4318
- } // Support space separated class names `{composes: 'foo bar'}`
4319
-
4320
-
4321
- if (className.indexOf(' ') > -1) {
4322
- return registerClass(rule, className.split(' '));
4323
- }
4324
-
4325
- var parent = rule.options.parent; // It is a ref to a local rule.
4326
-
4327
- if (className[0] === '$') {
4328
- var refRule = parent.getRule(className.substr(1));
4329
-
4330
- if (!refRule) {
4331
- process.env.NODE_ENV !== "production" ? warning(false, "[JSS] Referenced rule is not defined. \n" + rule.toString()) : void 0;
4332
- return false;
4333
- }
4334
-
4335
- if (refRule === rule) {
4336
- process.env.NODE_ENV !== "production" ? warning(false, "[JSS] Cyclic composition detected. \n" + rule.toString()) : void 0;
4337
- return false;
4338
- }
4339
-
4340
- parent.classes[rule.key] += " " + parent.classes[refRule.key];
4341
- return true;
4342
- }
4343
-
4344
- parent.classes[rule.key] += " " + className;
4345
- return true;
4346
- }
4347
- /**
4348
- * Convert compose property to additional class, remove property from original styles.
4349
- */
4350
-
4351
-
4352
- function jssCompose() {
4353
- function onProcessStyle(style, rule) {
4354
- if (!('composes' in style)) return style;
4355
- registerClass(rule, style.composes); // Remove composes property to prevent infinite loop.
4356
-
4357
- delete style.composes;
4358
- return style;
4359
- }
4360
-
4361
- return {
4362
- onProcessStyle: onProcessStyle
4363
- };
4364
- }
4365
-
4366
- var px = hasCSSTOMSupport && CSS ? CSS.px : 'px';
4367
- var ms = hasCSSTOMSupport && CSS ? CSS.ms : 'ms';
4368
- var percent = hasCSSTOMSupport && CSS ? CSS.percent : '%';
4369
- /**
4370
- * Generated jss-plugin-default-unit CSS property units
4371
- */
4372
-
4373
- var defaultUnits = {
4374
- // Animation properties
4375
- 'animation-delay': ms,
4376
- 'animation-duration': ms,
4377
- // Background properties
4378
- 'background-position': px,
4379
- 'background-position-x': px,
4380
- 'background-position-y': px,
4381
- 'background-size': px,
4382
- // Border Properties
4383
- border: px,
4384
- 'border-bottom': px,
4385
- 'border-bottom-left-radius': px,
4386
- 'border-bottom-right-radius': px,
4387
- 'border-bottom-width': px,
4388
- 'border-left': px,
4389
- 'border-left-width': px,
4390
- 'border-radius': px,
4391
- 'border-right': px,
4392
- 'border-right-width': px,
4393
- 'border-top': px,
4394
- 'border-top-left-radius': px,
4395
- 'border-top-right-radius': px,
4396
- 'border-top-width': px,
4397
- 'border-width': px,
4398
- 'border-block': px,
4399
- 'border-block-end': px,
4400
- 'border-block-end-width': px,
4401
- 'border-block-start': px,
4402
- 'border-block-start-width': px,
4403
- 'border-block-width': px,
4404
- 'border-inline': px,
4405
- 'border-inline-end': px,
4406
- 'border-inline-end-width': px,
4407
- 'border-inline-start': px,
4408
- 'border-inline-start-width': px,
4409
- 'border-inline-width': px,
4410
- 'border-start-start-radius': px,
4411
- 'border-start-end-radius': px,
4412
- 'border-end-start-radius': px,
4413
- 'border-end-end-radius': px,
4414
- // Margin properties
4415
- margin: px,
4416
- 'margin-bottom': px,
4417
- 'margin-left': px,
4418
- 'margin-right': px,
4419
- 'margin-top': px,
4420
- 'margin-block': px,
4421
- 'margin-block-end': px,
4422
- 'margin-block-start': px,
4423
- 'margin-inline': px,
4424
- 'margin-inline-end': px,
4425
- 'margin-inline-start': px,
4426
- // Padding properties
4427
- padding: px,
4428
- 'padding-bottom': px,
4429
- 'padding-left': px,
4430
- 'padding-right': px,
4431
- 'padding-top': px,
4432
- 'padding-block': px,
4433
- 'padding-block-end': px,
4434
- 'padding-block-start': px,
4435
- 'padding-inline': px,
4436
- 'padding-inline-end': px,
4437
- 'padding-inline-start': px,
4438
- // Mask properties
4439
- 'mask-position-x': px,
4440
- 'mask-position-y': px,
4441
- 'mask-size': px,
4442
- // Width and height properties
4443
- height: px,
4444
- width: px,
4445
- 'min-height': px,
4446
- 'max-height': px,
4447
- 'min-width': px,
4448
- 'max-width': px,
4449
- // Position properties
4450
- bottom: px,
4451
- left: px,
4452
- top: px,
4453
- right: px,
4454
- inset: px,
4455
- 'inset-block': px,
4456
- 'inset-block-end': px,
4457
- 'inset-block-start': px,
4458
- 'inset-inline': px,
4459
- 'inset-inline-end': px,
4460
- 'inset-inline-start': px,
4461
- // Shadow properties
4462
- 'box-shadow': px,
4463
- 'text-shadow': px,
4464
- // Column properties
4465
- 'column-gap': px,
4466
- 'column-rule': px,
4467
- 'column-rule-width': px,
4468
- 'column-width': px,
4469
- // Font and text properties
4470
- 'font-size': px,
4471
- 'font-size-delta': px,
4472
- 'letter-spacing': px,
4473
- 'text-decoration-thickness': px,
4474
- 'text-indent': px,
4475
- 'text-stroke': px,
4476
- 'text-stroke-width': px,
4477
- 'word-spacing': px,
4478
- // Motion properties
4479
- motion: px,
4480
- 'motion-offset': px,
4481
- // Outline properties
4482
- outline: px,
4483
- 'outline-offset': px,
4484
- 'outline-width': px,
4485
- // Perspective properties
4486
- perspective: px,
4487
- 'perspective-origin-x': percent,
4488
- 'perspective-origin-y': percent,
4489
- // Transform properties
4490
- 'transform-origin': percent,
4491
- 'transform-origin-x': percent,
4492
- 'transform-origin-y': percent,
4493
- 'transform-origin-z': percent,
4494
- // Transition properties
4495
- 'transition-delay': ms,
4496
- 'transition-duration': ms,
4497
- // Alignment properties
4498
- 'vertical-align': px,
4499
- 'flex-basis': px,
4500
- // Some random properties
4501
- 'shape-margin': px,
4502
- size: px,
4503
- gap: px,
4504
- // Grid properties
4505
- grid: px,
4506
- 'grid-gap': px,
4507
- 'row-gap': px,
4508
- 'grid-row-gap': px,
4509
- 'grid-column-gap': px,
4510
- 'grid-template-rows': px,
4511
- 'grid-template-columns': px,
4512
- 'grid-auto-rows': px,
4513
- 'grid-auto-columns': px,
4514
- // Not existing properties.
4515
- // Used to avoid issues with jss-plugin-expand integration.
4516
- 'box-shadow-x': px,
4517
- 'box-shadow-y': px,
4518
- 'box-shadow-blur': px,
4519
- 'box-shadow-spread': px,
4520
- 'font-line-height': px,
4521
- 'text-shadow-x': px,
4522
- 'text-shadow-y': px,
4523
- 'text-shadow-blur': px
4524
- };
4525
-
4526
- /**
4527
- * Clones the object and adds a camel cased property version.
4528
- */
4529
-
4530
- function addCamelCasedVersion(obj) {
4531
- var regExp = /(-[a-z])/g;
4532
-
4533
- var replace = function replace(str) {
4534
- return str[1].toUpperCase();
4535
- };
4536
-
4537
- var newObj = {};
4538
-
4539
- for (var key in obj) {
4540
- newObj[key] = obj[key];
4541
- newObj[key.replace(regExp, replace)] = obj[key];
4542
- }
4543
-
4544
- return newObj;
4545
- }
4546
-
4547
- var units = addCamelCasedVersion(defaultUnits);
4548
- /**
4549
- * Recursive deep style passing function
4550
- */
4551
-
4552
- function iterate(prop, value, options) {
4553
- if (value == null) return value;
4554
-
4555
- if (Array.isArray(value)) {
4556
- for (var i = 0; i < value.length; i++) {
4557
- value[i] = iterate(prop, value[i], options);
4558
- }
4559
- } else if (typeof value === 'object') {
4560
- if (prop === 'fallbacks') {
4561
- for (var innerProp in value) {
4562
- value[innerProp] = iterate(innerProp, value[innerProp], options);
4563
- }
4564
- } else {
4565
- for (var _innerProp in value) {
4566
- value[_innerProp] = iterate(prop + "-" + _innerProp, value[_innerProp], options);
4567
- }
4568
- } // eslint-disable-next-line no-restricted-globals
4569
-
4570
- } else if (typeof value === 'number' && isNaN(value) === false) {
4571
- var unit = options[prop] || units[prop]; // Add the unit if available, except for the special case of 0px.
4572
-
4573
- if (unit && !(value === 0 && unit === px)) {
4574
- return typeof unit === 'function' ? unit(value).toString() : "" + value + unit;
4575
- }
4576
-
4577
- return value.toString();
4578
- }
4579
-
4580
- return value;
4581
- }
4582
- /**
4583
- * Add unit to numeric values.
4584
- */
4585
-
4586
-
4587
- function defaultUnit(options) {
4588
- if (options === void 0) {
4589
- options = {};
4590
- }
4591
-
4592
- var camelCasedOptions = addCamelCasedVersion(options);
4593
-
4594
- function onProcessStyle(style, rule) {
4595
- if (rule.type !== 'style') return style;
4596
-
4597
- for (var prop in style) {
4598
- style[prop] = iterate(prop, style[prop], camelCasedOptions);
4599
- }
4600
-
4601
- return style;
4602
- }
4603
-
4604
- function onChangeValue(value, prop) {
4605
- return iterate(prop, value, camelCasedOptions);
4606
- }
4607
-
4608
- return {
4609
- onProcessStyle: onProcessStyle,
4610
- onChangeValue: onChangeValue
4611
- };
4612
- }
4613
-
4614
- /**
4615
- * A scheme for converting properties from array to regular style.
4616
- * All properties listed below will be transformed to a string separated by space.
4617
- */
4618
- var propArray = {
4619
- 'background-size': true,
4620
- 'background-position': true,
4621
- border: true,
4622
- 'border-bottom': true,
4623
- 'border-left': true,
4624
- 'border-top': true,
4625
- 'border-right': true,
4626
- 'border-radius': true,
4627
- 'border-image': true,
4628
- 'border-width': true,
4629
- 'border-style': true,
4630
- 'border-color': true,
4631
- 'box-shadow': true,
4632
- flex: true,
4633
- margin: true,
4634
- padding: true,
4635
- outline: true,
4636
- 'transform-origin': true,
4637
- transform: true,
4638
- transition: true
4639
- /**
4640
- * A scheme for converting arrays to regular styles inside of objects.
4641
- * For e.g.: "{position: [0, 0]}" => "background-position: 0 0;".
4642
- */
4643
-
4644
- };
4645
- var propArrayInObj = {
4646
- position: true,
4647
- // background-position
4648
- size: true // background-size
4649
-
4650
- /**
4651
- * A scheme for parsing and building correct styles from passed objects.
4652
- */
4653
-
4654
- };
4655
- var propObj = {
4656
- padding: {
4657
- top: 0,
4658
- right: 0,
4659
- bottom: 0,
4660
- left: 0
4661
- },
4662
- margin: {
4663
- top: 0,
4664
- right: 0,
4665
- bottom: 0,
4666
- left: 0
4667
- },
4668
- background: {
4669
- attachment: null,
4670
- color: null,
4671
- image: null,
4672
- position: null,
4673
- repeat: null
4674
- },
4675
- border: {
4676
- width: null,
4677
- style: null,
4678
- color: null
4679
- },
4680
- 'border-top': {
4681
- width: null,
4682
- style: null,
4683
- color: null
4684
- },
4685
- 'border-right': {
4686
- width: null,
4687
- style: null,
4688
- color: null
4689
- },
4690
- 'border-bottom': {
4691
- width: null,
4692
- style: null,
4693
- color: null
4694
- },
4695
- 'border-left': {
4696
- width: null,
4697
- style: null,
4698
- color: null
4699
- },
4700
- outline: {
4701
- width: null,
4702
- style: null,
4703
- color: null
4704
- },
4705
- 'list-style': {
4706
- type: null,
4707
- position: null,
4708
- image: null
4709
- },
4710
- transition: {
4711
- property: null,
4712
- duration: null,
4713
- 'timing-function': null,
4714
- timingFunction: null,
4715
- // Needed for avoiding comilation issues with jss-plugin-camel-case
4716
- delay: null
4717
- },
4718
- animation: {
4719
- name: null,
4720
- duration: null,
4721
- 'timing-function': null,
4722
- timingFunction: null,
4723
- // Needed to avoid compilation issues with jss-plugin-camel-case
4724
- delay: null,
4725
- 'iteration-count': null,
4726
- iterationCount: null,
4727
- // Needed to avoid compilation issues with jss-plugin-camel-case
4728
- direction: null,
4729
- 'fill-mode': null,
4730
- fillMode: null,
4731
- // Needed to avoid compilation issues with jss-plugin-camel-case
4732
- 'play-state': null,
4733
- playState: null // Needed to avoid compilation issues with jss-plugin-camel-case
4734
-
4735
- },
4736
- 'box-shadow': {
4737
- x: 0,
4738
- y: 0,
4739
- blur: 0,
4740
- spread: 0,
4741
- color: null,
4742
- inset: null
4743
- },
4744
- 'text-shadow': {
4745
- x: 0,
4746
- y: 0,
4747
- blur: null,
4748
- color: null
4749
- }
4750
- /**
4751
- * A scheme for converting non-standart properties inside object.
4752
- * For e.g.: include 'border-radius' property inside 'border' object.
4753
- */
4754
-
4755
- };
4756
- var customPropObj = {
4757
- border: {
4758
- radius: 'border-radius',
4759
- image: 'border-image',
4760
- width: 'border-width',
4761
- style: 'border-style',
4762
- color: 'border-color'
4763
- },
4764
- 'border-bottom': {
4765
- width: 'border-bottom-width',
4766
- style: 'border-bottom-style',
4767
- color: 'border-bottom-color'
4768
- },
4769
- 'border-top': {
4770
- width: 'border-top-width',
4771
- style: 'border-top-style',
4772
- color: 'border-top-color'
4773
- },
4774
- 'border-left': {
4775
- width: 'border-left-width',
4776
- style: 'border-left-style',
4777
- color: 'border-left-color'
4778
- },
4779
- 'border-right': {
4780
- width: 'border-right-width',
4781
- style: 'border-right-style',
4782
- color: 'border-right-color'
4783
- },
4784
- background: {
4785
- size: 'background-size',
4786
- image: 'background-image'
4787
- },
4788
- font: {
4789
- style: 'font-style',
4790
- variant: 'font-variant',
4791
- weight: 'font-weight',
4792
- stretch: 'font-stretch',
4793
- size: 'font-size',
4794
- family: 'font-family',
4795
- lineHeight: 'line-height',
4796
- // Needed to avoid compilation issues with jss-plugin-camel-case
4797
- 'line-height': 'line-height'
4798
- },
4799
- flex: {
4800
- grow: 'flex-grow',
4801
- basis: 'flex-basis',
4802
- direction: 'flex-direction',
4803
- wrap: 'flex-wrap',
4804
- flow: 'flex-flow',
4805
- shrink: 'flex-shrink'
4806
- },
4807
- align: {
4808
- self: 'align-self',
4809
- items: 'align-items',
4810
- content: 'align-content'
4811
- },
4812
- grid: {
4813
- 'template-columns': 'grid-template-columns',
4814
- templateColumns: 'grid-template-columns',
4815
- 'template-rows': 'grid-template-rows',
4816
- templateRows: 'grid-template-rows',
4817
- 'template-areas': 'grid-template-areas',
4818
- templateAreas: 'grid-template-areas',
4819
- template: 'grid-template',
4820
- 'auto-columns': 'grid-auto-columns',
4821
- autoColumns: 'grid-auto-columns',
4822
- 'auto-rows': 'grid-auto-rows',
4823
- autoRows: 'grid-auto-rows',
4824
- 'auto-flow': 'grid-auto-flow',
4825
- autoFlow: 'grid-auto-flow',
4826
- row: 'grid-row',
4827
- column: 'grid-column',
4828
- 'row-start': 'grid-row-start',
4829
- rowStart: 'grid-row-start',
4830
- 'row-end': 'grid-row-end',
4831
- rowEnd: 'grid-row-end',
4832
- 'column-start': 'grid-column-start',
4833
- columnStart: 'grid-column-start',
4834
- 'column-end': 'grid-column-end',
4835
- columnEnd: 'grid-column-end',
4836
- area: 'grid-area',
4837
- gap: 'grid-gap',
4838
- 'row-gap': 'grid-row-gap',
4839
- rowGap: 'grid-row-gap',
4840
- 'column-gap': 'grid-column-gap',
4841
- columnGap: 'grid-column-gap'
4842
- }
4843
- };
4844
-
4845
- /* eslint-disable no-use-before-define */
4846
- /**
4847
- * Map values by given prop.
4848
- *
4849
- * @param {Array} array of values
4850
- * @param {String} original property
4851
- * @param {String} original rule
4852
- * @return {String} mapped values
4853
- */
4854
-
4855
- function mapValuesByProp(value, prop, rule) {
4856
- return value.map(function (item) {
4857
- return objectToArray(item, prop, rule, false, true);
4858
- });
4859
- }
4860
- /**
4861
- * Convert array to nested array, if needed
4862
- */
4863
-
4864
-
4865
- function processArray(value, prop, scheme, rule) {
4866
- if (scheme[prop] == null) return value;
4867
- if (value.length === 0) return [];
4868
- if (Array.isArray(value[0])) return processArray(value[0], prop, scheme, rule);
4869
-
4870
- if (typeof value[0] === 'object') {
4871
- return mapValuesByProp(value, prop, rule);
4872
- }
4873
-
4874
- return [value];
4875
- }
4876
- /**
4877
- * Convert object to array.
4878
- */
4879
-
4880
-
4881
- function objectToArray(value, prop, rule, isFallback, isInArray) {
4882
- if (!(propObj[prop] || customPropObj[prop])) return [];
4883
- var result = []; // Check if exists any non-standard property
4884
-
4885
- if (customPropObj[prop]) {
4886
- // eslint-disable-next-line no-param-reassign
4887
- value = customPropsToStyle(value, rule, customPropObj[prop], isFallback);
4888
- } // Pass throught all standart props
4889
-
4890
-
4891
- if (Object.keys(value).length) {
4892
- for (var baseProp in propObj[prop]) {
4893
- if (value[baseProp]) {
4894
- if (Array.isArray(value[baseProp])) {
4895
- result.push(propArrayInObj[baseProp] === null ? value[baseProp] : value[baseProp].join(' '));
4896
- } else result.push(value[baseProp]);
4897
-
4898
- continue;
4899
- } // Add default value from props config.
4900
-
4901
-
4902
- if (propObj[prop][baseProp] != null) {
4903
- result.push(propObj[prop][baseProp]);
4904
- }
4905
- }
4906
- }
4907
-
4908
- if (!result.length || isInArray) return result;
4909
- return [result];
4910
- }
4911
- /**
4912
- * Convert custom properties values to styles adding them to rule directly
4913
- */
4914
-
4915
-
4916
- function customPropsToStyle(value, rule, customProps, isFallback) {
4917
- for (var prop in customProps) {
4918
- var propName = customProps[prop]; // If current property doesn't exist already in rule - add new one
4919
-
4920
- if (typeof value[prop] !== 'undefined' && (isFallback || !rule.prop(propName))) {
4921
- var _styleDetector;
4922
-
4923
- var appendedValue = styleDetector((_styleDetector = {}, _styleDetector[propName] = value[prop], _styleDetector), rule)[propName]; // Add style directly in rule
4924
-
4925
- if (isFallback) rule.style.fallbacks[propName] = appendedValue;else rule.style[propName] = appendedValue;
4926
- } // Delete converted property to avoid double converting
4927
-
4928
-
4929
- delete value[prop];
4930
- }
4931
-
4932
- return value;
4933
- }
4934
- /**
4935
- * Detect if a style needs to be converted.
4936
- */
4937
-
4938
-
4939
- function styleDetector(style, rule, isFallback) {
4940
- for (var prop in style) {
4941
- var value = style[prop];
4942
-
4943
- if (Array.isArray(value)) {
4944
- // Check double arrays to avoid recursion.
4945
- if (!Array.isArray(value[0])) {
4946
- if (prop === 'fallbacks') {
4947
- for (var index = 0; index < style.fallbacks.length; index++) {
4948
- style.fallbacks[index] = styleDetector(style.fallbacks[index], rule, true);
4949
- }
4950
-
4951
- continue;
4952
- }
4953
-
4954
- style[prop] = processArray(value, prop, propArray, rule); // Avoid creating properties with empty values
4955
-
4956
- if (!style[prop].length) delete style[prop];
4957
- }
4958
- } else if (typeof value === 'object') {
4959
- if (prop === 'fallbacks') {
4960
- style.fallbacks = styleDetector(style.fallbacks, rule, true);
4961
- continue;
4962
- }
4963
-
4964
- style[prop] = objectToArray(value, prop, rule, isFallback); // Avoid creating properties with empty values
4965
-
4966
- if (!style[prop].length) delete style[prop];
4967
- } // Maybe a computed value resulting in an empty string
4968
- else if (style[prop] === '') delete style[prop];
4969
- }
4970
-
4971
- return style;
4972
- }
4973
- /**
4974
- * Adds possibility to write expanded styles.
4975
- */
4976
-
4977
-
4978
- function jssExpand() {
4979
- function onProcessStyle(style, rule) {
4980
- if (!style || rule.type !== 'style') return style;
4981
-
4982
- if (Array.isArray(style)) {
4983
- // Pass rules one by one and reformat them
4984
- for (var index = 0; index < style.length; index++) {
4985
- style[index] = styleDetector(style[index], rule);
4986
- }
4987
-
4988
- return style;
4989
- }
4990
-
4991
- return styleDetector(style, rule);
4992
- }
4993
-
4994
- return {
4995
- onProcessStyle: onProcessStyle
4996
- };
4997
- }
4998
-
4999
- var cssVendor_cjs = {};
5000
-
5001
- var require$$0 = /*@__PURE__*/getAugmentedNamespace(module$1);
5002
-
5003
- var toConsumableArrayExports = {};
5004
- var toConsumableArray = {
5005
- get exports(){ return toConsumableArrayExports; },
5006
- set exports(v){ toConsumableArrayExports = v; },
5007
- };
5008
-
5009
- var arrayWithoutHolesExports = {};
5010
- var arrayWithoutHoles = {
5011
- get exports(){ return arrayWithoutHolesExports; },
5012
- set exports(v){ arrayWithoutHolesExports = v; },
5013
- };
5014
-
5015
- var arrayLikeToArrayExports = {};
5016
- var arrayLikeToArray = {
5017
- get exports(){ return arrayLikeToArrayExports; },
5018
- set exports(v){ arrayLikeToArrayExports = v; },
5019
- };
5020
-
5021
- (function (module) {
5022
- function _arrayLikeToArray(arr, len) {
5023
- if (len == null || len > arr.length) len = arr.length;
5024
- for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];
5025
- return arr2;
5026
- }
5027
- module.exports = _arrayLikeToArray, module.exports.__esModule = true, module.exports["default"] = module.exports;
5028
- } (arrayLikeToArray));
5029
-
5030
- (function (module) {
5031
- var arrayLikeToArray = arrayLikeToArrayExports;
5032
- function _arrayWithoutHoles(arr) {
5033
- if (Array.isArray(arr)) return arrayLikeToArray(arr);
5034
- }
5035
- module.exports = _arrayWithoutHoles, module.exports.__esModule = true, module.exports["default"] = module.exports;
5036
- } (arrayWithoutHoles));
5037
-
5038
- var iterableToArrayExports = {};
5039
- var iterableToArray = {
5040
- get exports(){ return iterableToArrayExports; },
5041
- set exports(v){ iterableToArrayExports = v; },
5042
- };
5043
-
5044
- (function (module) {
5045
- function _iterableToArray(iter) {
5046
- if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
5047
- }
5048
- module.exports = _iterableToArray, module.exports.__esModule = true, module.exports["default"] = module.exports;
5049
- } (iterableToArray));
5050
-
5051
- var unsupportedIterableToArrayExports = {};
5052
- var unsupportedIterableToArray = {
5053
- get exports(){ return unsupportedIterableToArrayExports; },
5054
- set exports(v){ unsupportedIterableToArrayExports = v; },
5055
- };
5056
-
5057
- (function (module) {
5058
- var arrayLikeToArray = arrayLikeToArrayExports;
5059
- function _unsupportedIterableToArray(o, minLen) {
5060
- if (!o) return;
5061
- if (typeof o === "string") return arrayLikeToArray(o, minLen);
5062
- var n = Object.prototype.toString.call(o).slice(8, -1);
5063
- if (n === "Object" && o.constructor) n = o.constructor.name;
5064
- if (n === "Map" || n === "Set") return Array.from(o);
5065
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);
5066
- }
5067
- module.exports = _unsupportedIterableToArray, module.exports.__esModule = true, module.exports["default"] = module.exports;
5068
- } (unsupportedIterableToArray));
5069
-
5070
- var nonIterableSpreadExports = {};
5071
- var nonIterableSpread = {
5072
- get exports(){ return nonIterableSpreadExports; },
5073
- set exports(v){ nonIterableSpreadExports = v; },
5074
- };
5075
-
5076
- (function (module) {
5077
- function _nonIterableSpread() {
5078
- throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
5079
- }
5080
- module.exports = _nonIterableSpread, module.exports.__esModule = true, module.exports["default"] = module.exports;
5081
- } (nonIterableSpread));
5082
-
5083
- (function (module) {
5084
- var arrayWithoutHoles = arrayWithoutHolesExports;
5085
- var iterableToArray = iterableToArrayExports;
5086
- var unsupportedIterableToArray = unsupportedIterableToArrayExports;
5087
- var nonIterableSpread = nonIterableSpreadExports;
5088
- function _toConsumableArray(arr) {
5089
- return arrayWithoutHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableSpread();
5090
- }
5091
- module.exports = _toConsumableArray, module.exports.__esModule = true, module.exports["default"] = module.exports;
5092
- } (toConsumableArray));
5093
-
5094
- Object.defineProperty(cssVendor_cjs, '__esModule', { value: true });
5095
-
5096
- function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; }
5097
-
5098
- var isInBrowser = _interopDefault(require$$0);
5099
- var _toConsumableArray = _interopDefault(toConsumableArrayExports);
5100
-
5101
- // Export javascript style and css style vendor prefixes.
5102
- var js = '';
5103
- var css = '';
5104
- var vendor = '';
5105
- var browser = '';
5106
- var isTouch = isInBrowser && 'ontouchstart' in document.documentElement; // We should not do anything if required serverside.
5107
-
5108
- if (isInBrowser) {
5109
- // Order matters. We need to check Webkit the last one because
5110
- // other vendors use to add Webkit prefixes to some properties
5111
- var jsCssMap = {
5112
- Moz: '-moz-',
5113
- ms: '-ms-',
5114
- O: '-o-',
5115
- Webkit: '-webkit-'
5116
- };
5117
-
5118
- var _document$createEleme = document.createElement('p'),
5119
- style = _document$createEleme.style;
5120
-
5121
- var testProp = 'Transform';
5122
-
5123
- for (var key in jsCssMap) {
5124
- if (key + testProp in style) {
5125
- js = key;
5126
- css = jsCssMap[key];
5127
- break;
5128
- }
5129
- } // Correctly detect the Edge browser.
5130
-
5131
-
5132
- if (js === 'Webkit' && 'msHyphens' in style) {
5133
- js = 'ms';
5134
- css = jsCssMap.ms;
5135
- browser = 'edge';
5136
- } // Correctly detect the Safari browser.
5137
-
5138
-
5139
- if (js === 'Webkit' && '-apple-trailing-word' in style) {
5140
- vendor = 'apple';
5141
- }
5142
- }
5143
- /**
5144
- * Vendor prefix string for the current browser.
5145
- *
5146
- * @type {{js: String, css: String, vendor: String, browser: String}}
5147
- * @api public
5148
- */
5149
-
5150
-
5151
- var prefix = {
5152
- js: js,
5153
- css: css,
5154
- vendor: vendor,
5155
- browser: browser,
5156
- isTouch: isTouch
5157
- };
5158
-
5159
- /**
5160
- * Test if a keyframe at-rule should be prefixed or not
5161
- *
5162
- * @param {String} vendor prefix string for the current browser.
5163
- * @return {String}
5164
- * @api public
5165
- */
5166
-
5167
- function supportedKeyframes(key) {
5168
- // Keyframes is already prefixed. e.g. key = '@-webkit-keyframes a'
5169
- if (key[1] === '-') return key; // No need to prefix IE/Edge. Older browsers will ignore unsupported rules.
5170
- // https://caniuse.com/#search=keyframes
5171
-
5172
- if (prefix.js === 'ms') return key;
5173
- return "@" + prefix.css + "keyframes" + key.substr(10);
5174
- }
5175
-
5176
- // https://caniuse.com/#search=appearance
5177
-
5178
- var appearence = {
5179
- noPrefill: ['appearance'],
5180
- supportedProperty: function supportedProperty(prop) {
5181
- if (prop !== 'appearance') return false;
5182
- if (prefix.js === 'ms') return "-webkit-" + prop;
5183
- return prefix.css + prop;
5184
- }
5185
- };
5186
-
5187
- // https://caniuse.com/#search=color-adjust
5188
-
5189
- var colorAdjust = {
5190
- noPrefill: ['color-adjust'],
5191
- supportedProperty: function supportedProperty(prop) {
5192
- if (prop !== 'color-adjust') return false;
5193
- if (prefix.js === 'Webkit') return prefix.css + "print-" + prop;
5194
- return prop;
5195
- }
5196
- };
5197
-
5198
- var regExp = /[-\s]+(.)?/g;
5199
- /**
5200
- * Replaces the letter with the capital letter
5201
- *
5202
- * @param {String} match
5203
- * @param {String} c
5204
- * @return {String}
5205
- * @api private
5206
- */
5207
-
5208
- function toUpper(match, c) {
5209
- return c ? c.toUpperCase() : '';
5210
- }
5211
- /**
5212
- * Convert dash separated strings to camel-cased.
5213
- *
5214
- * @param {String} str
5215
- * @return {String}
5216
- * @api private
5217
- */
5218
-
5219
-
5220
- function camelize(str) {
5221
- return str.replace(regExp, toUpper);
5222
- }
5223
-
5224
- /**
5225
- * Convert dash separated strings to pascal cased.
5226
- *
5227
- * @param {String} str
5228
- * @return {String}
5229
- * @api private
5230
- */
5231
-
5232
- function pascalize(str) {
5233
- return camelize("-" + str);
5234
- }
5235
-
5236
- // but we can use a longhand property instead.
5237
- // https://caniuse.com/#search=mask
5238
-
5239
- var mask = {
5240
- noPrefill: ['mask'],
5241
- supportedProperty: function supportedProperty(prop, style) {
5242
- if (!/^mask/.test(prop)) return false;
5243
-
5244
- if (prefix.js === 'Webkit') {
5245
- var longhand = 'mask-image';
5246
-
5247
- if (camelize(longhand) in style) {
5248
- return prop;
5249
- }
5250
-
5251
- if (prefix.js + pascalize(longhand) in style) {
5252
- return prefix.css + prop;
5253
- }
5254
- }
5255
-
5256
- return prop;
5257
- }
5258
- };
5259
-
5260
- // https://caniuse.com/#search=text-orientation
5261
-
5262
- var textOrientation = {
5263
- noPrefill: ['text-orientation'],
5264
- supportedProperty: function supportedProperty(prop) {
5265
- if (prop !== 'text-orientation') return false;
5266
-
5267
- if (prefix.vendor === 'apple' && !prefix.isTouch) {
5268
- return prefix.css + prop;
5269
- }
5270
-
5271
- return prop;
5272
- }
5273
- };
5274
-
5275
- // https://caniuse.com/#search=transform
5276
-
5277
- var transform = {
5278
- noPrefill: ['transform'],
5279
- supportedProperty: function supportedProperty(prop, style, options) {
5280
- if (prop !== 'transform') return false;
5281
-
5282
- if (options.transform) {
5283
- return prop;
5284
- }
5285
-
5286
- return prefix.css + prop;
5287
- }
5288
- };
5289
-
5290
- // https://caniuse.com/#search=transition
5291
-
5292
- var transition = {
5293
- noPrefill: ['transition'],
5294
- supportedProperty: function supportedProperty(prop, style, options) {
5295
- if (prop !== 'transition') return false;
5296
-
5297
- if (options.transition) {
5298
- return prop;
5299
- }
5300
-
5301
- return prefix.css + prop;
5302
- }
5303
- };
5304
-
5305
- // https://caniuse.com/#search=writing-mode
5306
-
5307
- var writingMode = {
5308
- noPrefill: ['writing-mode'],
5309
- supportedProperty: function supportedProperty(prop) {
5310
- if (prop !== 'writing-mode') return false;
5311
-
5312
- if (prefix.js === 'Webkit' || prefix.js === 'ms' && prefix.browser !== 'edge') {
5313
- return prefix.css + prop;
5314
- }
5315
-
5316
- return prop;
5317
- }
5318
- };
5319
-
5320
- // https://caniuse.com/#search=user-select
5321
-
5322
- var userSelect = {
5323
- noPrefill: ['user-select'],
5324
- supportedProperty: function supportedProperty(prop) {
5325
- if (prop !== 'user-select') return false;
5326
-
5327
- if (prefix.js === 'Moz' || prefix.js === 'ms' || prefix.vendor === 'apple') {
5328
- return prefix.css + prop;
5329
- }
5330
-
5331
- return prop;
5332
- }
5333
- };
5334
-
5335
- // https://caniuse.com/#search=multicolumn
5336
- // https://github.com/postcss/autoprefixer/issues/491
5337
- // https://github.com/postcss/autoprefixer/issues/177
5338
-
5339
- var breakPropsOld = {
5340
- supportedProperty: function supportedProperty(prop, style) {
5341
- if (!/^break-/.test(prop)) return false;
5342
-
5343
- if (prefix.js === 'Webkit') {
5344
- var jsProp = "WebkitColumn" + pascalize(prop);
5345
- return jsProp in style ? prefix.css + "column-" + prop : false;
5346
- }
5347
-
5348
- if (prefix.js === 'Moz') {
5349
- var _jsProp = "page" + pascalize(prop);
5350
-
5351
- return _jsProp in style ? "page-" + prop : false;
5352
- }
5353
-
5354
- return false;
5355
- }
5356
- };
5357
-
5358
- // See https://github.com/postcss/autoprefixer/issues/324.
5359
-
5360
- var inlineLogicalOld = {
5361
- supportedProperty: function supportedProperty(prop, style) {
5362
- if (!/^(border|margin|padding)-inline/.test(prop)) return false;
5363
- if (prefix.js === 'Moz') return prop;
5364
- var newProp = prop.replace('-inline', '');
5365
- return prefix.js + pascalize(newProp) in style ? prefix.css + newProp : false;
5366
- }
5367
- };
5368
-
5369
- // Camelization is required because we can't test using.
5370
- // CSS syntax for e.g. in FF.
5371
-
5372
- var unprefixed = {
5373
- supportedProperty: function supportedProperty(prop, style) {
5374
- return camelize(prop) in style ? prop : false;
5375
- }
5376
- };
5377
-
5378
- var prefixed = {
5379
- supportedProperty: function supportedProperty(prop, style) {
5380
- var pascalized = pascalize(prop); // Return custom CSS variable without prefixing.
5381
-
5382
- if (prop[0] === '-') return prop; // Return already prefixed value without prefixing.
5383
-
5384
- if (prop[0] === '-' && prop[1] === '-') return prop;
5385
- if (prefix.js + pascalized in style) return prefix.css + prop; // Try webkit fallback.
5386
-
5387
- if (prefix.js !== 'Webkit' && "Webkit" + pascalized in style) return "-webkit-" + prop;
5388
- return false;
5389
- }
5390
- };
5391
-
5392
- // https://caniuse.com/#search=scroll-snap
5393
-
5394
- var scrollSnap = {
5395
- supportedProperty: function supportedProperty(prop) {
5396
- if (prop.substring(0, 11) !== 'scroll-snap') return false;
5397
-
5398
- if (prefix.js === 'ms') {
5399
- return "" + prefix.css + prop;
5400
- }
5401
-
5402
- return prop;
5403
- }
5404
- };
5405
-
5406
- // https://caniuse.com/#search=overscroll-behavior
5407
-
5408
- var overscrollBehavior = {
5409
- supportedProperty: function supportedProperty(prop) {
5410
- if (prop !== 'overscroll-behavior') return false;
5411
-
5412
- if (prefix.js === 'ms') {
5413
- return prefix.css + "scroll-chaining";
5414
- }
5415
-
5416
- return prop;
5417
- }
5418
- };
5419
-
5420
- var propMap = {
5421
- 'flex-grow': 'flex-positive',
5422
- 'flex-shrink': 'flex-negative',
5423
- 'flex-basis': 'flex-preferred-size',
5424
- 'justify-content': 'flex-pack',
5425
- order: 'flex-order',
5426
- 'align-items': 'flex-align',
5427
- 'align-content': 'flex-line-pack' // 'align-self' is handled by 'align-self' plugin.
5428
-
5429
- }; // Support old flex spec from 2012.
5430
-
5431
- var flex2012 = {
5432
- supportedProperty: function supportedProperty(prop, style) {
5433
- var newProp = propMap[prop];
5434
- if (!newProp) return false;
5435
- return prefix.js + pascalize(newProp) in style ? prefix.css + newProp : false;
5436
- }
5437
- };
5438
-
5439
- var propMap$1 = {
5440
- flex: 'box-flex',
5441
- 'flex-grow': 'box-flex',
5442
- 'flex-direction': ['box-orient', 'box-direction'],
5443
- order: 'box-ordinal-group',
5444
- 'align-items': 'box-align',
5445
- 'flex-flow': ['box-orient', 'box-direction'],
5446
- 'justify-content': 'box-pack'
5447
- };
5448
- var propKeys = Object.keys(propMap$1);
5449
-
5450
- var prefixCss = function prefixCss(p) {
5451
- return prefix.css + p;
5452
- }; // Support old flex spec from 2009.
5453
-
5454
-
5455
- var flex2009 = {
5456
- supportedProperty: function supportedProperty(prop, style, _ref) {
5457
- var multiple = _ref.multiple;
5458
-
5459
- if (propKeys.indexOf(prop) > -1) {
5460
- var newProp = propMap$1[prop];
5461
-
5462
- if (!Array.isArray(newProp)) {
5463
- return prefix.js + pascalize(newProp) in style ? prefix.css + newProp : false;
5464
- }
5465
-
5466
- if (!multiple) return false;
5467
-
5468
- for (var i = 0; i < newProp.length; i++) {
5469
- if (!(prefix.js + pascalize(newProp[0]) in style)) {
5470
- return false;
5471
- }
5472
- }
5473
-
5474
- return newProp.map(prefixCss);
5475
- }
5476
-
5477
- return false;
5478
- }
5479
- };
5480
-
5481
- // plugins = [
5482
- // ...plugins,
5483
- // breakPropsOld,
5484
- // inlineLogicalOld,
5485
- // unprefixed,
5486
- // prefixed,
5487
- // scrollSnap,
5488
- // flex2012,
5489
- // flex2009
5490
- // ]
5491
- // Plugins without 'noPrefill' value, going last.
5492
- // 'flex-*' plugins should be at the bottom.
5493
- // 'flex2009' going after 'flex2012'.
5494
- // 'prefixed' going after 'unprefixed'
5495
-
5496
- var plugins = [appearence, colorAdjust, mask, textOrientation, transform, transition, writingMode, userSelect, breakPropsOld, inlineLogicalOld, unprefixed, prefixed, scrollSnap, overscrollBehavior, flex2012, flex2009];
5497
- var propertyDetectors = plugins.filter(function (p) {
5498
- return p.supportedProperty;
5499
- }).map(function (p) {
5500
- return p.supportedProperty;
5501
- });
5502
- var noPrefill = plugins.filter(function (p) {
5503
- return p.noPrefill;
5504
- }).reduce(function (a, p) {
5505
- a.push.apply(a, _toConsumableArray(p.noPrefill));
5506
- return a;
5507
- }, []);
5508
-
5509
- var el;
5510
- var cache = {};
5511
-
5512
- if (isInBrowser) {
5513
- el = document.createElement('p'); // We test every property on vendor prefix requirement.
5514
- // Once tested, result is cached. It gives us up to 70% perf boost.
5515
- // http://jsperf.com/element-style-object-access-vs-plain-object
5516
- //
5517
- // Prefill cache with known css properties to reduce amount of
5518
- // properties we need to feature test at runtime.
5519
- // http://davidwalsh.name/vendor-prefix
5520
-
5521
- var computed = window.getComputedStyle(document.documentElement, '');
5522
-
5523
- for (var key$1 in computed) {
5524
- // eslint-disable-next-line no-restricted-globals
5525
- if (!isNaN(key$1)) cache[computed[key$1]] = computed[key$1];
5526
- } // Properties that cannot be correctly detected using the
5527
- // cache prefill method.
5528
-
5529
-
5530
- noPrefill.forEach(function (x) {
5531
- return delete cache[x];
5532
- });
5533
- }
5534
- /**
5535
- * Test if a property is supported, returns supported property with vendor
5536
- * prefix if required. Returns `false` if not supported.
5537
- *
5538
- * @param {String} prop dash separated
5539
- * @param {Object} [options]
5540
- * @return {String|Boolean}
5541
- * @api public
5542
- */
5543
-
5544
-
5545
- function supportedProperty(prop, options) {
5546
- if (options === void 0) {
5547
- options = {};
5548
- }
5549
-
5550
- // For server-side rendering.
5551
- if (!el) return prop; // Remove cache for benchmark tests or return property from the cache.
5552
-
5553
- if (process.env.NODE_ENV !== 'benchmark' && cache[prop] != null) {
5554
- return cache[prop];
5555
- } // Check if 'transition' or 'transform' natively supported in browser.
5556
-
5557
-
5558
- if (prop === 'transition' || prop === 'transform') {
5559
- options[prop] = prop in el.style;
5560
- } // Find a plugin for current prefix property.
5561
-
5562
-
5563
- for (var i = 0; i < propertyDetectors.length; i++) {
5564
- cache[prop] = propertyDetectors[i](prop, el.style, options); // Break loop, if value found.
5565
-
5566
- if (cache[prop]) break;
5567
- } // Reset styles for current property.
5568
- // Firefox can even throw an error for invalid properties, e.g., "0".
5569
-
5570
-
5571
- try {
5572
- el.style[prop] = '';
5573
- } catch (err) {
5574
- return false;
5575
- }
5576
-
5577
- return cache[prop];
5578
- }
5579
-
5580
- var cache$1 = {};
5581
- var transitionProperties = {
5582
- transition: 1,
5583
- 'transition-property': 1,
5584
- '-webkit-transition': 1,
5585
- '-webkit-transition-property': 1
5586
- };
5587
- var transPropsRegExp = /(^\s*[\w-]+)|, (\s*[\w-]+)(?![^()]*\))/g;
5588
- var el$1;
5589
- /**
5590
- * Returns prefixed value transition/transform if needed.
5591
- *
5592
- * @param {String} match
5593
- * @param {String} p1
5594
- * @param {String} p2
5595
- * @return {String}
5596
- * @api private
5597
- */
5598
-
5599
- function prefixTransitionCallback(match, p1, p2) {
5600
- if (p1 === 'var') return 'var';
5601
- if (p1 === 'all') return 'all';
5602
- if (p2 === 'all') return ', all';
5603
- var prefixedValue = p1 ? supportedProperty(p1) : ", " + supportedProperty(p2);
5604
- if (!prefixedValue) return p1 || p2;
5605
- return prefixedValue;
5606
- }
5607
-
5608
- if (isInBrowser) el$1 = document.createElement('p');
5609
- /**
5610
- * Returns prefixed value if needed. Returns `false` if value is not supported.
5611
- *
5612
- * @param {String} property
5613
- * @param {String} value
5614
- * @return {String|Boolean}
5615
- * @api public
5616
- */
5617
-
5618
- function supportedValue(property, value) {
5619
- // For server-side rendering.
5620
- var prefixedValue = value;
5621
- if (!el$1 || property === 'content') return value; // It is a string or a number as a string like '1'.
5622
- // We want only prefixable values here.
5623
- // eslint-disable-next-line no-restricted-globals
5624
-
5625
- if (typeof prefixedValue !== 'string' || !isNaN(parseInt(prefixedValue, 10))) {
5626
- return prefixedValue;
5627
- } // Create cache key for current value.
5628
-
5629
-
5630
- var cacheKey = property + prefixedValue; // Remove cache for benchmark tests or return value from cache.
5631
-
5632
- if (process.env.NODE_ENV !== 'benchmark' && cache$1[cacheKey] != null) {
5633
- return cache$1[cacheKey];
5634
- } // IE can even throw an error in some cases, for e.g. style.content = 'bar'.
5635
-
5636
-
5637
- try {
5638
- // Test value as it is.
5639
- el$1.style[property] = prefixedValue;
5640
- } catch (err) {
5641
- // Return false if value not supported.
5642
- cache$1[cacheKey] = false;
5643
- return false;
5644
- } // If 'transition' or 'transition-property' property.
5645
-
5646
-
5647
- if (transitionProperties[property]) {
5648
- prefixedValue = prefixedValue.replace(transPropsRegExp, prefixTransitionCallback);
5649
- } else if (el$1.style[property] === '') {
5650
- // Value with a vendor prefix.
5651
- prefixedValue = prefix.css + prefixedValue; // Hardcode test to convert "flex" to "-ms-flexbox" for IE10.
5652
-
5653
- if (prefixedValue === '-ms-flex') el$1.style[property] = '-ms-flexbox'; // Test prefixed value.
5654
-
5655
- el$1.style[property] = prefixedValue; // Return false if value not supported.
5656
-
5657
- if (el$1.style[property] === '') {
5658
- cache$1[cacheKey] = false;
5659
- return false;
5660
- }
5661
- } // Reset styles for current property.
5662
-
5663
-
5664
- el$1.style[property] = ''; // Write current value to cache.
5665
-
5666
- cache$1[cacheKey] = prefixedValue;
5667
- return cache$1[cacheKey];
5668
- }
5669
-
5670
- cssVendor_cjs.prefix = prefix;
5671
- var supportedKeyframes_1 = cssVendor_cjs.supportedKeyframes = supportedKeyframes;
5672
- var supportedProperty_1 = cssVendor_cjs.supportedProperty = supportedProperty;
5673
- var supportedValue_1 = cssVendor_cjs.supportedValue = supportedValue;
5674
-
5675
- /**
5676
- * Add vendor prefix to a property name when needed.
5677
- */
5678
-
5679
- function jssVendorPrefixer() {
5680
- function onProcessRule(rule) {
5681
- if (rule.type === 'keyframes') {
5682
- var atRule = rule;
5683
- atRule.at = supportedKeyframes_1(atRule.at);
5684
- }
5685
- }
5686
-
5687
- function prefixStyle(style) {
5688
- for (var prop in style) {
5689
- var value = style[prop];
5690
-
5691
- if (prop === 'fallbacks' && Array.isArray(value)) {
5692
- style[prop] = value.map(prefixStyle);
5693
- continue;
5694
- }
5695
-
5696
- var changeProp = false;
5697
- var supportedProp = supportedProperty_1(prop);
5698
- if (supportedProp && supportedProp !== prop) changeProp = true;
5699
- var changeValue = false;
5700
- var supportedValue$1 = supportedValue_1(supportedProp, toCssValue(value));
5701
- if (supportedValue$1 && supportedValue$1 !== value) changeValue = true;
5702
-
5703
- if (changeProp || changeValue) {
5704
- if (changeProp) delete style[prop];
5705
- style[supportedProp || prop] = supportedValue$1 || value;
5706
- }
5707
- }
5708
-
5709
- return style;
5710
- }
5711
-
5712
- function onProcessStyle(style, rule) {
5713
- if (rule.type !== 'style') return style;
5714
- return prefixStyle(style);
5715
- }
5716
-
5717
- function onChangeValue(value, prop) {
5718
- return supportedValue_1(prop, toCssValue(value)) || value;
5719
- }
5720
-
5721
- return {
5722
- onProcessRule: onProcessRule,
5723
- onProcessStyle: onProcessStyle,
5724
- onChangeValue: onChangeValue
5725
- };
5726
- }
5727
-
5728
- /**
5729
- * Sort props by length.
5730
- */
5731
- function jssPropsSort() {
5732
- var sort = function sort(prop0, prop1) {
5733
- if (prop0.length === prop1.length) {
5734
- return prop0 > prop1 ? 1 : -1;
5735
- }
5736
-
5737
- return prop0.length - prop1.length;
5738
- };
5739
-
5740
- return {
5741
- onProcessStyle: function onProcessStyle(style, rule) {
5742
- if (rule.type !== 'style') return style;
5743
- var newStyle = {};
5744
- var props = Object.keys(style).sort(sort);
5745
-
5746
- for (var i = 0; i < props.length; i++) {
5747
- newStyle[props[i]] = style[props[i]];
5748
- }
5749
-
5750
- return newStyle;
5751
- }
5752
- };
5753
- }
5754
-
5755
- var create = function create(options) {
5756
- if (options === void 0) {
5757
- options = {};
5758
- }
5759
-
5760
- return {
5761
- plugins: [functionPlugin(), observablePlugin(options.observable), templatePlugin(), jssGlobal(), jssExtend(), jssNested(), jssCompose(), camelCase(), defaultUnit(options.defaultUnit), jssExpand(), jssVendorPrefixer(), jssPropsSort()]
5762
- };
5763
- };
5764
-
5765
- index.setup({
5766
- ...create(),
5767
- createGenerateId: () => (rule) => rule.key,
5768
- plugins: [...create().plugins, dist({ combineMediaQueries: true })],
5769
- });
5770
-
5771
- const hasDocument = typeof document !== 'undefined';
5772
-
5773
- hasDocument && 'scrollBehavior' in document.documentElement.style;
5774
- const win = typeof window !== 'undefined' ? window : {};
5775
- win.document || { head: {} };
5776
- (win.HTMLElement || class {
5777
- });
5778
-
5779
- const isThemeDark = (theme) => {
5780
- return theme === 'dark';
5781
- };
5782
-
5783
- const formatObjectOutput = (value) => {
5784
- return JSON.stringify(value)
5785
- .replace(/"([a-zA-Z?]+)":/g, '$1:') // remove double quotes from keys
5786
- .replace(/([,:{])/g, '$1 ') // add space after following: ,:{
5787
- .replace(/(})/g, ' $1') // add space before following: }
5788
- .replace(/^"(.+)"$/, '$1'); // remove wrapping double quotes
5789
- };
5790
- 'value, ' +
5791
- formatObjectOutput(BREAKPOINTS.reduce((prev, key) => (Object.assign(Object.assign({}, prev), { [key + (key !== 'base' ? '?' : '')]: 'value' })), {})).replace(/"/g, '');
5792
-
5793
- const HEADING_TAGS = ['h1', 'h2', 'h3', 'h4', 'h5', 'h6'];
5794
-
5795
- const getComponentCss$T = (size, compact, open, theme) => {
5796
- const { primaryColor, hoverColor, focusColor, contrastLowColor } = getThemedColors(theme);
5797
- const border = `1px solid ${contrastLowColor}`;
5798
- return getCss(Object.assign(Object.assign({ '@global': {
5799
- ':host': addImportantToEachRule(Object.assign({ display: 'block' }, hostHiddenStyles)),
5800
- button: Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({ display: 'flex', position: 'relative', justifyContent: 'space-between', margin: '2px 0', width: '100%', textDecoration: 'none', border: 0, outline: 0, gap: '24px', background: 'transparent', cursor: 'pointer', textAlign: 'left', color: primaryColor }, textSmallStyle), { fontWeight: fontWeight.semiBold }), buildResponsiveStyles(size, (s) => ({
5801
- // eslint-disable-next-line @typescript-eslint/ban-ts-comment
5802
- // @ts-ignore
5803
- fontSize: fontSizeText[s],
5804
- padding: compact ? '4px 0' : `${s === 'medium' ? '20px' : '12px'} 0`,
5805
- }))), mergeDeep({
5806
- '&::before': Object.assign({ content: '""', position: 'absolute', borderRadius: borderRadiusSmall, left: '-4px', right: '-4px' }, (compact
5807
- ? {
5808
- top: '2px',
5809
- bottom: '2px',
5810
- }
5811
- : {
5812
- top: '6px',
5813
- bottom: '6px',
5814
- })),
5815
- }, hoverMediaQuery({
5816
- '&::before': {
5817
- transition: getTransition('background-color'),
5818
- },
5819
- '&:hover::before': {
5820
- background: hoverColor,
5821
- },
5822
- }))), { '&:focus::before': {
5823
- border: `${borderWidthBase} solid ${focusColor}`,
5824
- }, '&:not(:focus-visible)::before': {
5825
- border: 0,
5826
- } }),
5827
- } }, (!compact && {
5828
- root: {
5829
- borderBottom: border,
5830
- },
5831
- })), { heading: {
5832
- margin: 0,
5833
- padding: 0,
5834
- }, icon: {
5835
- width: fontLineHeight,
5836
- height: fontLineHeight,
5837
- transformOrigin: '50% 50%',
5838
- transform: open ? 'rotate3d(0)' : 'rotate3d(0,0,1,90deg)',
5839
- transition: getTransition('transform'),
5840
- }, collapsible: Object.assign({ padding: 0, overflow: 'hidden' }, (open
5841
- ? {
5842
- height: 'auto',
5843
- paddingBottom: compact ? spacingStaticSmall : '24px',
5844
- visibility: 'visible',
5845
- transition: getTransition('height') + `,visibility ${transitionDuration}`,
5846
- animation: `$open ${transitionDuration} ease forwards`,
5847
- }
5848
- : {
5849
- height: 0,
5850
- visibility: 'hidden',
5851
- transition: getTransition('height') + `,visibility ${transitionDuration} linear ${transitionDuration}`,
5852
- })),
5853
- // TODO: this doesn't get shortened and results in `keyframes-open` for some unknown reason
5854
- '@keyframes open': {
5855
- '0%,99%': {
5856
- overflow: 'hidden',
5857
- },
5858
- '100%': {
5859
- overflow: 'visible',
5860
- },
5861
- } }));
5862
- };
5863
-
5864
- const TOAST_Z_INDEX = 999999;
5865
- const MODAL_Z_INDEX = 99999;
5866
- const POPOVER_Z_INDEX = 9999;
5867
- const BANNER_Z_INDEX = 99;
5868
-
5869
- const oneColumnWidthS = `calc((100% - ${gridSafeZoneBase} * 2 - ${gridGap} * 13) / 14)`;
5870
- const oneColumnWidthXXL = `calc((min(100%, ${gridWidthMax}) - ${gridSafeZoneXXL} * 2 - ${gridGap} * 13) / 14)`;
5871
- const offsetHorizontalXXL = `max(0px, (100% - ${gridWidthMax}) / 2)`;
5872
- const widthMap$1 = {
5873
- narrow: {
5874
- padding: `0 ${gridSafeZoneBase}`,
5875
- [getMediaQueryMin('s')]: {
5876
- padding: `0 calc(${gridSafeZoneBase} + ${gridGap} * 3 + ${oneColumnWidthS} * 3)`,
5877
- },
5878
- [getMediaQueryMin('xxl')]: {
5879
- padding: `0 calc(${offsetHorizontalXXL} + ${gridSafeZoneXXL} + ${gridGap} * 3 + ${oneColumnWidthXXL} * 3)`,
5880
- },
5881
- },
5882
- basic: {
5883
- padding: `0 ${gridSafeZoneBase}`,
5884
- [getMediaQueryMin('s')]: {
5885
- padding: `0 calc(${gridSafeZoneBase} + ${gridGap} + ${oneColumnWidthS})`,
5886
- },
5887
- [getMediaQueryMin('xxl')]: {
5888
- padding: `0 calc(${offsetHorizontalXXL} + ${gridSafeZoneXXL} + ${gridGap} + ${oneColumnWidthXXL})`,
5889
- },
5890
- },
5891
- extended: {
5892
- padding: `0 ${gridSafeZoneBase}`,
5893
- [getMediaQueryMin('xxl')]: {
5894
- padding: `0 calc(${offsetHorizontalXXL} + ${gridSafeZoneXXL})`,
5895
- },
5896
- },
5897
- };
5898
- const getContentWrapperStyle = (width) => {
5899
- return Object.assign({ display: 'block', margin: 0, padding: `0 ${offsetHorizontalXXL}`, width: 'auto', minWidth: 0, maxWidth: gridWidthMax }, widthMap$1[width]);
5900
- };
5901
-
5902
- const easeInQuad = 'cubic-bezier(0.45,0,0.55,1)';
5903
- const easeOutQuad = 'cubic-bezier(0.5,1,0.89,1)';
5904
- const ANIMATION_DURATION = 600;
5905
- const getBoxShadow = () => ({
5906
- boxShadow: '0 2px 4px 0 rgba(0,0,0,0.05),0 15px 20px 0 rgba(0,0,0,0.2)',
5907
- });
5908
- const getAnimationIn = (keyframesName, durationVar) => {
5909
- const duration = durationVar ? `var(${durationVar},${ANIMATION_DURATION}ms)` : `${ANIMATION_DURATION}ms`;
5910
- return {
5911
- animation: `${duration} $${keyframesName} ${easeInQuad} forwards`,
5912
- };
5913
- };
5914
- const getAnimationOut = (keyframesName) => ({
5915
- animation: addImportantToRule(`${ANIMATION_DURATION}ms $${keyframesName} ${easeOutQuad} forwards`),
5916
- });
5917
- const getKeyframes = (direction, outsideStyle) => {
5918
- const insideStyle = { opacity: 1, transform: 'translate3d(0,0,0)' };
5919
- return direction === 'in'
5920
- ? {
5921
- from: outsideStyle,
5922
- to: insideStyle,
5923
- }
5924
- : {
5925
- from: insideStyle,
5926
- to: outsideStyle,
5927
- };
5928
- };
5929
- const getKeyframesMobile = (direction, bottomVar) => getKeyframes(direction, {
5930
- opacity: 0,
5931
- transform: `translate3d(0,calc(var(${bottomVar}) + 100%),0)`, // space before and after "+" is crucial
5932
- });
5933
-
5934
- const bannerPositionTypeVar = '--p-banner-position-type';
5935
- const bannerPositionTopVar = '--p-banner-position-top';
5936
- const bannerPositionBottomVar = '--p-banner-position-bottom';
5937
- const bannerZIndexVar = '--p-internal-banner-z-index';
5938
- const bannerAnimationDurationVar = '--p-animation-duration';
5939
- const bannerOffset = '56px';
5940
- const mediaQueryBase = getMediaQueryMinMax('base', 's');
5941
- const mediaQueryS$1 = getMediaQueryMin('s');
5942
- const getKeyframesDesktop = (direction, topVar) => getKeyframes(direction, {
5943
- opacity: 0,
5944
- transform: `translate3d(0,calc(-100% - var(${topVar})),0)`, // space before and after "-" is crucial
5945
- });
5946
- const widthMap = {
5947
- fluid: 'extended',
5948
- extended: 'extended',
5949
- basic: 'basic',
5950
- };
5951
- const getComponentCss$S = (width) => {
5952
- return getCss({
5953
- '@global': {
5954
- ':host': Object.assign(Object.assign({
5955
- // TODO: Why is nothing set as important here?
5956
- [bannerPositionTopVar]: bannerOffset, [bannerPositionBottomVar]: bannerOffset, position: `var(${bannerPositionTypeVar},fixed)`, zIndex: `var(${bannerZIndexVar},${BANNER_Z_INDEX})`, opacity: 0, left: 0, right: 0, willChange: 'opacity,transform' }, mergeDeep(addImportantToEachRule(Object.assign(Object.assign({}, getContentWrapperStyle(widthMap[width])), hostHiddenStyles)), {
5957
- [mediaQueryBase]: {
5958
- bottom: `var(${bannerPositionBottomVar})`,
5959
- },
5960
- [mediaQueryS$1]: {
5961
- top: `var(${bannerPositionTopVar})`,
5962
- },
5963
- })), { '&(.hydrated),&(.ssr)': {
5964
- [mediaQueryBase]: getAnimationIn('mobileIn', bannerAnimationDurationVar),
5965
- [mediaQueryS$1]: getAnimationIn('desktopIn', bannerAnimationDurationVar),
5966
- }, '&(.banner--close)': {
5967
- [mediaQueryBase]: getAnimationOut('mobileOut'),
5968
- [mediaQueryS$1]: getAnimationOut('desktopOut'),
5969
- } }),
5970
- '@keyframes mobileIn': getKeyframesMobile('in', bannerPositionBottomVar),
5971
- '@keyframes mobileOut': getKeyframesMobile('out', bannerPositionBottomVar),
5972
- '@keyframes desktopIn': getKeyframesDesktop('in', bannerPositionTopVar),
5973
- '@keyframes desktopOut': getKeyframesDesktop('out', bannerPositionTopVar),
5974
- },
5975
- root: getBoxShadow(),
5976
- });
5977
- };
5978
-
5979
- const getDirectionJssStyle = (direction) => {
5980
- const style = {
5981
- column: {
5982
- flexFlow: 'column nowrap',
5983
- alignItems: 'stretch',
5984
- },
5985
- row: {
5986
- flexFlow: 'row wrap',
5987
- alignItems: 'center',
5988
- },
5989
- };
5990
- return style[direction];
5991
- };
5992
- const getComponentCss$R = (direction) => {
4136
+ const getComponentCss$U = (direction) => {
5993
4137
  return getCss({
5994
4138
  '@global': {
5995
4139
  ':host': Object.assign({ display: 'block' }, addImportantToEachRule(hostHiddenStyles)),
5996
- div: Object.assign({ display: 'flex', gap: spacingFluidSmall }, buildResponsiveStyles(direction, getDirectionJssStyle)),
4140
+ div: Object.assign({ display: 'flex', gap: spacingFluidSmall }, buildResponsiveStyles(direction, getGroupDirectionJssStyles)),
5997
4141
  },
5998
4142
  });
5999
4143
  };
6000
4144
 
6001
4145
  const fontSizeTextMap = {
4146
+ 'xx-small': fontSizeTextXXSmall,
6002
4147
  'x-small': fontSizeTextXSmall,
6003
4148
  small: fontSizeTextSmall,
6004
4149
  medium: fontSizeTextMedium,
@@ -6013,7 +4158,7 @@ const getFontSizeText = (size) => {
6013
4158
  // Needed for slotted anchor and hidden label, which then enlarges the hidden label to equal host size and indents the text to be visually hidden.
6014
4159
  const getVisibilityJssStyle = (hideLabel) => {
6015
4160
  return hideLabel
6016
- ? Object.assign(Object.assign({ position: 'absolute' }, getInsetJssStyle(0)), { whiteSpace: 'nowrap', textIndent: '-999999px' }) : Object.assign(Object.assign({ position: 'relative' }, getInsetJssStyle('auto')), { whiteSpace: 'inherit', textIndent: 0 });
4161
+ ? Object.assign(Object.assign({ position: 'absolute' }, getInsetJssStyle()), { whiteSpace: 'nowrap', textIndent: '-999999px' }) : Object.assign(Object.assign({ position: 'relative' }, getInsetJssStyle('auto')), { whiteSpace: 'inherit', textIndent: 0 });
6017
4162
  };
6018
4163
  const offsetVertical = '-2px';
6019
4164
  const offsetHorizontal = '-4px';
@@ -6021,7 +4166,7 @@ const getLinkButtonPureStyles = (icon, iconSource, active, isDisabledOrLoading,
6021
4166
  const { primaryColor, disabledColor, hoverColor, focusColor } = getThemedColors(theme);
6022
4167
  const hasIcon = hasVisibleIcon(icon, iconSource);
6023
4168
  return Object.assign({ '@global': {
6024
- ':host': Object.assign(Object.assign({}, addImportantToEachRule(Object.assign({ transform: 'translate3d(0,0,0)', outline: 0 }, hostHiddenStyles))), buildResponsiveStyles(stretch, (responsiveStretch) => (Object.assign({ display: responsiveStretch ? 'block' : 'inline-block' }, (!responsiveStretch && { verticalAlign: 'top' }))))),
4169
+ ':host': Object.assign(Object.assign({}, addImportantToEachRule(Object.assign({ transform: 'translate3d(0,0,0)', outline: 0 }, hostHiddenStyles))), buildResponsiveStyles(stretch, (responsiveStretch) => (Object.assign({ display: responsiveStretch ? 'block' : 'inline-block', width: responsiveStretch ? '100%' : 'auto' }, (!responsiveStretch && { verticalAlign: 'top' }))))),
6025
4170
  }, root: Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({ display: 'flex', gap: spacingStaticXSmall, width: '100%', margin: 0, padding: 0, color: isDisabledOrLoading ? disabledColor : primaryColor, outline: 0 }, textSmallStyle), mergeDeep(buildResponsiveStyles(stretch, (stretchValue) => ({
6026
4171
  justifyContent: stretchValue ? 'space-between' : 'flex-start',
6027
4172
  alignItems: stretchValue ? 'center' : 'flex-start',
@@ -6040,42 +4185,147 @@ const getLinkButtonPureStyles = (icon, iconSource, active, isDisabledOrLoading,
6040
4185
  '&:not(:focus-visible)::before': {
6041
4186
  border: 0,
6042
4187
  },
6043
- })), label: {
6044
- position: 'relative', // needed for hover state when icon="none" is set
6045
- } }, (hasIcon && {
6046
- icon: {
6047
- position: 'relative',
6048
- flexShrink: '0',
6049
- width: fontLineHeight,
6050
- height: fontLineHeight,
4188
+ })), label: {
4189
+ position: 'relative', // needed for hover state when icon="none" is set
4190
+ } }, (hasIcon && {
4191
+ icon: {
4192
+ position: 'relative',
4193
+ flexShrink: '0',
4194
+ width: fontLineHeight,
4195
+ height: fontLineHeight,
4196
+ },
4197
+ label: mergeDeep(buildResponsiveStyles(hideLabel, getVisibilityJssStyle), buildResponsiveStyles(alignLabel, (alignLabelValue) => ({
4198
+ order: alignLabelValue === 'left' ? -1 : 0,
4199
+ }))),
4200
+ }));
4201
+ };
4202
+
4203
+ const getComponentCss$T = (icon, iconSource, active, isLoading, isDisabledOrLoading, stretch, size, hideLabel, alignLabel, theme) => {
4204
+ const hasIcon = hasVisibleIcon(icon, iconSource);
4205
+ return getCss(mergeDeep(getLinkButtonPureStyles(icon, iconSource, active, isDisabledOrLoading, stretch, size, hideLabel, alignLabel, false, theme), Object.assign({ root: {
4206
+ appearance: 'none',
4207
+ background: 'transparent',
4208
+ textAlign: 'left',
4209
+ border: 0,
4210
+ cursor: isDisabledOrLoading ? 'not-allowed' : 'pointer',
4211
+ } }, (!hasIcon &&
4212
+ isLoading && {
4213
+ label: {
4214
+ visibility: 'hidden',
4215
+ },
4216
+ icon: {
4217
+ position: 'absolute',
4218
+ top: 0,
4219
+ left: `calc(50% - ${fontLineHeight} / 2)`,
4220
+ width: fontLineHeight,
4221
+ height: fontLineHeight,
4222
+ },
4223
+ }))));
4224
+ };
4225
+
4226
+ const fontWeightMap = {
4227
+ regular: fontWeightRegular,
4228
+ 'semi-bold': fontWeightSemiBold,
4229
+ bold: fontWeightBold,
4230
+ };
4231
+ const getFontWeight = (weight) => {
4232
+ return fontWeightMap[weight];
4233
+ };
4234
+
4235
+ const getThemedTypographyColor = (theme, textColor) => {
4236
+ // TODO: don't destructure for better minification
4237
+ const { primaryColor, contrastHighColor, contrastMediumColor, contrastLowColor, successColor, errorColor, warningColor, infoColor, } = getThemedColors(theme);
4238
+ const colorMap = {
4239
+ primary: primaryColor,
4240
+ default: primaryColor,
4241
+ 'contrast-low': contrastLowColor,
4242
+ 'contrast-medium': contrastMediumColor,
4243
+ 'contrast-high': contrastHighColor,
4244
+ 'notification-success': successColor,
4245
+ 'notification-warning': warningColor,
4246
+ 'notification-error': errorColor,
4247
+ 'notification-info': infoColor,
4248
+ inherit: 'currentColor',
4249
+ };
4250
+ return colorMap[textColor];
4251
+ };
4252
+
4253
+ const aspectRatioPaddingMap = {
4254
+ '1:1': '100%',
4255
+ '4:3': '75%',
4256
+ '3:4': '133.33%',
4257
+ '16:9': '56.25%',
4258
+ '9:16': '177.75%',
4259
+ };
4260
+ const getTileBaseStyles = (aspectRatio, isDisabled) => {
4261
+ return {
4262
+ '@global': Object.assign({ ':host': Object.assign({ display: 'block' }, addImportantToEachRule(hostHiddenStyles)) }, addImportantToEachRule({
4263
+ '::slotted': {
4264
+ '&(picture)': Object.assign({ position: 'absolute' }, getInsetJssStyle()),
4265
+ '&(img)': {
4266
+ height: '100%',
4267
+ width: '100%',
4268
+ objectFit: 'cover',
4269
+ },
4270
+ },
4271
+ })),
4272
+ root: Object.assign(Object.assign({ position: 'relative', height: 0, overflow: 'hidden', transform: 'translate3d(0,0,0)', borderRadius: borderRadiusMedium, color: getThemedTypographyColor('dark', 'primary') }, buildResponsiveStyles(aspectRatio, (ratio) => ({
4273
+ paddingTop: aspectRatioPaddingMap[ratio],
4274
+ }))), (!isDisabled &&
4275
+ hoverMediaQuery({
4276
+ '&:hover .image-container': {
4277
+ transform: 'scale3d(1.05,1.05,1.05)',
4278
+ },
4279
+ }))),
4280
+ 'image-container': Object.assign({ position: 'absolute', transition: getTransition('transform') }, getInsetJssStyle()),
4281
+ content: {
4282
+ position: 'absolute',
4283
+ left: 0,
4284
+ right: 0,
4285
+ display: 'flex',
4286
+ justifyItems: 'start',
4287
+ gap: spacingStaticMedium,
4288
+ borderRadius: borderRadiusMedium,
4289
+ '@media (forced-colors: active)': {
4290
+ background: 'rgba(0,0,0,0.7)',
4291
+ },
6051
4292
  },
6052
- label: mergeDeep(buildResponsiveStyles(hideLabel, getVisibilityJssStyle), buildResponsiveStyles(alignLabel, (alignLabelValue) => ({
6053
- order: alignLabelValue === 'left' ? -1 : 0,
4293
+ };
4294
+ };
4295
+
4296
+ const sizeMap$5 = {
4297
+ inherit: { fontSize: 'inherit' },
4298
+ default: { fontSize: fontSizeTextMedium },
4299
+ };
4300
+ const getButtonLinkTileStyles = (aspectRatio, size, weight, // to get deprecated semibold typed
4301
+ align, compact, hasGradient, isDisabled) => {
4302
+ const isTopAligned = align === 'top';
4303
+ return Object.assign({}, mergeDeep(getTileBaseStyles(aspectRatio, isDisabled), {
4304
+ '@global': {
4305
+ p: Object.assign(Object.assign({ maxWidth: pxToRemWithUnit(550), margin: 0 }, textLargeStyle), mergeDeep(buildResponsiveStyles(size, (s) => sizeMap$5[s]), buildResponsiveStyles(weight, (w) => ({
4306
+ fontWeight: getFontWeight(w === 'semibold' ? 'semi-bold' : w), // mapping of the deprecated weight semibold
4307
+ })))),
4308
+ },
4309
+ content: Object.assign(Object.assign(Object.assign({ display: 'grid' }, (isTopAligned ? { top: 0 } : { bottom: 0 })), { padding: isTopAligned
4310
+ ? `${spacingFluidMedium} ${spacingFluidMedium} ${spacingFluidLarge}`
4311
+ : `${spacingFluidLarge} ${spacingFluidMedium} ${spacingFluidMedium}` }), mergeDeep(hasGradient &&
4312
+ buildResponsiveStyles(compact, (isCompact) => isCompact && isTopAligned ? gradientToBottomStyle : gradientToTopStyle), buildResponsiveStyles(compact, (isCompact) => isCompact // TODO: use flex
4313
+ ? Object.assign({ alignItems: 'center', gridTemplateColumns: 'auto 24px', gridTemplateRows: 'auto' }, (isTopAligned ? { top: 0 } : { bottom: 0 })) : {
4314
+ gridTemplateRows: 'auto auto',
4315
+ gridTemplateColumns: 'auto',
4316
+ }))),
4317
+ 'link-or-button-pure': buildResponsiveStyles(compact, (isCompact) => ({
4318
+ display: isCompact ? 'inline-block' : 'none',
4319
+ })),
4320
+ 'link-or-button': Object.assign({ minHeight: '54px' }, buildResponsiveStyles(compact, (isCompact) => ({
4321
+ display: isCompact ? 'none' : 'inline-block',
6054
4322
  }))),
6055
4323
  }));
6056
4324
  };
6057
4325
 
6058
- const getComponentCss$Q = (icon, iconSource, active, isLoading, isDisabledOrLoading, stretch, size, hideLabel, alignLabel, theme) => {
6059
- const hasIcon = hasVisibleIcon(icon, iconSource);
6060
- return getCss(mergeDeep(getLinkButtonPureStyles(icon, iconSource, active, isDisabledOrLoading, stretch, size, hideLabel, alignLabel, false, theme), Object.assign({ root: {
6061
- appearance: 'none',
6062
- background: 'transparent',
6063
- textAlign: 'left',
6064
- border: 0,
6065
- cursor: isDisabledOrLoading ? 'not-allowed' : 'pointer',
6066
- } }, (!hasIcon &&
6067
- isLoading && {
6068
- label: {
6069
- visibility: 'hidden',
6070
- },
6071
- icon: {
6072
- position: 'absolute',
6073
- top: 0,
6074
- left: `calc(50% - ${fontLineHeight} / 2)`,
6075
- width: fontLineHeight,
6076
- height: fontLineHeight,
6077
- },
6078
- }))));
4326
+ const getComponentCss$S = (isDisabledOrLoading, ...args) => {
4327
+ const buttonLinkTileStyles = getButtonLinkTileStyles(...args);
4328
+ return getCss(Object.assign(Object.assign({}, buttonLinkTileStyles), { root: Object.assign(Object.assign({}, buttonLinkTileStyles.root), { cursor: isDisabledOrLoading ? 'not-allowed' : 'pointer' }) }));
6079
4329
  };
6080
4330
 
6081
4331
  const { primaryColor: darkThemePrimaryColor$1 } = getThemedColors('dark');
@@ -6106,7 +4356,7 @@ const getLinkButtonStyles = (icon, iconSource, variant, hideLabel, isDisabledOrL
6106
4356
  const { focusColor } = getThemedColors(theme);
6107
4357
  const hasIcon = hasVisibleIcon(icon, iconSource) || hideLabel;
6108
4358
  return Object.assign({ '@global': {
6109
- ':host': addImportantToEachRule(Object.assign({ display: 'inline-block', verticalAlign: 'top', outline: 0 }, hostHiddenStyles)),
4359
+ ':host': Object.assign({ display: 'inline-block' }, addImportantToEachRule(Object.assign({ verticalAlign: 'top', outline: 0 }, hostHiddenStyles))),
6110
4360
  }, root: Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({ display: 'flex', alignItems: 'flex-start', justifyContent: 'center', width: '100%', minWidth: '54px', minHeight: '54px', boxSizing: 'border-box', outline: 0, textAlign: 'left', appearance: 'none', textDecoration: 'none', border: `2px solid ${borderColor}`, borderRadius: borderRadiusSmall, transform: 'translate3d(0,0,0)', // creates new stacking context (for slotted anchor + focus)
6111
4361
  backgroundColor, color: textColor }, textSmallStyle), { transition: ['background-color', 'border-color', 'color'].map(getTransition).join() }), buildResponsiveStyles(hideLabel, (hideLabelValue) => ({
6112
4362
  padding: hideLabelValue ? '13px' : hasIcon ? '13px 26px 13px 18px' : '13px 26px',
@@ -6153,7 +4403,7 @@ const getDisabledColors = (variant, loading, theme) => {
6153
4403
  };
6154
4404
  return colors[variant === 'tertiary' ? 'secondary' : variant];
6155
4405
  };
6156
- const getComponentCss$P = (icon, iconSource, variant, hideLabel, disabled, loading, theme) => {
4406
+ const getComponentCss$R = (icon, iconSource, variant, hideLabel, disabled, loading, theme) => {
6157
4407
  const disabledOrLoading = isDisabledOrLoading(disabled, loading);
6158
4408
  const { textColor, borderColor, backgroundColor } = getDisabledColors(variant, loading, theme);
6159
4409
  const isPrimary = variant === 'primary';
@@ -6188,33 +4438,15 @@ const mediaQueryXXL = getMediaQueryMin('xxl');
6188
4438
  const buttonSize$1 = `calc(${spacingStaticSmall} * 2 + ${fontLineHeight})`;
6189
4439
  // + 2px, compensates hover offset of button-pure
6190
4440
  const buttonGroupWidth = `calc(${buttonSize$1} * 2 + ${spacingStaticXSmall} + 2px)`;
6191
- // we don't need to abstract spacing definitions since component content-wrapper is deprecated and will be removed soon
6192
- const gridColumn1FrS = `calc((100% - ${gridSafeZoneBase} * 2 - ${gridGap} * 13) / 14)`;
6193
- const gridColumn1FrXXL = `calc((min(100%, ${gridWidthMax}) - ${gridSafeZoneXXL} * 2 - ${gridGap} * 13) / 14)`;
6194
4441
  const spacingMap = {
6195
- basic: {
6196
- padding: `0 ${gridSafeZoneBase}`,
6197
- [mediaQueryS]: {
6198
- padding: `0 calc(${gridSafeZoneBase} + ${gridGap} + ${gridColumn1FrS})`,
6199
- },
6200
- [mediaQueryXXL]: {
6201
- padding: `0 calc(${gridSafeZoneXXL} + ${gridGap} + ${gridColumn1FrXXL})`,
6202
- },
6203
- },
6204
- extended: {
6205
- padding: `0 ${gridSafeZoneBase}`,
6206
- [mediaQueryXXL]: {
6207
- padding: `0 ${gridSafeZoneXXL}`,
6208
- },
6209
- },
4442
+ basic: gridBasicOffset,
4443
+ extended: gridExtendedOffset,
6210
4444
  };
6211
- const getComponentCss$O = (width, disablePagination, alignHeader, theme) => {
4445
+ const getComponentCss$Q = (width, hasPagination, alignHeader, theme) => {
6212
4446
  const { primaryColor, contrastMediumColor } = getThemedColors(theme);
6213
4447
  const isHeaderAlignCenter = alignHeader === 'center';
6214
4448
  return getCss(Object.assign({ '@global': {
6215
- ':host': addImportantToEachRule(Object.assign({ display: 'flex', gap: spacingFluidMedium, flexDirection: 'column', maxWidth: gridWidthMax,
6216
- // relevant for viewport width > 2560px
6217
- paddingLeft: `calc(50% - ${gridWidthMax} / 2)`, paddingRight: `calc(50% - ${gridWidthMax} / 2)`, boxSizing: 'content-box' }, hostHiddenStyles)),
4449
+ ':host': addImportantToEachRule(Object.assign({ display: 'flex', gap: spacingFluidMedium, flexDirection: 'column', boxSizing: 'content-box' }, hostHiddenStyles)),
6218
4450
  [selectorHeading]: addImportantToEachRule(Object.assign(Object.assign({}, headingXLargeStyle), { maxWidth: '56.25rem', margin: 0 })),
6219
4451
  [selectorDescription]: addImportantToEachRule(Object.assign(Object.assign({}, textSmallStyle), { maxWidth: '34.375rem', margin: `${spacingFluidXSmall} 0 0` })),
6220
4452
  [`${selectorHeading},${selectorDescription}`]: addImportantToEachRule({
@@ -6228,11 +4460,16 @@ const getComponentCss$O = (width, disablePagination, alignHeader, theme) => {
6228
4460
  gridColumn: '1 / 3',
6229
4461
  },
6230
4462
  }),
6231
- }, header: Object.assign({ display: 'grid' }, mergeDeep(spacingMap[width], {
6232
- [mediaQueryS]: Object.assign({ fontFamily, fontSize: fontSizeTextSmall, columnGap: spacingStaticMedium, gridTemplateColumns: `${buttonGroupWidth} minmax(0px, 1fr) ${buttonGroupWidth}` }, (isHeaderAlignCenter && {
4463
+ }, header: {
4464
+ display: 'grid',
4465
+ padding: `0 ${spacingMap[width].base}`,
4466
+ [mediaQueryS]: Object.assign(Object.assign({ fontFamily, fontSize: fontSizeTextSmall, columnGap: spacingStaticMedium, gridTemplateColumns: `${buttonGroupWidth} minmax(0px, 1fr) ${buttonGroupWidth}` }, (isHeaderAlignCenter && {
6233
4467
  justifyItems: 'center', // relevant when max-width of heading or description is reached
6234
- })),
6235
- })), nav: {
4468
+ })), { padding: `0 ${spacingMap[width].s}` }),
4469
+ [mediaQueryXXL]: {
4470
+ padding: `0 ${spacingMap[width].xxl}`,
4471
+ },
4472
+ }, nav: {
6236
4473
  display: 'none',
6237
4474
  [mediaQueryS]: {
6238
4475
  display: 'flex',
@@ -6245,9 +4482,18 @@ const getComponentCss$O = (width, disablePagination, alignHeader, theme) => {
6245
4482
  }, splide: {
6246
4483
  overflow: 'hidden',
6247
4484
  // visibility: 'hidden',
6248
- '&__track': Object.assign(Object.assign({ cursor: 'grab' }, addImportantToEachRule(Object.assign(Object.assign({}, spacingMap[width]), { [getMediaQueryMax('xs')]: {
6249
- paddingRight: `calc(${gridSafeZoneBase} + ${gridGap})`, // we need to give cut off slides a bit more space on mobile views
6250
- } }))), { '&--draggable': {
4485
+ '&__track': Object.assign(Object.assign({ cursor: 'grab' }, addImportantToEachRule({
4486
+ padding: `0 ${spacingMap[width].base}`,
4487
+ [getMediaQueryMax('xs')]: {
4488
+ paddingRight: `calc(${gridBasicOffsetBase} + ${gridGap})`, // we need to give cut off slides a bit more space on mobile views
4489
+ },
4490
+ [mediaQueryS]: {
4491
+ padding: `0 ${spacingMap[width].s}`,
4492
+ },
4493
+ [mediaQueryXXL]: {
4494
+ padding: `0 ${spacingMap[width].xxl}`,
4495
+ },
4496
+ })), { '&--draggable': {
6251
4497
  userSelect: 'none',
6252
4498
  WebkitUserSelect: 'none',
6253
4499
  WebkitTouchCallout: 'none',
@@ -6255,9 +4501,9 @@ const getComponentCss$O = (width, disablePagination, alignHeader, theme) => {
6255
4501
  '&__list': Object.assign({ display: 'flex', height: '100%' }, getBackfaceVisibilityJssStyle()),
6256
4502
  '&__slide': Object.assign(Object.assign({ position: 'relative', flexShrink: 0 }, getBackfaceVisibilityJssStyle()), { transform: 'translateZ(0)' }),
6257
4503
  '&__sr': getScreenReaderOnlyJssStyle(), // appears in the DOM when sliding
6258
- } }, (!disablePagination && {
6259
- pagination: Object.assign(Object.assign({}, buildResponsiveStyles(disablePagination, (disablePaginationValue) => ({
6260
- display: disablePaginationValue ? 'none' : 'flex',
4504
+ } }, (hasPagination && {
4505
+ pagination: Object.assign(Object.assign({}, buildResponsiveStyles(hasPagination, (hasPaginationValue) => ({
4506
+ display: hasPaginationValue ? 'flex' : 'none',
6261
4507
  }))), { justifyContent: 'center', gap: spacingStaticSmall }),
6262
4508
  bullet: {
6263
4509
  borderRadius: borderRadiusSmall,
@@ -6350,7 +4596,7 @@ const getInlineSVGBackgroundImage = (path) => {
6350
4596
  return `url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">${path}</svg>')`;
6351
4597
  };
6352
4598
 
6353
- const getComponentCss$N = (hideLabel, state, isDisabled, theme) => {
4599
+ const getComponentCss$P = (hideLabel, state, isDisabled, theme) => {
6354
4600
  const checkedIconColor = getThemedColors(theme === 'light' ? 'dark' : 'light').primaryColor.replace(/#/g, '%23');
6355
4601
  const indeterminateIconColor = getThemedColors(theme).primaryColor.replace(/#/g, '%23');
6356
4602
  return getCss(mergeDeep(getCheckboxRadioJssStyle(hideLabel, state, isDisabled, theme), {
@@ -6370,39 +4616,34 @@ const getComponentCss$N = (hideLabel, state, isDisabled, theme) => {
6370
4616
  }));
6371
4617
  };
6372
4618
 
6373
- const getComponentCss$M = (width) => {
4619
+ const widthMap = {
4620
+ narrow: gridNarrowOffset,
4621
+ basic: gridBasicOffset,
4622
+ extended: gridExtendedOffset,
4623
+ };
4624
+ const getComponentCss$O = (width) => {
6374
4625
  return getCss({
6375
4626
  '@global': {
6376
4627
  ':host': Object.assign({ display: 'block' }, addImportantToEachRule(hostHiddenStyles)),
6377
4628
  },
6378
- root: getContentWrapperStyle(width),
4629
+ root: Object.assign({ minWidth: 0 }, (['full', 'fluid'].includes(width)
4630
+ ? {
4631
+ padding: `0 ${gridFullOffset}`,
4632
+ }
4633
+ : {
4634
+ padding: `0 ${widthMap[width].base}`,
4635
+ [getMediaQueryMin('s')]: {
4636
+ padding: `0 ${widthMap[width].s}`,
4637
+ },
4638
+ [getMediaQueryMin('xxl')]: {
4639
+ padding: `0 ${widthMap[width].xxl}`,
4640
+ },
4641
+ })),
6379
4642
  });
6380
4643
  };
6381
4644
 
6382
4645
  const DISPLAY_TAGS = ['h1', 'h2', 'h3', 'h4', 'h5', 'h6'];
6383
4646
 
6384
- const getThemedTypographyColor = (theme, textColor) => {
6385
- const { primaryColor, contrastHighColor, contrastMediumColor, contrastLowColor, successColor, errorColor, warningColor, infoColor, } = getThemedColors(theme);
6386
- const colorMap = {
6387
- primary: primaryColor,
6388
- brand: primaryColor,
6389
- default: primaryColor,
6390
- 'contrast-low': contrastLowColor,
6391
- 'neutral-contrast-low': contrastLowColor,
6392
- 'contrast-medium': contrastMediumColor,
6393
- 'neutral-contrast-medium': contrastMediumColor,
6394
- 'contrast-high': contrastHighColor,
6395
- 'neutral-contrast-high': contrastHighColor,
6396
- 'notification-success': successColor,
6397
- 'notification-warning': warningColor,
6398
- 'notification-error': errorColor,
6399
- 'notification-info': infoColor,
6400
- 'notification-neutral': infoColor,
6401
- inherit: 'currentColor',
6402
- };
6403
- return colorMap[textColor];
6404
- };
6405
-
6406
4647
  const getTypographyRootJssStyle = (baseTextStyle, responsiveStyle, align, color, ellipsis, theme) => {
6407
4648
  return Object.assign(Object.assign(Object.assign(Object.assign({ margin: 0, padding: 0 }, baseTextStyle), { color: getThemedTypographyColor(theme, color), textAlign: align, letterSpacing: 'normal', listStyleType: 'none', whiteSpace: 'inherit' }), (ellipsis && {
6408
4649
  maxWidth: '100%',
@@ -6431,11 +4672,12 @@ const getTypographySlottedJssStyle = () => {
6431
4672
  };
6432
4673
  };
6433
4674
 
6434
- const sizeMap$5 = {
4675
+ const sizeMap$4 = {
4676
+ small: fontSizeDisplaySmall,
6435
4677
  medium: fontSizeDisplayMedium,
6436
4678
  large: fontSizeDisplayLarge,
6437
4679
  };
6438
- const getComponentCss$L = (size, align, color, ellipsis, theme) => {
4680
+ const getComponentCss$N = (size, align, color, ellipsis, theme) => {
6439
4681
  return getCss({
6440
4682
  '@global': {
6441
4683
  ':host': Object.assign({ display: 'block' }, addImportantToEachRule(hostHiddenStyles)),
@@ -6444,17 +4686,14 @@ const getComponentCss$L = (size, align, color, ellipsis, theme) => {
6444
4686
  },
6445
4687
  },
6446
4688
  root: getTypographyRootJssStyle(displayLargeStyle, buildResponsiveStyles(size, (sizeValue) => ({
6447
- fontSize: sizeValue === 'inherit' ? sizeValue : sizeMap$5[sizeValue],
4689
+ fontSize: sizeValue === 'inherit' ? sizeValue : sizeMap$4[sizeValue],
6448
4690
  })), align, color, ellipsis, theme),
6449
4691
  });
6450
4692
  };
6451
4693
 
6452
- const getComponentCss$K = (color, orientation, theme) => {
4694
+ const getComponentCss$M = (color, orientation, theme) => {
6453
4695
  const { contrastLowColor, contrastMediumColor, contrastHighColor } = getThemedColors(theme);
6454
4696
  const colorMap = {
6455
- 'neutral-contrast-low': contrastLowColor,
6456
- 'neutral-contrast-medium': contrastMediumColor,
6457
- 'neutral-contrast-high': contrastHighColor,
6458
4697
  'contrast-low': contrastLowColor,
6459
4698
  'contrast-medium': contrastMediumColor,
6460
4699
  'contrast-high': contrastHighColor,
@@ -6467,7 +4706,21 @@ const getComponentCss$K = (color, orientation, theme) => {
6467
4706
  });
6468
4707
  };
6469
4708
 
6470
- const getComponentCss$J = (state, labelSize, hasLabel, theme) => {
4709
+ const getComponentCss$L = (state, labelSize, hasLabel, theme) => {
4710
+ return getCss(Object.assign(Object.assign({ '@global': Object.assign({ ':host': addImportantToEachRule(Object.assign({ display: 'block' }, hostHiddenStyles)), fieldset: {
4711
+ margin: 0,
4712
+ padding: 0,
4713
+ border: 'none',
4714
+ } }, (hasLabel && {
4715
+ legend: Object.assign({ margin: `0 0 ${spacingStaticMedium}`, padding: 0, color: getThemedColors(theme).primaryColor }, (labelSize === 'small' ? headingSmallStyle : headingMediumStyle)),
4716
+ })) }, getFunctionalComponentRequiredStyles()), mergeDeep(getFunctionalComponentStateMessageStyles(theme, state), {
4717
+ message: {
4718
+ marginTop: spacingStaticMedium,
4719
+ },
4720
+ })));
4721
+ };
4722
+
4723
+ const getComponentCss$K = (state, labelSize, hasLabel, theme) => {
6471
4724
  return getCss(Object.assign(Object.assign({ '@global': Object.assign({ ':host': addImportantToEachRule(Object.assign({ display: 'block' }, hostHiddenStyles)), fieldset: {
6472
4725
  margin: 0,
6473
4726
  padding: 0,
@@ -6491,7 +4744,7 @@ const flexItemWidths = {
6491
4744
  full: 100,
6492
4745
  auto: 'auto',
6493
4746
  };
6494
- const getComponentCss$I = (width, offset, alignSelf, grow, shrink, flex) => {
4747
+ const getComponentCss$J = (width, offset, alignSelf, grow, shrink, flex) => {
6495
4748
  return getCss({
6496
4749
  '@global': {
6497
4750
  ':host': addImportantToEachRule(Object.assign(Object.assign({ boxSizing: 'border-box' }, hostHiddenStyles), mergeDeep(buildResponsiveStyles(width, (widthResponsive) => ({
@@ -6509,7 +4762,7 @@ const getComponentCss$I = (width, offset, alignSelf, grow, shrink, flex) => {
6509
4762
  });
6510
4763
  };
6511
4764
 
6512
- const getComponentCss$H = (inline, wrap, direction, justifyContent, alignItems, alignContent) => {
4765
+ const getComponentCss$I = (inline, wrap, direction, justifyContent, alignItems, alignContent) => {
6513
4766
  return getCss({
6514
4767
  '@global': {
6515
4768
  ':host': addImportantToEachRule(mergeDeep(hostHiddenStyles, buildResponsiveStyles(inline, (inlineResponsive) => ({
@@ -6531,7 +4784,7 @@ const gutter$1 = `calc(${gridGap} / 2)`;
6531
4784
  const gridItemWidths = [
6532
4785
  0, 8.333333, 16.666667, 25, 33.333333, 41.666667, 50, 58.333333, 66.666667, 75, 83.333333, 91.666667, 100,
6533
4786
  ];
6534
- const getComponentCss$G = (size, offset) => {
4787
+ const getComponentCss$H = (size, offset) => {
6535
4788
  return getCss({
6536
4789
  '@global': {
6537
4790
  ':host': addImportantToEachRule(Object.assign(Object.assign({ paddingLeft: gutter$1, paddingRight: gutter$1, boxSizing: 'border-box' }, hostHiddenStyles), mergeDeep(buildResponsiveStyles(size, (sizeResponsive) => ({
@@ -6545,7 +4798,7 @@ const getComponentCss$G = (size, offset) => {
6545
4798
  };
6546
4799
 
6547
4800
  const gutter = `calc(${gridGap} / -2)`;
6548
- const getComponentCss$F = (direction, wrap) => {
4801
+ const getComponentCss$G = (direction, wrap) => {
6549
4802
  return getCss({
6550
4803
  '@global': {
6551
4804
  ':host': addImportantToEachRule(Object.assign(Object.assign({ display: 'flex', flex: 'auto', width: 'auto', marginLeft: gutter, marginRight: gutter }, hostHiddenStyles), mergeDeep(buildResponsiveStyles(direction, (flexDirection) => ({ flexDirection })), buildResponsiveStyles(wrap, (flexWrap) => ({ flexWrap }))))),
@@ -6553,15 +4806,14 @@ const getComponentCss$F = (direction, wrap) => {
6553
4806
  });
6554
4807
  };
6555
4808
 
6556
- const sizeMap$4 = {
4809
+ const sizeMap$3 = {
6557
4810
  small: fontSizeHeadingSmall,
6558
4811
  medium: fontSizeHeadingMedium,
6559
4812
  large: fontSizeHeadingLarge,
6560
4813
  'x-large': fontSizeHeadingXLarge,
6561
4814
  'xx-large': fontSizeHeadingXXLarge,
6562
- 'xxx-large': fontSizeHeadingXXXLarge,
6563
4815
  };
6564
- const getComponentCss$E = (size, align, color, ellipsis, theme) => {
4816
+ const getComponentCss$F = (size, align, color, ellipsis, theme) => {
6565
4817
  return getCss({
6566
4818
  '@global': {
6567
4819
  ':host': Object.assign({ display: 'block' }, addImportantToEachRule(hostHiddenStyles)),
@@ -6570,7 +4822,7 @@ const getComponentCss$E = (size, align, color, ellipsis, theme) => {
6570
4822
  },
6571
4823
  },
6572
4824
  root: getTypographyRootJssStyle(headingXXLargeStyle, buildResponsiveStyles(size, (sizeValue) => ({
6573
- fontSize: sizeValue === 'inherit' ? sizeValue : sizeMap$4[sizeValue],
4825
+ fontSize: sizeValue === 'inherit' ? sizeValue : sizeMap$3[sizeValue],
6574
4826
  })), align, color, ellipsis, theme),
6575
4827
  });
6576
4828
  };
@@ -6603,6 +4855,7 @@ const getHeadlineVariantJssStyle = (variant) => {
6603
4855
  }));
6604
4856
  };
6605
4857
  const textSizeMap = {
4858
+ 'xx-small': fontSizeTextXXSmall,
6606
4859
  'x-small': fontSizeTextXSmall,
6607
4860
  small: fontSizeTextSmall,
6608
4861
  medium: fontSizeTextMedium,
@@ -6614,7 +4867,7 @@ const getTextSizeJssStyle = (textSize) => {
6614
4867
  fontSize: textSize === 'inherit' ? textSize : textSizeMap[textSize],
6615
4868
  };
6616
4869
  };
6617
- const getComponentCss$D = (variant, align, color, ellipsis, theme) => {
4870
+ const getComponentCss$E = (variant, align, color, ellipsis, theme) => {
6618
4871
  return getCss({
6619
4872
  '@global': {
6620
4873
  ':host': Object.assign({ display: 'block' }, addImportantToEachRule(hostHiddenStyles)),
@@ -6628,64 +4881,57 @@ const getComponentCss$D = (variant, align, color, ellipsis, theme) => {
6628
4881
  });
6629
4882
  };
6630
4883
 
6631
- const sizeMap$3 = {
4884
+ const toFilter = (values) => `invert(${values[0]}%) sepia(${values[1]}%) saturate(${values[2]}%) hue-rotate(${values[3]}deg) brightness(${values[4]}%) contrast(${values[5]}%)`;
4885
+
4886
+ const filterLightContrastLow = toFilter([93, 11, 36, 201, 89, 102]);
4887
+ const filterLightContrastMedium = toFilter([65, 6, 119, 187, 90, 92]);
4888
+ const filterLightContrastHigh = toFilter([40, 2, 686, 187, 80, 94]);
4889
+ const filterDarkContrastLow = toFilter([20, 7, 421, 202, 97, 82]);
4890
+ const filterDarkContrastMedium = toFilter([54, 4, 229, 187, 91, 84]);
4891
+ const filterDarkContrastHigh = toFilter([68, 6, 108, 187, 104, 88]);
4892
+
4893
+ const filterLightNotificationSuccess = toFilter([62, 61, 551, 86, 86, 80]);
4894
+ const filterLightNotificationWarning = toFilter([74, 91, 343, 348, 92, 86]);
4895
+ const filterLightNotificationError = toFilter([25, 62, 2003, 335, 100, 97]);
4896
+ const filterLightNotificationInfo = toFilter([44, 100, 492, 195, 86, 221]);
4897
+ const filterDarkNotificationSuccess = toFilter([59, 22, 1342, 86, 96, 88]);
4898
+ const filterDarkNotificationWarning = toFilter([72, 94, 303, 354, 89, 94]);
4899
+ const filterDarkNotificationError = toFilter([28, 34, 3133, 333, 95, 100]);
4900
+ const filterDarkNotificationInfo = toFilter([56, 77, 4175, 198, 104, 98]);
4901
+
4902
+ const filterLightPrimary = toFilter([3, 7, 2930, 188, 91, 103]);
4903
+ const filterDarkPrimary = toFilter([97, 55, 2840, 180, 114, 103]);
4904
+
4905
+ const sizeMap$2 = {
4906
+ 'xx-small': fontSizeTextXXSmall,
6632
4907
  'x-small': fontSizeTextXSmall,
6633
4908
  small: fontSizeTextSmall,
6634
4909
  medium: fontSizeTextMedium,
6635
4910
  large: fontSizeTextLarge,
6636
4911
  'x-large': fontSizeTextXLarge,
6637
4912
  };
6638
- // TODO, use Tuple to reduce chunk size
6639
- const filterLightPrimary$1 = 'invert(3%) sepia(7%) saturate(2930%) hue-rotate(188deg) brightness(91%) contrast(103%)';
6640
- const filterLightContrastLow$1 = 'invert(93%) sepia(11%) saturate(36%) hue-rotate(201deg) brightness(89%) contrast(102%)';
6641
- const filterLightContrastMedium$1 = 'invert(65%) sepia(6%) saturate(119%) hue-rotate(187deg) brightness(90%) contrast(92%)';
6642
- const filterLightContrastHigh$1 = 'invert(40%) sepia(2%) saturate(686%) hue-rotate(187deg) brightness(80%) contrast(94%)';
6643
- const filterLightNotificationSuccess = 'invert(62%) sepia(61%) saturate(551%) hue-rotate(86deg) brightness(86%) contrast(80%)';
6644
- const filterLightNotificationWarning = 'invert(74%) sepia(91%) saturate(343%) hue-rotate(348deg) brightness(92%) contrast(86%)';
6645
- const filterLightNotificationError = 'invert(25%) sepia(62%) saturate(2003%) hue-rotate(335deg) brightness(100%) contrast(97%)';
6646
- const filterLightNotificationInfo = 'invert(31%) sepia(32%) saturate(5493%) hue-rotate(216deg) brightness(90%) contrast(107%)';
6647
- const filterDarkPrimary$1 = 'invert(97%) sepia(55%) saturate(2840%) hue-rotate(180deg) brightness(114%) contrast(103%)';
6648
- const filterDarkContrastLow$1 = 'invert(20%) sepia(7%) saturate(421%) hue-rotate(202deg) brightness(97%) contrast(82%)';
6649
- const filterDarkContrastMedium$1 = 'invert(54%) sepia(4%) saturate(229%) hue-rotate(187deg) brightness(91%) contrast(84%)';
6650
- const filterDarkContrastHigh$1 = 'invert(68%) sepia(6%) saturate(108%) hue-rotate(187deg) brightness(104%) contrast(88%)';
6651
- const filterDarkNotificationSuccess = 'invert(59%) sepia(22%) saturate(1342%) hue-rotate(86deg) brightness(96%) contrast(88%)';
6652
- const filterDarkNotificationWarning = 'invert(72%) sepia(94%) saturate(303%) hue-rotate(354deg) brightness(89%) contrast(94%)';
6653
- const filterDarkNotificationError = 'invert(28%) sepia(34%) saturate(3133%) hue-rotate(333deg) brightness(95%) contrast(100%)';
6654
- const filterDarkNotificationInfo = 'invert(31%) sepia(32%) saturate(5493%) hue-rotate(216deg) brightness(90%) contrast(107%)';
6655
4913
  const filter = {
6656
4914
  light: {
6657
- primary: filterLightPrimary$1,
6658
- brand: filterLightPrimary$1,
6659
- default: filterLightPrimary$1,
6660
- disabled: filterLightContrastMedium$1,
6661
- 'contrast-low': filterLightContrastLow$1,
6662
- 'neutral-contrast-low': filterLightContrastLow$1,
6663
- 'contrast-medium': filterLightContrastMedium$1,
6664
- 'neutral-contrast-medium': filterLightContrastMedium$1,
6665
- 'contrast-high': filterLightContrastHigh$1,
6666
- 'neutral-contrast-high': filterLightContrastHigh$1,
4915
+ primary: filterLightPrimary,
4916
+ 'state-disabled': filterLightContrastMedium,
4917
+ 'contrast-low': filterLightContrastLow,
4918
+ 'contrast-medium': filterLightContrastMedium,
4919
+ 'contrast-high': filterLightContrastHigh,
6667
4920
  'notification-success': filterLightNotificationSuccess,
6668
4921
  'notification-warning': filterLightNotificationWarning,
6669
4922
  'notification-error': filterLightNotificationError,
6670
4923
  'notification-info': filterLightNotificationInfo,
6671
- 'notification-neutral': filterLightNotificationInfo, // deprecated
6672
4924
  },
6673
4925
  dark: {
6674
- primary: filterDarkPrimary$1,
6675
- brand: filterDarkPrimary$1,
6676
- default: filterDarkPrimary$1,
6677
- disabled: filterDarkContrastMedium$1,
6678
- 'contrast-low': filterDarkContrastLow$1,
6679
- 'neutral-contrast-low': filterDarkContrastLow$1,
6680
- 'contrast-medium': filterDarkContrastMedium$1,
6681
- 'neutral-contrast-medium': filterDarkContrastMedium$1,
6682
- 'contrast-high': filterDarkContrastHigh$1,
6683
- 'neutral-contrast-high': filterDarkContrastHigh$1,
4926
+ primary: filterDarkPrimary,
4927
+ 'state-disabled': filterDarkContrastMedium,
4928
+ 'contrast-low': filterDarkContrastLow,
4929
+ 'contrast-medium': filterDarkContrastMedium,
4930
+ 'contrast-high': filterDarkContrastHigh,
6684
4931
  'notification-success': filterDarkNotificationSuccess,
6685
4932
  'notification-warning': filterDarkNotificationWarning,
6686
4933
  'notification-error': filterDarkNotificationError,
6687
4934
  'notification-info': filterDarkNotificationInfo,
6688
- 'notification-neutral': filterDarkNotificationInfo, // deprecated
6689
4935
  },
6690
4936
  };
6691
4937
  const forceRerenderAnimationStyle = {
@@ -6698,13 +4944,14 @@ const forceRerenderAnimationStyle = {
6698
4944
  };
6699
4945
  const keyFramesLight = 'rerender-light';
6700
4946
  const keyFramesDark = 'rerender-dark';
6701
- const getComponentCss$C = (color, size, theme) => {
4947
+ const getComponentCss$D = (color, size, theme) => {
6702
4948
  const isColorInherit = color === 'inherit';
6703
4949
  const isSizeInherit = size === 'inherit';
4950
+ const isDark = isThemeDark(theme);
6704
4951
  return getCss({
6705
4952
  '@global': Object.assign({ ':host': Object.assign({ display: 'inline-block', verticalAlign: 'top' }, addImportantToEachRule(hostHiddenStyles)), img: Object.assign(Object.assign({ display: 'block', margin: 0, padding: 0 }, (!isColorInherit && {
6706
4953
  filter: filter[theme][color],
6707
- WebkitAnimation: `${theme === 'light' ? keyFramesLight : keyFramesDark} 1ms`, // needed to enforce repaint in Safari if theme is switched programmatically.
4954
+ WebkitAnimation: `${isDark ? keyFramesDark : keyFramesLight} 1ms`, // needed to enforce repaint in Safari if theme is switched programmatically.
6708
4955
  })), (isSizeInherit
6709
4956
  ? {
6710
4957
  width: size,
@@ -6713,9 +4960,9 @@ const getComponentCss$C = (color, size, theme) => {
6713
4960
  : {
6714
4961
  width: fontLineHeight,
6715
4962
  height: fontLineHeight,
6716
- font: `${sizeMap$3[size]} ${fontFamily}`,
4963
+ font: `${sizeMap$2[size]} ${fontFamily}`,
6717
4964
  })) }, (!isColorInherit && {
6718
- [`@keyframes ${isThemeDark(theme) ? keyFramesDark : keyFramesLight}`]: forceRerenderAnimationStyle,
4965
+ [`@keyframes ${isDark ? keyFramesDark : keyFramesLight}`]: forceRerenderAnimationStyle,
6719
4966
  })),
6720
4967
  });
6721
4968
  };
@@ -6764,7 +5011,7 @@ const getNotificationContentJssStyle = () => ({
6764
5011
  });
6765
5012
 
6766
5013
  const mediaQueryMaxS = getMediaQueryMax('s');
6767
- const getComponentCss$B = (state, hasAction, hasClose, theme) => {
5014
+ const getComponentCss$C = (state, hasAction, hasClose, theme) => {
6768
5015
  return getCss(Object.assign({ '@global': {
6769
5016
  ':host': addImportantToEachRule(Object.assign(Object.assign({}, getNotificationRootJssStyle(state, hasAction, hasClose, theme)), hostHiddenStyles)),
6770
5017
  h5: headingSmallStyle,
@@ -6782,18 +5029,13 @@ const getComponentCss$B = (state, hasAction, hasClose, theme) => {
6782
5029
  })));
6783
5030
  };
6784
5031
 
6785
- const getComponentCss$A = (icon, iconSource, active, stretch, size, hideLabel, alignLabel, underline, hasSlottedAnchor, theme) => {
5032
+ const getComponentCss$B = (icon, iconSource, active, stretch, size, hideLabel, alignLabel, underline, hasSlottedAnchor, theme) => {
6786
5033
  const { focusColor } = getThemedColors(theme);
6787
5034
  const hasIcon = hasVisibleIcon(icon, iconSource);
6788
5035
  return getCss(mergeDeep(getLinkButtonPureStyles(icon, iconSource, active, false, stretch, size, hideLabel, alignLabel, hasSlottedAnchor, theme), Object.assign(Object.assign({}, (hasSlottedAnchor && {
6789
5036
  '@global': addImportantToEachRule({
6790
5037
  '::slotted': {
6791
- '&(a)': {
6792
- outline: 0,
6793
- textDecoration: underline ? 'underline' : 'none',
6794
- font: 'inherit',
6795
- color: 'inherit',
6796
- },
5038
+ '&(a)': Object.assign(Object.assign({}, getResetInitialStylesForSlottedAnchor), { outline: 0, textDecoration: underline ? 'underline' : 'none', font: 'inherit', color: 'inherit' }),
6797
5039
  // The clickable area for Safari < ~15 (<= release date: 2021-10-28) is reduced to the slotted anchor itself,
6798
5040
  // since Safari prior to this major release does not support pseudo-elements in the slotted context
6799
5041
  // (https://bugs.webkit.org/show_bug.cgi?id=178237)
@@ -6814,17 +5056,12 @@ const getComponentCss$A = (icon, iconSource, active, stretch, size, hideLabel, a
6814
5056
  } })));
6815
5057
  };
6816
5058
 
6817
- const getComponentCss$z = (icon, iconSource, variant, hideLabel, hasSlottedAnchor, theme) => {
5059
+ const getComponentCss$A = (icon, iconSource, variant, hideLabel, hasSlottedAnchor, theme) => {
6818
5060
  const { focusColor } = getThemedColors(theme);
6819
5061
  return getCss(mergeDeep(getLinkButtonStyles(icon, iconSource, variant, hideLabel, false, hasSlottedAnchor, theme), Object.assign({}, (hasSlottedAnchor && {
6820
5062
  '@global': addImportantToEachRule({
6821
5063
  '::slotted': {
6822
- '&(a)': {
6823
- outline: 0,
6824
- textDecoration: 'none',
6825
- font: 'inherit',
6826
- color: 'inherit',
6827
- },
5064
+ '&(a)': Object.assign(Object.assign({}, getResetInitialStylesForSlottedAnchor), { outline: 0, textDecoration: 'none', font: 'inherit', color: 'inherit' }),
6828
5065
  // The clickable area for Safari < ~15 (<= release date: 2021-10-28) is reduced to the slotted anchor itself,
6829
5066
  // since Safari prior to this major release does not support pseudo-elements in the slotted context
6830
5067
  // (https://bugs.webkit.org/show_bug.cgi?id=178237)
@@ -6844,91 +5081,27 @@ const getComponentCss$z = (icon, iconSource, variant, hideLabel, hasSlottedAncho
6844
5081
  }))));
6845
5082
  };
6846
5083
 
6847
- const fontWeightMap = {
6848
- thin: fontWeightRegular,
6849
- regular: fontWeightRegular,
6850
- semibold: fontWeightSemiBold$1,
6851
- 'semi-bold': fontWeightSemiBold$1,
6852
- bold: fontWeightBold,
6853
- };
6854
- const getFontWeight = (weight) => {
6855
- return fontWeightMap[weight];
6856
- };
5084
+ const LINK_TILE_MODEL_SIGNATURE_HEADING_TAGS = ['h2', 'h3', 'h4', 'h5', 'h6'];
6857
5085
 
6858
- const aspectRatioPaddingTop = {
6859
- '1:1': '100%',
6860
- '4:3': '75%',
6861
- '3:4': '133.33%',
6862
- '16:9': '56.25%',
6863
- '9:16': '177.75%',
6864
- };
6865
- const getGradientBackground = (isCompact, isTopAligned) => {
6866
- const gradient = 'rgba(31,31,31,0.9) 0%,' +
6867
- 'rgba(31,31,31,0.9) 20%,' +
6868
- 'rgba(31,31,31,0.852589) 26.67%,' +
6869
- 'rgba(32,32,32,0.768225) 33.33%,' +
6870
- 'rgba(33,33,33,0.668116) 40%,' +
6871
- 'rgba(34,34,34,0.557309) 46.67%,' +
6872
- 'rgba(35,35,35,0.442691) 53.33%,' +
6873
- 'rgba(36,36,36,0.331884) 60%,' +
6874
- 'rgba(37,37,37,0.231775) 66.67%,' +
6875
- 'rgba(38,38,38,0.147411) 73.33%,' +
6876
- 'rgba(39,39,39,0.0816599) 80%,' +
6877
- 'rgba(39,39,39,0.03551) 86.67%,' +
6878
- 'rgba(39,39,39,0.0086472) 93.33%,' +
6879
- 'rgba(39,39,39,0)';
6880
- return isCompact && isTopAligned
6881
- ? `linear-gradient(${gradient} 100%);`
6882
- : `linear-gradient(to top, ${gradient} 100%);`;
6883
- };
6884
- const sizeMap$2 = {
6885
- inherit: {
6886
- fontSize: 'inherit',
6887
- },
6888
- default: { fontSize: '1.25rem' },
5086
+ const getComponentCss$z = (aspectRatio, weight, direction, hasDescription) => {
5087
+ const tileBaseStyles = getTileBaseStyles(aspectRatio);
5088
+ return getCss(Object.assign(Object.assign(Object.assign(Object.assign({}, tileBaseStyles), { '@global': Object.assign(Object.assign({}, tileBaseStyles['@global']), { [LINK_TILE_MODEL_SIGNATURE_HEADING_TAGS.join(',')]: {
5089
+ margin: addImportantToRule(0),
5090
+ } }), content: Object.assign(Object.assign(Object.assign({}, tileBaseStyles.content), { flexDirection: 'column', bottom: 0, padding: `${spacingFluidLarge} ${spacingFluidMedium} ${spacingFluidMedium}` }), gradientToTopStyle), model: {
5091
+ position: 'absolute',
5092
+ top: spacingFluidMedium,
5093
+ left: spacingFluidMedium,
5094
+ }, heading: Object.assign(Object.assign({ margin: 0 }, textLargeStyle), buildResponsiveStyles(weight, (w) => ({ fontWeight: getFontWeight(w) }))) }), (hasDescription && {
5095
+ description: Object.assign({ margin: '-12px 0 0 ' }, textSmallStyle),
5096
+ })), { 'link-group': Object.assign({ display: 'flex', width: '100%', gap: spacingFluidSmall }, buildResponsiveStyles(direction, getGroupDirectionJssStyles)), 'link-overlay': Object.assign({
5097
+ // covers entire tile, used for expanded click-area only
5098
+ position: 'fixed' }, getInsetJssStyle()) }));
6889
5099
  };
6890
- const getComponentCss$y = (aspectRatio, size, weight, align, compact, hasGradient) => {
6891
- const isTopAligned = align === 'top';
6892
- const paddingSizeXS = pxToRemWithUnit(24);
6893
- const gradientPadding = pxToRemWithUnit(72);
6894
- return getCss({
6895
- '@global': Object.assign(Object.assign({ ':host': Object.assign({ display: 'block' }, addImportantToEachRule(Object.assign({ height: 'fit-content' }, hostHiddenStyles))) }, addImportantToEachRule({
6896
- '::slotted(picture),::slotted(img)': Object.assign({ transition: getTransition('transform') }, getBackfaceVisibilityJssStyle()),
6897
- '::slotted(picture)': Object.assign({ position: 'absolute' }, getInsetJssStyle()),
6898
- '::slotted(img)': {
6899
- height: '100%',
6900
- width: '100%',
6901
- objectFit: 'cover',
6902
- },
6903
- })), { p: Object.assign(Object.assign(Object.assign({ color: getThemedTypographyColor('dark', 'primary') }, textSmallStyle), { maxWidth: pxToRemWithUnit(550), margin: 0 }), mergeDeep(buildResponsiveStyles(size, (s) => sizeMap$2[s]), buildResponsiveStyles(weight, (w) => ({ fontWeight: getFontWeight(w) })))) }),
6904
- root: Object.assign(Object.assign({ height: 0, position: 'relative', transform: 'translate3d(0,0,0)' }, hoverMediaQuery({
6905
- '&:hover': {
6906
- '& ::slotted(picture),::slotted(img)': addImportantToEachRule({
6907
- transform: 'scale3d(1.05, 1.05, 1.05)',
6908
- }),
6909
- },
6910
- })), buildResponsiveStyles(aspectRatio, (ratio) => ({
6911
- paddingTop: aspectRatioPaddingTop[ratio],
6912
- }))),
6913
- 'image-container': Object.assign(Object.assign({ position: 'absolute' }, getInsetJssStyle()), { overflow: 'hidden' }),
6914
- content: Object.assign(Object.assign(Object.assign({ position: 'absolute' }, (isTopAligned ? { top: 0 } : { bottom: 0 })), { left: 0, right: 0, display: 'grid', justifyItems: 'start', padding: align === 'bottom'
6915
- ? `${gradientPadding} ${paddingSizeXS} ${paddingSizeXS}`
6916
- : `${paddingSizeXS} ${paddingSizeXS} ${gradientPadding}`, gap: pxToRemWithUnit(24) }), mergeDeep({
6917
- [getMediaQueryMin('s')]: Object.assign({ paddingLeft: pxToRemWithUnit(32), paddingRight: pxToRemWithUnit(32) }, (align === 'bottom' ? { paddingBottom: pxToRemWithUnit(32) } : { paddingTop: pxToRemWithUnit(32) })),
6918
- }, hasGradient &&
6919
- buildResponsiveStyles(compact, (isCompact) => ({
6920
- background: getGradientBackground(isCompact, isTopAligned),
6921
- })), buildResponsiveStyles(compact, (isCompact) => isCompact
6922
- ? Object.assign({ alignItems: 'center', gridTemplateColumns: `auto ${pxToRemWithUnit(24)}`, gridTemplateRows: 'auto' }, (isTopAligned ? { top: 0 } : { bottom: 0 })) : { gridTemplateRows: 'auto auto', gridTemplateColumns: 'auto' }))),
6923
- 'link-pure': buildResponsiveStyles(compact, (isCompact) => ({
6924
- display: isCompact ? 'inline-block' : 'none',
6925
- })),
6926
- link: Object.assign({ minHeight: '3rem' }, buildResponsiveStyles(compact, (isCompact) => ({ display: isCompact ? 'none' : 'inline-flex' }))),
6927
- // Due to position absolut on .content, position fixed is used to expand the clickable area of the anchor onto the whole link-tile
6928
- anchor: {
6929
- '&::after': Object.assign({ content: '""', position: 'fixed' }, getInsetJssStyle()),
6930
- },
6931
- });
5100
+
5101
+ const getComponentCss$y = (...args) => {
5102
+ return getCss(Object.assign(Object.assign({}, getButtonLinkTileStyles(...args)), { 'link-overlay': Object.assign({
5103
+ // covers entire tile, used for expanded click-area only
5104
+ position: 'fixed' }, getInsetJssStyle()) }));
6932
5105
  };
6933
5106
 
6934
5107
  const baseSizes = {
@@ -6976,10 +5149,10 @@ const getFullscreenJssStyles = (fullscreen) => {
6976
5149
  borderRadius: 0,
6977
5150
  }
6978
5151
  : {
6979
- minWidth: pxToRemWithUnit(275.2),
6980
- maxWidth: pxToRemWithUnit(1536),
5152
+ minWidth: '276px',
5153
+ maxWidth: '1535.5px',
6981
5154
  minHeight: 'auto',
6982
- margin: `max(16px, 7vh) ${gridSafeZoneBase}`,
5155
+ margin: `clamp(16px, 7vh, 192px) ${gridExtendedOffsetBase}`,
6983
5156
  borderRadius: borderRadiusMedium,
6984
5157
  };
6985
5158
  };
@@ -6995,7 +5168,7 @@ const isFullscreenForXl = (fullscreen) => {
6995
5168
  return BREAKPOINTS.indexOf(lastTrueBreakpoint) > BREAKPOINTS.indexOf(lastFalseBreakpoint);
6996
5169
  }
6997
5170
  };
6998
- const getSlottedJssStyle = (marginValue, hasHeader, disableCloseButton) => {
5171
+ const getSlottedJssStyle = (marginValue, hasHeader, hasDismissButton) => {
6999
5172
  const marginPx = `${-marginValue}px`;
7000
5173
  const marginRem = pxToRemWithUnit(-marginValue);
7001
5174
  return Object.assign(Object.assign({ [`&(.${stretchToFullModalWidthClassName})`]: {
@@ -7003,13 +5176,13 @@ const getSlottedJssStyle = (marginValue, hasHeader, disableCloseButton) => {
7003
5176
  margin: `0 ${marginPx}`,
7004
5177
  } }, (!hasHeader && {
7005
5178
  [`&(.${stretchToFullModalWidthClassName}:first-child)`]: {
7006
- marginTop: !disableCloseButton ? marginRem : marginPx,
5179
+ marginTop: hasDismissButton ? marginRem : marginPx,
7007
5180
  },
7008
5181
  })), { [`&(.${stretchToFullModalWidthClassName}:last-child)`]: {
7009
5182
  marginBottom: marginPx,
7010
5183
  } });
7011
5184
  };
7012
- const getComponentCss$w = (open, fullscreen, disableCloseButton, hasHeader) => {
5185
+ const getComponentCss$w = (open, fullscreen, hasDismissButton, hasHeader) => {
7013
5186
  const isFullscreenForXlAndXxl = isFullscreenForXl(fullscreen);
7014
5187
  return getCss(Object.assign(Object.assign({ '@global': {
7015
5188
  ':host': Object.assign(Object.assign({}, addImportantToEachRule(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({ position: 'fixed' }, getInsetJssStyle()), { zIndex: MODAL_Z_INDEX, display: 'flex', alignItems: 'center', justifyContent: 'center', flexWrap: 'wrap' }), (open
@@ -7022,8 +5195,8 @@ const getComponentCss$w = (open, fullscreen, disableCloseButton, hasHeader) => {
7022
5195
  visibility: 'hidden',
7023
5196
  })), hostHiddenStyles), {
7024
5197
  // workaround via pseudo element to fix stacking (black) background in safari
7025
- '&::before': Object.assign(Object.assign(Object.assign({ content: '""', position: 'fixed' }, getInsetJssStyle()), { background: themeDarkBackgroundShading }), frostedGlassStyle) }))), { overflowY: 'auto' }),
7026
- '::slotted': addImportantToEachRule(Object.assign({}, mergeDeep(getSlottedJssStyle(32, hasHeader, disableCloseButton), buildResponsiveStyles(fullscreen, (fullscreenValue) => ({
5198
+ '&::before': Object.assign(Object.assign(Object.assign(Object.assign({ content: '""', position: 'fixed' }, getInsetJssStyle()), { background: themeDarkBackgroundShading }), frostedGlassStyle), { pointerEvents: 'none' }) }))), { overflowY: 'auto' }),
5199
+ '::slotted': addImportantToEachRule(Object.assign({}, mergeDeep(getSlottedJssStyle(32, hasHeader, hasDismissButton), buildResponsiveStyles(fullscreen, (fullscreenValue) => ({
7027
5200
  [`&(.${stretchToFullModalWidthClassName}`]: {
7028
5201
  '&:first-child)': {
7029
5202
  borderRadius: fullscreenValue ? 0 : '8px 8px 0 0',
@@ -7039,44 +5212,30 @@ const getComponentCss$w = (open, fullscreen, disableCloseButton, hasHeader) => {
7039
5212
  boxSizing: 'border-box',
7040
5213
  transition: `transform .6s ${transitionTimingFunction}`,
7041
5214
  transform: open ? 'scale3d(1,1,1)' : 'scale3d(.9,.9,1)',
7042
- padding: !disableCloseButton ? `${pxToRemWithUnit(32)} 32px 32px 32px` : '32px',
7043
- backgroundColor,
5215
+ padding: hasDismissButton ? `${pxToRemWithUnit(32)} 32px 32px 32px` : '32px',
5216
+ background: backgroundColor,
7044
5217
  outline: 0,
7045
- '&:focus::before': Object.assign({ content: '""', position: 'fixed', border: `${borderWidthBase} solid` }, buildResponsiveStyles(fullscreen, (fullscreenValue) => (Object.assign({ borderRadius: fullscreenValue ? 0 : '12px', borderColor: fullscreenValue ? lightThemePrimaryColor : darkThemePrimaryColor }, getInsetJssStyle(fullscreenValue ? 0 : -4))))),
5218
+ '&:focus::before': Object.assign({ content: '""', position: 'fixed', border: `${borderWidthBase} solid`, pointerEvents: 'none' }, buildResponsiveStyles(fullscreen, (fullscreenValue) => (Object.assign({ borderRadius: fullscreenValue ? 0 : '12px', borderColor: fullscreenValue ? lightThemePrimaryColor : darkThemePrimaryColor }, getInsetJssStyle(fullscreenValue ? 0 : -4))))),
7046
5219
  '&:not(:focus-visible)::before': {
7047
5220
  border: 0,
7048
5221
  },
7049
5222
  [mediaQueryXl]: {
7050
- margin: isFullscreenForXlAndXxl ? 0 : `min(192px, 10vh) ${gridSafeZoneBase}`,
5223
+ margin: isFullscreenForXlAndXxl ? 0 : `min(192px, 10vh) ${gridExtendedOffsetBase}`,
7051
5224
  },
7052
5225
  }, buildResponsiveStyles(fullscreen, getFullscreenJssStyles)) }, (hasHeader && {
7053
5226
  header: {
7054
5227
  padding: '0 0 8px',
7055
5228
  },
7056
- })), { close: {
7057
- position: 'absolute',
7058
- top: '8px',
7059
- right: '8px',
7060
- border: `2px solid ${backgroundColor}`,
7061
- borderRadius: '4px',
7062
- backgroundColor,
5229
+ })), (hasDismissButton && {
5230
+ dismiss: Object.assign({ position: 'absolute', top: '8px', right: '8px', border: `2px solid ${backgroundColor}`, borderRadius: '4px', background: backgroundColor }, hoverMediaQuery({
7063
5231
  '&:hover': {
7064
- backgroundColor: 'transparent',
5232
+ background: 'transparent',
7065
5233
  borderColor: 'transparent',
7066
5234
  },
7067
- } }));
5235
+ })),
5236
+ })));
7068
5237
  };
7069
5238
 
7070
- const toFilter = (values) => `invert(${values[0]}%) sepia(${values[1]}%) saturate(${values[2]}%) hue-rotate(${values[3]}deg) brightness(${values[4]}%) contrast(${values[5]}%)`;
7071
- // copied from icon-styles
7072
- const filterLightPrimary = toFilter([3, 7, 2930, 188, 91, 103]);
7073
- const filterLightContrastLow = toFilter([93, 11, 36, 201, 89, 102]);
7074
- const filterLightContrastMedium = toFilter([65, 6, 119, 187, 90, 92]);
7075
- const filterLightContrastHigh = toFilter([40, 2, 686, 187, 80, 94]);
7076
- const filterDarkPrimary = toFilter([97, 55, 2840, 180, 114, 103]);
7077
- const filterDarkContrastLow = toFilter([20, 7, 421, 202, 97, 82]);
7078
- const filterDarkContrastMedium = toFilter([54, 4, 229, 187, 91, 84]);
7079
- const filterDarkContrastHigh = toFilter([68, 6, 108, 187, 104, 88]);
7080
5239
  const colorToFilterMap = {
7081
5240
  light: {
7082
5241
  primary: filterLightPrimary,
@@ -7295,12 +5454,12 @@ const getComponentCss$s = (hideLabel, state, isDisabled, theme) => {
7295
5454
 
7296
5455
  const gradientColorMap = {
7297
5456
  light: {
7298
- default: '255,255,255',
7299
- surface: '238,239,242',
5457
+ 'background-base': '255,255,255',
5458
+ 'background-surface': '238,239,242',
7300
5459
  },
7301
5460
  dark: {
7302
- default: '14,14,18',
7303
- surface: '33,34,37',
5461
+ 'background-base': '14,14,18',
5462
+ 'background-surface': '33,34,37',
7304
5463
  },
7305
5464
  };
7306
5465
  const getGradient = (theme, gradientColorTheme) => {
@@ -7310,17 +5469,17 @@ const getGradient = (theme, gradientColorTheme) => {
7310
5469
  `rgba(${gradientColor},0.3) 68%,` +
7311
5470
  `rgba(${gradientColor},0)`);
7312
5471
  };
7313
- const getComponentCss$r = (gradientColorTheme, isNextHidden, isPrevHidden, scrollIndicatorPosition, theme) => {
5472
+ const getComponentCss$r = (gradientColor, isNextHidden, isPrevHidden, scrollIndicatorPosition, hasScrollbar, theme) => {
7314
5473
  const { backgroundColor, backgroundSurfaceColor, focusColor, hoverColor } = getThemedColors(theme);
7315
5474
  const isDarkTheme = isThemeDark(theme);
7316
5475
  const backgroundColorMap = {
7317
5476
  dark: {
7318
- default: backgroundSurfaceColor,
7319
- surface: backgroundColor,
5477
+ 'background-base': backgroundSurfaceColor,
5478
+ 'background-surface': backgroundColor,
7320
5479
  },
7321
5480
  light: {
7322
- default: backgroundColor,
7323
- surface: backgroundSurfaceColor,
5481
+ 'background-base': backgroundColor,
5482
+ 'background-surface': backgroundSurfaceColor,
7324
5483
  },
7325
5484
  };
7326
5485
  const actionPrevNextStyles = {
@@ -7333,7 +5492,7 @@ const getComponentCss$r = (gradientColorTheme, isNextHidden, isPrevHidden, scrol
7333
5492
  return getCss({
7334
5493
  '@global': {
7335
5494
  ':host': addImportantToEachRule(Object.assign({ display: 'block', height: 'inherit' }, hostHiddenStyles)),
7336
- button: Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({ display: 'flex', pointerEvents: 'auto', alignItems: 'center', justifyContent: 'center' }, textSmallStyle), { height: `calc(${fontLineHeight} + 4px)`, width: `calc(${fontLineHeight} + 4px)`, border: 0, outline: 0, cursor: 'pointer', background: backgroundColorMap[theme][gradientColorTheme], borderRadius: borderRadiusSmall }), frostedGlassStyle), { visibility: 'hidden' }), (!isDarkTheme && dropShadowLowStyle)), hoverMediaQuery({
5495
+ button: Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({ display: 'flex', pointerEvents: 'auto', alignItems: 'center', justifyContent: 'center' }, textSmallStyle), { height: `calc(${fontLineHeight} + 4px)`, width: `calc(${fontLineHeight} + 4px)`, border: 0, outline: 0, cursor: 'pointer', background: backgroundColorMap[theme][gradientColor], borderRadius: borderRadiusSmall }), frostedGlassStyle), { visibility: 'hidden' }), (!isDarkTheme && dropShadowLowStyle)), hoverMediaQuery({
7337
5496
  transition: getTransition('background-color'),
7338
5497
  '&:hover': Object.assign(Object.assign({}, frostedGlassStyle), { background: hoverColor }),
7339
5498
  })),
@@ -7344,16 +5503,14 @@ const getComponentCss$r = (gradientColorTheme, isNextHidden, isPrevHidden, scrol
7344
5503
  margin: '0 -4px',
7345
5504
  height: 'inherit',
7346
5505
  },
7347
- 'scroll-area': {
7348
- gridArea: '1 / 1 / 1 / -1',
7349
- padding: '4px',
7350
- overflow: 'scroll hidden',
5506
+ 'scroll-area': Object.assign({ gridArea: '1 / 1 / 1 / -1', padding: '4px', overflow: 'auto hidden' }, (!hasScrollbar && {
5507
+ // If scrollbar is disabled - hide scrollbar
7351
5508
  msOverflowStyle: 'none' /* IE and Edge */,
7352
5509
  scrollbarWidth: 'none' /* Firefox */,
7353
5510
  '&::-webkit-scrollbar': {
7354
5511
  display: 'none',
7355
5512
  },
7356
- },
5513
+ })),
7357
5514
  // Extra wrapper needed to compensate different offset parent calculation depending on browser.
7358
5515
  // Needed for position of status bar.
7359
5516
  'scroll-wrapper': {
@@ -7384,10 +5541,10 @@ const getComponentCss$r = (gradientColorTheme, isNextHidden, isPrevHidden, scrol
7384
5541
  right: 0,
7385
5542
  },
7386
5543
  },
7387
- 'action-prev': Object.assign(Object.assign({}, actionPrevNextStyles), { marginLeft: '-1px', gridArea: '1 / 1 / 1 / 1', justifyContent: 'flex-start', background: `linear-gradient(to right, ${getGradient(theme, gradientColorTheme)} 100%)`, visibility: isPrevHidden ? 'hidden' : 'visible', '& button': Object.assign({ marginLeft: '8px' }, hoverMediaQuery({
5544
+ 'action-prev': Object.assign(Object.assign({}, actionPrevNextStyles), { marginLeft: '-1px', gridArea: '1 / 1 / 1 / 1', justifyContent: 'flex-start', background: `linear-gradient(to right, ${getGradient(theme, gradientColor)} 100%)`, visibility: isPrevHidden ? 'hidden' : 'visible', '& button': Object.assign({ marginLeft: '8px' }, hoverMediaQuery({
7388
5545
  visibility: isPrevHidden ? 'hidden' : 'visible',
7389
5546
  })) }),
7390
- 'action-next': Object.assign(Object.assign({}, actionPrevNextStyles), { marginRight: '-1px', gridArea: '1 / 3 / 1 / 3', justifyContent: 'flex-end', background: `linear-gradient(to left, ${getGradient(theme, gradientColorTheme)} 100%)`, visibility: isNextHidden ? 'hidden' : 'visible', '& button': Object.assign({ marginRight: '8px' }, hoverMediaQuery({
5547
+ 'action-next': Object.assign(Object.assign({}, actionPrevNextStyles), { marginRight: '-1px', gridArea: '1 / 3 / 1 / 3', justifyContent: 'flex-end', background: `linear-gradient(to left, ${getGradient(theme, gradientColor)} 100%)`, visibility: isNextHidden ? 'hidden' : 'visible', '& button': Object.assign({ marginRight: '8px' }, hoverMediaQuery({
7391
5548
  visibility: isNextHidden ? 'hidden' : 'visible',
7392
5549
  })) }),
7393
5550
  });
@@ -7450,7 +5607,9 @@ const getComponentCss$p = (maxWidth) => {
7450
5607
  const getBaseChildStyles = (child, state, theme, additionalDefaultJssStyle) => {
7451
5608
  const { primaryColor, contrastLowColor, contrastMediumColor, disabledColor } = getThemedColors(theme);
7452
5609
  const { formStateColor, formStateHoverColor } = getThemedFormStateColors(theme, state);
7453
- return Object.assign(Object.assign(Object.assign({ [`::slotted(${child})`]: Object.assign({ display: 'block', width: '100%', height: 'auto', margin: 0, outline: 0, WebkitAppearance: 'none', appearance: 'none', boxSizing: 'border-box', border: `${borderWidthBase} solid ${formStateColor || contrastMediumColor}`, borderRadius: borderRadiusSmall, background: 'transparent', font: textSmallStyle.font.replace('ex', 'ex + 10px'), textIndent: 0, color: primaryColor, transition: ['color', 'border-color', 'background-color'].map(getTransition).join() }, additionalDefaultJssStyle) }, hoverMediaQuery({
5610
+ return Object.assign(Object.assign(Object.assign({ [`::slotted(${child})`]: Object.assign({ display: 'block', width: '100%', height: child !== 'textarea'
5611
+ ? `calc(${fontLineHeight} + 10px + ${borderWidthBase} * 2 + ${spacingStaticSmall} * 2)` // we need 10px additionally so input height becomes 54px
5612
+ : 'auto', margin: 0, outline: 0, WebkitAppearance: 'none', appearance: 'none', boxSizing: 'border-box', border: `${borderWidthBase} solid ${formStateColor || contrastMediumColor}`, borderRadius: borderRadiusSmall, background: 'transparent', font: textSmallStyle.font.replace('ex', 'ex + 6px'), textIndent: 0, color: primaryColor, transition: ['color', 'border-color', 'background-color'].map(getTransition).join() }, additionalDefaultJssStyle) }, hoverMediaQuery({
7454
5613
  // with the media query the selector has higher priority and overrides disabled styles
7455
5614
  [`::slotted(${child}:not(:disabled):not(:focus):not([readonly]):hover)`]: {
7456
5615
  borderColor: formStateHoverColor || primaryColor,
@@ -7592,6 +5751,7 @@ const getSVGPath = (stepCount, numberedCircleColors, isStateCurrent) => {
7592
5751
  const svgCirclePath = `<circle fill="${isStateCurrent ? primaryColor : 'none'}"${isStateCurrent ? '' : ` stroke="${fillColor}"`} stroke-width="1px" cx="12" cy="12" r="9"/>`;
7593
5752
  // Full SVG is provided by design (./numbers_raw.svg), created with illustrator and optimized with ImageOptim.
7594
5753
  // The optimized file can be found in ./numbers_optim.svg.
5754
+ // TODO: could certainly be optimized size wise by exporting icons larger and having less decimals
7595
5755
  const svgNumberedCirclePaths = [
7596
5756
  `${svgCirclePath}<path fill="${fillColor}" d="m12.33 8.67-2.43.91v-.94l2.6-1.03h.85v8.78h-1.02z"/>`,
7597
5757
  `${svgCirclePath}<path fill="${fillColor}" d="m9.46 15.58c0-1.35.73-2.07 1.7-2.72l.95-.63c.78-.52 1.57-1.05 1.57-2.24 0-1.12-.62-1.58-1.7-1.58s-1.68.48-1.78 1.97h-.96c.06-1.82.78-2.91 2.74-2.91s2.72.92 2.72 2.52-.92 2.23-1.79 2.8l-.95.63c-1.11.75-1.52 1.18-1.52 2.01v.16h4.17v.81h-5.15v-.81z"/>`,
@@ -7633,7 +5793,7 @@ const getComponentCss$l = (state, disabled, theme) => {
7633
5793
  height: fontLineHeight,
7634
5794
  width: fontLineHeight,
7635
5795
  },
7636
- })), { '&:focus::after': Object.assign(Object.assign({ content: '""', position: 'absolute' }, getInsetJssStyle(0)), { border: `${borderWidthBase} solid ${focusColor}`, borderRadius: borderRadiusSmall }), '&:focus:not(:focus-visible)::after': {
5796
+ })), { '&:focus::after': Object.assign(Object.assign({ content: '""', position: 'absolute' }, getInsetJssStyle()), { border: `${borderWidthBase} solid ${focusColor}`, borderRadius: borderRadiusSmall }), '&:focus:not(:focus-visible)::after': {
7637
5797
  borderColor: 'transparent',
7638
5798
  } }),
7639
5799
  } }, (!isStateCurrentOrUndefined && {
@@ -7675,7 +5835,7 @@ const getComponentCss$j = (alignLabel, hideLabel, stretch, checked, disabled, lo
7675
5835
  const { buttonBorderColor, buttonBorderColorHover, buttonBackgroundColor, buttonBackgroundColorHover, toggleBackgroundColor, toggleBackgroundColorHover, textColor, } = getColors$1(checked, disabled, loading, theme);
7676
5836
  const { focusColor } = getThemedColors(theme);
7677
5837
  return getCss(Object.assign(Object.assign({ '@global': {
7678
- ':host': addImportantToEachRule(Object.assign(Object.assign({ outline: 0 }, hostHiddenStyles), buildResponsiveStyles(stretch, (stretchValue) => (Object.assign({ display: stretchValue ? 'block' : 'inline-block' }, (!stretchValue && { verticalAlign: 'top' })))))),
5838
+ ':host': addImportantToEachRule(Object.assign(Object.assign({ outline: 0 }, hostHiddenStyles), buildResponsiveStyles(stretch, (stretchValue) => (Object.assign({ display: stretchValue ? 'block' : 'inline-block', width: stretchValue ? '100%' : 'auto' }, (!stretchValue && { verticalAlign: 'top' })))))),
7679
5839
  }, root: Object.assign(Object.assign(Object.assign({ display: 'flex', alignItems: 'flex-start', gap: spacingStaticSmall, width: '100%', padding: 0, outline: 0, border: 0, textAlign: 'left', background: 'transparent', appearance: 'none', cursor: isDisabledOrLoading(disabled, loading) ? 'auto' : 'pointer' }, buildResponsiveStyles(stretch, (stretchValue) => ({
7680
5840
  justifyContent: stretchValue ? 'space-between' : 'flex-start',
7681
5841
  }))), (!isDisabledOrLoading(disabled, loading) &&
@@ -7735,7 +5895,7 @@ const getComponentCss$i = () => {
7735
5895
  const getComponentCss$h = (multiline) => {
7736
5896
  return getCss({
7737
5897
  '@global': {
7738
- ':host': Object.assign(Object.assign({}, addImportantToEachRule(Object.assign({ display: 'table-cell', padding: pxToRemWithUnit(12), margin: 0, borderBottom: `1px solid ${getThemedColors('light').contrastLowColor}`, whiteSpace: multiline ? 'normal' : 'nowrap' }, hostHiddenStyles))), { verticalAlign: 'middle' }),
5898
+ ':host': Object.assign(Object.assign({}, addImportantToEachRule(Object.assign({ display: 'table-cell', padding: spacingFluidSmall, margin: 0, whiteSpace: multiline ? 'normal' : 'nowrap' }, hostHiddenStyles))), { verticalAlign: 'middle' }),
7739
5899
  },
7740
5900
  });
7741
5901
  };
@@ -7745,31 +5905,76 @@ const isSortable = (active, direction) => {
7745
5905
  return active !== undefined && direction !== undefined;
7746
5906
  };
7747
5907
 
7748
- const { contrastMediumColor, primaryColor: primaryColor$1 } = getThemedColors('light');
7749
- const { semiBold: fontWeightSemiBold } = fontWeight;
7750
- const getComponentCss$g = (active, direction, hideLabel, multiline) => {
5908
+ const cssVariableTableHoverColor = '--p-internal-table-hover-color';
5909
+ const cssVariableTableBorderColor = '--p-internal-table-border-color';
5910
+ const cssVariableTableHeadCellIconFilter = '--p-internal-table-head-cell-icon-filter';
5911
+ const getComponentCss$g = (theme) => {
5912
+ const { primaryColor, hoverColor, contrastLowColor } = doGetThemedColors(theme);
5913
+ return getCss({
5914
+ '@global': {
5915
+ ':host': addImportantToEachRule(Object.assign(Object.assign(Object.assign({ display: 'block' }, textSmallStyle), { color: primaryColor, textAlign: 'left' }), hostHiddenStyles)),
5916
+ '::slotted(*)': addImportantToEachRule({
5917
+ [cssVariableTableHoverColor]: hoverColor,
5918
+ [cssVariableTableBorderColor]: contrastLowColor,
5919
+ [cssVariableTableHeadCellIconFilter]: isThemeDark(theme) ? 'invert(100%)' : 'none',
5920
+ }),
5921
+ },
5922
+ caption: {
5923
+ marginBottom: spacingFluidMedium,
5924
+ },
5925
+ table: {
5926
+ display: 'table',
5927
+ borderCollapse: 'collapse',
5928
+ width: '100%',
5929
+ whiteSpace: 'nowrap', // shouldn't be inherited for caption, that's why it's defined here
5930
+ },
5931
+ });
5932
+ };
5933
+
5934
+ const { hoverColor, focusColor } = getThemedColors('light'); // hover color and focus color are the same for light and dark
5935
+ const buttonBeforeOffsetVertical = '-2px';
5936
+ const buttonBeforeOffsetHorizontal = '-4px';
5937
+ const getComponentCss$f = (active, direction, hideLabel, multiline) => {
7751
5938
  const sortable = isSortable(active, direction);
7752
- return getCss(Object.assign({ '@global': Object.assign({ ':host': addImportantToEachRule(Object.assign({ display: 'table-cell', padding: `${pxToRemWithUnit(2)} ${pxToRemWithUnit(12)} ${pxToRemWithUnit(8)}`, borderBottom: `1px solid ${contrastMediumColor}`, verticalAlign: 'bottom', fontWeight: fontWeightSemiBold, whiteSpace: multiline ? 'normal' : 'nowrap' }, hostHiddenStyles)) }, (sortable
5939
+ return getCss(Object.assign({ '@global': Object.assign({ ':host': addImportantToEachRule(Object.assign({ display: 'table-cell', padding: `2px ${spacingFluidSmall} ${spacingFluidSmall}`, verticalAlign: 'bottom', whiteSpace: multiline ? 'normal' : 'nowrap' }, hostHiddenStyles)) }, (sortable
7753
5940
  ? {
7754
- button: Object.assign(Object.assign(Object.assign(Object.assign({ display: 'flex', alignItems: 'flex-end', padding: 0, boxSizing: 'border-box', appearance: 'none', border: 'none' }, textSmallStyle), { fontWeight: fontWeightSemiBold, color: primaryColor$1, textDecoration: 'none', textAlign: 'left', background: 'transparent', cursor: 'pointer' }), getFocusJssStyle({ offset: 1 })), hoverMediaQuery(Object.assign(Object.assign({}, getHoverJssStyle()), { '&:hover, &:focus': {
5941
+ button: Object.assign(Object.assign({ position: 'relative', display: 'flex', gap: spacingStaticXSmall, width: 'auto', margin: 0, padding: 0, font: 'inherit', color: 'inherit', outline: 0, alignItems: 'flex-end', appearance: 'none', background: 'transparent', textAlign: 'left', border: 0, zIndex: 0, cursor: 'pointer', '&::before': {
5942
+ content: '""',
5943
+ position: 'absolute',
5944
+ top: buttonBeforeOffsetVertical,
5945
+ bottom: buttonBeforeOffsetVertical,
5946
+ right: buttonBeforeOffsetHorizontal,
5947
+ left: buttonBeforeOffsetHorizontal,
5948
+ borderRadius: borderRadiusSmall,
5949
+ zIndex: -1,
5950
+ transition: getTransition('background-color'),
5951
+ } }, hoverMediaQuery({
5952
+ '&:hover, &:focus': {
7755
5953
  '& .icon': {
7756
5954
  opacity: 1,
7757
5955
  },
7758
- } }))),
5956
+ },
5957
+ '&:hover::before': Object.assign(Object.assign({}, frostedGlassStyle), { backgroundColor: hoverColor }),
5958
+ })), { '&:focus::before': {
5959
+ border: `${borderWidthBase} solid ${focusColor}`,
5960
+ }, '&:not(:focus-visible)::before': {
5961
+ border: 0,
5962
+ } }),
7759
5963
  }
7760
5964
  : hideLabel && {
7761
5965
  span: Object.assign(Object.assign({}, getTextHiddenJssStyle(true)), { display: 'block', border: 0 }),
7762
5966
  })) }, (sortable && {
7763
5967
  icon: {
7764
- marginLeft: spacingStaticXSmall,
5968
+ transition: getTransition('opacity'),
7765
5969
  opacity: active ? 1 : 0,
7766
5970
  transform: `rotate3d(0,0,1,${isDirectionAsc(direction) ? 0 : 180}deg)`,
7767
- transformOrigin: '50% 50%', // for iOS
5971
+ transformOrigin: '50% 50%',
5972
+ filter: `var(${cssVariableTableHeadCellIconFilter})`,
7768
5973
  },
7769
5974
  })));
7770
5975
  };
7771
5976
 
7772
- const getComponentCss$f = () => {
5977
+ const getComponentCss$e = () => {
7773
5978
  return getCss({
7774
5979
  '@global': {
7775
5980
  ':host': addImportantToEachRule(Object.assign({ display: 'table-row' }, hostHiddenStyles)),
@@ -7777,79 +5982,27 @@ const getComponentCss$f = () => {
7777
5982
  });
7778
5983
  };
7779
5984
 
7780
- const getComponentCss$e = () => {
5985
+ const getComponentCss$d = () => {
7781
5986
  return getCss({
7782
5987
  '@global': {
7783
- ':host': addImportantToEachRule(Object.assign({ display: 'table-header-group' }, hostHiddenStyles)),
5988
+ ':host': addImportantToEachRule(Object.assign({ display: 'table-header-group', fontSize: fontSizeTextXSmall, lineHeight: fontLineHeight, fontWeight: fontWeightSemiBold }, hostHiddenStyles)),
7784
5989
  },
7785
5990
  });
7786
5991
  };
7787
5992
 
7788
- const getComponentCss$d = () => {
5993
+ const getComponentCss$c = () => {
7789
5994
  return getCss({
7790
5995
  '@global': {
7791
- ':host': addImportantToEachRule(Object.assign(Object.assign({ display: 'table-row' }, hostHiddenStyles), hoverMediaQuery({
7792
- transition: getTransition('background-color'),
5996
+ ':host': addImportantToEachRule(Object.assign(Object.assign({ display: 'table-row', borderTop: `1px solid var(${cssVariableTableBorderColor})`, borderBottom: `1px solid var(${cssVariableTableBorderColor})`, transition: getTransition('background') }, hostHiddenStyles), hoverMediaQuery({
7793
5997
  '&(:hover)': {
7794
- backgroundColor: getThemedColors('light').backgroundSurfaceColor,
5998
+ // ...frostedGlassStyle, // will result in not smooth transition when applied
5999
+ background: `var(${cssVariableTableHoverColor})`,
7795
6000
  },
7796
6001
  }))),
7797
6002
  },
7798
6003
  });
7799
6004
  };
7800
6005
 
7801
- const { primaryColor } = getThemedColors('light');
7802
- const getComponentCss$c = () => {
7803
- return getCss({
7804
- '@global': {
7805
- ':host': addImportantToEachRule(Object.assign({ display: 'block' }, hostHiddenStyles)),
7806
- },
7807
- caption: {
7808
- marginBottom: spacingStaticSmall,
7809
- [getMediaQueryMin('m')]: {
7810
- marginBottom: spacingStaticMedium,
7811
- },
7812
- },
7813
- root: {
7814
- position: 'relative',
7815
- },
7816
- 'scroll-area': Object.assign({ overflow: 'auto visible' }, getFocusJssStyle({ offset: -1 })),
7817
- table: Object.assign(Object.assign({ position: 'relative', width: '100%', display: 'table' }, textSmallStyle), { textAlign: 'left', color: primaryColor, whiteSpace: 'nowrap' }),
7818
- 'scroll-trigger': {
7819
- position: 'absolute',
7820
- top: 0,
7821
- right: '1px',
7822
- width: '1px',
7823
- height: '1px',
7824
- visibility: 'hidden',
7825
- },
7826
- 'scroll-indicator': {
7827
- position: 'absolute',
7828
- top: 0,
7829
- right: 0,
7830
- bottom: 0,
7831
- paddingLeft: spacingStaticLarge,
7832
- pointerEvents: 'none',
7833
- display: 'flex',
7834
- alignItems: 'center',
7835
- background: 'linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 50%)',
7836
- '&::before': {
7837
- content: '""',
7838
- position: 'absolute',
7839
- top: 0,
7840
- right: 0,
7841
- bottom: 0,
7842
- width: pxToRemWithUnit(48),
7843
- pointerEvents: 'auto',
7844
- },
7845
- },
7846
- 'scroll-button': {
7847
- padding: pxToRemWithUnit(12),
7848
- pointerEvents: 'auto',
7849
- },
7850
- });
7851
- };
7852
-
7853
6006
  const tabsTransitionDuration = '.4s';
7854
6007
  const transformSelector = (selector) => ['a', 'button'].map((tag) => selector.replace(/\[role]/g, tag)).join();
7855
6008
  const getComponentCss$b = (size, weight, theme) => {
@@ -7860,35 +6013,9 @@ const getComponentCss$b = (size, weight, theme) => {
7860
6013
  transform: 'translate3d(0,0,0)' }, hostHiddenStyles))) }, addImportantToEachRule(Object.assign(Object.assign({
7861
6014
  // would be nice to use shared selector like '::slotted([role])'
7862
6015
  // but this doesn't work reliably when rendering in browser
7863
- [transformSelector('::slotted([role])')]: {
7864
- display: 'inline-block',
7865
- position: 'relative',
7866
- margin: '0 0 4px 0',
7867
- padding: 0,
7868
- verticalAlign: 'top',
7869
- fontFamily: 'inherit',
7870
- fontStyle: 'inherit',
7871
- fontVariant: 'inherit',
7872
- fontWeight: 'inherit',
7873
- fontSize: 'inherit',
7874
- lineHeight: 'inherit',
7875
- whiteSpace: 'nowrap',
7876
- boxSizing: 'border-box',
7877
- WebkitAppearance: 'none',
7878
- appearance: 'none',
7879
- outline: 0,
7880
- outlineOffset: '1px',
7881
- textDecoration: 'none',
7882
- textAlign: 'left',
7883
- border: 0,
7884
- background: 'transparent',
7885
- color: primaryColor,
7886
- cursor: 'pointer',
7887
- borderRadius: borderRadiusSmall,
7888
- '&::before': Object.assign({ content: '""', position: 'absolute', top: '-2px', bottom: '-2px', left: '-4px', right: '-4px', borderRadius: borderRadiusSmall, zIndex: '-1' }, hoverMediaQuery({
6016
+ [transformSelector('::slotted([role])')]: Object.assign(Object.assign({}, getResetInitialStylesForSlottedAnchor), { display: 'inline-block', position: 'relative', margin: '0 0 4px 0', padding: 0, verticalAlign: 'top', fontFamily: 'inherit', fontStyle: 'inherit', fontVariant: 'inherit', fontWeight: 'inherit', fontSize: 'inherit', lineHeight: 'inherit', whiteSpace: 'nowrap', boxSizing: 'border-box', WebkitAppearance: 'none', appearance: 'none', outline: 0, outlineOffset: '1px', textDecoration: 'none', textAlign: 'left', border: 0, background: 'transparent', color: primaryColor, cursor: 'pointer', borderRadius: borderRadiusSmall, '&::before': Object.assign({ content: '""', position: 'absolute', top: '-2px', bottom: '-2px', left: '-4px', right: '-4px', borderRadius: borderRadiusSmall, zIndex: '-1' }, hoverMediaQuery({
7889
6017
  transition: getTransition('background'),
7890
- })),
7891
- } }, hoverMediaQuery({
6018
+ })) }) }, hoverMediaQuery({
7892
6019
  [transformSelector('::slotted([role]:hover)::before')]: Object.assign(Object.assign({}, frostedGlassStyle), { background: hoverColor }),
7893
6020
  })), {
7894
6021
  // TODO: combine link-social-styles with link-button-styles and tabs-bar-styles
@@ -7905,7 +6032,7 @@ const getComponentCss$b = (size, weight, theme) => {
7905
6032
  display: 'block',
7906
6033
  position: 'absolute',
7907
6034
  width: 0,
7908
- height: weight === 'semibold' ? '2px' : '1.5px',
6035
+ height: weight === 'semi-bold' ? '2px' : '1.5px',
7909
6036
  left: 0,
7910
6037
  bottom: '-4px',
7911
6038
  background: primaryColor,
@@ -7918,10 +6045,10 @@ const getComponentCss$b = (size, weight, theme) => {
7918
6045
  };
7919
6046
 
7920
6047
  const getComponentCss$a = (theme) => {
7921
- const { focusColor } = getThemedColors(theme);
6048
+ const { primaryColor, focusColor } = getThemedColors(theme);
7922
6049
  return getCss({
7923
6050
  '@global': {
7924
- ':host': addImportantToEachRule(Object.assign(Object.assign({ display: 'block', position: 'relative' }, hostHiddenStyles), { outline: 0, '&::before': Object.assign({ content: '""', position: 'absolute' }, getInsetJssStyle(-4)), '&(:focus)::before': {
6051
+ ':host': addImportantToEachRule(Object.assign(Object.assign({ display: 'block', position: 'relative', color: primaryColor }, hostHiddenStyles), { outline: 0, '&::before': Object.assign({ content: '""', position: 'absolute' }, getInsetJssStyle(-4)), '&(:focus)::before': {
7925
6052
  border: `${borderWidthBase} solid ${focusColor}`,
7926
6053
  borderRadius: borderRadiusSmall,
7927
6054
  }, '&(:focus:not(:focus-visible))::before': {
@@ -7952,16 +6079,13 @@ const getTagFocusJssStyle = (themedColors) => {
7952
6079
  };
7953
6080
  const getThemedBackgroundColor = (tagColor, themedColors) => {
7954
6081
  const colorMap = {
7955
- 'background-default': themedColors.backgroundColor,
7956
6082
  'background-base': themedColors.backgroundColor,
7957
6083
  'background-surface': themedColors.backgroundSurfaceColor,
7958
- 'neutral-contrast-high': themedColors.primaryColor,
7959
6084
  primary: themedColors.primaryColor,
7960
- 'notification-neutral': themedColors.infoSoftColor,
7961
- 'notification-info': themedColors.infoSoftColor,
7962
- 'notification-success': themedColors.successSoftColor,
7963
- 'notification-error': themedColors.errorSoftColor,
7964
- 'notification-warning': themedColors.warningSoftColor,
6085
+ 'notification-info-soft': themedColors.infoSoftColor,
6086
+ 'notification-warning-soft': themedColors.warningSoftColor,
6087
+ 'notification-success-soft': themedColors.successSoftColor,
6088
+ 'notification-error-soft': themedColors.errorSoftColor,
7965
6089
  };
7966
6090
  return colorMap[tagColor];
7967
6091
  };
@@ -7992,45 +6116,26 @@ const getComponentCss$8 = (color, hasLabel, theme) => {
7992
6116
  }, 'sr-only': getScreenReaderOnlyJssStyle() }));
7993
6117
  };
7994
6118
 
7995
- const hasInvertedThemeColor = (tagColor, theme) => {
7996
- const isDark = isThemeDark(theme);
7997
- return ((!isDark && (tagColor === 'neutral-contrast-high' || tagColor === 'primary')) || // 'neutral-contrast-high' is deprecated (replaced with 'primary')
7998
- (isDark &&
7999
- tagColor !== 'background-surface' &&
8000
- tagColor !== 'background-default' && // 'background-default' is deprecated (replaced with 'background-base')
8001
- tagColor !== 'background-base' &&
8002
- tagColor !== 'notification-neutral' && // 'notification-neutral' is deprecated (replaced with 'notification-info')
8003
- tagColor !== 'notification-info' &&
8004
- tagColor !== 'notification-warning' &&
8005
- tagColor !== 'notification-success' &&
8006
- tagColor !== 'notification-error'));
8007
- };
8008
6119
  const getThemedBackgroundHoverColor = (tagColor, themedColors, theme) => {
8009
6120
  const isDark = isThemeDark(theme);
8010
- const keySuffix = isDark ? 'ColorLighten' : 'ColorDarken';
8011
- const primaryColor = isDark ? themedColors.contrastHighColorLighten : themedColors.contrastHighColor;
6121
+ const keySuffix = isDark ? 'Lighten' : 'Darken';
8012
6122
  const colorMap = {
8013
- 'background-default': themedColors[`background${keySuffix}`],
8014
- 'background-base': themedColors[`background${keySuffix}`],
8015
- 'background-surface': themedColors[`backgroundSurface${keySuffix}`],
8016
- 'neutral-contrast-high': primaryColor,
8017
- primary: primaryColor,
8018
- 'notification-neutral': themedColors[`infoSoft${keySuffix}`],
8019
- 'notification-info': themedColors[`infoSoft${keySuffix}`],
8020
- 'notification-success': themedColors[`successSoft${keySuffix}`],
8021
- 'notification-error': themedColors[`errorSoft${keySuffix}`],
8022
- 'notification-warning': themedColors[`warningSoft${keySuffix}`],
6123
+ 'background-base': themedColors[`backgroundColor${keySuffix}`],
6124
+ 'background-surface': themedColors[`backgroundSurfaceColor${keySuffix}`],
6125
+ primary: isDark ? themedColors.contrastHighColorLighten : themedColors.contrastHighColor,
6126
+ 'notification-info-soft': themedColors[`infoSoftColor${keySuffix}`],
6127
+ 'notification-success-soft': themedColors[`successSoftColor${keySuffix}`],
6128
+ 'notification-error-soft': themedColors[`errorSoftColor${keySuffix}`],
6129
+ 'notification-warning-soft': themedColors[`warningSoftColor${keySuffix}`],
8023
6130
  };
8024
6131
  return colorMap[tagColor];
8025
6132
  };
8026
6133
 
8027
6134
  const getColors = (themedColors, tagColor, theme) => {
8028
- const hasInvertedTheme = hasInvertedThemeColor(tagColor, theme);
8029
- const { primaryColor } = hasInvertedTheme ? getInvertedThemedColors(theme) : themedColors;
8030
- const { focusColor } = themedColors;
6135
+ const { primaryColor } = tagColor === 'primary' ? getInvertedThemedColors(theme) : themedColors;
8031
6136
  return {
8032
6137
  primaryColor,
8033
- focusColor,
6138
+ focusColor: themedColors.focusColor,
8034
6139
  backgroundColor: getThemedBackgroundColor(tagColor, themedColors),
8035
6140
  backgroundHoverColor: getThemedBackgroundHoverColor(tagColor, themedColors, theme),
8036
6141
  };
@@ -8041,27 +6146,14 @@ const getComponentCss$7 = (tagColor, isFocusable, theme) => {
8041
6146
  return getCss({
8042
6147
  '@global': {
8043
6148
  ':host': Object.assign({ display: 'inline-flex', verticalAlign: 'top' }, addImportantToEachRule(hostHiddenStyles)),
8044
- span: Object.assign({ display: 'flex', gap: '2px', alignItems: 'center', position: 'relative', padding: '4px 9px', borderRadius: borderRadiusSmall, background: backgroundColor, color: primaryColor, font: textXSmallStyle.font, whiteSpace: 'nowrap' }, (isFocusable && Object.assign({}, hoverMediaQuery({
8045
- transition: getTransition('background-color'),
8046
- '&:hover': {
8047
- background: backgroundHoverColor,
8048
- },
8049
- })))),
8050
- '::slotted': addImportantToEachRule(Object.assign(Object.assign({ '&(a),&(button)': {
8051
- display: 'inline',
8052
- position: 'static',
8053
- textDecoration: 'underline',
8054
- cursor: 'pointer',
8055
- font: 'inherit',
8056
- outline: 0,
8057
- color: 'inherit',
8058
- appearance: 'none',
8059
- margin: 0,
8060
- padding: 0,
8061
- background: 0,
8062
- border: 0,
8063
- textAlign: 'left',
8064
- } }, Object.entries(getTagFocusJssStyle(themedColors)).reduce((result, [key, value]) => {
6149
+ span: Object.assign({ display: 'flex', gap: '2px', alignItems: 'center', position: 'relative', padding: '4px 9px', borderRadius: borderRadiusSmall, background: backgroundColor, color: primaryColor, font: textXSmallStyle.font, whiteSpace: 'nowrap' }, (isFocusable &&
6150
+ hoverMediaQuery({
6151
+ transition: getTransition('background-color'),
6152
+ '&:hover': {
6153
+ background: backgroundHoverColor,
6154
+ },
6155
+ }))),
6156
+ '::slotted': addImportantToEachRule(Object.assign(Object.assign({ '&(a),&(button)': Object.assign(Object.assign({}, getResetInitialStylesForSlottedAnchor), { display: 'inline', position: 'static', textDecoration: 'underline', cursor: 'pointer', font: 'inherit', outline: 0, color: 'inherit', appearance: 'none', margin: 0, padding: 0, background: 0, border: 0, textAlign: 'left' }) }, Object.entries(getTagFocusJssStyle(themedColors)).reduce((result, [key, value]) => {
8065
6157
  result[key.replace(/^&([a-z:\-()]*)(::[a-z\-]+)$/, '&(a$1)$2, &(button$1)$2')] = value;
8066
6158
  return result;
8067
6159
  }, {})), { '&(br)': {
@@ -8075,6 +6167,17 @@ const getComponentCss$7 = (tagColor, isFocusable, theme) => {
8075
6167
  };
8076
6168
 
8077
6169
  const isType = (inputType, typeToValidate) => inputType === typeToValidate;
6170
+ // eslint-disable-next-line no-underscore-dangle
6171
+ const _hasShowPickerSupport = () => {
6172
+ return (hasDocument &&
6173
+ 'showPicker' in HTMLInputElement.prototype &&
6174
+ // TODO: it would be better to determinate support by checking for existence of "calendar-picker-indicator"
6175
+ !!window.navigator.userAgent.match(/chrome|chromium|crios|edg/i));
6176
+ };
6177
+ const hasShowPickerSupport = _hasShowPickerSupport();
6178
+ const showCustomCalendarOrTimeIndicator = (isCalendar, isTime) => {
6179
+ return hasShowPickerSupport && (isCalendar || isTime);
6180
+ };
8078
6181
 
8079
6182
  const cssVariableInputPaddingLeft = '--p-internal-text-field-input-padding-left';
8080
6183
  const cssVariableInputPaddingRight = '--p-internal-text-field-input-padding-right';
@@ -8099,18 +6202,21 @@ const getComponentCss$6 = (isDisabled, hideLabel, state, hasUnitOrVisibleCounter
8099
6202
  const isSearch = isType(inputType, 'search');
8100
6203
  const isPassword = isType(inputType, 'password');
8101
6204
  const isNumber = isType(inputType, 'number');
6205
+ const isCalendar = isType(inputType, 'date') || isType(inputType, 'week') || isType(inputType, 'month');
6206
+ const isTime = isType(inputType, 'time');
8102
6207
  const isSearchOrPassword = isSearch || isPassword;
8103
6208
  const isSearchWithoutForm = isSearch && !isWithinForm;
8104
6209
  const isSearchWithForm = isSearch && isWithinForm;
8105
- return getCss(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({ '@global': Object.assign({ ':host': Object.assign({ display: 'block' }, addImportantToEachRule(Object.assign({ [cssVariableInputPaddingLeft]: isSearchWithoutForm ? getInputPaddingHorizontal(1) : spacingStaticMedium, [cssVariableInputPaddingRight]: isSearchOrPassword
6210
+ const isCalendarOrTimeWithCustomIndicator = showCustomCalendarOrTimeIndicator(isCalendar, isTime);
6211
+ return getCss(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({ '@global': Object.assign({ ':host': Object.assign({ display: 'block' }, addImportantToEachRule(Object.assign({ [cssVariableInputPaddingLeft]: isSearchWithoutForm ? getInputPaddingHorizontal(1) : spacingStaticMedium, [cssVariableInputPaddingRight]: isSearchOrPassword || isCalendarOrTimeWithCustomIndicator
8106
6212
  ? getInputPaddingHorizontal(isSearchWithForm ? 2 : 1)
8107
- : spacingStaticMedium }, hostHiddenStyles))) }, addImportantToEachRule(Object.assign(Object.assign({}, getBaseChildStyles('input', state, theme, Object.assign({ padding: `8px var(${cssVariableInputPaddingRight}) 8px var(${cssVariableInputPaddingLeft})` }, (isNumber && {
6213
+ : spacingStaticMedium }, hostHiddenStyles))) }, addImportantToEachRule(Object.assign(Object.assign({}, getBaseChildStyles('input', state, theme, Object.assign({ padding: `${spacingStaticSmall} var(${cssVariableInputPaddingRight}) ${spacingStaticSmall} var(${cssVariableInputPaddingLeft})` }, (isNumber && {
8108
6214
  MozAppearance: 'textfield', // hides up/down spin button for Firefox
8109
6215
  })))), { '::slotted': {
8110
6216
  '&(input:-internal-autofill-selected),&(input:-internal-autofill-previewed),&(input:-webkit-autofill),&(input:-webkit-autofill:focus)': {
8111
6217
  WebkitBackgroundClip: 'padding-box', // reset webkit autofill styles
8112
6218
  },
8113
- } }))) }, (isSearchOrPassword && {
6219
+ } }))) }, ((isSearchOrPassword || isCalendarOrTimeWithCustomIndicator) && {
8114
6220
  button: Object.assign(Object.assign({}, baseButtonOrIconStyles), { right: getButtonOrIconOffsetHorizontal(1),
8115
6221
  // TODO: maybe we should render hidden button conditionally, needs to be checked if a11y compliant
8116
6222
  '&:not([hidden]) ~ .button': {
@@ -8136,8 +6242,9 @@ const getComponentCss$6 = (isDisabled, hideLabel, state, hasUnitOrVisibleCounter
8136
6242
  'sr-only': Object.assign(Object.assign({}, getScreenReaderOnlyJssStyle()), { padding: 0 }) }));
8137
6243
  };
8138
6244
 
8139
- const isListTypeOrdered = (listType) => listType === 'ordered';
8140
- const isOrderTypeNumbered = (orderType) => orderType === 'numbered';
6245
+ /** @deprecated */
6246
+ const isListTypeOrdered = (type) => type !== 'unordered';
6247
+ const isListTypeNumbered = (type) => type === 'numbered';
8141
6248
 
8142
6249
  const cssVariablePseudoSuffix = '--p-internal-text-list-pseudo-suffix';
8143
6250
  const cssVariablePaddingTop = '--p-internal-text-list-padding-top';
@@ -8146,8 +6253,8 @@ const cssVariableUnorderedPaddingLeft = '--p-internal-text-list-unordered-paddin
8146
6253
  const cssVariableOrderedPaddingLeft = '--p-internal-text-list-ordered-padding-left';
8147
6254
  const cssVariableListStyleType = '--p-internal-text-list-list-style-type';
8148
6255
  const counter = 'p-text-list-counter';
8149
- const getComponentCss$5 = (listType, orderType, theme) => {
8150
- const isOrderedList = isListTypeOrdered(listType);
6256
+ const getComponentCss$5 = (type, theme) => {
6257
+ const isOrderedList = isListTypeOrdered(type);
8151
6258
  return getCss({
8152
6259
  '@global': {
8153
6260
  ':host': Object.assign({ display: 'block' }, addImportantToEachRule(Object.assign({ counterReset: counter }, hostHiddenStyles))),
@@ -8160,7 +6267,7 @@ const getComponentCss$5 = (listType, orderType, theme) => {
8160
6267
  // TODO: in case it's last root list item with a nested list it would result in outer spacing which is not desired
8161
6268
  [cssVariablePaddingBottom]: spacingStaticMedium, [cssVariableOrderedPaddingLeft]: '2rem', [cssVariableUnorderedPaddingLeft]: '.625rem', [cssVariableListStyleType]: '"–"' }, (isOrderedList && {
8162
6269
  '&::before': {
8163
- content: `counters(${counter},'.',${isOrderTypeNumbered(orderType) ? 'decimal' : 'lower-latin'}) var(${cssVariablePseudoSuffix},'.')`,
6270
+ content: `counters(${counter},'.',${isListTypeNumbered(type) ? 'decimal' : 'lower-latin'}) var(${cssVariablePseudoSuffix},'.')`,
8164
6271
  counterIncrement: counter,
8165
6272
  position: 'absolute',
8166
6273
  top: 0,
@@ -8186,6 +6293,7 @@ const getComponentCss$4 = () => {
8186
6293
  const TEXT_TAGS = ['p', 'span', 'div', 'address', 'blockquote', 'figcaption', 'cite', 'time', 'legend'];
8187
6294
 
8188
6295
  const sizeMap = {
6296
+ 'xx-small': fontSizeTextXXSmall,
8189
6297
  'x-small': fontSizeTextXSmall,
8190
6298
  small: fontSizeTextSmall,
8191
6299
  medium: fontSizeTextMedium,
@@ -8232,27 +6340,27 @@ const getComponentCss$2 = (isDisabled, hideLabel, state, hasCounter, theme) => {
8232
6340
  })));
8233
6341
  };
8234
6342
 
8235
- const toastPositionBottomVarPublic = '--p-toast-position-bottom'; // CSS custom property exposed as public interface
8236
- const toastPositionBottomVarInternal = '--p-internal-toast-position-bottom';
6343
+ const cssVariablePositionBottom = '--p-toast-position-bottom'; // CSS custom property exposed as public interface
6344
+ const cssVariablePositionBottomInternal = '--p-internal-toast-position-bottom';
8237
6345
  const toastCloseClassName = 'close';
8238
6346
  const getComponentCss = () => {
8239
6347
  return getCss({
8240
6348
  '@global': {
8241
- ':host': addImportantToEachRule(Object.assign({ position: 'fixed', left: gridSafeZoneBase, right: gridSafeZoneBase,
6349
+ ':host': addImportantToEachRule(Object.assign({ position: 'fixed', left: gridExtendedOffsetBase, right: gridExtendedOffsetBase,
8242
6350
  // Needs a not overridable internal css variable to cover default position depending on viewport size and to handle animation properly.
8243
6351
  // In addition, a public css variable can be passed to overwrite the default position.
8244
- [toastPositionBottomVarInternal]: `var(${toastPositionBottomVarPublic}, 56px)`, bottom: `var(${toastPositionBottomVarInternal})`, maxWidth: '42rem', zIndex: TOAST_Z_INDEX, [getMediaQueryMin('s')]: {
6352
+ [cssVariablePositionBottomInternal]: `var(${cssVariablePositionBottom}, 56px)`, bottom: `var(${cssVariablePositionBottomInternal})`, maxWidth: '42rem', zIndex: TOAST_Z_INDEX, [getMediaQueryMin('s')]: {
8245
6353
  left: '64px',
8246
6354
  right: 'auto',
8247
- [toastPositionBottomVarInternal]: `var(${toastPositionBottomVarPublic}, 64px)`,
8248
- bottom: `var(${toastPositionBottomVarInternal})`,
6355
+ [cssVariablePositionBottomInternal]: `var(${cssVariablePositionBottom}, 64px)`,
6356
+ bottom: `var(${cssVariablePositionBottomInternal})`,
8249
6357
  } }, hostHiddenStyles)),
8250
- '@keyframes in': getKeyframesMobile('in', toastPositionBottomVarInternal),
8251
- '@keyframes out': getKeyframesMobile('out', toastPositionBottomVarInternal),
6358
+ '@keyframes in': getKeyframesMobile('in', cssVariablePositionBottomInternal),
6359
+ '@keyframes out': getKeyframesMobile('out', cssVariablePositionBottomInternal),
8252
6360
  },
8253
6361
  hydrated: getAnimationIn('in', "production" !== 'production' ),
8254
6362
  [toastCloseClassName]: getAnimationOut('out'),
8255
6363
  });
8256
6364
  };
8257
6365
 
8258
- export { getComponentCss$T as getAccordionCss, getComponentCss$S as getBannerCss, getComponentCss$P as getButtonCss, getComponentCss$R as getButtonGroupCss, getComponentCss$Q as getButtonPureCss, getComponentCss$O as getCarouselCss, getComponentCss$N as getCheckboxWrapperCss, getComponentCss$M as getContentWrapperCss, getComponentCss$L as getDisplayCss, getComponentCss$K as getDividerCss, getComponentCss$J as getFieldsetWrapperCss, getComponentCss$H as getFlexCss, getComponentCss$I as getFlexItemCss, getFunctionalComponentRequiredStyles, getFunctionalComponentStateMessageStyles, getComponentCss$F as getGridCss, getComponentCss$G as getGridItemCss, getComponentCss$E as getHeadingCss, getComponentCss$D as getHeadlineCss, getComponentCss$C as getIconCss, getComponentCss$B as getInlineNotificationCss, getComponentCss$z as getLinkCss, getComponentCss$A as getLinkPureCss, getComponentCss$z as getLinkSocialCss, getComponentCss$y as getLinkTileCss, getComponentCss$x as getMarqueCss, getComponentCss$w as getModalCss, getComponentCss$v as getModelSignatureCss, getComponentCss$u as getPaginationCss, getComponentCss$t as getPopoverCss, getComponentCss$s as getRadioButtonWrapperCss, getComponentCss$r as getScrollerCss, getComponentCss$p as getSegmentedControlCss, getComponentCss$q as getSegmentedControlItemCss, getComponentCss$o as getSelectWrapperCss, getComponentCss$m as getSpinnerCss, getComponentCss$k as getStepperHorizontalCss, getComponentCss$l as getStepperHorizontalItemCss, getComponentCss$j as getSwitchCss, getComponentCss$i as getTableBodyCss, getComponentCss$h as getTableCellCss, getComponentCss$c as getTableCss, getComponentCss$g as getTableHeadCellCss, getComponentCss$e as getTableHeadCss, getComponentCss$f as getTableHeadRowCss, getComponentCss$d as getTableRowCss, getComponentCss$b as getTabsBarCss, getComponentCss$9 as getTabsCss, getComponentCss$a as getTabsItemCss, getComponentCss$7 as getTagCss, getComponentCss$8 as getTagDismissibleCss, getComponentCss$3 as getTextCss, getComponentCss$6 as getTextFieldWrapperCss, getComponentCss$5 as getTextListCss, getComponentCss$4 as getTextListItemCss, getComponentCss$2 as getTextareaWrapperCss, getComponentCss as getToastCss };
6366
+ export { getComponentCss$W as getAccordionCss, getComponentCss$V as getBannerCss, getComponentCss$R as getButtonCss, getComponentCss$U as getButtonGroupCss, getComponentCss$T as getButtonPureCss, getComponentCss$S as getButtonTileCss, getComponentCss$Q as getCarouselCss, getComponentCss$P as getCheckboxWrapperCss, getComponentCss$O as getContentWrapperCss, getComponentCss$N as getDisplayCss, getComponentCss$M as getDividerCss, getComponentCss$K as getFieldsetCss, getComponentCss$L as getFieldsetWrapperCss, getComponentCss$I as getFlexCss, getComponentCss$J as getFlexItemCss, getFunctionalComponentRequiredStyles, getFunctionalComponentStateMessageStyles, getComponentCss$G as getGridCss, getComponentCss$H as getGridItemCss, getComponentCss$F as getHeadingCss, getComponentCss$E as getHeadlineCss, getComponentCss$D as getIconCss, getComponentCss$C as getInlineNotificationCss, getComponentCss$A as getLinkCss, getComponentCss$B as getLinkPureCss, getComponentCss$A as getLinkSocialCss, getComponentCss$y as getLinkTileCss, getComponentCss$z as getLinkTileModelSignatureCss, getComponentCss$x as getMarqueCss, getComponentCss$w as getModalCss, getComponentCss$v as getModelSignatureCss, getComponentCss$u as getPaginationCss, getComponentCss$t as getPopoverCss, getComponentCss$s as getRadioButtonWrapperCss, getComponentCss$r as getScrollerCss, getComponentCss$p as getSegmentedControlCss, getComponentCss$q as getSegmentedControlItemCss, getComponentCss$o as getSelectWrapperCss, getComponentCss$m as getSpinnerCss, getComponentCss$k as getStepperHorizontalCss, getComponentCss$l as getStepperHorizontalItemCss, getComponentCss$j as getSwitchCss, getComponentCss$i as getTableBodyCss, getComponentCss$h as getTableCellCss, getComponentCss$g as getTableCss, getComponentCss$f as getTableHeadCellCss, getComponentCss$d as getTableHeadCss, getComponentCss$e as getTableHeadRowCss, getComponentCss$c as getTableRowCss, getComponentCss$b as getTabsBarCss, getComponentCss$9 as getTabsCss, getComponentCss$a as getTabsItemCss, getComponentCss$7 as getTagCss, getComponentCss$8 as getTagDismissibleCss, getComponentCss$3 as getTextCss, getComponentCss$6 as getTextFieldWrapperCss, getComponentCss$5 as getTextListCss, getComponentCss$4 as getTextListItemCss, getComponentCss$2 as getTextareaWrapperCss, getComponentCss as getToastCss };