@phillips/seldon 1.279.1 → 1.280.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (387) hide show
  1. package/README.md +85 -5
  2. package/dist/_virtual/index3.cjs +1 -1
  3. package/dist/_virtual/index3.js +2 -2
  4. package/dist/_virtual/index4.cjs +1 -1
  5. package/dist/_virtual/index4.js +2 -4
  6. package/dist/_virtual/index5.cjs +1 -1
  7. package/dist/_virtual/index5.js +4 -2
  8. package/dist/components/Accordion/Accordion.cjs +2 -1
  9. package/dist/components/Accordion/Accordion.js +5 -3
  10. package/dist/components/Accordion/_accordion.css +1 -0
  11. package/dist/components/AddToCalendar/AddToCalendar.cjs +2 -1
  12. package/dist/components/AddToCalendar/AddToCalendar.js +2 -0
  13. package/dist/components/AddToCalendar/_addToCalendar.css +1 -0
  14. package/dist/components/Article/Article.cjs +2 -1
  15. package/dist/components/Article/Article.js +2 -0
  16. package/dist/components/Article/_article.css +1 -0
  17. package/dist/components/Banner/Banner.cjs +2 -1
  18. package/dist/components/Banner/Banner.js +4 -2
  19. package/dist/components/Banner/_banner.css +1 -0
  20. package/dist/components/Breadcrumb/Breadcrumb.cjs +2 -1
  21. package/dist/components/Breadcrumb/Breadcrumb.js +16 -14
  22. package/dist/components/Breadcrumb/_breadcrumb.css +1 -0
  23. package/dist/components/Button/Button.cjs +2 -1
  24. package/dist/components/Button/Button.js +2 -0
  25. package/dist/components/Button/_button.css +1 -0
  26. package/dist/components/Card/Card.cjs +2 -1
  27. package/dist/components/Card/Card.js +4 -2
  28. package/dist/components/Card/_card.css +1 -0
  29. package/dist/components/Carousel/Carousel.cjs +2 -1
  30. package/dist/components/Carousel/Carousel.js +68 -69
  31. package/dist/components/Carousel/CarouselDot.cjs +1 -1
  32. package/dist/components/Carousel/CarouselDot.d.ts +4 -2
  33. package/dist/components/Carousel/CarouselDot.js +12 -11
  34. package/dist/components/Carousel/CarouselDots.cjs +1 -1
  35. package/dist/components/Carousel/CarouselDots.js +62 -58
  36. package/dist/components/Carousel/_carousel.css +1 -0
  37. package/dist/components/ComboBox/ComboBox.cjs +3 -1
  38. package/dist/components/ComboBox/ComboBox.js +35 -31
  39. package/dist/components/ComboBox/ComboBox.stories.d.ts +1 -0
  40. package/dist/components/ComboBox/_combobox.css +1 -0
  41. package/dist/components/ComposedModal/ComposedModal.cjs +2 -1
  42. package/dist/components/ComposedModal/ComposedModal.js +11 -9
  43. package/dist/components/ComposedModal/_composedModal.css +1 -0
  44. package/dist/components/ContentPeek/ContentPeek.cjs +2 -1
  45. package/dist/components/ContentPeek/ContentPeek.js +2 -0
  46. package/dist/components/ContentPeek/_contentPeek.css +1 -0
  47. package/dist/components/Countdown/Countdown.cjs +2 -1
  48. package/dist/components/Countdown/Countdown.js +13 -11
  49. package/dist/components/Countdown/Duration.cjs +2 -1
  50. package/dist/components/Countdown/Duration.js +4 -2
  51. package/dist/components/Countdown/_countdown.css +1 -0
  52. package/dist/components/Countdown/_duration.css +1 -0
  53. package/dist/components/DescriptiveRadioButton/DescriptiveRadioButton.cjs +2 -1
  54. package/dist/components/DescriptiveRadioButton/DescriptiveRadioButton.js +22 -20
  55. package/dist/components/DescriptiveRadioButton/_descriptiveRadioButton.css +1 -0
  56. package/dist/components/DescriptiveRadioButtonGroup/DescriptiveRadioButtonGroup.cjs +2 -1
  57. package/dist/components/DescriptiveRadioButtonGroup/DescriptiveRadioButtonGroup.js +7 -5
  58. package/dist/components/DescriptiveRadioButtonGroup/_descriptiveRadioButtonGroup.css +1 -0
  59. package/dist/components/Detail/Detail.cjs +2 -1
  60. package/dist/components/Detail/Detail.js +5 -3
  61. package/dist/components/Detail/_detail.css +1 -0
  62. package/dist/components/DetailList/DetailList.cjs +2 -1
  63. package/dist/components/DetailList/DetailList.js +14 -12
  64. package/dist/components/DetailList/_detailList.css +1 -0
  65. package/dist/components/Divider/Divider.cjs +2 -1
  66. package/dist/components/Divider/Divider.js +8 -6
  67. package/dist/components/Divider/_divider.css +1 -0
  68. package/dist/components/Drawer/Drawer.cjs +2 -1
  69. package/dist/components/Drawer/Drawer.js +9 -7
  70. package/dist/components/Drawer/DrawerHeader.cjs +2 -1
  71. package/dist/components/Drawer/DrawerHeader.js +12 -10
  72. package/dist/components/Drawer/_drawer.css +1 -0
  73. package/dist/components/Drawer/_drawerHeader.css +1 -0
  74. package/dist/components/Dropdown/Dropdown.cjs +2 -1
  75. package/dist/components/Dropdown/Dropdown.js +2 -0
  76. package/dist/components/Dropdown/_dropdown.css +1 -0
  77. package/dist/components/ExitGateCard/ExitGateCard.cjs +2 -1
  78. package/dist/components/ExitGateCard/ExitGateCard.js +6 -4
  79. package/dist/components/ExitGateCard/_exitGateCard.css +1 -0
  80. package/dist/components/FavoritingTileButton/FavoritingTileButton.cjs +2 -1
  81. package/dist/components/FavoritingTileButton/FavoritingTileButton.js +8 -6
  82. package/dist/components/FavoritingTileButton/_favoritingTileButton.css +1 -0
  83. package/dist/components/Filter/Filter.cjs +2 -1
  84. package/dist/components/Filter/Filter.js +9 -7
  85. package/dist/components/Filter/_filter.css +1 -0
  86. package/dist/components/Grid/Grid.cjs +2 -1
  87. package/dist/components/Grid/Grid.js +13 -11
  88. package/dist/components/Grid/_grid.css +1 -0
  89. package/dist/components/GridItem/GridItem.cjs +2 -1
  90. package/dist/components/GridItem/GridItem.js +2 -0
  91. package/dist/components/GridItem/_gridItem.css +1 -0
  92. package/dist/components/Icon/Icon.cjs +2 -1
  93. package/dist/components/Icon/Icon.js +6 -4
  94. package/dist/components/Icon/_icon.css +1 -0
  95. package/dist/components/IconButton/IconButton.cjs +2 -1
  96. package/dist/components/IconButton/IconButton.js +11 -9
  97. package/dist/components/IconButton/_iconButton.css +1 -0
  98. package/dist/components/Input/Input.cjs +3 -1
  99. package/dist/components/Input/Input.js +4 -0
  100. package/dist/components/Input/_input.css +1 -0
  101. package/dist/components/Link/Link.cjs +2 -1
  102. package/dist/components/Link/Link.js +10 -8
  103. package/dist/components/Link/_link.css +1 -0
  104. package/dist/components/LinkBlock/LinkBlock.cjs +2 -1
  105. package/dist/components/LinkBlock/LinkBlock.js +8 -6
  106. package/dist/components/LinkBlock/_linkBlock.css +1 -0
  107. package/dist/components/LinkList/LinkList.cjs +2 -1
  108. package/dist/components/LinkList/LinkList.js +11 -9
  109. package/dist/components/LinkList/_linkList.css +1 -0
  110. package/dist/components/Loader/Loader.cjs +2 -1
  111. package/dist/components/Loader/Loader.js +8 -6
  112. package/dist/components/Loader/_loader.css +1 -0
  113. package/dist/components/Modal/Modal.cjs +2 -1
  114. package/dist/components/Modal/Modal.js +6 -4
  115. package/dist/components/Modal/_modal.css +1 -0
  116. package/dist/components/Navigation/Navigation.cjs +2 -1
  117. package/dist/components/Navigation/Navigation.js +10 -8
  118. package/dist/components/Navigation/NavigationItem/NavigationItem.cjs +2 -1
  119. package/dist/components/Navigation/NavigationItem/NavigationItem.js +6 -4
  120. package/dist/components/Navigation/NavigationItem/_navigationItem.css +1 -0
  121. package/dist/components/Navigation/NavigationItemWithSubmenu/NavigationItemWithSubmenu.cjs +2 -1
  122. package/dist/components/Navigation/NavigationItemWithSubmenu/NavigationItemWithSubmenu.js +8 -6
  123. package/dist/components/Navigation/NavigationItemWithSubmenu/_navigationItemWithSubmenu.css +1 -0
  124. package/dist/components/Navigation/NavigationList/NavigationList.cjs +2 -1
  125. package/dist/components/Navigation/NavigationList/NavigationList.js +9 -7
  126. package/dist/components/Navigation/NavigationList/_navigationList.css +1 -0
  127. package/dist/components/Navigation/_navigation.css +1 -0
  128. package/dist/components/NotificationBanner/NotificationBanner.cjs +2 -1
  129. package/dist/components/NotificationBanner/NotificationBanner.js +4 -2
  130. package/dist/components/NotificationBanner/_notificationBanner.css +1 -0
  131. package/dist/components/PageContentWrapper/PageContentWrapper.cjs +2 -1
  132. package/dist/components/PageContentWrapper/PageContentWrapper.js +11 -9
  133. package/dist/components/PageContentWrapper/_pageContentWrapper.css +1 -0
  134. package/dist/components/Pagination/Pagination.cjs +2 -1
  135. package/dist/components/Pagination/Pagination.js +2 -0
  136. package/dist/components/Pagination/_pagination.css +1 -0
  137. package/dist/components/PinchZoom/PinchZoom.cjs +2 -1
  138. package/dist/components/PinchZoom/PinchZoom.js +2 -0
  139. package/dist/components/PinchZoom/_pinchZoom.css +1 -0
  140. package/dist/components/ProgressBar/ProgressBar.cjs +2 -1
  141. package/dist/components/ProgressBar/ProgressBar.js +2 -0
  142. package/dist/components/ProgressBar/_progressBar.css +1 -0
  143. package/dist/components/ProgressIndicator/ProgressIndicator.cjs +2 -1
  144. package/dist/components/ProgressIndicator/ProgressIndicator.js +13 -11
  145. package/dist/components/ProgressIndicator/_progressIndicator.css +1 -0
  146. package/dist/components/Row/Row.cjs +2 -1
  147. package/dist/components/Row/Row.js +6 -4
  148. package/dist/components/Row/_row.css +1 -0
  149. package/dist/components/Search/Search.cjs +2 -1
  150. package/dist/components/Search/Search.js +2 -0
  151. package/dist/components/Search/SearchButton.cjs +2 -1
  152. package/dist/components/Search/SearchButton.js +4 -2
  153. package/dist/components/Search/SearchResults/SearchResults.cjs +2 -1
  154. package/dist/components/Search/SearchResults/SearchResults.js +4 -2
  155. package/dist/components/Search/SearchResults/_searchResults.css +1 -0
  156. package/dist/components/Search/_search.css +1 -0
  157. package/dist/components/Search/_searchButton.css +1 -0
  158. package/dist/components/SeldonImage/SeldonImage.cjs +2 -1
  159. package/dist/components/SeldonImage/SeldonImage.js +2 -0
  160. package/dist/components/SeldonImage/_seldonImage.css +1 -0
  161. package/dist/components/Select/Select.cjs +3 -1
  162. package/dist/components/Select/Select.js +21 -17
  163. package/dist/components/Select/_select.css +1 -0
  164. package/dist/components/SlideToActivate/SlideToActivate.cjs +2 -1
  165. package/dist/components/SlideToActivate/SlideToActivate.js +2 -0
  166. package/dist/components/SlideToActivate/_slideToActivate.css +1 -0
  167. package/dist/components/SplitPanel/SplitPanel.cjs +2 -1
  168. package/dist/components/SplitPanel/SplitPanel.js +6 -4
  169. package/dist/components/SplitPanel/_splitPanel.css +1 -0
  170. package/dist/components/Tabs/TabsContainer.cjs +2 -1
  171. package/dist/components/Tabs/TabsContainer.js +2 -0
  172. package/dist/components/Tabs/_tabs.css +1 -0
  173. package/dist/components/Tags/Tags.cjs +2 -1
  174. package/dist/components/Tags/Tags.js +10 -8
  175. package/dist/components/Tags/_tags.css +1 -0
  176. package/dist/components/Text/Text.cjs +2 -1
  177. package/dist/components/Text/Text.js +6 -4
  178. package/dist/components/Text/_text.css +1 -0
  179. package/dist/components/TextArea/TextArea.cjs +3 -1
  180. package/dist/components/TextArea/TextArea.js +14 -10
  181. package/dist/components/TextArea/TextArea.stories.d.ts +1 -0
  182. package/dist/components/TextArea/_textArea.css +1 -0
  183. package/dist/components/TextSymbol/TextSymbol.cjs +2 -1
  184. package/dist/components/TextSymbol/TextSymbol.js +7 -5
  185. package/dist/components/TextSymbol/_textSymbol.css +1 -0
  186. package/dist/components/Toast/Toast.cjs +2 -1
  187. package/dist/components/Toast/Toast.js +2 -0
  188. package/dist/components/Toast/_toast.css +1 -0
  189. package/dist/components/Toggle/_toggle.css +1 -0
  190. package/dist/components/Video/Video.cjs +2 -1
  191. package/dist/components/Video/Video.js +2 -0
  192. package/dist/components/Video/_video.css +1 -0
  193. package/dist/node_modules/@artsy/fresnel/dist/index.cjs +1 -1
  194. package/dist/node_modules/@artsy/fresnel/dist/index.js +1 -1
  195. package/dist/node_modules/classnames/index.cjs +1 -1
  196. package/dist/node_modules/classnames/index.js +1 -1
  197. package/dist/node_modules/usehooks-ts/dist/index.cjs +1 -1
  198. package/dist/node_modules/usehooks-ts/dist/index.js +1 -1
  199. package/dist/pages/Page.cjs +2 -1
  200. package/dist/pages/Page.js +4 -2
  201. package/dist/pages/_page.css +1 -0
  202. package/dist/patterns/AccountPageHeader/AccountPageHeader.cjs +2 -1
  203. package/dist/patterns/AccountPageHeader/AccountPageHeader.js +11 -9
  204. package/dist/patterns/AccountPageHeader/_accountPageHeader.css +1 -0
  205. package/dist/patterns/BidSnapshot/BidSnapshot.cjs +2 -1
  206. package/dist/patterns/BidSnapshot/BidSnapshot.js +2 -0
  207. package/dist/patterns/BidSnapshot/_bidSnapshot.css +1 -0
  208. package/dist/patterns/CountryPicker/CountryPicker.stories.d.ts +4 -0
  209. package/dist/patterns/CountryPicker/CountryPickerModal.cjs +2 -1
  210. package/dist/patterns/CountryPicker/CountryPickerModal.js +8 -6
  211. package/dist/patterns/CountryPicker/CountryPickerOption.cjs +2 -1
  212. package/dist/patterns/CountryPicker/CountryPickerOption.js +6 -4
  213. package/dist/patterns/CountryPicker/CountryPickerTrigger.cjs +3 -1
  214. package/dist/patterns/CountryPicker/CountryPickerTrigger.js +11 -7
  215. package/dist/patterns/CountryPicker/_countryPickerModal.css +1 -0
  216. package/dist/patterns/CountryPicker/_countryPickerOption.css +1 -0
  217. package/dist/patterns/CountryPicker/_countryPickerTrigger.css +1 -0
  218. package/dist/patterns/FavoritesCollectionTile/FavoritesCollectionTile.cjs +2 -1
  219. package/dist/patterns/FavoritesCollectionTile/FavoritesCollectionTile.js +4 -2
  220. package/dist/patterns/FavoritesCollectionTile/_favoritesCollectionTile.css +1 -0
  221. package/dist/patterns/FilterMenu/FilterMenu.cjs +2 -1
  222. package/dist/patterns/FilterMenu/FilterMenu.js +6 -4
  223. package/dist/patterns/FilterMenu/_filterMenu.css +1 -0
  224. package/dist/patterns/FiltersInline/FilterButton.cjs +2 -1
  225. package/dist/patterns/FiltersInline/FilterButton.js +11 -9
  226. package/dist/patterns/FiltersInline/FilterDropdownMenuDesktop.cjs +2 -1
  227. package/dist/patterns/FiltersInline/FilterDropdownMenuDesktop.js +16 -14
  228. package/dist/patterns/FiltersInline/FilterDropdownMenuMobile.cjs +2 -1
  229. package/dist/patterns/FiltersInline/FilterDropdownMenuMobile.js +6 -4
  230. package/dist/patterns/FiltersInline/FiltersInline.cjs +2 -1
  231. package/dist/patterns/FiltersInline/FiltersInline.js +6 -4
  232. package/dist/patterns/FiltersInline/_filterButton.css +1 -0
  233. package/dist/patterns/FiltersInline/_filterDropdownMenu.css +1 -0
  234. package/dist/patterns/FiltersInline/_filtersInline.css +1 -0
  235. package/dist/patterns/HeroBanner/HeroBanner.cjs +2 -1
  236. package/dist/patterns/HeroBanner/HeroBanner.js +15 -13
  237. package/dist/patterns/HeroBanner/_heroBanner.css +1 -0
  238. package/dist/patterns/LanguageSelector/LanguageSelector.cjs +2 -1
  239. package/dist/patterns/LanguageSelector/LanguageSelector.js +10 -8
  240. package/dist/patterns/LanguageSelector/_languageSelector.css +1 -0
  241. package/dist/patterns/ObjectTile/ObjectTile.cjs +2 -1
  242. package/dist/patterns/ObjectTile/ObjectTile.js +20 -18
  243. package/dist/patterns/ObjectTile/_objectTile.css +1 -0
  244. package/dist/patterns/PhoneNumberInput/PhoneNumberInput.cjs +2 -1
  245. package/dist/patterns/PhoneNumberInput/PhoneNumberInput.js +2 -0
  246. package/dist/patterns/PhoneNumberInput/_phoneNumberInput.css +1 -0
  247. package/dist/patterns/ProgressWizard/ProgressWizard.cjs +2 -1
  248. package/dist/patterns/ProgressWizard/ProgressWizard.js +7 -5
  249. package/dist/patterns/ProgressWizard/_progressWizard.css +1 -0
  250. package/dist/patterns/SaleCard/SaleCard.cjs +2 -1
  251. package/dist/patterns/SaleCard/SaleCard.js +12 -10
  252. package/dist/patterns/SaleCard/SaleCardActions.cjs +2 -1
  253. package/dist/patterns/SaleCard/SaleCardActions.js +6 -4
  254. package/dist/patterns/SaleCard/_saleCard.css +1 -0
  255. package/dist/patterns/SaleCard/_saleCardActions.css +1 -0
  256. package/dist/patterns/SaleHeaderBanner/SaleHeaderBanner.cjs +2 -1
  257. package/dist/patterns/SaleHeaderBanner/SaleHeaderBanner.js +2 -0
  258. package/dist/patterns/SaleHeaderBanner/_saleHeaderBanner.css +1 -0
  259. package/dist/patterns/Social/Social.cjs +2 -1
  260. package/dist/patterns/Social/Social.js +2 -0
  261. package/dist/patterns/Social/_social.css +1 -0
  262. package/dist/patterns/Subscribe/Subscribe.cjs +2 -1
  263. package/dist/patterns/Subscribe/Subscribe.d.ts +7 -2
  264. package/dist/patterns/Subscribe/Subscribe.js +42 -38
  265. package/dist/patterns/Subscribe/_subscribe.css +1 -0
  266. package/dist/patterns/TextBanner/TextBanner.cjs +2 -1
  267. package/dist/patterns/TextBanner/TextBanner.js +10 -8
  268. package/dist/patterns/TextBanner/_textBanner.css +1 -0
  269. package/dist/patterns/UserManagement/UserManagement.cjs +2 -1
  270. package/dist/patterns/UserManagement/UserManagement.js +13 -11
  271. package/dist/patterns/UserManagement/_userManagement.css +1 -0
  272. package/dist/patterns/ViewingDetails/ViewingDetails.cjs +2 -1
  273. package/dist/patterns/ViewingDetails/ViewingDetails.js +6 -4
  274. package/dist/patterns/ViewingDetails/_viewingDetails.css +1 -0
  275. package/dist/patterns/ViewingsList/ViewingsList.cjs +2 -1
  276. package/dist/patterns/ViewingsList/ViewingsList.js +2 -0
  277. package/dist/patterns/ViewingsList/ViewingsListCard.cjs +2 -1
  278. package/dist/patterns/ViewingsList/ViewingsListCard.js +8 -6
  279. package/dist/patterns/ViewingsList/_viewingsList.css +1 -0
  280. package/dist/providers/SeldonProvider/SeldonProvider.cjs +2 -1
  281. package/dist/providers/SeldonProvider/SeldonProvider.js +3 -1
  282. package/dist/scss/_allPartials.scss +2 -1
  283. package/dist/scss/_foundation.css +1 -0
  284. package/dist/scss/_foundation.scss +69 -0
  285. package/dist/scss/_layers.scss +12 -0
  286. package/dist/scss/_reset.scss +57 -53
  287. package/dist/scss/_sharedClasses.scss +61 -57
  288. package/dist/scss/_typography.scss +64 -52
  289. package/dist/scss/_vars.scss +6 -5
  290. package/dist/scss/_vars.scss.cjs +6 -5
  291. package/dist/scss/_vars.scss.js +6 -5
  292. package/dist/scss/componentStyles.scss +3 -66
  293. package/dist/scss/components/Accordion/_accordion.scss +102 -99
  294. package/dist/scss/components/AddToCalendar/_addToCalendar.scss +69 -52
  295. package/dist/scss/components/Article/_article.scss +22 -19
  296. package/dist/scss/components/Banner/_banner.scss +137 -134
  297. package/dist/scss/components/Breadcrumb/_breadcrumb.scss +47 -44
  298. package/dist/scss/components/Button/_button.scss +240 -216
  299. package/dist/scss/components/Card/_card.scss +86 -83
  300. package/dist/scss/components/Carousel/_carousel.scss +169 -166
  301. package/dist/scss/components/ComboBox/_combobox.scss +144 -141
  302. package/dist/scss/components/ComposedModal/_composedModal.scss +54 -51
  303. package/dist/scss/components/ContentPeek/_contentPeek.scss +48 -45
  304. package/dist/scss/components/Countdown/_countdown.scss +64 -61
  305. package/dist/scss/components/Countdown/_duration.scss +6 -3
  306. package/dist/scss/components/DatePicker/_datePicker.scss +74 -65
  307. package/dist/scss/components/DescriptiveRadioButton/_descriptiveRadioButton.scss +50 -47
  308. package/dist/scss/components/DescriptiveRadioButtonGroup/_descriptiveRadioButtonGroup.scss +24 -21
  309. package/dist/scss/components/Detail/_detail.scss +39 -36
  310. package/dist/scss/components/DetailList/_detailList.scss +37 -34
  311. package/dist/scss/components/Divider/_divider.scss +15 -12
  312. package/dist/scss/components/Drawer/_drawer.scss +189 -186
  313. package/dist/scss/components/Drawer/_drawerHeader.scss +30 -27
  314. package/dist/scss/components/Dropdown/_dropdown.scss +79 -76
  315. package/dist/scss/components/ExitGateCard/_exitGateCard.scss +59 -56
  316. package/dist/scss/components/FavoritingTileButton/_favoritingTileButton.scss +36 -33
  317. package/dist/scss/components/Filter/_filter.scss +87 -84
  318. package/dist/scss/components/Grid/_grid.scss +20 -17
  319. package/dist/scss/components/GridItem/_gridItem.scss +33 -30
  320. package/dist/scss/components/Icon/_icon.scss +10 -7
  321. package/dist/scss/components/IconButton/_iconButton.scss +168 -77
  322. package/dist/scss/components/Input/_input.scss +205 -210
  323. package/dist/scss/components/Link/_link.scss +69 -64
  324. package/dist/scss/components/LinkBlock/_linkBlock.scss +14 -11
  325. package/dist/scss/components/LinkList/_linkList.scss +19 -16
  326. package/dist/scss/components/Loader/_loader.scss +21 -18
  327. package/dist/scss/components/Modal/_modal.scss +29 -26
  328. package/dist/scss/components/Navigation/NavigationItem/_navigationItem.scss +86 -83
  329. package/dist/scss/components/Navigation/NavigationItemWithSubmenu/_navigationItemWithSubmenu.scss +89 -86
  330. package/dist/scss/components/Navigation/NavigationList/_navigationList.scss +71 -68
  331. package/dist/scss/components/Navigation/_navigation.scss +122 -119
  332. package/dist/scss/components/NotificationBanner/_notificationBanner.scss +33 -30
  333. package/dist/scss/components/PageContentWrapper/_pageContentWrapper.scss +7 -4
  334. package/dist/scss/components/Pagination/_pagination.scss +66 -63
  335. package/dist/scss/components/PinchZoom/_pinchZoom.scss +28 -25
  336. package/dist/scss/components/ProgressBar/_progressBar.scss +77 -74
  337. package/dist/scss/components/ProgressIndicator/_progressIndicator.scss +55 -52
  338. package/dist/scss/components/Row/_row.scss +6 -3
  339. package/dist/scss/components/Search/SearchResults/_searchResults.scss +43 -40
  340. package/dist/scss/components/Search/_search.scss +127 -124
  341. package/dist/scss/components/Search/_searchButton.scss +53 -50
  342. package/dist/scss/components/SeldonImage/_seldonImage.scss +93 -90
  343. package/dist/scss/components/Select/_select.scss +60 -48
  344. package/dist/scss/components/SlideToActivate/_slideToActivate.scss +227 -224
  345. package/dist/scss/components/SplitPanel/_splitPanel.scss +26 -23
  346. package/dist/scss/components/Tabs/_tabs.scss +69 -66
  347. package/dist/scss/components/Tags/_tags.scss +64 -61
  348. package/dist/scss/components/Text/_text.scss +39 -36
  349. package/dist/scss/components/TextArea/_textArea.scss +102 -99
  350. package/dist/scss/components/TextSymbol/_textSymbol.scss +13 -10
  351. package/dist/scss/components/Toast/_toast.scss +82 -79
  352. package/dist/scss/components/Toggle/_toggle.scss +148 -145
  353. package/dist/scss/components/Video/_video.scss +16 -13
  354. package/dist/scss/layers.test.d.ts +1 -0
  355. package/dist/scss/patterns/AccountPageHeader/_accountPageHeader.scss +35 -32
  356. package/dist/scss/patterns/BidSnapshot/_bidSnapshot.scss +43 -40
  357. package/dist/scss/patterns/CountryPicker/_countryPickerModal.scss +82 -81
  358. package/dist/scss/patterns/CountryPicker/_countryPickerOption.scss +72 -69
  359. package/dist/scss/patterns/CountryPicker/_countryPickerTrigger.scss +83 -80
  360. package/dist/scss/patterns/FavoritesCollectionTile/_favoritesCollectionTile.scss +153 -151
  361. package/dist/scss/patterns/FilterMenu/_filterMenu.scss +14 -11
  362. package/dist/scss/patterns/FiltersInline/_filterButton.scss +41 -38
  363. package/dist/scss/patterns/FiltersInline/_filterDropdownMenu.scss +165 -162
  364. package/dist/scss/patterns/FiltersInline/_filtersInline.scss +31 -28
  365. package/dist/scss/patterns/HeroBanner/_heroBanner.scss +78 -75
  366. package/dist/scss/patterns/LanguageSelector/_languageSelector.scss +47 -43
  367. package/dist/scss/patterns/ObjectTile/_objectTile.scss +84 -81
  368. package/dist/scss/patterns/PhoneNumberInput/_phoneNumberInput.scss +45 -42
  369. package/dist/scss/patterns/ProgressWizard/_progressWizard.scss +66 -63
  370. package/dist/scss/patterns/SaleCard/_saleCard.scss +62 -58
  371. package/dist/scss/patterns/SaleCard/_saleCardActions.scss +11 -8
  372. package/dist/scss/patterns/SaleHeaderBanner/_saleHeaderBanner.scss +75 -72
  373. package/dist/scss/patterns/Social/_social.scss +65 -62
  374. package/dist/scss/patterns/Subscribe/_subscribe.scss +16 -13
  375. package/dist/scss/patterns/TextBanner/_textBanner.scss +35 -32
  376. package/dist/scss/patterns/UserManagement/_userManagement.scss +49 -46
  377. package/dist/scss/patterns/ViewingDetails/_viewingDetails.scss +55 -52
  378. package/dist/scss/patterns/ViewingsList/_viewingsList.scss +44 -41
  379. package/dist/scss/site-furniture/Footer/_footer.scss +104 -95
  380. package/dist/scss/site-furniture/Header/_header.scss +176 -173
  381. package/dist/site-furniture/Footer/Footer.cjs +2 -1
  382. package/dist/site-furniture/Footer/Footer.js +4 -2
  383. package/dist/site-furniture/Footer/_footer.css +1 -0
  384. package/dist/site-furniture/Header/Header.cjs +2 -1
  385. package/dist/site-furniture/Header/Header.js +2 -0
  386. package/dist/site-furniture/Header/_header.css +1 -0
  387. package/package.json +4 -3
