@servicetitan/anvil2 2.9.2 → 3.0.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 (499) hide show
  1. package/CHANGELOG.md +79 -2
  2. package/dist/{AiMark-DhgDh95y.js → AiMark-B1-M3ZgP.js} +27 -26
  3. package/dist/{AiMark-DhgDh95y.js.map → AiMark-B1-M3ZgP.js.map} +1 -1
  4. package/dist/AiMark.css +246 -256
  5. package/dist/AiMark.js +1 -1
  6. package/dist/{Alert-DffLPz0l.js → Alert-C04WIw7A.js} +20 -31
  7. package/dist/Alert-C04WIw7A.js.map +1 -0
  8. package/dist/Alert.css +72 -90
  9. package/dist/Alert.js +1 -1
  10. package/dist/{Announcement-B9zm-_1S.js → Announcement-_C5g2Lzm.js} +14 -14
  11. package/dist/{Announcement-B9zm-_1S.js.map → Announcement-_C5g2Lzm.js.map} +1 -1
  12. package/dist/Announcement.css +108 -97
  13. package/dist/Announcement.js +1 -1
  14. package/dist/{AnvilProvider-DUPYyMc7.js → AnvilProvider-JXEbeQjR.js} +13 -8
  15. package/dist/AnvilProvider-JXEbeQjR.js.map +1 -0
  16. package/dist/AnvilProvider.css +1 -2
  17. package/dist/AnvilProvider.js +1 -1
  18. package/dist/{Avatar-ChybzixS.js → Avatar-BmNcLUg-.js} +2 -2
  19. package/dist/{Avatar-ChybzixS.js.map → Avatar-BmNcLUg-.js.map} +1 -1
  20. package/dist/{Avatar-BckUfs1N.js → Avatar-Cw8B8xZV.js} +24 -24
  21. package/dist/Avatar-Cw8B8xZV.js.map +1 -0
  22. package/dist/Avatar.css +116 -177
  23. package/dist/Avatar.js +2 -2
  24. package/dist/{Badge-C2W7Dls9.js → Badge-C_wTvtnB.js} +7 -7
  25. package/dist/{Badge-C2W7Dls9.js.map → Badge-C_wTvtnB.js.map} +1 -1
  26. package/dist/Badge.css +42 -50
  27. package/dist/Badge.js +1 -1
  28. package/dist/{Breadcrumbs-CkPZHJGM.js → Breadcrumbs-CAJMeA1D.js} +7 -7
  29. package/dist/{Breadcrumbs-CkPZHJGM.js.map → Breadcrumbs-CAJMeA1D.js.map} +1 -1
  30. package/dist/Breadcrumbs.css +37 -45
  31. package/dist/Breadcrumbs.js +1 -1
  32. package/dist/{Button-BdrrhBTI.js → Button-Bnt8XUI7.js} +13 -10
  33. package/dist/{Button-BdrrhBTI.js.map → Button-Bnt8XUI7.js.map} +1 -1
  34. package/dist/Button.css +274 -335
  35. package/dist/Button.js +1 -1
  36. package/dist/Button.module-DsGhJYRw.js +23 -0
  37. package/dist/Button.module-DsGhJYRw.js.map +1 -0
  38. package/dist/{ButtonCompound-Cmw3cgMY.js → ButtonCompound-DsrK7G3q.js} +11 -4
  39. package/dist/ButtonCompound-DsrK7G3q.js.map +1 -0
  40. package/dist/ButtonCompound.css +25 -0
  41. package/dist/ButtonCompound.js +1 -1
  42. package/dist/{ButtonLink-BJKTJER8.js → ButtonLink-j3h_wRNi.js} +9 -6
  43. package/dist/ButtonLink-j3h_wRNi.js.map +1 -0
  44. package/dist/ButtonLink.js +1 -1
  45. package/dist/{ButtonToggle-DaFQ3DBG.js → ButtonToggle-Ct9_5bhC.js} +7 -4
  46. package/dist/ButtonToggle-Ct9_5bhC.js.map +1 -0
  47. package/dist/ButtonToggle.css +109 -0
  48. package/dist/ButtonToggle.js +1 -1
  49. package/dist/{Calendar-CaWPwtb3.js → Calendar-BAbAagIx.js} +2 -2
  50. package/dist/{Calendar-CaWPwtb3.js.map → Calendar-BAbAagIx.js.map} +1 -1
  51. package/dist/{Calendar-0DG2so95.js → Calendar-CaCMa_jq.js} +38 -35
  52. package/dist/Calendar-CaCMa_jq.js.map +1 -0
  53. package/dist/Calendar.css +250 -301
  54. package/dist/Calendar.js +2 -2
  55. package/dist/{Card-wz71dEVA.js → Card-DSFuXUGk.js} +11 -11
  56. package/dist/{Card-wz71dEVA.js.map → Card-DSFuXUGk.js.map} +1 -1
  57. package/dist/Card.css +51 -65
  58. package/dist/Card.js +1 -1
  59. package/dist/{Checkbox-B1I1OfZU.js → Checkbox-BSAS8-DM.js} +28 -39
  60. package/dist/Checkbox-BSAS8-DM.js.map +1 -0
  61. package/dist/{Checkbox-CTR7JfWk.js → Checkbox-Ckl8EFpF.js} +2 -2
  62. package/dist/{Checkbox-CTR7JfWk.js.map → Checkbox-Ckl8EFpF.js.map} +1 -1
  63. package/dist/Checkbox.css +237 -271
  64. package/dist/Checkbox.js +1 -1
  65. package/dist/Checkbox.module-TYMeYIxw.js +28 -0
  66. package/dist/Checkbox.module-TYMeYIxw.js.map +1 -0
  67. package/dist/{Chip-lIWu8uXb.js → Chip-Da8c7tKP.js} +31 -23
  68. package/dist/Chip-Da8c7tKP.js.map +1 -0
  69. package/dist/Chip.css +191 -206
  70. package/dist/Chip.js +1 -1
  71. package/dist/{Combobox-Dt3AnO9Z.js → Combobox-CBLaT1lU.js} +59 -72
  72. package/dist/Combobox-CBLaT1lU.js.map +1 -0
  73. package/dist/Combobox.css +158 -176
  74. package/dist/Combobox.js +1 -1
  75. package/dist/{DataTable-bMoIuYBK.js → DataTable-BDXdCF7J.js} +73 -72
  76. package/dist/{DataTable-bMoIuYBK.js.map → DataTable-BDXdCF7J.js.map} +1 -1
  77. package/dist/DataTable.css +593 -780
  78. package/dist/{DateFieldRange-B_D6v-F7.js → DateFieldRange-DPTC3EZz.js} +6 -6
  79. package/dist/{DateFieldRange-B_D6v-F7.js.map → DateFieldRange-DPTC3EZz.js.map} +1 -1
  80. package/dist/DateFieldRange.js +1 -1
  81. package/dist/{DateFieldSingle-D_Ve0E6q.js → DateFieldSingle-w1G-zd9G.js} +6 -6
  82. package/dist/{DateFieldSingle-D_Ve0E6q.js.map → DateFieldSingle-w1G-zd9G.js.map} +1 -1
  83. package/dist/DateFieldSingle.js +1 -1
  84. package/dist/{DateFieldYearless-Bg7OLIsT.js → DateFieldYearless-DHNVc7Sd.js} +7 -7
  85. package/dist/{DateFieldYearless-Bg7OLIsT.js.map → DateFieldYearless-DHNVc7Sd.js.map} +1 -1
  86. package/dist/DateFieldYearless.js +1 -1
  87. package/dist/{DateFieldYearlessRange-C40uUmLK.js → DateFieldYearlessRange-C5ktVUgG.js} +10 -10
  88. package/dist/{DateFieldYearlessRange-C40uUmLK.js.map → DateFieldYearlessRange-C5ktVUgG.js.map} +1 -1
  89. package/dist/DateFieldYearlessRange.css +11 -19
  90. package/dist/DateFieldYearlessRange.js +1 -1
  91. package/dist/{DaysOfTheWeek-2a8Ukq59.js → DaysOfTheWeek-BubWkBZ0.js} +10 -10
  92. package/dist/{DaysOfTheWeek-2a8Ukq59.js.map → DaysOfTheWeek-BubWkBZ0.js.map} +1 -1
  93. package/dist/DaysOfTheWeek.css +19 -27
  94. package/dist/DaysOfTheWeek.js +1 -1
  95. package/dist/{Details-CZOIpNP_.js → Details-DYRJcLWL.js} +10 -10
  96. package/dist/{Details-CZOIpNP_.js.map → Details-DYRJcLWL.js.map} +1 -1
  97. package/dist/Details.css +134 -138
  98. package/dist/Details.js +1 -1
  99. package/dist/{Dialog-zxpNOCDS.js → Dialog-ByTyuybu.js} +29 -28
  100. package/dist/Dialog-ByTyuybu.js.map +1 -0
  101. package/dist/Dialog.css +108 -143
  102. package/dist/Dialog.js +1 -1
  103. package/dist/{DialogCancelButton-Czz4Wpse.js → DialogCancelButton-CbtQcf2J.js} +2 -2
  104. package/dist/{DialogCancelButton-Czz4Wpse.js.map → DialogCancelButton-CbtQcf2J.js.map} +1 -1
  105. package/dist/{Divider-B1UoK8ho.js → Divider-Ds3WKsKa.js} +19 -19
  106. package/dist/{Divider-B1UoK8ho.js.map → Divider-Ds3WKsKa.js.map} +1 -1
  107. package/dist/Divider.css +93 -169
  108. package/dist/Divider.js +1 -1
  109. package/dist/Dnd.js +1 -1
  110. package/dist/DndSort.css +18 -34
  111. package/dist/DndSort.js +10 -10
  112. package/dist/{Drawer-DkCcE434.js → Drawer-CwyfBcwt.js} +27 -28
  113. package/dist/{Drawer-DkCcE434.js.map → Drawer-CwyfBcwt.js.map} +1 -1
  114. package/dist/Drawer.css +109 -144
  115. package/dist/Drawer.js +1 -1
  116. package/dist/DrillDown.css +117 -131
  117. package/dist/DrillDown.js +1 -1
  118. package/dist/DrillDown.module-D1Bf9_yP.js +27 -0
  119. package/dist/{DrillDown.module-C8VOhzaF.js.map → DrillDown.module-D1Bf9_yP.js.map} +1 -1
  120. package/dist/{EditCard-BKHmnbKP.js → EditCard-DqLSnkih.js} +21 -20
  121. package/dist/{EditCard-BKHmnbKP.js.map → EditCard-DqLSnkih.js.map} +1 -1
  122. package/dist/EditCard.css +71 -65
  123. package/dist/EditCard.js +1 -1
  124. package/dist/{FieldLabel-M5v4-PAV.js → FieldLabel-DZWu5dMp.js} +17 -17
  125. package/dist/{FieldLabel-M5v4-PAV.js.map → FieldLabel-DZWu5dMp.js.map} +1 -1
  126. package/dist/FieldLabel.css +66 -102
  127. package/dist/FieldLabel.js +1 -1
  128. package/dist/FieldMessage-DzxfodaI.js +81 -0
  129. package/dist/FieldMessage-DzxfodaI.js.map +1 -0
  130. package/dist/FieldMessage.css +20 -29
  131. package/dist/FieldMessage.js +1 -1
  132. package/dist/{Toolbar-Dsaufi65.js → FilterBar-BU8StPPd.js} +129 -941
  133. package/dist/FilterBar-BU8StPPd.js.map +1 -0
  134. package/dist/FilterBar.css +59 -0
  135. package/dist/FilterBar.d.ts +6 -0
  136. package/dist/FilterBar.js +2 -0
  137. package/dist/FilterBar.js.map +1 -0
  138. package/dist/{Flex-WyyZm1bf.js → Flex-DOUtHiPi.js} +4 -4
  139. package/dist/{Flex-WyyZm1bf.js.map → Flex-DOUtHiPi.js.map} +1 -1
  140. package/dist/Flex.css +25 -28
  141. package/dist/Flex.js +1 -1
  142. package/dist/{Grid-DeYIx5k4.js → Grid-B1VVssDD.js} +5 -5
  143. package/dist/{Grid-DeYIx5k4.js.map → Grid-B1VVssDD.js.map} +1 -1
  144. package/dist/Grid.css +37 -54
  145. package/dist/Grid.js +1 -1
  146. package/dist/{Helper-B_FIOlhy.js → Helper-DtDeaYTn.js} +8 -10
  147. package/dist/Helper-DtDeaYTn.js.map +1 -0
  148. package/dist/Helper.css +4 -16
  149. package/dist/{Icon-DuIlne4x.js → Icon-BMMbp40n.js} +7 -7
  150. package/dist/{Icon-DuIlne4x.js.map → Icon-BMMbp40n.js.map} +1 -1
  151. package/dist/Icon.css +42 -48
  152. package/dist/Icon.js +1 -1
  153. package/dist/{InputMask-PVCfJodz.js → InputMask-EwEJlW-t.js} +3 -3
  154. package/dist/{InputMask-PVCfJodz.js.map → InputMask-EwEJlW-t.js.map} +1 -1
  155. package/dist/InputMask.js +1 -1
  156. package/dist/{InteractiveCard-GTYbR6Xy.js → InteractiveCard-CnW0m_F-.js} +7 -7
  157. package/dist/{InteractiveCard-GTYbR6Xy.js.map → InteractiveCard-CnW0m_F-.js.map} +1 -1
  158. package/dist/InteractiveCard.css +56 -57
  159. package/dist/InteractiveCard.js +1 -1
  160. package/dist/{Layout-CISAxILX.js → Layout-C2Q2hyLG.js} +80 -80
  161. package/dist/{Layout-CISAxILX.js.map → Layout-C2Q2hyLG.js.map} +1 -1
  162. package/dist/Layout.css +260 -324
  163. package/dist/Layout.js +1 -1
  164. package/dist/{Link-jTvzyXca.js → Link-BUgivkGS.js} +8 -8
  165. package/dist/{Link-jTvzyXca.js.map → Link-BUgivkGS.js.map} +1 -1
  166. package/dist/Link.css +48 -65
  167. package/dist/Link.js +1 -1
  168. package/dist/Link.module-DJc0cOlg.js +12 -0
  169. package/dist/Link.module-DJc0cOlg.js.map +1 -0
  170. package/dist/{LinkButton-DGyHR1E7.js → LinkButton-CuHSdGdj.js} +7 -16
  171. package/dist/LinkButton-CuHSdGdj.js.map +1 -0
  172. package/dist/LinkButton.js +1 -1
  173. package/dist/{List--KhCpjZn.js → List-BXyHWQ9e.js} +8 -8
  174. package/dist/{List--KhCpjZn.js.map → List-BXyHWQ9e.js.map} +1 -1
  175. package/dist/List.css +39 -58
  176. package/dist/List.js +1 -1
  177. package/dist/{ListView-DT32FdKH.js → ListView-DBO9Bl1H.js} +4 -4
  178. package/dist/{ListView-DT32FdKH.js.map → ListView-DBO9Bl1H.js.map} +1 -1
  179. package/dist/ListView.css +108 -120
  180. package/dist/ListView.js +1 -1
  181. package/dist/ListView.module-CRk9NfLG.js +9 -0
  182. package/dist/ListView.module-CRk9NfLG.js.map +1 -0
  183. package/dist/{Listbox-BR0HTJaM.js → Listbox-C0tjQFDF.js} +7 -7
  184. package/dist/{Listbox-BR0HTJaM.js.map → Listbox-C0tjQFDF.js.map} +1 -1
  185. package/dist/Listbox.css +102 -143
  186. package/dist/Listbox.js +1 -1
  187. package/dist/Listbox.module-CfpLm9pS.js +18 -0
  188. package/dist/Listbox.module-CfpLm9pS.js.map +1 -0
  189. package/dist/{LocalizationProvider-DWCyga_d.js → LocalizationProvider-CO8fQGqs.js} +2 -2
  190. package/dist/{LocalizationProvider-DWCyga_d.js.map → LocalizationProvider-CO8fQGqs.js.map} +1 -1
  191. package/dist/LocalizationProvider.js +1 -1
  192. package/dist/{Menu-CCavGohP.js → Menu-wpTyUDac.js} +10 -10
  193. package/dist/{Menu-CCavGohP.js.map → Menu-wpTyUDac.js.map} +1 -1
  194. package/dist/Menu.css +135 -137
  195. package/dist/Menu.js +1 -1
  196. package/dist/MultiSelectField.js +1 -1
  197. package/dist/{MultiSelectFieldSync-fV2O5J0N.js → MultiSelectFieldSync-ueey5UBM.js} +34 -33
  198. package/dist/MultiSelectFieldSync-ueey5UBM.js.map +1 -0
  199. package/dist/MultiSelectFieldSync.css +263 -257
  200. package/dist/MultiSelectMenu.js +1 -1
  201. package/dist/{MultiSelectMenuSync-BViWKlX1.js → MultiSelectMenuSync-D7hqugcQ.js} +4 -4
  202. package/dist/{MultiSelectMenuSync-BViWKlX1.js.map → MultiSelectMenuSync-D7hqugcQ.js.map} +1 -1
  203. package/dist/{NumberField-BxWTjbmF.js → NumberField-DJbdyatF.js} +15 -12
  204. package/dist/{NumberField-BxWTjbmF.js.map → NumberField-DJbdyatF.js.map} +1 -1
  205. package/dist/NumberField.css +34 -49
  206. package/dist/NumberField.js +1 -1
  207. package/dist/Overflow.css +143 -164
  208. package/dist/Overflow.js +44 -42
  209. package/dist/Overflow.js.map +1 -1
  210. package/dist/{Page-DFjOwTzH.js → Page-DbK-JKyB.js} +66 -66
  211. package/dist/Page-DbK-JKyB.js.map +1 -0
  212. package/dist/Page.css +384 -404
  213. package/dist/Page.js +1 -1
  214. package/dist/{Pagination-B9pdkp_V.js → Pagination-Bg5Nsdik.js} +29 -34
  215. package/dist/{Pagination-B9pdkp_V.js.map → Pagination-Bg5Nsdik.js.map} +1 -1
  216. package/dist/Pagination.css +63 -117
  217. package/dist/Pagination.js +1 -1
  218. package/dist/{Popover-CfG1IJP6.js → Popover-CyB7yzSf.js} +8 -8
  219. package/dist/{Popover-CfG1IJP6.js.map → Popover-CyB7yzSf.js.map} +1 -1
  220. package/dist/Popover.css +84 -97
  221. package/dist/Popover.js +1 -1
  222. package/dist/{ProgressBar-CFKKuXeN.js → ProgressBar-DSrjgLTx.js} +15 -15
  223. package/dist/{ProgressBar-CFKKuXeN.js.map → ProgressBar-DSrjgLTx.js.map} +1 -1
  224. package/dist/ProgressBar.css +59 -81
  225. package/dist/ProgressBar.js +1 -1
  226. package/dist/{Radio-CeVjHOXe.js → Radio-CQaXJ72d.js} +2 -2
  227. package/dist/{Radio-CeVjHOXe.js.map → Radio-CQaXJ72d.js.map} +1 -1
  228. package/dist/{Radio-Dda5sh2r.js → Radio-DO4UhbBE.js} +45 -48
  229. package/dist/Radio-DO4UhbBE.js.map +1 -0
  230. package/dist/Radio.css +233 -229
  231. package/dist/Radio.js +1 -1
  232. package/dist/{SearchField-im7AHGYo.js → SearchField-BKJOW-vI.js} +11 -20
  233. package/dist/SearchField-BKJOW-vI.js.map +1 -0
  234. package/dist/SearchField-BplvDpBG.js +13 -0
  235. package/dist/SearchField-BplvDpBG.js.map +1 -0
  236. package/dist/SearchField.css +22 -39
  237. package/dist/SearchField.js +1 -1
  238. package/dist/{SegmentedControl-B9NWUF7s.js → SegmentedControl-Chhqyyra.js} +15 -16
  239. package/dist/SegmentedControl-Chhqyyra.js.map +1 -0
  240. package/dist/SegmentedControl.css +103 -122
  241. package/dist/SegmentedControl.js +1 -1
  242. package/dist/SelectCard-CtXwY8FZ.js +351 -0
  243. package/dist/SelectCard-CtXwY8FZ.js.map +1 -0
  244. package/dist/SelectCard.css +135 -82
  245. package/dist/SelectCard.js +1 -1
  246. package/dist/SelectField.js +1 -1
  247. package/dist/{SelectFieldLabel-ChEvk0uS.js → SelectFieldLabel-DLT5dKbx.js} +3 -3
  248. package/dist/{SelectFieldLabel-ChEvk0uS.js.map → SelectFieldLabel-DLT5dKbx.js.map} +1 -1
  249. package/dist/{SelectFieldSync-CDIRIYv2.js → SelectFieldSync-W_-jTf7z.js} +9 -8
  250. package/dist/SelectFieldSync-W_-jTf7z.js.map +1 -0
  251. package/dist/SelectMenu.js +1 -1
  252. package/dist/{SelectMenuSync-DkQrikHz.js → SelectMenuSync-QcjbQtCO.js} +4 -4
  253. package/dist/{SelectMenuSync-DkQrikHz.js.map → SelectMenuSync-QcjbQtCO.js.map} +1 -1
  254. package/dist/{SelectOptions-BN1tCi7P.js → SelectOptions-BsX0f22q.js} +2 -2
  255. package/dist/{SelectOptions-BN1tCi7P.js.map → SelectOptions-BsX0f22q.js.map} +1 -1
  256. package/dist/{SelectTrigger-LZUtpAFW.js → SelectTrigger-BaDvF9JD.js} +5 -5
  257. package/dist/{SelectTrigger-LZUtpAFW.js.map → SelectTrigger-BaDvF9JD.js.map} +1 -1
  258. package/dist/SelectTrigger.js +1 -1
  259. package/dist/{SelectTriggerBase-qeFownmF.js → SelectTriggerBase-kMRqbXwu.js} +8 -7
  260. package/dist/{SelectTriggerBase-qeFownmF.js.map → SelectTriggerBase-kMRqbXwu.js.map} +1 -1
  261. package/dist/SelectTriggerBase.css +231 -305
  262. package/dist/SelectTriggerBase.module-DKF1FQnc.js +37 -0
  263. package/dist/SelectTriggerBase.module-DKF1FQnc.js.map +1 -0
  264. package/dist/{SideNav-CrxYExjh.js → SideNav-CZRVOSbt.js} +19 -14
  265. package/dist/SideNav-CZRVOSbt.js.map +1 -0
  266. package/dist/SideNav.css +126 -294
  267. package/dist/SideNav.js +1 -1
  268. package/dist/Skeleton.css +57 -65
  269. package/dist/Skeleton.js +16 -16
  270. package/dist/Skeleton.js.map +1 -1
  271. package/dist/{Spinner-BqmcE2pb.js → Spinner-lPMo68yW.js} +16 -17
  272. package/dist/Spinner-lPMo68yW.js.map +1 -0
  273. package/dist/Spinner.css +33 -43
  274. package/dist/Spinner.js +1 -1
  275. package/dist/{SrOnly-eUpYGpAT.js → SrOnly-pnf8ajnh.js} +2 -2
  276. package/dist/{SrOnly-eUpYGpAT.js.map → SrOnly-pnf8ajnh.js.map} +1 -1
  277. package/dist/SrOnly.css +12 -14
  278. package/dist/SrOnly.js +1 -1
  279. package/dist/StatusIcon-BwULopyH.js +57 -0
  280. package/dist/StatusIcon-BwULopyH.js.map +1 -0
  281. package/dist/StatusIcon.css +32 -0
  282. package/dist/{Stepper-Dt2xAXth.js → Stepper-CYY64NU1.js} +16 -16
  283. package/dist/{Stepper-Dt2xAXth.js.map → Stepper-CYY64NU1.js.map} +1 -1
  284. package/dist/Stepper.css +180 -239
  285. package/dist/Stepper.js +1 -1
  286. package/dist/{Switch-3u7oAQQV.js → Switch-DeBu4Ucg.js} +17 -13
  287. package/dist/{Switch-3u7oAQQV.js.map → Switch-DeBu4Ucg.js.map} +1 -1
  288. package/dist/Switch.css +109 -125
  289. package/dist/Switch.js +1 -1
  290. package/dist/{Tab-BZpTCG0i.js → Tab-CewPzmuK.js} +20 -34
  291. package/dist/Tab-CewPzmuK.js.map +1 -0
  292. package/dist/Tab.css +232 -194
  293. package/dist/Tab.js +1 -1
  294. package/dist/Table.js +1 -1
  295. package/dist/{Text-DQ78JchQ.js → Text-BH8gglCL.js} +15 -38
  296. package/dist/Text-BH8gglCL.js.map +1 -0
  297. package/dist/Text.css +101 -142
  298. package/dist/Text.js +1 -1
  299. package/dist/Text.module-BXrY87ui.js +23 -0
  300. package/dist/Text.module-BXrY87ui.js.map +1 -0
  301. package/dist/{TextField-DHk1k3cf.js → TextField-CRDTnuUN.js} +7 -7
  302. package/dist/{TextField-DHk1k3cf.js.map → TextField-CRDTnuUN.js.map} +1 -1
  303. package/dist/{TextField-Bu5kAe9_.js → TextField-YlMkDHp-.js} +2 -2
  304. package/dist/{TextField-Bu5kAe9_.js.map → TextField-YlMkDHp-.js.map} +1 -1
  305. package/dist/TextField.css +156 -148
  306. package/dist/TextField.js +1 -1
  307. package/dist/TextField.module-MRVo1X9H.js +23 -0
  308. package/dist/TextField.module-MRVo1X9H.js.map +1 -0
  309. package/dist/{Textarea-CYv02rxW.js → Textarea-CxXmr_Gx.js} +16 -13
  310. package/dist/{Textarea-CYv02rxW.js.map → Textarea-CxXmr_Gx.js.map} +1 -1
  311. package/dist/Textarea.css +71 -81
  312. package/dist/Textarea.js +1 -1
  313. package/dist/{ThemeProvider-CaYW3RuA.js → ThemeProvider-D4KdGCaP.js} +11 -9
  314. package/dist/ThemeProvider-D4KdGCaP.js.map +1 -0
  315. package/dist/ThemeProvider.css +586 -517
  316. package/dist/ThemeProvider.js +1 -1
  317. package/dist/{TimeField-BYtP64Qx.js → TimeField-Cz4tMYb3.js} +7 -7
  318. package/dist/{TimeField-BYtP64Qx.js.map → TimeField-Cz4tMYb3.js.map} +1 -1
  319. package/dist/TimeField.css +5 -8
  320. package/dist/TimeField.js +1 -1
  321. package/dist/{TimezoneMessage-Cnsl4cHT.js → TimezoneMessage-BrKB_psP.js} +2 -2
  322. package/dist/{TimezoneMessage-Cnsl4cHT.js.map → TimezoneMessage-BrKB_psP.js.map} +1 -1
  323. package/dist/TimezoneMessage.css +5 -5
  324. package/dist/Toast.js +2 -2
  325. package/dist/{Toaster-BRjGoIQu.js → Toaster-BV8RjmIN.js} +35 -34
  326. package/dist/Toaster-BV8RjmIN.js.map +1 -0
  327. package/dist/{Toaster-DO83u5o3.js → Toaster-DYGDohJT.js} +2 -2
  328. package/dist/{Toaster-DO83u5o3.js.map → Toaster-DYGDohJT.js.map} +1 -1
  329. package/dist/Toaster.css +210 -242
  330. package/dist/Toolbar-Dzj2KMEy.js +588 -0
  331. package/dist/Toolbar-Dzj2KMEy.js.map +1 -0
  332. package/dist/Toolbar.css +29 -204
  333. package/dist/Toolbar.js +2 -1
  334. package/dist/Toolbar.js.map +1 -1
  335. package/dist/ToolbarButtonToggle--2Ka05N8.js +284 -0
  336. package/dist/ToolbarButtonToggle--2Ka05N8.js.map +1 -0
  337. package/dist/ToolbarButtonToggle.css +41 -0
  338. package/dist/{Tooltip-C1PBRnJv.js → Tooltip-BlStOXN3.js} +8 -8
  339. package/dist/{Tooltip-C1PBRnJv.js.map → Tooltip-BlStOXN3.js.map} +1 -1
  340. package/dist/Tooltip.css +46 -58
  341. package/dist/Tooltip.js +1 -1
  342. package/dist/{YearlessDateInputWithPicker-CChqr1gR.js → YearlessDateInputWithPicker-DyytWt0x.js} +14 -16
  343. package/dist/{YearlessDateInputWithPicker-CChqr1gR.js.map → YearlessDateInputWithPicker-DyytWt0x.js.map} +1 -1
  344. package/dist/YearlessDateInputWithPicker.css +110 -196
  345. package/dist/assets/css-utils/a2-border.css +47 -45
  346. package/dist/assets/css-utils/a2-color.css +443 -227
  347. package/dist/assets/css-utils/a2-font.css +0 -2
  348. package/dist/assets/css-utils/a2-spacing.css +476 -478
  349. package/dist/assets/css-utils/a2-utils.css +992 -772
  350. package/dist/assets/css-utils/border.css +47 -45
  351. package/dist/assets/css-utils/color.css +443 -227
  352. package/dist/assets/css-utils/font.css +0 -2
  353. package/dist/assets/css-utils/spacing.css +476 -478
  354. package/dist/assets/css-utils/utils.css +992 -772
  355. package/dist/assets/icons/st/unsorted.svg +1 -1
  356. package/dist/beta/components/FilterBar/FilterBar.d.ts +87 -0
  357. package/dist/beta/components/{Toolbar/Filters → FilterBar}/FilterToggleButton.d.ts +1 -1
  358. package/dist/beta/components/FilterBar/index.d.ts +3 -0
  359. package/dist/beta/components/{Toolbar/Filters → FilterBar}/internal/FilterGroupContext.d.ts +5 -5
  360. package/dist/beta/components/{Toolbar/Filters → FilterBar}/internal/types.d.ts +2 -2
  361. package/dist/beta/components/{Toolbar/Filters → FilterBar}/internal/utils/test.d.ts +1 -0
  362. package/dist/beta/components/Toolbar/Toolbar.d.ts +0 -54
  363. package/dist/beta/components/Toolbar/index.d.ts +0 -1
  364. package/dist/beta/components/index.d.ts +1 -0
  365. package/dist/beta.js +12 -10
  366. package/dist/beta.js.map +1 -1
  367. package/dist/{indeterminate_check_box-B4zobNlt.js → check_box-0U1tbEAd.js} +2 -4
  368. package/dist/check_box-0U1tbEAd.js.map +1 -0
  369. package/dist/components/DateFieldRange/internal/MaskedDateRangeInput.d.ts +1 -1
  370. package/dist/components/DateFieldRange/internal/useDateFieldRangeConversion.d.ts +1 -1
  371. package/dist/components/DateFieldSingle/internal/MaskedDateInput.d.ts +1 -1
  372. package/dist/components/DateFieldYearless/internal/YearlessDateInput.d.ts +1 -1
  373. package/dist/components/DateFieldYearless/internal/YearlessDateInputWithPicker.d.ts +1 -1
  374. package/dist/components/NumberField/NumberField.d.ts +1 -1
  375. package/dist/components/Page/Page.d.ts +2 -2
  376. package/dist/components/SearchField/internal/SearchField.d.ts +1 -1
  377. package/dist/components/Stepper/Stepper.d.ts +1 -1
  378. package/dist/components/Stepper/StepperStep.d.ts +1 -1
  379. package/dist/components/Tab/Tab.d.ts +1 -1
  380. package/dist/components/Tab/TabButton.d.ts +1 -1
  381. package/dist/indeterminate_check_box-jjLG4UY6.js +6 -0
  382. package/dist/indeterminate_check_box-jjLG4UY6.js.map +1 -0
  383. package/dist/{index-D6ag_WQW.js → index-ByMdotWU.js} +18 -18
  384. package/dist/{index-D6ag_WQW.js.map → index-ByMdotWU.js.map} +1 -1
  385. package/dist/index.css +98 -126
  386. package/dist/index.js +85 -82
  387. package/dist/index.js.map +1 -1
  388. package/dist/index2.css +57 -74
  389. package/dist/internal/components/StatusIcon/StatusIcon.d.ts +5 -5
  390. package/dist/internal/hooks/useSelectOrchestration.d.ts +1 -1
  391. package/dist/primitive-DXlHdTFb.js +1056 -0
  392. package/dist/primitive-DXlHdTFb.js.map +1 -0
  393. package/dist/providers/ThemeProvider/ThemeProvider.d.ts +1 -0
  394. package/dist/{stripInlineMarkdown-V3M_UxQ8.js → stripInlineMarkdown-BWbMy7r_.js} +2 -2
  395. package/dist/{stripInlineMarkdown-V3M_UxQ8.js.map → stripInlineMarkdown-BWbMy7r_.js.map} +1 -1
  396. package/dist/{syncFilterUtils-DtOBvzdr.js → syncFilterUtils-nJS_tCsu.js} +50 -50
  397. package/dist/syncFilterUtils-nJS_tCsu.js.map +1 -0
  398. package/dist/syncFilterUtils.css +189 -217
  399. package/dist/token/core/component-variables.scss +1088 -131
  400. package/dist/token/core/component.d.ts +558 -0
  401. package/dist/token/core/component.js +6685 -249
  402. package/dist/token/core/component.scss +557 -69
  403. package/dist/token/core/css-utils/a2-border.css +47 -45
  404. package/dist/token/core/css-utils/a2-color.css +443 -227
  405. package/dist/token/core/css-utils/a2-font.css +0 -2
  406. package/dist/token/core/css-utils/a2-spacing.css +476 -478
  407. package/dist/token/core/css-utils/a2-utils.css +992 -772
  408. package/dist/token/core/css-utils/border.css +47 -45
  409. package/dist/token/core/css-utils/color.css +443 -227
  410. package/dist/token/core/css-utils/font.css +0 -2
  411. package/dist/token/core/css-utils/spacing.css +476 -478
  412. package/dist/token/core/css-utils/utils.css +992 -772
  413. package/dist/token/core/index.d.ts +6 -0
  414. package/dist/token/core/index.js +1 -1
  415. package/dist/token/core/primitive-variables.scss +148 -65
  416. package/dist/token/core/primitive.d.ts +209 -0
  417. package/dist/token/core/primitive.js +779 -61
  418. package/dist/token/core/primitive.scss +207 -124
  419. package/dist/token/core/semantic-variables.scss +363 -245
  420. package/dist/token/core/semantic.d.ts +221 -0
  421. package/dist/token/core/semantic.js +1592 -347
  422. package/dist/token/core/semantic.scss +219 -140
  423. package/dist/token.js +9075 -828
  424. package/dist/token.js.map +1 -1
  425. package/dist/{useBreakpoint-okJ64T1D.js → useBreakpoint-CeaUyHxh.js} +2 -2
  426. package/dist/{useBreakpoint-okJ64T1D.js.map → useBreakpoint-CeaUyHxh.js.map} +1 -1
  427. package/dist/useBreakpoint.js +1 -1
  428. package/dist/{useDrillDownContext-BssSasVB.js → useDrillDownContext-iUvoTget.js} +2 -2
  429. package/dist/{useDrillDownContext-BssSasVB.js.map → useDrillDownContext-iUvoTget.js.map} +1 -1
  430. package/dist/{useDrilldown-CK9KzXvI.js → useDrilldown-DwzT0Fse.js} +8 -8
  431. package/dist/{useDrilldown-CK9KzXvI.js.map → useDrilldown-DwzT0Fse.js.map} +1 -1
  432. package/dist/{useInitialFocus-BIvXK1Rp.js → useInitialFocus-BUxEDMEG.js} +2 -2
  433. package/dist/{useInitialFocus-BIvXK1Rp.js.map → useInitialFocus-BUxEDMEG.js.map} +1 -1
  434. package/dist/{useLayoutPropsUtil-DMDdfIah.js → useLayoutPropsUtil-CB_zHDbW.js} +3 -3
  435. package/dist/{useLayoutPropsUtil-DMDdfIah.js.map → useLayoutPropsUtil-CB_zHDbW.js.map} +1 -1
  436. package/dist/{usePopoverTransitionStates-B1opfxxn.js → usePopoverTransitionStates-CDXCdyKa.js} +2 -1
  437. package/dist/{usePopoverTransitionStates-B1opfxxn.js.map → usePopoverTransitionStates-CDXCdyKa.js.map} +1 -1
  438. package/dist/{useToggleSelection-BMXohj4f.js → useToggleSelection-CAwGOeXk.js} +2 -2
  439. package/dist/{useToggleSelection-BMXohj4f.js.map → useToggleSelection-CAwGOeXk.js.map} +1 -1
  440. package/package.json +11 -11
  441. package/dist/Alert-DffLPz0l.js.map +0 -1
  442. package/dist/AnvilProvider-DUPYyMc7.js.map +0 -1
  443. package/dist/Avatar-BckUfs1N.js.map +0 -1
  444. package/dist/Button.module-wCtFYGVD.js +0 -26
  445. package/dist/Button.module-wCtFYGVD.js.map +0 -1
  446. package/dist/ButtonCompound-Cmw3cgMY.js.map +0 -1
  447. package/dist/ButtonLink-BJKTJER8.js.map +0 -1
  448. package/dist/ButtonToggle-DaFQ3DBG.js.map +0 -1
  449. package/dist/Calendar-0DG2so95.js.map +0 -1
  450. package/dist/Checkbox-B1I1OfZU.js.map +0 -1
  451. package/dist/Checkbox.module-EkRZO48Y.js +0 -28
  452. package/dist/Checkbox.module-EkRZO48Y.js.map +0 -1
  453. package/dist/Chip-lIWu8uXb.js.map +0 -1
  454. package/dist/Combobox-Dt3AnO9Z.js.map +0 -1
  455. package/dist/Dialog-zxpNOCDS.js.map +0 -1
  456. package/dist/DrillDown.module-C8VOhzaF.js +0 -27
  457. package/dist/FieldMessage-COHqUdj5.js +0 -132
  458. package/dist/FieldMessage-COHqUdj5.js.map +0 -1
  459. package/dist/Helper-B_FIOlhy.js.map +0 -1
  460. package/dist/Link.module-CZt9wvuD.js +0 -12
  461. package/dist/Link.module-CZt9wvuD.js.map +0 -1
  462. package/dist/LinkButton-DGyHR1E7.js.map +0 -1
  463. package/dist/LinkButton.css +0 -5
  464. package/dist/ListView.module-BilDg12y.js +0 -9
  465. package/dist/ListView.module-BilDg12y.js.map +0 -1
  466. package/dist/Listbox.module-HAXMOKvC.js +0 -18
  467. package/dist/Listbox.module-HAXMOKvC.js.map +0 -1
  468. package/dist/MultiSelectFieldSync-fV2O5J0N.js.map +0 -1
  469. package/dist/Page-DFjOwTzH.js.map +0 -1
  470. package/dist/Radio-Dda5sh2r.js.map +0 -1
  471. package/dist/SearchField-im7AHGYo.js.map +0 -1
  472. package/dist/SegmentedControl-B9NWUF7s.js.map +0 -1
  473. package/dist/SelectCard-COJn0wT6.js +0 -352
  474. package/dist/SelectCard-COJn0wT6.js.map +0 -1
  475. package/dist/SelectFieldSync-CDIRIYv2.js.map +0 -1
  476. package/dist/SelectTriggerBase.module-CKoq6qzX.js +0 -38
  477. package/dist/SelectTriggerBase.module-CKoq6qzX.js.map +0 -1
  478. package/dist/SideNav-CrxYExjh.js.map +0 -1
  479. package/dist/Spinner-BqmcE2pb.js.map +0 -1
  480. package/dist/Tab-BZpTCG0i.js.map +0 -1
  481. package/dist/Text-DQ78JchQ.js.map +0 -1
  482. package/dist/TextField.module-BP-hDP5m.js +0 -22
  483. package/dist/TextField.module-BP-hDP5m.js.map +0 -1
  484. package/dist/ThemeProvider-CaYW3RuA.js.map +0 -1
  485. package/dist/Toaster-BRjGoIQu.js.map +0 -1
  486. package/dist/Toolbar-Dsaufi65.js.map +0 -1
  487. package/dist/beta/components/Toolbar/Filters/FilterGroup.d.ts +0 -25
  488. package/dist/indeterminate_check_box-B4zobNlt.js.map +0 -1
  489. package/dist/primitive-C3RFDRA8.js +0 -255
  490. package/dist/primitive-C3RFDRA8.js.map +0 -1
  491. package/dist/syncFilterUtils-DtOBvzdr.js.map +0 -1
  492. package/dist/token/core/raw.js +0 -234
  493. /package/dist/beta/components/{Toolbar/Filters → FilterBar}/FilterButton.d.ts +0 -0
  494. /package/dist/beta/components/{Toolbar/Filters → FilterBar}/FilterDateRange.d.ts +0 -0
  495. /package/dist/beta/components/{Toolbar/Filters → FilterBar}/FilterDateSingle.d.ts +0 -0
  496. /package/dist/beta/components/{Toolbar/Filters → FilterBar}/FilterDrawer.d.ts +0 -0
  497. /package/dist/beta/components/{Toolbar/Filters → FilterBar}/FilterItemWrapper.d.ts +0 -0
  498. /package/dist/beta/components/{Toolbar/Filters → FilterBar}/FilterSelect.d.ts +0 -0
  499. /package/dist/beta/components/{Toolbar/Filters → FilterBar}/internal/utils/filter-state.d.ts +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"Popover-CfG1IJP6.js","sources":["../src/components/Popover/internal/PopoverContext.ts","../src/components/Popover/internal/usePopoverContext.tsx","../src/components/Popover/PopoverClose.tsx","../src/components/Popover/PopoverButton.tsx","../src/components/Popover/PopoverContent.tsx","../src/components/Popover/PopoverTrigger.tsx","../src/components/Popover/Popover.tsx"],"sourcesContent":["import {\n createContext,\n CSSProperties,\n Dispatch,\n RefObject,\n SetStateAction,\n} from \"react\";\nimport { PopoverProps } from \"../Popover\";\nimport { Placement } from \"@floating-ui/react-dom\";\n\nexport type PopoverContextProps = {\n popoverId: string;\n invoker?: HTMLElement;\n setInvoker?: Dispatch<SetStateAction<HTMLElement | undefined>>;\n popover?: HTMLElement;\n setPopover?: Dispatch<SetStateAction<HTMLElement | undefined>>;\n rootNode?: Node;\n setRootNode?: Dispatch<SetStateAction<Node | undefined>>;\n arrowElement?: HTMLSpanElement;\n setArrowElement?: Dispatch<SetStateAction<HTMLSpanElement | undefined>>;\n openState: boolean;\n popoverStyle?: CSSProperties;\n placement?: Placement;\n actualPlacement?: Placement;\n openPopover: () => void;\n closePopover: (replacementFn?: () => void) => void;\n onClose?: PopoverProps[\"onClose\"];\n openOnHover: PopoverProps[\"openOnHover\"];\n controlled: boolean;\n disableCloseOnClickOutside?: PopoverProps[\"disableCloseOnClickOutside\"];\n disableCloseOnEscape?: PopoverProps[\"disableCloseOnEscape\"];\n modal?: PopoverProps[\"modal\"];\n noPadding?: PopoverProps[\"noPadding\"];\n fillAvailableHeight: PopoverProps[\"fillAvailableHeight\"];\n maxHeight: PopoverProps[\"maxHeight\"];\n matchReferenceWidth: PopoverProps[\"matchReferenceWidth\"];\n fixedWidth: PopoverProps[\"fixedWidth\"];\n disableCaret: PopoverProps[\"disableCaret\"];\n disableFlipFallback: PopoverProps[\"disableFlipFallback\"];\n disableTriggerFocus: PopoverProps[\"disableTriggerFocus\"];\n arrowRef: RefObject<HTMLSpanElement>;\n delay: PopoverProps[\"delay\"];\n triggerHovered: boolean;\n setTriggerHovered: Dispatch<SetStateAction<boolean>>;\n contentHovered: boolean;\n setContentHovered: Dispatch<SetStateAction<boolean>>;\n};\n\nexport const PopoverContext = createContext<PopoverContextProps | null>(null);\n","import {\n useRef,\n useContext,\n useLayoutEffect,\n KeyboardEvent,\n useEffect,\n} from \"react\";\nimport { PopoverContext } from \"./PopoverContext\";\nimport { tabbable } from \"tabbable\";\n\nexport type dataStateType = \"open\" | \"closed\";\n\nexport function usePopoverContext() {\n const context = useContext(PopoverContext);\n const invokerRef = useRef<HTMLButtonElement>(null);\n const popoverRef = useRef<HTMLDivElement>(null);\n const arrowRef = useRef<HTMLSpanElement>(null);\n const { triggerHovered, setTriggerHovered, contentHovered } = context || {};\n\n useLayoutEffect(() => {\n if (!invokerRef.current) return;\n context?.setInvoker?.(invokerRef.current);\n }, [context, invokerRef]);\n\n useLayoutEffect(() => {\n if (!popoverRef.current) return;\n context?.setPopover?.(popoverRef.current);\n context?.setRootNode?.(popoverRef.current.getRootNode());\n if (!arrowRef.current) return;\n context?.setArrowElement?.(arrowRef.current);\n }, [context, popoverRef]);\n\n useEffect(() => {\n if (!context?.openOnHover) return;\n // If the popover was previously opened by hover, and is now unhovered, close the popover after 100ms\n if (!triggerHovered && !contentHovered) {\n const closeTimeout: NodeJS.Timeout = setTimeout(() => {\n context?.closePopover();\n }, 100);\n return () => {\n clearTimeout(closeTimeout);\n };\n }\n // If the popover was unopened by hover, and is now hovered, open the popover after the defined delay\n if (triggerHovered && !contentHovered) {\n if (context?.delay) {\n const openTimeout = setTimeout(() => {\n context?.openPopover();\n }, context.delay);\n return () => {\n clearTimeout(openTimeout);\n };\n } else {\n context?.openPopover();\n }\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [context?.delay, context?.openOnHover, triggerHovered, contentHovered]);\n\n const onMouseEnterHandler = () => {\n if (!context?.openOnHover) return;\n setTriggerHovered?.(true);\n };\n const onMouseLeaveHandler = () => {\n if (!context?.openOnHover) return;\n setTriggerHovered?.(false);\n };\n\n const onFocusHandler = (_e: React.FocusEvent) => {\n if (context?.openOnHover) {\n context?.openPopover();\n }\n };\n\n const onBlurHandler = (e: React.FocusEvent) => {\n if (context?.popover?.contains(e.relatedTarget as Node)) return; // If the focus is within the popover, don't close it\n if (context?.modal && context.openState) {\n e.preventDefault();\n requestAnimationFrame(() => {\n context?.invoker?.focus();\n const focusables = tabbable(context?.popover as Element);\n if (focusables.length > 0) {\n focusables[focusables.length - 1].focus();\n }\n });\n return;\n }\n if (!context?.disableCloseOnClickOutside) {\n context?.closePopover();\n }\n };\n\n const onKeyDownHandler = (e: KeyboardEvent) => {\n if (!context?.openState) return;\n if (\n e.code === \"Escape\" &&\n !context?.disableCloseOnEscape &&\n !context?.controlled\n ) {\n context?.closePopover();\n return;\n }\n };\n\n const onClickHandler = () => {\n context?.invoker?.focus();\n if (context?.openOnHover) return;\n if (context?.controlled === false) {\n if (context?.openState) {\n context?.closePopover();\n } else {\n context?.openPopover();\n }\n return;\n }\n };\n\n if (!context || !invokerRef || !popoverRef) return;\n return {\n invoker: {\n ref: invokerRef,\n element: context.invoker,\n onMouseEnter: onMouseEnterHandler,\n onMouseLeave: onMouseLeaveHandler,\n onKeyDown: onKeyDownHandler,\n onClick: onClickHandler,\n onFocus: onFocusHandler,\n onBlur: onBlurHandler,\n \"aria-haspopup\": true,\n \"aria-expanded\": context.openState,\n \"aria-details\": context.popoverId,\n \"data-state\": context.openState ? \"open\" : (\"closed\" as dataStateType),\n },\n popover: {\n ref: popoverRef,\n element: context.popover,\n id: context.popoverId,\n onClose: context.onClose,\n show: context.openPopover,\n close: context.closePopover,\n noPadding: context.noPadding,\n style: context.popoverStyle,\n arrowRef: arrowRef,\n },\n rootNode: context.rootNode,\n onClose: context.onClose,\n open: context.openState,\n openOnHover: context.openOnHover,\n controlled: context.controlled,\n disableCloseOnClickOutside: context.disableCloseOnClickOutside,\n disableCloseOnEscape: context.disableCloseOnEscape,\n modal: context.modal,\n placement: context.placement,\n actualPlacement: context.actualPlacement,\n disableCaret: context.disableCaret,\n noPadding: context.noPadding,\n fillAvailableHeight: context.fillAvailableHeight,\n maxHeight: context.maxHeight,\n matchReferenceWidth: context.matchReferenceWidth,\n fixedWidth: context.fixedWidth,\n disableFlipFallback: context.disableFlipFallback,\n disableTriggerFocus: context.disableTriggerFocus,\n triggerHovered: context.triggerHovered,\n setTriggerHovered: context.setTriggerHovered,\n contentHovered: context.contentHovered,\n setContentHovered: context.setContentHovered,\n };\n}\n","import { forwardRef } from \"react\";\n\nimport { Button, ButtonProps } from \"../Button\";\nimport { usePopoverContext } from \"./internal/usePopoverContext\";\nimport { childrenToString } from \"../../internal/functions\";\nimport { DataTrackingId } from \"../../types\";\nimport { useTrackingId } from \"../../hooks\";\n\n/**\n * Props for the PopoverClose component\n * @extends ButtonProps\n */\nexport type PopoverCloseProps = ButtonProps & DataTrackingId;\n\n/**\n * PopoverClose component for closing the popover.\n *\n * Features:\n * - Automatic popover closing on click\n * - Supports all Button component props and styling\n * - Controlled and uncontrolled mode support\n * - Context integration with parent popover\n * - Accessibility support with proper button semantics\n * - Delayed closing for controlled mode\n *\n * @example\n * <Popover.Close>Close</Popover.Close>\n *\n * @example\n * <Popover.Close appearance=\"secondary\" size=\"small\">\n * Cancel\n * </Popover.Close>\n *\n * @example\n * <Popover.Close onClick={() => console.log('Custom close handler')}>\n * Close with custom handler\n * </Popover.Close>\n */\nexport const PopoverClose = forwardRef<HTMLButtonElement, PopoverCloseProps>(\n function PopoverClose(props, ref) {\n const { onClick, ...rest } = props;\n const context = usePopoverContext();\n\n const data = {\n children: childrenToString(props.children),\n };\n\n const trackingId = useTrackingId({\n name: \"PopoverClose\",\n data,\n hasOverride: !!props[\"data-tracking-id\"],\n });\n\n return (\n <Button\n ref={ref}\n data-tracking-id={trackingId}\n data-anv=\"popover-close\"\n {...rest}\n onClick={(event) => {\n context?.popover.close();\n context?.onClose?.();\n onClick?.(event);\n }}\n />\n );\n },\n);\n\nPopoverClose.displayName = \"PopoverClose\";\n","import { forwardRef, MouseEvent, FocusEvent, KeyboardEvent } from \"react\";\nimport { Button, ButtonProps } from \"../Button\";\nimport { useMergeRefs, useTrackingId } from \"../../hooks\";\nimport { usePopoverContext } from \"./internal/usePopoverContext\";\nimport { childrenToString } from \"../../internal/functions\";\nimport { DataTrackingId } from \"../../types\";\n\n/**\n * Props for the PopoverButton component\n * @extends ButtonProps\n */\nexport type PopoverButtonProps = ButtonProps & DataTrackingId;\n\n/**\n * PopoverButton component for creating button-style triggers.\n *\n * Features:\n * - Button styling and behavior with all Button props\n * - Automatic popover opening on click\n * - Hover interaction support for tooltip mode\n * - Focus management and keyboard navigation\n * - Accessibility attributes (aria-haspopup, aria-expanded, aria-details)\n * - Context integration with parent popover\n * - Event handling for mouse, keyboard, and focus events\n *\n * @example\n * <Popover.Button>Click to open</Popover.Button>\n *\n * @example\n * <Popover.Button appearance=\"primary\" size=\"large\" icon={InfoIcon}>\n * Information\n * </Popover.Button>\n *\n * @example\n * <Popover.Button onClick={() => console.log('Custom click handler')}>\n * Custom handler\n * </Popover.Button>\n */\nexport const PopoverButton = forwardRef<HTMLButtonElement, PopoverButtonProps>(\n function PopoverButton(props, ref) {\n const {\n children,\n size,\n onMouseEnter,\n onMouseLeave,\n onClick,\n onKeyDown,\n onFocus,\n onBlur,\n ...rest\n } = props;\n const context = usePopoverContext();\n\n const data = {\n children: childrenToString(props.children),\n appearance: props.appearance,\n icon: props.icon,\n size: props.size,\n type: props.type,\n };\n\n const trackingId = useTrackingId({\n name: \"PopoverButton\",\n data,\n hasOverride: !!props[\"data-tracking-id\"],\n });\n\n const onMouseEnterHandler = (e: MouseEvent<HTMLButtonElement>) => {\n onMouseEnter?.(e);\n context?.invoker.onMouseEnter();\n };\n const onMouseLeaveHandler = (e: MouseEvent<HTMLButtonElement>) => {\n onMouseLeave?.(e);\n context?.invoker.onMouseLeave();\n };\n const onFocusHandler = (e: FocusEvent<HTMLButtonElement>) => {\n onFocus?.(e);\n context?.invoker.onFocus(e);\n };\n const onBlurHandler = (e: FocusEvent<HTMLButtonElement>) => {\n onBlur?.(e);\n context?.invoker.onBlur(e);\n };\n const onKeyDownHandler = (e: KeyboardEvent<HTMLButtonElement>) => {\n onKeyDown?.(e);\n context?.invoker.onKeyDown(e);\n };\n\n const onClickHandler = (e: MouseEvent<HTMLButtonElement>) => {\n onClick?.(e);\n context?.invoker.onClick();\n };\n\n const buttonRef = useMergeRefs([context?.invoker.ref, ref]);\n\n return (\n <Button\n ref={buttonRef}\n size={size}\n onClick={onClickHandler}\n onKeyDown={onKeyDownHandler}\n onMouseEnter={onMouseEnterHandler}\n onMouseLeave={onMouseLeaveHandler}\n onFocus={onFocusHandler}\n onBlur={onBlurHandler}\n data-anv=\"popover-button\"\n data-tracking-id={trackingId}\n aria-haspopup={context?.invoker[\"aria-haspopup\"]}\n aria-expanded={context?.invoker[\"aria-expanded\"]}\n aria-details={context?.invoker[\"aria-details\"]}\n data-state={context?.invoker[\"data-state\"]}\n {...rest}\n >\n {children}\n </Button>\n );\n },\n);\n\nPopoverButton.displayName = \"PopoverButton\";\n","import {\n ComponentPropsWithoutRef,\n forwardRef,\n MouseEvent,\n useRef,\n FocusEvent,\n RefObject,\n useLayoutEffect,\n} from \"react\";\nimport styles from \"./Popover.module.scss\";\nimport cx from \"classnames\";\nimport { useMergeRefs } from \"../../hooks\";\nimport { usePopoverContext } from \"./internal/usePopoverContext\";\nimport { useFocusWithin } from \"../../internal/hooks\";\n\n/**\n * Props for the PopoverContent component\n * @extends ComponentPropsWithoutRef<\"div\">\n */\nexport type PopoverContentProps = Omit<\n ComponentPropsWithoutRef<\"div\">,\n \"popover\"\n> & {\n /**\n * Reference to the scrollable content area\n */\n scrollerRef?: RefObject<HTMLDivElement>;\n /**\n * Whether to remove the content from the DOM while the popover is closed\n */\n hideWhileClosed?: boolean;\n};\n\n/**\n * PopoverContent component for the main popover content area.\n *\n * Features:\n * - Automatic positioning and sizing based on trigger\n * - Screen boundary detection and fitting\n * - Scroll handling with custom scroller reference\n * - Focus management and keyboard navigation\n * - Hover interaction support for tooltip mode\n * - Escape key handling for closing\n * - Tab key trapping for modal popovers\n * - Arrow/caret indicator with automatic positioning\n * - Context integration with parent popover\n * - Accessibility support with proper ARIA roles\n *\n * @example\n * <Popover.Content>\n * <p>This is the popover content</p>\n * <Popover.Close>Close</Popover.Close>\n * </Popover.Content>\n *\n * @example\n * <Popover.Content scrollerRef={scrollRef}>\n * <div style={{ height: '200px', overflow: 'auto' }}>\n * {longContent}\n * </div>\n * </Popover.Content>\n */\nexport const PopoverContent = forwardRef<HTMLDivElement, PopoverContentProps>(\n function PopoverContent(props, ref) {\n const {\n children,\n className,\n style,\n onMouseEnter,\n onMouseLeave,\n onKeyDown,\n onFocus,\n onBlur,\n onScroll,\n onScrollCapture,\n scrollerRef,\n hideWhileClosed = false,\n ...rest\n } = props;\n const context = usePopoverContext();\n const popoverClassNames = cx(className, styles[\"content\"], {\n [styles[\"no-padding\"]]: context?.noPadding,\n });\n const childrenRef = useRef<HTMLDivElement>(null);\n const combinedStyles = {\n ...style,\n ...context?.popover.style,\n };\n\n const { props: wrapperProps } = useFocusWithin({\n otherRelatedElements: context?.invoker.element\n ? [context?.invoker.element]\n : [],\n onBlur: (e) => {\n if (context?.modal) {\n e.preventDefault();\n requestAnimationFrame(() => {\n context?.invoker.element?.focus();\n });\n return;\n }\n onBlur?.(e as FocusEvent<HTMLDivElement>);\n context?.popover.close();\n },\n onFocus: (e) => {\n onFocus?.(e as FocusEvent<HTMLDivElement>);\n context?.popover.show();\n },\n });\n\n const onMouseEnterHandler = (e: MouseEvent<HTMLDivElement>) => {\n onMouseEnter?.(e);\n if (!context?.openOnHover) return;\n if (!context?.open) return; // Don't set hover state if popover is closed\n context.setContentHovered(true);\n };\n const onMouseLeaveHandler = (e: MouseEvent<HTMLDivElement>) => {\n onMouseLeave?.(e);\n if (!context?.openOnHover) return;\n context.setContentHovered(false);\n };\n\n const onKeyDownHandler = (e: React.KeyboardEvent<HTMLDivElement>) => {\n onKeyDown?.(e);\n if (e.code === \"Escape\" && !context?.disableCloseOnEscape) {\n context?.popover.close();\n }\n };\n\n const popoverContentRef = useMergeRefs([context?.popover.ref, ref]);\n const popoverScrollerRef = useMergeRefs([childrenRef, scrollerRef]);\n\n // Reset scroll position when popover opens\n useLayoutEffect(() => {\n if (context?.open && childrenRef.current) {\n childrenRef.current.scrollTop = 0;\n childrenRef.current.scrollLeft = 0;\n }\n }, [context?.open]);\n\n // Extract base side from actual placement for hover bridge positioning\n const bridgeSide =\n context?.openOnHover && context?.actualPlacement\n ? (context.actualPlacement.split(\"-\")[0] as\n | \"top\"\n | \"bottom\"\n | \"left\"\n | \"right\")\n : undefined;\n\n return (\n <div\n popover={\"manual\"}\n id={context?.popover.id}\n data-anv=\"popover-content\"\n data-position={bridgeSide}\n className={popoverClassNames}\n ref={popoverContentRef}\n style={combinedStyles}\n onMouseEnter={onMouseEnterHandler}\n onMouseLeave={onMouseLeaveHandler}\n role=\"region\"\n {...rest}\n onFocus={wrapperProps.onFocus}\n onBlur={wrapperProps.onBlur}\n >\n <div\n className={styles.scroller}\n role=\"presentation\"\n tabIndex={-1}\n ref={popoverScrollerRef}\n onKeyDown={onKeyDownHandler}\n onScroll={onScroll}\n onScrollCapture={onScrollCapture}\n >\n {hideWhileClosed ? (context?.open ? children : null) : children}\n </div>\n {!context?.disableCaret && (\n <span className={styles[\"arrow\"]} ref={context?.popover.arrowRef}>\n <svg aria-hidden=\"true\" width=\"14\" height=\"14\" viewBox=\"0 0 14 14\">\n <path stroke=\"none\" d=\"M0,0 H14 L7,7 Q7,7 7,7 Z\"></path>\n <clipPath id=\":r9:\">\n <rect x=\"0\" y=\"0\" width=\"14\" height=\"14\"></rect>\n </clipPath>\n </svg>\n </span>\n )}\n </div>\n );\n },\n);\n\nPopoverContent.displayName = \"PopoverContent\";\n","import {\n ReactElement,\n MouseEvent,\n KeyboardEvent,\n FocusEvent,\n RefObject,\n} from \"react\";\nimport { usePopoverContext } from \"./internal/usePopoverContext\";\n\ntype PopoverTriggerChildrenReturnType = {\n ref: RefObject<HTMLButtonElement>;\n onMouseEnter: (e: MouseEvent) => void;\n onMouseLeave: (e: MouseEvent) => void;\n onClick: (e: MouseEvent) => void;\n onKeyDown: (e: KeyboardEvent) => void;\n onBlur: (e: FocusEvent) => void;\n onFocus: (e: FocusEvent) => void;\n \"aria-haspopup\": boolean;\n \"aria-expanded\": boolean;\n \"aria-details\": HTMLElement[\"id\"];\n};\n\n/**\n * Props for the PopoverTrigger component\n */\nexport type PopoverTriggerProps = {\n /**\n * Render function that receives trigger props and returns a React element\n */\n children: (data: PopoverTriggerChildrenReturnType) => ReactElement;\n};\n\n/**\n * PopoverTrigger component for creating custom trigger elements.\n *\n * Features:\n * - Supports custom trigger elements via render prop pattern\n * - Automatic focus management and keyboard interaction\n * - Hover and click event handling\n * - Accessibility attributes (aria-haspopup, aria-expanded, aria-details)\n * - Context integration with parent popover\n *\n * @example\n * <Popover.Trigger>\n * {(props) => (\n * <button {...props}>\n * Click to open popover\n * </button>\n * )}\n * </Popover.Trigger>\n *\n * @example\n * <Popover.Trigger>\n * {(props) => (\n * <div {...props} role=\"button\" tabIndex={0}>\n * Custom trigger element\n * </div>\n * )}\n * </Popover.Trigger>\n */\nexport function PopoverTrigger(props: PopoverTriggerProps) {\n const { children } = props;\n const context = usePopoverContext();\n\n if (!context) return;\n const { element, ...rest } = context.invoker;\n\n return children(rest);\n}\n\nPopoverTrigger.displayName = \"PopoverTrigger\";\n","import { PopoverClose } from \"./PopoverClose\";\nimport { PopoverButton } from \"./PopoverButton\";\nimport { PopoverContent } from \"./PopoverContent\";\nimport { PopoverTrigger } from \"./PopoverTrigger\";\nimport {\n ComponentPropsWithoutRef,\n forwardRef,\n useCallback,\n useContext,\n useEffect,\n useId,\n useImperativeHandle,\n useLayoutEffect,\n useMemo,\n useRef,\n useState,\n} from \"react\";\nimport { PopoverContext, PopoverContextProps } from \"./internal/PopoverContext\";\nimport {\n arrow,\n autoUpdate,\n computePosition,\n flip,\n limitShift,\n offset,\n Placement,\n shift,\n size,\n} from \"@floating-ui/react\";\nimport { safeHidePopover, safeShowPopover } from \"../../internal/functions\";\nimport { DisableCloseOnEscapeOrClickProps } from \"../../types\";\nimport {\n OpenCloseTransitionStateEffects,\n useOnClickOutside,\n useOptionallyControlledState,\n usePopoverTransitionStates,\n} from \"../../internal/hooks\";\nimport { DialogContext } from \"../Dialog/internal/DialogContext\";\n\n/**\n * Props for the Popover component\n * @property {ReactNode} [children] - The content to be rendered inside the popover\n * @property {string} [id] - Unique identifier for the popover\n * @property {boolean} [modal] - Whether the popover should be modal (traps focus)\n * @property {boolean} [openOnHover] - Changes interaction to use hover instead of click\n * @property {boolean} [fillAvailableHeight] - Changes height and positioning for select/combobox\n * @property {number | string} [maxHeight] - Maximum height of the popover content\n * @property {boolean} [fitScreen] - Whether the popover should fit within the screen bounds\n * @property {number | string} [minHeight] - Minimum height of the popover content\n * @property {boolean} [matchReferenceWidth] - Whether the popover width should match the trigger element\n * @property {boolean} [fixedWidth] - Whether the popover should have a fixed width\n * @property {string} [placement] - Placement of the popover relative to the trigger\n * @property {boolean} [open] - Controlled open state\n * @property {boolean} [defaultOpen] - Default open state for uncontrolled mode\n * @property {Function} [onOpenChange] - Callback when open state changes\n * @property {Function} [onClickOutside] - Callback when clicking outside the popover\n * @property {Function} [onClose] - Fires when the floating element is requested to be closed\n * @property {boolean} [disableCaret] - Whether to disable the caret/arrow indicator\n * @property {boolean} [noPadding] - Whether to remove default padding from content\n * @property {boolean} [disableAutoUpdate] - Whether to disable automatic position updates\n * @property {boolean} [disableTriggerFocus] - Whether to disable focus on the trigger element\n * @property {number} [delay] - Delay before opening the popover (for hover mode)\n * @property {boolean} [disableCloseOnClickOutside] - Whether to disable closing on outside click\n * @property {boolean} [disableCloseOnEscape] - Whether to disable closing on escape key\n */\n\n/**\n * Props for the Popover component\n * @extends ComponentPropsWithoutRef<\"div\">\n * @extends DisableCloseOnEscapeOrClickProps\n */\nexport type PopoverProps = {\n /**\n * The content to be rendered inside the popover\n */\n children?: ComponentPropsWithoutRef<\"div\">[\"children\"];\n /**\n * Unique identifier for the popover\n */\n id?: ComponentPropsWithoutRef<\"div\">[\"id\"];\n /**\n * Whether the popover should be modal (traps focus)\n * @default false\n */\n modal?: boolean;\n /**\n * Disables the shift of floating element\n * @internal\n */\n disableShift?: boolean;\n /**\n * Disables the flip of floating element\n * @internal\n */\n disableFlip?: boolean;\n /**\n * Disables the flip cross-axis fallback of floating element\n * @internal\n */\n disableFlipFallback?: boolean;\n /**\n * Changes interaction to use hover instead of click\n * @default false\n */\n openOnHover?: boolean;\n /**\n * Changes height and positioning for select/combobox\n * @default false\n */\n fillAvailableHeight?: boolean;\n /**\n * Maximum height of the popover content\n */\n maxHeight?: number | string;\n /**\n * Whether the popover should fit within the screen bounds\n * @default false\n */\n fitScreen?: boolean;\n /**\n * Minimum height of the popover content\n * @default \"2.875rem\"\n */\n minHeight?: number | string;\n /**\n * Whether the popover width should match the trigger element\n * @default false\n */\n matchReferenceWidth?: boolean;\n /**\n * Whether the popover should have a fixed width\n * @default false\n */\n fixedWidth?: boolean;\n /**\n * Placement of the popover relative to the trigger\n * @default \"bottom\"\n */\n placement?: Placement;\n /**\n * Controlled open state\n */\n open?: boolean;\n /**\n * Default open state for uncontrolled mode\n * @default false\n */\n defaultOpen?: boolean;\n /**\n * Callback when clicking outside the popover\n */\n onClickOutside?: (e: globalThis.MouseEvent) => void;\n /**\n * Fires when the floating element is requested to be closed\n * Note: this does not fire when openOnHover is true and mouse leaves to close\n * eg. on click outside, [esc] to close, or by <Popover.Close>\n */\n onClose?: () => void;\n /**\n * Whether to disable the caret/arrow indicator\n * @default false\n */\n disableCaret?: boolean;\n /**\n * Whether to remove default padding from content\n * @default false\n */\n noPadding?: boolean;\n /**\n * Whether to disable automatic position updates\n * @default false\n */\n disableAutoUpdate?: boolean;\n /**\n * Whether to disable focus on the trigger element\n * @default false\n */\n disableTriggerFocus?: boolean;\n /**\n * Delay before opening the popover (for hover mode)\n * @default 100\n */\n delay?: number;\n} & DisableCloseOnEscapeOrClickProps &\n OpenCloseTransitionStateEffects;\n\n/**\n * Popover component for displaying floating content relative to a trigger element.\n *\n * Features:\n * - Supports both controlled and uncontrolled modes\n * - Automatic positioning with fallback strategies\n * - Hover and click interaction modes\n * - Modal and non-modal variants\n * - Custom trigger elements\n * - Automatic height and width management\n * - Screen boundary detection and fitting\n * - Keyboard navigation and accessibility\n * - Outside click detection and handling\n * - Focus management and trapping\n * - Arrow/caret indicators\n * - Delay support for hover interactions\n * - Automatic tracking ID generation for analytics\n *\n * @example\n * <Popover>\n * <Popover.Button>Click to open</Popover.Button>\n * <Popover.Content>\n * <p>This is the popover content</p>\n * <Popover.Close>Close</Popover.Close>\n * </Popover.Content>\n * </Popover>\n *\n * @example\n * <Popover openOnHover delay={1000}>\n * <Popover.Button>Hover to open</Popover.Button>\n * <Popover.Content>Tooltip content</Popover.Content>\n * </Popover>\n *\n * @example\n * <Popover modal>\n * <Popover.Trigger>\n * {(props) => <button {...props}>Custom trigger</button>}\n * </Popover.Trigger>\n * <Popover.Content>\n * <TextField label=\"Form field\" />\n * <Popover.Close>Done</Popover.Close>\n * </Popover.Content>\n * </Popover>\n */\nexport const Popover = Object.assign(\n forwardRef(function PopoverInner(props: PopoverProps, ref) {\n const {\n children,\n openOnHover = false,\n delay = 100,\n placement = \"bottom\",\n minHeight = \"2.875rem\",\n open,\n defaultOpen = false,\n disableShift,\n disableFlip,\n disableFlipFallback,\n matchReferenceWidth,\n id,\n disableCaret,\n fixedWidth,\n fillAvailableHeight,\n maxHeight,\n disableCloseOnClickOutside,\n disableCloseOnEscape,\n fitScreen,\n disableTriggerFocus,\n modal,\n noPadding,\n onClickOutside,\n onClose,\n onOpenAnimationStart,\n onOpenAnimationComplete,\n onCloseAnimationStart,\n onCloseAnimationComplete,\n } = props;\n const uid = useId();\n const [invoker, setInvoker] =\n useState<PopoverContextProps[\"invoker\"]>(undefined);\n const [popover, setPopover] =\n useState<PopoverContextProps[\"popover\"]>(undefined);\n const [rootNode, setRootNode] = useState<PopoverContextProps[\"rootNode\"]>();\n const [arrowElement, setArrowElement] =\n useState<PopoverContextProps[\"arrowElement\"]>(undefined);\n const [openState, setOpenState] = useOptionallyControlledState<\n PopoverContextProps[\"openState\"]\n >({\n controlledValue: open,\n defaultValue: defaultOpen,\n });\n const arrowRef = useRef<HTMLSpanElement>(null);\n const dialogContext = useContext(DialogContext);\n const [triggerHovered, setTriggerHovered] = useState(false);\n const [contentHovered, setContentHovered] = useState(false);\n // Track the actual computed placement after flip/shift middleware runs\n // (may differ from the placement prop if Floating UI adjusts it)\n const [actualPlacement, setActualPlacement] = useState<\n Placement | undefined\n >(placement);\n\n // TODO: Find a way to test these properly!\n // Stryker disable all : Currently relying on Chromatic test for all visuals\n const processMinHeight =\n typeof minHeight === \"string\" ? minHeight : `${minHeight}px`;\n\n usePopoverTransitionStates(popover, openState, {\n onOpenAnimationStart: useCallback(() => {\n onOpenAnimationStart?.();\n }, [onOpenAnimationStart]),\n onOpenAnimationComplete: useCallback(() => {\n onOpenAnimationComplete?.();\n }, [onOpenAnimationComplete]),\n onCloseAnimationStart: useCallback(() => {\n onCloseAnimationStart?.();\n }, [onCloseAnimationStart]),\n onCloseAnimationComplete: useCallback(() => {\n onCloseAnimationComplete?.();\n }, [onCloseAnimationComplete]),\n });\n\n /* istanbul ignore next */\n const updatePosition = useCallback(() => {\n if (!invoker || !popover) return;\n // disable position update when closing\n if (!openState) return;\n computePosition(invoker, popover, {\n placement: placement,\n middleware: [\n offset(8),\n size({\n padding: 5,\n apply({ rects, availableHeight, elements }) {\n Object.assign(elements.floating.style, {\n ...(matchReferenceWidth\n ? { width: `${rects.reference.width}px` }\n : fixedWidth\n ? { width: \"40dvw\" }\n : {}),\n ...(fillAvailableHeight\n ? {\n height: `${availableHeight - 20}px`,\n minHeight: processMinHeight,\n }\n : {}),\n ...(maxHeight\n ? {\n minHeight: processMinHeight,\n height: fitScreen\n ? typeof maxHeight === \"string\"\n ? maxHeight\n : `${maxHeight}px`\n : undefined,\n maxHeight: fitScreen\n ? `${availableHeight - 20}px`\n : typeof maxHeight === \"string\"\n ? maxHeight\n : `${maxHeight}px`,\n }\n : {}),\n ...(fitScreen && !maxHeight\n ? {\n minHeight: processMinHeight,\n maxHeight: `${availableHeight - 20}px`,\n }\n : {}),\n zIndex: 1,\n });\n },\n }),\n flip({\n mainAxis: !disableFlip,\n crossAxis: false,\n fallbackAxisSideDirection: disableFlipFallback ? \"none\" : \"end\",\n padding: 5,\n }),\n shift({\n padding: 5,\n mainAxis: !disableShift,\n crossAxis: false,\n limiter: limitShift({\n mainAxis: !disableShift,\n }),\n }),\n arrow({\n element: !disableCaret && arrowElement ? arrowElement : null,\n padding: 5,\n }),\n ],\n }).then(({ x, y, placement, middlewareData }) => {\n setActualPlacement(placement);\n const side = placement.split(\"-\")[0];\n\n const staticSide = {\n top: \"bottom\",\n right: \"left\",\n bottom: \"top\",\n left: \"right\",\n }[side as \"top\" | \"right\" | \"bottom\" | \"left\"];\n\n const arrowDeg = () => {\n if (staticSide === \"top\") return 180;\n if (staticSide === \"bottom\") return 0;\n if (staticSide === \"left\") return 90;\n return 270;\n };\n\n Object.assign(popover.style, {\n left: `${x}px`,\n top: `${y}px`,\n });\n if (middlewareData.arrow && arrowElement) {\n const { x, y } = middlewareData.arrow;\n Object.assign(arrowElement.style, {\n left: x != null ? `${x}px` : \"\",\n top: y != null ? `${y}px` : \"\",\n right: \"\",\n bottom: \"\",\n [staticSide as string]: `${-arrowElement.offsetWidth + 2}px`,\n transform: `rotate(${arrowDeg()}deg)`,\n });\n }\n });\n }, [\n arrowElement,\n disableCaret,\n disableFlip,\n disableFlipFallback,\n disableShift,\n fillAvailableHeight,\n fitScreen,\n fixedWidth,\n invoker,\n matchReferenceWidth,\n maxHeight,\n openState,\n placement,\n popover,\n processMinHeight,\n ]);\n\n // Effect to add autoUpdate to eventListener\n // while the popover is opened\n useLayoutEffect(() => {\n if (!popover || !invoker) return;\n if (!openState) {\n return;\n }\n\n let requestID: number | null = null;\n const cleanup = autoUpdate(invoker, popover, () => {\n requestID = requestAnimationFrame(updatePosition);\n });\n\n return () => {\n if (requestID) cancelAnimationFrame(requestID);\n cleanup();\n };\n }, [invoker, popover, updatePosition, openState]);\n // Stryker restore all\n\n popover?.getRootNode();\n\n const popoverId = id ?? `popover-${uid.replace(/:/g, \"\")}`;\n const isControlled = typeof open !== \"undefined\";\n\n // Main function to open popover\n const openPopover = useCallback(() => {\n if (\n !popover ||\n !(rootNode as ShadowRoot | Document)?.querySelector(`#${popoverId}`)\n )\n return;\n setOpenState(true);\n }, [popover, rootNode, popoverId, setOpenState]);\n\n // Main function to close popover\n const closePopover = useCallback(\n (fn?: () => void) => {\n if (!popover || !openState) return;\n if (!openOnHover) onClose?.();\n setOpenState(false);\n\n // Reset hover states to prevent stuck state when closed programmatically\n // while mouse is still inside the popover content\n setTriggerHovered(false);\n setContentHovered(false);\n\n fn?.();\n },\n [\n popover,\n openState,\n openOnHover,\n onClose,\n setOpenState,\n setTriggerHovered,\n setContentHovered,\n ],\n );\n\n useImperativeHandle(\n ref,\n () => ({\n openPopover,\n closePopover,\n }),\n [openPopover, closePopover],\n );\n\n // Updating openness for controlled\n useEffect(() => {\n if (typeof openState === \"undefined\") return;\n if (openState) {\n if (dialogContext) {\n if (dialogContext?.ref?.current?.open) {\n safeShowPopover(popover);\n dialogContext?.setHasOpenPopover?.(true);\n }\n return;\n }\n safeShowPopover(popover);\n } else {\n safeHidePopover(popover);\n dialogContext?.setHasOpenPopover?.(false);\n }\n }, [openState, openPopover, closePopover, dialogContext, popover]);\n\n useOnClickOutside({\n disable: disableCloseOnClickOutside || !openState,\n onClickOutsideBegin: (e) => {\n if (!openState) return;\n onClickOutside?.(e);\n },\n targets: [invoker, popover],\n onClickOutside: () => {\n if (openOnHover || isControlled) return;\n closePopover();\n },\n });\n\n const value = useMemo(() => {\n return {\n popoverId,\n invoker,\n setInvoker,\n popover,\n setPopover,\n arrowElement,\n setArrowElement,\n openPopover,\n closePopover,\n placement,\n actualPlacement,\n onClose,\n openOnHover,\n openState,\n setOpenState,\n disableCloseOnClickOutside,\n fillAvailableHeight,\n maxHeight,\n matchReferenceWidth,\n fixedWidth,\n disableCaret,\n disableFlipFallback,\n disableTriggerFocus,\n disableCloseOnEscape,\n noPadding,\n controlled: isControlled,\n modal: modal,\n arrowRef,\n rootNode,\n setRootNode,\n delay,\n triggerHovered,\n setTriggerHovered,\n contentHovered,\n setContentHovered,\n };\n }, [\n popoverId,\n invoker,\n popover,\n arrowElement,\n openPopover,\n closePopover,\n placement,\n actualPlacement,\n onClose,\n openOnHover,\n openState,\n setOpenState,\n disableCloseOnClickOutside,\n fillAvailableHeight,\n maxHeight,\n matchReferenceWidth,\n fixedWidth,\n disableCaret,\n disableFlipFallback,\n disableTriggerFocus,\n disableCloseOnEscape,\n noPadding,\n isControlled,\n modal,\n rootNode,\n delay,\n triggerHovered,\n setTriggerHovered,\n contentHovered,\n setContentHovered,\n ]);\n\n return (\n <PopoverContext.Provider value={value}>\n {children}\n </PopoverContext.Provider>\n );\n }),\n {\n /**\n * PopoverTrigger component for creating custom trigger elements.\n *\n * Features:\n * - Supports custom trigger elements via render prop pattern\n * - Automatic focus management and keyboard interaction\n * - Hover and click event handling\n * - Accessibility attributes (aria-haspopup, aria-expanded, aria-details)\n * - Context integration with parent popover\n * - Automatic tracking ID generation for analytics\n *\n * @example\n * <Popover.Trigger>\n * {(props) => (\n * <button {...props}>\n * Click to open popover\n * </button>\n * )}\n * </Popover.Trigger>\n */\n Trigger: PopoverTrigger,\n /**\n * PopoverContent component for the main popover content area.\n *\n * Features:\n * - Automatic positioning and sizing based on trigger\n * - Screen boundary detection and fitting\n * - Scroll handling with custom scroller reference\n * - Focus management and keyboard navigation\n * - Hover interaction support for tooltip mode\n * - Escape key handling for closing\n * - Tab key trapping for modal popovers\n * - Arrow/caret indicator with automatic positioning\n * - Context integration with parent popover\n * - Accessibility support with proper ARIA roles\n *\n * @example\n * <Popover.Content>\n * <p>This is the popover content</p>\n * <Popover.Close>Close</Popover.Close>\n * </Popover.Content>\n */\n Content: PopoverContent,\n /**\n * PopoverClose component for closing the popover.\n *\n * Features:\n * - Automatic popover closing on click\n * - Supports all Button component props and styling\n * - Controlled and uncontrolled mode support\n * - Context integration with parent popover\n * - Accessibility support with proper button semantics\n * - Delayed closing for controlled mode\n * - Automatic tracking ID generation for analytics\n *\n * @example\n * <Popover.Close>Close</Popover.Close>\n */\n Close: PopoverClose,\n /**\n * PopoverButton component for creating button-style triggers.\n *\n * Features:\n * - Button styling and behavior with all Button props\n * - Automatic popover opening on click\n * - Hover interaction support for tooltip mode\n * - Focus management and keyboard navigation\n * - Accessibility attributes (aria-haspopup, aria-expanded, aria-details)\n * - Context integration with parent popover\n * - Event handling for mouse, keyboard, and focus events\n * - Automatic tracking ID generation for analytics\n *\n * @example\n * <Popover.Button>Click to open</Popover.Button>\n */\n Button: PopoverButton,\n },\n);\nPopover.displayName = \"Popover\";\n"],"names":["PopoverClose","PopoverButton","PopoverContent","arrow","placement","x","y"],"mappings":"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"}
