@timmbr/ui 1.4.2 → 1.6.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 (395) hide show
  1. package/README.md +12 -10
  2. package/dist/components/Accordion/Accordion.js +1 -1
  3. package/dist/components/Accordion/Accordion.styles.d.ts.map +1 -1
  4. package/dist/components/Accordion/Accordion.styles.js +3 -3
  5. package/dist/components/Alert/Alert.js +2 -2
  6. package/dist/components/Alert/Alert.styles.d.ts +2 -2
  7. package/dist/components/Alert/Alert.styles.js +4 -4
  8. package/dist/components/AlertDialog/AlertDialog.d.ts +5 -3
  9. package/dist/components/AlertDialog/AlertDialog.d.ts.map +1 -1
  10. package/dist/components/AlertDialog/AlertDialog.js +21 -8
  11. package/dist/components/AlertDialog/AlertDialog.styles.d.ts +7 -1
  12. package/dist/components/AlertDialog/AlertDialog.styles.d.ts.map +1 -1
  13. package/dist/components/AlertDialog/AlertDialog.styles.js +29 -6
  14. package/dist/components/AlertDialog/AlertDialog.types.d.ts +19 -2
  15. package/dist/components/AlertDialog/AlertDialog.types.d.ts.map +1 -1
  16. package/dist/components/AuthModal/AuthModal.d.ts +4 -0
  17. package/dist/components/AuthModal/AuthModal.d.ts.map +1 -0
  18. package/dist/components/AuthModal/AuthModal.js +89 -0
  19. package/dist/components/AuthModal/AuthModal.labels.d.ts +6 -0
  20. package/dist/components/AuthModal/AuthModal.labels.d.ts.map +1 -0
  21. package/dist/components/AuthModal/AuthModal.labels.js +52 -0
  22. package/dist/components/AuthModal/AuthModal.styles.d.ts +12 -0
  23. package/dist/components/AuthModal/AuthModal.styles.d.ts.map +1 -0
  24. package/dist/components/AuthModal/AuthModal.styles.js +38 -0
  25. package/dist/components/AuthModal/AuthModal.types.d.ts +158 -0
  26. package/dist/components/AuthModal/AuthModal.types.d.ts.map +1 -0
  27. package/dist/components/AuthModal/index.d.ts +6 -0
  28. package/dist/components/AuthModal/index.d.ts.map +1 -0
  29. package/dist/components/AuthModal/subcomponents/AuthModalBanner.d.ts +11 -0
  30. package/dist/components/AuthModal/subcomponents/AuthModalBanner.d.ts.map +1 -0
  31. package/dist/components/AuthModal/subcomponents/AuthModalBanner.js +58 -0
  32. package/dist/components/AuthModal/subcomponents/AuthModalIdentifierForm.d.ts +11 -0
  33. package/dist/components/AuthModal/subcomponents/AuthModalIdentifierForm.d.ts.map +1 -0
  34. package/dist/components/AuthModal/subcomponents/AuthModalIdentifierForm.js +62 -0
  35. package/dist/components/AuthModal/subcomponents/AuthModalOAuth.d.ts +11 -0
  36. package/dist/components/AuthModal/subcomponents/AuthModalOAuth.d.ts.map +1 -0
  37. package/dist/components/AuthModal/subcomponents/AuthModalOAuth.js +19 -0
  38. package/dist/components/AuthModal/subcomponents/AuthModalOtpForm.d.ts +10 -0
  39. package/dist/components/AuthModal/subcomponents/AuthModalOtpForm.d.ts.map +1 -0
  40. package/dist/components/AuthModal/subcomponents/AuthModalOtpForm.js +62 -0
  41. package/dist/components/AuthModal/subcomponents/AuthModalParts.d.ts +44 -0
  42. package/dist/components/AuthModal/subcomponents/AuthModalParts.d.ts.map +1 -0
  43. package/dist/components/AuthModal/subcomponents/AuthModalParts.js +134 -0
  44. package/dist/components/AuthModal/subcomponents/AuthModalPasswordForm.d.ts +10 -0
  45. package/dist/components/AuthModal/subcomponents/AuthModalPasswordForm.d.ts.map +1 -0
  46. package/dist/components/AuthModal/subcomponents/AuthModalPasswordForm.js +54 -0
  47. package/dist/components/AuthModal/subcomponents/AuthModalSetPasswordForm.d.ts +10 -0
  48. package/dist/components/AuthModal/subcomponents/AuthModalSetPasswordForm.d.ts.map +1 -0
  49. package/dist/components/AuthModal/subcomponents/AuthModalSetPasswordForm.js +79 -0
  50. package/dist/components/AuthModal/subcomponents/AuthModalSuccess.d.ts +10 -0
  51. package/dist/components/AuthModal/subcomponents/AuthModalSuccess.d.ts.map +1 -0
  52. package/dist/components/AuthModal/subcomponents/AuthModalSuccess.js +26 -0
  53. package/dist/components/AuthModal/subcomponents/OAuthButton.d.ts +12 -0
  54. package/dist/components/AuthModal/subcomponents/OAuthButton.d.ts.map +1 -0
  55. package/dist/components/AuthModal/subcomponents/OAuthButton.js +38 -0
  56. package/dist/components/AuthModal/subcomponents/index.d.ts +9 -0
  57. package/dist/components/AuthModal/subcomponents/index.d.ts.map +1 -0
  58. package/dist/components/Avatar/Avatar.styles.d.ts +2 -2
  59. package/dist/components/Avatar/Avatar.styles.js +11 -11
  60. package/dist/components/Badge/Badge.styles.d.ts +2 -2
  61. package/dist/components/Badge/Badge.styles.d.ts.map +1 -1
  62. package/dist/components/Badge/Badge.styles.js +10 -8
  63. package/dist/components/Button/Button.d.ts.map +1 -1
  64. package/dist/components/Button/Button.js +6 -0
  65. package/dist/components/Button/Button.styles.d.ts +4 -2
  66. package/dist/components/Button/Button.styles.d.ts.map +1 -1
  67. package/dist/components/Button/Button.styles.js +29 -10
  68. package/dist/components/Card/Card.d.ts.map +1 -1
  69. package/dist/components/Card/Card.js +51 -32
  70. package/dist/components/Card/Card.styles.d.ts +32 -5
  71. package/dist/components/Card/Card.styles.d.ts.map +1 -1
  72. package/dist/components/Card/Card.styles.js +70 -11
  73. package/dist/components/Card/Card.types.d.ts +14 -3
  74. package/dist/components/Card/Card.types.d.ts.map +1 -1
  75. package/dist/components/Checkbox/Checkbox.js +4 -4
  76. package/dist/components/Checkbox/Checkbox.styles.d.ts +2 -2
  77. package/dist/components/Checkbox/Checkbox.styles.js +1 -1
  78. package/dist/components/Chip/Chip.js +1 -1
  79. package/dist/components/Chip/Chip.styles.d.ts +1 -1
  80. package/dist/components/Chip/Chip.styles.js +5 -5
  81. package/dist/components/ConfirmDialog/ConfirmDialog.d.ts +30 -0
  82. package/dist/components/ConfirmDialog/ConfirmDialog.d.ts.map +1 -0
  83. package/dist/components/ConfirmDialog/ConfirmDialog.js +57 -0
  84. package/dist/components/ConfirmDialog/index.d.ts +2 -0
  85. package/dist/components/ConfirmDialog/index.d.ts.map +1 -0
  86. package/dist/components/Container/Container.styles.d.ts +1 -1
  87. package/dist/components/DataList/DataList.d.ts +3 -1
  88. package/dist/components/DataList/DataList.d.ts.map +1 -1
  89. package/dist/components/DataList/DataList.js +53 -15
  90. package/dist/components/DataList/DataList.styles.d.ts +17 -4
  91. package/dist/components/DataList/DataList.styles.d.ts.map +1 -1
  92. package/dist/components/DataList/DataList.styles.js +56 -13
  93. package/dist/components/DataList/DataList.types.d.ts +19 -2
  94. package/dist/components/DataList/DataList.types.d.ts.map +1 -1
  95. package/dist/components/Dialog/Dialog.styles.js +6 -6
  96. package/dist/components/Divider/Divider.js +1 -1
  97. package/dist/components/Drawer/Drawer.d.ts +4 -3
  98. package/dist/components/Drawer/Drawer.d.ts.map +1 -1
  99. package/dist/components/Drawer/Drawer.js +33 -6
  100. package/dist/components/Drawer/Drawer.styles.d.ts +4 -0
  101. package/dist/components/Drawer/Drawer.styles.d.ts.map +1 -1
  102. package/dist/components/Drawer/Drawer.styles.js +9 -6
  103. package/dist/components/Drawer/Drawer.types.d.ts +1 -0
  104. package/dist/components/Drawer/Drawer.types.d.ts.map +1 -1
  105. package/dist/components/Dropdown/Dropdown.d.ts.map +1 -1
  106. package/dist/components/Dropdown/Dropdown.js +25 -12
  107. package/dist/components/Dropdown/Dropdown.styles.d.ts +5 -1
  108. package/dist/components/Dropdown/Dropdown.styles.d.ts.map +1 -1
  109. package/dist/components/Dropdown/Dropdown.styles.js +13 -3
  110. package/dist/components/Dropdown/Dropdown.types.d.ts +4 -0
  111. package/dist/components/Dropdown/Dropdown.types.d.ts.map +1 -1
  112. package/dist/components/EmptyState/EmptyState.d.ts.map +1 -1
  113. package/dist/components/EmptyState/EmptyState.js +4 -3
  114. package/dist/components/EmptyState/EmptyState.styles.d.ts +3 -2
  115. package/dist/components/EmptyState/EmptyState.styles.d.ts.map +1 -1
  116. package/dist/components/EmptyState/EmptyState.styles.js +8 -3
  117. package/dist/components/Fieldset/Fieldset.d.ts +14 -0
  118. package/dist/components/Fieldset/Fieldset.d.ts.map +1 -0
  119. package/dist/components/Fieldset/Fieldset.js +24 -0
  120. package/dist/components/Fieldset/index.d.ts +2 -0
  121. package/dist/components/Fieldset/index.d.ts.map +1 -0
  122. package/dist/components/FormActions/FormActions.d.ts +13 -0
  123. package/dist/components/FormActions/FormActions.d.ts.map +1 -0
  124. package/dist/components/FormActions/FormActions.js +24 -0
  125. package/dist/components/FormActions/index.d.ts +2 -0
  126. package/dist/components/FormActions/index.d.ts.map +1 -0
  127. package/dist/components/FormField/FormField.js +1 -1
  128. package/dist/components/Grid/Grid.d.ts +3 -1
  129. package/dist/components/Grid/Grid.d.ts.map +1 -1
  130. package/dist/components/Grid/Grid.js +31 -5
  131. package/dist/components/Grid/Grid.styles.d.ts +86 -0
  132. package/dist/components/Grid/Grid.styles.d.ts.map +1 -1
  133. package/dist/components/Grid/Grid.styles.js +85 -1
  134. package/dist/components/Grid/Grid.types.d.ts +31 -3
  135. package/dist/components/Grid/Grid.types.d.ts.map +1 -1
  136. package/dist/components/Heading/Heading.styles.d.ts +2 -2
  137. package/dist/components/Heading/Heading.styles.d.ts.map +1 -1
  138. package/dist/components/Heading/Heading.styles.js +15 -11
  139. package/dist/components/Heading/Heading.types.d.ts +1 -1
  140. package/dist/components/Heading/Heading.types.d.ts.map +1 -1
  141. package/dist/components/Icon/Icon.styles.d.ts +2 -2
  142. package/dist/components/Icon/Icon.styles.d.ts.map +1 -1
  143. package/dist/components/Icon/Icon.styles.js +12 -8
  144. package/dist/components/IconTile/IconTile.d.ts +8 -0
  145. package/dist/components/IconTile/IconTile.d.ts.map +1 -0
  146. package/dist/components/IconTile/IconTile.js +23 -0
  147. package/dist/components/IconTile/IconTile.styles.d.ts +7 -0
  148. package/dist/components/IconTile/IconTile.styles.d.ts.map +1 -0
  149. package/dist/components/IconTile/IconTile.styles.js +24 -0
  150. package/dist/components/IconTile/IconTile.types.d.ts +12 -0
  151. package/dist/components/IconTile/IconTile.types.d.ts.map +1 -0
  152. package/dist/components/IconTile/index.d.ts +4 -0
  153. package/dist/components/IconTile/index.d.ts.map +1 -0
  154. package/dist/components/ImageUpload/ImageUpload.js +6 -6
  155. package/dist/components/ImageUpload/subcomponents/ImageUploadDropzone.js +10 -10
  156. package/dist/components/ImageUpload/subcomponents/ImageUploadModal.js +8 -8
  157. package/dist/components/ImageUpload/subcomponents/ImageUploadSinglePreview.js +7 -7
  158. package/dist/components/ImageUpload/subcomponents/ImageUploadThumbnailCard.js +10 -10
  159. package/dist/components/Inline/Inline.d.ts.map +1 -1
  160. package/dist/components/Inline/Inline.js +10 -2
  161. package/dist/components/Inline/Inline.types.d.ts +6 -1
  162. package/dist/components/Inline/Inline.types.d.ts.map +1 -1
  163. package/dist/components/Input/Input.js +4 -4
  164. package/dist/components/Input/Input.styles.d.ts +1 -1
  165. package/dist/components/Input/Input.styles.js +6 -6
  166. package/dist/components/Label/Label.styles.d.ts +1 -1
  167. package/dist/components/Label/Label.styles.js +4 -4
  168. package/dist/components/LinkButton/LinkButton.d.ts.map +1 -1
  169. package/dist/components/LinkButton/LinkButton.js +2 -0
  170. package/dist/components/LinkButton/LinkButton.styles.d.ts +3 -2
  171. package/dist/components/LinkButton/LinkButton.styles.d.ts.map +1 -1
  172. package/dist/components/LinkButton/LinkButton.styles.js +12 -6
  173. package/dist/components/List/List.d.ts.map +1 -1
  174. package/dist/components/List/List.js +19 -6
  175. package/dist/components/List/List.styles.d.ts +3 -1
  176. package/dist/components/List/List.styles.d.ts.map +1 -1
  177. package/dist/components/List/List.styles.js +7 -6
  178. package/dist/components/List/List.types.d.ts +7 -0
  179. package/dist/components/List/List.types.d.ts.map +1 -1
  180. package/dist/components/MediaCard/MediaCard.d.ts +13 -0
  181. package/dist/components/MediaCard/MediaCard.d.ts.map +1 -0
  182. package/dist/components/MediaCard/MediaCard.js +123 -0
  183. package/dist/components/MediaCard/MediaCard.styles.d.ts +17 -0
  184. package/dist/components/MediaCard/MediaCard.styles.d.ts.map +1 -0
  185. package/dist/components/MediaCard/MediaCard.styles.js +57 -0
  186. package/dist/components/MediaCard/MediaCard.types.d.ts +73 -0
  187. package/dist/components/MediaCard/MediaCard.types.d.ts.map +1 -0
  188. package/dist/components/MediaCard/index.d.ts +4 -0
  189. package/dist/components/MediaCard/index.d.ts.map +1 -0
  190. package/dist/components/NavFooter/NavFooter.styles.d.ts +1 -1
  191. package/dist/components/NavFooter/NavFooter.styles.js +9 -9
  192. package/dist/components/NavFooter/subcomponents/FooterBrand.js +3 -3
  193. package/dist/components/NavFooter/subcomponents/FooterLegalBar.js +1 -1
  194. package/dist/components/NavFooter/subcomponents/FooterNavSection.js +4 -4
  195. package/dist/components/NavFooter/subcomponents/FooterNewsletter.js +7 -7
  196. package/dist/components/NavFooter/subcomponents/FooterOffice.js +5 -5
  197. package/dist/components/NavFooter/subcomponents/FooterSocial.js +3 -3
  198. package/dist/components/NavHeader/NavHeader.d.ts.map +1 -1
  199. package/dist/components/NavHeader/NavHeader.js +13 -4
  200. package/dist/components/NavHeader/NavHeader.styles.d.ts +1 -1
  201. package/dist/components/NavHeader/NavHeader.styles.js +16 -16
  202. package/dist/components/NavHeader/NavHeader.types.d.ts +41 -0
  203. package/dist/components/NavHeader/NavHeader.types.d.ts.map +1 -1
  204. package/dist/components/NavHeader/index.d.ts +1 -1
  205. package/dist/components/NavHeader/index.d.ts.map +1 -1
  206. package/dist/components/NavHeader/subcomponents/NavActionLabelSkeleton.d.ts +4 -0
  207. package/dist/components/NavHeader/subcomponents/NavActionLabelSkeleton.d.ts.map +1 -0
  208. package/dist/components/NavHeader/subcomponents/NavActionLabelSkeleton.js +16 -0
  209. package/dist/components/NavHeader/subcomponents/NavActionOverflow.d.ts.map +1 -1
  210. package/dist/components/NavHeader/subcomponents/NavActionOverflow.js +6 -5
  211. package/dist/components/NavHeader/subcomponents/NavActions.d.ts +14 -0
  212. package/dist/components/NavHeader/subcomponents/NavActions.d.ts.map +1 -1
  213. package/dist/components/NavHeader/subcomponents/NavActions.js +82 -16
  214. package/dist/components/NavHeader/subcomponents/NavBrand.d.ts.map +1 -1
  215. package/dist/components/NavHeader/subcomponents/NavBrand.js +14 -15
  216. package/dist/components/NavHeader/subcomponents/NavItems.js +3 -3
  217. package/dist/components/NavHeader/subcomponents/NavItemsOverflow.js +7 -7
  218. package/dist/components/NavHeader/subcomponents/NavMobileSearchDrawer.js +5 -5
  219. package/dist/components/NavHeader/subcomponents/NavMobileTabSlider.js +2 -2
  220. package/dist/components/NavHeader/subcomponents/NavSearch.js +5 -5
  221. package/dist/components/NavHeader/subcomponents/OfferBanner.js +1 -1
  222. package/dist/components/OtpInput/OtpInput.d.ts +4 -0
  223. package/dist/components/OtpInput/OtpInput.d.ts.map +1 -0
  224. package/dist/components/OtpInput/OtpInput.js +114 -0
  225. package/dist/components/OtpInput/OtpInput.styles.d.ts +10 -0
  226. package/dist/components/OtpInput/OtpInput.styles.d.ts.map +1 -0
  227. package/dist/components/OtpInput/OtpInput.styles.js +49 -0
  228. package/dist/components/OtpInput/OtpInput.types.d.ts +40 -0
  229. package/dist/components/OtpInput/OtpInput.types.d.ts.map +1 -0
  230. package/dist/components/OtpInput/index.d.ts +4 -0
  231. package/dist/components/OtpInput/index.d.ts.map +1 -0
  232. package/dist/components/PageHeader/PageHeader.d.ts +8 -0
  233. package/dist/components/PageHeader/PageHeader.d.ts.map +1 -0
  234. package/dist/components/PageHeader/PageHeader.js +55 -0
  235. package/dist/components/PageHeader/PageHeader.styles.d.ts +10 -0
  236. package/dist/components/PageHeader/PageHeader.styles.d.ts.map +1 -0
  237. package/dist/components/PageHeader/PageHeader.styles.js +23 -0
  238. package/dist/components/PageHeader/PageHeader.types.d.ts +24 -0
  239. package/dist/components/PageHeader/PageHeader.types.d.ts.map +1 -0
  240. package/dist/components/PageHeader/index.d.ts +4 -0
  241. package/dist/components/PageHeader/index.d.ts.map +1 -0
  242. package/dist/components/Pagination/Pagination.d.ts +9 -3
  243. package/dist/components/Pagination/Pagination.d.ts.map +1 -1
  244. package/dist/components/Pagination/Pagination.js +60 -39
  245. package/dist/components/Pagination/Pagination.styles.d.ts +1 -1
  246. package/dist/components/Pagination/Pagination.styles.js +3 -3
  247. package/dist/components/Pagination/Pagination.types.d.ts +23 -14
  248. package/dist/components/Pagination/Pagination.types.d.ts.map +1 -1
  249. package/dist/components/Popover/Popover.styles.js +1 -1
  250. package/dist/components/Price/Price.d.ts +10 -0
  251. package/dist/components/Price/Price.d.ts.map +1 -0
  252. package/dist/components/Price/Price.js +49 -0
  253. package/dist/components/Price/Price.styles.d.ts +15 -0
  254. package/dist/components/Price/Price.styles.d.ts.map +1 -0
  255. package/dist/components/Price/Price.styles.js +44 -0
  256. package/dist/components/Price/Price.types.d.ts +22 -0
  257. package/dist/components/Price/Price.types.d.ts.map +1 -0
  258. package/dist/components/Price/index.d.ts +4 -0
  259. package/dist/components/Price/index.d.ts.map +1 -0
  260. package/dist/components/Progress/Progress.js +2 -2
  261. package/dist/components/Progress/Progress.styles.d.ts +1 -1
  262. package/dist/components/Radio/Radio.js +4 -4
  263. package/dist/components/Radio/Radio.styles.d.ts +2 -2
  264. package/dist/components/Radio/Radio.styles.js +1 -1
  265. package/dist/components/RangeSlider/RangeSlider.js +3 -3
  266. package/dist/components/RangeSlider/RangeSlider.styles.js +1 -1
  267. package/dist/components/Rating/Rating.d.ts +5 -0
  268. package/dist/components/Rating/Rating.d.ts.map +1 -0
  269. package/dist/components/Rating/Rating.js +38 -0
  270. package/dist/components/Rating/Rating.styles.d.ts +6 -0
  271. package/dist/components/Rating/Rating.styles.d.ts.map +1 -0
  272. package/dist/components/Rating/Rating.styles.js +13 -0
  273. package/dist/components/Rating/Rating.types.d.ts +18 -0
  274. package/dist/components/Rating/Rating.types.d.ts.map +1 -0
  275. package/dist/components/Rating/index.d.ts +4 -0
  276. package/dist/components/Rating/index.d.ts.map +1 -0
  277. package/dist/components/ResponsiveDialog/ResponsiveDialog.d.ts +29 -0
  278. package/dist/components/ResponsiveDialog/ResponsiveDialog.d.ts.map +1 -0
  279. package/dist/components/ResponsiveDialog/ResponsiveDialog.js +74 -0
  280. package/dist/components/ResponsiveDialog/ResponsiveDialog.types.d.ts +27 -0
  281. package/dist/components/ResponsiveDialog/ResponsiveDialog.types.d.ts.map +1 -0
  282. package/dist/components/ResponsiveDialog/index.d.ts +3 -0
  283. package/dist/components/ResponsiveDialog/index.d.ts.map +1 -0
  284. package/dist/components/SectionNav/SectionNav.d.ts +12 -0
  285. package/dist/components/SectionNav/SectionNav.d.ts.map +1 -0
  286. package/dist/components/SectionNav/SectionNav.js +67 -0
  287. package/dist/components/SectionNav/SectionNav.styles.d.ts +11 -0
  288. package/dist/components/SectionNav/SectionNav.styles.d.ts.map +1 -0
  289. package/dist/components/SectionNav/SectionNav.styles.js +28 -0
  290. package/dist/components/SectionNav/SectionNav.types.d.ts +37 -0
  291. package/dist/components/SectionNav/SectionNav.types.d.ts.map +1 -0
  292. package/dist/components/SectionNav/index.d.ts +4 -0
  293. package/dist/components/SectionNav/index.d.ts.map +1 -0
  294. package/dist/components/Select/Select.js +2 -2
  295. package/dist/components/Select/Select.styles.d.ts +1 -1
  296. package/dist/components/Select/Select.styles.js +8 -8
  297. package/dist/components/SideBarNavigation/SideBarNavigation.styles.js +8 -8
  298. package/dist/components/SideBarNavigation/subcomponents/SidebarBranding.js +3 -3
  299. package/dist/components/SideBarNavigation/subcomponents/SidebarFooter.js +1 -1
  300. package/dist/components/SideBarNavigation/subcomponents/SidebarPopoverMenu.js +4 -4
  301. package/dist/components/SideBarNavigation/subcomponents/SidebarProfile.js +9 -9
  302. package/dist/components/SideBarNavigation/subcomponents/SidebarSubItem.js +2 -2
  303. package/dist/components/Skeleton/Skeleton.styles.js +1 -1
  304. package/dist/components/Spinner/Spinner.d.ts.map +1 -1
  305. package/dist/components/Spinner/Spinner.js +9 -7
  306. package/dist/components/Spinner/Spinner.styles.d.ts +8 -2
  307. package/dist/components/Spinner/Spinner.styles.d.ts.map +1 -1
  308. package/dist/components/Spinner/Spinner.styles.js +27 -24
  309. package/dist/components/Spinner/Spinner.types.d.ts +9 -0
  310. package/dist/components/Spinner/Spinner.types.d.ts.map +1 -1
  311. package/dist/components/Stack/Stack.d.ts.map +1 -1
  312. package/dist/components/Stack/Stack.js +16 -1
  313. package/dist/components/Stack/Stack.types.d.ts +14 -1
  314. package/dist/components/Stack/Stack.types.d.ts.map +1 -1
  315. package/dist/components/Stat/Stat.styles.js +4 -4
  316. package/dist/components/Stepper/Stepper.d.ts +9 -0
  317. package/dist/components/Stepper/Stepper.d.ts.map +1 -0
  318. package/dist/components/Stepper/Stepper.js +81 -0
  319. package/dist/components/Stepper/Stepper.styles.d.ts +14 -0
  320. package/dist/components/Stepper/Stepper.styles.d.ts.map +1 -0
  321. package/dist/components/Stepper/Stepper.styles.js +40 -0
  322. package/dist/components/Stepper/Stepper.types.d.ts +17 -0
  323. package/dist/components/Stepper/Stepper.types.d.ts.map +1 -0
  324. package/dist/components/Stepper/index.d.ts +4 -0
  325. package/dist/components/Stepper/index.d.ts.map +1 -0
  326. package/dist/components/Steps/Steps.d.ts +9 -0
  327. package/dist/components/Steps/Steps.d.ts.map +1 -0
  328. package/dist/components/Steps/Steps.js +81 -0
  329. package/dist/components/Steps/Steps.styles.d.ts +14 -0
  330. package/dist/components/Steps/Steps.styles.d.ts.map +1 -0
  331. package/dist/components/Steps/Steps.styles.js +40 -0
  332. package/dist/components/Steps/Steps.types.d.ts +17 -0
  333. package/dist/components/Steps/Steps.types.d.ts.map +1 -0
  334. package/dist/components/Steps/index.d.ts +4 -0
  335. package/dist/components/Steps/index.d.ts.map +1 -0
  336. package/dist/components/SubNav/SubNav.d.ts +17 -0
  337. package/dist/components/SubNav/SubNav.d.ts.map +1 -0
  338. package/dist/components/SubNav/SubNav.js +87 -0
  339. package/dist/components/SubNav/SubNav.styles.d.ts +18 -0
  340. package/dist/components/SubNav/SubNav.styles.d.ts.map +1 -0
  341. package/dist/components/SubNav/SubNav.styles.js +33 -0
  342. package/dist/components/SubNav/SubNav.types.d.ts +45 -0
  343. package/dist/components/SubNav/SubNav.types.d.ts.map +1 -0
  344. package/dist/components/SubNav/index.d.ts +4 -0
  345. package/dist/components/SubNav/index.d.ts.map +1 -0
  346. package/dist/components/Switch/Switch.js +2 -2
  347. package/dist/components/Switch/Switch.styles.d.ts +2 -2
  348. package/dist/components/Switch/Switch.styles.js +1 -1
  349. package/dist/components/Table/Table.js +1 -1
  350. package/dist/components/Table/Table.styles.d.ts +1 -1
  351. package/dist/components/Table/Table.styles.js +5 -5
  352. package/dist/components/Table/TablePagination.js +4 -4
  353. package/dist/components/Tabs/Tabs.d.ts.map +1 -1
  354. package/dist/components/Tabs/Tabs.js +75 -8
  355. package/dist/components/Tabs/Tabs.styles.d.ts +10 -2
  356. package/dist/components/Tabs/Tabs.styles.d.ts.map +1 -1
  357. package/dist/components/Tabs/Tabs.styles.js +25 -10
  358. package/dist/components/Tabs/Tabs.types.d.ts +13 -0
  359. package/dist/components/Tabs/Tabs.types.d.ts.map +1 -1
  360. package/dist/components/Text/Text.d.ts.map +1 -1
  361. package/dist/components/Text/Text.js +4 -0
  362. package/dist/components/Text/Text.styles.d.ts +4 -2
  363. package/dist/components/Text/Text.styles.d.ts.map +1 -1
  364. package/dist/components/Text/Text.styles.js +32 -16
  365. package/dist/components/Text/Text.types.d.ts +1 -1
  366. package/dist/components/Text/Text.types.d.ts.map +1 -1
  367. package/dist/components/Textarea/Textarea.js +4 -4
  368. package/dist/components/Textarea/Textarea.styles.d.ts +1 -1
  369. package/dist/components/Textarea/Textarea.styles.js +6 -6
  370. package/dist/components/Toast/Toast.js +3 -3
  371. package/dist/components/Toast/Toast.styles.js +5 -5
  372. package/dist/components/Toast/ToastContainer.js +1 -1
  373. package/dist/components/Tooltip/Tooltip.styles.js +1 -1
  374. package/dist/components/VisuallyHidden/VisuallyHidden.d.ts +8 -0
  375. package/dist/components/VisuallyHidden/VisuallyHidden.d.ts.map +1 -0
  376. package/dist/components/VisuallyHidden/VisuallyHidden.js +14 -0
  377. package/dist/components/VisuallyHidden/index.d.ts +2 -0
  378. package/dist/components/VisuallyHidden/index.d.ts.map +1 -0
  379. package/dist/index.d.ts +15 -0
  380. package/dist/index.d.ts.map +1 -1
  381. package/dist/index.js +46 -14
  382. package/dist/utils/gap.d.ts +21 -1
  383. package/dist/utils/gap.d.ts.map +1 -1
  384. package/dist/utils/gap.js +306 -46
  385. package/package.json +7 -6
  386. package/dist/components/CrossZoneLink/CrossZoneLink.d.ts +0 -10
  387. package/dist/components/CrossZoneLink/CrossZoneLink.d.ts.map +0 -1
  388. package/dist/components/CrossZoneLink/CrossZoneLink.js +0 -111
  389. package/dist/components/CrossZoneLink/CrossZoneLink.styles.d.ts +0 -8
  390. package/dist/components/CrossZoneLink/CrossZoneLink.styles.d.ts.map +0 -1
  391. package/dist/components/CrossZoneLink/CrossZoneLink.styles.js +0 -33
  392. package/dist/components/CrossZoneLink/CrossZoneLink.types.d.ts +0 -31
  393. package/dist/components/CrossZoneLink/CrossZoneLink.types.d.ts.map +0 -1
  394. package/dist/components/CrossZoneLink/index.d.ts +0 -4
  395. package/dist/components/CrossZoneLink/index.d.ts.map +0 -1