package/README.md CHANGED
@@ -20,19 +20,99 @@ yarn add @phillips/seldon
20
20
 
21
21
  ### Styling
22
22
 
23
- The project contains a `scss` folder. Here you will find the main export of our sass styles for our components. There's also a scss export that contains our mixins, tokens, and other utilities.
23
+ There are two ways to get Seldon's CSS. **Pick one** combining them double-loads styles.
24
+
25
+ - **React apps (recommended):** import the components you use and wrap your app in `SeldonProvider`. Each component imports its own **pre-compiled CSS** from its built JS (e.g. `Button.js` does `import './_button.css'`), so styling follows the JavaScript graph and you only ship what you use; `SeldonProvider` loads the shared `foundation` CSS (fonts, `:root` tokens, padding utilities) exactly once. You do **not** need `componentStyles` — or any Sass toolchain — on this path; the package ships plain CSS.
26
+
27
+ ```jsx
28
+ import { SeldonProvider, Button } from '@phillips/seldon';
29
+
30
+ <SeldonProvider>
31
+ <Button>…</Button>
32
+ </SeldonProvider>;
33
+ ```
34
+
35
+ Foundation, component, pattern, and site-furniture CSS is wrapped in `@layer seldon.foundation`, `seldon.components`, `seldon.patterns`, and `seldon.site` (later layers win). Third-party CSS (flatpickr) lives in a lower `vendor` layer so Seldon can override it. Every emitting sheet restates that full order so whichever Seldon file the bundler evaluates first still establishes it — JS import order does not decide equal-specificity ties. Unlayered CSS in your app still beats all Seldon layers, which is what you want for overrides.
36
+
37
+ - **Compiling Seldon SCSS yourself:** use the published Sass entry points below instead. Do this only if you are _not_ relying on the JavaScript imports to deliver CSS — otherwise every component's CSS ships twice (once from JS, once from Sass), and `foundation` loads twice.
38
+
39
+ > Do not use `SeldonProvider` (or the React component imports) **and** `componentStyles` together. `SeldonProvider` loads `foundation` and each component supplies its own CSS via JS; `componentStyles` bundles `foundation` plus every component's CSS. Loading both duplicates all of it.
40
+
41
+ ##### CSS imports are side effects — don't let your bundler drop them
42
+
43
+ The component CSS arrives via bare `import './_button.css'` statements that export nothing, so an aggressive bundler can tree-shake them away and render Seldon unstyled. Seldon guards against this by declaring its CSS side-effectful in `package.json` (`"sideEffects": ["**/*.scss", "**/*.css"]`), which is all a normal app needs.
44
+
45
+ For a standard **Vite app** no extra config is required — Vite bundles CSS imported from dependencies automatically. If styles ever go missing, check `vite.config.ts` for these:
46
+
47
+ - **`build.rollupOptions.external`** — do **not** externalize `@phillips/seldon` (or `/^@phillips/`). Externalizing it drops the components' CSS imports from your output. Leave Seldon bundled, or extract its CSS yourself.
48
+ - **`optimizeDeps.exclude`** — excluding `@phillips/seldon` can stop its CSS being picked up in dev; remove it or add the package to `optimizeDeps.include` instead.
49
+ - **`build.lib`** (only if you are building your own library, not an app) — a `lib` build treats deps as external and won't emit their CSS. Keep your own `package.json` `sideEffects` honest (don't set `false`) so downstream consumers of _your_ library retain the CSS, and re-export or bundle Seldon's CSS as needed.
50
+ - **`css.preprocessorOptions.scss`** — irrelevant on this path; you can leave Sass unconfigured because the package ships compiled CSS.
51
+
52
+ #### Compiling Seldon SCSS yourself
53
+
54
+ Pick **one** CSS source — `componentStyles` already `@use`s `foundation`, so loading both duplicates the shared CSS when you code-split:
24
55
 