1
+ {"version":3,"file":"Popover-CyB7yzSf.js","sources":["../src/components/Popover/internal/PopoverContext.ts","../src/components/Popover/internal/usePopoverContext.tsx","../src/components/Popover/PopoverClose.tsx","../src/components/Popover/PopoverButton.tsx","../src/components/Popover/PopoverContent.tsx","../src/components/Popover/PopoverTrigger.tsx","../src/components/Popover/Popover.tsx"],"sourcesContent":["import {\n createContext,\n CSSProperties,\n Dispatch,\n RefObject,\n SetStateAction,\n} from \"react\";\nimport { PopoverProps } from \"../Popover\";\nimport { Placement } from \"@floating-ui/react-dom\";\n\nexport type PopoverContextProps = {\n popoverId: string;\n invoker?: HTMLElement;\n setInvoker?: Dispatch<SetStateAction<HTMLElement | undefined>>;\n popover?: HTMLElement;\n setPopover?: Dispatch<SetStateAction<HTMLElement | undefined>>;\n rootNode?: Node;\n setRootNode?: Dispatch<SetStateAction<Node | undefined>>;\n arrowElement?: HTMLSpanElement;\n setArrowElement?: Dispatch<SetStateAction<HTMLSpanElement | undefined>>;\n openState: boolean;\n popoverStyle?: CSSProperties;\n placement?: Placement;\n actualPlacement?: Placement;\n openPopover: () => void;\n closePopover: (replacementFn?: () => void) => void;\n onClose?: PopoverProps[\"onClose\"];\n openOnHover: PopoverProps[\"openOnHover\"];\n controlled: boolean;\n disableCloseOnClickOutside?: PopoverProps[\"disableCloseOnClickOutside\"];\n disableCloseOnEscape?: PopoverProps[\"disableCloseOnEscape\"];\n modal?: PopoverProps[\"modal\"];\n noPadding?: PopoverProps[\"noPadding\"];\n fillAvailableHeight: PopoverProps[\"fillAvailableHeight\"];\n maxHeight: PopoverProps[\"maxHeight\"];\n matchReferenceWidth: PopoverProps[\"matchReferenceWidth\"];\n fixedWidth: PopoverProps[\"fixedWidth\"];\n disableCaret: PopoverProps[\"disableCaret\"];\n disableFlipFallback: PopoverProps[\"disableFlipFallback\"];\n disableTriggerFocus: PopoverProps[\"disableTriggerFocus\"];\n arrowRef: RefObject<HTMLSpanElement>;\n delay: PopoverProps[\"delay\"];\n triggerHovered: boolean;\n setTriggerHovered: Dispatch<SetStateAction<boolean>>;\n contentHovered: boolean;\n setContentHovered: Dispatch<SetStateAction<boolean>>;\n};\n\nexport const PopoverContext = createContext<PopoverContextProps | null>(null);\n","import {\n useRef,\n useContext,\n useLayoutEffect,\n KeyboardEvent,\n useEffect,\n} from \"react\";\nimport { PopoverContext } from \"./PopoverContext\";\nimport { tabbable } from \"tabbable\";\n\nexport type dataStateType = \"open\" | \"closed\";\n\nexport function usePopoverContext() {\n const context = useContext(PopoverContext);\n const invokerRef = useRef<HTMLButtonElement>(null);\n const popoverRef = useRef<HTMLDivElement>(null);\n const arrowRef = useRef<HTMLSpanElement>(null);\n const { triggerHovered, setTriggerHovered, contentHovered } = context || {};\n\n useLayoutEffect(() => {\n if (!invokerRef.current) return;\n context?.setInvoker?.(invokerRef.current);\n }, [context, invokerRef]);\n\n useLayoutEffect(() => {\n if (!popoverRef.current) return;\n context?.setPopover?.(popoverRef.current);\n context?.setRootNode?.(popoverRef.current.getRootNode());\n if (!arrowRef.current) return;\n context?.setArrowElement?.(arrowRef.current);\n }, [context, popoverRef]);\n\n useEffect(() => {\n if (!context?.openOnHover) return;\n // If the popover was previously opened by hover, and is now unhovered, close the popover after 100ms\n if (!triggerHovered && !contentHovered) {\n const closeTimeout: NodeJS.Timeout = setTimeout(() => {\n context?.closePopover();\n }, 100);\n return () => {\n clearTimeout(closeTimeout);\n };\n }\n // If the popover was unopened by hover, and is now hovered, open the popover after the defined delay\n if (triggerHovered && !contentHovered) {\n if (context?.delay) {\n const openTimeout = setTimeout(() => {\n context?.openPopover();\n }, context.delay);\n return () => {\n clearTimeout(openTimeout);\n };\n } else {\n context?.openPopover();\n }\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [context?.delay, context?.openOnHover, triggerHovered, contentHovered]);\n\n const onMouseEnterHandler = () => {\n if (!context?.openOnHover) return;\n setTriggerHovered?.(true);\n };\n const onMouseLeaveHandler = () => {\n if (!context?.openOnHover) return;\n setTriggerHovered?.(false);\n };\n\n const onFocusHandler = (_e: React.FocusEvent) => {\n if (context?.openOnHover) {\n context?.openPopover();\n }\n };\n\n const onBlurHandler = (e: React.FocusEvent) => {\n if (context?.popover?.contains(e.relatedTarget as Node)) return; // If the focus is within the popover, don't close it\n if (context?.modal && context.openState) {\n e.preventDefault();\n requestAnimationFrame(() => {\n context?.invoker?.focus();\n const focusables = tabbable(context?.popover as Element);\n if (focusables.length > 0) {\n focusables[focusables.length - 1].focus();\n }\n });\n return;\n }\n if (!context?.disableCloseOnClickOutside) {\n context?.closePopover();\n }\n };\n\n const onKeyDownHandler = (e: KeyboardEvent) => {\n if (!context?.openState) return;\n if (\n e.code === \"Escape\" &&\n !context?.disableCloseOnEscape &&\n !context?.controlled\n ) {\n context?.closePopover();\n return;\n }\n };\n\n const onClickHandler = () => {\n context?.invoker?.focus();\n if (context?.openOnHover) return;\n if (context?.controlled === false) {\n if (context?.openState) {\n context?.closePopover();\n } else {\n context?.openPopover();\n }\n return;\n }\n };\n\n if (!context || !invokerRef || !popoverRef) return;\n return {\n invoker: {\n ref: invokerRef,\n element: context.invoker,\n onMouseEnter: onMouseEnterHandler,\n onMouseLeave: onMouseLeaveHandler,\n onKeyDown: onKeyDownHandler,\n onClick: onClickHandler,\n onFocus: onFocusHandler,\n onBlur: onBlurHandler,\n \"aria-haspopup\": true,\n \"aria-expanded\": context.openState,\n \"aria-details\": context.popoverId,\n \"data-state\": context.openState ? \"open\" : (\"closed\" as dataStateType),\n },\n popover: {\n ref: popoverRef,\n element: context.popover,\n id: context.popoverId,\n onClose: context.onClose,\n show: context.openPopover,\n close: context.closePopover,\n noPadding: context.noPadding,\n style: context.popoverStyle,\n arrowRef: arrowRef,\n },\n rootNode: context.rootNode,\n onClose: context.onClose,\n open: context.openState,\n openOnHover: context.openOnHover,\n controlled: context.controlled,\n disableCloseOnClickOutside: context.disableCloseOnClickOutside,\n disableCloseOnEscape: context.disableCloseOnEscape,\n modal: context.modal,\n placement: context.placement,\n actualPlacement: context.actualPlacement,\n disableCaret: context.disableCaret,\n noPadding: context.noPadding,\n fillAvailableHeight: context.fillAvailableHeight,\n maxHeight: context.maxHeight,\n matchReferenceWidth: context.matchReferenceWidth,\n fixedWidth: context.fixedWidth,\n disableFlipFallback: context.disableFlipFallback,\n disableTriggerFocus: context.disableTriggerFocus,\n triggerHovered: context.triggerHovered,\n setTriggerHovered: context.setTriggerHovered,\n contentHovered: context.contentHovered,\n setContentHovered: context.setContentHovered,\n };\n}\n","import { forwardRef } from \"react\";\n\nimport { Button, ButtonProps } from \"../Button\";\nimport { usePopoverContext } from \"./internal/usePopoverContext\";\nimport { childrenToString } from \"../../internal/functions\";\nimport { DataTrackingId } from \"../../types\";\nimport { useTrackingId } from \"../../hooks\";\n\n/**\n * Props for the PopoverClose component\n * @extends ButtonProps\n */\nexport type PopoverCloseProps = ButtonProps & DataTrackingId;\n\n/**\n * PopoverClose component for closing the popover.\n *\n * Features:\n * - Automatic popover closing on click\n * - Supports all Button component props and styling\n * - Controlled and uncontrolled mode support\n * - Context integration with parent popover\n * - Accessibility support with proper button semantics\n * - Delayed closing for controlled mode\n *\n * @example\n * <Popover.Close>Close</Popover.Close>\n *\n * @example\n * <Popover.Close appearance=\"secondary\" size=\"small\">\n * Cancel\n * </Popover.Close>\n *\n * @example\n * <Popover.Close onClick={() => console.log('Custom close handler')}>\n * Close with custom handler\n * </Popover.Close>\n */\nexport const PopoverClose = forwardRef<HTMLButtonElement, PopoverCloseProps>(\n function PopoverClose(props, ref) {\n const { onClick, ...rest } = props;\n const context = usePopoverContext();\n\n const data = {\n children: childrenToString(props.children),\n };\n\n const trackingId = useTrackingId({\n name: \"PopoverClose\",\n data,\n hasOverride: !!props[\"data-tracking-id\"],\n });\n\n return (\n <Button\n ref={ref}\n data-tracking-id={trackingId}\n data-anv=\"popover-close\"\n {...rest}\n onClick={(event) => {\n context?.popover.close();\n context?.onClose?.();\n onClick?.(event);\n }}\n />\n );\n },\n);\n\nPopoverClose.displayName = \"PopoverClose\";\n","import { forwardRef, MouseEvent, FocusEvent, KeyboardEvent } from \"react\";\nimport { Button, ButtonProps } from \"../Button\";\nimport { useMergeRefs, useTrackingId } from \"../../hooks\";\nimport { usePopoverContext } from \"./internal/usePopoverContext\";\nimport { childrenToString } from \"../../internal/functions\";\nimport { DataTrackingId } from \"../../types\";\n\n/**\n * Props for the PopoverButton component\n * @extends ButtonProps\n */\nexport type PopoverButtonProps = ButtonProps & DataTrackingId;\n\n/**\n * PopoverButton component for creating button-style triggers.\n *\n * Features:\n * - Button styling and behavior with all Button props\n * - Automatic popover opening on click\n * - Hover interaction support for tooltip mode\n * - Focus management and keyboard navigation\n * - Accessibility attributes (aria-haspopup, aria-expanded, aria-details)\n * - Context integration with parent popover\n * - Event handling for mouse, keyboard, and focus events\n *\n * @example\n * <Popover.Button>Click to open</Popover.Button>\n *\n * @example\n * <Popover.Button appearance=\"primary\" size=\"large\" icon={InfoIcon}>\n * Information\n * </Popover.Button>\n *\n * @example\n * <Popover.Button onClick={() => console.log('Custom click handler')}>\n * Custom handler\n * </Popover.Button>\n */\nexport const PopoverButton = forwardRef<HTMLButtonElement, PopoverButtonProps>(\n function PopoverButton(props, ref) {\n const {\n children,\n size,\n onMouseEnter,\n onMouseLeave,\n onClick,\n onKeyDown,\n onFocus,\n onBlur,\n ...rest\n } = props;\n const context = usePopoverContext();\n\n const data = {\n children: childrenToString(props.children),\n appearance: props.appearance,\n icon: props.icon,\n size: props.size,\n type: props.type,\n };\n\n const trackingId = useTrackingId({\n name: \"PopoverButton\",\n data,\n hasOverride: !!props[\"data-tracking-id\"],\n });\n\n const onMouseEnterHandler = (e: MouseEvent<HTMLButtonElement>) => {\n onMouseEnter?.(e);\n context?.invoker.onMouseEnter();\n };\n const onMouseLeaveHandler = (e: MouseEvent<HTMLButtonElement>) => {\n onMouseLeave?.(e);\n context?.invoker.onMouseLeave();\n };\n const onFocusHandler = (e: FocusEvent<HTMLButtonElement>) => {\n onFocus?.(e);\n context?.invoker.onFocus(e);\n };\n const onBlurHandler = (e: FocusEvent<HTMLButtonElement>) => {\n onBlur?.(e);\n context?.invoker.onBlur(e);\n };\n const onKeyDownHandler = (e: KeyboardEvent<HTMLButtonElement>) => {\n onKeyDown?.(e);\n context?.invoker.onKeyDown(e);\n };\n\n const onClickHandler = (e: MouseEvent<HTMLButtonElement>) => {\n onClick?.(e);\n context?.invoker.onClick();\n };\n\n const buttonRef = useMergeRefs([context?.invoker.ref, ref]);\n\n return (\n <Button\n ref={buttonRef}\n size={size}\n onClick={onClickHandler}\n onKeyDown={onKeyDownHandler}\n onMouseEnter={onMouseEnterHandler}\n onMouseLeave={onMouseLeaveHandler}\n onFocus={onFocusHandler}\n onBlur={onBlurHandler}\n data-anv=\"popover-button\"\n data-tracking-id={trackingId}\n aria-haspopup={context?.invoker[\"aria-haspopup\"]}\n aria-expanded={context?.invoker[\"aria-expanded\"]}\n aria-details={context?.invoker[\"aria-details\"]}\n data-state={context?.invoker[\"data-state\"]}\n {...rest}\n >\n {children}\n </Button>\n );\n },\n);\n\nPopoverButton.displayName = \"PopoverButton\";\n","import {\n ComponentPropsWithoutRef,\n forwardRef,\n MouseEvent,\n useRef,\n FocusEvent,\n RefObject,\n useLayoutEffect,\n} from \"react\";\nimport styles from \"./Popover.module.scss\";\nimport cx from \"classnames\";\nimport { useMergeRefs } from \"../../hooks\";\nimport { usePopoverContext } from \"./internal/usePopoverContext\";\nimport { useFocusWithin } from \"../../internal/hooks\";\n\n/**\n * Props for the PopoverContent component\n * @extends ComponentPropsWithoutRef<\"div\">\n */\nexport type PopoverContentProps = Omit<\n ComponentPropsWithoutRef<\"div\">,\n \"popover\"\n> & {\n /**\n * Reference to the scrollable content area\n */\n scrollerRef?: RefObject<HTMLDivElement>;\n /**\n * Whether to remove the content from the DOM while the popover is closed\n */\n hideWhileClosed?: boolean;\n};\n\n/**\n * PopoverContent component for the main popover content area.\n *\n * Features:\n * - Automatic positioning and sizing based on trigger\n * - Screen boundary detection and fitting\n * - Scroll handling with custom scroller reference\n * - Focus management and keyboard navigation\n * - Hover interaction support for tooltip mode\n * - Escape key handling for closing\n * - Tab key trapping for modal popovers\n * - Arrow/caret indicator with automatic positioning\n * - Context integration with parent popover\n * - Accessibility support with proper ARIA roles\n *\n * @example\n * <Popover.Content>\n * <p>This is the popover content</p>\n * <Popover.Close>Close</Popover.Close>\n * </Popover.Content>\n *\n * @example\n * <Popover.Content scrollerRef={scrollRef}>\n * <div style={{ height: '200px', overflow: 'auto' }}>\n * {longContent}\n * </div>\n * </Popover.Content>\n */\nexport const PopoverContent = forwardRef<HTMLDivElement, PopoverContentProps>(\n function PopoverContent(props, ref) {\n const {\n children,\n className,\n style,\n onMouseEnter,\n onMouseLeave,\n onKeyDown,\n onFocus,\n onBlur,\n onScroll,\n onScrollCapture,\n scrollerRef,\n hideWhileClosed = false,\n ...rest\n } = props;\n const context = usePopoverContext();\n const popoverClassNames = cx(className, styles[\"content\"], {\n [styles[\"no-padding\"]]: context?.noPadding,\n });\n const childrenRef = useRef<HTMLDivElement>(null);\n const combinedStyles = {\n ...style,\n ...context?.popover.style,\n };\n\n const { props: wrapperProps } = useFocusWithin({\n otherRelatedElements: context?.invoker.element\n ? [context?.invoker.element]\n : [],\n onBlur: (e) => {\n if (context?.modal) {\n e.preventDefault();\n requestAnimationFrame(() => {\n context?.invoker.element?.focus();\n });\n return;\n }\n onBlur?.(e as FocusEvent<HTMLDivElement>);\n context?.popover.close();\n },\n onFocus: (e) => {\n onFocus?.(e as FocusEvent<HTMLDivElement>);\n context?.popover.show();\n },\n });\n\n const onMouseEnterHandler = (e: MouseEvent<HTMLDivElement>) => {\n onMouseEnter?.(e);\n if (!context?.openOnHover) return;\n if (!context?.open) return; // Don't set hover state if popover is closed\n context.setContentHovered(true);\n };\n const onMouseLeaveHandler = (e: MouseEvent<HTMLDivElement>) => {\n onMouseLeave?.(e);\n if (!context?.openOnHover) return;\n context.setContentHovered(false);\n };\n\n const onKeyDownHandler = (e: React.KeyboardEvent<HTMLDivElement>) => {\n onKeyDown?.(e);\n if (e.code === \"Escape\" && !context?.disableCloseOnEscape) {\n context?.popover.close();\n }\n };\n\n const popoverContentRef = useMergeRefs([context?.popover.ref, ref]);\n const popoverScrollerRef = useMergeRefs([childrenRef, scrollerRef]);\n\n // Reset scroll position when popover opens\n useLayoutEffect(() => {\n if (context?.open && childrenRef.current) {\n childrenRef.current.scrollTop = 0;\n childrenRef.current.scrollLeft = 0;\n }\n }, [context?.open]);\n\n // Extract base side from actual placement for hover bridge positioning\n const bridgeSide =\n context?.openOnHover && context?.actualPlacement\n ? (context.actualPlacement.split(\"-\")[0] as\n | \"top\"\n | \"bottom\"\n | \"left\"\n | \"right\")\n : undefined;\n\n return (\n <div\n popover={\"manual\"}\n id={context?.popover.id}\n data-anv=\"popover-content\"\n data-position={bridgeSide}\n className={popoverClassNames}\n ref={popoverContentRef}\n style={combinedStyles}\n onMouseEnter={onMouseEnterHandler}\n onMouseLeave={onMouseLeaveHandler}\n role=\"region\"\n {...rest}\n onFocus={wrapperProps.onFocus}\n onBlur={wrapperProps.onBlur}\n >\n <div\n className={styles.scroller}\n role=\"presentation\"\n tabIndex={-1}\n ref={popoverScrollerRef}\n onKeyDown={onKeyDownHandler}\n onScroll={onScroll}\n onScrollCapture={onScrollCapture}\n >\n {hideWhileClosed ? (context?.open ? children : null) : children}\n </div>\n {!context?.disableCaret && (\n <span className={styles[\"arrow\"]} ref={context?.popover.arrowRef}>\n <svg aria-hidden=\"true\" width=\"14\" height=\"14\" viewBox=\"0 0 14 14\">\n <path stroke=\"none\" d=\"M0,0 H14 L7,7 Q7,7 7,7 Z\"></path>\n <clipPath id=\":r9:\">\n <rect x=\"0\" y=\"0\" width=\"14\" height=\"14\"></rect>\n </clipPath>\n </svg>\n </span>\n )}\n </div>\n );\n },\n);\n\nPopoverContent.displayName = \"PopoverContent\";\n","import {\n ReactElement,\n MouseEvent,\n KeyboardEvent,\n FocusEvent,\n RefObject,\n} from \"react\";\nimport { usePopoverContext } from \"./internal/usePopoverContext\";\n\ntype PopoverTriggerChildrenReturnType = {\n ref: RefObject<HTMLButtonElement>;\n onMouseEnter: (e: MouseEvent) => void;\n onMouseLeave: (e: MouseEvent) => void;\n onClick: (e: MouseEvent) => void;\n onKeyDown: (e: KeyboardEvent) => void;\n onBlur: (e: FocusEvent) => void;\n onFocus: (e: FocusEvent) => void;\n \"aria-haspopup\": boolean;\n \"aria-expanded\": boolean;\n \"aria-details\": HTMLElement[\"id\"];\n};\n\n/**\n * Props for the PopoverTrigger component\n */\nexport type PopoverTriggerProps = {\n /**\n * Render function that receives trigger props and returns a React element\n */\n children: (data: PopoverTriggerChildrenReturnType) => ReactElement;\n};\n\n/**\n * PopoverTrigger component for creating custom trigger elements.\n *\n * Features:\n * - Supports custom trigger elements via render prop pattern\n * - Automatic focus management and keyboard interaction\n * - Hover and click event handling\n * - Accessibility attributes (aria-haspopup, aria-expanded, aria-details)\n * - Context integration with parent popover\n *\n * @example\n * <Popover.Trigger>\n * {(props) => (\n * <button {...props}>\n * Click to open popover\n * </button>\n * )}\n * </Popover.Trigger>\n *\n * @example\n * <Popover.Trigger>\n * {(props) => (\n * <div {...props} role=\"button\" tabIndex={0}>\n * Custom trigger element\n * </div>\n * )}\n * </Popover.Trigger>\n */\nexport function PopoverTrigger(props: PopoverTriggerProps) {\n const { children } = props;\n const context = usePopoverContext();\n\n if (!context) return;\n const { element, ...rest } = context.invoker;\n\n return children(rest);\n}\n\nPopoverTrigger.displayName = \"PopoverTrigger\";\n","import { PopoverClose } from \"./PopoverClose\";\nimport { PopoverButton } from \"./PopoverButton\";\nimport { PopoverContent } from \"./PopoverContent\";\nimport { PopoverTrigger } from \"./PopoverTrigger\";\nimport {\n ComponentPropsWithoutRef,\n forwardRef,\n useCallback,\n useContext,\n useEffect,\n useId,\n useImperativeHandle,\n useLayoutEffect,\n useMemo,\n useRef,\n useState,\n} from \"react\";\nimport { PopoverContext, PopoverContextProps } from \"./internal/PopoverContext\";\nimport {\n arrow,\n autoUpdate,\n computePosition,\n flip,\n limitShift,\n offset,\n Placement,\n shift,\n size,\n} from \"@floating-ui/react\";\nimport { safeHidePopover, safeShowPopover } from \"../../internal/functions\";\nimport { DisableCloseOnEscapeOrClickProps } from \"../../types\";\nimport {\n OpenCloseTransitionStateEffects,\n useOnClickOutside,\n useOptionallyControlledState,\n usePopoverTransitionStates,\n} from \"../../internal/hooks\";\nimport { DialogContext } from \"../Dialog/internal/DialogContext\";\n\n/**\n * Props for the Popover component\n * @property {ReactNode} [children] - The content to be rendered inside the popover\n * @property {string} [id] - Unique identifier for the popover\n * @property {boolean} [modal] - Whether the popover should be modal (traps focus)\n * @property {boolean} [openOnHover] - Changes interaction to use hover instead of click\n * @property {boolean} [fillAvailableHeight] - Changes height and positioning for select/combobox\n * @property {number | string} [maxHeight] - Maximum height of the popover content\n * @property {boolean} [fitScreen] - Whether the popover should fit within the screen bounds\n * @property {number | string} [minHeight] - Minimum height of the popover content\n * @property {boolean} [matchReferenceWidth] - Whether the popover width should match the trigger element\n * @property {boolean} [fixedWidth] - Whether the popover should have a fixed width\n * @property {string} [placement] - Placement of the popover relative to the trigger\n * @property {boolean} [open] - Controlled open state\n * @property {boolean} [defaultOpen] - Default open state for uncontrolled mode\n * @property {Function} [onOpenChange] - Callback when open state changes\n * @property {Function} [onClickOutside] - Callback when clicking outside the popover\n * @property {Function} [onClose] - Fires when the floating element is requested to be closed\n * @property {boolean} [disableCaret] - Whether to disable the caret/arrow indicator\n * @property {boolean} [noPadding] - Whether to remove default padding from content\n * @property {boolean} [disableAutoUpdate] - Whether to disable automatic position updates\n * @property {boolean} [disableTriggerFocus] - Whether to disable focus on the trigger element\n * @property {number} [delay] - Delay before opening the popover (for hover mode)\n * @property {boolean} [disableCloseOnClickOutside] - Whether to disable closing on outside click\n * @property {boolean} [disableCloseOnEscape] - Whether to disable closing on escape key\n */\n\n/**\n * Props for the Popover component\n * @extends ComponentPropsWithoutRef<\"div\">\n * @extends DisableCloseOnEscapeOrClickProps\n */\nexport type PopoverProps = {\n /**\n * The content to be rendered inside the popover\n */\n children?: ComponentPropsWithoutRef<\"div\">[\"children\"];\n /**\n * Unique identifier for the popover\n */\n id?: ComponentPropsWithoutRef<\"div\">[\"id\"];\n /**\n * Whether the popover should be modal (traps focus)\n * @default false\n */\n modal?: boolean;\n /**\n * Disables the shift of floating element\n * @internal\n */\n disableShift?: boolean;\n /**\n * Disables the flip of floating element\n * @internal\n */\n disableFlip?: boolean;\n /**\n * Disables the flip cross-axis fallback of floating element\n * @internal\n */\n disableFlipFallback?: boolean;\n /**\n * Changes interaction to use hover instead of click\n * @default false\n */\n openOnHover?: boolean;\n /**\n * Changes height and positioning for select/combobox\n * @default false\n */\n fillAvailableHeight?: boolean;\n /**\n * Maximum height of the popover content\n */\n maxHeight?: number | string;\n /**\n * Whether the popover should fit within the screen bounds\n * @default false\n */\n fitScreen?: boolean;\n /**\n * Minimum height of the popover content\n * @default \"2.875rem\"\n */\n minHeight?: number | string;\n /**\n * Whether the popover width should match the trigger element\n * @default false\n */\n matchReferenceWidth?: boolean;\n /**\n * Whether the popover should have a fixed width\n * @default false\n */\n fixedWidth?: boolean;\n /**\n * Placement of the popover relative to the trigger\n * @default \"bottom\"\n */\n placement?: Placement;\n /**\n * Controlled open state\n */\n open?: boolean;\n /**\n * Default open state for uncontrolled mode\n * @default false\n */\n defaultOpen?: boolean;\n /**\n * Callback when clicking outside the popover\n */\n onClickOutside?: (e: globalThis.MouseEvent) => void;\n /**\n * Fires when the floating element is requested to be closed\n * Note: this does not fire when openOnHover is true and mouse leaves to close\n * eg. on click outside, [esc] to close, or by <Popover.Close>\n */\n onClose?: () => void;\n /**\n * Whether to disable the caret/arrow indicator\n * @default false\n */\n disableCaret?: boolean;\n /**\n * Whether to remove default padding from content\n * @default false\n */\n noPadding?: boolean;\n /**\n * Whether to disable automatic position updates\n * @default false\n */\n disableAutoUpdate?: boolean;\n /**\n * Whether to disable focus on the trigger element\n * @default false\n */\n disableTriggerFocus?: boolean;\n /**\n * Delay before opening the popover (for hover mode)\n * @default 100\n */\n delay?: number;\n} & DisableCloseOnEscapeOrClickProps &\n OpenCloseTransitionStateEffects;\n\n/**\n * Popover component for displaying floating content relative to a trigger element.\n *\n * Features:\n * - Supports both controlled and uncontrolled modes\n * - Automatic positioning with fallback strategies\n * - Hover and click interaction modes\n * - Modal and non-modal variants\n * - Custom trigger elements\n * - Automatic height and width management\n * - Screen boundary detection and fitting\n * - Keyboard navigation and accessibility\n * - Outside click detection and handling\n * - Focus management and trapping\n * - Arrow/caret indicators\n * - Delay support for hover interactions\n * - Automatic tracking ID generation for analytics\n *\n * @example\n * <Popover>\n * <Popover.Button>Click to open</Popover.Button>\n * <Popover.Content>\n * <p>This is the popover content</p>\n * <Popover.Close>Close</Popover.Close>\n * </Popover.Content>\n * </Popover>\n *\n * @example\n * <Popover openOnHover delay={1000}>\n * <Popover.Button>Hover to open</Popover.Button>\n * <Popover.Content>Tooltip content</Popover.Content>\n * </Popover>\n *\n * @example\n * <Popover modal>\n * <Popover.Trigger>\n * {(props) => <button {...props}>Custom trigger</button>}\n * </Popover.Trigger>\n * <Popover.Content>\n * <TextField label=\"Form field\" />\n * <Popover.Close>Done</Popover.Close>\n * </Popover.Content>\n * </Popover>\n */\nexport const Popover = Object.assign(\n forwardRef(function PopoverInner(props: PopoverProps, ref) {\n const {\n children,\n openOnHover = false,\n delay = 100,\n placement = \"bottom\",\n minHeight = \"2.875rem\",\n open,\n defaultOpen = false,\n disableShift,\n disableFlip,\n disableFlipFallback,\n matchReferenceWidth,\n id,\n disableCaret,\n fixedWidth,\n fillAvailableHeight,\n maxHeight,\n disableCloseOnClickOutside,\n disableCloseOnEscape,\n fitScreen,\n disableTriggerFocus,\n modal,\n noPadding,\n onClickOutside,\n onClose,\n onOpenAnimationStart,\n onOpenAnimationComplete,\n onCloseAnimationStart,\n onCloseAnimationComplete,\n } = props;\n const uid = useId();\n const [invoker, setInvoker] =\n useState<PopoverContextProps[\"invoker\"]>(undefined);\n const [popover, setPopover] =\n useState<PopoverContextProps[\"popover\"]>(undefined);\n const [rootNode, setRootNode] = useState<PopoverContextProps[\"rootNode\"]>();\n const [arrowElement, setArrowElement] =\n useState<PopoverContextProps[\"arrowElement\"]>(undefined);\n const [openState, setOpenState] = useOptionallyControlledState<\n PopoverContextProps[\"openState\"]\n >({\n controlledValue: open,\n defaultValue: defaultOpen,\n });\n const arrowRef = useRef<HTMLSpanElement>(null);\n const dialogContext = useContext(DialogContext);\n const [triggerHovered, setTriggerHovered] = useState(false);\n const [contentHovered, setContentHovered] = useState(false);\n // Track the actual computed placement after flip/shift middleware runs\n // (may differ from the placement prop if Floating UI adjusts it)\n const [actualPlacement, setActualPlacement] = useState<\n Placement | undefined\n >(placement);\n\n // TODO: Find a way to test these properly!\n // Stryker disable all : Currently relying on Chromatic test for all visuals\n const processMinHeight =\n typeof minHeight === \"string\" ? minHeight : `${minHeight}px`;\n\n usePopoverTransitionStates(popover, openState, {\n onOpenAnimationStart: useCallback(() => {\n onOpenAnimationStart?.();\n }, [onOpenAnimationStart]),\n onOpenAnimationComplete: useCallback(() => {\n onOpenAnimationComplete?.();\n }, [onOpenAnimationComplete]),\n onCloseAnimationStart: useCallback(() => {\n onCloseAnimationStart?.();\n }, [onCloseAnimationStart]),\n onCloseAnimationComplete: useCallback(() => {\n onCloseAnimationComplete?.();\n }, [onCloseAnimationComplete]),\n });\n\n /* istanbul ignore next */\n const updatePosition = useCallback(() => {\n if (!invoker || !popover) return;\n // disable position update when closing\n if (!openState) return;\n computePosition(invoker, popover, {\n placement: placement,\n middleware: [\n offset(8),\n size({\n padding: 5,\n apply({ rects, availableHeight, elements }) {\n Object.assign(elements.floating.style, {\n ...(matchReferenceWidth\n ? { width: `${rects.reference.width}px` }\n : fixedWidth\n ? { width: \"40dvw\" }\n : {}),\n ...(fillAvailableHeight\n ? {\n height: `${availableHeight - 20}px`,\n minHeight: processMinHeight,\n }\n : {}),\n ...(maxHeight\n ? {\n minHeight: processMinHeight,\n height: fitScreen\n ? typeof maxHeight === \"string\"\n ? maxHeight\n : `${maxHeight}px`\n : undefined,\n maxHeight: fitScreen\n ? `${availableHeight - 20}px`\n : typeof maxHeight === \"string\"\n ? maxHeight\n : `${maxHeight}px`,\n }\n : {}),\n ...(fitScreen && !maxHeight\n ? {\n minHeight: processMinHeight,\n maxHeight: `${availableHeight - 20}px`,\n }\n : {}),\n zIndex: 1,\n });\n },\n }),\n flip({\n mainAxis: !disableFlip,\n crossAxis: false,\n fallbackAxisSideDirection: disableFlipFallback ? \"none\" : \"end\",\n padding: 5,\n }),\n shift({\n padding: 5,\n mainAxis: !disableShift,\n crossAxis: false,\n limiter: limitShift({\n mainAxis: !disableShift,\n }),\n }),\n arrow({\n element: !disableCaret && arrowElement ? arrowElement : null,\n padding: 5,\n }),\n ],\n }).then(({ x, y, placement, middlewareData }) => {\n setActualPlacement(placement);\n const side = placement.split(\"-\")[0];\n\n const staticSide = {\n top: \"bottom\",\n right: \"left\",\n bottom: \"top\",\n left: \"right\",\n }[side as \"top\" | \"right\" | \"bottom\" | \"left\"];\n\n const arrowDeg = () => {\n if (staticSide === \"top\") return 180;\n if (staticSide === \"bottom\") return 0;\n if (staticSide === \"left\") return 90;\n return 270;\n };\n\n Object.assign(popover.style, {\n left: `${x}px`,\n top: `${y}px`,\n });\n if (middlewareData.arrow && arrowElement) {\n const { x, y } = middlewareData.arrow;\n Object.assign(arrowElement.style, {\n left: x != null ? `${x}px` : \"\",\n top: y != null ? `${y}px` : \"\",\n right: \"\",\n bottom: \"\",\n [staticSide as string]: `${-arrowElement.offsetWidth + 2}px`,\n transform: `rotate(${arrowDeg()}deg)`,\n });\n }\n });\n }, [\n arrowElement,\n disableCaret,\n disableFlip,\n disableFlipFallback,\n disableShift,\n fillAvailableHeight,\n fitScreen,\n fixedWidth,\n invoker,\n matchReferenceWidth,\n maxHeight,\n openState,\n placement,\n popover,\n processMinHeight,\n ]);\n\n // Effect to add autoUpdate to eventListener\n // while the popover is opened\n useLayoutEffect(() => {\n if (!popover || !invoker) return;\n if (!openState) {\n return;\n }\n\n let requestID: number | null = null;\n const cleanup = autoUpdate(invoker, popover, () => {\n requestID = requestAnimationFrame(updatePosition);\n });\n\n return () => {\n if (requestID) cancelAnimationFrame(requestID);\n cleanup();\n };\n }, [invoker, popover, updatePosition, openState]);\n // Stryker restore all\n\n popover?.getRootNode();\n\n const popoverId = id ?? `popover-${uid.replace(/:/g, \"\")}`;\n const isControlled = typeof open !== \"undefined\";\n\n // Main function to open popover\n const openPopover = useCallback(() => {\n if (\n !popover ||\n !(rootNode as ShadowRoot | Document)?.querySelector(`#${popoverId}`)\n )\n return;\n setOpenState(true);\n }, [popover, rootNode, popoverId, setOpenState]);\n\n // Main function to close popover\n const closePopover = useCallback(\n (fn?: () => void) => {\n if (!popover || !openState) return;\n if (!openOnHover) onClose?.();\n setOpenState(false);\n\n // Reset hover states to prevent stuck state when closed programmatically\n // while mouse is still inside the popover content\n setTriggerHovered(false);\n setContentHovered(false);\n\n fn?.();\n },\n [\n popover,\n openState,\n openOnHover,\n onClose,\n setOpenState,\n setTriggerHovered,\n setContentHovered,\n ],\n );\n\n useImperativeHandle(\n ref,\n () => ({\n openPopover,\n closePopover,\n }),\n [openPopover, closePopover],\n );\n\n // Updating openness for controlled\n useEffect(() => {\n if (typeof openState === \"undefined\") return;\n if (openState) {\n if (dialogContext) {\n if (dialogContext?.ref?.current?.open) {\n safeShowPopover(popover);\n dialogContext?.setHasOpenPopover?.(true);\n }\n return;\n }\n safeShowPopover(popover);\n } else {\n safeHidePopover(popover);\n dialogContext?.setHasOpenPopover?.(false);\n }\n }, [openState, openPopover, closePopover, dialogContext, popover]);\n\n useOnClickOutside({\n disable: disableCloseOnClickOutside || !openState,\n onClickOutsideBegin: (e) => {\n if (!openState) return;\n onClickOutside?.(e);\n },\n targets: [invoker, popover],\n onClickOutside: () => {\n if (openOnHover || isControlled) return;\n closePopover();\n },\n });\n\n const value = useMemo(() => {\n return {\n popoverId,\n invoker,\n setInvoker,\n popover,\n setPopover,\n arrowElement,\n setArrowElement,\n openPopover,\n closePopover,\n placement,\n actualPlacement,\n onClose,\n openOnHover,\n openState,\n setOpenState,\n disableCloseOnClickOutside,\n fillAvailableHeight,\n maxHeight,\n matchReferenceWidth,\n fixedWidth,\n disableCaret,\n disableFlipFallback,\n disableTriggerFocus,\n disableCloseOnEscape,\n noPadding,\n controlled: isControlled,\n modal: modal,\n arrowRef,\n rootNode,\n setRootNode,\n delay,\n triggerHovered,\n setTriggerHovered,\n contentHovered,\n setContentHovered,\n };\n }, [\n popoverId,\n invoker,\n popover,\n arrowElement,\n openPopover,\n closePopover,\n placement,\n actualPlacement,\n onClose,\n openOnHover,\n openState,\n setOpenState,\n disableCloseOnClickOutside,\n fillAvailableHeight,\n maxHeight,\n matchReferenceWidth,\n fixedWidth,\n disableCaret,\n disableFlipFallback,\n disableTriggerFocus,\n disableCloseOnEscape,\n noPadding,\n isControlled,\n modal,\n rootNode,\n delay,\n triggerHovered,\n setTriggerHovered,\n contentHovered,\n setContentHovered,\n ]);\n\n return (\n <PopoverContext.Provider value={value}>\n {children}\n </PopoverContext.Provider>\n );\n }),\n {\n /**\n * PopoverTrigger component for creating custom trigger elements.\n *\n * Features:\n * - Supports custom trigger elements via render prop pattern\n * - Automatic focus management and keyboard interaction\n * - Hover and click event handling\n * - Accessibility attributes (aria-haspopup, aria-expanded, aria-details)\n * - Context integration with parent popover\n * - Automatic tracking ID generation for analytics\n *\n * @example\n * <Popover.Trigger>\n * {(props) => (\n * <button {...props}>\n * Click to open popover\n * </button>\n * )}\n * </Popover.Trigger>\n */\n Trigger: PopoverTrigger,\n /**\n * PopoverContent component for the main popover content area.\n *\n * Features:\n * - Automatic positioning and sizing based on trigger\n * - Screen boundary detection and fitting\n * - Scroll handling with custom scroller reference\n * - Focus management and keyboard navigation\n * - Hover interaction support for tooltip mode\n * - Escape key handling for closing\n * - Tab key trapping for modal popovers\n * - Arrow/caret indicator with automatic positioning\n * - Context integration with parent popover\n * - Accessibility support with proper ARIA roles\n *\n * @example\n * <Popover.Content>\n * <p>This is the popover content</p>\n * <Popover.Close>Close</Popover.Close>\n * </Popover.Content>\n */\n Content: PopoverContent,\n /**\n * PopoverClose component for closing the popover.\n *\n * Features:\n * - Automatic popover closing on click\n * - Supports all Button component props and styling\n * - Controlled and uncontrolled mode support\n * - Context integration with parent popover\n * - Accessibility support with proper button semantics\n * - Delayed closing for controlled mode\n * - Automatic tracking ID generation for analytics\n *\n * @example\n * <Popover.Close>Close</Popover.Close>\n */\n Close: PopoverClose,\n /**\n * PopoverButton component for creating button-style triggers.\n *\n * Features:\n * - Button styling and behavior with all Button props\n * - Automatic popover opening on click\n * - Hover interaction support for tooltip mode\n * - Focus management and keyboard navigation\n * - Accessibility attributes (aria-haspopup, aria-expanded, aria-details)\n * - Context integration with parent popover\n * - Event handling for mouse, keyboard, and focus events\n * - Automatic tracking ID generation for analytics\n *\n * @example\n * <Popover.Button>Click to open</Popover.Button>\n */\n Button: PopoverButton,\n },\n);\nPopover.displayName = \"Popover\";\n"],"names":["PopoverClose","PopoverButton","PopoverContent","arrow","placement","x","y"],"mappings":"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"}
package/dist/Popover.css CHANGED
@@ -1,100 +1,87 @@
1
- @layer starter, reset, base, state, application;
2
- @layer reset {
3
- ._content_dtl65_2 {
4
- all: unset;
5
- font-family: var(--font-family-base, "Nunito Sans", sans-serif);
6
- font-size: 100%;
7
- color: var(--foreground-color, #141414);
8
- margin: 0;
9
- padding: 0;
10
- border-style: solid;
11
- border-width: 0.0625rem;
12
- border-color: var(--border-color-subdued, #dfe0e1);
13
- box-sizing: border-box;
14
- display: revert-layer;
15
- font-weight: 400;
1
+ .anvil2 {._content_4yxbk_1 {
2
+ --a2-mod-popover-background-color: var(--a2-popover-content-background-color, var(--a2-background-color-strong, light-dark(var(--a2-color-neutral-20, #f9f9f9), var(--a2-color-neutral-800, #292929))));
3
+ --a2-mod-popover-border-color: var(--a2-popover-content-border-color, var(--a2-border-color-subdued, light-dark(var(--a2-color-neutral-80, #e6e6e6), var(--a2-color-neutral-700, #404040))));
4
+ --a2-mod-popover-bridge-size: var(--a2-size-2, 0.5rem);
5
+ --a2-mod-popover-content-opacity: 0;
6
+ --a2-mod-popover-foreground-color: var(--a2-popover-content-foreground-color, var(--a2-foreground-color-default, light-dark(var(--a2-color-neutral-950, #040404), var(--a2-color-neutral-0, #ffffff))));
7
+ --a2-mod-popover-shadow-color: var(--a2-popover-content-shadow-color, var(--a2-shadow-color-default, light-dark(rgba(26, 26, 26, 0.0784313725), rgba(255, 255, 255, 0.0784313725))));
8
+ all: unset;
9
+ font-family: var(--a2-font-family-base, "Nunito Sans", sans-serif);
10
+ font-size: 100%;
11
+ color: var(--a2-foreground-color-default, light-dark(var(--a2-color-neutral-950, #040404), var(--a2-color-neutral-0, #ffffff)));
12
+ margin: 0;
13
+ padding: 0;
14
+ border-style: solid;
15
+ border-width: var(--a2-size-quarter, 0.0625rem);
16
+ border-color: var(--a2-border-color-subdued, light-dark(var(--a2-color-neutral-80, #e6e6e6), var(--a2-color-neutral-700, #404040)));
17
+ box-sizing: border-box;
18
+ display: revert-layer;
19
+ background-color: var(--a2-mod-popover-background-color);
20
+ border-color: var(--a2-mod-popover-border-color);
21
+ border-radius: var(--a2-border-radius-medium, var(--a2-radius-2, 0.375rem));
22
+ box-shadow: var(--a2-shadow-size-float, var(--a2-size-0, 0rem) var(--a2-size-half, 0.125rem) var(--a2-size-2, 0.5rem)) var(--a2-mod-popover-shadow-color);
23
+ color: var(--a2-mod-popover-foreground-color);
24
+ font-size: var(--a2-typography-paragraph-size-default, var(--a2-font-size-400, 1rem));
25
+ font-weight: var(--a2-font-weight-normal, 400);
26
+ max-width: calc(100% - 2 * var(--a2-size-3, 0.75rem));
27
+ opacity: var(--a2-mod-popover-content-opacity);
28
+ position: absolute !important;
29
+ transition: opacity var(--a2-duration-fast, 100ms), width var(--a2-duration-fast, 100ms), height var(--a2-duration-fast, 100ms), overlay var(--a2-duration-fast, 100ms) allow-discrete, display var(--a2-duration-fast, 100ms) allow-discrete;
30
+ white-space: pre-line;
31
+ width: -moz-max-content;
32
+ width: max-content;
33
+ }._content_4yxbk_1:popover-open {
34
+ --a2-mod-popover-content-opacity: 1;
35
+ }@starting-style {
36
+ ._content_4yxbk_1:popover-open {
37
+ --a2-mod-popover-content-opacity: 0;
16
38
  }
39
+ }._content_4yxbk_1[data-position]::before {
40
+ background: transparent;
41
+ content: "";
42
+ pointer-events: auto;
43
+ position: absolute;
44
+ }._content_4yxbk_1[data-position=bottom]::before {
45
+ height: var(--a2-mod-popover-bridge-size);
46
+ bottom: 100%;
47
+ left: 0;
48
+ width: 100%;
49
+ }._content_4yxbk_1[data-position=top]::before {
50
+ height: var(--a2-mod-popover-bridge-size);
51
+ left: 0;
52
+ top: 100%;
53
+ width: 100%;
54
+ }._content_4yxbk_1[data-position=left]::before {
55
+ height: 100%;
56
+ left: 100%;
57
+ top: 0;
58
+ width: var(--a2-mod-popover-bridge-size);
59
+ }._content_4yxbk_1[data-position=right]::before {
60
+ height: 100%;
61
+ right: 100%;
62
+ top: 0;
63
+ width: var(--a2-mod-popover-bridge-size);
64
+ }._scroller_4yxbk_77 {
65
+ box-sizing: border-box;
66
+ height: inherit;
67
+ max-height: inherit;
68
+ min-height: inherit;
69
+ overflow: auto;
70
+ padding: var(--a2-size-4, 1rem);
71
+ }._no-padding_4yxbk_86 ._scroller_4yxbk_77 {
72
+ padding-block: 0;
73
+ padding-inline: 0;
74
+ }._arrow_4yxbk_91 {
75
+ --a2-mod-popover-arrow-fill-color: var(--a2-popover-arrow-fill-color, var(--a2-background-color-strong, light-dark(var(--a2-color-neutral-20, #f9f9f9), var(--a2-color-neutral-800, #292929))));
76
+ fill: var(--a2-mod-popover-arrow-fill-color);
77
+ height: 0.875rem;
78
+ position: absolute;
79
+ width: 0.875rem;
80
+ }._arrow_4yxbk_91 path {
81
+ --a2-mod-popover-arrow-stroke-color: var(--a2-popover-arrow-stroke-color, var(--a2-border-color-subdued, light-dark(var(--a2-color-neutral-80, #e6e6e6), var(--a2-color-neutral-700, #404040))));
82
+ stroke: var(--a2-mod-popover-arrow-stroke-color);
83
+ stroke-dasharray: 0, 0.875rem, 0.8125rem;
84
+ stroke-linejoin: round;
85
+ stroke-width: var(--a2-size-quarter, 0.0625rem);
17
86
  }
18
- @layer base {
19
- ._content_dtl65_2 {
20
- --popover-bridge-size: 8px;
21
- width: -moz-max-content;
22
- width: max-content;
23
- max-width: calc(100% - 1.5rem);
24
- white-space: pre-line;
25
- background-color: var(--background-color-strong, #f7f7f7);
26
- border-radius: 0.375rem;
27
- box-shadow: 0rem 0.125rem 0.5rem var(--shadow-color, rgba(20, 20, 20, 0.0784313725));
28
- font-size: 1rem;
29
- position: absolute !important;
30
- opacity: 0;
31
- transition: opacity 100ms, width 100ms, height 100ms, overlay 100ms allow-discrete, display 100ms allow-discrete;
32
- }
33
- ._content_dtl65_2 ._scroller_dtl65_31 {
34
- height: inherit;
35
- box-sizing: border-box;
36
- padding: 1rem;
37
- overflow: auto;
38
- max-height: inherit;
39
- min-height: inherit;
40
- }
41
- ._arrow_dtl65_39 {
42
- fill: var(--background-color-strong, #f7f7f7);
43
- position: absolute;
44
- height: 0.875rem;
45
- width: 0.875rem;
46
- }
47
- ._arrow_dtl65_39 path {
48
- stroke: var(--border-color-subdued, #dfe0e1);
49
- stroke-width: 0.0625rem;
50
- stroke-dasharray: 0, 0.875rem, 0.8125rem;
51
- stroke-linejoin: round;
52
- }
53
- ._content_dtl65_2[data-position]::before {
54
- content: "";
55
- position: absolute;
56
- pointer-events: auto;
57
- background: transparent;
58
- }
59
- ._content_dtl65_2[data-position=bottom]::before {
60
- bottom: 100%;
61
- left: 0;
62
- width: 100%;
63
- height: var(--popover-bridge-size);
64
- }
65
- ._content_dtl65_2[data-position=top]::before {
66
- top: 100%;
67
- left: 0;
68
- width: 100%;
69
- height: var(--popover-bridge-size);
70
- }
71
- ._content_dtl65_2[data-position=left]::before {
72
- left: 100%;
73
- top: 0;
74
- height: 100%;
75
- width: var(--popover-bridge-size);
76
- }
77
- ._content_dtl65_2[data-position=right]::before {
78
- right: 100%;
79
- top: 0;
80
- height: 100%;
81
- width: var(--popover-bridge-size);
82
- }
83
- }
84
- @layer state {
85
- ._content_dtl65_2:not(:popover-open):not(dialog[open]) {
86
- display: none !important;
87
- }
88
- ._content_dtl65_2:popover-open {
89
- opacity: 1;
90
- }
91
- @starting-style {
92
- ._content_dtl65_2:popover-open {
93
- opacity: 0;
94
- }
95
- }
96
- ._content_dtl65_2._no-padding_dtl65_94 ._scroller_dtl65_31 {
97
- padding-block: 0;
98
- padding-inline: 0;
99
- }
100
87
  }
package/dist/Popover.js CHANGED
@@ -1,2 +1,2 @@
1
- export { P as Popover, P as default } from './Popover-CfG1IJP6.js';
1
+ export { P as Popover, P as default } from './Popover-CyB7yzSf.js';
2
2
  //# sourceMappingURL=Popover.js.map
@@ -3,24 +3,24 @@ import { forwardRef, useId, isValidElement } from 'react';
3
3
  import { c as cx } from './index-De1g9FRV.js';
4
4
  import { S as SvgCheckCircle } from './check_circle-CM0ukqXv.js';
5
5
  import { S as SvgError } from './error-DR_wWdYY.js';
6
- import { F as FieldLabel } from './FieldLabel-M5v4-PAV.js';
7
- import { F as Flex } from './Flex-WyyZm1bf.js';
6
+ import { F as FieldLabel } from './FieldLabel-DZWu5dMp.js';
7
+ import { F as Flex } from './Flex-DOUtHiPi.js';
8
8
  import { w as warnDeprecatedErrorUsage } from './utils-CM48ODEJ.js';
9
- import { I as Icon } from './Icon-DuIlne4x.js';
10
- import { u as useLayoutPropsUtil } from './useLayoutPropsUtil-DMDdfIah.js';
11
- import { H as Helper } from './Helper-B_FIOlhy.js';
9
+ import { I as Icon } from './Icon-BMMbp40n.js';
10
+ import { u as useLayoutPropsUtil } from './useLayoutPropsUtil-CB_zHDbW.js';
11
+ import { H as Helper } from './Helper-DtDeaYTn.js';
12
12
 
13
- import './ProgressBar.css';const bar = "_bar_1lj98_23";
14
- const indeterminate = "_indeterminate_1lj98_1";
15
- const success = "_success_1lj98_66";
16
- const error = "_error_1lj98_52";
13
+ import './ProgressBar.css';const indeterminate = "_indeterminate_r8r5u_1";
14
+ const bar = "_bar_r8r5u_21";
15
+ const success = "_success_r8r5u_65";
16
+ const error = "_error_r8r5u_61";
17
17
  const styles = {
18
- "progress-bar": "_progress-bar_1lj98_2",
19
- "bar-container": "_bar-container_1lj98_23",
20
- bar: bar,
21
- "check-icon": "_check-icon_1lj98_49",
22
- "error-icon": "_error-icon_1lj98_52",
23
18
  indeterminate: indeterminate,
19
+ "progress-bar": "_progress-bar_r8r5u_1",
20
+ "bar-container": "_bar-container_r8r5u_21",
21
+ bar: bar,
22
+ "check-icon": "_check-icon_r8r5u_57",
23
+ "error-icon": "_error-icon_r8r5u_61",
24
24
  success: success,
25
25
  error: error
26
26
  };
@@ -133,4 +133,4 @@ const ProgressBar = forwardRef(
133
133
  ProgressBar.displayName = "ProgressBar";
134
134
 
135
135
  export { ProgressBar as P };
136
- //# sourceMappingURL=ProgressBar-CFKKuXeN.js.map
136
+ //# sourceMappingURL=ProgressBar-DSrjgLTx.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ProgressBar-CFKKuXeN.js","sources":["../src/components/ProgressBar/ProgressBar.tsx"],"sourcesContent":["import {\n forwardRef,\n isValidElement,\n ComponentPropsWithoutRef,\n useId,\n AriaAttributes,\n ReactElement,\n} from \"react\";\nimport cx from \"classnames\";\nimport Check from \"@servicetitan/hammer-icon/mdi/round/check_circle.svg\";\nimport Error from \"@servicetitan/hammer-icon/mdi/round/error.svg\";\n\nimport { FieldLabel, FieldLabelProps } from \"../FieldLabel\";\nimport { Flex } from \"../Flex\";\nimport { Helper, HelperProps } from \"../../internal/components\";\nimport { warnDeprecatedErrorUsage } from \"../FieldMessage\";\nimport { Icon } from \"../Icon\";\nimport { LayoutUtilProps } from \"../../types\";\nimport { useLayoutPropsUtil } from \"../../internal/hooks\";\n\nimport styles from \"./ProgressBar.module.scss\";\n\n/**\n * Props for the ProgressBar component\n * @extends Omit<ComponentPropsWithoutRef<\"progress\">, \"value\">\n * @extends LayoutUtilProps\n */\nexport type ProgressBarProps = Omit<\n ComponentPropsWithoutRef<\"progress\">,\n \"value\"\n> &\n LayoutUtilProps & {\n /**\n * Error state for the field. Pass `true` to indicate error styling without a message.\n * Pass a string, string[], or ReactElement (deprecated) for error messages.\n * @default false\n */\n error?: boolean | string | ReactElement | string[];\n /**\n * @deprecated No longer used. Error messages always use `aria-live=\"assertive\"`.\n */\n errorAriaLive?: HelperProps[\"errorAriaLive\"];\n /**\n * Warning message(s) to display. Supports a single string or an array of strings.\n */\n warning?: string | string[];\n /**\n * Description text to display below the progress bar\n */\n description?: HelperProps[\"description\"];\n } & (\n | {\n /**\n * Label text for the progress bar\n */\n label: FieldLabelProps[\"children\"];\n /**\n * Additional props for the label component\n */\n labelProps?: Omit<FieldLabelProps, \"children\" | \"id\" | \"required\">;\n }\n | {\n label?: never;\n labelProps?: never;\n /**\n * Accessible label for the progress bar (alternative to label)\n */\n [\"aria-label\"]: Exclude<AriaAttributes[\"aria-label\"], undefined>;\n }\n | {\n label?: never;\n labelProps?: never;\n /**\n * ID of element that labels the progress bar (alternative to label)\n */\n [\"aria-labelledby\"]: Exclude<\n AriaAttributes[\"aria-labelledby\"],\n undefined\n >;\n }\n ) &\n (\n | {\n /**\n * Current progress value (0-100 or 0-max)\n */\n value: `${number}` | number;\n /**\n * Whether the progress bar is in indeterminate state\n * @default false\n */\n indeterminate?: false;\n }\n | {\n value?: never;\n /**\n * Whether the progress bar is in indeterminate state\n */\n indeterminate: true;\n }\n );\n\n/**\n * ProgressBar component for displaying progress indicators.\n *\n * Features:\n * - Supports both determinate and indeterminate progress states\n * - Optional label with customizable label props\n * - Error state with error message display\n * - Success state with check icon when value equals max\n * - Description text support\n * - Accessibility support with proper ARIA attributes\n * - Layout utility props for positioning and spacing\n * - Flexible labeling options (label, aria-label, aria-labelledby)\n * - Error and success visual indicators\n *\n * @example\n * <ProgressBar\n * label=\"Upload Progress\"\n * value={75}\n * max={100}\n * description=\"Uploading files...\"\n * />\n *\n * @example\n * <ProgressBar\n * label=\"Processing\"\n * indeterminate\n * description=\"Please wait...\"\n * />\n *\n * @example\n * <ProgressBar\n * aria-label=\"Download progress\"\n * value={50}\n * error=\"Download failed\"\n * />\n */\nexport const ProgressBar = forwardRef<HTMLDivElement, ProgressBarProps>(\n (props, ref) => {\n const { layoutStyles, componentProps } = useLayoutPropsUtil(props);\n const {\n className,\n style,\n value,\n children,\n indeterminate,\n errorAriaLive,\n description,\n warning,\n error = false,\n max = 100,\n ...mainProps\n } = componentProps;\n const styleCombined = {\n ...style,\n ...layoutStyles,\n };\n\n warnDeprecatedErrorUsage(\"ProgressBar\", error);\n\n const errorMessages =\n typeof error === \"boolean\" || error === undefined ? undefined : error;\n const labelUid = useId();\n const isSuccess = typeof value !== \"undefined\" && +value >= +max;\n\n if (\"label\" in props && !!props.label) {\n const { label, labelProps, ...rest } = mainProps;\n\n const ProgressBarClassNames = cx(\n [styles[\"progress-bar\"]],\n\n className,\n {\n [styles[`error`]]: error,\n [styles[`success`]]: isSuccess,\n },\n );\n\n return (\n <div\n className={ProgressBarClassNames}\n data-anv=\"progress-bar\"\n style={styleCombined}\n ref={ref}\n >\n <Flex justifyContent=\"space-between\" alignItems=\"center\">\n <FieldLabel id={labelUid} {...labelProps}>\n {label}\n </FieldLabel>\n {isSuccess && !error ? (\n <Icon className={styles[\"check-icon\"]} svg={Check} />\n ) : null}\n {error ? (\n <Icon className={styles[\"error-icon\"]} svg={Error} />\n ) : null}\n </Flex>\n <div className={styles[\"bar-container\"]}>\n <progress\n aria-labelledby={labelUid}\n className={styles[\"bar\"]}\n value={value}\n max={max}\n {...rest}\n />\n </div>\n {errorMessages || warning || description ? (\n <Helper\n error={\n typeof errorMessages === \"string\" ||\n Array.isArray(errorMessages)\n ? errorMessages\n : undefined\n }\n warning={warning}\n errorMessage={\n isValidElement(errorMessages) ? errorMessages : undefined\n }\n description={description}\n />\n ) : null}\n </div>\n );\n }\n\n const ProgressBarClassNames = cx([styles[\"progress-bar\"]], className, {\n [styles[`error`]]: error,\n [styles[`success`]]: isSuccess,\n });\n\n return (\n <div\n className={ProgressBarClassNames}\n data-anv=\"progress-bar\"\n style={styleCombined}\n ref={ref}\n >\n <div className={styles[\"bar-container\"]}>\n <progress\n className={styles[\"bar\"]}\n max={max}\n value={value}\n {...mainProps}\n />\n </div>\n {errorMessages || warning || description ? (\n <Helper\n error={\n typeof errorMessages === \"string\" || Array.isArray(errorMessages)\n ? errorMessages\n : undefined\n }\n warning={warning}\n errorMessage={\n isValidElement(errorMessages) ? errorMessages : undefined\n }\n description={description}\n />\n ) : null}\n </div>\n );\n },\n);\n\nProgressBar.displayName = \"ProgressBar\";\n"],"names":["ProgressBarClassNames","Check","Error"],"mappings":"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"}
1
+ {"version":3,"file":"ProgressBar-DSrjgLTx.js","sources":["../src/components/ProgressBar/ProgressBar.tsx"],"sourcesContent":["import {\n forwardRef,\n isValidElement,\n ComponentPropsWithoutRef,\n useId,\n AriaAttributes,\n ReactElement,\n} from \"react\";\nimport cx from \"classnames\";\nimport Check from \"@servicetitan/hammer-icon/mdi/round/check_circle.svg\";\nimport Error from \"@servicetitan/hammer-icon/mdi/round/error.svg\";\n\nimport { FieldLabel, FieldLabelProps } from \"../FieldLabel\";\nimport { Flex } from \"../Flex\";\nimport { Helper, HelperProps } from \"../../internal/components\";\nimport { warnDeprecatedErrorUsage } from \"../FieldMessage\";\nimport { Icon } from \"../Icon\";\nimport { LayoutUtilProps } from \"../../types\";\nimport { useLayoutPropsUtil } from \"../../internal/hooks\";\n\nimport styles from \"./ProgressBar.module.scss\";\n\n/**\n * Props for the ProgressBar component\n * @extends Omit<ComponentPropsWithoutRef<\"progress\">, \"value\">\n * @extends LayoutUtilProps\n */\nexport type ProgressBarProps = Omit<\n ComponentPropsWithoutRef<\"progress\">,\n \"value\"\n> &\n LayoutUtilProps & {\n /**\n * Error state for the field. Pass `true` to indicate error styling without a message.\n * Pass a string, string[], or ReactElement (deprecated) for error messages.\n * @default false\n */\n error?: boolean | string | ReactElement | string[];\n /**\n * @deprecated No longer used. Error messages always use `aria-live=\"assertive\"`.\n */\n errorAriaLive?: HelperProps[\"errorAriaLive\"];\n /**\n * Warning message(s) to display. Supports a single string or an array of strings.\n */\n warning?: string | string[];\n /**\n * Description text to display below the progress bar\n */\n description?: HelperProps[\"description\"];\n } & (\n | {\n /**\n * Label text for the progress bar\n */\n label: FieldLabelProps[\"children\"];\n /**\n * Additional props for the label component\n */\n labelProps?: Omit<FieldLabelProps, \"children\" | \"id\" | \"required\">;\n }\n | {\n label?: never;\n labelProps?: never;\n /**\n * Accessible label for the progress bar (alternative to label)\n */\n [\"aria-label\"]: Exclude<AriaAttributes[\"aria-label\"], undefined>;\n }\n | {\n label?: never;\n labelProps?: never;\n /**\n * ID of element that labels the progress bar (alternative to label)\n */\n [\"aria-labelledby\"]: Exclude<\n AriaAttributes[\"aria-labelledby\"],\n undefined\n >;\n }\n ) &\n (\n | {\n /**\n * Current progress value (0-100 or 0-max)\n */\n value: `${number}` | number;\n /**\n * Whether the progress bar is in indeterminate state\n * @default false\n */\n indeterminate?: false;\n }\n | {\n value?: never;\n /**\n * Whether the progress bar is in indeterminate state\n */\n indeterminate: true;\n }\n );\n\n/**\n * ProgressBar component for displaying progress indicators.\n *\n * Features:\n * - Supports both determinate and indeterminate progress states\n * - Optional label with customizable label props\n * - Error state with error message display\n * - Success state with check icon when value equals max\n * - Description text support\n * - Accessibility support with proper ARIA attributes\n * - Layout utility props for positioning and spacing\n * - Flexible labeling options (label, aria-label, aria-labelledby)\n * - Error and success visual indicators\n *\n * @example\n * <ProgressBar\n * label=\"Upload Progress\"\n * value={75}\n * max={100}\n * description=\"Uploading files...\"\n * />\n *\n * @example\n * <ProgressBar\n * label=\"Processing\"\n * indeterminate\n * description=\"Please wait...\"\n * />\n *\n * @example\n * <ProgressBar\n * aria-label=\"Download progress\"\n * value={50}\n * error=\"Download failed\"\n * />\n */\nexport const ProgressBar = forwardRef<HTMLDivElement, ProgressBarProps>(\n (props, ref) => {\n const { layoutStyles, componentProps } = useLayoutPropsUtil(props);\n const {\n className,\n style,\n value,\n children,\n indeterminate,\n errorAriaLive,\n description,\n warning,\n error = false,\n max = 100,\n ...mainProps\n } = componentProps;\n const styleCombined = {\n ...style,\n ...layoutStyles,\n };\n\n warnDeprecatedErrorUsage(\"ProgressBar\", error);\n\n const errorMessages =\n typeof error === \"boolean\" || error === undefined ? undefined : error;\n const labelUid = useId();\n const isSuccess = typeof value !== \"undefined\" && +value >= +max;\n\n if (\"label\" in props && !!props.label) {\n const { label, labelProps, ...rest } = mainProps;\n\n const ProgressBarClassNames = cx(\n [styles[\"progress-bar\"]],\n\n className,\n {\n [styles[`error`]]: error,\n [styles[`success`]]: isSuccess,\n },\n );\n\n return (\n <div\n className={ProgressBarClassNames}\n data-anv=\"progress-bar\"\n style={styleCombined}\n ref={ref}\n >\n <Flex justifyContent=\"space-between\" alignItems=\"center\">\n <FieldLabel id={labelUid} {...labelProps}>\n {label}\n </FieldLabel>\n {isSuccess && !error ? (\n <Icon className={styles[\"check-icon\"]} svg={Check} />\n ) : null}\n {error ? (\n <Icon className={styles[\"error-icon\"]} svg={Error} />\n ) : null}\n </Flex>\n <div className={styles[\"bar-container\"]}>\n <progress\n aria-labelledby={labelUid}\n className={styles[\"bar\"]}\n value={value}\n max={max}\n {...rest}\n />\n </div>\n {errorMessages || warning || description ? (\n <Helper\n error={\n typeof errorMessages === \"string\" ||\n Array.isArray(errorMessages)\n ? errorMessages\n : undefined\n }\n warning={warning}\n errorMessage={\n isValidElement(errorMessages) ? errorMessages : undefined\n }\n description={description}\n />\n ) : null}\n </div>\n );\n }\n\n const ProgressBarClassNames = cx([styles[\"progress-bar\"]], className, {\n [styles[`error`]]: error,\n [styles[`success`]]: isSuccess,\n });\n\n return (\n <div\n className={ProgressBarClassNames}\n data-anv=\"progress-bar\"\n style={styleCombined}\n ref={ref}\n >\n <div className={styles[\"bar-container\"]}>\n <progress\n className={styles[\"bar\"]}\n max={max}\n value={value}\n {...mainProps}\n />\n </div>\n {errorMessages || warning || description ? (\n <Helper\n error={\n typeof errorMessages === \"string\" || Array.isArray(errorMessages)\n ? errorMessages\n : undefined\n }\n warning={warning}\n errorMessage={\n isValidElement(errorMessages) ? errorMessages : undefined\n }\n description={description}\n />\n ) : null}\n </div>\n );\n },\n);\n\nProgressBar.displayName = \"ProgressBar\";\n"],"names":["ProgressBarClassNames","Check","Error"],"mappings":"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"}