@@ -49,6 +49,8 @@ const NavHeader = React.forwardRef(
49
49
  profileAction: shorthandProfileAction,
50
50
  wishlistAction: shorthandWishlistAction,
51
51
  cartAction: shorthandCartAction,
52
+ authMode: shorthandAuthMode,
53
+ onAuthTrigger: shorthandOnAuthTrigger,
52
54
  mobileTabSlider: shorthandMobileTabSlider,
53
55
  mobileSearchMode: shorthandMobileSearchMode,
54
56
  mobileActiveItemId: shorthandMobileActiveItemId,
@@ -95,6 +97,8 @@ const NavHeader = React.forwardRef(
95
97
  const profileAction = shorthandProfileAction ?? actionsConfig.profile;
96
98
  const wishlistAction = shorthandWishlistAction ?? actionsConfig.wishlist;
97
99
  const cartAction = shorthandCartAction ?? actionsConfig.cart;
100
+ const authMode = shorthandAuthMode ?? actionsConfig.authMode ?? "modal";
101
+ const onAuthTrigger = shorthandOnAuthTrigger ?? actionsConfig.onAuthTrigger;
98
102
  const mobileConfig = React.useMemo(
99
103
  () => mobile ?? {},
100
104
  [mobile]
@@ -408,10 +412,13 @@ const NavHeader = React.forwardRef(
408
412
  profileAction,
409
413
  wishlistAction,
410
414
  cartAction,
415
+ authMode,
416
+ onAuthTrigger,
411
417
  rightContent,
412
418
  shouldAnimate,
413
419
  motionClass,
414
- linkComponent
420
+ linkComponent,
421
+ enableMenus: true
415
422
  }
416
423
  )
417
424
  ] })
