@servicetitan/anvil2 1.26.1 → 1.27.1

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 (298) hide show
  1. package/CHANGELOG.md +83 -0
  2. package/dist/{Alert-BGxnwh4U-ytPHdG2h.js → Alert-BmiMaHHl-C4TKrNF3.js} +13 -13
  3. package/dist/{Alert-BGxnwh4U-ytPHdG2h.js.map → Alert-BmiMaHHl-C4TKrNF3.js.map} +1 -1
  4. package/dist/{Alert-BGxnwh4U.css → Alert-BmiMaHHl.css} +18 -18
  5. package/dist/{Alert-Dm9uevPZ.js → Alert-DhJoO6si.js} +2 -2
  6. package/dist/{Alert-Dm9uevPZ.js.map → Alert-DhJoO6si.js.map} +1 -1
  7. package/dist/Alert.js +1 -1
  8. package/dist/{Announcement-BPow1TbL.js → Announcement-DDIsOYU0.js} +12 -12
  9. package/dist/{Announcement-BPow1TbL.js.map → Announcement-DDIsOYU0.js.map} +1 -1
  10. package/dist/Announcement.css +24 -12
  11. package/dist/Announcement.js +1 -1
  12. package/dist/{AnvilProvider-C-6UdeBs.js → AnvilProvider-DNJk1Ait.js} +2 -2
  13. package/dist/{AnvilProvider-C-6UdeBs.js.map → AnvilProvider-DNJk1Ait.js.map} +1 -1
  14. package/dist/AnvilProvider.js +1 -1
  15. package/dist/{Avatar-DR0nw5eu.js → Avatar-BbOnZyM_.js} +10 -10
  16. package/dist/{Avatar-DR0nw5eu.js.map → Avatar-BbOnZyM_.js.map} +1 -1
  17. package/dist/Avatar.css +18 -18
  18. package/dist/Avatar.js +1 -1
  19. package/dist/{Breadcrumbs-ChNbRqbi.js → Breadcrumbs-ByNGkX5w.js} +3 -3
  20. package/dist/{Breadcrumbs-ChNbRqbi.js.map → Breadcrumbs-ByNGkX5w.js.map} +1 -1
  21. package/dist/Breadcrumbs.js +1 -1
  22. package/dist/{Button-4ih4Ht_z.js → Button-B2ruRsLb.js} +2 -2
  23. package/dist/{Button-4ih4Ht_z.js.map → Button-B2ruRsLb.js.map} +1 -1
  24. package/dist/{Button-DPIUyV2O-DxCH2dlc.js → Button-BHwg8Uip-DPU6y8-l.js} +23 -23
  25. package/dist/Button-BHwg8Uip-DPU6y8-l.js.map +1 -0
  26. package/dist/Button-BHwg8Uip.css +300 -0
  27. package/dist/Button.js +1 -1
  28. package/dist/{ButtonCompound-VpV-hDUY.js → ButtonCompound-DQ9LGk2K.js} +2 -2
  29. package/dist/{ButtonCompound-VpV-hDUY.js.map → ButtonCompound-DQ9LGk2K.js.map} +1 -1
  30. package/dist/ButtonCompound.js +1 -1
  31. package/dist/{ButtonLink-C1cCAIG0.js → ButtonLink-CjxVUldA.js} +2 -2
  32. package/dist/{ButtonLink-C1cCAIG0.js.map → ButtonLink-CjxVUldA.js.map} +1 -1
  33. package/dist/ButtonLink.js +1 -1
  34. package/dist/{ButtonToggle-DHX9ryn1-BzRjiG0o.js → ButtonToggle-9HqVrCoP-DsNu__N0.js} +4 -4
  35. package/dist/{ButtonToggle-DHX9ryn1-BzRjiG0o.js.map → ButtonToggle-9HqVrCoP-DsNu__N0.js.map} +1 -1
  36. package/dist/{ButtonToggle-Mf15vOmV.js → ButtonToggle-DYKdmH_u.js} +2 -2
  37. package/dist/{ButtonToggle-Mf15vOmV.js.map → ButtonToggle-DYKdmH_u.js.map} +1 -1
  38. package/dist/ButtonToggle.js +1 -1
  39. package/dist/{Calendar-Dx2sfg5W.js → Calendar-Dg_yoWxL.js} +2 -2
  40. package/dist/{Calendar-Dx2sfg5W.js.map → Calendar-Dg_yoWxL.js.map} +1 -1
  41. package/dist/{Calendar-BLyOeR3U-rYLyYewL.js → Calendar-Z_nAtpoV-B0uWpOrw.js} +23 -23
  42. package/dist/{Calendar-BLyOeR3U-rYLyYewL.js.map → Calendar-Z_nAtpoV-B0uWpOrw.js.map} +1 -1
  43. package/dist/{Calendar-BLyOeR3U.css → Calendar-Z_nAtpoV.css} +44 -44
  44. package/dist/Calendar.js +1 -1
  45. package/dist/{Checkbox-CIMoRELh-B3GJHXyO.js → Checkbox-D6-kiZ0g-6jox0aDW.js} +46 -32
  46. package/dist/Checkbox-D6-kiZ0g-6jox0aDW.js.map +1 -0
  47. package/dist/{Checkbox-BTD0_Qkv.js → Checkbox-DJguu7Kw.js} +2 -2
  48. package/dist/Checkbox-DJguu7Kw.js.map +1 -0
  49. package/dist/Checkbox.css +106 -68
  50. package/dist/Checkbox.js +1 -1
  51. package/dist/{Checkbox.module-9DnErc2T-CoENWijd.js → Checkbox.module-DMrZNVpb-DL8zOKBQ.js} +16 -14
  52. package/dist/Checkbox.module-DMrZNVpb-DL8zOKBQ.js.map +1 -0
  53. package/dist/{Chip-CwBvUKwn.js → Chip-C5ElPVsb.js} +2 -2
  54. package/dist/{Chip-CwBvUKwn.js.map → Chip-C5ElPVsb.js.map} +1 -1
  55. package/dist/{Chip-B09LeE8a-D517lNXd.js → Chip-CAxTyjIZ-DfkCTnYy.js} +10 -10
  56. package/dist/{Chip-B09LeE8a-D517lNXd.js.map → Chip-CAxTyjIZ-DfkCTnYy.js.map} +1 -1
  57. package/dist/{Chip-B09LeE8a.css → Chip-CAxTyjIZ.css} +20 -20
  58. package/dist/Chip.js +1 -1
  59. package/dist/{Combobox-UI4iNs4v.js → Combobox-BRZIYucw.js} +247 -67
  60. package/dist/Combobox-BRZIYucw.js.map +1 -0
  61. package/dist/Combobox.css +72 -72
  62. package/dist/Combobox.js +1 -1
  63. package/dist/{DateField-DJxvns1P.js → DateField-DHIXyi2_.js} +6 -6
  64. package/dist/{DateField-DJxvns1P.js.map → DateField-DHIXyi2_.js.map} +1 -1
  65. package/dist/DateField.js +1 -1
  66. package/dist/{Details-C00yOpMs.js → Details-B1wMLkdg.js} +9 -9
  67. package/dist/{Details-C00yOpMs.js.map → Details-B1wMLkdg.js.map} +1 -1
  68. package/dist/Details.css +18 -18
  69. package/dist/Details.js +1 -1
  70. package/dist/{Dialog-DhG6Qvhz-CZ1yBSYv.js → Dialog-DDsVwnZZ-s9GGnSax.js} +13 -13
  71. package/dist/Dialog-DDsVwnZZ-s9GGnSax.js.map +1 -0
  72. package/dist/{Dialog-DhG6Qvhz.css → Dialog-DDsVwnZZ.css} +23 -22
  73. package/dist/{Dialog-V7cjDiFS.js → Dialog-wuBdQ785.js} +2 -2
  74. package/dist/{Dialog-V7cjDiFS.js.map → Dialog-wuBdQ785.js.map} +1 -1
  75. package/dist/Dialog.js +1 -1
  76. package/dist/{Divider-Ctp-0EQ8.js → Divider-CLnPwn7z.js} +17 -14
  77. package/dist/Divider-CLnPwn7z.js.map +1 -0
  78. package/dist/Divider.css +52 -28
  79. package/dist/Divider.js +1 -1
  80. package/dist/{Drawer-CRReZbV6.js → Drawer-BX7LCwCa.js} +2 -2
  81. package/dist/{Drawer-CRReZbV6.js.map → Drawer-BX7LCwCa.js.map} +1 -1
  82. package/dist/Drawer.js +1 -1
  83. package/dist/{EditCard-CP0pQm_U.js → EditCard-CrlcI07q.js} +14 -14
  84. package/dist/{EditCard-CP0pQm_U.js.map → EditCard-CrlcI07q.js.map} +1 -1
  85. package/dist/EditCard.css +16 -16
  86. package/dist/EditCard.js +1 -1
  87. package/dist/{Helper-D1wqxi-n-DL9ve0e9.js → Helper-Ba5DBS51-DBtASfJG.js} +6 -6
  88. package/dist/{Helper-D1wqxi-n-DL9ve0e9.js.map → Helper-Ba5DBS51-DBtASfJG.js.map} +1 -1
  89. package/dist/{Helper-D1wqxi-n.css → Helper-Ba5DBS51.css} +5 -5
  90. package/dist/{Icon-Dl30QYlC.js → Icon-CrE5UgZV.js} +2 -2
  91. package/dist/{Icon-Dl30QYlC.js.map → Icon-CrE5UgZV.js.map} +1 -1
  92. package/dist/{Icon-BgNIrmZM-CUkfW-_l.js → Icon-DbHA5GV1-DwO2aGkj.js} +6 -6
  93. package/dist/{Icon-BgNIrmZM-CUkfW-_l.js.map → Icon-DbHA5GV1-DwO2aGkj.js.map} +1 -1
  94. package/dist/{Icon-BgNIrmZM.css → Icon-DbHA5GV1.css} +9 -9
  95. package/dist/Icon.js +1 -1
  96. package/dist/{InputMask-CDnbSm-K-DeTUYLsI.js → InputMask-CiAjFhsc-Bnbf_ZQq.js} +2 -2
  97. package/dist/{InputMask-CDnbSm-K-DeTUYLsI.js.map → InputMask-CiAjFhsc-Bnbf_ZQq.js.map} +1 -1
  98. package/dist/{InputMask-CSseS-fh.js → InputMask-Cifzg7Ee.js} +2 -2
  99. package/dist/{InputMask-CSseS-fh.js.map → InputMask-Cifzg7Ee.js.map} +1 -1
  100. package/dist/InputMask.js +1 -1
  101. package/dist/{Label-B-Z4Vp58-k9UxGncl.js → Label-Do6kKzVr-BvIRT-vF.js} +4 -4
  102. package/dist/{Label-B-Z4Vp58-k9UxGncl.js.map → Label-Do6kKzVr-BvIRT-vF.js.map} +1 -1
  103. package/dist/{Link-CL7Gc29S-LYooajNS.js → Link-BZ7vy96e-DolN6mMF.js} +8 -7
  104. package/dist/Link-BZ7vy96e-DolN6mMF.js.map +1 -0
  105. package/dist/Link-BZ7vy96e.css +63 -0
  106. package/dist/{Link-Ct0qNPzS.js → Link-CBkwLJrX.js} +2 -2
  107. package/dist/{Link-Ct0qNPzS.js.map → Link-CBkwLJrX.js.map} +1 -1
  108. package/dist/Link.js +1 -1
  109. package/dist/{ListView-Bf1mwMXt.js → ListView-DX7NxNSw.js} +2 -2
  110. package/dist/{ListView-Bf1mwMXt.js.map → ListView-DX7NxNSw.js.map} +1 -1
  111. package/dist/ListView.js +1 -1
  112. package/dist/{Listbox-BsQmGv15-C5bH4eex.js → Listbox-CCUnPdBn-DwvTVF0i.js} +3 -3
  113. package/dist/{Listbox-BsQmGv15-C5bH4eex.js.map → Listbox-CCUnPdBn-DwvTVF0i.js.map} +1 -1
  114. package/dist/{Listbox-BSf6vpMR.js → Listbox-DcMJEUMo.js} +2 -2
  115. package/dist/{Listbox-BSf6vpMR.js.map → Listbox-DcMJEUMo.js.map} +1 -1
  116. package/dist/Listbox.css +33 -33
  117. package/dist/Listbox.js +1 -1
  118. package/dist/Listbox.module-CJuWm7RR-CJuWm7RR.js +18 -0
  119. package/dist/Listbox.module-CJuWm7RR-CJuWm7RR.js.map +1 -0
  120. package/dist/{Menu-CYK-VXSj.js → Menu-COlGXBmd.js} +5 -5
  121. package/dist/{Menu-CYK-VXSj.js.map → Menu-COlGXBmd.js.map} +1 -1
  122. package/dist/Menu.js +1 -1
  123. package/dist/{Overflow-24qqgMkR.js → Overflow-Codc9CEy.js} +2 -2
  124. package/dist/{Overflow-24qqgMkR.js.map → Overflow-Codc9CEy.js.map} +1 -1
  125. package/dist/{Overflow-6zidmm4F-BNg3Wh59.js → Overflow-Cv9sOPm3-AYGUgSQn.js} +13 -13
  126. package/dist/Overflow-Cv9sOPm3-AYGUgSQn.js.map +1 -0
  127. package/dist/{Overflow-6zidmm4F.css → Overflow-Cv9sOPm3.css} +29 -29
  128. package/dist/Overflow.js +1 -1
  129. package/dist/Page-C5GjTBZh.js +452 -0
  130. package/dist/Page-C5GjTBZh.js.map +1 -0
  131. package/dist/Page.css +135 -65
  132. package/dist/Page.js +1 -1
  133. package/dist/{Popover-DRMCsDWy.js → Popover-DAxtbeRA.js} +2 -2
  134. package/dist/{Popover-DRMCsDWy.js.map → Popover-DAxtbeRA.js.map} +1 -1
  135. package/dist/{Popover-Btv8a_UW-CCpcppuW.js → Popover-tcXHJePS-CMjz_uId.js} +70 -48
  136. package/dist/Popover-tcXHJePS-CMjz_uId.js.map +1 -0
  137. package/dist/{Popover-Btv8a_UW.css → Popover-tcXHJePS.css} +10 -10
  138. package/dist/Popover.js +1 -1
  139. package/dist/{ProgressBar-EpBsXzcs-BgE8GDtg.js → ProgressBar-BrXijLda-BDwH4WrE.js} +12 -12
  140. package/dist/{ProgressBar-EpBsXzcs-BgE8GDtg.js.map → ProgressBar-BrXijLda-BDwH4WrE.js.map} +1 -1
  141. package/dist/{ProgressBar-EpBsXzcs.css → ProgressBar-BrXijLda.css} +20 -20
  142. package/dist/{ProgressBar-CmpuRo93.js → ProgressBar-aP7gOxee.js} +2 -2
  143. package/dist/{ProgressBar-CmpuRo93.js.map → ProgressBar-aP7gOxee.js.map} +1 -1
  144. package/dist/ProgressBar.js +1 -1
  145. package/dist/{Radio-D008X69w.js → Radio-BBwG1fqT-vopD4gzD.js} +55 -68
  146. package/dist/Radio-BBwG1fqT-vopD4gzD.js.map +1 -0
  147. package/dist/Radio-BBwG1fqT.css +232 -0
  148. package/dist/Radio-CtFSLOYa.js +34 -0
  149. package/dist/Radio-CtFSLOYa.js.map +1 -0
  150. package/dist/Radio.js +1 -1
  151. package/dist/{SearchField-Cu_XUoP4.js → SearchField-CWb0kaV8.js} +16 -8
  152. package/dist/SearchField-CWb0kaV8.js.map +1 -0
  153. package/dist/SearchField.css +9 -9
  154. package/dist/SearchField.js +1 -1
  155. package/dist/{SegmentedControl-ahC8vXbk.js → SegmentedControl-DyeWOOF3.js} +12 -12
  156. package/dist/{SegmentedControl-ahC8vXbk.js.map → SegmentedControl-DyeWOOF3.js.map} +1 -1
  157. package/dist/SegmentedControl.css +27 -27
  158. package/dist/SegmentedControl.js +1 -1
  159. package/dist/SelectCard.d.ts +6 -0
  160. package/dist/SelectCard.js +2 -0
  161. package/dist/SelectCard.js.map +1 -0
  162. package/dist/SelectCardGroup-Ch56Mp-k.js +178 -0
  163. package/dist/SelectCardGroup-Ch56Mp-k.js.map +1 -0
  164. package/dist/SelectCardGroup.css +37 -0
  165. package/dist/{SideNav-CCN45mjt.js → SideNav-Mdwo6zfi.js} +23 -23
  166. package/dist/{SideNav-CCN45mjt.js.map → SideNav-Mdwo6zfi.js.map} +1 -1
  167. package/dist/SideNav.css +55 -55
  168. package/dist/SideNav.js +1 -1
  169. package/dist/{Spinner-Cd29kwQb.js → Spinner-C0SZj1Xr.js} +2 -2
  170. package/dist/{Spinner-Cd29kwQb.js.map → Spinner-C0SZj1Xr.js.map} +1 -1
  171. package/dist/{Spinner-DsuW7OPp-Bct1KVcB.js → Spinner-DdirfhPp-c7cDfIit.js} +5 -5
  172. package/dist/{Spinner-DsuW7OPp-Bct1KVcB.js.map → Spinner-DdirfhPp-c7cDfIit.js.map} +1 -1
  173. package/dist/{Spinner-DsuW7OPp.css → Spinner-DdirfhPp.css} +7 -7
  174. package/dist/Spinner.js +1 -1
  175. package/dist/{Stepper-DE_jtDku.js → Stepper-CAuH-6cR.js} +11 -11
  176. package/dist/{Stepper-DE_jtDku.js.map → Stepper-CAuH-6cR.js.map} +1 -1
  177. package/dist/Stepper.css +37 -37
  178. package/dist/Stepper.js +1 -1
  179. package/dist/{Switch-C993WLM-.js → Switch-D2mURCX4.js} +6 -6
  180. package/dist/{Switch-C993WLM-.js.map → Switch-D2mURCX4.js.map} +1 -1
  181. package/dist/Switch.css +26 -26
  182. package/dist/Switch.js +1 -1
  183. package/dist/{Tab-D9fCuiyt.js → Tab-x6_xtr13.js} +14 -14
  184. package/dist/{Tab-D9fCuiyt.js.map → Tab-x6_xtr13.js.map} +1 -1
  185. package/dist/Tab.css +38 -38
  186. package/dist/Tab.js +1 -1
  187. package/dist/{TextField-86ebcPf6.js → TextField-BWHsVZiC.js} +2 -2
  188. package/dist/{TextField-86ebcPf6.js.map → TextField-BWHsVZiC.js.map} +1 -1
  189. package/dist/{TextField-BsIkt2PK-Cc3PZ7Kh.js → TextField-C614D1ZV-DeVOfPoS.js} +5 -5
  190. package/dist/{TextField-BsIkt2PK-Cc3PZ7Kh.js.map → TextField-C614D1ZV-DeVOfPoS.js.map} +1 -1
  191. package/dist/TextField.css +25 -25
  192. package/dist/TextField.js +1 -1
  193. package/dist/TextField.module-B411p3ST-B411p3ST.js +22 -0
  194. package/dist/{TextField.module-JJ6esEDk-JJ6esEDk.js.map → TextField.module-B411p3ST-B411p3ST.js.map} +1 -1
  195. package/dist/{Textarea-Cd6IsaY3.js → Textarea-Dj47MRiF.js} +10 -10
  196. package/dist/{Textarea-Cd6IsaY3.js.map → Textarea-Dj47MRiF.js.map} +1 -1
  197. package/dist/Textarea.css +15 -15
  198. package/dist/Textarea.js +1 -1
  199. package/dist/{ThemeProvider-Dvp6YuaY.js → ThemeProvider-CRXKTOvG.js} +2 -2
  200. package/dist/{ThemeProvider-Dvp6YuaY.js.map → ThemeProvider-CRXKTOvG.js.map} +1 -1
  201. package/dist/{ThemeProvider-C15J9JBA-BiL6I6O0.js → ThemeProvider-CioBp3gk-B6HyDICa.js} +10 -6
  202. package/dist/ThemeProvider-CioBp3gk-B6HyDICa.js.map +1 -0
  203. package/dist/ThemeProvider-CioBp3gk.css +407 -0
  204. package/dist/ThemeProvider.js +1 -1
  205. package/dist/Toast.js +1 -1
  206. package/dist/Toolbar-BAvsl6fK.js +710 -0
  207. package/dist/Toolbar-BAvsl6fK.js.map +1 -0
  208. package/dist/Toolbar.js +1 -709
  209. package/dist/Toolbar.js.map +1 -1
  210. package/dist/{Tooltip-ULhSGqQ0.js → Tooltip-D38gdiV_.js} +2 -2
  211. package/dist/{Tooltip-ULhSGqQ0.js.map → Tooltip-D38gdiV_.js.map} +1 -1
  212. package/dist/{Tooltip-DYbpkTNG-C9rTTa_A.js → Tooltip-DVBEjajY-DN86i_oi.js} +4 -4
  213. package/dist/{Tooltip-DYbpkTNG-C9rTTa_A.js.map → Tooltip-DVBEjajY-DN86i_oi.js.map} +1 -1
  214. package/dist/Tooltip.js +1 -1
  215. package/dist/assets/css-utils/border.css +45 -29
  216. package/dist/assets/css-utils/color.css +219 -103
  217. package/dist/assets/css-utils/font.css +45 -43
  218. package/dist/assets/css-utils/spacing.css +71 -1
  219. package/dist/assets/css-utils/utils.css +562 -368
  220. package/dist/assets/icons/st/add_purchase_order.svg +1 -0
  221. package/dist/assets/icons/st/add_to_list.svg +1 -0
  222. package/dist/assets/icons/st/add_user.svg +1 -0
  223. package/dist/assets/icons/st/apply_template.svg +1 -0
  224. package/dist/assets/icons/st/attach_file.svg +1 -0
  225. package/dist/assets/icons/st/collect_payment.svg +1 -0
  226. package/dist/assets/icons/st/create_event.svg +1 -0
  227. package/dist/assets/icons/st/create_task.svg +1 -0
  228. package/dist/assets/icons/st/estimate.svg +1 -1
  229. package/dist/assets/icons/st/job.svg +1 -1
  230. package/dist/assets/icons/st/local_settings.svg +1 -1
  231. package/dist/assets/icons/st/preview_file.svg +1 -0
  232. package/dist/assets/icons/st/save_for_later.svg +1 -0
  233. package/dist/assets/icons/st/send_message.svg +1 -0
  234. package/dist/assets/icons/st/set_reminder.svg +1 -0
  235. package/dist/assets/icons/st/view_timesheet.svg +1 -0
  236. package/dist/assets/icons/st.ts +13 -0
  237. package/dist/components/Checkbox/Checkbox.d.ts +2 -16
  238. package/dist/components/Combobox/index.d.ts +1 -0
  239. package/dist/components/Combobox/useInfiniteCombobox.d.ts +1 -0
  240. package/dist/components/Divider/Divider.d.ts +1 -1
  241. package/dist/components/Grid/Grid.d.ts +5 -35
  242. package/dist/components/Page/Page.d.ts +49 -4
  243. package/dist/components/Popover/Popover.d.ts +6 -2
  244. package/dist/components/Radio/Radio.d.ts +2 -13
  245. package/dist/components/SelectCard/SelectCard.d.ts +3 -0
  246. package/dist/components/SelectCard/SelectCardGroup.d.ts +3 -0
  247. package/dist/components/SelectCard/index.d.ts +4 -0
  248. package/dist/components/Toolbar/Toolbar.d.ts +3 -1
  249. package/dist/components/index.d.ts +2 -0
  250. package/dist/{floating-ui.react-dom-DFKXqfVl.js → floating-ui.react-dom-D912oS4K.js} +2 -2
  251. package/dist/{floating-ui.react-dom-DFKXqfVl.js.map → floating-ui.react-dom-D912oS4K.js.map} +1 -1
  252. package/dist/index.js +45 -43
  253. package/dist/index.js.map +1 -1
  254. package/dist/{toast-BFAs1GYa.js → toast-DMKrL2Ew.js} +73 -55
  255. package/dist/toast-DMKrL2Ew.js.map +1 -0
  256. package/dist/toast.css +59 -45
  257. package/dist/token/core/component-variables.scss +139 -0
  258. package/dist/token/core/component.js +645 -0
  259. package/dist/token/core/component.scss +69 -0
  260. package/dist/token/core/css-utils/border.css +45 -29
  261. package/dist/token/core/css-utils/color.css +219 -103
  262. package/dist/token/core/css-utils/font.css +45 -43
  263. package/dist/token/core/css-utils/spacing.css +71 -1
  264. package/dist/token/core/css-utils/utils.css +562 -368
  265. package/dist/token/core/index.js +2 -1
  266. package/dist/token/core/raw.js +28 -24
  267. package/dist/token/core/semantic-variables.scss +28 -24
  268. package/dist/token/core/semantic.js +44 -24
  269. package/dist/token/core/semantic.scss +13 -11
  270. package/dist/token.js +766 -24
  271. package/dist/token.js.map +1 -1
  272. package/dist/useLinkStyles.js +1 -1
  273. package/package.json +3 -3
  274. package/dist/Button-DPIUyV2O-DxCH2dlc.js.map +0 -1
  275. package/dist/Button-DPIUyV2O.css +0 -337
  276. package/dist/Checkbox-BTD0_Qkv.js.map +0 -1
  277. package/dist/Checkbox-CIMoRELh-B3GJHXyO.js.map +0 -1
  278. package/dist/Checkbox.module-9DnErc2T-CoENWijd.js.map +0 -1
  279. package/dist/Combobox-UI4iNs4v.js.map +0 -1
  280. package/dist/Dialog-DhG6Qvhz-CZ1yBSYv.js.map +0 -1
  281. package/dist/Divider-Ctp-0EQ8.js.map +0 -1
  282. package/dist/Link-CL7Gc29S-LYooajNS.js.map +0 -1
  283. package/dist/Link-CL7Gc29S.css +0 -60
  284. package/dist/Listbox.module-D3Ewu_8u-D3Ewu_8u.js +0 -18
  285. package/dist/Listbox.module-D3Ewu_8u-D3Ewu_8u.js.map +0 -1
  286. package/dist/Overflow-6zidmm4F-BNg3Wh59.js.map +0 -1
  287. package/dist/Page-f5A2PjHI.js +0 -311
  288. package/dist/Page-f5A2PjHI.js.map +0 -1
  289. package/dist/Popover-Btv8a_UW-CCpcppuW.js.map +0 -1
  290. package/dist/Radio-D008X69w.js.map +0 -1
  291. package/dist/Radio.css +0 -212
  292. package/dist/SearchField-Cu_XUoP4.js.map +0 -1
  293. package/dist/TextField.module-JJ6esEDk-JJ6esEDk.js +0 -22
  294. package/dist/ThemeProvider-C15J9JBA-BiL6I6O0.js.map +0 -1
  295. package/dist/ThemeProvider-C15J9JBA.css +0 -270
  296. package/dist/toast-BFAs1GYa.js.map +0 -1
  297. /package/dist/{Label-B-Z4Vp58.css → Label-Do6kKzVr.css} +0 -0
  298. /package/dist/{Tooltip-DYbpkTNG.css → Tooltip-DVBEjajY.css} +0 -0