25
56
  ```scss
26
- @use '@phillips/seldon/dist/scss/componentStyles'; // our component tyles
27
- @use '@phillips/seldon/dist/scss/allPartials'; // our scss utilities
57
+ // Option A full component bundle (includes foundation: tokens, type, padding utilities):
58
+ @use '@phillips/seldon/dist/scss/componentStyles';
28
59
  ```
29
60
 
30
- If you wish to only import specific component styles you can find them in their respective directories inside the `scss` folder.
31
-
32
61
  ```scss
62
+ // Option B — foundation plus specific component styles, à la carte:
63
+ @use '@phillips/seldon/dist/scss/foundation';
33
64
  @use '@phillips/seldon/dist/scss/components/Button/button';
34
65
  ```
35
66
 
67
+ For SCSS authoring, `allPartials` exposes mixins and variables only and emits no CSS, so every component stylesheet `@use`s it for shared mixins/variables — safe even when code-splitting, because it adds no duplicated rules:
68
+
69
+ ```scss
70
+ @use '@phillips/seldon/dist/scss/allPartials' as *;
71
+ ```
72
+
73
+ Because `allPartials` emits no CSS, importing it does **not** pull in the shared utility CSS (padding utilities, `:root` tokens, fonts). Those load once from `foundation` — via `SeldonProvider`, or via Option A/B above if you compile Seldon SCSS yourself.
74
+
75
+ #### Using shared mixins and variables
76
+
77
+ `allPartials` forwards Seldon's mixins, functions, and variables (breakpoints, spacing, colors, typography). `@use` it with the global namespace and reference them directly in your own component SCSS:
78
+
79
+ ```scss
80
+ @use '@phillips/seldon/dist/scss/allPartials' as *;
81
+
82
+ .my-card {
83
+ gap: $spacing-md;
84
+
85
+ @include media($breakpoint-md) {
86
+ gap: $spacing-lg;
87
+ }
88
+
89
+ &__button {
90
+ @include hoverOrActive {
91
+ color: $pure-black;
92
+ }
93
+
94
+ &:focus-visible {
95
+ @include focus-ring($border-radius: 4px);
96
+ }
97
+ }
98
+ }
99
+ ```
100
+
101
+ Commonly used helpers:
102
+
103
+ | Helper | Kind | Notes |
104
+ | ------------------------------------------------ | --------- | ---------------------------------------------------------------- |
105
+ | `$spacing-*`, `$breakpoint-*`, color tokens | variables | Scale/layout tokens; no CSS until referenced. |
106
+ | `media($breakpoint, $type: 'min' \| 'max')` | mixin | Wraps `@content` in a Seldon breakpoint media query. |
107
+ | `hoverOrActive` | mixin | Pointer-aware `:hover`/`:active` — avoids sticky hover on touch. |
108
+ | `focus-ring(...)` | mixin | Consistent focus outline; pair with `:focus-visible`. |
109
+ | `grid(...)`, `gridContainer(...)`, `gridMargins` | mixins | Seldon grid layout. |
110
+ | `hidden` | mixin | Visually-hidden (accessible) content. |
111
+
112
+ **Code splitting is safe.** Importing these adds no CSS to your bundles — a mixin only produces output where you `@include` it, so each chunk contains exactly the CSS it generates and nothing is duplicated by the import. The one exception is helpers that emit a whole selector rather than properties — notably `padding()`, which generates `.seldon-padding-*` utility classes. `foundation` already emits those once, so consume them from `foundation` (or `SeldonProvider`); don't re-`@include padding()` per chunk or you will duplicate the utility classes across every bundle.
113
+
114
+ > To render text, prefer the `<Text variant="…">` component over the typography mixins (`text()`, `hText`, `labelText`, …); the mixins remain available for styling your own elements where a component isn't practical.
115
+
36
116
  ### Components
37
117
 
