@servicetitan/anvil2 1.38.0 → 1.40.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 (201) hide show
  1. package/CHANGELOG.md +51 -12
  2. package/dist/Breadcrumbs-C_gan90a.js +36 -0
  3. package/dist/Breadcrumbs-C_gan90a.js.map +1 -0
  4. package/dist/{Breadcrumbs-DJbCkSeD.js → Breadcrumbs-D_jgwoN3-Dlw-weD8.js} +8 -38
  5. package/dist/Breadcrumbs-D_jgwoN3-Dlw-weD8.js.map +1 -0
  6. package/dist/Breadcrumbs.js +1 -1
  7. package/dist/{Calendar-jl0s6W7p.js → Calendar-C2ONV7cq.js} +2 -2
  8. package/dist/{Calendar-jl0s6W7p.js.map → Calendar-C2ONV7cq.js.map} +1 -1
  9. package/dist/{Calendar-CohGSWFp-DFYJkf7Y.js → Calendar-DixTCgAW-CfphBge0.js} +16 -15
  10. package/dist/Calendar-DixTCgAW-CfphBge0.js.map +1 -0
  11. package/dist/Calendar.js +1 -1
  12. package/dist/{Checkbox-TIcImbEx-EgjesTNn.js → Checkbox-BNrjUtHs-BBLXLwO5.js} +3 -3
  13. package/dist/{Checkbox-TIcImbEx-EgjesTNn.js.map → Checkbox-BNrjUtHs-BBLXLwO5.js.map} +1 -1
  14. package/dist/{Checkbox-DbDwtefR.js → Checkbox-Dxr3rgQV.js} +2 -2
  15. package/dist/{Checkbox-DbDwtefR.js.map → Checkbox-Dxr3rgQV.js.map} +1 -1
  16. package/dist/Checkbox.js +1 -1
  17. package/dist/{Combobox-7ADxZKDE.js → Combobox-C7nV-w8I.js} +196 -392
  18. package/dist/Combobox-C7nV-w8I.js.map +1 -0
  19. package/dist/Combobox.css +43 -281
  20. package/dist/Combobox.js +1 -1
  21. package/dist/{DateField-CUO_26rh.js → DateField-Df42sxE9.js} +43 -43
  22. package/dist/DateField-Df42sxE9.js.map +1 -0
  23. package/dist/DateField.js +1 -1
  24. package/dist/DateFieldRange--ZCTVrKX-DoogWMrm.js +2759 -0
  25. package/dist/DateFieldRange--ZCTVrKX-DoogWMrm.js.map +1 -0
  26. package/dist/DateFieldRange-DQJ_FMeA.js +22 -0
  27. package/dist/DateFieldRange-DQJ_FMeA.js.map +1 -0
  28. package/dist/DateFieldRange.d.ts +2 -0
  29. package/dist/DateFieldRange.js +2 -0
  30. package/dist/DateFieldRange.js.map +1 -0
  31. package/dist/DateFieldSingle-BXPhS91g.js +22 -0
  32. package/dist/DateFieldSingle-BXPhS91g.js.map +1 -0
  33. package/dist/DateFieldSingle.d.ts +2 -0
  34. package/dist/DateFieldSingle.js +2 -0
  35. package/dist/DateFieldSingle.js.map +1 -0
  36. package/dist/{DaysOfTheWeek-CEKoAJSv.js → DaysOfTheWeek-C4ZGriW7.js} +3 -3
  37. package/dist/{DaysOfTheWeek-CEKoAJSv.js.map → DaysOfTheWeek-C4ZGriW7.js.map} +1 -1
  38. package/dist/DaysOfTheWeek.js +1 -1
  39. package/dist/{Dialog-D6zpW-GE.js → Dialog-CBWaZO5U.js} +2 -2
  40. package/dist/{Dialog-D6zpW-GE.js.map → Dialog-CBWaZO5U.js.map} +1 -1
  41. package/dist/Dialog.js +1 -1
  42. package/dist/{Drawer-qb7Q0BAm.js → Drawer-Be0tyTMM.js} +2 -2
  43. package/dist/{Drawer-qb7Q0BAm.js.map → Drawer-Be0tyTMM.js.map} +1 -1
  44. package/dist/Drawer.js +1 -1
  45. package/dist/{FieldMessage-ChFXWVDb-loVSCnCM.js → FieldMessage-Bobp105T-DYhStLY4.js} +4 -4
  46. package/dist/FieldMessage-Bobp105T-DYhStLY4.js.map +1 -0
  47. package/dist/{FieldMessage-ChFXWVDb.css → FieldMessage-Bobp105T.css} +13 -3
  48. package/dist/{FieldMessage-Cg3zcgk5.js → FieldMessage-DkJ0K5s-.js} +2 -2
  49. package/dist/{FieldMessage-Cg3zcgk5.js.map → FieldMessage-DkJ0K5s-.js.map} +1 -1
  50. package/dist/FieldMessage.js +1 -1
  51. package/dist/{Helper-C9sHaTrI-C5fAsK6i.js → Helper-h7k80qls-DHPFHTvI.js} +3 -3
  52. package/dist/{Helper-C9sHaTrI-C5fAsK6i.js.map → Helper-h7k80qls-DHPFHTvI.js.map} +1 -1
  53. package/dist/{InputMask-kJ-hlK0O-Ctwa0U7r.js → InputMask-CiHg25XE--lofQ4oF.js} +2 -2
  54. package/dist/{InputMask-kJ-hlK0O-Ctwa0U7r.js.map → InputMask-CiHg25XE--lofQ4oF.js.map} +1 -1
  55. package/dist/{InputMask-DKPqOpHs.js → InputMask-DYthrVaU.js} +2 -2
  56. package/dist/{InputMask-DKPqOpHs.js.map → InputMask-DYthrVaU.js.map} +1 -1
  57. package/dist/InputMask.js +1 -1
  58. package/dist/{ListView-0xHc5wT6.js → ListView-DgrUsTC8.js} +3 -3
  59. package/dist/{ListView-0xHc5wT6.js.map → ListView-DgrUsTC8.js.map} +1 -1
  60. package/dist/ListView.js +1 -1
  61. package/dist/Menu-By8ps-lb.js +60 -0
  62. package/dist/Menu-By8ps-lb.js.map +1 -0
  63. package/dist/{Menu-BAuADOyt.js → Menu-jt64Cbkd-mK95uUq6.js} +23 -73
  64. package/dist/Menu-jt64Cbkd-mK95uUq6.js.map +1 -0
  65. package/dist/{Menu.css → Menu-jt64Cbkd.css} +22 -21
  66. package/dist/Menu.js +1 -1
  67. package/dist/{Page-CtwsyE3i.js → Page-DoCYLmH8.js} +135 -105
  68. package/dist/Page-DoCYLmH8.js.map +1 -0
  69. package/dist/Page.js +1 -1
  70. package/dist/Pagination.css +124 -0
  71. package/dist/Pagination.d.ts +6 -0
  72. package/dist/Pagination.js +430 -0
  73. package/dist/Pagination.js.map +1 -0
  74. package/dist/{Popover-VztF0YHt-ci3tYiye.js → Popover-CVCAWhdO-CJw1mW49.js} +3 -3
  75. package/dist/{Popover-VztF0YHt-ci3tYiye.js.map → Popover-CVCAWhdO-CJw1mW49.js.map} +1 -1
  76. package/dist/{Popover-Bnkwq99S.js → Popover-Dv7ntx4P.js} +2 -2
  77. package/dist/{Popover-Bnkwq99S.js.map → Popover-Dv7ntx4P.js.map} +1 -1
  78. package/dist/Popover.js +1 -1
  79. package/dist/{ProgressBar-Cfi5zZRy-BpESsdh_.js → ProgressBar-CZhkKwaS-dlDRDjxo.js} +24 -11
  80. package/dist/ProgressBar-CZhkKwaS-dlDRDjxo.js.map +1 -0
  81. package/dist/{ProgressBar-BotOFymw.js → ProgressBar-Eeudkcyc.js} +2 -2
  82. package/dist/{ProgressBar-BotOFymw.js.map → ProgressBar-Eeudkcyc.js.map} +1 -1
  83. package/dist/ProgressBar.js +1 -1
  84. package/dist/{Radio-7U7IBI58-BDhdZJoC.js → Radio-DiBn0-hf-hhLKXDdl.js} +4 -4
  85. package/dist/{Radio-7U7IBI58-BDhdZJoC.js.map → Radio-DiBn0-hf-hhLKXDdl.js.map} +1 -1
  86. package/dist/{Radio-D4rRt1a6.js → Radio-Dx2GeEZp.js} +2 -2
  87. package/dist/{Radio-D4rRt1a6.js.map → Radio-Dx2GeEZp.js.map} +1 -1
  88. package/dist/Radio.js +1 -1
  89. package/dist/{SearchField-Bz4HPxCQ.js → SearchField-BQY7LHe2.js} +3 -3
  90. package/dist/SearchField-BQY7LHe2.js.map +1 -0
  91. package/dist/SearchField.js +1 -1
  92. package/dist/{SelectCard-B5EqtxOK-CpCgVjV8.js → SelectCard-CL8T4DQb-ClozUyqV.js} +46 -26
  93. package/dist/SelectCard-CL8T4DQb-ClozUyqV.js.map +1 -0
  94. package/dist/SelectCard-CL8T4DQb.css +51 -0
  95. package/dist/SelectCard.js +1 -1
  96. package/dist/{SelectCardGroup-DsHZgCqA.js → SelectCardGroup-KTtcsOar.js} +2 -2
  97. package/dist/{SelectCardGroup-DsHZgCqA.js.map → SelectCardGroup-KTtcsOar.js.map} +1 -1
  98. package/dist/SelectTrigger-BvUO-g1F.js +138 -0
  99. package/dist/SelectTrigger-BvUO-g1F.js.map +1 -0
  100. package/dist/SelectTrigger.css +16 -0
  101. package/dist/SelectTrigger.d.ts +6 -0
  102. package/dist/SelectTrigger.js +2 -0
  103. package/dist/SelectTrigger.js.map +1 -0
  104. package/dist/SelectTriggerBase-BMhRDkFW-DjkagPpu.js +301 -0
  105. package/dist/SelectTriggerBase-BMhRDkFW-DjkagPpu.js.map +1 -0
  106. package/dist/SelectTriggerBase-BMhRDkFW.css +270 -0
  107. package/dist/{Switch-Dd9tJFmG.js → Switch-DAQFzi-X.js} +2 -2
  108. package/dist/{Switch-Dd9tJFmG.js.map → Switch-DAQFzi-X.js.map} +1 -1
  109. package/dist/Switch.js +1 -1
  110. package/dist/{TextField-BYyyw3m2.js → TextField-0XKj7lDu.js} +2 -2
  111. package/dist/{TextField-BYyyw3m2.js.map → TextField-0XKj7lDu.js.map} +1 -1
  112. package/dist/{TextField-CGJtMoil-CJqYM83o.js → TextField-C5KbQxoU-CSkSyt7P.js} +8 -10
  113. package/dist/TextField-C5KbQxoU-CSkSyt7P.js.map +1 -0
  114. package/dist/TextField.js +1 -1
  115. package/dist/{Textarea-AczEXhHB.js → Textarea-DkSeFIg7.js} +8 -10
  116. package/dist/Textarea-DkSeFIg7.js.map +1 -0
  117. package/dist/Textarea.js +1 -1
  118. package/dist/Toast.js +1 -1
  119. package/dist/{Toolbar-Cu3u0TRX.js → Toolbar-38Z9fVxY.js} +5 -7
  120. package/dist/Toolbar-38Z9fVxY.js.map +1 -0
  121. package/dist/Toolbar.js +1 -1
  122. package/dist/{Tooltip-BL_bgvwA.js → Tooltip-BwUVaBEo.js} +2 -2
  123. package/dist/{Tooltip-BL_bgvwA.js.map → Tooltip-BwUVaBEo.js.map} +1 -1
  124. package/dist/Tooltip.js +1 -1
  125. package/dist/assets/css-utils/a2-border.css +53 -0
  126. package/dist/assets/css-utils/a2-color.css +235 -0
  127. package/dist/assets/css-utils/a2-font.css +49 -0
  128. package/dist/assets/css-utils/a2-spacing.css +483 -0
  129. package/dist/assets/css-utils/a2-utils.css +785 -0
  130. package/dist/assets/icons/st/document_audio.svg +1 -0
  131. package/dist/assets/icons/st/document_doc.svg +1 -0
  132. package/dist/assets/icons/st/document_drawing.svg +1 -0
  133. package/dist/assets/icons/st/document_form.svg +1 -0
  134. package/dist/assets/icons/st/document_message.svg +1 -0
  135. package/dist/assets/icons/st/document_other.svg +1 -0
  136. package/dist/assets/icons/st/document_pdf.svg +1 -0
  137. package/dist/assets/icons/st/document_spreadsheet.svg +1 -0
  138. package/dist/assets/icons/st/document_text.svg +1 -0
  139. package/dist/assets/icons/st/document_web.svg +1 -0
  140. package/dist/assets/icons/st/gnav_insurance_work_queue_active.svg +1 -0
  141. package/dist/assets/icons/st/gnav_insurance_work_queue_inactive.svg +1 -0
  142. package/dist/assets/icons/st/gnav_production_work_queue_active.svg +1 -0
  143. package/dist/assets/icons/st/gnav_production_work_queue_inactive.svg +1 -0
  144. package/dist/assets/icons/st.ts +14 -0
  145. package/dist/components/Alert/Alert.figma.d.ts +1 -0
  146. package/dist/components/DateFieldRange/DateFieldRange.d.ts +7 -0
  147. package/dist/components/DateFieldRange/index.d.ts +2 -0
  148. package/dist/components/DateFieldSingle/DateFieldSingle.d.ts +7 -0
  149. package/dist/components/DateFieldSingle/index.d.ts +2 -0
  150. package/dist/components/Page/Page.d.ts +19 -352
  151. package/dist/components/Page/PageContent.d.ts +24 -0
  152. package/dist/components/Page/PageContext.d.ts +4 -0
  153. package/dist/components/Page/PageFooter.d.ts +24 -0
  154. package/dist/components/Page/PageHeader.d.ts +135 -0
  155. package/dist/components/Page/PagePanel.d.ts +57 -0
  156. package/dist/components/Page/PageSidebar.d.ts +57 -0
  157. package/dist/components/Page/PageSidebarContext.d.ts +5 -0
  158. package/dist/components/Page/PageSidebarHeader.d.ts +23 -0
  159. package/dist/components/Page/index.d.ts +5 -0
  160. package/dist/components/Pagination/Pagination.d.ts +58 -0
  161. package/dist/components/Pagination/index.d.ts +2 -0
  162. package/dist/components/Pagination/internal/usePaginationArray.d.ts +36 -0
  163. package/dist/components/SelectTrigger/SelectTrigger.d.ts +11 -0
  164. package/dist/components/SelectTrigger/index.d.ts +2 -0
  165. package/dist/components/index.d.ts +3 -0
  166. package/dist/event-BEJFimi3.js +6 -0
  167. package/dist/event-BEJFimi3.js.map +1 -0
  168. package/dist/index.js +27 -24
  169. package/dist/index.js.map +1 -1
  170. package/dist/keyboard_arrow_right-DZWNVytH.js +8 -0
  171. package/dist/keyboard_arrow_right-DZWNVytH.js.map +1 -0
  172. package/dist/more_horiz-DJgdQiy0.js +6 -0
  173. package/dist/more_horiz-DJgdQiy0.js.map +1 -0
  174. package/dist/{toast-B39L6vJ0.js → toast-CWVuLkyv.js} +2 -2
  175. package/dist/{toast-B39L6vJ0.js.map → toast-CWVuLkyv.js.map} +1 -1
  176. package/dist/token/core/css-utils/a2-border.css +53 -0
  177. package/dist/token/core/css-utils/a2-color.css +235 -0
  178. package/dist/token/core/css-utils/a2-font.css +49 -0
  179. package/dist/token/core/css-utils/a2-spacing.css +483 -0
  180. package/dist/token/core/css-utils/a2-utils.css +785 -0
  181. package/package.json +8 -5
  182. package/dist/Breadcrumbs-DJbCkSeD.js.map +0 -1
  183. package/dist/Calendar-CohGSWFp-DFYJkf7Y.js.map +0 -1
  184. package/dist/Combobox-7ADxZKDE.js.map +0 -1
  185. package/dist/DateField-CUO_26rh.js.map +0 -1
  186. package/dist/FieldMessage-ChFXWVDb-loVSCnCM.js.map +0 -1
  187. package/dist/Menu-BAuADOyt.js.map +0 -1
  188. package/dist/Page-CtwsyE3i.js.map +0 -1
  189. package/dist/ProgressBar-Cfi5zZRy-BpESsdh_.js.map +0 -1
  190. package/dist/SearchField-Bz4HPxCQ.js.map +0 -1
  191. package/dist/SelectCard-B5EqtxOK-CpCgVjV8.js.map +0 -1
  192. package/dist/SelectCard-B5EqtxOK.css +0 -38
  193. package/dist/TextField-CGJtMoil-CJqYM83o.js.map +0 -1
  194. package/dist/Textarea-AczEXhHB.js.map +0 -1
  195. package/dist/Toolbar-Cu3u0TRX.js.map +0 -1
  196. /package/dist/{Breadcrumbs.css → Breadcrumbs-D_jgwoN3.css} +0 -0
  197. /package/dist/{Calendar-CohGSWFp.css → Calendar-DixTCgAW.css} +0 -0
  198. /package/dist/{Helper-C9sHaTrI.css → Helper-h7k80qls.css} +0 -0
  199. /package/dist/{Popover-VztF0YHt.css → Popover-CVCAWhdO.css} +0 -0
  200. /package/dist/{ProgressBar-Cfi5zZRy.css → ProgressBar-CZhkKwaS.css} +0 -0
  201. /package/dist/{Radio-7U7IBI58.css → Radio-DiBn0-hf.css} +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"file":"Toolbar-Cu3u0TRX.js","sources":["../../hammer-icon/mdi/round/more_horiz.svg","../../hammer-react/dist/useIntersectionObserver-BEmMDO3P.js","../../hammer-react/dist/Toolbar-Dfqx7Ge6.js","../src/components/Toolbar/Toolbar.tsx"],"sourcesContent":["import * as React from \"react\";\nconst SvgMoreHoriz = (props) => /* @__PURE__ */ React.createElement(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: \"1em\", height: \"1em\", viewBox: \"0 0 24 24\", ...props }, /* @__PURE__ */ React.createElement(\"path\", { d: \"M6 10c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm12 0c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm-6 0c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2z\" }));\nexport default SvgMoreHoriz;\n","import { useState, useRef, useEffect } from 'react';\n\nfunction useIntersectionObserver({\n threshold = 0,\n root = null,\n rootMargin = \"0%\",\n freezeOnceVisible = false,\n initialIsIntersecting = false,\n onChange\n} = {}) {\n const [ref, setRef] = useState(null);\n const [state, setState] = useState(() => ({\n isIntersecting: initialIsIntersecting,\n entry: void 0\n }));\n const callbackRef = useRef();\n callbackRef.current = onChange;\n const frozen = state.entry?.isIntersecting && freezeOnceVisible;\n useEffect(() => {\n if (!ref) return;\n if (!(\"IntersectionObserver\" in window)) return;\n if (frozen) return;\n const observer = new IntersectionObserver(\n (entries) => {\n const thresholds = Array.isArray(observer.thresholds) ? observer.thresholds : [observer.thresholds];\n entries.forEach((entry) => {\n const isIntersecting = entry.isIntersecting && thresholds.some(\n (threshold2) => entry.intersectionRatio >= threshold2\n );\n setState({ isIntersecting, entry });\n if (callbackRef.current) {\n callbackRef.current(isIntersecting, entry);\n }\n });\n },\n { threshold, root, rootMargin }\n );\n observer.observe(ref);\n return () => {\n observer.disconnect();\n };\n }, [\n ref,\n // eslint-disable-next-line react-hooks/exhaustive-deps\n JSON.stringify(threshold),\n root,\n rootMargin,\n frozen,\n freezeOnceVisible\n ]);\n const prevRef = useRef(null);\n useEffect(() => {\n if (!ref && state.entry?.target && !freezeOnceVisible && !frozen && prevRef.current !== state.entry.target) {\n prevRef.current = state.entry.target;\n setState({ isIntersecting: initialIsIntersecting, entry: void 0 });\n }\n }, [ref, state.entry, freezeOnceVisible, frozen, initialIsIntersecting]);\n const result = [\n setRef,\n !!state.isIntersecting,\n state.entry\n ];\n result.ref = result[0];\n result.isIntersecting = result[1];\n result.entry = result[2];\n return result;\n}\n\nexport { useIntersectionObserver as u };\n//# sourceMappingURL=useIntersectionObserver-BEmMDO3P.js.map\n","import { jsx, jsxs } from 'react/jsx-runtime';\nimport { useContext, useId, useRef, useCallback, useEffect, forwardRef, useState, useMemo, createContext } from 'react';\nimport { B as Button } from './Button-BaHFf1AT.js';\nimport { B as ButtonToggle } from './ButtonToggle-Bm4KRl3o.js';\nimport { P as Popover } from './Popover-VztF0YHt.js';\nimport { I as Icon } from './Icon-B6HmlQiR.js';\nimport MoreHoriz from '@servicetitan/hammer-icon/mdi/round/more_horiz.svg';\nimport MoreVert from '@servicetitan/hammer-icon/mdi/round//more_vert.svg';\nimport { B as ButtonLink } from './ButtonLink-5qlX0uZx.js';\nimport cx from 'classnames';\nimport { g as Tooltip } from './ProgressBar-Cfi5zZRy.js';\nimport { L as Listbox } from './Listbox-BvJLSAVO.js';\nimport Down from '@servicetitan/hammer-icon/mdi/round/arrow_drop_down.svg';\nimport { getKeyboardFocusableElements } from './getKeyboardFocusableElements.js';\nimport { F as Flex } from './Flex-CiK7uNUu.js';\nimport { u as useLayoutPropsUtil } from './useLayoutPropsUtil-DWACCL8v.js';\nimport { u as useMergeRefs } from './useMergeRefs-Bde85AWI.js';\nimport { u as useIntersectionObserver } from './useIntersectionObserver-BEmMDO3P.js';\n\nimport './Toolbar.css';const toolbar = \"_toolbar_a1ext_3\";\nconst styles = {\n\ttoolbar: toolbar,\n\t\"toolbar-content\": \"_toolbar-content_a1ext_10\",\n\t\"toolbar-overflow-content\": \"_toolbar-overflow-content_a1ext_13\",\n\t\"toolbar-button-item\": \"_toolbar-button-item_a1ext_21\",\n\t\"toolbar-item\": \"_toolbar-item_a1ext_27\",\n\t\"overflow-collapse\": \"_overflow-collapse_a1ext_31\",\n\t\"toolbar-button-toggle-item\": \"_toolbar-button-toggle-item_a1ext_55\",\n\t\"toolbar-overflow-trigger\": \"_toolbar-overflow-trigger_a1ext_61\"\n};\n\nfunction getToolbarElements(toolbarElement) {\n const toolbarContent = toolbarElement.querySelector(\n '[data-anv=\"toolbar-content\"]'\n );\n const mainItems = getKeyboardFocusableElements(toolbarContent).filter(\n (item) => {\n const isVisible = !item.closest('[aria-hidden=\"true\"]');\n return isVisible;\n }\n );\n const overflowTrigger = toolbarElement.querySelector(\n '[data-anv=\"toolbar-overflow-trigger\"]'\n );\n return overflowTrigger ? [...mainItems, overflowTrigger] : mainItems;\n}\nfunction updateToolbarItemsTabIndex(toolbarElement, activeItem) {\n if (!toolbarElement) return;\n const items = getToolbarElements(toolbarElement);\n if (!items.length) return;\n let activeIndex = 0;\n if (typeof activeItem === \"number\") {\n activeIndex = Math.max(0, Math.min(activeItem, items.length - 1));\n } else if (activeItem instanceof Element) {\n const foundIndex = items.indexOf(activeItem);\n if (foundIndex !== -1) {\n activeIndex = foundIndex;\n }\n }\n items.forEach((item, index) => {\n item.setAttribute(\"tabindex\", index === activeIndex ? \"0\" : \"-1\");\n });\n return items[activeIndex];\n}\nfunction handleToolbarKeyDown(event, toolbarElement) {\n if (!toolbarElement || event.altKey || event.ctrlKey || event.metaKey) return;\n const items = getToolbarElements(toolbarElement);\n if (!items.length) return;\n const activeElement = event.target;\n if (!toolbarElement.contains(activeElement)) return;\n const activeItem = items.find(\n (item) => item === activeElement || Array.from(item.children).some((child) => child === activeElement)\n );\n const activeIndex = activeItem ? items.indexOf(activeItem) : -1;\n if (activeIndex === -1) return;\n let nextIndex = activeIndex;\n const isVertical = toolbarElement.getAttribute(\"aria-orientation\") === \"vertical\";\n switch (event.key) {\n case \"ArrowLeft\":\n case \"ArrowUp\":\n event.preventDefault();\n if (isVertical && event.key === \"ArrowUp\" || !isVertical && event.key === \"ArrowLeft\") {\n nextIndex = activeIndex <= 0 ? items.length - 1 : activeIndex - 1;\n }\n break;\n case \"ArrowRight\":\n case \"ArrowDown\":\n event.preventDefault();\n if (isVertical && event.key === \"ArrowDown\" || !isVertical && event.key === \"ArrowRight\") {\n nextIndex = activeIndex >= items.length - 1 ? 0 : activeIndex + 1;\n }\n break;\n case \"Home\":\n event.preventDefault();\n nextIndex = 0;\n break;\n case \"End\":\n event.preventDefault();\n nextIndex = items.length - 1;\n break;\n default:\n return;\n }\n updateToolbarItemsTabIndex(toolbarElement, nextIndex);\n items[nextIndex]?.focus();\n}\nconst handleMenuKeyboardNavigation = (event) => {\n const menuItems = Array.from(\n event.currentTarget.querySelectorAll('[role=\"menuitem\"]')\n ).map((menuItem) => {\n return getKeyboardFocusableElements(menuItem)[0] || menuItem;\n });\n if (!menuItems.length) return;\n const currentIndex = menuItems.indexOf(document.activeElement);\n if (currentIndex === -1) return;\n let nextIndex = currentIndex;\n const isModifierKey = event.altKey || event.ctrlKey || event.metaKey;\n if (isModifierKey) return;\n switch (event.key) {\n case \"ArrowDown\":\n case \"ArrowUp\": {\n event.preventDefault();\n const direction = event.key === \"ArrowDown\" ? 1 : -1;\n nextIndex = (currentIndex + direction + menuItems.length) % menuItems.length;\n break;\n }\n case \"Home\":\n event.preventDefault();\n nextIndex = 0;\n break;\n case \"End\":\n event.preventDefault();\n nextIndex = menuItems.length - 1;\n break;\n default:\n return;\n }\n menuItems[nextIndex]?.focus();\n};\n\nconst ToolbarItemWrapper = ({\n item,\n children\n}) => {\n const { addItem, removeItem, toolbarRef, overflow } = useContext(\n ToolbarOverflowContext\n );\n const itemId = useId();\n const elementRef = useRef(null);\n const prevIntersectingRef = useRef(true);\n const isCollapseMode = overflow === \"collapse\";\n const handleVisibilityChange = useCallback(\n (isVisible) => {\n if (!isCollapseMode || prevIntersectingRef.current === isVisible) return;\n const itemWithId = { ...item, id: itemId };\n if (isVisible) {\n removeItem(itemWithId);\n } else {\n addItem(itemWithId);\n }\n prevIntersectingRef.current = isVisible;\n },\n [isCollapseMode, item, itemId, addItem, removeItem]\n );\n const { isIntersecting, ref } = useIntersectionObserver({\n root: isCollapseMode ? toolbarRef.current : null,\n threshold: 1,\n initialIsIntersecting: false,\n onChange: handleVisibilityChange\n });\n const setRefCallback = useCallback(\n (node) => {\n elementRef.current = node;\n if (isCollapseMode) {\n ref(node);\n }\n },\n [ref, isCollapseMode]\n );\n const handleFocusOrClick = useCallback(() => {\n if (!toolbarRef.current || !elementRef.current) return;\n const currentElement = elementRef.current.querySelector(\"button, a, input\");\n if (!currentElement) return;\n updateToolbarItemsTabIndex(toolbarRef.current, currentElement);\n }, [toolbarRef]);\n useEffect(() => {\n const interactiveEl = elementRef.current?.querySelector(\"button, a, input\");\n if (!interactiveEl) return;\n interactiveEl.addEventListener(\"focus\", handleFocusOrClick);\n interactiveEl.addEventListener(\"click\", handleFocusOrClick);\n return () => {\n interactiveEl.removeEventListener(\"focus\", handleFocusOrClick);\n interactiveEl.removeEventListener(\"click\", handleFocusOrClick);\n };\n }, [handleFocusOrClick]);\n useEffect(() => {\n if (isCollapseMode) {\n prevIntersectingRef.current = true;\n }\n }, [isCollapseMode]);\n const isHidden = isCollapseMode && !isIntersecting;\n return /* @__PURE__ */ jsx(\n \"div\",\n {\n ref: setRefCallback,\n className: styles[\"toolbar-item\"],\n style: { visibility: isHidden ? \"hidden\" : \"visible\" },\n \"aria-hidden\": isHidden,\n ...{ inert: isHidden ? \"\" : void 0 },\n \"data-id\": itemId,\n \"data-anv\": \"toolbar-item\",\n children\n }\n );\n};\n\nconst ToolbarButtonToggle = forwardRef((props, _ref) => {\n const { className, children, ...rest } = props;\n const { isInOverflowMenu = false } = useOverFlowItemContext?.() || {};\n const buttonToggleClassNames = cx(\n className,\n styles[\"toolbar-button-item\"],\n styles[\"toolbar-button-toggle-item\"]\n );\n const item = children ? /* @__PURE__ */ jsx(\n ButtonToggle,\n {\n size: \"small\",\n \"data-anv\": \"toolbar-button-toggle\",\n className: buttonToggleClassNames,\n ...rest,\n children\n }\n ) : /* @__PURE__ */ jsxs(Tooltip, { children: [\n /* @__PURE__ */ jsx(Tooltip.Trigger, { children: /* @__PURE__ */ jsx(\n ButtonToggle,\n {\n size: \"small\",\n \"data-anv\": \"toolbar-button-toggle\",\n className: buttonToggleClassNames,\n ...rest\n }\n ) }),\n /* @__PURE__ */ jsx(Tooltip.Content, { children: rest[\"aria-label\"] })\n ] });\n if (isInOverflowMenu) {\n return item;\n }\n return /* @__PURE__ */ jsx(ToolbarItemWrapper, { item: { itemProps: props, itemType: \"buttonToggle\" }, children: item });\n});\nToolbarButtonToggle.displayName = \"ToolbarButtonToggle\";\n\nconst ToolbarButtonLink = forwardRef(\n (props, _ref) => {\n const { appearance = \"ghost\", className, children, ...rest } = props;\n const { isInOverflowMenu = false } = useOverFlowItemContext?.() || {};\n const buttonLinkClassNames = cx(className, styles[\"toolbar-button-item\"]);\n const item = children ? /* @__PURE__ */ jsx(\n ButtonLink,\n {\n appearance,\n size: \"small\",\n \"data-anv\": \"toolbar-button-link\",\n className: buttonLinkClassNames,\n ...rest,\n children\n }\n ) : /* @__PURE__ */ jsxs(Tooltip, { children: [\n /* @__PURE__ */ jsx(Tooltip.Trigger, { children: /* @__PURE__ */ jsx(\n ButtonLink,\n {\n appearance,\n size: \"small\",\n \"data-anv\": \"toolbar-button-link\",\n className: buttonLinkClassNames,\n ...rest\n }\n ) }),\n /* @__PURE__ */ jsx(Tooltip.Content, { children: rest[\"aria-label\"] })\n ] });\n if (isInOverflowMenu) {\n return item;\n }\n return /* @__PURE__ */ jsx(ToolbarItemWrapper, { item: { itemProps: props, itemType: \"buttonLink\" }, children: item });\n }\n);\nToolbarButtonLink.displayName = \"ToolbarButtonLink\";\n\nconst ToolbarSelect = forwardRef(\n (props, _ref) => {\n const {\n appearance = \"ghost\",\n onChange,\n selected: selectedItemId,\n accessibleLabel,\n className,\n items,\n ...rest\n } = props;\n const selectId = useId();\n const defaultId = items.length > 0 ? items[0].id : \"\";\n const [internalSelectedId, setInternalSelectedId] = useState(defaultId);\n const selectedId = selectedItemId ?? internalSelectedId;\n const selectedItem = items.find((item2) => item2.id === selectedId) || items.find((item2) => item2.id === defaultId);\n useEffect(() => {\n if (!selectedItemId && items.length > 0 && !items.some((item2) => item2.id === internalSelectedId)) {\n setInternalSelectedId(items[0].id);\n }\n }, [items, selectedItemId, internalSelectedId]);\n const handleSelectionChange = (selected) => {\n if (selected?.id) {\n if (selectedItemId === void 0) {\n setInternalSelectedId(selected.id);\n }\n onChange?.(selected.id);\n }\n };\n const { isInOverflowMenu = false } = useOverFlowItemContext?.() || {};\n const buttonClassNames = cx(className, styles[\"toolbar-button-item\"]);\n const item = /* @__PURE__ */ jsxs(Popover, { noPadding: true, children: [\n /* @__PURE__ */ jsx(\n Popover.Button,\n {\n appearance,\n size: \"small\",\n icon: { after: Down },\n className: buttonClassNames,\n id: selectId,\n \"data-anv\": \"toolbar-select\",\n ...rest,\n children: selectedItem?.label\n }\n ),\n /* @__PURE__ */ jsx(\n Popover.Content,\n {\n className: styles[\"toolbar-select-content\"],\n \"aria-label\": `${accessibleLabel} options`,\n children: /* @__PURE__ */ jsx(\n Listbox,\n {\n selected: selectedItem,\n onSelectionChange: handleSelectionChange,\n items,\n \"aria-labelledby\": selectId,\n children: ({ items: items2 }) => items2.map((item2) => /* @__PURE__ */ jsx(Listbox.Option, { item: item2, children: item2.label }, item2.label))\n }\n )\n }\n )\n ] });\n if (isInOverflowMenu) {\n return item;\n }\n return /* @__PURE__ */ jsx(ToolbarItemWrapper, { item: { itemProps: props, itemType: \"select\" }, children: item });\n }\n);\nToolbarSelect.displayName = \"ToolbarSelect\";\n\nconst OverflowItemContext = createContext({\n isInOverflowMenu: false\n});\nconst useOverFlowItemContext = () => useContext(OverflowItemContext);\nconst OverflowItem = ({ itemType, itemProps }) => {\n switch (itemType) {\n case \"button\":\n return /* @__PURE__ */ jsx(ToolbarButton, { ...itemProps });\n case \"buttonToggle\":\n return /* @__PURE__ */ jsx(ToolbarButtonToggle, { ...itemProps });\n case \"buttonLink\":\n return /* @__PURE__ */ jsx(ToolbarButtonLink, { ...itemProps });\n case \"select\":\n return /* @__PURE__ */ jsx(ToolbarSelect, { ...itemProps });\n default:\n return null;\n }\n};\nconst ToolbarOverflowMenu = ({\n additionalItems,\n direction\n}) => {\n const { overflowItems, orderedIds } = useContext(ToolbarOverflowContext);\n const menuTriggerId = useId();\n const orderedItems = useMemo(() => {\n const allElements = orderedIds?.map((id) => {\n return overflowItems.find((item) => item.id === id);\n });\n return allElements?.filter((item) => item !== void 0) || [];\n }, [orderedIds, overflowItems]);\n const popoverButtonClassNames = cx(\n styles[\"toolbar-button-item\"],\n styles[\"toolbar-overflow-trigger\"]\n );\n const overflowIcon = direction === \"horizontal\" ? MoreHoriz : MoreVert;\n return /* @__PURE__ */ jsxs(Popover, { noPadding: true, children: [\n /* @__PURE__ */ jsx(\n Popover.Button,\n {\n size: \"small\",\n appearance: \"ghost\",\n id: menuTriggerId,\n className: popoverButtonClassNames,\n \"data-anv\": \"toolbar-overflow-trigger\",\n \"aria-label\": \"Additional toolbar options\",\n children: /* @__PURE__ */ jsx(Icon, { svg: overflowIcon, size: \"small\" })\n }\n ),\n /* @__PURE__ */ jsx(Popover.Content, { children: /* @__PURE__ */ jsx(OverflowItemContext.Provider, { value: { isInOverflowMenu: true }, children: /* @__PURE__ */ jsxs(\n \"ul\",\n {\n role: \"menu\",\n className: styles[\"toolbar-overflow-content\"],\n \"data-anv\": \"toolbar-overflow-menu\",\n \"aria-labelledby\": menuTriggerId,\n onKeyDown: handleMenuKeyboardNavigation,\n children: [\n orderedItems.map((item) => {\n const { itemType, itemProps, id } = item;\n return /* @__PURE__ */ jsx(\n \"li\",\n {\n role: \"menuitem\",\n \"data-anv\": \"toolbar-overflow-item\",\n children: /* @__PURE__ */ jsx(\n OverflowItem,\n {\n itemType,\n itemProps,\n id\n }\n )\n },\n `${itemType}-${id}`\n );\n }),\n additionalItems?.map((item, index) => /* @__PURE__ */ jsx(\n \"li\",\n {\n role: \"menuitem\",\n \"data-anv\": \"toolbar-overflow-item\",\n children: item\n },\n `additional-item-${index}`\n ))\n ]\n }\n ) }) })\n ] });\n};\n\nconst ToolbarButton = forwardRef(\n (props, _ref) => {\n const { appearance = \"ghost\", className, children, ...rest } = props;\n const { isInOverflowMenu = false } = useOverFlowItemContext?.() || {};\n const buttonClassNames = cx(className, styles[\"toolbar-button-item\"]);\n const item = children ? /* @__PURE__ */ jsx(\n Button,\n {\n appearance,\n size: \"small\",\n \"data-anv\": \"toolbar-button\",\n className: buttonClassNames,\n ...rest,\n children\n }\n ) : /* @__PURE__ */ jsxs(Tooltip, { children: [\n /* @__PURE__ */ jsx(Tooltip.Trigger, { children: /* @__PURE__ */ jsx(\n Button,\n {\n appearance,\n size: \"small\",\n \"data-anv\": \"toolbar-button\",\n className: buttonClassNames,\n ...rest\n }\n ) }),\n /* @__PURE__ */ jsx(Tooltip.Content, { children: rest[\"aria-label\"] })\n ] });\n if (isInOverflowMenu) {\n return item;\n }\n return /* @__PURE__ */ jsx(ToolbarItemWrapper, { item: { itemProps: props, itemType: \"button\" }, children: item });\n }\n);\nToolbarButton.displayName = \"ToolbarButton\";\n\nconst ToolbarOverflowContext = createContext({\n overflowItems: [],\n addItem: () => {\n return;\n },\n removeItem: () => {\n return;\n },\n toolbarRef: { current: null },\n orderedIds: [],\n overflow: \"wrap\"\n});\nconst ToolbarElement = forwardRef(\n (props, ref) => {\n const { layoutStyles, componentProps } = useLayoutPropsUtil(props);\n const {\n associatedContent,\n className,\n children,\n style,\n direction = \"horizontal\",\n overflow = \"wrap\",\n onKeyDown,\n additionalItems,\n ...rest\n } = componentProps;\n const [overflowItems, setOverflowItems] = useState([]);\n const toolbarItemsRef = useRef(null);\n const toolbarRef = useRef(null);\n const [orderedIds, setOrderedIds] = useState([]);\n useEffect(() => {\n const newOrderedIds = Array.from(\n toolbarItemsRef.current?.querySelectorAll(\"[data-id]\") || []\n ).map((el) => {\n return el.getAttribute(\"data-id\");\n });\n setOrderedIds(newOrderedIds);\n }, [children]);\n const addItem = useCallback((item) => {\n setOverflowItems((prev) => [...prev, item]);\n }, []);\n const removeItem = useCallback((item) => {\n setOverflowItems(\n (prev) => prev.filter((component) => component.id !== item.id)\n );\n }, []);\n useEffect(() => {\n if (toolbarRef.current) {\n updateToolbarItemsTabIndex(toolbarRef.current);\n }\n }, [children]);\n const handleKeyDown = useCallback(\n (event) => {\n if (toolbarRef.current) {\n handleToolbarKeyDown(event, toolbarRef.current);\n }\n onKeyDown?.(event);\n },\n [onKeyDown]\n );\n const showOverflowMenu = overflow === \"collapse\" && overflowItems.length > 0 || !!additionalItems;\n const value = useMemo(\n () => ({\n overflowItems,\n addItem,\n removeItem,\n toolbarRef,\n orderedIds,\n overflow\n }),\n [overflowItems, addItem, removeItem, toolbarRef, orderedIds, overflow]\n );\n const styleCombined = {\n ...style,\n ...layoutStyles\n };\n const toolbarClassNames = cx(styles[\"toolbar\"], className);\n const toolbarContentClassNames = cx(styles[\"toolbar-content\"], {\n [styles[`overflow-${overflow}`]]: overflow\n });\n return /* @__PURE__ */ jsx(ToolbarOverflowContext.Provider, { value, children: /* @__PURE__ */ jsxs(\n Flex,\n {\n direction: direction === \"horizontal\" ? \"row\" : \"column\",\n wrap: overflow === \"wrap\" ? \"wrap\" : \"nowrap\",\n alignItems: \"center\",\n className: toolbarClassNames,\n style: styleCombined,\n ref: useMergeRefs([toolbarRef, ref]),\n role: \"toolbar\",\n \"data-anv\": \"toolbar\",\n \"aria-orientation\": direction,\n \"aria-label\": `Toolbar for ${associatedContent}. Use arrow keys to navigate through toolbar controls.`,\n onKeyDown: handleKeyDown,\n ...rest,\n children: [\n /* @__PURE__ */ jsx(\n Flex,\n {\n ref: useMergeRefs([toolbarItemsRef, ref]),\n className: toolbarContentClassNames,\n direction: direction === \"horizontal\" ? \"row\" : \"column\",\n wrap: overflow === \"wrap\" ? \"wrap\" : \"nowrap\",\n alignItems: \"center\",\n grow: 1,\n \"data-anv\": \"toolbar-content\",\n children\n }\n ),\n showOverflowMenu && /* @__PURE__ */ jsx(\n ToolbarOverflowMenu,\n {\n direction,\n additionalItems\n }\n )\n ]\n }\n ) });\n }\n);\nToolbarElement.displayName = \"Toolbar\";\nconst Toolbar = Object.assign(ToolbarElement, {\n /**\n * ToolbarButton component for standard clickable actions within a toolbar.\n *\n * Features:\n * - Designed specifically for toolbar integration\n * - Consistent styling with other toolbar items\n * - Automatic tooltip for icon-only buttons\n * - Overflow menu support\n * - Accessibility enforcement for aria-labels\n * - Small size optimized for toolbar layout\n * - Ghost and primary appearance options\n *\n * @example\n * <Toolbar.Button icon={BoldIcon} aria-label=\"Bold text\" />\n *\n * @example\n * <Toolbar.Button appearance=\"primary\">\n * Save\n * </Toolbar.Button>\n */\n Button: ToolbarButton,\n /**\n * ToolbarButtonToggle component for toggleable actions within a toolbar.\n *\n * Features:\n * - Toggle state management (on/off)\n * - Designed specifically for toolbar integration\n * - Consistent styling with other toolbar items\n * - Automatic tooltip for icon-only toggles\n * - Overflow menu support\n * - Accessibility enforcement for aria-labels\n * - Small size optimized for toolbar layout\n * - Visual feedback for toggle state\n * - Proper ARIA attributes for toggle semantics\n *\n * @example\n * <Toolbar.ButtonToggle icon={BoldIcon} aria-label=\"Bold\" checked={isBold} />\n *\n * @example\n * <Toolbar.ButtonToggle checked={isItalic}>\n * Italic\n * </Toolbar.ButtonToggle>\n */\n ButtonToggle: ToolbarButtonToggle,\n /**\n * ToolbarButtonLink component for link actions within a toolbar.\n *\n * Features:\n * - Link functionality with href support\n * - Designed specifically for toolbar integration\n * - Consistent styling with other toolbar items\n * - Automatic tooltip for icon-only links\n * - Overflow menu support\n * - Accessibility enforcement for aria-labels\n * - Small size optimized for toolbar layout\n * - Ghost and primary appearance options\n * - Proper anchor element semantics\n *\n * @example\n * <Toolbar.ButtonLink href=\"/help\">\n * Help\n * </Toolbar.ButtonLink>\n *\n * @example\n * <Toolbar.ButtonLink icon={ExternalLinkIcon} href=\"/docs\" aria-label=\"Documentation\" />\n */\n ButtonLink: ToolbarButtonLink,\n /**\n * ToolbarSelect component provides a dropdown selector within a toolbar.\n *\n * Features:\n * - Dropdown menu with selectable options\n * - Controlled and uncontrolled usage patterns\n * - Automatic overflow menu integration\n * - Accessibility support with proper ARIA labels\n * - Small size optimized for toolbar layout\n * - Ghost and primary appearance options\n * - Dropdown arrow icon indicator\n * - Listbox integration for keyboard navigation\n *\n * @example\n * <Toolbar.Select\n * items={fontOptions}\n * selected=\"arial\"\n * accessibleLabel=\"Font family\"\n * onChange={(id) => setFont(id)}\n * />\n *\n * @example\n * <Toolbar.Select\n * appearance=\"primary\"\n * items={colorOptions}\n * accessibleLabel=\"Text color\"\n * />\n */\n Select: ToolbarSelect\n});\n\nexport { Toolbar as T, ToolbarButton as a, ToolbarButtonToggle as b, ToolbarButtonLink as c, ToolbarSelect as d, ToolbarItemWrapper as e, ToolbarOverflowMenu as f };\n//# sourceMappingURL=Toolbar-Dfqx7Ge6.js.map\n","import {\n Toolbar as CoreToolbar,\n ToolbarProps as CoreToolbarProps,\n ToolbarButton as CoreToolbarButton,\n ToolbarButtonProps as CoreToolbarButtonProps,\n ToolbarButtonToggle as CoreToolbarButtonToggle,\n ToolbarButtonToggleProps as CoreToolbarButtonToggleProps,\n ToolbarButtonLink as CoreToolbarButtonLink,\n ToolbarButtonLinkProps as CoreToolbarButtonLinkProps,\n ToolbarSelect as CoreToolbarSelect,\n ToolbarSelectProps as CoreToolbarSelectProps,\n ToolbarOverflowTypes as CoreToolbarOverflowTypes,\n ToolbarItemAppearance as CoreToolbarItemAppearance,\n} from \"@servicetitan/hammer-react\";\nimport { useTrackingId } from \"../../hooks/useTrackingId\";\nimport { DataTrackingId } from \"../../types/DataTrackingId\";\n\n/**\n * Props for the Toolbar component with tracking support\n * @property {string} associatedContent - Description of the content this toolbar is associated with, used for accessibility\n * @property {\"vertical\" | \"horizontal\"} [direction] - Orientation of the toolbar\n * @property {ToolbarOverflowTypes} [overflow] - How to handle overflow when items don't fit\n * @property {ReactElement[]} [additionalItems] - Additional items to display in the overflow menu\n * @extends DataTrackingId\n */\nexport type ToolbarProps = CoreToolbarProps & DataTrackingId;\n\n/**\n * Props for the ToolbarButton component with tracking support\n * @property {ToolbarItemAppearance} [appearance] - Visual appearance of the button\n * @property {string} [aria-label] - Accessible label for the button\n * @property {React.ReactNode} [children] - Button content\n * @property {boolean} [disabled] - Whether the button is disabled\n * @extends DataTrackingId\n */\nexport type ToolbarButtonProps = CoreToolbarButtonProps & DataTrackingId;\n\n/**\n * Props for the ToolbarButtonToggle component with tracking support\n * @property {boolean} [checked] - Whether the toggle is checked\n * @property {boolean} [disabled] - Whether the toggle is disabled\n * @property {string} [aria-label] - Accessible label for the toggle\n * @property {React.ReactNode} [children] - Toggle content\n * @extends DataTrackingId\n */\nexport type ToolbarButtonToggleProps = CoreToolbarButtonToggleProps &\n DataTrackingId;\n\n/**\n * Props for the ToolbarButtonLink component with tracking support\n * @property {string} [href] - Link destination URL\n * @property {boolean} [disabled] - Whether the link is disabled\n * @property {string} [aria-label] - Accessible label for the link\n * @property {React.ReactNode} [children] - Link content\n * @property {string} [target] - Link target attribute\n * @extends DataTrackingId\n */\nexport type ToolbarButtonLinkProps = CoreToolbarButtonLinkProps &\n DataTrackingId;\n\n/**\n * Props for the ToolbarSelect component with tracking support\n * @property {string} [selected] - Currently selected item ID\n * @property {boolean} [disabled] - Whether the select is disabled\n * @property {string} [aria-label] - Accessible label for the select\n * @property {unknown[]} [items] - Array of selectable items\n * @extends DataTrackingId\n */\nexport type ToolbarSelectProps<T> = CoreToolbarSelectProps<T> & DataTrackingId;\n\n/**\n * Toolbar overflow behavior options\n */\nexport type ToolbarOverflowTypes = CoreToolbarOverflowTypes;\n\n/**\n * Toolbar item appearance options\n */\nexport type ToolbarItemAppearance = CoreToolbarItemAppearance;\n\n/**\n * Toolbar component for grouping related interactive elements with anvil2 tracking.\n *\n * Features:\n * - Horizontal or vertical orientation\n * - Overflow handling with wrap or collapse behavior\n * - Keyboard navigation following ARIA best practices\n * - Screen reader announcements and accessibility\n * - Automatic overflow menu for collapsed items\n * - Support for buttons, toggles, selects, and links\n * - Layout utilities for positioning and spacing\n * - Context-based state management for child components\n * - Automatic tracking ID generation for analytics\n * - Integration with anvil2 tracking system\n *\n * @example\n * <Toolbar associatedContent=\"document editor\" overflow=\"collapse\">\n * <Toolbar.Button icon={BoldIcon} aria-label=\"Bold\" />\n * <Toolbar.ButtonToggle icon={ItalicIcon} aria-label=\"Italic\" />\n * <Toolbar.Select\n * items={fontOptions}\n * selected=\"arial\"\n * accessibleLabel=\"Font family\"\n * />\n * </Toolbar>\n */\nexport function ToolbarElement(props: ToolbarProps) {\n const trackingId = useTrackingId({\n name: \"Toolbar\",\n data: {\n overflow: props.overflow,\n direction: props.direction,\n associatedContent: props.associatedContent,\n },\n hasOverride: !!props[\"data-tracking-id\"],\n });\n\n return <CoreToolbar data-tracking-id={trackingId} {...props} />;\n}\n\n/**\n * ToolbarButton component for standard clickable actions within a toolbar with anvil2 tracking.\n *\n * Features:\n * - Designed specifically for toolbar integration\n * - Consistent styling with other toolbar items\n * - Automatic tooltip for icon-only buttons\n * - Overflow menu support\n * - Accessibility enforcement for aria-labels\n * - Small size optimized for toolbar layout\n * - Ghost and primary appearance options\n * - Automatic tracking ID generation for analytics\n *\n * @example\n * <Toolbar.Button icon={BoldIcon} aria-label=\"Bold text\" />\n *\n * @example\n * <Toolbar.Button appearance=\"primary\">\n * Save\n * </Toolbar.Button>\n */\nexport function ToolbarButton(props: ToolbarButtonProps) {\n const trackingId = useTrackingId({\n name: \"ToolbarButton\",\n data: {\n disabled: props.disabled,\n \"aria-label\": props[\"aria-label\"],\n children: props.children,\n },\n hasOverride: !!props[\"data-tracking-id\"],\n });\n\n return <CoreToolbarButton data-tracking-id={trackingId} {...props} />;\n}\n\n/**\n * ToolbarButtonToggle component for toggleable actions within a toolbar with anvil2 tracking.\n *\n * Features:\n * - Toggle state management\n * - Designed specifically for toolbar integration\n * - Consistent styling with other toolbar items\n * - Overflow menu support\n * - Accessibility enforcement for aria-labels\n * - Small size optimized for toolbar layout\n * - Ghost and primary appearance options\n * - Automatic tracking ID generation for analytics\n *\n * @example\n * <Toolbar.ButtonToggle icon={BoldIcon} aria-label=\"Bold\" checked={isBold} />\n */\nexport function ToolbarButtonToggle(props: ToolbarButtonToggleProps) {\n const trackingId = useTrackingId({\n name: \"ToolbarButtonToggle\",\n data: {\n checked: props.checked,\n disabled: props.disabled,\n \"aria-label\": props[\"aria-label\"],\n children: props.children,\n },\n hasOverride: !!props[\"data-tracking-id\"],\n });\n\n return <CoreToolbarButtonToggle data-tracking-id={trackingId} {...props} />;\n}\n\n/**\n * ToolbarButtonLink component for link actions within a toolbar with anvil2 tracking.\n *\n * Features:\n * - Link functionality with href support\n * - Designed specifically for toolbar integration\n * - Consistent styling with other toolbar items\n * - Overflow menu support\n * - Accessibility enforcement for aria-labels\n * - Small size optimized for toolbar layout\n * - Ghost and primary appearance options\n * - Automatic tracking ID generation for analytics\n *\n * @example\n * <Toolbar.ButtonLink href=\"/help\">\n * Help\n * </Toolbar.ButtonLink>\n */\nexport function ToolbarButtonLink(props: ToolbarButtonLinkProps) {\n const trackingId = useTrackingId({\n name: \"ToolbarButtonLink\",\n data: {\n href: props.href,\n disabled: props.disabled,\n \"aria-label\": props[\"aria-label\"],\n children: props.children,\n target: props.target,\n },\n hasOverride: !!props[\"data-tracking-id\"],\n });\n\n return <CoreToolbarButtonLink data-tracking-id={trackingId} {...props} />;\n}\n\n/**\n * ToolbarSelect component provides a dropdown selector within a toolbar with anvil2 tracking.\n *\n * Features:\n * - Dropdown menu with selectable options\n * - Controlled and uncontrolled usage patterns\n * - Automatic overflow menu integration\n * - Accessibility support with proper ARIA labels\n * - Small size optimized for toolbar layout\n * - Ghost and primary appearance options\n * - Dropdown arrow icon indicator\n * - Listbox integration for keyboard navigation\n * - Automatic tracking ID generation for analytics\n *\n * @example\n * <Toolbar.Select\n * items={fontOptions}\n * selected=\"arial\"\n * accessibleLabel=\"Font family\"\n * onChange={(id) => setFont(id)}\n * />\n */\nexport function ToolbarSelect(props: ToolbarSelectProps<unknown>) {\n const trackingId = useTrackingId({\n name: \"ToolbarSelect\",\n data: {\n selected: props.selected,\n disabled: props.disabled,\n \"aria-label\": props[\"aria-label\"],\n items: props.items,\n },\n hasOverride: !!props[\"data-tracking-id\"],\n });\n\n return <CoreToolbarSelect data-tracking-id={trackingId} {...props} />;\n}\n\n/**\n * Toolbar component for grouping related interactive elements.\n *\n * Features:\n * - Horizontal or vertical orientation\n * - Overflow handling with wrap or collapse behavior\n * - Keyboard navigation following ARIA best practices\n * - Screen reader announcements and accessibility\n * - Automatic overflow menu for collapsed items\n * - Support for buttons, toggles, selects, and links\n * - Layout utilities for positioning and spacing\n * - Context-based state management for child components\n *\n * @example\n * <Toolbar associatedContent=\"document editor\" overflow=\"collapse\">\n * <Toolbar.Button icon={BoldIcon} aria-label=\"Bold\" />\n * <Toolbar.ButtonToggle icon={ItalicIcon} aria-label=\"Italic\" />\n * <Toolbar.Select\n * items={fontOptions}\n * selected=\"arial\"\n * accessibleLabel=\"Font family\"\n * />\n * </Toolbar>\n */\nexport const Toolbar = Object.assign(ToolbarElement, {\n /**\n * ToolbarButton component for standard clickable actions within a toolbar with anvil2 tracking.\n *\n * Features:\n * - Designed specifically for toolbar integration\n * - Consistent styling with other toolbar items\n * - Automatic tooltip for icon-only buttons\n * - Overflow menu support\n * - Accessibility enforcement for aria-labels\n * - Small size optimized for toolbar layout\n * - Ghost and primary appearance options\n * - Automatic tracking ID generation for analytics\n *\n * @example\n * <Toolbar.Button icon={BoldIcon} aria-label=\"Bold text\" />\n *\n * @example\n * <Toolbar.Button appearance=\"primary\">\n * Save\n * </Toolbar.Button>\n */\n Button: ToolbarButton,\n /**\n * ToolbarButtonToggle component for toggleable actions within a toolbar with anvil2 tracking.\n *\n * Features:\n * - Toggle state management\n * - Designed specifically for toolbar integration\n * - Consistent styling with other toolbar items\n * - Overflow menu support\n * - Accessibility enforcement for aria-labels\n * - Small size optimized for toolbar layout\n * - Ghost and primary appearance options\n * - Automatic tracking ID generation for analytics\n *\n * @example\n * <Toolbar.ButtonToggle icon={BoldIcon} aria-label=\"Bold\" checked={isBold} />\n */\n ButtonToggle: ToolbarButtonToggle,\n /**\n * ToolbarButtonLink component for link actions within a toolbar with anvil2 tracking.\n *\n * Features:\n * - Link functionality with href support\n * - Designed specifically for toolbar integration\n * - Consistent styling with other toolbar items\n * - Overflow menu support\n * - Accessibility enforcement for aria-labels\n * - Small size optimized for toolbar layout\n * - Ghost and primary appearance options\n * - Automatic tracking ID generation for analytics\n *\n * @example\n * <Toolbar.ButtonLink href=\"/help\">\n * Help\n * </Toolbar.ButtonLink>\n */\n ButtonLink: ToolbarButtonLink,\n /**\n * ToolbarSelect component provides a dropdown selector within a toolbar with anvil2 tracking.\n *\n * Features:\n * - Dropdown menu with selectable options\n * - Controlled and uncontrolled usage patterns\n * - Automatic overflow menu integration\n * - Accessibility support with proper ARIA labels\n * - Small size optimized for toolbar layout\n * - Ghost and primary appearance options\n * - Dropdown arrow icon indicator\n * - Listbox integration for keyboard navigation\n * - Automatic tracking ID generation for analytics\n *\n * @example\n * <Toolbar.Select\n * items={fontOptions}\n * selected=\"arial\"\n * accessibleLabel=\"Font family\"\n * onChange={(id) => setFont(id)}\n * />\n */\n Select: ToolbarSelect,\n});\n"],"names":["ToolbarButtonToggle","ToolbarButtonLink","ToolbarSelect","Down","ToolbarButton","MoreHoriz","MoreVert","ToolbarElement","Toolbar","CoreToolbar","CoreToolbarButton","CoreToolbarButtonToggle","CoreToolbarButtonLink","CoreToolbarSelect"],"mappings":"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G,IAAI;AACf,QAAQ,QAAQ,EAAE;AAClB,0BAA0B,GAAG;AAC7B,YAAY,IAAI;AAChB,YAAY;AACZ,cAAc,GAAG,EAAE,YAAY,CAAC,CAAC,eAAe,EAAE,GAAG,CAAC,CAAC;AACvD,cAAc,SAAS,EAAE,wBAAwB;AACjD,cAAc,SAAS,EAAE,SAAS,KAAK,YAAY,GAAG,KAAK,GAAG,QAAQ;AACtE,cAAc,IAAI,EAAE,QAAQ,KAAK,MAAM,GAAG,MAAM,GAAG,QAAQ;AAC3D,cAAc,UAAU,EAAE,QAAQ;AAClC,cAAc,IAAI,EAAE,CAAC;AACrB,cAAc,UAAU,EAAE,iBAAiB;AAC3C,cAAc;AACd;AACA,WAAW;AACX,UAAU,gBAAgB,oBAAoB,GAAG;AACjD,YAAY,mBAAmB;AAC/B,YAAY;AACZ,cAAc,SAAS;AACvB,cAAc;AACd;AACA;AACA;AACA;AACA,KAAK,EAAE,CAAC;AACR;AACA,CAAC;AACDA,gBAAc,CAAC,WAAW,GAAG,SAAS;AACtC,MAAMC,SAAO,GAAG,MAAM,CAAC,MAAM,CAACD,gBAAc,EAAE;AAC9C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE,MAAM,EAAEH,eAAa;AACvB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE,YAAY,EAAEJ,qBAAmB;AACnC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE,UAAU,EAAEC,mBAAiB;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE,MAAM,EAAEC;AACV,CAAC,CAAC;;ACvlBK,SAAS,eA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"}
File without changes