@@ -457,11 +464,11 @@ const NavHeader = React.forwardRef(
457
464
  type: "button",
458
465
  onClick: () => setIsMobileSearchOpen(true),
459
466
  "aria-label": "Open search drawer",
460
- className: "group flex flex-col items-center justify-center min-w-[36px] sm:min-w-[40px] lg:min-w-[52px] text-[#3C3C3C] hover:text-[#C0643A] transition-colors py-1 px-1 lg:px-1.5 cursor-pointer",
467
+ className: "group flex flex-col items-center justify-center min-w-[36px] sm:min-w-[40px] lg:min-w-[52px] text-grey-800 hover:text-primary transition-colors py-1 px-1 lg:px-1.5 cursor-pointer",
461
468
  "data-slot": "nav-mobile-search-icon-trigger",
462
469
  children: [
463
470
  /* @__PURE__ */ jsx(Search, { size: 22, className: "shrink-0 stroke-[1.8]" }),
464
- /* @__PURE__ */ jsx("span", { className: "hidden lg:inline font-sans font-bold text-[10px] tracking-[0.0926em] uppercase", children: "SEARCH" })
471
+ /* @__PURE__ */ jsx("span", { className: "hidden lg:inline font-bold text-caption tracking-[0.0926em] uppercase", children: "SEARCH" })
465
472
  ]
466
473
  }