@@ -0,0 +1,452 @@
1
+ import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
2
+ import * as React from 'react';
3
+ import { createContext, forwardRef, useContext, useState, useRef, useEffect } from 'react';
4
+ import { b as BreakpointLg } from './primitive-BoyEHaOo.js';
5
+ import { S as SvgChevronRight } from './chevron_right-BdpsxX7x.js';
6
+ import { S as SvgKeyboardArrowDown } from './keyboard_arrow_down-C8WQ38p1.js';
7
+ import { B as Button } from './Button-B2ruRsLb.js';
8
+ import { P as Popover } from './Popover-DAxtbeRA.js';
9
+ import { I as Icon } from './Icon-CrE5UgZV.js';
10
+ import { F as Flex } from './Flex-D92F03lr.js';
11
+ import { T as Tooltip } from './Tooltip-D38gdiV_.js';
12
+ import { B as ButtonLink } from './ButtonLink-CjxVUldA.js';
13
+ import { B as Breadcrumbs } from './Breadcrumbs-ByNGkX5w.js';
14
+ import { C as Chip } from './Chip-C5ElPVsb.js';
15
+ import { M as Menu } from './Menu-COlGXBmd.js';
16
+ import { T as Text } from './Text-BnRrIF-W.js';
17
+ import { D as Dialog } from './Dialog-wuBdQ785.js';
18
+ import { L as Layout } from './Layout-CUUb2PVr.js';
19
+ import { c as cx } from './index-tZvMCc77.js';
20
+ import { a as AnvilProviderContext } from './AnvilProvider-DNJk1Ait.js';
21
+ import { useTrackingId } from './useTrackingId.js';
22
+
23
+ import './Page.css';const SvgChevronLeft = (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: "M14.71 6.71a.996.996 0 0 0-1.41 0L8.71 11.3a.996.996 0 0 0 0 1.41l4.59 4.59a.996.996 0 1 0 1.41-1.41L10.83 12l3.88-3.88c.39-.39.38-1.03 0-1.41z" }));
24
+
25
+ const SvgSegment = (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: "M10 18h10c.55 0 1-.45 1-1s-.45-1-1-1H10c-.55 0-1 .45-1 1s.45 1 1 1zM3 7c0 .55.45 1 1 1h16c.55 0 1-.45 1-1s-.45-1-1-1H4c-.55 0-1 .45-1 1zm7 6h10c.55 0 1-.45 1-1s-.45-1-1-1H10c-.55 0-1 .45-1 1s.45 1 1 1z" }));
26
+
27
+ const SvgKeyboardArrowUp = (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: "M8.12 14.71 12 10.83l3.88 3.88a.996.996 0 1 0 1.41-1.41L12.7 8.71a.996.996 0 0 0-1.41 0L6.7 13.3a.996.996 0 0 0 0 1.41c.39.38 1.03.39 1.42 0z" }));
28
+
29
+ const SvgLocalSettings = (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", { fillRule: "evenodd", d: "M10.5 21h-.955a.49.49 0 0 1-.484-.399l-.366-2.517a7.5 7.5 0 0 1-1.65-.936l-2.431.954a.49.49 0 0 1-.596-.204l-1.953-3.291a.465.465 0 0 1 .117-.608l2.06-1.573a8 8 0 0 1-.067-.926c0-.313.03-.622.068-.926l-2.06-1.572a.467.467 0 0 1-.117-.609l1.953-3.291c.122-.205.376-.285.595-.205l2.431.955a7.3 7.3 0 0 1 1.65-.936L9.062 2.4a.49.49 0 0 1 .482-.4h3.906c.244 0 .444.176.488.399l.366 2.518a7.5 7.5 0 0 1 1.65.935l2.432-.955a.49.49 0 0 1 .595.205l1.953 3.291a.465.465 0 0 1-.117.608L18.85 10.5h-4.091c-.436-1.348-1.73-2.325-3.26-2.325-1.89 0-3.418 1.486-3.418 3.325 0 1.5 1.018 2.767 2.42 3.182z", clipRule: "evenodd" }), /* @__PURE__ */ React.createElement("path", { fillRule: "evenodd", d: "M12.437 21.563A1.45 1.45 0 0 0 13.5 22h7q.624 0 1.062-.437A1.45 1.45 0 0 0 22 20.5v-7q0-.625-.438-1.062A1.45 1.45 0 0 0 20.5 12h-7q-.625 0-1.063.438A1.45 1.45 0 0 0 12 13.5v7q0 .625.437 1.063m.991-.991v-.777c.43-.505.96-.914 1.556-1.202q.919-.45 2.015-.45 1.098 0 2.016.45t1.556 1.202v.777zM17 17.143a1.5 1.5 0 0 0 1.113-.459 1.5 1.5 0 0 0 .458-1.113q0-.654-.458-1.112A1.5 1.5 0 0 0 17 14a1.5 1.5 0 0 0-1.113.459 1.5 1.5 0 0 0-.459 1.113q0 .654.459 1.113a1.52 1.52 0 0 0 1.113.458", clipRule: "evenodd" }), /* @__PURE__ */ React.createElement("path", { fillRule: "evenodd", d: "M10.5 21h-.955a.49.49 0 0 1-.484-.399l-.366-2.517a7.5 7.5 0 0 1-1.65-.936l-2.431.954a.49.49 0 0 1-.596-.204l-1.953-3.291a.465.465 0 0 1 .117-.608l2.06-1.573a8 8 0 0 1-.067-.926c0-.313.03-.622.068-.926l-2.06-1.572a.467.467 0 0 1-.117-.609l1.953-3.291c.122-.205.376-.285.595-.205l2.431.955a7.3 7.3 0 0 1 1.65-.936L9.062 2.4a.49.49 0 0 1 .482-.4h3.906c.244 0 .444.176.488.399l.366 2.518a7.5 7.5 0 0 1 1.65.935l2.432-.955a.49.49 0 0 1 .595.205l1.953 3.291a.465.465 0 0 1-.117.608L18.85 10.5h-4.091c-.436-1.348-1.73-2.325-3.26-2.325-1.89 0-3.418 1.486-3.418 3.325 0 1.5 1.018 2.767 2.42 3.182z", clipRule: "evenodd" }), /* @__PURE__ */ React.createElement("path", { fillRule: "evenodd", d: "M12.437 21.563A1.45 1.45 0 0 0 13.5 22h7q.624 0 1.062-.437A1.45 1.45 0 0 0 22 20.5v-7q0-.625-.438-1.062A1.45 1.45 0 0 0 20.5 12h-7q-.625 0-1.063.438A1.45 1.45 0 0 0 12 13.5v7q0 .625.437 1.063m.991-.991v-.777c.43-.505.96-.914 1.556-1.202q.919-.45 2.015-.45 1.098 0 2.016.45t1.556 1.202v.777zM17 17.143a1.5 1.5 0 0 0 1.113-.459 1.5 1.5 0 0 0 .458-1.113q0-.654-.458-1.112A1.5 1.5 0 0 0 17 14a1.5 1.5 0 0 0-1.113.459 1.5 1.5 0 0 0-.459 1.113q0 .654.459 1.113a1.52 1.52 0 0 0 1.113.458", clipRule: "evenodd" }));
30
+
31
+ const SvgMoreVert = (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: "M12 8c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm0 2c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm0 6c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2z" }));
32
+
33
+ function useMergedRef(...refs) {
34
+ return React.useCallback(element => {
35
+ for (let i = 0; i < refs.length; i++) {
36
+ const ref = refs[i];
37
+ if (typeof ref === 'function') ref(element);else if (ref && typeof ref === 'object') ref.current = element;
38
+ }
39
+ }, // eslint-disable-next-line react-hooks/exhaustive-deps
40
+ refs);
41
+ }
42
+
43
+ const page = "_page_1yc3p_1";
44
+ const container = "_container_1yc3p_17";
45
+ const content = "_content_1yc3p_34";
46
+ const sidebar = "_sidebar_1yc3p_48";
47
+ const panel = "_panel_1yc3p_133";
48
+ const header = "_header_1yc3p_161";
49
+ const title = "_title_1yc3p_165";
50
+ const chips = "_chips_1yc3p_175";
51
+ const actions = "_actions_1yc3p_179";
52
+ const description = "_description_1yc3p_192";
53
+ const open = "_open_1yc3p_206";
54
+ const small = "_small_1yc3p_206";
55
+ const medium = "_medium_1yc3p_209";
56
+ const large = "_large_1yc3p_212";
57
+ const collapsed = "_collapsed_1yc3p_215";
58
+ const noPadding = "_noPadding_1yc3p_309";
59
+ const layout = "_layout_1yc3p_362";
60
+ const styles = {
61
+ page: page,
62
+ container: container,
63
+ content: content,
64
+ "content-inner": "_content-inner_1yc3p_39",
65
+ "content-header-inner": "_content-header-inner_1yc3p_44",
66
+ sidebar: sidebar,
67
+ "sidebar-inner": "_sidebar-inner_1yc3p_59",
68
+ "toggle-button-wrapper": "_toggle-button-wrapper_1yc3p_86",
69
+ "toggle-button-tooltip": "_toggle-button-tooltip_1yc3p_94",
70
+ "toggle-button": "_toggle-button_1yc3p_86",
71
+ "sidebar-header": "_sidebar-header_1yc3p_112",
72
+ "sidebar-adaptive-trigger-container": "_sidebar-adaptive-trigger-container_1yc3p_118",
73
+ "sidebar-adaptive-container": "_sidebar-adaptive-container_1yc3p_127",
74
+ "sidebar-adaptive": "_sidebar-adaptive_1yc3p_118",
75
+ panel: panel,
76
+ "panel-inner": "_panel-inner_1yc3p_141",
77
+ "virtual-scroll-container": "_virtual-scroll-container_1yc3p_152",
78
+ header: header,
79
+ "title-wrapper": "_title-wrapper_1yc3p_165",
80
+ title: title,
81
+ "preference-action": "_preference-action_1yc3p_172",
82
+ chips: chips,
83
+ actions: actions,
84
+ description: description,
85
+ open: open,
86
+ small: small,
87
+ medium: medium,
88
+ large: large,
89
+ collapsed: collapsed,
90
+ noPadding: noPadding,
91
+ "sidebar-adaptive-trigger": "_sidebar-adaptive-trigger_1yc3p_118",
92
+ "sidebar-adaptive-trigger-icon": "_sidebar-adaptive-trigger-icon_1yc3p_335",
93
+ layout: layout
94
+ };
95
+
96
+ const PageSideBarContext = createContext(null);
97
+ const PageSidebar = forwardRef(
98
+ (props, ref) => {
99
+ const {
100
+ children,
101
+ className,
102
+ currentPageTitle,
103
+ localStorageKey = "sidebar-collapsed",
104
+ ...rest
105
+ } = props;
106
+ const data = {
107
+ localStorageKey
108
+ };
109
+ const { breakpoint } = useContext(AnvilProviderContext);
110
+ const trackingId = useTrackingId({
111
+ name: "PageSidebarButton",
112
+ data,
113
+ hasOverride: !!props["data-tracking-id"]
114
+ });
115
+ const [collapsed, setCollapsed] = useState(() => {
116
+ const sidebarState = localStorage.getItem(localStorageKey);
117
+ return sidebarState ? JSON.parse(sidebarState) : false;
118
+ });
119
+ const classNames = cx([styles["sidebar"]], className, {
120
+ [styles["collapsed"]]: collapsed
121
+ });
122
+ const onToggleButtonClick = () => {
123
+ setCollapsed((prev) => {
124
+ localStorage.setItem(localStorageKey, JSON.stringify(!prev));
125
+ return !prev;
126
+ });
127
+ };
128
+ const breakpointWidth = +(BreakpointLg?.value.replace("px", "") ?? 0);
129
+ const innerWidth = breakpoint?.innerWidth ?? 0;
130
+ if (innerWidth < breakpointWidth) {
131
+ return /* @__PURE__ */ jsxs(Popover, { fillAvailableHeight: true, matchReferenceWidth: true, noPadding: true, disableCaret: true, children: [
132
+ /* @__PURE__ */ jsx(Popover.Trigger, { children: (props2) => {
133
+ if (typeof document !== "undefined") {
134
+ props2["data-state"] === "open" ? document.body.style.overflow = "hidden" : document.body.style.overflow = "auto";
135
+ }
136
+ return /* @__PURE__ */ jsx("div", { className: styles["sidebar-adaptive-trigger-container"], children: /* @__PURE__ */ jsxs(
137
+ Button,
138
+ {
139
+ className: styles["sidebar-adaptive-trigger"],
140
+ icon: SvgSegment,
141
+ appearance: "ghost",
142
+ ...props2,
143
+ children: [
144
+ !currentPageTitle ? "Menu" : currentPageTitle,
145
+ /* @__PURE__ */ jsx(
146
+ Icon,
147
+ {
148
+ className: styles["sidebar-adaptive-trigger-icon"],
149
+ justifyContent: "end",
150
+ svg: props2["data-state"] === "open" ? SvgKeyboardArrowUp : SvgKeyboardArrowDown
151
+ }
152
+ )
153
+ ]
154
+ }
155
+ ) });
156
+ } }),
157
+ /* @__PURE__ */ jsx(Popover.Content, { className: styles["sidebar-adaptive-container"], children: /* @__PURE__ */ jsx(
158
+ Flex,
159
+ {
160
+ direction: "column",
161
+ className: styles["sidebar-adaptive"],
162
+ ref,
163
+ children
164
+ }
165
+ ) })
166
+ ] });
167
+ }
168
+ return /* @__PURE__ */ jsx(PageSideBarContext.Provider, { value: { collapsed }, children: /* @__PURE__ */ jsxs("div", { className: classNames, ref, ...rest, children: [
169
+ /* @__PURE__ */ jsx("div", { className: styles["sidebar-inner"], "aria-hidden": collapsed, children: /* @__PURE__ */ jsx("div", { children }) }),
170
+ /* @__PURE__ */ jsx("div", { className: styles["toggle-button-wrapper"], children: /* @__PURE__ */ jsxs(Tooltip, { placement: "right", children: [
171
+ /* @__PURE__ */ jsx(Tooltip.Trigger, { className: styles["toggle-button-tooltip"], children: /* @__PURE__ */ jsx(
172
+ Button,
173
+ {
174
+ size: "small",
175
+ onClick: onToggleButtonClick,
176
+ className: styles["toggle-button"],
177
+ "aria-label": collapsed ? "Open Sidebar" : "Close Sidebar",
178
+ "data-tracking-id": trackingId,
179
+ icon: collapsed ? SvgChevronRight : SvgChevronLeft
180
+ }
181
+ ) }),
182
+ /* @__PURE__ */ jsx(Tooltip.Content, { children: collapsed ? "Open Sidebar" : "Close Sidebar" })
183
+ ] }) })
184
+ ] }) });
185
+ }
186
+ );
187
+ PageSidebar.displayName = "Page.Sidebar";
188
+ const PageSidebarHeader = forwardRef(
189
+ (props, ref) => {
190
+ const { children, className, ...rest } = props;
191
+ const context = useContext(PageSideBarContext);
192
+ const classNames = cx([styles["sidebar-header"]], className);
193
+ return /* @__PURE__ */ jsx("div", { className: classNames, ref, ...rest, children: /* @__PURE__ */ jsx(
194
+ "div",
195
+ {
196
+ className: styles["header-content"],
197
+ "aria-hidden": context?.collapsed,
198
+ children
199
+ }
200
+ ) });
201
+ }
202
+ );
203
+ PageSidebarHeader.displayName = "Page.SidebarHeader";
204
+ const PagePanel = forwardRef(
205
+ (props, ref) => {
206
+ const {
207
+ children,
208
+ open,
209
+ size = "medium",
210
+ noPadding,
211
+ style,
212
+ className,
213
+ ...rest
214
+ } = props;
215
+ const classNames = cx([styles["panel"]], [styles[size]], className, {
216
+ [styles["open"]]: typeof open === "undefined" ? true : open,
217
+ [styles["persistent"]]: typeof open === "undefined",
218
+ [styles["noPadding"]]: noPadding
219
+ });
220
+ const { breakpoint } = useContext(AnvilProviderContext);
221
+ const breakpointWidth = +(BreakpointLg?.value.replace("px", "") ?? 0);
222
+ const innerWidth = breakpoint?.innerWidth ?? 0;
223
+ if (typeof open !== "undefined" && innerWidth < breakpointWidth) {
224
+ return /* @__PURE__ */ jsx(Dialog, { open, children: /* @__PURE__ */ jsx(Dialog.Content, { children: /* @__PURE__ */ jsx(
225
+ "div",
226
+ {
227
+ className: classNames,
228
+ "aria-hidden": !open,
229
+ "aria-disabled": !open,
230
+ ref,
231
+ ...rest,
232
+ children
233
+ }
234
+ ) }) });
235
+ }
236
+ return /* @__PURE__ */ jsx(
237
+ "div",
238
+ {
239
+ className: classNames,
240
+ "aria-hidden": !open,
241
+ "aria-disabled": !open,
242
+ ref,
243
+ ...rest,
244
+ children: /* @__PURE__ */ jsx(
245
+ "div",
246
+ {
247
+ className: styles["panel-inner"],
248
+ tabIndex: typeof open !== "undefined" && open ? 0 : -1,
249
+ style,
250
+ children: /* @__PURE__ */ jsx("div", { children })
251
+ }
252
+ )
253
+ }
254
+ );
255
+ }
256
+ );
257
+ PagePanel.displayName = "PagePanel";
258
+ const PageHeader = forwardRef(
259
+ (props, ref) => {
260
+ const {
261
+ title,
262
+ breadcrumbs,
263
+ chips,
264
+ description,
265
+ actions,
266
+ preferenceAction,
267
+ layout,
268
+ className,
269
+ ...rest
270
+ } = props;
271
+ const { fluid, variant } = layout || {};
272
+ const preferenceItem = preferenceAction && ("href" in preferenceAction ? /* @__PURE__ */ jsxs(Tooltip, { children: [
273
+ /* @__PURE__ */ jsx(Tooltip.Trigger, { children: /* @__PURE__ */ jsx(
274
+ ButtonLink,
275
+ {
276
+ appearance: "ghost",
277
+ icon: SvgLocalSettings,
278
+ size: "small",
279
+ className: styles["preference-action"],
280
+ ...preferenceAction
281
+ }
282
+ ) }),
283
+ /* @__PURE__ */ jsx(Tooltip.Content, { children: preferenceAction["aria-label"] })
284
+ ] }) : /* @__PURE__ */ jsxs(Tooltip, { children: [
285
+ /* @__PURE__ */ jsx(Tooltip.Trigger, { children: /* @__PURE__ */ jsx(
286
+ Button,
287
+ {
288
+ appearance: "ghost",
289
+ icon: SvgLocalSettings,
290
+ size: "small",
291
+ className: styles["preference-action"],
292
+ ...preferenceAction
293
+ }
294
+ ) }),
295
+ /* @__PURE__ */ jsx(Tooltip.Content, { children: preferenceAction["aria-label"] })
296
+ ] }));
297
+ const actionItems = actions && /* @__PURE__ */ jsxs(Flex, { justifyContent: "flex-end", className: styles.actions, children: [
298
+ actions.secondary?.length && actions.secondary.length < 3 && !actions.primary && actions.secondary.map((action, index) => /* @__PURE__ */ jsx(Button, { appearance: "secondary", ...action, children: action.label }, index)),
299
+ actions.primary && actions.secondary && actions.secondary?.length < 2 && /* @__PURE__ */ jsxs(Fragment, { children: [
300
+ actions.secondary?.[0] && /* @__PURE__ */ jsx(Button, { appearance: "secondary", ...actions.secondary[0], children: actions.secondary[0].label }),
301
+ /* @__PURE__ */ jsx(Button, { appearance: "primary", ...actions.primary, children: actions.primary.label })
302
+ ] }),
303
+ actions.secondary && (actions.secondary?.length >= 3 || actions.secondary?.length >= 2 && actions.primary) && /* @__PURE__ */ jsxs(Fragment, { children: [
304
+ /* @__PURE__ */ jsx(
305
+ Menu,
306
+ {
307
+ trigger: ({ ref: ref2, ...rest2 }) => /* @__PURE__ */ jsxs(Tooltip, { children: [
308
+ /* @__PURE__ */ jsx(
309
+ Tooltip.Trigger,
310
+ {
311
+ ref: ref2,
312
+ ...rest2,
313
+ children: /* @__PURE__ */ jsx(
314
+ Button,
315
+ {
316
+ appearance: "secondary",
317
+ icon: SvgMoreVert,
318
+ "aria-label": "More actions"
319
+ }
320
+ )
321
+ }
322
+ ),
323
+ /* @__PURE__ */ jsx(Tooltip.Content, { children: "More actions" })
324
+ ] }),
325
+ children: actions.secondary?.map((action, index) => /* @__PURE__ */ jsx(
326
+ Menu.Item,
327
+ {
328
+ label: action.label,
329
+ onClick: action.onClick,
330
+ disabled: action.disabled
331
+ },
332
+ index
333
+ ))
334
+ }
335
+ ),
336
+ actions.primary && /* @__PURE__ */ jsx(Button, { appearance: "primary", ...actions.primary, children: actions.primary.label })
337
+ ] })
338
+ ] });
339
+ const headerClassName = cx(styles.content, styles.header, className);
340
+ const headerContentClassName = cx(
341
+ styles["content-inner"],
342
+ styles["content-header-inner"]
343
+ );
344
+ return /* @__PURE__ */ jsx("header", { ref, className: headerClassName, ...rest, children: /* @__PURE__ */ jsx("div", { className: headerContentClassName, children: /* @__PURE__ */ jsxs(Layout, { fluid, variant, className: styles["layout"], children: [
345
+ /* @__PURE__ */ jsx(Layout.Item, { children: breadcrumbs && /* @__PURE__ */ jsx(Breadcrumbs, { children: breadcrumbs.map((breadcrumb, index) => /* @__PURE__ */ jsx(Breadcrumbs.Link, { ...breadcrumb }, index)) }) }),
346
+ /* @__PURE__ */ jsxs(Layout.Item, { md: actionItems ? 6 : 12, children: [
347
+ /* @__PURE__ */ jsxs("div", { className: styles["title-wrapper"], children: [
348
+ /* @__PURE__ */ jsx(
349
+ Text,
350
+ {
351
+ variant: "headline",
352
+ size: "large",
353
+ el: "h1",
354
+ className: styles.title,
355
+ children: title
356
+ }
357
+ ),
358
+ preferenceItem
359
+ ] }),
360
+ chips && /* @__PURE__ */ jsx(Flex, { className: styles.chips, children: chips.map((chip, index) => /* @__PURE__ */ jsx(Chip, { ...chip }, index)) })
361
+ ] }),
362
+ /* @__PURE__ */ jsx(Layout.Item, { md: 6, children: actionItems }),
363
+ description && /* @__PURE__ */ jsx(Layout.Item, { md: 12, className: styles.description, children: description })
364
+ ] }) }) });
365
+ }
366
+ );
367
+ PageHeader.displayName = "Page.Header";
368
+ const PageContent = forwardRef(
369
+ (props, ref) => {
370
+ const { children, className, ...rest } = props;
371
+ const classNames = cx([styles["content"]], className);
372
+ const mainRef = useRef(null);
373
+ const virtualScrollRef = useRef(null);
374
+ const blocker = useRef(true);
375
+ const [leftOffset, setLeftOffset] = useState(
376
+ (mainRef.current?.offsetLeft ?? 0) + (mainRef.current?.offsetWidth ?? 0) - 9
377
+ );
378
+ const [contentHeight, setContentHeight] = useState(
379
+ mainRef.current?.offsetHeight
380
+ );
381
+ useEffect(() => {
382
+ if (typeof window === "undefined") return;
383
+ if (!blocker.current) return;
384
+ function updatePosition() {
385
+ const newValue = window.scrollY;
386
+ virtualScrollRef.current?.scrollTo(0, newValue ?? 0);
387
+ }
388
+ window.addEventListener("scroll", updatePosition, { passive: true });
389
+ return () => {
390
+ window.removeEventListener("scroll", updatePosition);
391
+ };
392
+ }, []);
393
+ useEffect(() => {
394
+ if (mainRef.current) {
395
+ const observer = new ResizeObserver(() => {
396
+ if (!mainRef.current) return;
397
+ setLeftOffset(
398
+ mainRef.current.offsetLeft + mainRef.current.offsetWidth - 9
399
+ );
400
+ setContentHeight(mainRef.current.offsetHeight);
401
+ });
402
+ observer.observe(mainRef.current);
403
+ return () => {
404
+ observer.disconnect();
405
+ };
406
+ }
407
+ }, []);
408
+ function scrollBody(e) {
409
+ if (typeof window === "undefined") return;
410
+ if (blocker.current) return;
411
+ window.scrollTo(0, e.target.scrollTop);
412
+ }
413
+ return /* @__PURE__ */ jsxs("main", { className: classNames, ref: useMergedRef(mainRef, ref), ...rest, children: [
414
+ /* @__PURE__ */ jsx("div", { className: styles["content-inner"], children }),
415
+ /* @__PURE__ */ jsx(
416
+ "div",
417
+ {
418
+ className: styles["virtual-scroll-container"],
419
+ ref: virtualScrollRef,
420
+ style: {
421
+ left: leftOffset
422
+ },
423
+ onScrollCapture: scrollBody,
424
+ onMouseEnter: () => {
425
+ blocker.current = false;
426
+ },
427
+ onMouseLeave: () => {
428
+ blocker.current = true;
429
+ },
430
+ children: /* @__PURE__ */ jsx("div", { style: { width: 1, height: contentHeight } })
431
+ }
432
+ )
433
+ ] });
434
+ }
435
+ );
436
+ PageContent.displayName = "PageContent";
437
+ const PageElement = forwardRef((props, ref) => {
438
+ const { children, className, ...rest } = props;
439
+ const classNames = cx(styles["page"], className);
440
+ return /* @__PURE__ */ jsx("div", { className: classNames, "data-anv": "Page", ref, ...rest, children: /* @__PURE__ */ jsx("div", { className: styles["container"], children }) });
441
+ });
442
+ PageElement.displayName = "Page";
443
+ const Page = Object.assign(PageElement, {
444
+ Sidebar: PageSidebar,
445
+ SidebarHeader: PageSidebarHeader,
446
+ Header: PageHeader,
447
+ Content: PageContent,
448
+ Panel: PagePanel
449
+ });
450
+
451
+ export { Page as P, PageSidebar as a, PageSidebarHeader as b, PagePanel as c, PageHeader as d, PageContent as e };
452
+ //# sourceMappingURL=Page-C5GjTBZh.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Page-C5GjTBZh.js","sources":["../../hammer-icon/mdi/round/chevron_left.svg","../../hammer-icon/mdi/round/segment.svg","../../hammer-icon/mdi/round/keyboard_arrow_up.svg","../public/assets/icons/st/local_settings.svg","../../hammer-icon/mdi/round/more_vert.svg","../../../node_modules/.pnpm/@react-hook+merged-ref@1.3.2_react@18.3.1/node_modules/@react-hook/merged-ref/dist/module/index.js","../src/components/Page/Page.tsx"],"sourcesContent":["import * as React from \"react\";\nconst SvgChevronLeft = (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: \"M14.71 6.71a.996.996 0 0 0-1.41 0L8.71 11.3a.996.996 0 0 0 0 1.41l4.59 4.59a.996.996 0 1 0 1.41-1.41L10.83 12l3.88-3.88c.39-.39.38-1.03 0-1.41z\" }));\nexport default SvgChevronLeft;\n","import * as React from \"react\";\nconst SvgSegment = (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: \"M10 18h10c.55 0 1-.45 1-1s-.45-1-1-1H10c-.55 0-1 .45-1 1s.45 1 1 1zM3 7c0 .55.45 1 1 1h16c.55 0 1-.45 1-1s-.45-1-1-1H4c-.55 0-1 .45-1 1zm7 6h10c.55 0 1-.45 1-1s-.45-1-1-1H10c-.55 0-1 .45-1 1s.45 1 1 1z\" }));\nexport default SvgSegment;\n","import * as React from \"react\";\nconst SvgKeyboardArrowUp = (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: \"M8.12 14.71 12 10.83l3.88 3.88a.996.996 0 1 0 1.41-1.41L12.7 8.71a.996.996 0 0 0-1.41 0L6.7 13.3a.996.996 0 0 0 0 1.41c.39.38 1.03.39 1.42 0z\" }));\nexport default SvgKeyboardArrowUp;\n","import * as React from \"react\";\nconst SvgLocalSettings = (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\", { fillRule: \"evenodd\", d: \"M10.5 21h-.955a.49.49 0 0 1-.484-.399l-.366-2.517a7.5 7.5 0 0 1-1.65-.936l-2.431.954a.49.49 0 0 1-.596-.204l-1.953-3.291a.465.465 0 0 1 .117-.608l2.06-1.573a8 8 0 0 1-.067-.926c0-.313.03-.622.068-.926l-2.06-1.572a.467.467 0 0 1-.117-.609l1.953-3.291c.122-.205.376-.285.595-.205l2.431.955a7.3 7.3 0 0 1 1.65-.936L9.062 2.4a.49.49 0 0 1 .482-.4h3.906c.244 0 .444.176.488.399l.366 2.518a7.5 7.5 0 0 1 1.65.935l2.432-.955a.49.49 0 0 1 .595.205l1.953 3.291a.465.465 0 0 1-.117.608L18.85 10.5h-4.091c-.436-1.348-1.73-2.325-3.26-2.325-1.89 0-3.418 1.486-3.418 3.325 0 1.5 1.018 2.767 2.42 3.182z\", clipRule: \"evenodd\" }), /* @__PURE__ */ React.createElement(\"path\", { fillRule: \"evenodd\", d: \"M12.437 21.563A1.45 1.45 0 0 0 13.5 22h7q.624 0 1.062-.437A1.45 1.45 0 0 0 22 20.5v-7q0-.625-.438-1.062A1.45 1.45 0 0 0 20.5 12h-7q-.625 0-1.063.438A1.45 1.45 0 0 0 12 13.5v7q0 .625.437 1.063m.991-.991v-.777c.43-.505.96-.914 1.556-1.202q.919-.45 2.015-.45 1.098 0 2.016.45t1.556 1.202v.777zM17 17.143a1.5 1.5 0 0 0 1.113-.459 1.5 1.5 0 0 0 .458-1.113q0-.654-.458-1.112A1.5 1.5 0 0 0 17 14a1.5 1.5 0 0 0-1.113.459 1.5 1.5 0 0 0-.459 1.113q0 .654.459 1.113a1.52 1.52 0 0 0 1.113.458\", clipRule: \"evenodd\" }), /* @__PURE__ */ React.createElement(\"path\", { fillRule: \"evenodd\", d: \"M10.5 21h-.955a.49.49 0 0 1-.484-.399l-.366-2.517a7.5 7.5 0 0 1-1.65-.936l-2.431.954a.49.49 0 0 1-.596-.204l-1.953-3.291a.465.465 0 0 1 .117-.608l2.06-1.573a8 8 0 0 1-.067-.926c0-.313.03-.622.068-.926l-2.06-1.572a.467.467 0 0 1-.117-.609l1.953-3.291c.122-.205.376-.285.595-.205l2.431.955a7.3 7.3 0 0 1 1.65-.936L9.062 2.4a.49.49 0 0 1 .482-.4h3.906c.244 0 .444.176.488.399l.366 2.518a7.5 7.5 0 0 1 1.65.935l2.432-.955a.49.49 0 0 1 .595.205l1.953 3.291a.465.465 0 0 1-.117.608L18.85 10.5h-4.091c-.436-1.348-1.73-2.325-3.26-2.325-1.89 0-3.418 1.486-3.418 3.325 0 1.5 1.018 2.767 2.42 3.182z\", clipRule: \"evenodd\" }), /* @__PURE__ */ React.createElement(\"path\", { fillRule: \"evenodd\", d: \"M12.437 21.563A1.45 1.45 0 0 0 13.5 22h7q.624 0 1.062-.437A1.45 1.45 0 0 0 22 20.5v-7q0-.625-.438-1.062A1.45 1.45 0 0 0 20.5 12h-7q-.625 0-1.063.438A1.45 1.45 0 0 0 12 13.5v7q0 .625.437 1.063m.991-.991v-.777c.43-.505.96-.914 1.556-1.202q.919-.45 2.015-.45 1.098 0 2.016.45t1.556 1.202v.777zM17 17.143a1.5 1.5 0 0 0 1.113-.459 1.5 1.5 0 0 0 .458-1.113q0-.654-.458-1.112A1.5 1.5 0 0 0 17 14a1.5 1.5 0 0 0-1.113.459 1.5 1.5 0 0 0-.459 1.113q0 .654.459 1.113a1.52 1.52 0 0 0 1.113.458\", clipRule: \"evenodd\" }));\nexport default SvgLocalSettings;\n","import * as React from \"react\";\nconst SvgMoreVert = (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: \"M12 8c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm0 2c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm0 6c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2z\" }));\nexport default SvgMoreVert;\n","import * as React from 'react';\n\nfunction useMergedRef(...refs) {\n return React.useCallback(element => {\n for (let i = 0; i < refs.length; i++) {\n const ref = refs[i];\n if (typeof ref === 'function') ref(element);else if (ref && typeof ref === 'object') ref.current = element;\n }\n }, // eslint-disable-next-line react-hooks/exhaustive-deps\n refs);\n}\n\nexport default useMergedRef;","import {\n ComponentPropsWithoutRef,\n ReactNode,\n Ref,\n RefObject,\n UIEvent,\n createContext,\n forwardRef,\n useContext,\n useEffect,\n useRef,\n useState,\n} from \"react\";\nimport { core } from \"@servicetitan/hammer-token\";\nimport OpenSVG from \"@servicetitan/hammer-icon/mdi/round/chevron_right.svg\";\nimport CloseSVG from \"@servicetitan/hammer-icon/mdi/round/chevron_left.svg\";\nimport SegmentSVG from \"@servicetitan/hammer-icon/mdi/round/segment.svg\";\nimport RespOpen from \"@servicetitan/hammer-icon/mdi/round/keyboard_arrow_down.svg\";\nimport RespClose from \"@servicetitan/hammer-icon/mdi/round/keyboard_arrow_up.svg\";\nimport LocalSettings from \"../../../public/assets/icons/st/local_settings.svg\";\nimport MoreVert from \"@servicetitan/hammer-icon/mdi/round/more_vert.svg\";\nimport {\n AnvilProviderContext,\n AnvilProviderContextProps,\n} from \"../../providers\";\nimport { useTrackingId } from \"../../hooks\";\nimport Button, { ButtonProps } from \"../Button\";\nimport Popover from \"../Popover\";\nimport Icon from \"../Icon\";\nimport Flex from \"../Flex\";\nimport Tooltip from \"../Tooltip\";\nimport ButtonLink, { ButtonLinkProps } from \"../ButtonLink\";\nimport Breadcrumbs, { BreadcrumbsLinkProps } from \"../Breadcrumbs\";\nimport Chip, { ChipProps } from \"../Chip\";\nimport Menu from \"../Menu\";\nimport Text from \"../Text\";\nimport Dialog from \"../Dialog\";\nimport useMergedRef from \"@react-hook/merged-ref\";\nimport Layout, { LayoutProps } from \"../Layout\";\n\nimport styles from \"./Page.module.scss\";\nimport cx from \"classnames\";\n\n//--- Start Page Sidebar ---//\ntype PageSideBarContextProps = {\n collapsed: boolean;\n};\n\nconst PageSideBarContext = createContext<PageSideBarContextProps | null>(null);\n\nexport type PageSidebarProps = ComponentPropsWithoutRef<\"div\"> & {\n localStorageKey?: string;\n [\"data-tracking-id\"]?: string;\n currentPageTitle?: string;\n};\n\nexport const PageSidebar = forwardRef(\n (props: PageSidebarProps, ref: Ref<HTMLDivElement>) => {\n const {\n children,\n className,\n currentPageTitle,\n localStorageKey = \"sidebar-collapsed\",\n ...rest\n } = props;\n\n const data = {\n localStorageKey,\n };\n\n const { breakpoint } =\n useContext<AnvilProviderContextProps>(AnvilProviderContext);\n\n const trackingId = useTrackingId({\n name: \"PageSidebarButton\",\n data,\n hasOverride: !!props[\"data-tracking-id\"],\n });\n\n const [collapsed, setCollapsed] = useState<boolean>(() => {\n // getting stored value\n const sidebarState = localStorage.getItem(localStorageKey);\n return sidebarState ? JSON.parse(sidebarState) : false;\n });\n const classNames = cx([styles[\"sidebar\"]], className, {\n [styles[\"collapsed\"]]: collapsed,\n });\n const onToggleButtonClick = () => {\n setCollapsed((prev) => {\n localStorage.setItem(localStorageKey, JSON.stringify(!prev));\n return !prev;\n });\n };\n\n const breakpointWidth = +(\n core.primitive?.BreakpointLg?.value.replace(\"px\", \"\") ?? 0\n );\n const innerWidth = breakpoint?.innerWidth ?? 0;\n\n if (innerWidth < breakpointWidth) {\n return (\n <Popover fillAvailableHeight matchReferenceWidth noPadding disableCaret>\n <Popover.Trigger>\n {(props) => {\n if (typeof document !== \"undefined\") {\n props[\"data-state\"] === \"open\"\n ? (document.body.style.overflow = \"hidden\")\n : (document.body.style.overflow = \"auto\");\n }\n return (\n <div className={styles[\"sidebar-adaptive-trigger-container\"]}>\n <Button\n className={styles[\"sidebar-adaptive-trigger\"]}\n icon={SegmentSVG}\n appearance=\"ghost\"\n {...props}\n >\n {!currentPageTitle ? \"Menu\" : currentPageTitle}\n <Icon\n className={styles[\"sidebar-adaptive-trigger-icon\"]}\n justifyContent=\"end\"\n svg={\n props[\"data-state\"] === \"open\" ? RespClose : RespOpen\n }\n />\n </Button>\n </div>\n );\n }}\n </Popover.Trigger>\n <Popover.Content className={styles[\"sidebar-adaptive-container\"]}>\n <Flex\n direction=\"column\"\n className={styles[\"sidebar-adaptive\"]}\n ref={ref}\n >\n {children}\n </Flex>\n </Popover.Content>\n </Popover>\n );\n }\n\n return (\n <PageSideBarContext.Provider value={{ collapsed }}>\n <div className={classNames} ref={ref} {...rest}>\n <div className={styles[\"sidebar-inner\"]} aria-hidden={collapsed}>\n <div>{children}</div>\n </div>\n <div className={styles[\"toggle-button-wrapper\"]}>\n <Tooltip placement=\"right\">\n <Tooltip.Trigger className={styles[\"toggle-button-tooltip\"]}>\n <Button\n size=\"small\"\n onClick={onToggleButtonClick}\n className={styles[\"toggle-button\"]}\n aria-label={collapsed ? \"Open Sidebar\" : \"Close Sidebar\"}\n data-tracking-id={trackingId}\n icon={collapsed ? OpenSVG : CloseSVG}\n />\n </Tooltip.Trigger>\n <Tooltip.Content>\n {collapsed ? \"Open Sidebar\" : \"Close Sidebar\"}\n </Tooltip.Content>\n </Tooltip>\n </div>\n </div>\n </PageSideBarContext.Provider>\n );\n },\n);\n\nPageSidebar.displayName = \"Page.Sidebar\";\n//--- End Page Sidebar ---//\n\n//--- Start Page Sidebar Header ---//\nexport type PageSidebarHeaderProps = ComponentPropsWithoutRef<\"div\">;\n\nexport const PageSidebarHeader = forwardRef(\n (props: PageSidebarHeaderProps, ref: Ref<HTMLDivElement>) => {\n const { children, className, ...rest } = props;\n const context = useContext(PageSideBarContext);\n const classNames = cx([styles[\"sidebar-header\"]], className);\n\n return (\n <div className={classNames} ref={ref} {...rest}>\n <div\n className={styles[\"header-content\"]}\n aria-hidden={context?.collapsed}\n >\n {children}\n </div>\n </div>\n );\n },\n);\n\nPageSidebarHeader.displayName = \"Page.SidebarHeader\";\n//--- End Page SidebarHeader ---//\n\n//--- Start Page Panel ---//\nexport type PagePanelProps = ComponentPropsWithoutRef<\"div\"> & {\n open?: boolean;\n size?: \"small\" | \"medium\" | \"large\";\n noPadding?: boolean;\n};\n\nexport const PagePanel = forwardRef(\n (props: PagePanelProps, ref: Ref<HTMLDivElement>) => {\n const {\n children,\n open,\n size = \"medium\",\n noPadding,\n style,\n className,\n ...rest\n } = props;\n const classNames = cx([styles[\"panel\"]], [styles[size]], className, {\n [styles[\"open\"]]: typeof open === \"undefined\" ? true : open,\n [styles[\"persistent\"]]: typeof open === \"undefined\",\n [styles[\"noPadding\"]]: noPadding,\n });\n\n const { breakpoint } =\n useContext<AnvilProviderContextProps>(AnvilProviderContext);\n\n const breakpointWidth = +(\n core.primitive?.BreakpointLg?.value.replace(\"px\", \"\") ?? 0\n );\n const innerWidth = breakpoint?.innerWidth ?? 0;\n\n if (typeof open !== \"undefined\" && innerWidth < breakpointWidth) {\n return (\n <Dialog open={open}>\n <Dialog.Content>\n <div\n className={classNames}\n aria-hidden={!open}\n aria-disabled={!open}\n ref={ref}\n {...rest}\n >\n {children}\n </div>\n </Dialog.Content>\n </Dialog>\n );\n }\n return (\n <div\n className={classNames}\n aria-hidden={!open}\n aria-disabled={!open}\n ref={ref}\n {...rest}\n >\n <div\n className={styles[\"panel-inner\"]}\n /* eslint-disable-next-line jsx-a11y/no-noninteractive-tabindex */\n tabIndex={typeof open !== \"undefined\" && open ? 0 : -1}\n style={style}\n >\n <div>{children}</div>\n </div>\n </div>\n );\n },\n);\nPagePanel.displayName = \"PagePanel\";\n//--- End Page Panel ---//\n\n//--- Start Page Header ---//\ntype PageHeaderActionProps = Omit<ButtonProps, \"appearance\"> & {\n label: string;\n};\n\ntype PageHeaderActionsProps = {\n primary?: PageHeaderActionProps;\n secondary?: PageHeaderActionProps[];\n};\n\ntype BasePreferenceProps = {\n \"aria-label\": string;\n};\n\ntype PreferenceButtonProps = Omit<\n ButtonProps,\n \"aria-label\" | \"icon\" | \"appearance\" | \"size\" | \"className\"\n> &\n BasePreferenceProps;\n\ntype PreferenceLinkProps = Omit<\n ButtonLinkProps,\n \"aria-label\" | \"icon\" | \"appearance\" | \"size\" | \"className\"\n> &\n BasePreferenceProps;\n\nexport type PageHeaderProps = ComponentPropsWithoutRef<\"header\"> & {\n title: string;\n breadcrumbs?: BreadcrumbsLinkProps[];\n chips?: ChipProps[];\n description?: ReactNode;\n actions?: PageHeaderActionsProps;\n preferenceAction?: PreferenceButtonProps | PreferenceLinkProps;\n layout?: LayoutProps;\n};\n\nexport const PageHeader = forwardRef(\n (props: PageHeaderProps, ref: Ref<HTMLHeadElement>) => {\n const {\n title,\n breadcrumbs,\n chips,\n description,\n actions,\n preferenceAction,\n layout,\n className,\n ...rest\n } = props;\n\n const { fluid, variant } = layout || {};\n\n const preferenceItem =\n preferenceAction &&\n (\"href\" in preferenceAction ? (\n <Tooltip>\n <Tooltip.Trigger>\n <ButtonLink\n appearance=\"ghost\"\n icon={LocalSettings}\n size=\"small\"\n className={styles[\"preference-action\"]}\n {...(preferenceAction as PreferenceLinkProps)}\n />\n </Tooltip.Trigger>\n <Tooltip.Content>{preferenceAction[\"aria-label\"]}</Tooltip.Content>\n </Tooltip>\n ) : (\n <Tooltip>\n <Tooltip.Trigger>\n <Button\n appearance=\"ghost\"\n icon={LocalSettings}\n size=\"small\"\n className={styles[\"preference-action\"]}\n {...(preferenceAction as PreferenceButtonProps)}\n />\n </Tooltip.Trigger>\n <Tooltip.Content>{preferenceAction[\"aria-label\"]}</Tooltip.Content>\n </Tooltip>\n ));\n\n const actionItems = actions && (\n <Flex justifyContent=\"flex-end\" className={styles.actions}>\n {actions.secondary?.length &&\n actions.secondary.length < 3 &&\n !actions.primary &&\n actions.secondary.map((action, index) => (\n <Button key={index} appearance=\"secondary\" {...action}>\n {action.label}\n </Button>\n ))}\n\n {actions.primary &&\n actions.secondary &&\n actions.secondary?.length < 2 && (\n <>\n {actions.secondary?.[0] && (\n <Button appearance=\"secondary\" {...actions.secondary[0]}>\n {actions.secondary[0].label}\n </Button>\n )}\n <Button appearance=\"primary\" {...actions.primary}>\n {actions.primary.label}\n </Button>\n </>\n )}\n\n {actions.secondary &&\n (actions.secondary?.length >= 3 ||\n (actions.secondary?.length >= 2 && actions.primary)) && (\n <>\n <Menu\n trigger={({ ref, ...rest }) => (\n <Tooltip>\n <Tooltip.Trigger\n ref={ref as unknown as RefObject<HTMLDivElement>}\n {...rest}\n >\n <Button\n appearance=\"secondary\"\n icon={MoreVert}\n aria-label=\"More actions\"\n />\n </Tooltip.Trigger>\n <Tooltip.Content>More actions</Tooltip.Content>\n </Tooltip>\n )}\n >\n {actions.secondary?.map((action, index) => (\n <Menu.Item\n key={index}\n label={action.label}\n onClick={action.onClick}\n disabled={action.disabled}\n />\n ))}\n </Menu>\n {actions.primary && (\n <Button appearance=\"primary\" {...actions.primary}>\n {actions.primary.label}\n </Button>\n )}\n </>\n )}\n </Flex>\n );\n\n const headerClassName = cx(styles.content, styles.header, className);\n\n const headerContentClassName = cx(\n styles[\"content-inner\"],\n styles[\"content-header-inner\"],\n );\n\n return (\n <header ref={ref} className={headerClassName} {...rest}>\n <div className={headerContentClassName}>\n <Layout fluid={fluid} variant={variant} className={styles[\"layout\"]}>\n <Layout.Item>\n {breadcrumbs && (\n <Breadcrumbs>\n {breadcrumbs.map((breadcrumb, index) => (\n <Breadcrumbs.Link key={index} {...breadcrumb} />\n ))}\n </Breadcrumbs>\n )}\n </Layout.Item>\n\n <Layout.Item md={actionItems ? 6 : 12}>\n <div className={styles[\"title-wrapper\"]}>\n <Text\n variant=\"headline\"\n size=\"large\"\n el=\"h1\"\n className={styles.title}\n >\n {title}\n </Text>\n\n {preferenceItem}\n </div>\n\n {chips && (\n <Flex className={styles.chips}>\n {chips.map((chip, index) => (\n <Chip key={index} {...chip} />\n ))}\n </Flex>\n )}\n </Layout.Item>\n\n <Layout.Item md={6}>{actionItems}</Layout.Item>\n\n {description && (\n <Layout.Item md={12} className={styles.description}>\n {description}\n </Layout.Item>\n )}\n </Layout>\n </div>\n </header>\n );\n },\n);\n\nPageHeader.displayName = \"Page.Header\";\n//--- End Page Header ---//\n\n//--- Start Page Content ---//\nexport type PageContentProps = ComponentPropsWithoutRef<\"main\">;\n\nexport const PageContent = forwardRef(\n (props: PageContentProps, ref: Ref<HTMLAreaElement>) => {\n const { children, className, ...rest } = props;\n const classNames = cx([styles[\"content\"]], className);\n const mainRef = useRef<HTMLAreaElement>(null);\n const virtualScrollRef = useRef<HTMLDivElement>(null);\n const blocker = useRef(true);\n const [leftOffset, setLeftOffset] = useState(\n (mainRef.current?.offsetLeft ?? 0) +\n (mainRef.current?.offsetWidth ?? 0) -\n 9,\n );\n const [contentHeight, setContentHeight] = useState(\n mainRef.current?.offsetHeight,\n );\n\n // Updates scroll position\n useEffect(() => {\n if (typeof window === \"undefined\") return;\n if (!blocker.current) return;\n function updatePosition() {\n const newValue = window.scrollY;\n\n virtualScrollRef.current?.scrollTo(0, newValue ?? 0);\n }\n window.addEventListener(\"scroll\", updatePosition, { passive: true });\n\n return () => {\n window.removeEventListener(\"scroll\", updatePosition);\n };\n }, []);\n\n // Updates virtual scroll properties when main resizes\n useEffect(() => {\n if (mainRef.current) {\n const observer = new ResizeObserver(() => {\n if (!mainRef.current) return;\n setLeftOffset(\n mainRef.current.offsetLeft + mainRef.current.offsetWidth - 9,\n );\n setContentHeight(mainRef.current.offsetHeight);\n });\n\n observer.observe(mainRef.current);\n\n // Cleanup function\n return () => {\n observer.disconnect();\n };\n }\n }, []);\n\n function scrollBody(e: UIEvent<HTMLElement>) {\n if (typeof window === \"undefined\") return;\n if (blocker.current) return;\n window.scrollTo(0, (e.target as HTMLDivElement).scrollTop);\n }\n\n return (\n <main className={classNames} ref={useMergedRef(mainRef, ref)} {...rest}>\n <div className={styles[\"content-inner\"]}>{children}</div>\n <div\n className={styles[\"virtual-scroll-container\"]}\n ref={virtualScrollRef}\n style={{\n left: leftOffset,\n }}\n onScrollCapture={scrollBody}\n onMouseEnter={() => {\n blocker.current = false;\n }}\n onMouseLeave={() => {\n blocker.current = true;\n }}\n >\n <div style={{ width: 1, height: contentHeight }} />\n </div>\n </main>\n );\n },\n);\n\nPageContent.displayName = \"PageContent\";\n//--- End Page Content ---//\n\n//--- Start Page Element ---//\nexport type PageProps = ComponentPropsWithoutRef<\"div\">;\n\nconst PageElement = forwardRef((props: PageProps, ref: Ref<HTMLDivElement>) => {\n const { children, className, ...rest } = props;\n const classNames = cx(styles[\"page\"], className);\n\n return (\n <div className={classNames} data-anv=\"Page\" ref={ref} {...rest}>\n <div className={styles[\"container\"]}>{children}</div>\n </div>\n );\n});\n\nPageElement.displayName = \"Page\";\n\nexport const Page = Object.assign(PageElement, {\n Sidebar: PageSidebar,\n SidebarHeader: PageSidebarHeader,\n Header: PageHeader,\n Content: PageContent,\n Panel: PagePanel,\n});\n"],"names":["core.primitive?.BreakpointLg","props","SegmentSVG","RespClose","RespOpen","OpenSVG","CloseSVG","LocalSettings","ref","rest","MoreVert"],"mappings":"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","x_google_ignoreList":[5]}