@flipdish/ui-library 0.9.2 → 0.11.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 (260) hide show
  1. package/dist/components/atoms/Button/index.cjs +4 -1
  2. package/dist/components/atoms/Button/index.cjs.map +1 -1
  3. package/dist/components/atoms/Button/index.d.ts +2 -0
  4. package/dist/components/atoms/Button/index.d.ts.map +1 -1
  5. package/dist/components/atoms/Button/index.js +4 -1
  6. package/dist/components/atoms/Button/index.js.map +1 -1
  7. package/dist/components/atoms/Checkbox/index.cjs +4 -2
  8. package/dist/components/atoms/Checkbox/index.cjs.map +1 -1
  9. package/dist/components/atoms/Checkbox/index.d.ts +3 -1
  10. package/dist/components/atoms/Checkbox/index.d.ts.map +1 -1
  11. package/dist/components/atoms/Checkbox/index.js +4 -2
  12. package/dist/components/atoms/Checkbox/index.js.map +1 -1
  13. package/dist/components/atoms/Input/index.cjs +7 -4
  14. package/dist/components/atoms/Input/index.cjs.map +1 -1
  15. package/dist/components/atoms/Input/index.d.ts +6 -2
  16. package/dist/components/atoms/Input/index.d.ts.map +1 -1
  17. package/dist/components/atoms/Input/index.js +7 -4
  18. package/dist/components/atoms/Input/index.js.map +1 -1
  19. package/dist/components/atoms/RadioButton/index.cjs +8 -4
  20. package/dist/components/atoms/RadioButton/index.cjs.map +1 -1
  21. package/dist/components/atoms/RadioButton/index.d.ts +8 -3
  22. package/dist/components/atoms/RadioButton/index.d.ts.map +1 -1
  23. package/dist/components/atoms/RadioButton/index.js +8 -4
  24. package/dist/components/atoms/RadioButton/index.js.map +1 -1
  25. package/dist/components/atoms/Toggle/index.cjs +4 -2
  26. package/dist/components/atoms/Toggle/index.cjs.map +1 -1
  27. package/dist/components/atoms/Toggle/index.d.ts +3 -1
  28. package/dist/components/atoms/Toggle/index.d.ts.map +1 -1
  29. package/dist/components/atoms/Toggle/index.js +4 -2
  30. package/dist/components/atoms/Toggle/index.js.map +1 -1
  31. package/dist/components/molecules/Breadcrumbs/components/breadcrumb-account-item.cjs +3 -1
  32. package/dist/components/molecules/Breadcrumbs/components/breadcrumb-account-item.cjs.map +1 -1
  33. package/dist/components/molecules/Breadcrumbs/components/breadcrumb-account-item.d.ts.map +1 -1
  34. package/dist/components/molecules/Breadcrumbs/components/breadcrumb-account-item.js +3 -1
  35. package/dist/components/molecules/Breadcrumbs/components/breadcrumb-account-item.js.map +1 -1
  36. package/dist/components/molecules/Breadcrumbs/components/breadcrumb-item.cjs +9 -5
  37. package/dist/components/molecules/Breadcrumbs/components/breadcrumb-item.cjs.map +1 -1
  38. package/dist/components/molecules/Breadcrumbs/components/breadcrumb-item.d.ts +5 -1
  39. package/dist/components/molecules/Breadcrumbs/components/breadcrumb-item.d.ts.map +1 -1
  40. package/dist/components/molecules/Breadcrumbs/components/breadcrumb-item.js +9 -5
  41. package/dist/components/molecules/Breadcrumbs/components/breadcrumb-item.js.map +1 -1
  42. package/dist/components/molecules/Breadcrumbs/index.cjs +4 -2
  43. package/dist/components/molecules/Breadcrumbs/index.cjs.map +1 -1
  44. package/dist/components/molecules/Breadcrumbs/index.d.ts +8 -2
  45. package/dist/components/molecules/Breadcrumbs/index.d.ts.map +1 -1
  46. package/dist/components/molecules/Breadcrumbs/index.js +4 -2
  47. package/dist/components/molecules/Breadcrumbs/index.js.map +1 -1
  48. package/dist/components/molecules/Pagination/components/pagination-base.cjs +11 -4
  49. package/dist/components/molecules/Pagination/components/pagination-base.cjs.map +1 -1
  50. package/dist/components/molecules/Pagination/components/pagination-base.d.ts +8 -1
  51. package/dist/components/molecules/Pagination/components/pagination-base.d.ts.map +1 -1
  52. package/dist/components/molecules/Pagination/components/pagination-base.js +11 -4
  53. package/dist/components/molecules/Pagination/components/pagination-base.js.map +1 -1
  54. package/dist/components/molecules/Pagination/index.cjs +1 -1
  55. package/dist/components/molecules/Pagination/index.cjs.map +1 -1
  56. package/dist/components/molecules/Pagination/index.js +1 -1
  57. package/dist/components/molecules/Pagination/index.js.map +1 -1
  58. package/dist/components/molecules/ProgressSteps/components/progress-step-base.cjs +16 -16
  59. package/dist/components/molecules/ProgressSteps/components/progress-step-base.cjs.map +1 -1
  60. package/dist/components/molecules/ProgressSteps/components/progress-step-base.d.ts +8 -8
  61. package/dist/components/molecules/ProgressSteps/components/progress-step-base.d.ts.map +1 -1
  62. package/dist/components/molecules/ProgressSteps/components/progress-step-base.js +16 -16
  63. package/dist/components/molecules/ProgressSteps/components/progress-step-base.js.map +1 -1
  64. package/dist/components/molecules/ProgressSteps/index.cjs +19 -12
  65. package/dist/components/molecules/ProgressSteps/index.cjs.map +1 -1
  66. package/dist/components/molecules/ProgressSteps/index.d.ts +3 -3
  67. package/dist/components/molecules/ProgressSteps/index.d.ts.map +1 -1
  68. package/dist/components/molecules/ProgressSteps/index.js +19 -12
  69. package/dist/components/molecules/ProgressSteps/index.js.map +1 -1
  70. package/dist/components/molecules/ProgressSteps/progressSteps.types.d.ts +10 -0
  71. package/dist/components/molecules/ProgressSteps/progressSteps.types.d.ts.map +1 -1
  72. package/dist/components/molecules/RadioGroup/components/radio-group-avatar.cjs +4 -2
  73. package/dist/components/molecules/RadioGroup/components/radio-group-avatar.cjs.map +1 -1
  74. package/dist/components/molecules/RadioGroup/components/radio-group-avatar.d.ts +3 -1
  75. package/dist/components/molecules/RadioGroup/components/radio-group-avatar.d.ts.map +1 -1
  76. package/dist/components/molecules/RadioGroup/components/radio-group-avatar.js +4 -2
  77. package/dist/components/molecules/RadioGroup/components/radio-group-avatar.js.map +1 -1
  78. package/dist/components/molecules/RadioGroup/components/radio-group-checkbox.cjs +4 -2
  79. package/dist/components/molecules/RadioGroup/components/radio-group-checkbox.cjs.map +1 -1
  80. package/dist/components/molecules/RadioGroup/components/radio-group-checkbox.d.ts +3 -1
  81. package/dist/components/molecules/RadioGroup/components/radio-group-checkbox.d.ts.map +1 -1
  82. package/dist/components/molecules/RadioGroup/components/radio-group-checkbox.js +4 -2
  83. package/dist/components/molecules/RadioGroup/components/radio-group-checkbox.js.map +1 -1
  84. package/dist/components/molecules/RadioGroup/components/radio-group-icon-card.cjs +4 -2
  85. package/dist/components/molecules/RadioGroup/components/radio-group-icon-card.cjs.map +1 -1
  86. package/dist/components/molecules/RadioGroup/components/radio-group-icon-card.d.ts +3 -1
  87. package/dist/components/molecules/RadioGroup/components/radio-group-icon-card.d.ts.map +1 -1
  88. package/dist/components/molecules/RadioGroup/components/radio-group-icon-card.js +4 -2
  89. package/dist/components/molecules/RadioGroup/components/radio-group-icon-card.js.map +1 -1
  90. package/dist/components/molecules/RadioGroup/components/radio-group-icon-simple.cjs +4 -2
  91. package/dist/components/molecules/RadioGroup/components/radio-group-icon-simple.cjs.map +1 -1
  92. package/dist/components/molecules/RadioGroup/components/radio-group-icon-simple.d.ts +3 -1
  93. package/dist/components/molecules/RadioGroup/components/radio-group-icon-simple.d.ts.map +1 -1
  94. package/dist/components/molecules/RadioGroup/components/radio-group-icon-simple.js +4 -2
  95. package/dist/components/molecules/RadioGroup/components/radio-group-icon-simple.js.map +1 -1
  96. package/dist/components/molecules/RadioGroup/components/radio-group-payment-icon.cjs +4 -2
  97. package/dist/components/molecules/RadioGroup/components/radio-group-payment-icon.cjs.map +1 -1
  98. package/dist/components/molecules/RadioGroup/components/radio-group-payment-icon.d.ts +3 -1
  99. package/dist/components/molecules/RadioGroup/components/radio-group-payment-icon.d.ts.map +1 -1
  100. package/dist/components/molecules/RadioGroup/components/radio-group-payment-icon.js +4 -2
  101. package/dist/components/molecules/RadioGroup/components/radio-group-payment-icon.js.map +1 -1
  102. package/dist/components/molecules/RadioGroup/components/radio-group-radio-button.cjs +4 -2
  103. package/dist/components/molecules/RadioGroup/components/radio-group-radio-button.cjs.map +1 -1
  104. package/dist/components/molecules/RadioGroup/components/radio-group-radio-button.d.ts +3 -1
  105. package/dist/components/molecules/RadioGroup/components/radio-group-radio-button.d.ts.map +1 -1
  106. package/dist/components/molecules/RadioGroup/components/radio-group-radio-button.js +4 -2
  107. package/dist/components/molecules/RadioGroup/components/radio-group-radio-button.js.map +1 -1
  108. package/dist/components/molecules/Select/components/multi-select.cjs +39 -4
  109. package/dist/components/molecules/Select/components/multi-select.cjs.map +1 -1
  110. package/dist/components/molecules/Select/components/multi-select.d.ts +3 -1
  111. package/dist/components/molecules/Select/components/multi-select.d.ts.map +1 -1
  112. package/dist/components/molecules/Select/components/multi-select.js +40 -5
  113. package/dist/components/molecules/Select/components/multi-select.js.map +1 -1
  114. package/dist/components/molecules/Select/components/select-item.cjs +6 -3
  115. package/dist/components/molecules/Select/components/select-item.cjs.map +1 -1
  116. package/dist/components/molecules/Select/components/select-item.d.ts +3 -1
  117. package/dist/components/molecules/Select/components/select-item.d.ts.map +1 -1
  118. package/dist/components/molecules/Select/components/select-item.js +6 -3
  119. package/dist/components/molecules/Select/components/select-item.js.map +1 -1
  120. package/dist/components/molecules/Select/components/select-shared.cjs.map +1 -1
  121. package/dist/components/molecules/Select/components/select-shared.d.ts +6 -0
  122. package/dist/components/molecules/Select/components/select-shared.d.ts.map +1 -1
  123. package/dist/components/molecules/Select/components/select-shared.js.map +1 -1
  124. package/dist/components/molecules/Select/index.cjs +8 -4
  125. package/dist/components/molecules/Select/index.cjs.map +1 -1
  126. package/dist/components/molecules/Select/index.d.ts +9 -1
  127. package/dist/components/molecules/Select/index.d.ts.map +1 -1
  128. package/dist/components/molecules/Select/index.js +7 -4
  129. package/dist/components/molecules/Select/index.js.map +1 -1
  130. package/dist/components/molecules/Tabs/index.cjs +24 -8
  131. package/dist/components/molecules/Tabs/index.cjs.map +1 -1
  132. package/dist/components/molecules/Tabs/index.d.ts +17 -7
  133. package/dist/components/molecules/Tabs/index.d.ts.map +1 -1
  134. package/dist/components/molecules/Tabs/index.js +24 -8
  135. package/dist/components/molecules/Tabs/index.js.map +1 -1
  136. package/dist/components/organisms/ActivityFeed/index.cjs +8 -2
  137. package/dist/components/organisms/ActivityFeed/index.cjs.map +1 -1
  138. package/dist/components/organisms/ActivityFeed/index.d.ts +3 -1
  139. package/dist/components/organisms/ActivityFeed/index.d.ts.map +1 -1
  140. package/dist/components/organisms/ActivityFeed/index.js +8 -2
  141. package/dist/components/organisms/ActivityFeed/index.js.map +1 -1
  142. package/dist/components/organisms/CommandMenu/components/command-menu-item.cjs +5 -1
  143. package/dist/components/organisms/CommandMenu/components/command-menu-item.cjs.map +1 -1
  144. package/dist/components/organisms/CommandMenu/components/command-menu-item.d.ts +2 -0
  145. package/dist/components/organisms/CommandMenu/components/command-menu-item.d.ts.map +1 -1
  146. package/dist/components/organisms/CommandMenu/components/command-menu-item.js +5 -1
  147. package/dist/components/organisms/CommandMenu/components/command-menu-item.js.map +1 -1
  148. package/dist/components/organisms/CommandMenu/index.cjs +6 -4
  149. package/dist/components/organisms/CommandMenu/index.cjs.map +1 -1
  150. package/dist/components/organisms/CommandMenu/index.d.ts +8 -2
  151. package/dist/components/organisms/CommandMenu/index.d.ts.map +1 -1
  152. package/dist/components/organisms/CommandMenu/index.js +6 -4
  153. package/dist/components/organisms/CommandMenu/index.js.map +1 -1
  154. package/dist/components/organisms/DatePicker/components/date-range-picker.d.ts +1 -2
  155. package/dist/components/organisms/DatePicker/components/date-range-picker.d.ts.map +1 -1
  156. package/dist/components/organisms/DatePicker/components/range-calendar.d.ts +1 -1
  157. package/dist/components/organisms/DatePicker/components/range-calendar.d.ts.map +1 -1
  158. package/dist/components/organisms/DatePicker/index.d.ts +2 -2
  159. package/dist/components/organisms/DatePicker/index.d.ts.map +1 -1
  160. package/dist/components/organisms/HeaderNavigation/components/mobile-header.cjs +3 -2
  161. package/dist/components/organisms/HeaderNavigation/components/mobile-header.cjs.map +1 -1
  162. package/dist/components/organisms/HeaderNavigation/components/mobile-header.d.ts +6 -1
  163. package/dist/components/organisms/HeaderNavigation/components/mobile-header.d.ts.map +1 -1
  164. package/dist/components/organisms/HeaderNavigation/components/mobile-header.js +3 -2
  165. package/dist/components/organisms/HeaderNavigation/components/mobile-header.js.map +1 -1
  166. package/dist/components/organisms/HeaderNavigation/components/nav-account-card.cjs +9 -6
  167. package/dist/components/organisms/HeaderNavigation/components/nav-account-card.cjs.map +1 -1
  168. package/dist/components/organisms/HeaderNavigation/components/nav-account-card.d.ts +10 -2
  169. package/dist/components/organisms/HeaderNavigation/components/nav-account-card.d.ts.map +1 -1
  170. package/dist/components/organisms/HeaderNavigation/components/nav-account-card.js +9 -6
  171. package/dist/components/organisms/HeaderNavigation/components/nav-account-card.js.map +1 -1
  172. package/dist/components/organisms/HeaderNavigation/components/nav-button.cjs +2 -2
  173. package/dist/components/organisms/HeaderNavigation/components/nav-button.cjs.map +1 -1
  174. package/dist/components/organisms/HeaderNavigation/components/nav-button.d.ts +3 -1
  175. package/dist/components/organisms/HeaderNavigation/components/nav-button.d.ts.map +1 -1
  176. package/dist/components/organisms/HeaderNavigation/components/nav-button.js +2 -2
  177. package/dist/components/organisms/HeaderNavigation/components/nav-button.js.map +1 -1
  178. package/dist/components/organisms/HeaderNavigation/components/nav-item.cjs +4 -4
  179. package/dist/components/organisms/HeaderNavigation/components/nav-item.cjs.map +1 -1
  180. package/dist/components/organisms/HeaderNavigation/components/nav-item.d.ts +3 -1
  181. package/dist/components/organisms/HeaderNavigation/components/nav-item.d.ts.map +1 -1
  182. package/dist/components/organisms/HeaderNavigation/components/nav-item.js +4 -4
  183. package/dist/components/organisms/HeaderNavigation/components/nav-item.js.map +1 -1
  184. package/dist/components/organisms/HeaderNavigation/components/nav-list.cjs +9 -3
  185. package/dist/components/organisms/HeaderNavigation/components/nav-list.cjs.map +1 -1
  186. package/dist/components/organisms/HeaderNavigation/components/nav-list.d.ts +3 -1
  187. package/dist/components/organisms/HeaderNavigation/components/nav-list.d.ts.map +1 -1
  188. package/dist/components/organisms/HeaderNavigation/components/nav-list.js +9 -3
  189. package/dist/components/organisms/HeaderNavigation/components/nav-list.js.map +1 -1
  190. package/dist/components/organisms/HeaderNavigation/headerNavigation.types.d.ts +17 -8
  191. package/dist/components/organisms/HeaderNavigation/headerNavigation.types.d.ts.map +1 -1
  192. package/dist/components/organisms/HeaderNavigation/index.cjs +9 -2
  193. package/dist/components/organisms/HeaderNavigation/index.cjs.map +1 -1
  194. package/dist/components/organisms/HeaderNavigation/index.d.ts +10 -1
  195. package/dist/components/organisms/HeaderNavigation/index.d.ts.map +1 -1
  196. package/dist/components/organisms/HeaderNavigation/index.js +10 -3
  197. package/dist/components/organisms/HeaderNavigation/index.js.map +1 -1
  198. package/dist/components/organisms/SidebarNavigation/components/mobile-header.cjs +2 -2
  199. package/dist/components/organisms/SidebarNavigation/components/mobile-header.cjs.map +1 -1
  200. package/dist/components/organisms/SidebarNavigation/components/mobile-header.d.ts +8 -2
  201. package/dist/components/organisms/SidebarNavigation/components/mobile-header.d.ts.map +1 -1
  202. package/dist/components/organisms/SidebarNavigation/components/mobile-header.js +2 -2
  203. package/dist/components/organisms/SidebarNavigation/components/mobile-header.js.map +1 -1
  204. package/dist/components/organisms/SidebarNavigation/components/nav-account-card.cjs +15 -5
  205. package/dist/components/organisms/SidebarNavigation/components/nav-account-card.cjs.map +1 -1
  206. package/dist/components/organisms/SidebarNavigation/components/nav-account-card.d.ts +12 -2
  207. package/dist/components/organisms/SidebarNavigation/components/nav-account-card.d.ts.map +1 -1
  208. package/dist/components/organisms/SidebarNavigation/components/nav-account-card.js +15 -5
  209. package/dist/components/organisms/SidebarNavigation/components/nav-account-card.js.map +1 -1
  210. package/dist/components/organisms/SidebarNavigation/components/nav-button.cjs +2 -2
  211. package/dist/components/organisms/SidebarNavigation/components/nav-button.cjs.map +1 -1
  212. package/dist/components/organisms/SidebarNavigation/components/nav-button.d.ts +3 -1
  213. package/dist/components/organisms/SidebarNavigation/components/nav-button.d.ts.map +1 -1
  214. package/dist/components/organisms/SidebarNavigation/components/nav-button.js +2 -2
  215. package/dist/components/organisms/SidebarNavigation/components/nav-button.js.map +1 -1
  216. package/dist/components/organisms/SidebarNavigation/components/nav-item.cjs +4 -4
  217. package/dist/components/organisms/SidebarNavigation/components/nav-item.cjs.map +1 -1
  218. package/dist/components/organisms/SidebarNavigation/components/nav-item.d.ts +3 -1
  219. package/dist/components/organisms/SidebarNavigation/components/nav-item.d.ts.map +1 -1
  220. package/dist/components/organisms/SidebarNavigation/components/nav-item.js +4 -4
  221. package/dist/components/organisms/SidebarNavigation/components/nav-item.js.map +1 -1
  222. package/dist/components/organisms/SidebarNavigation/components/nav-list.cjs +9 -3
  223. package/dist/components/organisms/SidebarNavigation/components/nav-list.cjs.map +1 -1
  224. package/dist/components/organisms/SidebarNavigation/components/nav-list.d.ts +3 -1
  225. package/dist/components/organisms/SidebarNavigation/components/nav-list.d.ts.map +1 -1
  226. package/dist/components/organisms/SidebarNavigation/components/nav-list.js +9 -3
  227. package/dist/components/organisms/SidebarNavigation/components/nav-list.js.map +1 -1
  228. package/dist/components/organisms/SidebarNavigation/components/sidebar-menu-button.cjs +1 -1
  229. package/dist/components/organisms/SidebarNavigation/components/sidebar-menu-button.cjs.map +1 -1
  230. package/dist/components/organisms/SidebarNavigation/components/sidebar-menu-button.d.ts +3 -1
  231. package/dist/components/organisms/SidebarNavigation/components/sidebar-menu-button.d.ts.map +1 -1
  232. package/dist/components/organisms/SidebarNavigation/components/sidebar-menu-button.js +1 -1
  233. package/dist/components/organisms/SidebarNavigation/components/sidebar-menu-button.js.map +1 -1
  234. package/dist/components/organisms/SidebarNavigation/index.cjs +10 -6
  235. package/dist/components/organisms/SidebarNavigation/index.cjs.map +1 -1
  236. package/dist/components/organisms/SidebarNavigation/index.d.ts +7 -1
  237. package/dist/components/organisms/SidebarNavigation/index.d.ts.map +1 -1
  238. package/dist/components/organisms/SidebarNavigation/index.js +11 -7
  239. package/dist/components/organisms/SidebarNavigation/index.js.map +1 -1
  240. package/dist/components/organisms/SidebarNavigation/sidebarNavigation.types.d.ts +21 -8
  241. package/dist/components/organisms/SidebarNavigation/sidebarNavigation.types.d.ts.map +1 -1
  242. package/dist/components/organisms/Table/index.cjs +13 -8
  243. package/dist/components/organisms/Table/index.cjs.map +1 -1
  244. package/dist/components/organisms/Table/index.d.ts +17 -3
  245. package/dist/components/organisms/Table/index.d.ts.map +1 -1
  246. package/dist/components/organisms/Table/index.js +13 -8
  247. package/dist/components/organisms/Table/index.js.map +1 -1
  248. package/dist/utilities/testIdUtils/index.cjs +70 -0
  249. package/dist/utilities/testIdUtils/index.cjs.map +1 -0
  250. package/dist/utilities/testIdUtils/index.d.ts +57 -0
  251. package/dist/utilities/testIdUtils/index.d.ts.map +1 -0
  252. package/dist/utilities/testIdUtils/index.js +58 -0
  253. package/dist/utilities/testIdUtils/index.js.map +1 -0
  254. package/package.json +1 -1
  255. package/dist/components/molecules/MultiSelect/index.cjs +0 -8
  256. package/dist/components/molecules/MultiSelect/index.cjs.map +0 -1
  257. package/dist/components/molecules/MultiSelect/index.d.ts +0 -8
  258. package/dist/components/molecules/MultiSelect/index.d.ts.map +0 -1
  259. package/dist/components/molecules/MultiSelect/index.js +0 -2
  260. package/dist/components/molecules/MultiSelect/index.js.map +0 -1