467
474
  ),
@@ -475,6 +482,8 @@ const NavHeader = React.forwardRef(
475
482
  profileAction,
476
483
  wishlistAction,
477
484
  cartAction,
485
+ authMode,
486
+ onAuthTrigger,
478
487
  rightContent,
479
488
  shouldAnimate,
480
489
  motionClass,
@@ -491,7 +500,7 @@ const NavHeader = React.forwardRef(
491
500
  type: "button",
492
501
  onClick: () => setIsMobileSearchOpen(true),
493
502
  "aria-label": "Open search drawer",
494
- className: "w-full h-10 px-4 flex items-center gap-2.5 rounded-full bg-white border border-[#E7DFD3] text-left text-sm text-grey-400 hover:border-grey-400 shadow-xs transition-all cursor-pointer select-none",
503
+ className: "w-full h-10 px-4 flex items-center gap-2.5 rounded-full bg-grey-50 border border-border-warm text-left text-body-2 text-grey-400 hover:border-grey-400 shadow-xs transition-all cursor-pointer select-none",
495
504
  "data-slot": "nav-mobile-search-pill",
496
505
  children: [
497
506
  /* @__PURE__ */ jsx(Search, { size: 18, className: "text-grey-500 shrink-0" }),
@@ -12,7 +12,7 @@ export declare const navHeaderVariants: (props?: ({
12
12
  * Header inner container styles.
13
13
  */
14
14
  export declare const navHeaderContainerVariants: (props?: ({
15
- maxWidth?: "sm" | "lg" | "md" | "xl" | "2xl" | "full" | null | undefined;
15
+ maxWidth?: "sm" | "md" | "lg" | "xl" | "2xl" | "full" | null | undefined;
16
16
  } & import("class-variance-authority/types").ClassProp) | undefined) => string;
17
17
  /**
18
18
  * Navigation item link / trigger styles.
@@ -1,10 +1,10 @@
1
1
  import { cva } from 'class-variance-authority';
2
2
 
3
3
  const offerBannerVariants = cva(
4
- "w-full bg-[#1A1714] text-[#F7F1E6] font-title text-xs font-semibold uppercase tracking-[0.14em] py-2 px-4 flex items-center justify-center relative transition-all duration-200 z-50 border-b border-black/20"
4
+ "w-full bg-surface-dark text-bg-2 font-title! text-body-3 font-semibold uppercase tracking-[0.14em] py-2 px-4 flex items-center justify-center relative transition-all duration-200 z-50 border-b border-grey-1000/20"
5
5
  );
6
6
  const navHeaderVariants = cva(
7
- "w-full bg-[var(--color-bg-2,#F7F1E6)] text-[var(--color-grey-800,#3C3C3C)] border-b border-[#E7DFD3] relative z-40 transition-colors",
7
+ "w-full bg-[var(--color-bg-2,#F7F1E6)] text-[var(--color-grey-800,#3C3C3C)] border-b border-border-warm relative z-40 transition-colors",
8
8
  {
9
9
  variants: {
10
10
  sticky: {
@@ -36,12 +36,12 @@ const navHeaderContainerVariants = cva(
36
36
  }
37
37
  );
38
38
  const navHeaderItemVariants = cva(
39
- "font-sans font-bold text-[13.5px] xl:text-[14.5px] 2xl:text-[15px] text-[#404040] hover:text-[#C0643A] transition-colors relative py-2 px-1 xl:px-1.5 flex items-center gap-1.5 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary-500 rounded select-none cursor-pointer whitespace-nowrap",
39
+ "font-bold text-body-2 xl:text-body-2 2xl:text-body-2 text-grey-800 hover:text-primary transition-colors relative py-2 px-1 xl:px-1.5 flex items-center gap-1.5 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary-500 rounded select-none cursor-pointer whitespace-nowrap",
40
40
  {
41
41
  variants: {
42
42
  active: {
43
- true: "text-[#C0643A]",
44
- false: "text-[#404040]"
43
+ true: "text-primary",
44
+ false: "text-grey-800"
45
45
  },
46
46
  disabled: {
47
47
  true: "opacity-40 cursor-not-allowed pointer-events-none",
@@ -55,12 +55,12 @@ const navHeaderItemVariants = cva(
55
55
  }
56
56
  );
57
57
  const navActionVariants = cva(
58
- "group flex flex-col items-center justify-center gap-[3.5px] min-w-[36px] sm:min-w-[40px] lg:min-w-[52px] text-[#3C3C3C] hover:text-[#C0643A] transition-colors relative focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary-500 rounded py-1 px-1 lg:px-1.5 select-none cursor-pointer",
58
+ "group flex flex-col items-center justify-center gap-[3.5px] min-w-[36px] sm:min-w-[40px] lg:min-w-[52px] text-grey-800 hover:text-primary transition-colors relative focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary-500 rounded py-1 px-1 lg:px-1.5 select-none cursor-pointer",
59
59
  {
60
60
  variants: {
61
61
  active: {
62
- true: "text-[#C0643A]",
63
- false: "text-[#3C3C3C]"
62
+ true: "text-primary",
63
+ false: "text-grey-800"
64
64
  }
65
65
  },
66
66
  defaultVariants: {
@@ -69,16 +69,16 @@ const navActionVariants = cva(
69
69
  }
70
70
  );
71
71
  const megaMenuCardVariants = cva(
72
- "w-full max-w-[1216px] mx-auto bg-[#FFFFFE] border border-grey-200/80 shadow-2xl rounded-b-xl z-50 overflow-hidden"
72
+ "w-full max-w-[1216px] mx-auto bg-grey-50 border border-grey-200/80 shadow-2xl rounded-b-xl z-50 overflow-hidden"
73
73
  );
74
74
  const searchPopoverCardVariants = cva(
75
- "absolute top-full left-0 right-0 w-full mt-2 bg-white border border-grey-200 shadow-2xl rounded-2xl p-4 sm:p-5 z-50 text-left"
75
+ "absolute top-full left-0 right-0 w-full mt-2 bg-grey-50 border border-grey-200 shadow-2xl rounded-2xl p-4 sm:p-5 z-50 text-left"
76
76
  );
77
77
  const actionOverflowPopoverVariants = cva(
78
- "absolute top-full right-0 mt-3 w-60 bg-white border border-[#E7DFD3] shadow-2xl rounded-2xl p-2 z-50 text-left overflow-hidden divide-y divide-grey-100"
78
+ "absolute top-full right-0 mt-3 w-60 bg-grey-50 border border-border-warm shadow-2xl rounded-2xl p-2 z-50 text-left overflow-hidden divide-y divide-grey-100"
79
79
  );
80
80
  const actionOverflowItemVariants = cva(
81
- "w-full flex items-center justify-between gap-3 px-3 py-2.5 text-xs font-semibold text-[#3C3C3C] hover:text-[#C0643A] hover:bg-[#F7F1E6]/60 rounded-xl transition-colors cursor-pointer text-left focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[#C0643A]",
81
+ "w-full flex items-center justify-between gap-3 px-3 py-2.5 text-body-3 font-semibold text-grey-800 hover:text-primary hover:bg-bg-2/60 rounded-xl transition-colors cursor-pointer text-left focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary",
82
82
  {
83
83
  variants: {
84
84
  disabled: {
@@ -92,14 +92,14 @@ const actionOverflowItemVariants = cva(
92
92
  }
93
93
  );
94
94
  const mobileTabSliderVariants = cva(
95
- "w-full overflow-x-auto flex items-center gap-6 px-4 py-2 border-b border-[#E7DFD3] bg-[var(--color-bg-2,#F7F1E6)] select-none scroll-smooth [&::-webkit-scrollbar]:hidden [-ms-overflow-style:none] [scrollbar-width:none]"
95
+ "w-full overflow-x-auto flex items-center gap-6 px-4 py-2 border-b border-border-warm bg-[var(--color-bg-2,#F7F1E6)] select-none scroll-smooth [&::-webkit-scrollbar]:hidden [-ms-overflow-style:none] [scrollbar-width:none]"
96
96
  );
97
97
  const mobileTabItemVariants = cva(
98
- "relative font-sans text-xs sm:text-sm tracking-tight whitespace-nowrap py-1.5 px-1 font-semibold transition-colors cursor-pointer select-none",
98
+ "relative text-body-3 sm:text-body-2 tracking-tight whitespace-nowrap py-1.5 px-1 font-semibold transition-colors cursor-pointer select-none",
99
99
  {
100
100
  variants: {
101
101
  active: {
102
- true: "text-[#C0643A] font-bold",
102
+ true: "text-primary font-bold",
103
103
  false: "text-grey-600 hover:text-grey-900"
104
104
  },
105
105
  disabled: {
@@ -114,7 +114,7 @@ const mobileTabItemVariants = cva(
114
114
  }
115
115
  );
116
116
  const mobileTabContentPanelVariants = cva(
117
- "w-full bg-[#FFFFFE] border-b border-[#E7DFD3] shadow-md overflow-hidden"
117
+ "w-full bg-grey-50 border-b border-border-warm shadow-md overflow-hidden"
118
118
  );
119
119
  const mobileSearchDrawerVariants = cva(
120
120
  "fixed inset-0 z-[9999] h-[100dvh] w-screen bg-[var(--color-bg-2,#F7F1E6)] flex flex-col overflow-hidden"
@@ -117,6 +117,22 @@ export interface NavSearchConfig {
117
117
  /** Display mode for search on mobile/tablet viewports (< 1024px). Defaults to 'bar' */
118
118
  mobileMode?: 'bar' | 'icon' | 'auto';
119
119
  }
120
+ /**
121
+ * One entry of a header action's dropdown menu (see `NavActionItem.menu`).
122
+ * Provide `href` for a link (rendered as a plain `<a>`, so it works across
123
+ * zones) or `onSelect` for an action.
124
+ */
125
+ export interface NavActionMenuItem {
126
+ id: string;
127
+ label: React.ReactNode;
128
+ href?: string;
129
+ onSelect?: () => void;
130
+ icon?: React.ReactNode;
131
+ /** Styles the entry as destructive (e.g. "Log out"). */
132
+ destructive?: boolean;
133
+ /** Draws a separator above this entry. */
134
+ separatorBefore?: boolean;
135
+ }
120
136
  /**
121
137
  * Header action item (e.g. Profile, Wishlist, Cart, Notifications).
122
138
  */
@@ -144,6 +160,23 @@ export interface NavActionItem {
144
160
  disabled?: boolean;
145
161
  /** Priority level determining which items resist collapsing into overflow */
146
162
  priority?: 'high' | 'normal' | 'low';
163
+ /**
164
+ * Label not known yet (e.g. session still loading): renders a skeleton in
165
+ * the label slot instead of `label`.
166
+ */
167
+ isLoading?: boolean;
168
+ /**
169
+ * Extra classes for the label slot. Give labels that change at runtime a
170
+ * fixed width (the profile action defaults to `w-16 truncate`) so the
171
+ * header doesn't shift when the text swaps.
172
+ */
173
+ labelClassName?: string;
174
+ /**
175
+ * Desktop only: clicking the action opens this menu instead of following
176
+ * `href`. On mobile and in the "more" overflow the action stays a plain
177
+ * link to `href`, so keep `href` set as the fallback.
178
+ */
179
+ menu?: NavActionMenuItem[];
147
180
  /** Optional custom renderer for complex items */
148
181
  render?: (props: {
149
182
  item: NavActionItem;
@@ -192,6 +225,10 @@ export interface NavActionsConfig {
192
225
  cart?: Partial<NavActionItem> & {
193
226
  count?: number;
194
227
  };
228
+ /** Auth trigger mode: 'modal' triggers popup flow, 'redirect' fallbacks to /auth page */
229
+ authMode?: 'modal' | 'redirect';
230
+ /** Callback fired when user triggers auth in modal mode */
231
+ onAuthTrigger?: () => void;
195
232
  }
196
233
  /**
197
234
  * Mobile and tablet responsive navigation (< 1024px) configuration object.
@@ -299,6 +336,10 @@ export interface NavHeaderProps extends MotionProps, Omit<React.HTMLAttributes<H
299
336
  cartAction?: Partial<NavActionItem> & {
300
337
  count?: number;
301
338
  };
339
+ /** Shorthand auth mode: 'modal' triggers modal popup, 'redirect' falls back to /auth page. Defaults to 'modal'. */
340
+ authMode?: 'modal' | 'redirect';
341
+ /** Shorthand callback fired when user triggers auth in modal mode. */
342
+ onAuthTrigger?: () => void;
302
343
  /** Shorthand toggle for mobile horizontal tab slider. Defaults to true. */
303
344
  mobileTabSlider?: boolean;
304
345
  /** Shorthand search display style on mobile/tablet screens (< 1024px). */
@@ -1 +1 @@
1
- {"version":3,"file":"NavHeader.types.d.ts","sourceRoot":"","sources":["../../../src/components/NavHeader/NavHeader.types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"NavHeader.types.d.ts","sourceRoot":"","sources":["../../../src/components/NavHeader/NavHeader.types.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  export { NavHeader, Header } from './NavHeader';
2
- export type { NavHeaderProps, NavHeaderItem, NavHeaderBranding, OfferBannerConfig, NavSearchConfig, PopularSearchTag, NavActionItem, } from './NavHeader.types';
2
+ export type { NavHeaderProps, NavHeaderItem, NavHeaderBranding, OfferBannerConfig, NavSearchConfig, PopularSearchTag, NavActionItem, NavActionMenuItem, } from './NavHeader.types';
3
3
  export { useNavHeaderContext } from './NavHeader.context';
4
4
  export { offerBannerVariants, navHeaderVariants, navHeaderContainerVariants, navHeaderItemVariants, navActionVariants, megaMenuCardVariants, searchPopoverCardVariants, } from './NavHeader.styles';
5
5
  export { OfferBanner } from './subcomponents/OfferBanner';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/NavHeader/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAChD,YAAY,EACV,cAAc,EACd,aAAa,EACb,iBAAiB,EACjB,iBAAiB,EACjB,eAAe,EACf,gBAAgB,EAChB,aAAa,GACd,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EACL,mBAAmB,EACnB,iBAAiB,EACjB,0BAA0B,EAC1B,qBAAqB,EACrB,iBAAiB,EACjB,oBAAoB,EACpB,yBAAyB,GAC1B,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAC1D,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACpD,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAC1D,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/NavHeader/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAChD,YAAY,EACV,cAAc,EACd,aAAa,EACb,iBAAiB,EACjB,iBAAiB,EACjB,eAAe,EACf,gBAAgB,EAChB,aAAa,EACb,iBAAiB,GAClB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EACL,mBAAmB,EACnB,iBAAiB,EACjB,0BAA0B,EAC1B,qBAAqB,EACrB,iBAAiB,EACjB,oBAAoB,EACpB,yBAAyB,GAC1B,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAC1D,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACpD,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAC1D,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC"}
@@ -0,0 +1,4 @@
1
+ import * as React from 'react';
2
+ /** Placeholder for an action label that isn't known yet (fills the label slot). */
3
+ export declare function NavActionLabelSkeleton(): React.JSX.Element;
4
+ //# sourceMappingURL=NavActionLabelSkeleton.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NavActionLabelSkeleton.d.ts","sourceRoot":"","sources":["../../../../src/components/NavHeader/subcomponents/NavActionLabelSkeleton.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,mFAAmF;AACnF,wBAAgB,sBAAsB,sBAQrC"}
@@ -0,0 +1,16 @@
1
+ import { jsx } from 'react/jsx-runtime';
2
+ import { cn } from '@timmbr/utils';
3
+ import { skeletonVariants } from '../../Skeleton/Skeleton.styles.js';
4
+
5
+ function NavActionLabelSkeleton() {
6
+ return /* @__PURE__ */ jsx(
7
+ "span",
8
+ {
9
+ "aria-hidden": "true",
10
+ "data-slot": "nav-action-label-skeleton",
11
+ className: cn(skeletonVariants({ variant: "text" }), "block h-3 align-middle")
12
+ }
13
+ );
14
+ }
15
+
16
+ export { NavActionLabelSkeleton };
@@ -1 +1 @@
1
- {"version":3,"file":"NavActionOverflow.d.ts","sourceRoot":"","sources":["../../../../src/components/NavHeader/subcomponents/NavActionOverflow.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAU/B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAGxD,MAAM,WAAW,sBAAsB;IACrC,KAAK,EAAE,aAAa,EAAE,CAAC;IACvB,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACxB,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;CAC1C;AAED,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC,sBAAsB,CAiM9D,CAAC;AAEF,eAAe,iBAAiB,CAAC"}
1
+ {"version":3,"file":"NavActionOverflow.d.ts","sourceRoot":"","sources":["../../../../src/components/NavHeader/subcomponents/NavActionOverflow.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAU/B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAIxD,MAAM,WAAW,sBAAsB;IACrC,KAAK,EAAE,aAAa,EAAE,CAAC;IACvB,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACxB,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;CAC1C;AAED,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC,sBAAsB,CAmM9D,CAAC;AAEF,eAAe,iBAAiB,CAAC"}
@@ -5,6 +5,7 @@ import { AnimatePresence, motion } from '@timmbr/motion';
5
5
  import { MoreHorizontal } from '@timmbr/icons';
6
6
  import { cn } from '@timmbr/utils';
7
7
  import { navActionVariants, actionOverflowItemVariants, actionOverflowPopoverVariants } from '../NavHeader.styles.js';
8
+ import { NavActionLabelSkeleton } from './NavActionLabelSkeleton.js';
8
9
  import { resolveNavDestination, isCrossZoneNavigation } from '../NavHeader.helpers.js';
9
10
  import { useTimmbrConfig } from '../../../providers/TimmbrConfigProvider.js';
10
11
 
@@ -71,13 +72,13 @@ const NavActionOverflow = ({
71
72
  totalBadges > 0 && /* @__PURE__ */ jsx(
72
73
  "span",
73
74
  {
74
- className: "absolute -top-1 -right-2 min-w-[16px] h-4 px-1 rounded-full bg-[#C0643A] text-white text-[10px] font-bold flex items-center justify-center",
75
+ className: "absolute -top-1 -right-2 min-w-[16px] h-4 px-1 rounded-full bg-primary text-grey-50 text-caption font-bold flex items-center justify-center",
75
76
  "aria-label": `${totalBadges} items in overflow menu`,
76
77
  children: totalBadges
77
78
  }
78
79
  )
79
80
  ] }),
80
- /* @__PURE__ */ jsx("span", { className: "hidden lg:inline font-sans font-bold text-[10px] tracking-[0.0926em] uppercase whitespace-nowrap", children: label })
81
+ /* @__PURE__ */ jsx("span", { className: "hidden lg:inline font-bold text-caption tracking-[0.0926em] uppercase whitespace-nowrap", children: label })
81
82
  ]
82
83
  }
83
84
  ),
@@ -104,10 +105,10 @@ const NavActionOverflow = ({
104
105
  const requiresCrossZone = isCrossZoneNavigation(item.zone, config.zones?.currentZone, item.crossZone);
105
106
  const itemRowContent = /* @__PURE__ */ jsxs(Fragment, { children: [
106
107
  /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2.5 truncate", children: [
107
- /* @__PURE__ */ jsx("span", { className: "shrink-0 text-grey-500 group-hover:text-[#C0643A] transition-colors", children: item.icon }),
108
- /* @__PURE__ */ jsx("span", { className: "truncate", children: item.label })
108
+ /* @__PURE__ */ jsx("span", { className: "shrink-0 text-grey-500 group-hover:text-primary transition-colors", children: item.icon }),
109
+ /* @__PURE__ */ jsx("span", { className: "truncate", children: item.isLoading ? /* @__PURE__ */ jsx(NavActionLabelSkeleton, {}) : item.label })
109
110
  ] }),
110
- typeof item.badge !== "undefined" && item.badge !== null && /* @__PURE__ */ jsx("span", { className: "shrink-0 px-1.5 py-0.5 rounded-full bg-[#C0643A] text-white text-[10px] font-bold", children: item.badge })
111
+ typeof item.badge !== "undefined" && item.badge !== null && /* @__PURE__ */ jsx("span", { className: "shrink-0 px-1.5 py-0.5 rounded-full bg-primary text-grey-50 text-caption font-bold", children: item.badge })
111
112
  ] });
112
113
  const itemClass = cn(
113
114
  actionOverflowItemVariants({ disabled: item.disabled }),
@@ -1,5 +1,12 @@
1
1
  import * as React from 'react';
2
2
  import type { NavActionItem } from '../NavHeader.types';
3
+ /**
4
+ * Profile label slot: sized to its text, so gaps stay even, but
5
+ * - at least as wide as "LOGIN" (34.6px): the loading skeleton and LOGIN are
6
+ * the same width, so signed-out visitors see no shift at all;
7
+ * - at most 64px: longer names are cut with "…" (full name in `title`).
8
+ */
9
+ export declare const PROFILE_LABEL_CLASS = "min-w-[35px] max-w-16 truncate text-center";
3
10
  export interface NavActionsProps {
4
11
  actions?: NavActionItem[];
5
12
  profileAction?: Partial<NavActionItem>;
@@ -9,6 +16,8 @@ export interface NavActionsProps {
9
16
  cartAction?: Partial<NavActionItem> & {
10
17
  count?: number;
11
18
  };
19
+ authMode?: 'modal' | 'redirect';
20
+ onAuthTrigger?: () => void;
12
21
  maxVisibleActions?: number | 'auto';
13
22
  overflowActionLabel?: React.ReactNode;
14
23
  overflowActionIcon?: React.ReactNode;
@@ -16,6 +25,11 @@ export interface NavActionsProps {
16
25
  shouldAnimate?: boolean;
17
26
  motionClass?: string;
18
27
  linkComponent?: React.ComponentType<any>;
28
+ /**
29
+ * Let actions with a `menu` open it. NavHeader enables this for the
30
+ * desktop bar only; elsewhere those actions stay plain links.
31
+ */
32
+ enableMenus?: boolean;
19
33
  }
20
34
  export declare const NavActions: React.FC<NavActionsProps>;
21
35
  export default NavActions;
@@ -1 +1 @@
1
- {"version":3,"file":"NavActions.d.ts","sourceRoot":"","sources":["../../../../src/components/NavHeader/subcomponents/NavActions.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAK/B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAIxD,MAAM,WAAW,eAAe;IAC9B,OAAO,CAAC,EAAE,aAAa,EAAE,CAAC;IAC1B,aAAa,CAAC,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC;IACvC,cAAc,CAAC,EAAE,OAAO,CAAC,aAAa,CAAC,GAAG;QAAE,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC7D,UAAU,CAAC,EAAE,OAAO,CAAC,aAAa,CAAC,GAAG;QAAE,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACzD,iBAAiB,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACpC,mBAAmB,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACtC,kBAAkB,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACrC,YAAY,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC/B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;CAC1C;AAED,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,eAAe,CAsRhD,CAAC;AAEF,eAAe,UAAU,CAAC"}
1
+ {"version":3,"file":"NavActions.d.ts","sourceRoot":"","sources":["../../../../src/components/NavHeader/subcomponents/NavActions.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAO/B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAWxD;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB,+CAA+C,CAAC;AAEhF,MAAM,WAAW,eAAe;IAC9B,OAAO,CAAC,EAAE,aAAa,EAAE,CAAC;IAC1B,aAAa,CAAC,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC;IACvC,cAAc,CAAC,EAAE,OAAO,CAAC,aAAa,CAAC,GAAG;QAAE,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC7D,UAAU,CAAC,EAAE,OAAO,CAAC,aAAa,CAAC,GAAG;QAAE,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACzD,QAAQ,CAAC,EAAE,OAAO,GAAG,UAAU,CAAC;IAChC,aAAa,CAAC,EAAE,MAAM,IAAI,CAAC;IAC3B,iBAAiB,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACpC,mBAAmB,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACtC,kBAAkB,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACrC,YAAY,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC/B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;IACzC;;;OAGG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,eAAe,CA+VhD,CAAC;AAEF,eAAe,UAAU,CAAC"}
@@ -1,25 +1,32 @@
1
1
  "use client";
2
2
  import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
3
3
  import * as React from 'react';
4
- import { User, Heart, ShoppingCart } from '@timmbr/icons';
4
+ import { openAuthModal } from '@timmbr/hooks';
5
+ import { Heart, ShoppingCart, User } from '@timmbr/icons';
5
6
  import { cn } from '@timmbr/utils';
6
7
  import { navActionVariants } from '../NavHeader.styles.js';
8
+ import { NavActionLabelSkeleton } from './NavActionLabelSkeleton.js';
7
9
  import { resolveNavDestination, isCrossZoneNavigation } from '../NavHeader.helpers.js';
8
10
  import { NavActionOverflow } from './NavActionOverflow.js';
9
11
  import { useTimmbrConfig } from '../../../providers/TimmbrConfigProvider.js';
12
+ import { DropdownMenu, DropdownMenuTrigger, DropdownMenuContent, DropdownMenuSeparator, DropdownMenuItem } from '../../Dropdown/Dropdown.js';
10
13
 
14
+ const PROFILE_LABEL_CLASS = "min-w-[35px] max-w-16 truncate text-center";
11
15
  const NavActions = ({
12
16
  actions,
13
17
  profileAction,
14
18
  wishlistAction,
15
19
  cartAction,
20
+ authMode = "modal",
21
+ onAuthTrigger,
16
22
  maxVisibleActions = "auto",
17
23
  overflowActionLabel,
18
24
  overflowActionIcon,
19
25
  rightContent,
20
26
  shouldAnimate = true,
21
27
  motionClass,
22
- linkComponent: CustomLink
28
+ linkComponent: CustomLink,
29
+ enableMenus = false
23
30
  }) => {
24
31
  const config = useTimmbrConfig();
25
32
  const containerRef = React.useRef(null);
@@ -30,16 +37,21 @@ const NavActions = ({
30
37
  }
31
38
  const defaultItems = [];
32
39
  const customItems = actions ?? [];
33
- defaultItems.push({
34
- id: "profile",
35
- label: profileAction?.label ?? "PROFILE",
36
- icon: profileAction?.icon ?? /* @__PURE__ */ jsx(User, { size: 22, className: "stroke-[1.8]" }),
37
- href: profileAction?.href ?? "/account",
38
- zone: profileAction?.zone,
39
- crossZone: profileAction?.crossZone,
40
- onClick: profileAction?.onClick,
41
- ariaLabel: profileAction?.ariaLabel ?? "User Account"
42
- });
40
+ const isExplicitAccountLink = Boolean(profileAction?.href) && profileAction?.href !== "/auth" && profileAction?.href !== "/login";
41
+ const profileHref = authMode === "modal" && !isExplicitAccountLink ? void 0 : profileAction?.href ?? "/auth";
42
+ const handleProfileClick = (e) => {
43
+ if (profileAction?.onClick) {
44
+ profileAction.onClick(e);
45
+ }
46
+ if (authMode === "modal" && !isExplicitAccountLink) {
47
+ e.preventDefault();
48
+ if (onAuthTrigger) {
49
+ onAuthTrigger();
50
+ } else {
51
+ openAuthModal();
52
+ }
53
+ }
54
+ };
43
55
  const wishCount = wishlistAction?.count;
44
56
  defaultItems.push({
45
57
  id: "wishlist",
@@ -65,8 +77,23 @@ const NavActions = ({
65
77
  ariaLabel: cartAction?.ariaLabel ?? (cartCount ? `Shopping cart with ${cartCount} items` : "Shopping cart"),
66
78
  priority: "high"
67
79
  });
80
+ defaultItems.push({
81
+ id: "profile",
82
+ label: profileAction?.label ?? "LOGIN",
83
+ icon: profileAction?.icon ?? /* @__PURE__ */ jsx(User, { size: 22, className: "stroke-[1.8]" }),
84
+ href: profileHref,
85
+ zone: profileAction?.zone,
86
+ crossZone: profileAction?.crossZone,
87
+ onClick: handleProfileClick,
88
+ ariaLabel: profileAction?.ariaLabel ?? "User Account",
89
+ priority: "high",
90
+ isLoading: profileAction?.isLoading,
91
+ // LOGIN / skeleton / first name share one fixed-width slot: no layout shift
92
+ labelClassName: profileAction?.labelClassName ?? PROFILE_LABEL_CLASS,
93
+ menu: profileAction?.menu
94
+ });
68
95
  return [...customItems, ...defaultItems];
69
- }, [actions, profileAction, wishlistAction, cartAction]);
96
+ }, [actions, profileAction, wishlistAction, cartAction, authMode, onAuthTrigger]);
70
97
  React.useEffect(() => {
71
98
  if (maxVisibleActions !== "auto") {
72
99
  setMeasuredMaxVisible(null);
@@ -154,9 +181,20 @@ const NavActions = ({
154
181
  const content = /* @__PURE__ */ jsxs(Fragment, { children: [
155
182
  /* @__PURE__ */ jsxs("div", { className: "relative flex items-center justify-center", children: [
156
183
  item.icon,
157
- typeof item.badge !== "undefined" && item.badge !== null && /* @__PURE__ */ jsx("span", { className: "absolute -top-1 -right-2 min-w-[16px] h-4 px-1 rounded-full bg-[#C0643A] text-white text-[10px] font-bold flex items-center justify-center", children: item.badge })
184
+ typeof item.badge !== "undefined" && item.badge !== null && /* @__PURE__ */ jsx("span", { className: "absolute -top-1 -right-2 min-w-[16px] h-4 px-1 rounded-full bg-primary text-grey-50 text-caption font-bold flex items-center justify-center", children: item.badge })
158
185
  ] }),
159
- /* @__PURE__ */ jsx("span", { className: "hidden lg:inline font-sans font-bold text-[10px] tracking-[0.0926em] uppercase whitespace-nowrap", children: item.label })
186
+ /* @__PURE__ */ jsx(
187
+ "span",
188
+ {
189
+ className: cn(
190
+ "hidden lg:inline-block font-bold text-caption tracking-[0.0926em] uppercase whitespace-nowrap",
191
+ item.labelClassName
192
+ ),
193
+ title: !item.isLoading && typeof item.label === "string" ? item.label : void 0,
194
+ "data-slot": "nav-action-label",
195
+ children: item.isLoading ? /* @__PURE__ */ jsx(NavActionLabelSkeleton, {}) : item.label
196
+ }
197
+ )
160
198
  ] });
161
199
  const actionClass = cn(
162
200
  navActionVariants(),
@@ -165,6 +203,33 @@ const NavActions = ({
165
203
  motionClass,
166
204
  item.className
167
205
  );
206
+ if (enableMenus && item.menu?.length && !item.isLoading && !item.disabled) {
207
+ return /* @__PURE__ */ jsxs(DropdownMenu, { modal: false, children: [
208
+ /* @__PURE__ */ jsx(DropdownMenuTrigger, { asChild: true, children: /* @__PURE__ */ jsx(
209
+ "button",
210
+ {
211
+ type: "button",
212
+ "aria-label": item.ariaLabel,
213
+ className: actionClass,
214
+ "data-slot": "nav-action-menu-trigger",
215
+ children: content
216
+ }
217
+ ) }),
218
+ /* @__PURE__ */ jsx(DropdownMenuContent, { align: "end", className: "min-w-48", "data-slot": "nav-action-menu", children: item.menu.map((entry) => /* @__PURE__ */ jsxs(React.Fragment, { children: [
219
+ entry.separatorBefore && /* @__PURE__ */ jsx(DropdownMenuSeparator, {}),
220
+ /* @__PURE__ */ jsx(
221
+ DropdownMenuItem,
222
+ {
223
+ asChild: Boolean(entry.href),
224
+ onSelect: entry.onSelect,
225
+ icon: entry.icon,
226
+ destructive: entry.destructive,
227
+ children: entry.href ? /* @__PURE__ */ jsx("a", { href: entry.href, children: entry.label }) : entry.label
228
+ }
229
+ )
230
+ ] }, entry.id)) })
231
+ ] }, item.id);
232
+ }
168
233
  if (resolvedHref && !item.disabled) {
169
234
  if (CustomLink && !requiresCrossZone) {
170
235
  return /* @__PURE__ */ jsx(
@@ -200,6 +265,7 @@ const NavActions = ({
200
265
  type: "button",
201
266
  disabled: item.disabled,
202
267
  "aria-label": item.ariaLabel,
268
+ "aria-busy": item.isLoading || void 0,
203
269
  onClick: item.onClick,
204
270
  className: actionClass,
205
271
  "data-slot": "nav-action-button",
@@ -225,4 +291,4 @@ const NavActions = ({
225
291
  );
226
292
  };
227
293
 
228
- export { NavActions };
294
+ export { NavActions, PROFILE_LABEL_CLASS };
@@ -1 +1 @@
1
- {"version":3,"file":"NavBrand.d.ts","sourceRoot":"","sources":["../../../../src/components/NavHeader/subcomponents/NavBrand.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAG5D,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,iBAAiB,CAAC;IAC5B,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;CAC1C;AAED,eAAO,MAAM,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,aAAa,CAiG5C,CAAC;AAEF,eAAe,QAAQ,CAAC"}
1
+ {"version":3,"file":"NavBrand.d.ts","sourceRoot":"","sources":["../../../../src/components/NavHeader/subcomponents/NavBrand.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAK5D,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,iBAAiB,CAAC;IAC5B,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;CAC1C;AAED,eAAO,MAAM,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,aAAa,CA4F5C,CAAC;AAEF,eAAe,QAAQ,CAAC"}
@@ -5,6 +5,7 @@ import { cn } from '@timmbr/utils';
5
5
  import { resolveNavDestination, isCrossZoneNavigation } from '../NavHeader.helpers.js';
6
6
  import { useTimmbrConfig } from '../../../providers/TimmbrConfigProvider.js';
7
7
 
8
+ const BRAND_FADE = { duration: 0.2, ease: [0.16, 1, 0.3, 1] };
8
9
  const NavBrand = ({
9
10
  branding,
10
11
  isSearchOpen = false,
@@ -17,6 +18,8 @@ const NavBrand = ({
17
18
  const resolvedHref = resolveNavDestination(href, zone, config.zones?.zones) ?? "/";
18
19
  const requiresCrossZone = isCrossZoneNavigation(zone, config.zones?.currentZone);
19
20
  const showMini = Boolean(isSearchOpen && miniLogo);
21
+ const visible = { opacity: 1, scale: 1 };
22
+ const hidden = { opacity: 0, scale: 0.92 };
20
23
  const logoNode = /* @__PURE__ */ jsxs(
21
24
  "div",
22
25
  {
@@ -27,31 +30,27 @@ const NavBrand = ({
27
30
  motion.div,
28
31
  {
29
32
  initial: false,
30
- animate: shouldAnimate ? {
31
- opacity: showMini ? 0 : 1,
32
- scale: showMini ? 0.92 : 1
33
- } : void 0,
34
- transition: { duration: 0.2, ease: [0.16, 1, 0.3, 1] },
33
+ animate: showMini ? hidden : visible,
34
+ transition: shouldAnimate ? BRAND_FADE : { duration: 0 },
35
+ "aria-hidden": showMini || void 0,
35
36
  className: cn(
36
- "flex items-center justify-center shrink-0 transition-opacity",
37
+ "flex items-center justify-center shrink-0 will-change-[opacity,transform]",
37
38
  showMini ? "pointer-events-none" : "pointer-events-auto",
38
- !shouldAnimate && (showMini ? "opacity-0" : "opacity-100"),
39
39
  motionClass
40
40
  ),
41
41
  children: logo
42
42
  }
43
43
  ),
44
- showMini && /* @__PURE__ */ jsx(
44
+ miniLogo && /* @__PURE__ */ jsx(
45
45
  motion.div,
46
46
  {
47
- initial: shouldAnimate ? { opacity: 0, scale: 0.92 } : false,
48
- animate: shouldAnimate ? {
49
- opacity: 1,
50
- scale: 1
51
- } : void 0,
52
- transition: { duration: 0.2, ease: [0.16, 1, 0.3, 1] },
47
+ initial: false,
48
+ animate: showMini ? visible : hidden,
49
+ transition: shouldAnimate ? BRAND_FADE : { duration: 0 },
50
+ "aria-hidden": !showMini || void 0,
53
51
  className: cn(
54
- "absolute inset-0 flex items-center justify-center shrink-0 pointer-events-auto",
52
+ "absolute inset-0 flex items-center justify-center shrink-0 will-change-[opacity,transform]",
53
+ showMini ? "pointer-events-auto" : "pointer-events-none",
55
54
  motionClass
56
55
  ),
57
56
  children: miniLogo