38
118
  Each component can be imported in your project by referencing the named exports from main index file.
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});var e={};exports.__exports=e;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});var e={exports:{}};exports.__module=e;
@@ -1,4 +1,4 @@
1
- var r = {};
1
+ var s = { exports: {} };
2
2
  export {
3
- r as __exports
3
+ s as __module
4
4
  };
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});var e={exports:{}};exports.__module=e;
1
+ "use strict";const e=require("../node_modules/lodash.debounce/index.cjs");e.__require();
@@ -1,4 +1,2 @@
1
- var s = { exports: {} };
2
- export {
3
- s as __module
4
- };
1
+ import { __require as e } from "../node_modules/lodash.debounce/index.js";
2
+ e();
@@ -1 +1 @@
1
- "use strict";const e=require("../node_modules/lodash.debounce/index.cjs");e.__require();
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});var e={};exports.__exports=e;
@@ -1,2 +1,4 @@
1
- import { __require as e } from "../node_modules/lodash.debounce/index.js";
2
- e();
1
+ var r = {};
2
+ export {
3
+ r as __exports
4
+ };
@@ -1 +1,2 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const l=require("react/jsx-runtime"),m=require("react"),q=require("../../_virtual/index2.cjs"),f=require("../../utils/index.cjs"),g=require("../../node_modules/@radix-ui/react-accordion/dist/index.cjs"),p=require("./utils.cjs"),r=m.forwardRef(({className:n,children:t,variant:s,value:e,onValueChanged:i,...o},c)=>{const{className:a,...u}=f.getCommonProps(o,"Accordion"),d=p.getAccordionVariantProps(s,e);return l.jsx(g.Root,{className:q.default(`${a}`,n),...u,...d,id:o?.id,ref:c,value:e,onValueChange:i,children:t})});r.displayName="Accordion";exports.default=r;
1
+ require('./_accordion.css');
2
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const l=require("react/jsx-runtime"),m=require("react"),q=require("../../_virtual/index2.cjs"),f=require("../../utils/index.cjs"),g=require("../../node_modules/@radix-ui/react-accordion/dist/index.cjs"),p=require("./utils.cjs");;const r=m.forwardRef(({className:n,children:t,variant:s,value:e,onValueChanged:i,...o},c)=>{const{className:a,...u}=f.getCommonProps(o,"Accordion"),d=p.getAccordionVariantProps(s,e);return l.jsx(g.Root,{className:q.default(`${a}`,n),...u,...d,id:o?.id,ref:c,value:e,onValueChange:i,children:t})});r.displayName="Accordion";exports.default=r;
@@ -1,19 +1,21 @@
1
+ import './_accordion.css';
1
2
  import { jsx as p } from "react/jsx-runtime";
2
3
  import { forwardRef as d } from "react";
3
4
  import f from "../../_virtual/index2.js";
4
5
  import { getCommonProps as l } from "../../utils/index.js";
5
6
  import { Root as A } from "../../node_modules/@radix-ui/react-accordion/dist/index.js";
6
7
  import { getAccordionVariantProps as C } from "./utils.js";