@@ -5,9 +5,9 @@ var Tooltip = require('@flipdish/ui-library/components/atoms/Tooltip');
5
5
  var cx = require('@flipdish/ui-library/utilities/cx');
6
6
  var reactAriaComponents = require('react-aria-components');
7
7
 
8
- const NavButton = ({ current, label, href, icon: Icon, className, tooltipPlacement = 'right', onClick, children }) => {
8
+ const NavButton = ({ current, label, href, icon: Icon, className, tooltipPlacement = 'right', onClick, children, 'data-testid': dataTestId, }) => {
9
9
  const iconOnly = !children;
10
- return (jsxRuntime.jsx(Tooltip.Tooltip, { isDisabled: !label, title: label, placement: tooltipPlacement, children: jsxRuntime.jsx(reactAriaComponents.Pressable, { children: jsxRuntime.jsxs("a", { href: href, "aria-label": label, onClick: onClick, className: cx.cx('group/item relative flex w-full cursor-pointer items-center justify-center gap-1 rounded-md bg-primary outline-focus-ring transition duration-100 ease-linear select-none hover:bg-primary_hover focus-visible:z-10 focus-visible:outline-2 focus-visible:outline-offset-2', current && 'bg-secondary hover:bg-secondary_hover', iconOnly ? 'size-9' : 'px-2 py-1.5', className), children: [Icon && (jsxRuntime.jsx(Icon, { "aria-hidden": "true", className: cx.cx('size-5 shrink-0 text-fg-quaternary transition-inherit-all group-hover/item:text-fg-quaternary_hover', current && 'text-fg-quaternary_hover') })), children && (jsxRuntime.jsx("span", { className: cx.cx('px-0.5 text-sm font-semibold transition duration-100 ease-linear group-hover/item:text-secondary_hover', current && 'text-secondary_hover'), children: children }))] }) }) }));
10
+ return (jsxRuntime.jsx(Tooltip.Tooltip, { isDisabled: !label, title: label, placement: tooltipPlacement, children: jsxRuntime.jsx(reactAriaComponents.Pressable, { children: jsxRuntime.jsxs("a", { href: href, "data-testid": dataTestId, "aria-label": label, onClick: onClick, className: cx.cx('group/item relative flex w-full cursor-pointer items-center justify-center gap-1 rounded-md bg-primary outline-focus-ring transition duration-100 ease-linear select-none hover:bg-primary_hover focus-visible:z-10 focus-visible:outline-2 focus-visible:outline-offset-2', current && 'bg-secondary hover:bg-secondary_hover', iconOnly ? 'size-9' : 'px-2 py-1.5', className), children: [Icon && (jsxRuntime.jsx(Icon, { "aria-hidden": "true", className: cx.cx('size-5 shrink-0 text-fg-quaternary transition-inherit-all group-hover/item:text-fg-quaternary_hover', current && 'text-fg-quaternary_hover') })), children && (jsxRuntime.jsx("span", { className: cx.cx('px-0.5 text-sm font-semibold transition duration-100 ease-linear group-hover/item:text-secondary_hover', current && 'text-secondary_hover'), children: children }))] }) }) }));
11
11
  };
12
12
 
13
13
  exports.NavButton = NavButton;
@@ -1 +1 @@
1
- {"version":3,"file":"nav-button.cjs","sources":["../../../../../src/components/organisms/HeaderNavigation/components/nav-button.tsx"],"sourcesContent":[null],"names":["_jsx","Tooltip","Pressable","_jsxs","cx"],"mappings":";;;;;;;AA4BO,MAAM,SAAS,GAAG,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,gBAAgB,GAAG,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAkB,KAAI;AAC1I,IAAA,MAAM,QAAQ,GAAG,CAAC,QAAQ;IAE1B,QACEA,eAACC,eAAO,EAAA,EAAC,UAAU,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,gBAAgB,YACpED,cAAA,CAACE,6BAAS,EAAA,EAAA,QAAA,EACRC,eAAA,CAAA,GAAA,EAAA,EACE,IAAI,EAAE,IAAI,EAAA,YAAA,EACE,KAAK,EACjB,OAAO,EAAE,OAAO,EAChB,SAAS,EAAEC,KAAE,CACX,4QAA4Q,EAC5Q,OAAO,IAAI,uCAAuC,EAClD,QAAQ,GAAG,QAAQ,GAAG,aAAa,EACnC,SAAS,CACV,EAAA,QAAA,EAAA,CAEA,IAAI,KACHJ,eAAC,IAAI,EAAA,EAAA,aAAA,EACS,MAAM,EAClB,SAAS,EAAEI,KAAE,CACX,qGAAqG,EACrG,OAAO,IAAI,0BAA0B,CACtC,EAAA,CACD,CACH,EAEA,QAAQ,KACPJ,cAAA,CAAA,MAAA,EAAA,EACE,SAAS,EAAEI,KAAE,CACX,wGAAwG,EACxG,OAAO,IAAI,sBAAsB,CAClC,YAEA,QAAQ,EAAA,CACJ,CACR,CAAA,EAAA,CACC,EAAA,CACM,EAAA,CACJ;AAEd;;;;"}
1
+ {"version":3,"file":"nav-button.cjs","sources":["../../../../../src/components/organisms/HeaderNavigation/components/nav-button.tsx"],"sourcesContent":[null],"names":["_jsx","Tooltip","Pressable","_jsxs","cx"],"mappings":";;;;;;;AA8BO,MAAM,SAAS,GAAG,CAAC,EACxB,OAAO,EACP,KAAK,EACL,IAAI,EACJ,IAAI,EAAE,IAAI,EACV,SAAS,EACT,gBAAgB,GAAG,OAAO,EAC1B,OAAO,EACP,QAAQ,EACR,aAAa,EAAE,UAAU,GACV,KAAI;AACnB,IAAA,MAAM,QAAQ,GAAG,CAAC,QAAQ;IAE1B,QACEA,eAACC,eAAO,EAAA,EAAC,UAAU,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,gBAAgB,YACpED,cAAA,CAACE,6BAAS,EAAA,EAAA,QAAA,EACRC,eAAA,CAAA,GAAA,EAAA,EACE,IAAI,EAAE,IAAI,EAAA,aAAA,EACG,UAAU,gBACX,KAAK,EACjB,OAAO,EAAE,OAAO,EAChB,SAAS,EAAEC,KAAE,CACX,4QAA4Q,EAC5Q,OAAO,IAAI,uCAAuC,EAClD,QAAQ,GAAG,QAAQ,GAAG,aAAa,EACnC,SAAS,CACV,aAEA,IAAI,KACHJ,cAAA,CAAC,IAAI,EAAA,EAAA,aAAA,EACS,MAAM,EAClB,SAAS,EAAEI,KAAE,CACX,qGAAqG,EACrG,OAAO,IAAI,0BAA0B,CACtC,EAAA,CACD,CACH,EAEA,QAAQ,KACPJ,cAAA,CAAA,MAAA,EAAA,EACE,SAAS,EAAEI,KAAE,CACX,wGAAwG,EACxG,OAAO,IAAI,sBAAsB,CAClC,YAEA,QAAQ,EAAA,CACJ,CACR,CAAA,EAAA,CACC,EAAA,CACM,EAAA,CACJ;AAEd;;;;"}
@@ -18,9 +18,11 @@ interface NavButtonProps {
18
18
  className?: string;
19
19
  /** Placement of the tooltip. */
20
20
  tooltipPlacement?: 'top' | 'right' | 'bottom' | 'left';
21
+ /** Test id applied to the rendered anchor. */
22
+ 'data-testid'?: string;
21
23
  /** Content to display. */
22
24
  children?: ReactNode;
23
25
  }
24
- export declare const NavButton: ({ current, label, href, icon: Icon, className, tooltipPlacement, onClick, children }: NavButtonProps) => import("react").JSX.Element;
26
+ export declare const NavButton: ({ current, label, href, icon: Icon, className, tooltipPlacement, onClick, children, "data-testid": dataTestId, }: NavButtonProps) => import("react").JSX.Element;
25
27
  export {};
26
28
  //# sourceMappingURL=nav-button.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"nav-button.d.ts","sourceRoot":"","sources":["../../../../../src/components/organisms/HeaderNavigation/components/nav-button.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,EAAE,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAG9D,UAAU,cAAc;IACtB,gDAAgD;IAChD,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,qDAAqD;IACrD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,iCAAiC;IACjC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,iCAAiC;IACjC,IAAI,CAAC,EAAE,EAAE,CAAC;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAClC,8CAA8C;IAC9C,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,gCAAgC;IAChC,OAAO,CAAC,EAAE,iBAAiB,CAAC;IAC5B,qDAAqD;IACrD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gCAAgC;IAChC,gBAAgB,CAAC,EAAE,KAAK,GAAG,OAAO,GAAG,QAAQ,GAAG,MAAM,CAAC;IACvD,0BAA0B;IAC1B,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB;AAED,eAAO,MAAM,SAAS,GAAI,sFAAgG,cAAc,gCAyCvI,CAAC"}
1
+ {"version":3,"file":"nav-button.d.ts","sourceRoot":"","sources":["../../../../../src/components/organisms/HeaderNavigation/components/nav-button.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,EAAE,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAG9D,UAAU,cAAc;IACtB,gDAAgD;IAChD,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,qDAAqD;IACrD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,iCAAiC;IACjC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,iCAAiC;IACjC,IAAI,CAAC,EAAE,EAAE,CAAC;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAClC,8CAA8C;IAC9C,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,gCAAgC;IAChC,OAAO,CAAC,EAAE,iBAAiB,CAAC;IAC5B,qDAAqD;IACrD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gCAAgC;IAChC,gBAAgB,CAAC,EAAE,KAAK,GAAG,OAAO,GAAG,QAAQ,GAAG,MAAM,CAAC;IACvD,8CAA8C;IAC9C,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,0BAA0B;IAC1B,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB;AAED,eAAO,MAAM,SAAS,GAAI,kHAUvB,cAAc,gCA0ChB,CAAC"}
@@ -3,9 +3,9 @@ import { Tooltip } from '@flipdish/ui-library/components/atoms/Tooltip';
3
3
  import { cx } from '@flipdish/ui-library/utilities/cx';
4
4
  import { Pressable } from 'react-aria-components';
5
5
 
6
- const NavButton = ({ current, label, href, icon: Icon, className, tooltipPlacement = 'right', onClick, children }) => {
6
+ const NavButton = ({ current, label, href, icon: Icon, className, tooltipPlacement = 'right', onClick, children, 'data-testid': dataTestId, }) => {
7
7
  const iconOnly = !children;
8
- return (jsx(Tooltip, { isDisabled: !label, title: label, placement: tooltipPlacement, children: jsx(Pressable, { children: jsxs("a", { href: href, "aria-label": label, onClick: onClick, className: cx('group/item relative flex w-full cursor-pointer items-center justify-center gap-1 rounded-md bg-primary outline-focus-ring transition duration-100 ease-linear select-none hover:bg-primary_hover focus-visible:z-10 focus-visible:outline-2 focus-visible:outline-offset-2', current && 'bg-secondary hover:bg-secondary_hover', iconOnly ? 'size-9' : 'px-2 py-1.5', className), children: [Icon && (jsx(Icon, { "aria-hidden": "true", className: cx('size-5 shrink-0 text-fg-quaternary transition-inherit-all group-hover/item:text-fg-quaternary_hover', current && 'text-fg-quaternary_hover') })), children && (jsx("span", { className: cx('px-0.5 text-sm font-semibold transition duration-100 ease-linear group-hover/item:text-secondary_hover', current && 'text-secondary_hover'), children: children }))] }) }) }));
8
+ return (jsx(Tooltip, { isDisabled: !label, title: label, placement: tooltipPlacement, children: jsx(Pressable, { children: jsxs("a", { href: href, "data-testid": dataTestId, "aria-label": label, onClick: onClick, className: cx('group/item relative flex w-full cursor-pointer items-center justify-center gap-1 rounded-md bg-primary outline-focus-ring transition duration-100 ease-linear select-none hover:bg-primary_hover focus-visible:z-10 focus-visible:outline-2 focus-visible:outline-offset-2', current && 'bg-secondary hover:bg-secondary_hover', iconOnly ? 'size-9' : 'px-2 py-1.5', className), children: [Icon && (jsx(Icon, { "aria-hidden": "true", className: cx('size-5 shrink-0 text-fg-quaternary transition-inherit-all group-hover/item:text-fg-quaternary_hover', current && 'text-fg-quaternary_hover') })), children && (jsx("span", { className: cx('px-0.5 text-sm font-semibold transition duration-100 ease-linear group-hover/item:text-secondary_hover', current && 'text-secondary_hover'), children: children }))] }) }) }));
9
9
  };
10
10
 
11
11
  export { NavButton };
@@ -1 +1 @@
1
- {"version":3,"file":"nav-button.js","sources":["../../../../../src/components/organisms/HeaderNavigation/components/nav-button.tsx"],"sourcesContent":[null],"names":["_jsx","_jsxs"],"mappings":";;;;;AA4BO,MAAM,SAAS,GAAG,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,gBAAgB,GAAG,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAkB,KAAI;AAC1I,IAAA,MAAM,QAAQ,GAAG,CAAC,QAAQ;IAE1B,QACEA,IAAC,OAAO,EAAA,EAAC,UAAU,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,gBAAgB,YACpEA,GAAA,CAAC,SAAS,EAAA,EAAA,QAAA,EACRC,IAAA,CAAA,GAAA,EAAA,EACE,IAAI,EAAE,IAAI,EAAA,YAAA,EACE,KAAK,EACjB,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,EAAE,CACX,4QAA4Q,EAC5Q,OAAO,IAAI,uCAAuC,EAClD,QAAQ,GAAG,QAAQ,GAAG,aAAa,EACnC,SAAS,CACV,EAAA,QAAA,EAAA,CAEA,IAAI,KACHD,IAAC,IAAI,EAAA,EAAA,aAAA,EACS,MAAM,EAClB,SAAS,EAAE,EAAE,CACX,qGAAqG,EACrG,OAAO,IAAI,0BAA0B,CACtC,EAAA,CACD,CACH,EAEA,QAAQ,KACPA,GAAA,CAAA,MAAA,EAAA,EACE,SAAS,EAAE,EAAE,CACX,wGAAwG,EACxG,OAAO,IAAI,sBAAsB,CAClC,YAEA,QAAQ,EAAA,CACJ,CACR,CAAA,EAAA,CACC,EAAA,CACM,EAAA,CACJ;AAEd;;;;"}
1
+ {"version":3,"file":"nav-button.js","sources":["../../../../../src/components/organisms/HeaderNavigation/components/nav-button.tsx"],"sourcesContent":[null],"names":["_jsx","_jsxs"],"mappings":";;;;;AA8BO,MAAM,SAAS,GAAG,CAAC,EACxB,OAAO,EACP,KAAK,EACL,IAAI,EACJ,IAAI,EAAE,IAAI,EACV,SAAS,EACT,gBAAgB,GAAG,OAAO,EAC1B,OAAO,EACP,QAAQ,EACR,aAAa,EAAE,UAAU,GACV,KAAI;AACnB,IAAA,MAAM,QAAQ,GAAG,CAAC,QAAQ;IAE1B,QACEA,IAAC,OAAO,EAAA,EAAC,UAAU,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,gBAAgB,YACpEA,GAAA,CAAC,SAAS,EAAA,EAAA,QAAA,EACRC,IAAA,CAAA,GAAA,EAAA,EACE,IAAI,EAAE,IAAI,EAAA,aAAA,EACG,UAAU,gBACX,KAAK,EACjB,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,EAAE,CACX,4QAA4Q,EAC5Q,OAAO,IAAI,uCAAuC,EAClD,QAAQ,GAAG,QAAQ,GAAG,aAAa,EACnC,SAAS,CACV,aAEA,IAAI,KACHD,GAAA,CAAC,IAAI,EAAA,EAAA,aAAA,EACS,MAAM,EAClB,SAAS,EAAE,EAAE,CACX,qGAAqG,EACrG,OAAO,IAAI,0BAA0B,CACtC,EAAA,CACD,CACH,EAEA,QAAQ,KACPA,GAAA,CAAA,MAAA,EAAA,EACE,SAAS,EAAE,EAAE,CACX,wGAAwG,EACxG,OAAO,IAAI,sBAAsB,CAClC,YAEA,QAAQ,EAAA,CACJ,CACR,CAAA,EAAA,CACC,EAAA,CACM,EAAA,CACJ;AAEd;;;;"}
@@ -10,7 +10,7 @@ const styles = cx.sortCx({
10
10
  root: 'group relative flex max-h-9 w-full cursor-pointer items-center rounded-md bg-primary outline-focus-ring transition duration-100 ease-linear select-none hover:bg-primary_hover focus-visible:z-10 focus-visible:outline-2 focus-visible:outline-offset-2',
11
11
  rootSelected: 'bg-secondary hover:bg-secondary_hover',
12
12
  });
13
- const NavItemBase = ({ current, type, badge, href, icon: Icon, children, truncate = true, onClick }) => {
13
+ const NavItemBase = ({ current, type, badge, href, icon: Icon, children, truncate = true, onClick, 'data-testid': dataTestId, }) => {
14
14
  const iconElement = Icon && (jsxRuntime.jsx(Icon, { "aria-hidden": "true", className: cx.cx('mr-2 size-5 shrink-0 text-fg-quaternary transition-inherit-all group-hover/item:text-fg-quaternary_hover', current && 'text-fg-quaternary_hover') }));
15
15
  const badgeElement = badge && (typeof badge === 'string' || typeof badge === 'number') ? (jsxRuntime.jsx(Badge.Badge, { className: "ml-3", color: "gray", type: "pill-color", size: "sm", children: badge })) : (badge);
16
16
  const labelElement = (jsxRuntime.jsx("span", { className: cx.cx('flex-1 text-sm font-semibold text-secondary transition-inherit-all group-hover/item:text-secondary_hover', truncate && 'truncate', current && 'text-secondary_hover'), children: children }));
@@ -19,12 +19,12 @@ const NavItemBase = ({ current, type, badge, href, icon: Icon, children, truncat
19
19
  if (type === 'collapsible') {
20
20
  return (
21
21
  // biome-ignore lint/a11y/noStaticElementInteractions: This is a summary element
22
- jsxRuntime.jsxs("summary", { className: cx.cx('p-2', styles.root, current && styles.rootSelected), onClick: onClick, children: [iconElement, labelElement, badgeElement, jsxRuntime.jsx(uiIcons.ChevronDown, { "aria-hidden": "true", className: "ml-3 size-4 shrink-0 stroke-[2.5px] text-fg-quaternary in-open:-scale-y-100" })] }));
22
+ jsxRuntime.jsxs("summary", { "data-testid": dataTestId, className: cx.cx('p-2', styles.root, current && styles.rootSelected), onClick: onClick, children: [iconElement, labelElement, badgeElement, jsxRuntime.jsx(uiIcons.ChevronDown, { "aria-hidden": "true", className: "ml-3 size-4 shrink-0 stroke-[2.5px] text-fg-quaternary in-open:-scale-y-100" })] }));
23
23
  }
24
24
  if (type === 'collapsible-child') {
25
- return (jsxRuntime.jsxs(reactAriaComponents.Link, { href: href, target: isExternal ? '_blank' : '_self', rel: "noopener noreferrer", className: cx.cx('py-2 pr-3 pl-10', styles.root, current && styles.rootSelected), onClick: onClick, "aria-current": current ? 'page' : undefined, children: [labelElement, externalIcon, badgeElement] }));
25
+ return (jsxRuntime.jsxs(reactAriaComponents.Link, { href: href, "data-testid": dataTestId, target: isExternal ? '_blank' : '_self', rel: "noopener noreferrer", className: cx.cx('py-2 pr-3 pl-10', styles.root, current && styles.rootSelected), onClick: onClick, "aria-current": current ? 'page' : undefined, children: [labelElement, externalIcon, badgeElement] }));
26
26
  }
27
- return (jsxRuntime.jsxs(reactAriaComponents.Link, { href: href, target: isExternal ? '_blank' : '_self', rel: "noopener noreferrer", className: cx.cx('group/item p-2', styles.root, current && styles.rootSelected), onClick: onClick, "aria-current": current ? 'page' : undefined, children: [iconElement, labelElement, externalIcon, badgeElement] }));
27
+ return (jsxRuntime.jsxs(reactAriaComponents.Link, { href: href, "data-testid": dataTestId, target: isExternal ? '_blank' : '_self', rel: "noopener noreferrer", className: cx.cx('group/item p-2', styles.root, current && styles.rootSelected), onClick: onClick, "aria-current": current ? 'page' : undefined, children: [iconElement, labelElement, externalIcon, badgeElement] }));
28
28
  };
29
29
 
30
30
  exports.NavItemBase = NavItemBase;
@@ -1 +1 @@
1
- {"version":3,"file":"nav-item.cjs","sources":["../../../../../src/components/organisms/HeaderNavigation/components/nav-item.tsx"],"sourcesContent":[null],"names":["sortCx","_jsx","cx","Badge","Share04","_jsxs","ChevronDown","AriaLink"],"mappings":";;;;;;;;AAQA,MAAM,MAAM,GAAGA,SAAM,CAAC;AACpB,IAAA,IAAI,EAAE,0PAA0P;AAChQ,IAAA,YAAY,EAAE,uCAAuC;AACtD,CAAA,CAAC;AAyBK,MAAM,WAAW,GAAG,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI,EAAE,OAAO,EAAoB,KAAI;IAC9H,MAAM,WAAW,GAAG,IAAI,KACtBC,cAAA,CAAC,IAAI,EAAA,EAAA,aAAA,EACS,MAAM,EAClB,SAAS,EAAEC,KAAE,CACX,0GAA0G,EAC1G,OAAO,IAAI,0BAA0B,CACtC,EAAA,CACD,CACH;IAED,MAAM,YAAY,GAChB,KAAK,KAAK,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,KAAK,KAAK,QAAQ,CAAC,IAC/DD,cAAA,CAACE,WAAK,EAAA,EAAC,SAAS,EAAC,MAAM,EAAC,KAAK,EAAC,MAAM,EAAC,IAAI,EAAC,YAAY,EAAC,IAAI,EAAC,IAAI,EAAA,QAAA,EAC7D,KAAK,GACA,KAER,KAAK,CACN;IAEH,MAAM,YAAY,IAChBF,cAAA,CAAA,MAAA,EAAA,EACE,SAAS,EAAEC,KAAE,CACX,0GAA0G,EAC1G,QAAQ,IAAI,UAAU,EACtB,OAAO,IAAI,sBAAsB,CAClC,EAAA,QAAA,EAEA,QAAQ,EAAA,CACJ,CACR;IAED,MAAM,UAAU,GAAG,IAAI,EAAE,UAAU,CAAC,MAAM,CAAC;IAC3C,MAAM,YAAY,GAAG,UAAU,IAAID,cAAA,CAACG,eAAO,EAAA,EAAC,SAAS,EAAC,0CAA0C,EAAA,CAAG;AAEnG,IAAA,IAAI,IAAI,KAAK,aAAa,EAAE;QAC1B;;AAEE,QAAAC,eAAA,CAAA,SAAA,EAAA,EAAS,SAAS,EAAEH,KAAE,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,EAAE,OAAO,IAAI,MAAM,CAAC,YAAY,CAAC,EAAE,OAAO,EAAE,OAAO,EAAA,QAAA,EAAA,CACzF,WAAW,EAEX,YAAY,EAEZ,YAAY,EAEbD,cAAA,CAACK,mBAAW,EAAA,EAAA,aAAA,EAAa,MAAM,EAAC,SAAS,EAAC,6EAA6E,EAAA,CAAG,CAAA,EAAA,CAClH;IAEd;AAEA,IAAA,IAAI,IAAI,KAAK,mBAAmB,EAAE;AAChC,QAAA,QACED,eAAA,CAACE,wBAAQ,EAAA,EACP,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,UAAU,GAAG,QAAQ,GAAG,OAAO,EACvC,GAAG,EAAC,qBAAqB,EACzB,SAAS,EAAEL,KAAE,CAAC,iBAAiB,EAAE,MAAM,CAAC,IAAI,EAAE,OAAO,IAAI,MAAM,CAAC,YAAY,CAAC,EAC7E,OAAO,EAAE,OAAO,EAAA,cAAA,EACF,OAAO,GAAG,MAAM,GAAG,SAAS,EAAA,QAAA,EAAA,CAEzC,YAAY,EACZ,YAAY,EACZ,YAAY,CAAA,EAAA,CACJ;IAEf;AAEA,IAAA,QACEG,eAAA,CAACE,wBAAQ,EAAA,EACP,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,UAAU,GAAG,QAAQ,GAAG,OAAO,EACvC,GAAG,EAAC,qBAAqB,EACzB,SAAS,EAAEL,KAAE,CAAC,gBAAgB,EAAE,MAAM,CAAC,IAAI,EAAE,OAAO,IAAI,MAAM,CAAC,YAAY,CAAC,EAC5E,OAAO,EAAE,OAAO,EAAA,cAAA,EACF,OAAO,GAAG,MAAM,GAAG,SAAS,EAAA,QAAA,EAAA,CAEzC,WAAW,EACX,YAAY,EACZ,YAAY,EACZ,YAAY,CAAA,EAAA,CACJ;AAEf;;;;"}
1
+ {"version":3,"file":"nav-item.cjs","sources":["../../../../../src/components/organisms/HeaderNavigation/components/nav-item.tsx"],"sourcesContent":[null],"names":["sortCx","_jsx","cx","Badge","Share04","_jsxs","ChevronDown","AriaLink"],"mappings":"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"}
@@ -18,9 +18,11 @@ interface NavItemBaseProps {
18
18
  truncate?: boolean;
19
19
  /** Handler for click events. */
20
20
  onClick?: MouseEventHandler;
21
+ /** Test id applied to the rendered element. */
22
+ 'data-testid'?: string;
21
23
  /** Content to display. */
22
24
  children?: ReactNode;
23
25
  }
24
- export declare const NavItemBase: ({ current, type, badge, href, icon: Icon, children, truncate, onClick }: NavItemBaseProps) => import("react").JSX.Element;
26
+ export declare const NavItemBase: ({ current, type, badge, href, icon: Icon, children, truncate, onClick, "data-testid": dataTestId, }: NavItemBaseProps) => import("react").JSX.Element;
25
27
  export {};
26
28
  //# sourceMappingURL=nav-item.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"nav-item.d.ts","sourceRoot":"","sources":["../../../../../src/components/organisms/HeaderNavigation/components/nav-item.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,EAAE,EAAE,cAAc,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAQ9E,UAAU,gBAAgB;IACxB,+CAA+C;IAC/C,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,gDAAgD;IAChD,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,uDAAuD;IACvD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,4BAA4B;IAC5B,IAAI,EAAE,MAAM,GAAG,aAAa,GAAG,mBAAmB,CAAC;IACnD,iCAAiC;IACjC,IAAI,CAAC,EAAE,EAAE,CAAC,cAAc,CAAC,gBAAgB,CAAC,CAAC,CAAC;IAC5C,wBAAwB;IACxB,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,gDAAgD;IAChD,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,0CAA0C;IAC1C,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,gCAAgC;IAChC,OAAO,CAAC,EAAE,iBAAiB,CAAC;IAC5B,0BAA0B;IAC1B,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB;AAED,eAAO,MAAM,WAAW,GAAI,yEAAgF,gBAAgB,gCAkF3H,CAAC"}
1
+ {"version":3,"file":"nav-item.d.ts","sourceRoot":"","sources":["../../../../../src/components/organisms/HeaderNavigation/components/nav-item.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,EAAE,EAAE,cAAc,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAQ9E,UAAU,gBAAgB;IACxB,+CAA+C;IAC/C,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,gDAAgD;IAChD,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,uDAAuD;IACvD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,4BAA4B;IAC5B,IAAI,EAAE,MAAM,GAAG,aAAa,GAAG,mBAAmB,CAAC;IACnD,iCAAiC;IACjC,IAAI,CAAC,EAAE,EAAE,CAAC,cAAc,CAAC,gBAAgB,CAAC,CAAC,CAAC;IAC5C,wBAAwB;IACxB,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,gDAAgD;IAChD,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,0CAA0C;IAC1C,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,gCAAgC;IAChC,OAAO,CAAC,EAAE,iBAAiB,CAAC;IAC5B,+CAA+C;IAC/C,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,0BAA0B;IAC1B,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB;AAED,eAAO,MAAM,WAAW,GAAI,qGAUzB,gBAAgB,gCAoFlB,CAAC"}
@@ -8,7 +8,7 @@ const styles = sortCx({
8
8
  root: 'group relative flex max-h-9 w-full cursor-pointer items-center rounded-md bg-primary outline-focus-ring transition duration-100 ease-linear select-none hover:bg-primary_hover focus-visible:z-10 focus-visible:outline-2 focus-visible:outline-offset-2',
9
9
  rootSelected: 'bg-secondary hover:bg-secondary_hover',
10
10
  });
11
- const NavItemBase = ({ current, type, badge, href, icon: Icon, children, truncate = true, onClick }) => {
11
+ const NavItemBase = ({ current, type, badge, href, icon: Icon, children, truncate = true, onClick, 'data-testid': dataTestId, }) => {
12
12
  const iconElement = Icon && (jsx(Icon, { "aria-hidden": "true", className: cx('mr-2 size-5 shrink-0 text-fg-quaternary transition-inherit-all group-hover/item:text-fg-quaternary_hover', current && 'text-fg-quaternary_hover') }));
13
13
  const badgeElement = badge && (typeof badge === 'string' || typeof badge === 'number') ? (jsx(Badge, { className: "ml-3", color: "gray", type: "pill-color", size: "sm", children: badge })) : (badge);
14
14
  const labelElement = (jsx("span", { className: cx('flex-1 text-sm font-semibold text-secondary transition-inherit-all group-hover/item:text-secondary_hover', truncate && 'truncate', current && 'text-secondary_hover'), children: children }));
@@ -17,12 +17,12 @@ const NavItemBase = ({ current, type, badge, href, icon: Icon, children, truncat
17
17
  if (type === 'collapsible') {
18
18
  return (
19
19
  // biome-ignore lint/a11y/noStaticElementInteractions: This is a summary element
20
- jsxs("summary", { className: cx('p-2', styles.root, current && styles.rootSelected), onClick: onClick, children: [iconElement, labelElement, badgeElement, jsx(ChevronDown, { "aria-hidden": "true", className: "ml-3 size-4 shrink-0 stroke-[2.5px] text-fg-quaternary in-open:-scale-y-100" })] }));
20
+ jsxs("summary", { "data-testid": dataTestId, className: cx('p-2', styles.root, current && styles.rootSelected), onClick: onClick, children: [iconElement, labelElement, badgeElement, jsx(ChevronDown, { "aria-hidden": "true", className: "ml-3 size-4 shrink-0 stroke-[2.5px] text-fg-quaternary in-open:-scale-y-100" })] }));
21
21
  }
22
22
  if (type === 'collapsible-child') {
23
- return (jsxs(Link, { href: href, target: isExternal ? '_blank' : '_self', rel: "noopener noreferrer", className: cx('py-2 pr-3 pl-10', styles.root, current && styles.rootSelected), onClick: onClick, "aria-current": current ? 'page' : undefined, children: [labelElement, externalIcon, badgeElement] }));
23
+ return (jsxs(Link, { href: href, "data-testid": dataTestId, target: isExternal ? '_blank' : '_self', rel: "noopener noreferrer", className: cx('py-2 pr-3 pl-10', styles.root, current && styles.rootSelected), onClick: onClick, "aria-current": current ? 'page' : undefined, children: [labelElement, externalIcon, badgeElement] }));
24
24
  }
25
- return (jsxs(Link, { href: href, target: isExternal ? '_blank' : '_self', rel: "noopener noreferrer", className: cx('group/item p-2', styles.root, current && styles.rootSelected), onClick: onClick, "aria-current": current ? 'page' : undefined, children: [iconElement, labelElement, externalIcon, badgeElement] }));
25
+ return (jsxs(Link, { href: href, "data-testid": dataTestId, target: isExternal ? '_blank' : '_self', rel: "noopener noreferrer", className: cx('group/item p-2', styles.root, current && styles.rootSelected), onClick: onClick, "aria-current": current ? 'page' : undefined, children: [iconElement, labelElement, externalIcon, badgeElement] }));
26
26
  };
27
27
 
28
28
  export { NavItemBase };
@@ -1 +1 @@
1
- {"version":3,"file":"nav-item.js","sources":["../../../../../src/components/organisms/HeaderNavigation/components/nav-item.tsx"],"sourcesContent":[null],"names":["_jsx","_jsxs","AriaLink"],"mappings":";;;;;;AAQA,MAAM,MAAM,GAAG,MAAM,CAAC;AACpB,IAAA,IAAI,EAAE,0PAA0P;AAChQ,IAAA,YAAY,EAAE,uCAAuC;AACtD,CAAA,CAAC;AAyBK,MAAM,WAAW,GAAG,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI,EAAE,OAAO,EAAoB,KAAI;IAC9H,MAAM,WAAW,GAAG,IAAI,KACtBA,GAAA,CAAC,IAAI,EAAA,EAAA,aAAA,EACS,MAAM,EAClB,SAAS,EAAE,EAAE,CACX,0GAA0G,EAC1G,OAAO,IAAI,0BAA0B,CACtC,EAAA,CACD,CACH;IAED,MAAM,YAAY,GAChB,KAAK,KAAK,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,KAAK,KAAK,QAAQ,CAAC,IAC/DA,GAAA,CAAC,KAAK,EAAA,EAAC,SAAS,EAAC,MAAM,EAAC,KAAK,EAAC,MAAM,EAAC,IAAI,EAAC,YAAY,EAAC,IAAI,EAAC,IAAI,EAAA,QAAA,EAC7D,KAAK,GACA,KAER,KAAK,CACN;IAEH,MAAM,YAAY,IAChBA,GAAA,CAAA,MAAA,EAAA,EACE,SAAS,EAAE,EAAE,CACX,0GAA0G,EAC1G,QAAQ,IAAI,UAAU,EACtB,OAAO,IAAI,sBAAsB,CAClC,EAAA,QAAA,EAEA,QAAQ,EAAA,CACJ,CACR;IAED,MAAM,UAAU,GAAG,IAAI,EAAE,UAAU,CAAC,MAAM,CAAC;IAC3C,MAAM,YAAY,GAAG,UAAU,IAAIA,GAAA,CAAC,OAAO,EAAA,EAAC,SAAS,EAAC,0CAA0C,EAAA,CAAG;AAEnG,IAAA,IAAI,IAAI,KAAK,aAAa,EAAE;QAC1B;;AAEE,QAAAC,IAAA,CAAA,SAAA,EAAA,EAAS,SAAS,EAAE,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,EAAE,OAAO,IAAI,MAAM,CAAC,YAAY,CAAC,EAAE,OAAO,EAAE,OAAO,EAAA,QAAA,EAAA,CACzF,WAAW,EAEX,YAAY,EAEZ,YAAY,EAEbD,GAAA,CAAC,WAAW,EAAA,EAAA,aAAA,EAAa,MAAM,EAAC,SAAS,EAAC,6EAA6E,EAAA,CAAG,CAAA,EAAA,CAClH;IAEd;AAEA,IAAA,IAAI,IAAI,KAAK,mBAAmB,EAAE;AAChC,QAAA,QACEC,IAAA,CAACC,IAAQ,EAAA,EACP,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,UAAU,GAAG,QAAQ,GAAG,OAAO,EACvC,GAAG,EAAC,qBAAqB,EACzB,SAAS,EAAE,EAAE,CAAC,iBAAiB,EAAE,MAAM,CAAC,IAAI,EAAE,OAAO,IAAI,MAAM,CAAC,YAAY,CAAC,EAC7E,OAAO,EAAE,OAAO,EAAA,cAAA,EACF,OAAO,GAAG,MAAM,GAAG,SAAS,EAAA,QAAA,EAAA,CAEzC,YAAY,EACZ,YAAY,EACZ,YAAY,CAAA,EAAA,CACJ;IAEf;AAEA,IAAA,QACED,IAAA,CAACC,IAAQ,EAAA,EACP,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,UAAU,GAAG,QAAQ,GAAG,OAAO,EACvC,GAAG,EAAC,qBAAqB,EACzB,SAAS,EAAE,EAAE,CAAC,gBAAgB,EAAE,MAAM,CAAC,IAAI,EAAE,OAAO,IAAI,MAAM,CAAC,YAAY,CAAC,EAC5E,OAAO,EAAE,OAAO,EAAA,cAAA,EACF,OAAO,GAAG,MAAM,GAAG,SAAS,EAAA,QAAA,EAAA,CAEzC,WAAW,EACX,YAAY,EACZ,YAAY,EACZ,YAAY,CAAA,EAAA,CACJ;AAEf;;;;"}
1
+ {"version":3,"file":"nav-item.js","sources":["../../../../../src/components/organisms/HeaderNavigation/components/nav-item.tsx"],"sourcesContent":[null],"names":["_jsx","_jsxs","AriaLink"],"mappings":"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"}
@@ -2,10 +2,16 @@
2
2
 
3
3
  var jsxRuntime = require('react/jsx-runtime');
4
4
  var cx = require('@flipdish/ui-library/utilities/cx');
5
+ var testIdUtils = require('@flipdish/ui-library/utilities/testIdUtils');
5
6
  var navItem = require('./nav-item.cjs');
6
7
 
7
- const NavList = ({ activeUrl, items, className }) => {
8
+ const NavList = ({ activeUrl, items, className, testIdPrefix }) => {
8
9
  const activeItem = items.find((item) => item.href === activeUrl || item.items?.some((subItem) => subItem.href === activeUrl));
10
+ const itemTestId = (item) => item['data-testid'] ?? (testIdPrefix ? testIdUtils.joinTestId(testIdPrefix, `nav-item-${item.id ?? testIdUtils.slugifyTestId(item.label ?? '')}`) : undefined);
11
+ const subItemTestId = (parent, sub) => {
12
+ const parentId = itemTestId(parent);
13
+ return sub['data-testid'] ?? (parentId ? testIdUtils.joinTestId(parentId, `sub-item-${sub.id ?? testIdUtils.slugifyTestId(sub.label)}`) : undefined);
14
+ };
9
15
  return (jsxRuntime.jsx("ul", { className: cx.cx('flex flex-col px-4 pt-5', className), children: items.map((item, index) => {
10
16
  if (item.divider) {
11
17
  return (
@@ -13,9 +19,9 @@ const NavList = ({ activeUrl, items, className }) => {
13
19
  jsxRuntime.jsx("li", { className: "w-full px-0.5 py-2", children: jsxRuntime.jsx("hr", { className: "h-px w-full border-none bg-border-secondary" }) }, index));
14
20
  }
15
21
  if (item.items?.length) {
16
- return (jsxRuntime.jsxs("details", { open: activeItem?.href === item.href, className: "appearance-none py-0.25", children: [jsxRuntime.jsx(navItem.NavItemBase, { href: item.href, badge: item.badge, icon: item.icon, type: "collapsible", children: item.label }), jsxRuntime.jsx("dd", { children: jsxRuntime.jsx("ul", { className: "pb-1", children: item.items.map((childItem) => (jsxRuntime.jsx("li", { className: "py-0.25", children: jsxRuntime.jsx(navItem.NavItemBase, { href: childItem.href, badge: childItem.badge, type: "collapsible-child", current: activeUrl === childItem.href, children: childItem.label }) }, childItem.label))) }) })] }, item.label));
22
+ return (jsxRuntime.jsxs("details", { open: activeItem?.href === item.href, className: "appearance-none py-0.25", children: [jsxRuntime.jsx(navItem.NavItemBase, { href: item.href, badge: item.badge, icon: item.icon, type: "collapsible", "data-testid": itemTestId(item), children: item.label }), jsxRuntime.jsx("dd", { children: jsxRuntime.jsx("ul", { className: "pb-1", children: item.items.map((childItem) => (jsxRuntime.jsx("li", { className: "py-0.25", children: jsxRuntime.jsx(navItem.NavItemBase, { href: childItem.href, badge: childItem.badge, type: "collapsible-child", current: activeUrl === childItem.href, "data-testid": subItemTestId(item, childItem), children: childItem.label }) }, childItem.label))) }) })] }, item.label));
17
23
  }
18
- return (jsxRuntime.jsx("li", { className: "py-px", children: jsxRuntime.jsx(navItem.NavItemBase, { type: "link", badge: item.badge, icon: item.icon, href: item.href, current: activeUrl === item.href, children: item.label }) }, item.label));
24
+ return (jsxRuntime.jsx("li", { className: "py-px", children: jsxRuntime.jsx(navItem.NavItemBase, { type: "link", badge: item.badge, icon: item.icon, href: item.href, current: activeUrl === item.href, "data-testid": itemTestId(item), children: item.label }) }, item.label));
19
25
  }) }));
20
26
  };
21
27
 
@@ -1 +1 @@
1
- {"version":3,"file":"nav-list.cjs","sources":["../../../../../src/components/organisms/HeaderNavigation/components/nav-list.tsx"],"sourcesContent":[null],"names":["_jsx","cx","_jsxs","NavItemBase"],"mappings":";;;;;;AAeO,MAAM,OAAO,GAAG,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAgB,KAAI;AACvE,IAAA,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,OAAO,KAAK,OAAO,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC;IAE7H,QACEA,uBAAI,SAAS,EAAEC,KAAE,CAAC,yBAAyB,EAAE,SAAS,CAAC,YACpD,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,KAAI;AACzB,YAAA,IAAI,IAAI,CAAC,OAAO,EAAE;gBAChB;;AAEE,gBAAAD,cAAA,CAAA,IAAA,EAAA,EAAgB,SAAS,EAAC,oBAAoB,EAAA,QAAA,EAC5CA,cAAA,CAAA,IAAA,EAAA,EAAI,SAAS,EAAC,6CAA6C,EAAA,CAAG,EAAA,EADvD,KAAK,CAET;YAET;AAEA,YAAA,IAAI,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE;gBACtB,QACEE,eAAA,CAAA,SAAA,EAAA,EAA0B,IAAI,EAAE,UAAU,EAAE,IAAI,KAAK,IAAI,CAAC,IAAI,EAAE,SAAS,EAAC,yBAAyB,EAAA,QAAA,EAAA,CACjGF,cAAA,CAACG,mBAAW,EAAA,EAAC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,EAAC,aAAa,EAAA,QAAA,EACjF,IAAI,CAAC,KAAK,EAAA,CACC,EAEdH,cAAA,CAAA,IAAA,EAAA,EAAA,QAAA,EACEA,cAAA,CAAA,IAAA,EAAA,EAAI,SAAS,EAAC,MAAM,EAAA,QAAA,EACjB,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,SAAS,MACxBA,cAAA,CAAA,IAAA,EAAA,EAA0B,SAAS,EAAC,SAAS,EAAA,QAAA,EAC3CA,cAAA,CAACG,mBAAW,EAAA,EAAC,IAAI,EAAE,SAAS,CAAC,IAAI,EAAE,KAAK,EAAE,SAAS,CAAC,KAAK,EAAE,IAAI,EAAC,mBAAmB,EAAC,OAAO,EAAE,SAAS,KAAK,SAAS,CAAC,IAAI,EAAA,QAAA,EACtH,SAAS,CAAC,KAAK,EAAA,CACJ,EAAA,EAHP,SAAS,CAAC,KAAK,CAInB,CACN,CAAC,EAAA,CACC,EAAA,CACF,CAAA,EAAA,EAfO,IAAI,CAAC,KAAK,CAgBd;YAEd;YAEA,QACEH,uBAAqB,SAAS,EAAC,OAAO,EAAA,QAAA,EACpCA,cAAA,CAACG,mBAAW,EAAA,EAAC,IAAI,EAAC,MAAM,EAAC,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,SAAS,KAAK,IAAI,CAAC,IAAI,EAAA,QAAA,EAC3G,IAAI,CAAC,KAAK,EAAA,CACC,EAAA,EAHP,IAAI,CAAC,KAAK,CAId;QAET,CAAC,CAAC,EAAA,CACC;AAET;;;;"}
1
+ {"version":3,"file":"nav-list.cjs","sources":["../../../../../src/components/organisms/HeaderNavigation/components/nav-list.tsx"],"sourcesContent":[null],"names":["joinTestId","slugifyTestId","_jsx","cx","_jsxs","NavItemBase"],"mappings":"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"}
@@ -6,7 +6,9 @@ interface NavListProps {
6
6
  className?: string;
7
7
  /** List of items to display. */
8
8
  items: (NavItemType | NavItemDividerType)[];
9
+ /** Resolved testid of the parent used to derive each item's `data-testid`. */
10
+ testIdPrefix?: string;
9
11
  }
10
- export declare const NavList: ({ activeUrl, items, className }: NavListProps) => import("react").JSX.Element;
12
+ export declare const NavList: ({ activeUrl, items, className, testIdPrefix }: NavListProps) => import("react").JSX.Element;
11
13
  export {};
12
14
  //# sourceMappingURL=nav-list.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"nav-list.d.ts","sourceRoot":"","sources":["../../../../../src/components/organisms/HeaderNavigation/components/nav-list.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAGjF,UAAU,YAAY;IACpB,wCAAwC;IACxC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,mDAAmD;IACnD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gCAAgC;IAChC,KAAK,EAAE,CAAC,WAAW,GAAG,kBAAkB,CAAC,EAAE,CAAC;CAC7C;AAED,eAAO,MAAM,OAAO,GAAI,iCAAiC,YAAY,gCA+CpE,CAAC"}
1
+ {"version":3,"file":"nav-list.d.ts","sourceRoot":"","sources":["../../../../../src/components/organisms/HeaderNavigation/components/nav-list.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,kBAAkB,EAAE,WAAW,EAAkB,MAAM,2BAA2B,CAAC;AAGjG,UAAU,YAAY;IACpB,wCAAwC;IACxC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,mDAAmD;IACnD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gCAAgC;IAChC,KAAK,EAAE,CAAC,WAAW,GAAG,kBAAkB,CAAC,EAAE,CAAC;IAC5C,8EAA8E;IAC9E,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,eAAO,MAAM,OAAO,GAAI,+CAA+C,YAAY,gCAoElF,CAAC"}
@@ -1,9 +1,15 @@
1
1
  import { jsx, jsxs } from 'react/jsx-runtime';
2
2
  import { cx } from '@flipdish/ui-library/utilities/cx';
3
+ import { joinTestId, slugifyTestId } from '@flipdish/ui-library/utilities/testIdUtils';
3
4
  import { NavItemBase } from './nav-item.js';
4
5
 
5
- const NavList = ({ activeUrl, items, className }) => {
6
+ const NavList = ({ activeUrl, items, className, testIdPrefix }) => {
6
7
  const activeItem = items.find((item) => item.href === activeUrl || item.items?.some((subItem) => subItem.href === activeUrl));
8
+ const itemTestId = (item) => item['data-testid'] ?? (testIdPrefix ? joinTestId(testIdPrefix, `nav-item-${item.id ?? slugifyTestId(item.label ?? '')}`) : undefined);
9
+ const subItemTestId = (parent, sub) => {
10
+ const parentId = itemTestId(parent);
11
+ return sub['data-testid'] ?? (parentId ? joinTestId(parentId, `sub-item-${sub.id ?? slugifyTestId(sub.label)}`) : undefined);
12
+ };
7
13
  return (jsx("ul", { className: cx('flex flex-col px-4 pt-5', className), children: items.map((item, index) => {
8
14
  if (item.divider) {
9
15
  return (
@@ -11,9 +17,9 @@ const NavList = ({ activeUrl, items, className }) => {
11
17
  jsx("li", { className: "w-full px-0.5 py-2", children: jsx("hr", { className: "h-px w-full border-none bg-border-secondary" }) }, index));
12
18
  }
13
19
  if (item.items?.length) {
14
- return (jsxs("details", { open: activeItem?.href === item.href, className: "appearance-none py-0.25", children: [jsx(NavItemBase, { href: item.href, badge: item.badge, icon: item.icon, type: "collapsible", children: item.label }), jsx("dd", { children: jsx("ul", { className: "pb-1", children: item.items.map((childItem) => (jsx("li", { className: "py-0.25", children: jsx(NavItemBase, { href: childItem.href, badge: childItem.badge, type: "collapsible-child", current: activeUrl === childItem.href, children: childItem.label }) }, childItem.label))) }) })] }, item.label));
20
+ return (jsxs("details", { open: activeItem?.href === item.href, className: "appearance-none py-0.25", children: [jsx(NavItemBase, { href: item.href, badge: item.badge, icon: item.icon, type: "collapsible", "data-testid": itemTestId(item), children: item.label }), jsx("dd", { children: jsx("ul", { className: "pb-1", children: item.items.map((childItem) => (jsx("li", { className: "py-0.25", children: jsx(NavItemBase, { href: childItem.href, badge: childItem.badge, type: "collapsible-child", current: activeUrl === childItem.href, "data-testid": subItemTestId(item, childItem), children: childItem.label }) }, childItem.label))) }) })] }, item.label));
15
21
  }
16
- return (jsx("li", { className: "py-px", children: jsx(NavItemBase, { type: "link", badge: item.badge, icon: item.icon, href: item.href, current: activeUrl === item.href, children: item.label }) }, item.label));
22
+ return (jsx("li", { className: "py-px", children: jsx(NavItemBase, { type: "link", badge: item.badge, icon: item.icon, href: item.href, current: activeUrl === item.href, "data-testid": itemTestId(item), children: item.label }) }, item.label));
17
23
  }) }));
18
24
  };
19
25
 
@@ -1 +1 @@
1
- {"version":3,"file":"nav-list.js","sources":["../../../../../src/components/organisms/HeaderNavigation/components/nav-list.tsx"],"sourcesContent":[null],"names":["_jsx","_jsxs"],"mappings":";;;;AAeO,MAAM,OAAO,GAAG,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAgB,KAAI;AACvE,IAAA,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,OAAO,KAAK,OAAO,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC;IAE7H,QACEA,YAAI,SAAS,EAAE,EAAE,CAAC,yBAAyB,EAAE,SAAS,CAAC,YACpD,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,KAAI;AACzB,YAAA,IAAI,IAAI,CAAC,OAAO,EAAE;gBAChB;;AAEE,gBAAAA,GAAA,CAAA,IAAA,EAAA,EAAgB,SAAS,EAAC,oBAAoB,EAAA,QAAA,EAC5CA,GAAA,CAAA,IAAA,EAAA,EAAI,SAAS,EAAC,6CAA6C,EAAA,CAAG,EAAA,EADvD,KAAK,CAET;YAET;AAEA,YAAA,IAAI,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE;gBACtB,QACEC,IAAA,CAAA,SAAA,EAAA,EAA0B,IAAI,EAAE,UAAU,EAAE,IAAI,KAAK,IAAI,CAAC,IAAI,EAAE,SAAS,EAAC,yBAAyB,EAAA,QAAA,EAAA,CACjGD,GAAA,CAAC,WAAW,EAAA,EAAC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,EAAC,aAAa,EAAA,QAAA,EACjF,IAAI,CAAC,KAAK,EAAA,CACC,EAEdA,GAAA,CAAA,IAAA,EAAA,EAAA,QAAA,EACEA,GAAA,CAAA,IAAA,EAAA,EAAI,SAAS,EAAC,MAAM,EAAA,QAAA,EACjB,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,SAAS,MACxBA,GAAA,CAAA,IAAA,EAAA,EAA0B,SAAS,EAAC,SAAS,EAAA,QAAA,EAC3CA,GAAA,CAAC,WAAW,EAAA,EAAC,IAAI,EAAE,SAAS,CAAC,IAAI,EAAE,KAAK,EAAE,SAAS,CAAC,KAAK,EAAE,IAAI,EAAC,mBAAmB,EAAC,OAAO,EAAE,SAAS,KAAK,SAAS,CAAC,IAAI,EAAA,QAAA,EACtH,SAAS,CAAC,KAAK,EAAA,CACJ,EAAA,EAHP,SAAS,CAAC,KAAK,CAInB,CACN,CAAC,EAAA,CACC,EAAA,CACF,CAAA,EAAA,EAfO,IAAI,CAAC,KAAK,CAgBd;YAEd;YAEA,QACEA,YAAqB,SAAS,EAAC,OAAO,EAAA,QAAA,EACpCA,GAAA,CAAC,WAAW,EAAA,EAAC,IAAI,EAAC,MAAM,EAAC,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,SAAS,KAAK,IAAI,CAAC,IAAI,EAAA,QAAA,EAC3G,IAAI,CAAC,KAAK,EAAA,CACC,EAAA,EAHP,IAAI,CAAC,KAAK,CAId;QAET,CAAC,CAAC,EAAA,CACC;AAET;;;;"}
1
+ {"version":3,"file":"nav-list.js","sources":["../../../../../src/components/organisms/HeaderNavigation/components/nav-list.tsx"],"sourcesContent":[null],"names":["_jsx","_jsxs"],"mappings":"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"}
@@ -1,4 +1,16 @@
1
1
  import type { FC, ReactNode } from 'react';
2
+ export type NavSubItemType = {
3
+ label: string;
4
+ href: string;
5
+ icon?: FC<{
6
+ className?: string;
7
+ }>;
8
+ badge?: ReactNode;
9
+ /** Stable id used to derive this sub-item's `data-testid` (falls back to a slug of `label`). */
10
+ id?: string;
11
+ /** Overrides the derived `data-testid` for this sub-item. */
12
+ 'data-testid'?: string;
13
+ };
2
14
  export type NavItemType = {
3
15
  /** Label text for the nav item. */
4
16
  label: string;
@@ -11,16 +23,13 @@ export type NavItemType = {
11
23
  /** Badge to display. */
12
24
  badge?: ReactNode;
13
25
  /** List of sub-items to display. */
14
- items?: {
15
- label: string;
16
- href: string;
17
- icon?: FC<{
18
- className?: string;
19
- }>;
20
- badge?: ReactNode;
21
- }[];
26
+ items?: NavSubItemType[];
22
27
  /** Whether this nav item is a divider. */
23
28
  divider?: boolean;
29
+ /** Stable id used to derive this item's `data-testid` (falls back to a slug of `label`). */
30
+ id?: string;
31
+ /** Overrides the derived `data-testid` for this item. */
32
+ 'data-testid'?: string;
24
33
  };
25
34
  export type NavItemDividerType = Omit<NavItemType, 'icon' | 'label' | 'divider'> & {
26
35
  /** Label text for the divider. */
@@ -1 +1 @@
1
- {"version":3,"file":"headerNavigation.types.d.ts","sourceRoot":"","sources":["../../../../src/components/organisms/HeaderNavigation/headerNavigation.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAE3C,MAAM,MAAM,WAAW,GAAG;IACxB,mCAAmC;IACnC,KAAK,EAAE,MAAM,CAAC;IACd,uDAAuD;IACvD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,iCAAiC;IACjC,IAAI,CAAC,EAAE,EAAE,CAAC;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAClC,wBAAwB;IACxB,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,oCAAoC;IACpC,KAAK,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,EAAE,CAAC;YAAE,SAAS,CAAC,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;QAAC,KAAK,CAAC,EAAE,SAAS,CAAA;KAAE,EAAE,CAAC;IAChG,0CAA0C;IAC1C,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG,IAAI,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS,CAAC,GAAG;IACjF,kCAAkC;IAClC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,0CAA0C;IAC1C,OAAO,EAAE,IAAI,CAAC;CACf,CAAC"}
1
+ {"version":3,"file":"headerNavigation.types.d.ts","sourceRoot":"","sources":["../../../../src/components/organisms/HeaderNavigation/headerNavigation.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAE3C,MAAM,MAAM,cAAc,GAAG;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,EAAE,CAAC;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAClC,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,gGAAgG;IAChG,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,6DAA6D;IAC7D,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,mCAAmC;IACnC,KAAK,EAAE,MAAM,CAAC;IACd,uDAAuD;IACvD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,iCAAiC;IACjC,IAAI,CAAC,EAAE,EAAE,CAAC;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAClC,wBAAwB;IACxB,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,oCAAoC;IACpC,KAAK,CAAC,EAAE,cAAc,EAAE,CAAC;IACzB,0CAA0C;IAC1C,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,4FAA4F;IAC5F,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,yDAAyD;IACzD,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG,IAAI,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS,CAAC,GAAG;IACjF,kCAAkC;IAClC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,0CAA0C;IAC1C,OAAO,EAAE,IAAI,CAAC;CACf,CAAC"}
@@ -6,6 +6,7 @@ var FlipdishLogo = require('@flipdish/ui-library/components/atoms/FlipdishLogo')
6
6
  var Input = require('@flipdish/ui-library/components/atoms/Input');
7
7
  var Tabs = require('@flipdish/ui-library/components/molecules/Tabs');
8
8
  var cx = require('@flipdish/ui-library/utilities/cx');
9
+ var testIdUtils = require('@flipdish/ui-library/utilities/testIdUtils');
9
10
  var mobileHeader = require('./components/mobile-header.cjs');
10
11
  var navAccountCard = require('./components/nav-account-card.cjs');
11
12
  var navButton = require('./components/nav-button.cjs');
@@ -22,8 +23,14 @@ const isItemActive = (href, activeUrl) => {
22
23
  return true;
23
24
  return false;
24
25
  };
25
- const HeaderNavigationBase = ({ activeUrl, items, subItems, hideBorder = false, actions, centered = false, secondaryType = 'buttons', footerItems = [], account, }) => {
26
+ const HeaderNavigationBase = ({ activeUrl, items, subItems, hideBorder = false, actions, centered = false, secondaryType = 'buttons', footerItems = [], account, 'data-testid': dataTestId, }) => {
26
27
  const isActive = (item) => item.current ?? isItemActive(item.href, activeUrl);
28
+ const rootTestId = testIdUtils.useResolvedTestId({ testId: dataTestId, segment: 'header-navigation', rootName: 'header-navigation' });
29
+ // The mobile drawer and the desktop header both render the same nav items; re-root the
30
+ // drawer subtree under `drawer` so their derived testids don't collide in the DOM.
31
+ const drawerTestId = testIdUtils.joinTestId(rootTestId, 'drawer');
32
+ const navItemTestId = (item, base = rootTestId) => item['data-testid'] ?? testIdUtils.joinTestId(base, `nav-item-${item.id ?? testIdUtils.slugifyTestId(item.label)}`);
33
+ const subNavItemTestId = (item) => item['data-testid'] ?? testIdUtils.joinTestId(rootTestId, `sub-nav-${item.id ?? testIdUtils.slugifyTestId(item.label)}`);
27
34
  const activeParent = items.find((item) => isActive(item) || item.items?.some((sub) => isItemActive(sub.href, activeUrl)));
28
35
  const activeSubNavItems = subItems || activeParent?.items;
29
36
  const showSecondaryNav = activeSubNavItems && activeSubNavItems.length > 0;
@@ -34,7 +41,7 @@ const HeaderNavigationBase = ({ activeUrl, items, subItems, hideBorder = false,
34
41
  }))
35
42
  : [];
36
43
  const activeTabKey = activeSubNavItems?.find((item) => isActive(item))?.label;
37
- return (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx(mobileHeader.MobileNavigationHeader, { children: jsxRuntime.jsxs("aside", { className: "flex h-full max-w-full flex-col overflow-auto bg-primary pt-4", children: [jsxRuntime.jsxs("div", { className: "flex flex-col gap-5 px-4", children: [jsxRuntime.jsx(FlipdishLogo.FlipdishLogo, { size: "sm" }), jsxRuntime.jsx(Input.Input, { size: "md", "aria-label": "Search", placeholder: "Search", icon: uiIcons.SearchLg })] }), jsxRuntime.jsx(navList.NavList, { items: items, activeUrl: activeUrl, className: "flex-1" }), (footerItems.length > 0 || account) && (jsxRuntime.jsxs("div", { className: "mt-auto flex flex-col gap-3 p-4", children: [footerItems.length > 0 && (jsxRuntime.jsx("div", { className: "flex flex-col", children: footerItems.map((item) => (jsxRuntime.jsx(navItem.NavItemBase, { type: "link", href: item.href, icon: item.icon, badge: item.badge, current: isActive(item), children: item.label }, item.label))) })), account && (jsxRuntime.jsx(navAccountCard.NavAccountCard, { items: account.accounts, selectedAccountId: account.selectedAccountId, menuItems: account.menuItems, bottomMenuItems: account.bottomMenuItems }))] }))] }) }), jsxRuntime.jsxs("header", { className: "max-lg:hidden", children: [jsxRuntime.jsx("section", { className: cx.cx('flex h-16 w-full items-center justify-center bg-primary', (!hideBorder || showSecondaryNav) && 'border-b border-secondary'), children: jsxRuntime.jsxs("div", { className: cx.cx('flex w-full max-w-container items-center pr-3 pl-4 md:px-8', centered && 'gap-8'), children: [jsxRuntime.jsx("div", { className: cx.cx('flex items-center', centered ? 'flex-1' : 'mr-4'), children: jsxRuntime.jsx("a", { "aria-label": "Go to homepage", href: "/", className: "rounded-xs outline-focus-ring focus-visible:outline-2 focus-visible:outline-offset-2", children: jsxRuntime.jsx(FlipdishLogo.FlipdishLogo, { size: "sm" }) }) }), jsxRuntime.jsx("nav", { children: jsxRuntime.jsx("ul", { className: "flex items-center gap-0.5", children: items.map((item) => (jsxRuntime.jsx("li", { children: jsxRuntime.jsx(navButton.NavButton, { current: isActive(item), href: item.href, children: item.label }) }, item.label))) }) }), (actions || centered) && jsxRuntime.jsx("div", { className: cx.cx('flex items-center gap-3', centered ? 'flex-1 justify-end' : 'ml-auto'), children: actions })] }) }), showSecondaryNav && (jsxRuntime.jsx("section", { className: cx.cx('flex w-full items-center justify-center bg-primary', !hideBorder && 'border-b border-secondary'), children: secondaryType === 'tabs' ? (jsxRuntime.jsx("div", { className: "w-full max-w-container px-8 pt-3", children: jsxRuntime.jsx(Tabs.Tabs, { selectedKey: activeTabKey, children: jsxRuntime.jsx(Tabs.TabList, { size: "sm", type: "underline", items: tabItems, className: "-mb-px before:hidden" }) }) })) : (jsxRuntime.jsxs("div", { className: cx.cx('flex h-16 w-full max-w-container items-center gap-8 px-8', centered ? 'justify-center' : 'justify-between'), children: [jsxRuntime.jsx("nav", { children: jsxRuntime.jsx("ul", { className: cx.cx('flex items-center gap-0.5', centered && 'justify-center'), children: activeSubNavItems.map((item) => (jsxRuntime.jsx("li", { children: jsxRuntime.jsx(navButton.NavButton, { href: item.href, current: isActive(item), children: item.label }) }, item.label))) }) }), !centered && jsxRuntime.jsx(Input.Input, { shortcut: true, "aria-label": "Search", placeholder: "Search", icon: uiIcons.SearchLg, size: "sm", className: "max-w-70" })] })) }))] })] }));
44
+ return (jsxRuntime.jsxs(testIdUtils.TestIdProvider, { value: rootTestId, children: [jsxRuntime.jsx(mobileHeader.MobileNavigationHeader, { testIdPrefix: rootTestId, children: jsxRuntime.jsxs("aside", { className: "flex h-full max-w-full flex-col overflow-auto bg-primary pt-4", children: [jsxRuntime.jsxs("div", { className: "flex flex-col gap-5 px-4", children: [jsxRuntime.jsx(FlipdishLogo.FlipdishLogo, { size: "sm" }), jsxRuntime.jsx(Input.Input, { size: "md", "aria-label": "Search", placeholder: "Search", icon: uiIcons.SearchLg })] }), jsxRuntime.jsx(navList.NavList, { items: items, activeUrl: activeUrl, className: "flex-1", testIdPrefix: drawerTestId }), (footerItems.length > 0 || account) && (jsxRuntime.jsxs("div", { className: "mt-auto flex flex-col gap-3 p-4", children: [footerItems.length > 0 && (jsxRuntime.jsx("div", { className: "flex flex-col", children: footerItems.map((item) => (jsxRuntime.jsx(navItem.NavItemBase, { type: "link", href: item.href, icon: item.icon, badge: item.badge, current: isActive(item), "data-testid": navItemTestId(item, drawerTestId), children: item.label }, item.label))) })), account && (jsxRuntime.jsx(navAccountCard.NavAccountCard, { items: account.accounts, selectedAccountId: account.selectedAccountId, menuItems: account.menuItems, bottomMenuItems: account.bottomMenuItems }))] }))] }) }), jsxRuntime.jsxs("header", { className: "max-lg:hidden", children: [jsxRuntime.jsx("section", { className: cx.cx('flex h-16 w-full items-center justify-center bg-primary', (!hideBorder || showSecondaryNav) && 'border-b border-secondary'), children: jsxRuntime.jsxs("div", { className: cx.cx('flex w-full max-w-container items-center pr-3 pl-4 md:px-8', centered && 'gap-8'), children: [jsxRuntime.jsx("div", { className: cx.cx('flex items-center', centered ? 'flex-1' : 'mr-4'), children: jsxRuntime.jsx("a", { "aria-label": "Go to homepage", href: "/", className: "rounded-xs outline-focus-ring focus-visible:outline-2 focus-visible:outline-offset-2", children: jsxRuntime.jsx(FlipdishLogo.FlipdishLogo, { size: "sm" }) }) }), jsxRuntime.jsx("nav", { children: jsxRuntime.jsx("ul", { className: "flex items-center gap-0.5", children: items.map((item) => (jsxRuntime.jsx("li", { children: jsxRuntime.jsx(navButton.NavButton, { current: isActive(item), href: item.href, "data-testid": navItemTestId(item), children: item.label }) }, item.label))) }) }), (actions || centered) && jsxRuntime.jsx("div", { className: cx.cx('flex items-center gap-3', centered ? 'flex-1 justify-end' : 'ml-auto'), children: actions })] }) }), showSecondaryNav && (jsxRuntime.jsx("section", { className: cx.cx('flex w-full items-center justify-center bg-primary', !hideBorder && 'border-b border-secondary'), children: secondaryType === 'tabs' ? (jsxRuntime.jsx("div", { className: "w-full max-w-container px-8 pt-3", children: jsxRuntime.jsx(Tabs.Tabs, { selectedKey: activeTabKey, children: jsxRuntime.jsx(Tabs.TabList, { size: "sm", type: "underline", items: tabItems, className: "-mb-px before:hidden" }) }) })) : (jsxRuntime.jsxs("div", { className: cx.cx('flex h-16 w-full max-w-container items-center gap-8 px-8', centered ? 'justify-center' : 'justify-between'), children: [jsxRuntime.jsx("nav", { children: jsxRuntime.jsx("ul", { className: cx.cx('flex items-center gap-0.5', centered && 'justify-center'), children: activeSubNavItems.map((item) => (jsxRuntime.jsx("li", { children: jsxRuntime.jsx(navButton.NavButton, { href: item.href, current: isActive(item), "data-testid": subNavItemTestId(item), children: item.label }) }, item.label))) }) }), !centered && jsxRuntime.jsx(Input.Input, { shortcut: true, "aria-label": "Search", placeholder: "Search", icon: uiIcons.SearchLg, size: "sm", className: "max-w-70" })] })) }))] })] }));
38
45
  };
39
46
 
40
47
  exports.NavAccountCard = navAccountCard.NavAccountCard;
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","sources":["../../../../src/components/organisms/HeaderNavigation/index.tsx"],"sourcesContent":[null],"names":["_jsxs","_Fragment","_jsx","MobileNavigationHeader","FlipdishLogo","Input","SearchLg","NavList","NavItemBase","NavAccountCard","cx","NavButton","Tabs","TabList"],"mappings":"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"}
1
+ {"version":3,"file":"index.cjs","sources":["../../../../src/components/organisms/HeaderNavigation/index.tsx"],"sourcesContent":[null],"names":["useResolvedTestId","joinTestId","slugifyTestId","_jsxs","TestIdProvider","_jsx","MobileNavigationHeader","FlipdishLogo","Input","SearchLg","NavList","NavItemBase","NavAccountCard","cx","NavButton","Tabs","TabList"],"mappings":"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"}
@@ -31,6 +31,10 @@ type NavItem = {
31
31
  badge?: ReactNode;
32
32
  /** List of sub-items to display. */
33
33
  items?: NavItem[];
34
+ /** Stable id used to derive this item's `data-testid` (falls back to a slug of `label`). */
35
+ id?: string;
36
+ /** Overrides the derived `data-testid` for this item. */
37
+ 'data-testid'?: string;
34
38
  };
35
39
  export interface HeaderNavigationBaseProps {
36
40
  /** URL of the currently active item. */
@@ -59,6 +63,11 @@ export interface HeaderNavigationBaseProps {
59
63
  footerItems?: NavItem[];
60
64
  /** Account configuration for the card at the bottom of the mobile drawer. When omitted the account card is not rendered. */
61
65
  account?: NavAccountData;
66
+ /**
67
+ * Overrides the root `data-testid`. Defaults to `fd-header-navigation`. Child
68
+ * elements derive their testids from this prefix (e.g. `<root>--nav-item-orders`).
69
+ */
70
+ 'data-testid'?: string;
62
71
  }
63
- export declare const HeaderNavigationBase: ({ activeUrl, items, subItems, hideBorder, actions, centered, secondaryType, footerItems, account, }: HeaderNavigationBaseProps) => import("react").JSX.Element;
72
+ export declare const HeaderNavigationBase: ({ activeUrl, items, subItems, hideBorder, actions, centered, secondaryType, footerItems, account, "data-testid": dataTestId, }: HeaderNavigationBaseProps) => import("react").JSX.Element;
64
73
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/organisms/HeaderNavigation/index.tsx"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAE3C,OAAO,EAAkB,KAAK,sBAAsB,EAAE,KAAK,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAKjH,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,KAAK,sBAAsB,EAAE,KAAK,cAAc,EAAE,MAAM,+BAA+B,CAAC;AACjI,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEpD;;;GAGG;AACH,MAAM,MAAM,cAAc,GAAG;IAC3B,wDAAwD;IACxD,QAAQ,EAAE,cAAc,EAAE,CAAC;IAC3B,gFAAgF;IAChF,iBAAiB,EAAE,MAAM,CAAC;IAC1B,4DAA4D;IAC5D,SAAS,CAAC,EAAE,sBAAsB,EAAE,CAAC;IACrC,iDAAiD;IACjD,eAAe,CAAC,EAAE,sBAAsB,EAAE,CAAC;CAC5C,CAAC;AAEF,KAAK,OAAO,GAAG;IACb,mCAAmC;IACnC,KAAK,EAAE,MAAM,CAAC;IACd,uDAAuD;IACvD,IAAI,EAAE,MAAM,CAAC;IACb,uFAAuF;IACvF,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,iCAAiC;IACjC,IAAI,CAAC,EAAE,EAAE,CAAC;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAClC,wBAAwB;IACxB,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,oCAAoC;IACpC,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC;CACnB,CAAC;AAUF,MAAM,WAAW,yBAAyB;IACxC,wCAAwC;IACxC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gCAAgC;IAChC,KAAK,EAAE,OAAO,EAAE,CAAC;IACjB,oCAAoC;IACpC,QAAQ,CAAC,EAAE,OAAO,EAAE,CAAC;IACrB,yCAAyC;IACzC,UAAU,CAAC,EAAE,OAAO,CAAC;IAErB,sEAAsE;IACtE,OAAO,CAAC,EAAE,SAAS,CAAC;IAEpB;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB;;;;;OAKG;IACH,aAAa,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;IAEnC,wFAAwF;IACxF,WAAW,CAAC,EAAE,OAAO,EAAE,CAAC;IAExB,4HAA4H;IAC5H,OAAO,CAAC,EAAE,cAAc,CAAC;CAC1B;AAED,eAAO,MAAM,oBAAoB,GAAI,qGAUlC,yBAAyB,gCAmH3B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/organisms/HeaderNavigation/index.tsx"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAE3C,OAAO,EAAkB,KAAK,sBAAsB,EAAE,KAAK,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAKjH,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,KAAK,sBAAsB,EAAE,KAAK,cAAc,EAAE,MAAM,+BAA+B,CAAC;AACjI,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEpD;;;GAGG;AACH,MAAM,MAAM,cAAc,GAAG;IAC3B,wDAAwD;IACxD,QAAQ,EAAE,cAAc,EAAE,CAAC;IAC3B,gFAAgF;IAChF,iBAAiB,EAAE,MAAM,CAAC;IAC1B,4DAA4D;IAC5D,SAAS,CAAC,EAAE,sBAAsB,EAAE,CAAC;IACrC,iDAAiD;IACjD,eAAe,CAAC,EAAE,sBAAsB,EAAE,CAAC;CAC5C,CAAC;AAEF,KAAK,OAAO,GAAG;IACb,mCAAmC;IACnC,KAAK,EAAE,MAAM,CAAC;IACd,uDAAuD;IACvD,IAAI,EAAE,MAAM,CAAC;IACb,uFAAuF;IACvF,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,iCAAiC;IACjC,IAAI,CAAC,EAAE,EAAE,CAAC;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAClC,wBAAwB;IACxB,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,oCAAoC;IACpC,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC;IAClB,4FAA4F;IAC5F,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,yDAAyD;IACzD,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB,CAAC;AAUF,MAAM,WAAW,yBAAyB;IACxC,wCAAwC;IACxC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gCAAgC;IAChC,KAAK,EAAE,OAAO,EAAE,CAAC;IACjB,oCAAoC;IACpC,QAAQ,CAAC,EAAE,OAAO,EAAE,CAAC;IACrB,yCAAyC;IACzC,UAAU,CAAC,EAAE,OAAO,CAAC;IAErB,sEAAsE;IACtE,OAAO,CAAC,EAAE,SAAS,CAAC;IAEpB;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB;;;;;OAKG;IACH,aAAa,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;IAEnC,wFAAwF;IACxF,WAAW,CAAC,EAAE,OAAO,EAAE,CAAC;IAExB,4HAA4H;IAC5H,OAAO,CAAC,EAAE,cAAc,CAAC;IAEzB;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,eAAO,MAAM,oBAAoB,GAAI,gIAWlC,yBAAyB,gCAmI3B,CAAC"}
@@ -1,9 +1,10 @@
1
- import { jsxs, Fragment, jsx } from 'react/jsx-runtime';
1
+ import { jsxs, jsx } from 'react/jsx-runtime';
2
2
  import { SearchLg } from '@flipdish/ui-icons';
3
3
  import { FlipdishLogo } from '@flipdish/ui-library/components/atoms/FlipdishLogo';
4
4
  import { Input } from '@flipdish/ui-library/components/atoms/Input';
5
5
  import { Tabs, TabList } from '@flipdish/ui-library/components/molecules/Tabs';
6
6
  import { cx } from '@flipdish/ui-library/utilities/cx';
7
+ import { useResolvedTestId, joinTestId, TestIdProvider, slugifyTestId } from '@flipdish/ui-library/utilities/testIdUtils';
7
8
  import { MobileNavigationHeader } from './components/mobile-header.js';
8
9
  import { NavAccountCard } from './components/nav-account-card.js';
9
10
  export { NavAccountMenu } from './components/nav-account-card.js';
@@ -21,8 +22,14 @@ const isItemActive = (href, activeUrl) => {
21
22
  return true;
22
23
  return false;
23
24
  };
24
- const HeaderNavigationBase = ({ activeUrl, items, subItems, hideBorder = false, actions, centered = false, secondaryType = 'buttons', footerItems = [], account, }) => {
25
+ const HeaderNavigationBase = ({ activeUrl, items, subItems, hideBorder = false, actions, centered = false, secondaryType = 'buttons', footerItems = [], account, 'data-testid': dataTestId, }) => {
25
26
  const isActive = (item) => item.current ?? isItemActive(item.href, activeUrl);
27
+ const rootTestId = useResolvedTestId({ testId: dataTestId, segment: 'header-navigation', rootName: 'header-navigation' });
28
+ // The mobile drawer and the desktop header both render the same nav items; re-root the
29
+ // drawer subtree under `drawer` so their derived testids don't collide in the DOM.
30
+ const drawerTestId = joinTestId(rootTestId, 'drawer');
31
+ const navItemTestId = (item, base = rootTestId) => item['data-testid'] ?? joinTestId(base, `nav-item-${item.id ?? slugifyTestId(item.label)}`);
32
+ const subNavItemTestId = (item) => item['data-testid'] ?? joinTestId(rootTestId, `sub-nav-${item.id ?? slugifyTestId(item.label)}`);
26
33
  const activeParent = items.find((item) => isActive(item) || item.items?.some((sub) => isItemActive(sub.href, activeUrl)));
27
34
  const activeSubNavItems = subItems || activeParent?.items;
28
35
  const showSecondaryNav = activeSubNavItems && activeSubNavItems.length > 0;
@@ -33,7 +40,7 @@ const HeaderNavigationBase = ({ activeUrl, items, subItems, hideBorder = false,
33
40
  }))
34
41
  : [];
35
42
  const activeTabKey = activeSubNavItems?.find((item) => isActive(item))?.label;
36
- return (jsxs(Fragment, { children: [jsx(MobileNavigationHeader, { children: jsxs("aside", { className: "flex h-full max-w-full flex-col overflow-auto bg-primary pt-4", children: [jsxs("div", { className: "flex flex-col gap-5 px-4", children: [jsx(FlipdishLogo, { size: "sm" }), jsx(Input, { size: "md", "aria-label": "Search", placeholder: "Search", icon: SearchLg })] }), jsx(NavList, { items: items, activeUrl: activeUrl, className: "flex-1" }), (footerItems.length > 0 || account) && (jsxs("div", { className: "mt-auto flex flex-col gap-3 p-4", children: [footerItems.length > 0 && (jsx("div", { className: "flex flex-col", children: footerItems.map((item) => (jsx(NavItemBase, { type: "link", href: item.href, icon: item.icon, badge: item.badge, current: isActive(item), children: item.label }, item.label))) })), account && (jsx(NavAccountCard, { items: account.accounts, selectedAccountId: account.selectedAccountId, menuItems: account.menuItems, bottomMenuItems: account.bottomMenuItems }))] }))] }) }), jsxs("header", { className: "max-lg:hidden", children: [jsx("section", { className: cx('flex h-16 w-full items-center justify-center bg-primary', (!hideBorder || showSecondaryNav) && 'border-b border-secondary'), children: jsxs("div", { className: cx('flex w-full max-w-container items-center pr-3 pl-4 md:px-8', centered && 'gap-8'), children: [jsx("div", { className: cx('flex items-center', centered ? 'flex-1' : 'mr-4'), children: jsx("a", { "aria-label": "Go to homepage", href: "/", className: "rounded-xs outline-focus-ring focus-visible:outline-2 focus-visible:outline-offset-2", children: jsx(FlipdishLogo, { size: "sm" }) }) }), jsx("nav", { children: jsx("ul", { className: "flex items-center gap-0.5", children: items.map((item) => (jsx("li", { children: jsx(NavButton, { current: isActive(item), href: item.href, children: item.label }) }, item.label))) }) }), (actions || centered) && jsx("div", { className: cx('flex items-center gap-3', centered ? 'flex-1 justify-end' : 'ml-auto'), children: actions })] }) }), showSecondaryNav && (jsx("section", { className: cx('flex w-full items-center justify-center bg-primary', !hideBorder && 'border-b border-secondary'), children: secondaryType === 'tabs' ? (jsx("div", { className: "w-full max-w-container px-8 pt-3", children: jsx(Tabs, { selectedKey: activeTabKey, children: jsx(TabList, { size: "sm", type: "underline", items: tabItems, className: "-mb-px before:hidden" }) }) })) : (jsxs("div", { className: cx('flex h-16 w-full max-w-container items-center gap-8 px-8', centered ? 'justify-center' : 'justify-between'), children: [jsx("nav", { children: jsx("ul", { className: cx('flex items-center gap-0.5', centered && 'justify-center'), children: activeSubNavItems.map((item) => (jsx("li", { children: jsx(NavButton, { href: item.href, current: isActive(item), children: item.label }) }, item.label))) }) }), !centered && jsx(Input, { shortcut: true, "aria-label": "Search", placeholder: "Search", icon: SearchLg, size: "sm", className: "max-w-70" })] })) }))] })] }));
43
+ return (jsxs(TestIdProvider, { value: rootTestId, children: [jsx(MobileNavigationHeader, { testIdPrefix: rootTestId, children: jsxs("aside", { className: "flex h-full max-w-full flex-col overflow-auto bg-primary pt-4", children: [jsxs("div", { className: "flex flex-col gap-5 px-4", children: [jsx(FlipdishLogo, { size: "sm" }), jsx(Input, { size: "md", "aria-label": "Search", placeholder: "Search", icon: SearchLg })] }), jsx(NavList, { items: items, activeUrl: activeUrl, className: "flex-1", testIdPrefix: drawerTestId }), (footerItems.length > 0 || account) && (jsxs("div", { className: "mt-auto flex flex-col gap-3 p-4", children: [footerItems.length > 0 && (jsx("div", { className: "flex flex-col", children: footerItems.map((item) => (jsx(NavItemBase, { type: "link", href: item.href, icon: item.icon, badge: item.badge, current: isActive(item), "data-testid": navItemTestId(item, drawerTestId), children: item.label }, item.label))) })), account && (jsx(NavAccountCard, { items: account.accounts, selectedAccountId: account.selectedAccountId, menuItems: account.menuItems, bottomMenuItems: account.bottomMenuItems }))] }))] }) }), jsxs("header", { className: "max-lg:hidden", children: [jsx("section", { className: cx('flex h-16 w-full items-center justify-center bg-primary', (!hideBorder || showSecondaryNav) && 'border-b border-secondary'), children: jsxs("div", { className: cx('flex w-full max-w-container items-center pr-3 pl-4 md:px-8', centered && 'gap-8'), children: [jsx("div", { className: cx('flex items-center', centered ? 'flex-1' : 'mr-4'), children: jsx("a", { "aria-label": "Go to homepage", href: "/", className: "rounded-xs outline-focus-ring focus-visible:outline-2 focus-visible:outline-offset-2", children: jsx(FlipdishLogo, { size: "sm" }) }) }), jsx("nav", { children: jsx("ul", { className: "flex items-center gap-0.5", children: items.map((item) => (jsx("li", { children: jsx(NavButton, { current: isActive(item), href: item.href, "data-testid": navItemTestId(item), children: item.label }) }, item.label))) }) }), (actions || centered) && jsx("div", { className: cx('flex items-center gap-3', centered ? 'flex-1 justify-end' : 'ml-auto'), children: actions })] }) }), showSecondaryNav && (jsx("section", { className: cx('flex w-full items-center justify-center bg-primary', !hideBorder && 'border-b border-secondary'), children: secondaryType === 'tabs' ? (jsx("div", { className: "w-full max-w-container px-8 pt-3", children: jsx(Tabs, { selectedKey: activeTabKey, children: jsx(TabList, { size: "sm", type: "underline", items: tabItems, className: "-mb-px before:hidden" }) }) })) : (jsxs("div", { className: cx('flex h-16 w-full max-w-container items-center gap-8 px-8', centered ? 'justify-center' : 'justify-between'), children: [jsx("nav", { children: jsx("ul", { className: cx('flex items-center gap-0.5', centered && 'justify-center'), children: activeSubNavItems.map((item) => (jsx("li", { children: jsx(NavButton, { href: item.href, current: isActive(item), "data-testid": subNavItemTestId(item), children: item.label }) }, item.label))) }) }), !centered && jsx(Input, { shortcut: true, "aria-label": "Search", placeholder: "Search", icon: SearchLg, size: "sm", className: "max-w-70" })] })) }))] })] }));
37
44
  };
38
45
 
39
46
  export { HeaderNavigationBase, NavAccountCard, NavItemBase };
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../src/components/organisms/HeaderNavigation/index.tsx"],"sourcesContent":[null],"names":["_jsxs","_Fragment","_jsx"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../../../../src/components/organisms/HeaderNavigation/index.tsx"],"sourcesContent":[null],"names":["_jsxs","_jsx"],"mappings":"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"}
@@ -13,14 +13,14 @@ var sidebarMenuButton = require('./sidebar-menu-button.cjs');
13
13
  * Consumers who supply their own header instead should set `showMobileHeader={false}`
14
14
  * and embed a {@link SidebarMenuButton}.
15
15
  */
16
- const MobileNavigationHeader = ({ isOpen, onOpenChange, controls }) => (jsxRuntime.jsxs("header", { className: "flex h-14 items-center justify-between border-b border-secondary bg-secondary p-3 pl-4 lg:hidden", children: [jsxRuntime.jsx(FlipdishLogo.FlipdishLogo, { size: "sm" }), jsxRuntime.jsx(sidebarMenuButton.SidebarMenuButton, { isOpen: isOpen, onPress: () => onOpenChange(!isOpen), controls: controls })] }));
16
+ const MobileNavigationHeader = ({ isOpen, onOpenChange, controls, 'data-testid': dataTestId }) => (jsxRuntime.jsxs("header", { className: "flex h-14 items-center justify-between border-b border-secondary bg-secondary p-3 pl-4 lg:hidden", children: [jsxRuntime.jsx(FlipdishLogo.FlipdishLogo, { size: "sm" }), jsxRuntime.jsx(sidebarMenuButton.SidebarMenuButton, { isOpen: isOpen, onPress: () => onOpenChange(!isOpen), controls: controls, "data-testid": dataTestId })] }));
17
17
  /**
18
18
  * The controlled slide-over drawer that holds the mobile navigation. Its open
19
19
  * state is owned by `SidebarNavigation`, so it can be driven by either the
20
20
  * built-in header or an externally-embedded {@link SidebarMenuButton}. Hidden at
21
21
  * `lg` and up, where the fixed rail takes over.
22
22
  */
23
- const MobileNavigationDrawer = ({ isOpen, onOpenChange, id, children }) => (jsxRuntime.jsx(reactAriaComponents.ModalOverlay, { isDismissable: true, isOpen: isOpen, onOpenChange: onOpenChange, className: ({ isEntering, isExiting }) => cx.cx('fixed inset-0 z-50 cursor-pointer bg-overlay/70 pr-16 backdrop-blur-md lg:hidden', isEntering && 'duration-300 ease-in-out animate-in fade-in', isExiting && 'duration-200 ease-in-out animate-out fade-out'), children: ({ state }) => (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx(reactAriaComponents.Button, { "aria-label": "Close navigation menu", onPress: () => state.close(), className: "fixed top-2.5 right-3 flex cursor-pointer items-center justify-center rounded-lg p-2 text-fg-white/70 outline-focus-ring hover:bg-white/10 hover:text-fg-white focus-visible:outline-2 focus-visible:outline-offset-2", children: jsxRuntime.jsx(uiIcons.X, { className: "size-6" }) }), jsxRuntime.jsx(reactAriaComponents.Modal, { className: "w-full max-w-74 cursor-auto will-change-transform", children: jsxRuntime.jsx(reactAriaComponents.Dialog, { id: id, className: "h-dvh outline-hidden focus:outline-hidden", children: children }) })] })) }));
23
+ const MobileNavigationDrawer = ({ isOpen, onOpenChange, id, children, 'aria-label': ariaLabel = 'Navigation menu', 'data-testid': dataTestId, }) => (jsxRuntime.jsx(reactAriaComponents.ModalOverlay, { isDismissable: true, isOpen: isOpen, onOpenChange: onOpenChange, className: ({ isEntering, isExiting }) => cx.cx('fixed inset-0 z-50 cursor-pointer bg-overlay/70 pr-16 backdrop-blur-md lg:hidden', isEntering && 'duration-300 ease-in-out animate-in fade-in', isExiting && 'duration-200 ease-in-out animate-out fade-out'), children: ({ state }) => (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx(reactAriaComponents.Button, { "aria-label": "Close navigation menu", "data-testid": dataTestId, onPress: () => state.close(), className: "fixed top-2.5 right-3 flex cursor-pointer items-center justify-center rounded-lg p-2 text-fg-white/70 outline-focus-ring hover:bg-white/10 hover:text-fg-white focus-visible:outline-2 focus-visible:outline-offset-2", children: jsxRuntime.jsx(uiIcons.X, { className: "size-6" }) }), jsxRuntime.jsx(reactAriaComponents.Modal, { className: "w-full max-w-74 cursor-auto will-change-transform", children: jsxRuntime.jsx(reactAriaComponents.Dialog, { id: id, "aria-label": ariaLabel, className: "h-dvh outline-hidden focus:outline-hidden", children: children }) })] })) }));
24
24
 
25
25
  exports.MobileNavigationDrawer = MobileNavigationDrawer;
26
26
  exports.MobileNavigationHeader = MobileNavigationHeader;