8
+
7
9
  const N = d(
8
10
  ({ className: m, children: a, variant: s, value: o, onValueChanged: t, ...r }, n) => {
9
- const { className: c, ...i } = l(r, "Accordion"), e = C(s, o);
11
+ const { className: i, ...c } = l(r, "Accordion"), e = C(s, o);
10
12
  return (
11
13
  // @ts-expect-error radix-ui type checking is too aggressive ans we know the values are valid
12
14
  /* @__PURE__ */ p(
13
15
  A,
14
16
  {
15
- className: f(`${c}`, m),
16
- ...i,
17
+ className: f(`${i}`, m),
18
+ ...c,
17
19
  ...e,
18
20
  id: r?.id,
19
21
  ref: n,
@@ -0,0 +1 @@
1
+ @layer vendor,seldon.foundation,seldon.components,seldon.patterns,seldon.site;@layer seldon.components{.seldon-accordion{border-top:1px solid #eae9e6;width:100%}.seldon-accordion-item{width:100%}.seldon-accordion-item svg{max-width:unset}.seldon-accordion-item__border-bottom{border-bottom:1px solid #eae9e6}.seldon-accordion-item__content{display:block}.seldon-accordion-item__content .radix-accordion-content,.seldon-accordion-item__content--locked{padding-bottom:var(--spacing-sm)}.seldon-accordion-item--transition{overflow:hidden}.seldon-accordion-item--transition[data-state=open]{animation:slide-down var(--seldon-accordion-transition-time) ease-out}.seldon-accordion-item--transition[data-state=closed]{animation:slide-up var(--seldon-accordion-transition-time) ease-out forwards}.seldon-accordion-item[data-state=open] .seldon-accordion-item-label-plus__icon{display:none}.seldon-accordion-item[data-state=open] .seldon-accordion-item-label-minus__icon,.seldon-accordion-item[data-state=closed] .seldon-accordion-item-label-plus__icon{display:block}.seldon-accordion-item[data-state=closed] .seldon-accordion-item-label-minus__icon{display:none}@keyframes slide-down{0%{height:0}to{height:var(--radix-accordion-content-height)}}@keyframes slide-up{0%{height:var(--radix-accordion-content-height)}to{height:0}}.seldon-accordion-item-label{align-items:center;background:none;border:none;display:flex;flex-direction:row;font:inherit;justify-content:space-between;padding:var(--spacing-sm) 0;text-align:inherit;width:100%}.seldon-accordion-item-label[data-disabled]{color:inherit;opacity:1}.seldon-accordion-item-label--hoverable{cursor:pointer}.seldon-accordion-item-label--hoverable:hover{opacity:.75}.seldon-accordion-item-label:focus-visible{outline:2px solid #07c;outline-offset:4px}.seldon-accordion-item-label__text{flex:auto;font-variation-settings:"wght" 600;text-align:left}.seldon-accordion-item-label__icon{flex:initial;height:.875rem;width:1.5rem}@media(min-width:961px){.seldon-accordion-item-label__icon{flex:initial;height:1rem;width:1.5rem}}.seldon-accordion-item-label--blue-fill{filter:brightness(0) saturate(100%) invert(51%) sepia(72%) saturate(1698%) hue-rotate(191deg) brightness(95%) contrast(86%)}}
@@ -1 +1,2 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("react/jsx-runtime"),d=require("react"),g=require("../../utils/index.cjs"),j=require("../../_virtual/index2.cjs"),l=require("../../node_modules/@radix-ui/react-dropdown-menu/dist/index.cjs"),i=require("./calendarLinks.cjs"),q=require("../IconButton/IconButton.cjs"),O=require("../Button/types.cjs"),p=require("../Icon/Icon.cjs"),N=require("../Link/Link.cjs"),T=require("../Text/Text.cjs"),u=d.forwardRef(({className:k,event:t,label:o="Add to calendar",linkElement:b=N.default,...r},f)=>{const{className:a,...m}=g.getCommonProps(r,"AddToCalendar"),[s,C]=d.useState(!1),h=(n,c)=>{n==="file"?i.generateCalendarFile(t):n==="link"&&c&&window.open(c,"_blank")},x=[{label:"iCalendar",action:"file"},{label:"Google Calendar",action:"link",link:i.generateGoogleCalendarLink(t)},{label:"Outlook",action:"file"},{label:"Outlook Online",action:"link",link:i.generateOutlookOnlineLink(t)},{label:"Yahoo Calendar",action:"link",link:i.generateYahooCalendarLink(t)}];return e.jsx("div",{...m,className:j.default(a,k),...r,ref:f,children:e.jsxs(l.Root,{open:s,onOpenChange:C,children:[e.jsx(l.Trigger,{asChild:!0,children:e.jsx(q.default,{"aria-label":o,variant:O.ButtonVariants.tertiary,children:e.jsx(p.default,{icon:s?"CloseX":"Calendar",title:o})})}),e.jsx(l.Portal,{children:e.jsx(l.Content,{sideOffset:5,align:"start",side:"bottom","data-side":"bottom",avoidCollisions:!1,className:`${a}-atcb-list`,children:x.map(n=>e.jsx(l.Item,{className:`${a}-atcb-item`,onSelect:()=>h(n.action,n.link),children:n.action==="link"?e.jsx(b,{className:`${a}-atcb-item-link`,href:n.link,children:n.label}):e.jsx("button",{className:`${a}-atcb-item-link`,children:e.jsx(T.default,{children:n.label})})},n.label))})})]})})});u.displayName="AddToCalendar";exports.default=u;
1
+ require('./_addToCalendar.css');
2
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("react/jsx-runtime"),d=require("react"),g=require("../../utils/index.cjs"),j=require("../../_virtual/index2.cjs"),l=require("../../node_modules/@radix-ui/react-dropdown-menu/dist/index.cjs"),i=require("./calendarLinks.cjs"),q=require("../IconButton/IconButton.cjs"),O=require("../Button/types.cjs");;const p=require("../Icon/Icon.cjs"),N=require("../Link/Link.cjs"),T=require("../Text/Text.cjs"),u=d.forwardRef(({className:k,event:t,label:o="Add to calendar",linkElement:b=N.default,...r},f)=>{const{className:a,...m}=g.getCommonProps(r,"AddToCalendar"),[s,C]=d.useState(!1),h=(n,c)=>{n==="file"?i.generateCalendarFile(t):n==="link"&&c&&window.open(c,"_blank")},x=[{label:"iCalendar",action:"file"},{label:"Google Calendar",action:"link",link:i.generateGoogleCalendarLink(t)},{label:"Outlook",action:"file"},{label:"Outlook Online",action:"link",link:i.generateOutlookOnlineLink(t)},{label:"Yahoo Calendar",action:"link",link:i.generateYahooCalendarLink(t)}];return e.jsx("div",{...m,className:j.default(a,k),...r,ref:f,children:e.jsxs(l.Root,{open:s,onOpenChange:C,children:[e.jsx(l.Trigger,{asChild:!0,children:e.jsx(q.default,{"aria-label":o,variant:O.ButtonVariants.tertiary,children:e.jsx(p.default,{icon:s?"CloseX":"Calendar",title:o})})}),e.jsx(l.Portal,{children:e.jsx(l.Content,{sideOffset:5,align:"start",side:"bottom","data-side":"bottom",avoidCollisions:!1,className:`${a}-atcb-list`,children:x.map(n=>e.jsx(l.Item,{className:`${a}-atcb-item`,onSelect:()=>h(n.action,n.link),children:n.action==="link"?e.jsx(b,{className:`${a}-atcb-item-link`,href:n.link,children:n.label}):e.jsx("button",{className:`${a}-atcb-item-link`,children:e.jsx(T.default,{children:n.label})})},n.label))})})]})})});u.displayName="AddToCalendar";exports.default=u;
@@ -1,3 +1,4 @@
1
+ import './_addToCalendar.css';
1
2
  import { jsx as e, jsxs as C } from "react/jsx-runtime";
2
3
  import { forwardRef as b, useState as h } from "react";
3
4
  import { getCommonProps as g } from "../../utils/index.js";
@@ -6,6 +7,7 @@ import { Root as N, Trigger as O, Portal as I, Content as T, Item as x } from ".
6
7
  import { generateGoogleCalendarLink as A, generateOutlookOnlineLink as L, generateYahooCalendarLink as P, generateCalendarFile as $ } from "./calendarLinks.js";
7
8
  import w from "../IconButton/IconButton.js";
8
9
  import { ButtonVariants as R } from "../Button/types.js";
10
+
9
11
  import S from "../Icon/Icon.js";
10
12
  import j from "../Link/Link.js";
11
13
  import y from "../Text/Text.js";
@@ -0,0 +1 @@
1
+ @layer vendor,seldon.foundation,seldon.components,seldon.patterns,seldon.site;@layer seldon.components{.seldon-add-to-calendar svg{height:var(--spacing-md);width:var(--spacing-md)}.seldon-add-to-calendar .seldon-icon-button{background:transparent;border:none;cursor:pointer}.seldon-add-to-calendar .seldon-icon-button.seldon-button{height:var(--spacing-md);padding:0;width:var(--spacing-md)}.seldon-add-to-calendar .seldon-icon-button.seldon-button svg{height:var(--spacing-md);max-width:none;width:var(--spacing-md)}.seldon-add-to-calendar .seldon-icon-button:hover{background:transparent}.seldon-add-to-calendar .seldon-icon-button svg path{transition:fill .25s ease-in-out}.seldon-add-to-calendar .seldon-icon-button svg:hover path{fill:#75716f}.seldon-add-to-calendar .seldon-icon-button:focus-visible{border-radius:4px;outline:2px solid #07c;outline-offset:4px}.seldon-add-to-calendar-atcb-list{background:#fff;border:1px solid #eae9e6}.seldon-add-to-calendar-atcb-item{padding:var(--spacing-xsm) var(--spacing-sm)}.seldon-add-to-calendar-atcb-item:hover,.seldon-add-to-calendar-atcb-item:focus-visible{background-color:#eae9e6;cursor:pointer;outline:none}.seldon-add-to-calendar-atcb-item-link{background:none;border:none;cursor:pointer;font-variation-settings:"wght" 400;outline:none;padding:0;text-decoration:none}.seldon-add-to-calendar-atcb-item-link p{margin-bottom:0}.seldon-add-to-calendar-atcb-item-link:hover{border:none;outline:none;text-decoration:none}.seldon-add-to-calendar-atcb-item-link span{font-variation-settings:"wght" 400;text-decoration:none}.seldon-add-to-calendar-atcb-item-link span:hover,.seldon-add-to-calendar-atcb-item-link span:focus-visible{color:#000;outline:none;text-decoration:none}}
@@ -1 +1,2 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("react/jsx-runtime"),q=require("react"),j=require("../../utils/index.cjs"),p=require("../../_virtual/index2.cjs"),N=require("../SeldonImage/SeldonImage.cjs"),$=require("../SeldonImage/types.cjs"),s=require("../Text/Text.cjs"),u=require("../Text/types.cjs"),h=require("../Link/Link.cjs"),v=require("../Link/types.cjs"),o=q.forwardRef(({className:d,imageSrc:l,label:a,header:n,description:r,linkElement:m=h.default,linkLabel:i,linkHref:x,...c},_)=>{const{className:t,...f}=j.getCommonProps(c,"Article");return e.jsxs("article",{...f,className:p.default(t,d),...c,ref:_,children:[l?e.jsx(N.default,{aspectRatio:$.AspectRatio.Landscape,src:l,alt:n??""}):null,e.jsxs("div",{className:`${t}__content`,children:[a?e.jsx(s.default,{variant:u.TextVariants.labelSmall,className:`${t}__content-label`,children:a}):null,n?e.jsx(s.default,{variant:u.TextVariants.headingMedium,className:`${t}__content-title`,children:n}):null,r?e.jsx(s.default,{className:`${t}__content-description`,element:"p",children:r}):null,i?e.jsx(m,{href:x,variant:v.LinkVariants.linkMedium,className:`${t}__content-link`,children:i}):null]})]})});o.displayName="Article";exports.default=o;
1
+ require('./_article.css');
2
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("react/jsx-runtime"),q=require("react"),j=require("../../utils/index.cjs"),p=require("../../_virtual/index2.cjs");;const N=require("../SeldonImage/SeldonImage.cjs"),$=require("../SeldonImage/types.cjs"),s=require("../Text/Text.cjs"),u=require("../Text/types.cjs"),h=require("../Link/Link.cjs"),v=require("../Link/types.cjs"),o=q.forwardRef(({className:d,imageSrc:l,label:a,header:n,description:r,linkElement:m=h.default,linkLabel:i,linkHref:x,...c},_)=>{const{className:t,...f}=j.getCommonProps(c,"Article");return e.jsxs("article",{...f,className:p.default(t,d),...c,ref:_,children:[l?e.jsx(N.default,{aspectRatio:$.AspectRatio.Landscape,src:l,alt:n??""}):null,e.jsxs("div",{className:`${t}__content`,children:[a?e.jsx(s.default,{variant:u.TextVariants.labelSmall,className:`${t}__content-label`,children:a}):null,n?e.jsx(s.default,{variant:u.TextVariants.headingMedium,className:`${t}__content-title`,children:n}):null,r?e.jsx(s.default,{className:`${t}__content-description`,element:"p",children:r}):null,i?e.jsx(m,{href:x,variant:v.LinkVariants.linkMedium,className:`${t}__content-link`,children:i}):null]})]})});o.displayName="Article";exports.default=o;
@@ -1,7 +1,9 @@
1
+ import './_article.css';
1
2
  import { jsxs as s, jsx as e } from "react/jsx-runtime";
2
3
  import { forwardRef as N } from "react";
3
4
  import { getCommonProps as h } from "../../utils/index.js";
4
5
  import x from "../../_virtual/index2.js";
6
+
5
7
  import $ from "../SeldonImage/SeldonImage.js";
6
8
  import { AspectRatio as k } from "../SeldonImage/types.js";
7
9
  import l from "../Text/Text.js";
@@ -0,0 +1 @@
1
+ @layer vendor,seldon.foundation,seldon.components,seldon.patterns,seldon.site;@layer seldon.components{.seldon-article{border-bottom:1px solid #000;border-top:1px solid #000;display:flex;flex-direction:column;gap:var(--spacing-md);padding:var(--spacing-md)}@media(min-width:961px){.seldon-article{flex-direction:row}}.seldon-article__content{display:flex;flex-direction:column;justify-content:center}.seldon-article__content-label,.seldon-article__content-description{color:#545454}.seldon-article__content-label{margin-bottom:var(--spacing-xsm)}}
@@ -1 +1,2 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const s=require("react/jsx-runtime"),i=require("../../_virtual/index2.cjs"),o=require("react"),_=require("../../utils/index.cjs"),l=require("./types.cjs"),c=require("../Text/Text.cjs"),m=require("../Text/types.cjs"),t=`${_.px}-banner`,f=o.forwardRef(({children:n,className:r,variant:e=l.BannerVariants.top,id:a,...d},u)=>{const{className:B,...R}=_.getCommonProps({id:a,...d},"Banner");return s.jsx("article",{...R,...d,id:a,ref:u,className:i.default(B,r,{[`${B}--${e}`]:e}),children:s.jsx("div",{className:`${t}__inner`,children:n})})}),N=o.forwardRef(({children:n,className:r,size:e=l.BannerMediaSize.third,...a},d)=>{const u=e===l.BannerMediaSize.half?"1-2":"1-3";return s.jsx("div",{...a,ref:d,className:i.default(`${t}__media`,`${t}__media--${u}`,r),children:n})}),x=o.forwardRef(({children:n,className:r,...e},a)=>s.jsx("div",{...e,ref:a,className:i.default(`${t}__body`,r),children:n})),p=o.forwardRef(({className:n,variant:r=m.TextVariants.labelSmall,...e},a)=>s.jsx(c.default,{...e,ref:a,variant:r,className:i.default(`${t}__eyebrow`,n)})),y=o.forwardRef(({className:n,element:r="h3",variant:e=m.TextVariants.headingMedium,...a},d)=>s.jsx(c.default,{...a,ref:d,variant:e,element:r,className:i.default(`${t}__title`,n)})),$=o.forwardRef(({className:n,variant:r=m.TextVariants.bodyMedium,...e},a)=>s.jsx(c.default,{...e,ref:a,variant:r,className:i.default(`${t}__description`,n)})),b=o.forwardRef(({className:n,variant:r=m.TextVariants.linkMedium,...e},a)=>s.jsx(c.default,{...e,ref:a,variant:r,className:i.default(`${t}__cta`,n)})),M=o.forwardRef(({className:n,alt:r="",...e},a)=>s.jsx("img",{...e,ref:a,alt:r,className:i.default(`${t}__media-img`,n)}));f.displayName="Banner.Root";N.displayName="Banner.Media";x.displayName="Banner.Content";p.displayName="Banner.Eyebrow";y.displayName="Banner.Title";$.displayName="Banner.Description";b.displayName="Banner.Cta";M.displayName="Banner.Image";const j=Object.assign(f,{Root:f,Media:N,Content:x,Eyebrow:p,Title:y,Description:$,Cta:b,Image:M});exports.BannerMediaSize=l.BannerMediaSize;exports.BannerVariants=l.BannerVariants;exports.default=j;
1
+ require('./_banner.css');
2
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const s=require("react/jsx-runtime"),i=require("../../_virtual/index2.cjs"),o=require("react"),_=require("../../utils/index.cjs"),l=require("./types.cjs");;const c=require("../Text/Text.cjs"),m=require("../Text/types.cjs"),t=`${_.px}-banner`,f=o.forwardRef(({children:n,className:r,variant:e=l.BannerVariants.top,id:a,...d},u)=>{const{className:B,...R}=_.getCommonProps({id:a,...d},"Banner");return s.jsx("article",{...R,...d,id:a,ref:u,className:i.default(B,r,{[`${B}--${e}`]:e}),children:s.jsx("div",{className:`${t}__inner`,children:n})})}),N=o.forwardRef(({children:n,className:r,size:e=l.BannerMediaSize.third,...a},d)=>{const u=e===l.BannerMediaSize.half?"1-2":"1-3";return s.jsx("div",{...a,ref:d,className:i.default(`${t}__media`,`${t}__media--${u}`,r),children:n})}),x=o.forwardRef(({children:n,className:r,...e},a)=>s.jsx("div",{...e,ref:a,className:i.default(`${t}__body`,r),children:n})),p=o.forwardRef(({className:n,variant:r=m.TextVariants.labelSmall,...e},a)=>s.jsx(c.default,{...e,ref:a,variant:r,className:i.default(`${t}__eyebrow`,n)})),y=o.forwardRef(({className:n,element:r="h3",variant:e=m.TextVariants.headingMedium,...a},d)=>s.jsx(c.default,{...a,ref:d,variant:e,element:r,className:i.default(`${t}__title`,n)})),$=o.forwardRef(({className:n,variant:r=m.TextVariants.bodyMedium,...e},a)=>s.jsx(c.default,{...e,ref:a,variant:r,className:i.default(`${t}__description`,n)})),b=o.forwardRef(({className:n,variant:r=m.TextVariants.linkMedium,...e},a)=>s.jsx(c.default,{...e,ref:a,variant:r,className:i.default(`${t}__cta`,n)})),M=o.forwardRef(({className:n,alt:r="",...e},a)=>s.jsx("img",{...e,ref:a,alt:r,className:i.default(`${t}__media-img`,n)}));f.displayName="Banner.Root";N.displayName="Banner.Media";x.displayName="Banner.Content";p.displayName="Banner.Eyebrow";y.displayName="Banner.Title";$.displayName="Banner.Description";b.displayName="Banner.Cta";M.displayName="Banner.Image";const j=Object.assign(f,{Root:f,Media:N,Content:x,Eyebrow:p,Title:y,Description:$,Cta:b,Image:M});exports.BannerMediaSize=l.BannerMediaSize;exports.BannerVariants=l.BannerVariants;exports.default=j;
@@ -1,8 +1,10 @@
1
+ import './_banner.css';
1
2
  import { jsx as r } from "react/jsx-runtime";
2
3
  import t from "../../_virtual/index2.js";
3
4
  import { forwardRef as i } from "react";
4
5
  import { getCommonProps as u, px as h } from "../../utils/index.js";
5
6
  import { BannerVariants as w, BannerMediaSize as N } from "./types.js";
7
+
6
8
  import l from "../Text/Text.js";
7
9
  import { TextVariants as c } from "../Text/types.js";
8
10
  const o = `${h}-banner`, p = i(
@@ -53,7 +55,7 @@ b.displayName = "Banner.Title";
53
55
  f.displayName = "Banner.Description";
54
56
  g.displayName = "Banner.Cta";
55
57
  C.displayName = "Banner.Image";
56
- const v = Object.assign(p, {
58
+ const P = Object.assign(p, {
57
59
  Root: p,
58
60
  Media: _,
59
61
  Content: y,
@@ -66,5 +68,5 @@ const v = Object.assign(p, {
66
68
  export {
67
69
  N as BannerMediaSize,
68
70
  w as BannerVariants,
69
- v as default
71
+ P as default
70
72
  };
@@ -0,0 +1 @@
1
+ @layer vendor,seldon.foundation,seldon.components,seldon.patterns,seldon.site;@layer seldon.components{.seldon-banner{min-width:0;width:100%}.seldon-banner__inner{align-items:center;display:flex;flex-direction:column;gap:16px}.seldon-banner__inner>.seldon-banner__media{order:0}.seldon-banner__inner>.seldon-banner__column-gap{order:1}.seldon-banner__inner>.seldon-banner__body{order:2}@media(min-width:768px){.seldon-banner__inner{flex-direction:row}.seldon-banner__inner>.seldon-banner__media,.seldon-banner__inner>.seldon-banner__column-gap,.seldon-banner__inner>.seldon-banner__body{order:unset}}.seldon-banner__media{flex-shrink:0;position:relative;width:100%}@media(min-width:768px){.seldon-banner__media{width:auto}.seldon-banner__media--1-3{flex-basis:33.333%}.seldon-banner__media--1-2{flex-basis:50%}}.seldon-banner__column-gap{align-self:stretch;background:#eae9e6;flex-shrink:0;margin:0 var(--spacing-xsm);width:1px}.seldon-banner__body{display:flex;flex-direction:column;gap:var(--spacing-xsm);min-width:0;width:100%}.seldon-banner__description{-webkit-box-orient:vertical;color:#545454;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;overflow:hidden}@media(min-width:768px){.seldon-banner__description{-webkit-line-clamp:2;line-clamp:2}}.seldon-banner__cta{text-decoration:underline}.seldon-banner__media-frame{aspect-ratio:16/9;overflow:hidden;width:100%}.seldon-banner__media-img{display:block;height:100%;object-fit:cover;width:100%}.seldon-banner--inline{border-bottom:1px solid #eae9e6;border-top:1px solid #eae9e6;padding:16px}.seldon-banner--top .seldon-banner__body .fresnel-container{width:100%}.seldon-banner--top .seldon-banner__body{justify-content:center;padding-left:0}@media(min-width:961px){.seldon-banner--top .seldon-banner__body{padding:var(--spacing-md) 0;padding-left:var(--spacing-lg)}}.seldon-banner--top .seldon-banner__inner{align-items:stretch;column-gap:0}@media(min-width:768px){.seldon-banner--top .seldon-banner__inner{flex-direction:column}.seldon-banner--top .seldon-banner__inner>.seldon-banner__media{order:0}.seldon-banner--top .seldon-banner__inner>.seldon-banner__column-gap{order:1}.seldon-banner--top .seldon-banner__inner>.seldon-banner__body{order:2}}@media(min-width:961px){.seldon-banner--top .seldon-banner__inner{flex-direction:row}.seldon-banner--top .seldon-banner__inner>.seldon-banner__media,.seldon-banner--top .seldon-banner__inner>.seldon-banner__column-gap,.seldon-banner--top .seldon-banner__inner>.seldon-banner__body{order:unset}}@media(min-width:768px){.seldon-banner--top .seldon-banner__media{width:100%}.seldon-banner--top .seldon-banner__media--1-3,.seldon-banner--top .seldon-banner__media--1-2{flex-basis:unset}}@media(min-width:961px){.seldon-banner--top .seldon-banner__media{width:auto}.seldon-banner--top .seldon-banner__media--1-3{flex-basis:33.333%}.seldon-banner--top .seldon-banner__media--1-2{flex-basis:50%}}@media(min-width:961px){.seldon-banner--top .seldon-banner__body>.seldon-page-content-wrapper{padding-inline-start:0}}}
@@ -1 +1,2 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("react/jsx-runtime"),t=require("../../utils/index.cjs"),h=require("../../_virtual/index2.cjs"),x=require("./BreadcrumbItem.cjs"),u=require("../../providers/SeldonProvider/utils.cjs"),o=require("../../utils/constants.cjs"),f=require("../Icon/Icon.cjs"),j=({className:i,items:r=[],truncateIndex:d,linkElement:s="a",...a})=>{const{className:c,...b}=t.getCommonProps(a,"Breadcrumb"),{id:m}=a;return e.jsxs("nav",{"aria-label":"Breadcrumb",className:h.default(c,i),...b,...a,children:[e.jsx(u.SSRMediaQuery.Media,{lessThan:o.Breakpoints.md,children:e.jsx(s,{href:r[1].href?r[1].href:"/",className:`${t.px}-icon-button ${t.px}-icon-button--primary ${c}__back-button`,"data-testid":`${m}-back-button`,children:e.jsx(f.default,{icon:"ArrowLeft"})})}),e.jsx(u.SSRMediaQuery.Media,{greaterThanOrEqual:o.Breakpoints.md,children:e.jsx("ol",{children:r.map((n,l)=>e.jsx(x.default,{href:n.href,label:n.label,element:s,isCurrent:r.length-1===l,isTruncateText:d===l},n.label))})})]})};exports.default=j;
1
+ require('./_breadcrumb.css');
2
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("react/jsx-runtime"),t=require("../../utils/index.cjs"),h=require("../../_virtual/index2.cjs"),x=require("./BreadcrumbItem.cjs"),u=require("../../providers/SeldonProvider/utils.cjs");;const i=require("../../utils/constants.cjs"),f=require("../Icon/Icon.cjs"),j=({className:o,items:r=[],truncateIndex:d,linkElement:s="a",...a})=>{const{className:c,...b}=t.getCommonProps(a,"Breadcrumb"),{id:m}=a;return e.jsxs("nav",{"aria-label":"Breadcrumb",className:h.default(c,o),...b,...a,children:[e.jsx(u.SSRMediaQuery.Media,{lessThan:i.Breakpoints.md,children:e.jsx(s,{href:r[1].href?r[1].href:"/",className:`${t.px}-icon-button ${t.px}-icon-button--primary ${c}__back-button`,"data-testid":`${m}-back-button`,children:e.jsx(f.default,{icon:"ArrowLeft"})})}),e.jsx(u.SSRMediaQuery.Media,{greaterThanOrEqual:i.Breakpoints.md,children:e.jsx("ol",{children:r.map((n,l)=>e.jsx(x.default,{href:n.href,label:n.label,element:s,isCurrent:r.length-1===l,isTruncateText:d===l},n.label))})})]})};exports.default=j;
@@ -1,41 +1,43 @@
1
+ import './_breadcrumb.css';
1
2
  import { jsxs as h, jsx as r } from "react/jsx-runtime";
2
3
  import { getCommonProps as u, px as l } from "../../utils/index.js";
3
4
  import p from "../../_virtual/index2.js";
4
5
  import B from "./BreadcrumbItem.js";
5
6
  import { SSRMediaQuery as c } from "../../providers/SeldonProvider/utils.js";
6
- import { Breakpoints as s } from "../../utils/constants.js";
7
+
8
+ import { Breakpoints as i } from "../../utils/constants.js";
7
9
  import k from "../Icon/Icon.js";
8
- const y = ({
9
- className: i,
10
+ const C = ({
11
+ className: s,
10
12
  items: a = [],
11
13
  truncateIndex: d,
12
- linkElement: n = "a",
14
+ linkElement: t = "a",
13
15
  ...e
14
16
  }) => {
15
- const { className: t, ...b } = u(e, "Breadcrumb"), { id: f } = e;
16
- return /* @__PURE__ */ h("nav", { "aria-label": "Breadcrumb", className: p(t, i), ...b, ...e, children: [
17
- /* @__PURE__ */ r(c.Media, { lessThan: s.md, children: /* @__PURE__ */ r(
18
- n,
17
+ const { className: m, ...b } = u(e, "Breadcrumb"), { id: f } = e;
18
+ return /* @__PURE__ */ h("nav", { "aria-label": "Breadcrumb", className: p(m, s), ...b, ...e, children: [
19
+ /* @__PURE__ */ r(c.Media, { lessThan: i.md, children: /* @__PURE__ */ r(
20
+ t,
19
21
  {
20
22
  href: a[1].href ? a[1].href : "/",
21
- className: `${l}-icon-button ${l}-icon-button--primary ${t}__back-button`,
23
+ className: `${l}-icon-button ${l}-icon-button--primary ${m}__back-button`,
22
24
  "data-testid": `${f}-back-button`,
23
25
  children: /* @__PURE__ */ r(k, { icon: "ArrowLeft" })
24
26
  }
25
27
  ) }),
26
- /* @__PURE__ */ r(c.Media, { greaterThanOrEqual: s.md, children: /* @__PURE__ */ r("ol", { children: a.map((o, m) => /* @__PURE__ */ r(
28
+ /* @__PURE__ */ r(c.Media, { greaterThanOrEqual: i.md, children: /* @__PURE__ */ r("ol", { children: a.map((o, n) => /* @__PURE__ */ r(
27
29
  B,
28
30
  {
29
31
  href: o.href,
30
32
  label: o.label,
31
- element: n,
32
- isCurrent: a.length - 1 === m,
33
- isTruncateText: d === m
33
+ element: t,
34
+ isCurrent: a.length - 1 === n,
35
+ isTruncateText: d === n
34
36
  },
35
37
  o.label
36
38
  )) }) })
37
39
  ] });
38
40
  };
39
41
  export {
40
- y as default
42
+ C as default
41
43
  };
@@ -0,0 +1 @@
1
+ @layer vendor,seldon.foundation,seldon.components,seldon.patterns,seldon.site;@layer seldon.components{.seldon-breadcrumb{font-family:Montserrat,sans-serif;font-size:var(--font-size-label-medium);font-style:unset;font-variation-settings:"wght" 400;letter-spacing:0;line-height:1.2;text-transform:unset;color:#000}.seldon-breadcrumb__back-button:hover svg path{fill:#000}.seldon-breadcrumb__item{align-items:center;display:flex;flex-direction:row;flex-shrink:0}.seldon-breadcrumb__item a{margin:var(--spacing-sm);outline:none;text-decoration:none;text-wrap:nowrap}.seldon-breadcrumb__item a:hover{color:#75716f;text-decoration:none}.seldon-breadcrumb__item a:focus-visible{border-radius:4px;outline:2px solid #07c;outline-offset:4px}.seldon-breadcrumb__item span{margin:var(--spacing-sm)}.seldon-breadcrumb ol{display:flex;flex-direction:row;padding:0}.seldon-breadcrumb--truncate{flex-shrink:1;overflow:hidden}.seldon-breadcrumb--truncate a{flex-shrink:1;overflow:hidden;text-overflow:ellipsis}.seldon-breadcrumb--truncate .seldon-icon-chevron-right{flex-shrink:0}.seldon-breadcrumb--current{color:#000000bf;font-variation-settings:"wght" 700;white-space:nowrap}}
@@ -1 +1,2 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("react/jsx-runtime"),V=require("../../_virtual/index2.cjs"),p=require("../../utils/index.cjs"),s=require("./types.cjs"),q=require("react"),i=require("../Link/types.cjs"),C=require("../Link/Link.cjs"),y=q.forwardRef(({variant:a=s.ButtonVariants.primary,size:c=s.ButtonSizes.default,children:d,className:k,isIconLast:m=!1,type:L="button",isDisabled:l=!1,href:n,target:$,prefetch:f="none",isSkeletonLoading:o,linkSize:v="md",...u},x)=>{const{className:t,...b}=p.getCommonProps(u,"Button"),[M,g]=q.useState(!1);if(n){const j=()=>e.jsx(e.Fragment,{children:e.jsx("link",{"data-testid":"prefetch-link",rel:"prefetch",href:n})});let r=i.LinkVariants.linkMedium;switch(v){case"lg":r=i.LinkVariants.linkLarge;break;case"md":r=i.LinkVariants.linkMedium;break;case"sm":r=i.LinkVariants.linkSmall;break}return e.jsxs(e.Fragment,{children:[e.jsx(C.default,{...b,variant:r,ref:x,href:n,className:V.default(`${t}`,{[`${t}--${a}`]:a!==s.ButtonVariants.link},{[`${t}--link`]:a===s.ButtonVariants.link},{[`${t}--icon-last`]:m},k),target:$,rel:$==="_blank"?"noopener noreferrer":void 0,onMouseOver:()=>{l||g(!0)},onClick:B=>{l?B.preventDefault():u.onClick?.(B)},children:d}),f==="intent"&&n&&M&&e.jsx(j,{}),f==="render"&&n&&e.jsx(j,{})]})}else return e.jsx("button",{...b,ref:x,type:L,"aria-busy":o,className:V.default(`${t}`,`${t}--${a}`,{[`${t}--${c}`]:c!==s.ButtonSizes.default},{[`${t}--icon-last`]:m,[`${p.px}-skeleton`]:o},k),disabled:o||l,...u,children:d})});y.displayName="Button";exports.default=y;
1
+ require('./_button.css');
2
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("react/jsx-runtime");;const B=require("../../_virtual/index2.cjs"),V=require("../../utils/index.cjs"),s=require("./types.cjs"),p=require("react"),i=require("../Link/types.cjs"),C=require("../Link/Link.cjs"),y=p.forwardRef(({variant:r=s.ButtonVariants.primary,size:c=s.ButtonSizes.default,children:d,className:k,isIconLast:m=!1,type:L="button",isDisabled:l=!1,href:n,target:$,prefetch:f="none",isSkeletonLoading:o,linkSize:v="md",...u},x)=>{const{className:t,...b}=V.getCommonProps(u,"Button"),[M,g]=p.useState(!1);if(n){const j=()=>e.jsx(e.Fragment,{children:e.jsx("link",{"data-testid":"prefetch-link",rel:"prefetch",href:n})});let a=i.LinkVariants.linkMedium;switch(v){case"lg":a=i.LinkVariants.linkLarge;break;case"md":a=i.LinkVariants.linkMedium;break;case"sm":a=i.LinkVariants.linkSmall;break}return e.jsxs(e.Fragment,{children:[e.jsx(C.default,{...b,variant:a,ref:x,href:n,className:B.default(`${t}`,{[`${t}--${r}`]:r!==s.ButtonVariants.link},{[`${t}--link`]:r===s.ButtonVariants.link},{[`${t}--icon-last`]:m},k),target:$,rel:$==="_blank"?"noopener noreferrer":void 0,onMouseOver:()=>{l||g(!0)},onClick:q=>{l?q.preventDefault():u.onClick?.(q)},children:d}),f==="intent"&&n&&M&&e.jsx(j,{}),f==="render"&&n&&e.jsx(j,{})]})}else return e.jsx("button",{...b,ref:x,type:L,"aria-busy":o,className:B.default(`${t}`,`${t}--${r}`,{[`${t}--${c}`]:c!==s.ButtonSizes.default},{[`${t}--icon-last`]:m,[`${V.px}-skeleton`]:o},k),disabled:o||l,...u,children:d})});y.displayName="Button";exports.default=y;
@@ -1,4 +1,6 @@
1
+ import './_button.css';
1
2
  import { jsxs as V, Fragment as C, jsx as t } from "react/jsx-runtime";
3
+
2
4
  import N from "../../_virtual/index2.js";
3
5
  import { getCommonProps as j, px as w } from "../../utils/index.js";
4
6
  import { ButtonVariants as m, ButtonSizes as v } from "./types.js";
@@ -0,0 +1 @@
1
+ @layer vendor,seldon.foundation,seldon.components,seldon.patterns,seldon.site;@layer seldon.components{.seldon-button{align-items:center;background-color:#000;border:2px solid transparent;border-radius:4px;color:#fff;cursor:pointer;display:inline-flex;gap:var(--spacing-xsm);height:44px;justify-content:center;padding:0 var(--spacing-sm);position:relative;transition:color .25s ease-out,background-color .25s ease-out,border-color .25s ease-out,box-shadow .25s ease-out}.seldon-button--small{height:32px;max-width:160px;min-width:72px;padding:0 var(--spacing-sm)}.seldon-button--small svg{height:calc(var(--font-size-label-small) * 1.1);width:calc(var(--font-size-label-small) * 1.1)}@media(min-width:961px){.seldon-button--small svg{height:calc(var(--font-size-label-small) * 1.2);width:calc(var(--font-size-label-small) * 1.2)}}.seldon-button svg{fill:#fff;height:calc(var(--font-size-label-small) * 1.3);width:calc(var(--font-size-label-small) * 1.3)}@media(min-width:961px){.seldon-button svg{height:calc(var(--font-size-label-small) * 1.4);width:calc(var(--font-size-label-small) * 1.4)}}.seldon-button svg path{fill:#fff;transition:fill .25s ease-out}.seldon-button:not(.seldon-link):not(.seldon-button--link){font-family:Montserrat,sans-serif;font-size:var(--font-size-label-medium);font-style:unset;font-variation-settings:"wght" 400;letter-spacing:0;line-height:1.2;text-transform:unset;font-variation-settings:"wght" 600}.seldon-button--primary.seldon-link,.seldon-button--secondary.seldon-link,.seldon-button--tertiary.seldon-link,.seldon-button--destructive.seldon-link{text-decoration:none}.seldon-button--primary.seldon-link:not(.seldon-icon-button),.seldon-button--secondary.seldon-link:not(.seldon-icon-button),.seldon-button--destructive.seldon-link:not(.seldon-icon-button){font-variation-settings:"wght" 600}.seldon-button--primary.seldon-link:not(.seldon-icon-button) .seldon-text,.seldon-button--secondary.seldon-link:not(.seldon-icon-button) .seldon-text,.seldon-button--destructive.seldon-link:not(.seldon-icon-button) .seldon-text{font-variation-settings:"wght" 600}.seldon-button--destructive.seldon-link{color:#ea0404}.seldon-button:not(.seldon-button--link).seldon-button--primary{color:#fff}.seldon-button:not(.seldon-button--link) .seldon-text{color:inherit;font-variation-settings:inherit}@media(pointer:fine)and (hover:hover){.seldon-button:hover{background-color:#75716f}.seldon-button:hover svg{fill:#fff}}@media(pointer:coarse){.seldon-button:active{background-color:#75716f}.seldon-button:active svg{fill:#fff}}.seldon-button:focus-visible{border-radius:4px;outline:2px solid #07c;outline-offset:4px}.seldon-button:focus-visible svg{fill:#fff}.seldon-button--link{font-family:Montserrat,sans-serif;font-size:var(--font-size-label-medium);font-style:unset;letter-spacing:0;line-height:1.2;text-transform:unset;background-color:transparent;border:0;color:#000;font-variation-settings:"wght" 400;height:auto;padding:0;text-decoration:underline}.seldon-button--link .seldon-text{font-variation-settings:"wght" 400}.seldon-button--link:focus-visible{border-radius:4px;outline:2px solid #07c;outline-offset:4px}.seldon-button--link:hover{background-color:transparent;color:#000}.seldon-button--link:hover .seldon-text{cursor:pointer}.seldon-button--secondary{background-color:#fff;border:2px solid #000;color:#000;transition:border .3s ease-out;z-index:0}.seldon-button--secondary:before{border-radius:4px;box-sizing:border-box;content:"";display:inline-block;height:0;left:50%;position:absolute;top:50%;transition:all .25s ease;width:0;z-index:-2}.seldon-button--secondary:focus-visible{border-radius:4px;outline:2px solid #07c;outline-offset:4px;background-color:#fff}.seldon-button--secondary svg{fill:#000}.seldon-button--secondary svg path{fill:#000}.seldon-button--secondary{transition:box-shadow .25s}@media(pointer:fine)and (hover:hover){.seldon-button--secondary:hover{background-color:transparent;box-shadow:0 0 0 1px #000}.seldon-button--secondary:hover:disabled{box-shadow:none}}@media(pointer:coarse){.seldon-button--secondary:active{background-color:transparent;box-shadow:0 0 0 1px #000}.seldon-button--secondary:active:disabled{box-shadow:none}}.seldon-button--destructive{background-color:#fff;border:2px solid #ea0404;color:#ea0404}.seldon-button--destructive:focus-visible{background-color:#fff;border-radius:4px;outline:2px solid #ea0404;outline-offset:4px}.seldon-button--destructive .seldon-loader{border-color:#ea0404;border-bottom-color:transparent}.seldon-button--destructive svg{fill:#ea0404}.seldon-button--destructive svg path{fill:#ea0404}@media(pointer:fine)and (hover:hover){.seldon-button--destructive:hover{background-color:#fff;border-color:#ea040480;color:#ea040480}.seldon-button--destructive:hover svg{fill:#ea040480}.seldon-button--destructive:hover svg path{fill:#ea040480}.seldon-button--destructive:hover:disabled{box-shadow:none}}@media(pointer:coarse){.seldon-button--destructive:active{background-color:#fff;border-color:#ea040480;color:#ea040480}.seldon-button--destructive:active svg{fill:#ea040480}.seldon-button--destructive:active svg path{fill:#ea040480}.seldon-button--destructive:active:disabled{box-shadow:none}}.seldon-button--tertiary{background-color:transparent;color:#000}.seldon-button--tertiary svg{fill:#000}.seldon-button--tertiary svg path{fill:#000}@media(pointer:fine)and (hover:hover){.seldon-button--tertiary:hover{background-color:transparent;color:#75716f}.seldon-button--tertiary:hover svg{fill:#75716f}.seldon-button--tertiary:hover svg path{fill:#75716f}}@media(pointer:coarse){.seldon-button--tertiary:active{background-color:transparent;color:#75716f}.seldon-button--tertiary:active svg{fill:#75716f}.seldon-button--tertiary:active svg path{fill:#75716f}}.seldon-button--tertiary:focus-visible{border-radius:4px;outline:2px solid #07c;outline-offset:4px;background-color:#fff}.seldon-button:disabled{background-color:#eae9e6;border:2px solid #eae9e6;color:#75716f;cursor:default}.seldon-button:disabled:hover:before{all:unset}.seldon-button:disabled svg{fill:#75716f}.seldon-button:disabled svg path{fill:#75716f}.seldon-button--tertiary:disabled{background-color:transparent;border-color:transparent}.seldon-button--destructive:disabled{background-color:#fff;border-color:#ea040480;color:#ea040480}.seldon-button--destructive:disabled svg{fill:#ea040480}.seldon-button--destructive:disabled svg path{fill:#ea040480}.seldon-button--link:disabled{border:0}.seldon-button *{margin:0}.seldon-button__group{display:flex;gap:.25rem;justify-content:center;width:100%}}
@@ -1 +1,2 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const r=require("react/jsx-runtime"),l=require("../../_virtual/index2.cjs"),s=require("react"),d=require("../../utils/index.cjs"),q=require("./types.cjs"),V=require("../Link/Link.cjs"),v=require("../Link/types.cjs"),i=require("../Text/Text.cjs"),n=require("../Text/types.cjs"),T=require("../Video/Video.cjs"),S=require("../SeldonImage/SeldonImage.cjs"),M=require("../SeldonImage/types.cjs"),c=s.forwardRef(({element:e="div",className:t,id:a,variant:o=q.CardVariants.default,...m},w)=>{const{className:f,...j}=d.getCommonProps({id:a,...m},"Card"),b=l.default(f,t,{[`${f}--${o}`]:o});return r.jsx(e,{className:b,id:a,ref:w,...j,...m})}),u=s.forwardRef(({aspectRatio:e=M.AspectRatio.Landscape,...t},a)=>r.jsx(S.default,{...t,aspectRatio:e,className:`${d.px}-card__image`,ref:a})),C=s.forwardRef(({aspectRatio:e=16/9,className:t,...a},o)=>r.jsx(T.default,{...a,ref:o,aspectRatio:e,className:l.default(`${d.px}-card__video`,t)})),p=s.forwardRef(({className:e,...t},a)=>r.jsx("div",{...t,className:l.default(`${d.px}-card__details`,e),ref:a})),x=s.forwardRef(({className:e,...t},a)=>r.jsx(i.default,{...t,className:l.default(`${d.px}-card__eyebrow`,e),ref:a,variant:n.TextVariants.labelSmall})),N=s.forwardRef(({className:e,...t},a)=>r.jsx(i.default,{...t,className:l.default(`${d.px}-card__title`,e),ref:a,variant:n.TextVariants.headingSmall})),_=s.forwardRef(({className:e,...t},a)=>r.jsx(i.default,{...t,className:l.default(`${d.px}-card__description`,e),ref:a,variant:n.TextVariants.bodySmall})),y=s.forwardRef(({className:e,...t},a)=>r.jsx(i.default,{...t,className:l.default(`${d.px}-card__badge`,e),ref:a,variant:n.TextVariants.badgeSmall})),R=s.forwardRef(({className:e,...t},a)=>r.jsx("div",{...t,className:l.default(`${d.px}-card__meta`,e),ref:a})),$=s.forwardRef(({className:e,...t},a)=>r.jsx(i.default,{...t,className:l.default(`${d.px}-card__meta-item`,e),ref:a,variant:n.TextVariants.labelSmall})),g=s.forwardRef(({className:e,variant:t=v.LinkVariants.linkSmall,...a},o)=>r.jsx(V.default,{...a,ref:o,className:l.default(`${d.px}-card__cta`,e),variant:t}));c.displayName="Card.Root";u.displayName="Card.Image";C.displayName="Card.Video";p.displayName="Card.Content";x.displayName="Card.Eyebrow";N.displayName="Card.Title";_.displayName="Card.Description";y.displayName="Card.Badge";R.displayName="Card.Meta";$.displayName="Card.MetaItem";g.displayName="Card.Cta";const I=Object.assign(c,{Root:c,Image:u,Video:C,Content:p,Eyebrow:x,Title:N,Description:_,Badge:y,Meta:R,MetaItem:$,Cta:g});exports.default=I;
1
+ require('./_card.css');
2
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const r=require("react/jsx-runtime"),l=require("../../_virtual/index2.cjs"),s=require("react"),d=require("../../utils/index.cjs"),q=require("./types.cjs");;const V=require("../Link/Link.cjs"),v=require("../Link/types.cjs"),i=require("../Text/Text.cjs"),n=require("../Text/types.cjs"),T=require("../Video/Video.cjs"),S=require("../SeldonImage/SeldonImage.cjs"),M=require("../SeldonImage/types.cjs"),c=s.forwardRef(({element:e="div",className:t,id:a,variant:o=q.CardVariants.default,...m},w)=>{const{className:f,...j}=d.getCommonProps({id:a,...m},"Card"),b=l.default(f,t,{[`${f}--${o}`]:o});return r.jsx(e,{className:b,id:a,ref:w,...j,...m})}),u=s.forwardRef(({aspectRatio:e=M.AspectRatio.Landscape,...t},a)=>r.jsx(S.default,{...t,aspectRatio:e,className:`${d.px}-card__image`,ref:a})),C=s.forwardRef(({aspectRatio:e=16/9,className:t,...a},o)=>r.jsx(T.default,{...a,ref:o,aspectRatio:e,className:l.default(`${d.px}-card__video`,t)})),p=s.forwardRef(({className:e,...t},a)=>r.jsx("div",{...t,className:l.default(`${d.px}-card__details`,e),ref:a})),x=s.forwardRef(({className:e,...t},a)=>r.jsx(i.default,{...t,className:l.default(`${d.px}-card__eyebrow`,e),ref:a,variant:n.TextVariants.labelSmall})),N=s.forwardRef(({className:e,...t},a)=>r.jsx(i.default,{...t,className:l.default(`${d.px}-card__title`,e),ref:a,variant:n.TextVariants.headingSmall})),_=s.forwardRef(({className:e,...t},a)=>r.jsx(i.default,{...t,className:l.default(`${d.px}-card__description`,e),ref:a,variant:n.TextVariants.bodySmall})),y=s.forwardRef(({className:e,...t},a)=>r.jsx(i.default,{...t,className:l.default(`${d.px}-card__badge`,e),ref:a,variant:n.TextVariants.badgeSmall})),R=s.forwardRef(({className:e,...t},a)=>r.jsx("div",{...t,className:l.default(`${d.px}-card__meta`,e),ref:a})),$=s.forwardRef(({className:e,...t},a)=>r.jsx(i.default,{...t,className:l.default(`${d.px}-card__meta-item`,e),ref:a,variant:n.TextVariants.labelSmall})),g=s.forwardRef(({className:e,variant:t=v.LinkVariants.linkSmall,...a},o)=>r.jsx(V.default,{...a,ref:o,className:l.default(`${d.px}-card__cta`,e),variant:t}));c.displayName="Card.Root";u.displayName="Card.Image";C.displayName="Card.Video";p.displayName="Card.Content";x.displayName="Card.Eyebrow";N.displayName="Card.Title";_.displayName="Card.Description";y.displayName="Card.Badge";R.displayName="Card.Meta";$.displayName="Card.MetaItem";g.displayName="Card.Cta";const I=Object.assign(c,{Root:c,Image:u,Video:C,Content:p,Eyebrow:x,Title:N,Description:_,Badge:y,Meta:R,MetaItem:$,Cta:g});exports.default=I;
@@ -1,8 +1,10 @@
1
+ import './_card.css';
1
2
  import { jsx as t } from "react/jsx-runtime";
2
3
  import m from "../../_virtual/index2.js";
3
4
  import { forwardRef as s } from "react";
4
5
  import { getCommonProps as w, px as o } from "../../utils/index.js";
5
6
  import { CardVariants as x } from "./types.js";
7
+
6
8
  import R from "../Link/Link.js";
7
9
  import { LinkVariants as T } from "../Link/types.js";
8
10
  import i from "../Text/Text.js";
@@ -65,7 +67,7 @@ $.displayName = "Card.Badge";
65
67
  b.displayName = "Card.Meta";
66
68
  v.displayName = "Card.MetaItem";
67
69
  I.displayName = "Card.Cta";
68
- const H = Object.assign(c, {
70
+ const J = Object.assign(c, {
69
71
  Root: c,
70
72
  Image: p,
71
73
  Video: N,
@@ -79,5 +81,5 @@ const H = Object.assign(c, {
79
81
  Cta: I
80
82
  });
81
83
  export {
82
- H as default
84
+ J as default
83
85
  };
@@ -0,0 +1 @@
1
+ @layer vendor,seldon.foundation,seldon.components,seldon.patterns,seldon.site;@layer seldon.components{.seldon-card{align-items:center;display:flex;flex-direction:column;gap:var(--spacing-md)}@media(min-width:768px){.seldon-card{flex-direction:row}}.seldon-card--stacked{align-items:flex-start;flex-direction:column}.seldon-card--stacked .seldon-card__image,.seldon-card--stacked .seldon-card__video{flex:1 1 100%;min-width:100%}.seldon-card--stacked .seldon-card__details{align-self:stretch}.seldon-card__image,.seldon-card__video{align-items:center;border-radius:4px;display:flex;flex:none;justify-content:center;min-width:0;width:100%}@media(min-width:768px){.seldon-card__image,.seldon-card__video{flex:0 0 30%;min-width:auto;width:auto}}.seldon-card__image img{height:auto;object-fit:cover;width:100%}.seldon-card__video{width:100%}.seldon-card__details{align-items:flex-start;display:flex;flex-direction:column;flex-grow:1;gap:var(--spacing-micro)}@media(max-width:767px){.seldon-card__details{align-self:stretch}}.seldon-card__title.seldon-text{text-transform:uppercase}.seldon-card__title a{color:inherit;text-decoration:none}.seldon-card__title a:hover,.seldon-card__title a:focus-visible{color:inherit;text-decoration:underline}.seldon-card__cta{align-self:flex-start}.seldon-card__description.seldon-text{color:#000}.seldon-card__badge{border:1px solid #0065fc;color:#0065fc;padding:var(--spacing-micro) 8px;text-transform:unset}.seldon-card__meta{display:flex;flex-direction:column;gap:var(--spacing-micro)}.seldon-card__meta-item.seldon-text{color:#545454}}
@@ -1 +1,2 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const x=require("react/jsx-runtime"),t=require("react"),K=require("../../utils/index.cjs"),L=require("../../_virtual/index2.cjs"),W=require("../../node_modules/embla-carousel-autoplay/esm/embla-carousel-autoplay.esm.cjs"),B=require("../../node_modules/embla-carousel-class-names/esm/embla-carousel-class-names.esm.cjs"),F=require("../../node_modules/embla-carousel-react/esm/embla-carousel-react.esm.cjs"),G=require("../../node_modules/embla-carousel-wheel-gestures/dist/embla-carousel-wheel-gestures.esm.cjs"),T=require("../../utils/useReducedMotion.cjs"),C=t.createContext(null),v=t.forwardRef(({element:w,loop:b=!1,startIndex:N=0,onSlideChange:n,className:g,children:h,columnGap:k,useWheelGestures:f=!1,disableDrag:d=!1,disableNavigationDrag:P=null,inViewThreshold:S=.99,autoAdvanceDelay:a,duration:q,...m},E)=>{const c=w||"div",p=c==="ul"||c==="ol",{className:I,...R}=K.getCommonProps(m,"Carousel");let l={};switch(P){case"mobile":l={breakpoints:{"(max-width: 960px)":{watchDrag:!1}}};break;case"desktop":l={breakpoints:{"(min-width: 961px)":{watchDrag:!1}}};break;case"all":l={watchDrag:!1};break;default:l={}}const[y,D]=t.useState(!1),[M,_]=t.useState(!1),A=T.useReducedMotion(),r=!!a&&!A,j=t.useMemo(()=>[...r?[W.default({delay:a,stopOnInteraction:!1,stopOnMouseEnter:!0,stopOnFocusIn:!0})]:[],...f?[G.WheelGesturesPlugin({forceWheelAxis:"x"})]:[],B.default({snapped:"carousel-item-in-view"})],[r,a,f]),[O,e]=F.default({loop:b,startIndex:N,inViewThreshold:S,duration:q,...l},j);t.useEffect(()=>{d?e?.reInit({watchDrag:()=>!1}):e?.reInit({watchDrag:()=>!0})},[d,e]);const V=t.useCallback(s=>{if(s.key==="ArrowLeft"){s.preventDefault(),e?.scrollPrev();const o=e?.slideNodes().filter(u=>u===document.activeElement)[0]?.previousElementSibling;o&&o?.focus()}else if(s.key==="ArrowRight"){s.preventDefault(),e?.scrollNext();const o=e?.slideNodes().filter(u=>u===document.activeElement)[0]?.nextElementSibling;o&&o?.focus()}},[e]),i=t.useCallback(s=>{if(!s)return;D(s?.canScrollPrev()),_(s?.canScrollNext());const o=s.slidesInView()?.[0];o!==void 0&&n?.(o)},[n]);return t.useEffect(()=>{if(e)return e.on("slidesInView",i),()=>{e.off("slidesInView",i)}},[e,i]),t.useEffect(()=>{if(!e||!r)return;const s=()=>e.plugins().autoplay?.reset();return e.on("select",s),()=>{e.off("select",s)}},[e,r]),x.jsx(C.Provider,{value:{carouselRef:O,api:e,scrollPrev:()=>e?.scrollPrev(),scrollNext:()=>e?.scrollNext(),canScrollPrev:y,canScrollNext:M,columnGap:k,onSlideChange:n},children:x.jsx(c,{ref:E,onKeyDownCapture:V,className:L.default(I,g),role:p?void 0:"region","aria-roledescription":p?void 0:"carousel",...m,...R,children:h})})});v.displayName="Carousel";exports.CarouselContext=C;exports.default=v;
1
+ require('./_carousel.css');
2
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const x=require("react/jsx-runtime"),s=require("react"),L=require("../../utils/index.cjs"),W=require("../../_virtual/index2.cjs"),B=require("../../node_modules/embla-carousel-autoplay/esm/embla-carousel-autoplay.esm.cjs"),F=require("../../node_modules/embla-carousel-class-names/esm/embla-carousel-class-names.esm.cjs"),G=require("../../node_modules/embla-carousel-react/esm/embla-carousel-react.esm.cjs"),T=require("../../node_modules/embla-carousel-wheel-gestures/dist/embla-carousel-wheel-gestures.esm.cjs");;const $=require("../../utils/useReducedMotion.cjs"),C=s.createContext(null),v=s.forwardRef(({element:N,loop:b=!1,startIndex:g=0,onSlideChange:n,className:w,children:S,columnGap:h,useWheelGestures:f=!1,disableDrag:d=!1,disableNavigationDrag:k=null,inViewThreshold:P=.99,autoAdvanceDelay:c,duration:q,...m},E)=>{const u=N||"div",p=u==="ul"||u==="ol",{className:R,...y}=L.getCommonProps(m,"Carousel");let o={};switch(k){case"mobile":o={breakpoints:{"(max-width: 960px)":{watchDrag:!1}}};break;case"desktop":o={breakpoints:{"(min-width: 961px)":{watchDrag:!1}}};break;case"all":o={watchDrag:!1};break;default:o={}}const[D,M]=s.useState(!1),[I,_]=s.useState(!1),j=$.useReducedMotion(),a=!!c&&!j,O=s.useMemo(()=>[...a?[B.default({delay:c,stopOnInteraction:!1,stopOnMouseEnter:!0,stopOnFocusIn:!0})]:[],...f?[T.WheelGesturesPlugin({forceWheelAxis:"x"})]:[],F.default({snapped:"carousel-item-in-view"})],[a,c,f]),[A,e]=G.default({loop:b,startIndex:g,inViewThreshold:P,duration:q,...o},O);s.useEffect(()=>{d?e?.reInit({watchDrag:()=>!1}):e?.reInit({watchDrag:()=>!0})},[d,e]);const K=s.useCallback(t=>{if(t.key==="ArrowLeft"){t.preventDefault(),e?.scrollPrev();const l=e?.slideNodes().filter(i=>i===document.activeElement)[0]?.previousElementSibling;l&&l?.focus()}else if(t.key==="ArrowRight"){t.preventDefault(),e?.scrollNext();const l=e?.slideNodes().filter(i=>i===document.activeElement)[0]?.nextElementSibling;l&&l?.focus()}},[e]),r=s.useCallback(t=>{t&&(M(t.canScrollPrev()),_(t.canScrollNext()),n?.(t.selectedScrollSnap()))},[n]);return s.useEffect(()=>{if(e)return r(e),e.on("select",r),e.on("reInit",r),()=>{e.off("select",r),e.off("reInit",r)}},[e,r]),s.useEffect(()=>{if(!e||!a)return;const t=()=>e.plugins().autoplay?.reset();return e.on("select",t),()=>{e.off("select",t)}},[e,a]),x.jsx(C.Provider,{value:{carouselRef:A,api:e,scrollPrev:()=>e?.scrollPrev(),scrollNext:()=>e?.scrollNext(),canScrollPrev:D,canScrollNext:I,columnGap:h,onSlideChange:n},children:x.jsx(u,{ref:E,onKeyDownCapture:K,className:W.default(R,w),role:p?void 0:"region","aria-roledescription":p?void 0:"carousel",...m,...y,children:S})})});v.displayName="Carousel";exports.CarouselContext=C;exports.default=v;