@servicetitan/anvil2 1.44.2 → 1.45.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.
- package/CHANGELOG.md +20 -7
- package/README.md +0 -8
- package/dist/Alert-BNGvfMAV.js +112 -0
- package/dist/Alert-BNGvfMAV.js.map +1 -0
- package/dist/{Alert-C3WoRkeN.css → Alert.css} +0 -1
- package/dist/Alert.js +1 -1
- package/dist/{Announcement-ButSjdLn.js → Announcement-CoheCP1i.js} +23 -28
- package/dist/Announcement-CoheCP1i.js.map +1 -0
- package/dist/Announcement.css +0 -1
- package/dist/Announcement.js +1 -1
- package/dist/{HammerProvider-vt3DkcCZ-06BeBrPu.js → AnvilProvider-C_qRQnE6.js} +22 -12
- package/dist/AnvilProvider-C_qRQnE6.js.map +1 -0
- package/dist/AnvilProvider.js +1 -1
- package/dist/{Avatar-DREZJN2K.js → Avatar-CyGjhToG.js} +3 -10
- package/dist/Avatar-CyGjhToG.js.map +1 -0
- package/dist/{Avatar-C7cbRTCt-DCvzmr2C.js → Avatar-D07f9NH_.js} +9 -9
- package/dist/Avatar-D07f9NH_.js.map +1 -0
- package/dist/{Avatar-C7cbRTCt.css → Avatar.css} +0 -1
- package/dist/Avatar.js +2 -1
- package/dist/Avatar.js.map +1 -1
- package/dist/{Badge-7aZfE-LH.js → Badge-DCA9mfc2.js} +5 -12
- package/dist/Badge-DCA9mfc2.js.map +1 -0
- package/dist/Badge.css +0 -1
- package/dist/Badge.js +1 -1
- package/dist/{Breadcrumbs-BMbkH9hL-BUjQksuj.js → Breadcrumbs-C4_PEolS.js} +7 -7
- package/dist/Breadcrumbs-C4_PEolS.js.map +1 -0
- package/dist/{Breadcrumbs-BMbkH9hL.css → Breadcrumbs.css} +0 -1
- package/dist/Breadcrumbs.js +1 -1
- package/dist/{Button-BaHFf1AT-BQy-PFB5.js → Button-BxFXQ0-n.js} +31 -16
- package/dist/Button-BxFXQ0-n.js.map +1 -0
- package/dist/Button.css +59 -46
- package/dist/Button.js +1 -1
- package/dist/Button.module-pUNSKoVC.js +25 -0
- package/dist/Button.module-pUNSKoVC.js.map +1 -0
- package/dist/ButtonCompound-BF2Q6gGX.js +64 -0
- package/dist/ButtonCompound-BF2Q6gGX.js.map +1 -0
- package/dist/ButtonCompound.js +1 -1
- package/dist/{ButtonLink-5qlX0uZx-b9H7MGhk.js → ButtonLink-CXv65WVV.js} +35 -17
- package/dist/ButtonLink-CXv65WVV.js.map +1 -0
- package/dist/ButtonLink.js +1 -1
- package/dist/{ButtonToggle-Bm4KRl3o-B1-LbfjY.js → ButtonToggle-pSwg7NvT.js} +26 -5
- package/dist/ButtonToggle-pSwg7NvT.js.map +1 -0
- package/dist/ButtonToggle.js +1 -1
- package/dist/{Calendar-BvftKznl-D4_xp9Rv.js → Calendar-Dq_of5A3.js} +324 -255
- package/dist/Calendar-Dq_of5A3.js.map +1 -0
- package/dist/{Calendar-BvftKznl.css → Calendar.css} +0 -1
- package/dist/Calendar.js +1 -1
- package/dist/{Card-ZknG-yim-7W6rYSFV.js → Card-vTYeSkxt.js} +3 -3
- package/dist/Card-vTYeSkxt.js.map +1 -0
- package/dist/{Card-ZknG-yim.css → Card.css} +0 -1
- package/dist/Card.js +1 -1
- package/dist/{Checkbox-zg8LVvB6.js → Checkbox-3y2d9mBd.js} +4 -10
- package/dist/Checkbox-3y2d9mBd.js.map +1 -0
- package/dist/{Checkbox-DyHm7Ntt-DYw5QL3l.js → Checkbox-BiOzGpgJ.js} +9 -11
- package/dist/Checkbox-BiOzGpgJ.js.map +1 -0
- package/dist/Checkbox.js +2 -1
- package/dist/Checkbox.js.map +1 -1
- package/dist/{Chip-MbBEXeAm-DmAcwPRJ.js → Chip-Bz-vlQ4D.js} +37 -10
- package/dist/Chip-Bz-vlQ4D.js.map +1 -0
- package/dist/{Chip-MbBEXeAm.css → Chip.css} +0 -1
- package/dist/Chip.js +1 -1
- package/dist/Combobox.js +1 -1
- package/dist/{DateField-Bqsnpt8S.js → DateField-B2mnasH5.js} +42 -45
- package/dist/DateField-B2mnasH5.js.map +1 -0
- package/dist/DateField.js +1 -1
- package/dist/DateFieldRange-DPbyzuHb.js +557 -0
- package/dist/DateFieldRange-DPbyzuHb.js.map +1 -0
- package/dist/DateFieldRange.js +1 -1
- package/dist/DateFieldSingle-CfAJDcx9.js +450 -0
- package/dist/DateFieldSingle-CfAJDcx9.js.map +1 -0
- package/dist/DateFieldSingle.js +1 -1
- package/dist/DateFieldYearless-ydxcsmRV.js +266 -0
- package/dist/DateFieldYearless-ydxcsmRV.js.map +1 -0
- package/dist/DateFieldYearless.js +1 -1
- package/dist/{DaysOfTheWeek-ImBPjEvl.js → DaysOfTheWeek-BYvE9QK5.js} +9 -28
- package/dist/DaysOfTheWeek-BYvE9QK5.js.map +1 -0
- package/dist/DaysOfTheWeek.css +0 -1
- package/dist/DaysOfTheWeek.js +1 -1
- package/dist/{Details-DVg0EOkv.js → Details-CF8DImjw.js} +34 -100
- package/dist/Details-CF8DImjw.js.map +1 -0
- package/dist/Details.css +0 -1
- package/dist/Details.js +1 -1
- package/dist/{Dialog-BR6f-XRH.js → Dialog-DpH2Qvbd.js} +71 -166
- package/dist/Dialog-DpH2Qvbd.js.map +1 -0
- package/dist/Dialog.css +29 -30
- package/dist/Dialog.js +1 -1
- package/dist/{Divider-B0xGfyWE-f5-ThMiS.js → Divider-DJe8kLf2.js} +3 -3
- package/dist/Divider-DJe8kLf2.js.map +1 -0
- package/dist/{Divider-B0xGfyWE.css → Divider.css} +0 -1
- package/dist/Divider.js +1 -1
- package/dist/Dnd.js +1 -1
- package/dist/DndSort.css +0 -1
- package/dist/DndSort.js +5545 -1
- package/dist/DndSort.js.map +1 -1
- package/dist/Drawer-DI_k6W2k.js +377 -0
- package/dist/Drawer-DI_k6W2k.js.map +1 -0
- package/dist/Drawer.css +161 -0
- package/dist/Drawer.js +1 -1
- package/dist/{floating-ui.react-BFNinq1w.js → DrawerContext-DboTgTmo.js} +958 -908
- package/dist/DrawerContext-DboTgTmo.js.map +1 -0
- package/dist/{EditCard-B_n1uFkv.js → EditCard-WKzZ2XCz.js} +12 -19
- package/dist/EditCard-WKzZ2XCz.js.map +1 -0
- package/dist/EditCard.css +0 -1
- package/dist/EditCard.js +1 -1
- package/dist/FieldLabel-BfnCXung.js +87 -0
- package/dist/FieldLabel-BfnCXung.js.map +1 -0
- package/dist/FieldLabel.css +60 -0
- package/dist/FieldLabel.js +1 -1
- package/dist/{FieldMessage-Bobp105T-DYhStLY4.js → FieldMessage-B7uQ8vmr.js} +3 -3
- package/dist/FieldMessage-B7uQ8vmr.js.map +1 -0
- package/dist/{FieldMessage-Bobp105T.css → FieldMessage.css} +0 -2
- package/dist/FieldMessage.js +1 -1
- package/dist/{Flex-CiK7uNUu-BfxHG4L0.js → Flex-BdQMekvA.js} +3 -3
- package/dist/Flex-BdQMekvA.js.map +1 -0
- package/dist/{Flex-CiK7uNUu.css → Flex.css} +0 -1
- package/dist/Flex.js +1 -1
- package/dist/{Grid-DFAd8mTe.js → Grid-MGUC698u.js} +48 -30
- package/dist/Grid-MGUC698u.js.map +1 -0
- package/dist/Grid.css +0 -1
- package/dist/Grid.js +1 -1
- package/dist/{Helper-h7k80qls-DHPFHTvI.js → Helper-BkIDJqgA.js} +4 -4
- package/dist/Helper-BkIDJqgA.js.map +1 -0
- package/dist/{Helper-h7k80qls.css → Helper.css} +0 -1
- package/dist/{Icon-B6HmlQiR-BxQkO3X5.js → Icon-D8SPKeO4.js} +3 -3
- package/dist/Icon-D8SPKeO4.js.map +1 -0
- package/dist/{Icon-B6HmlQiR.css → Icon.css} +0 -1
- package/dist/Icon.js +1 -1
- package/dist/{InputMask-BuO8lNAB-DdxdO5Jw.js → InputMask-O_qi1p_3.js} +88 -67
- package/dist/InputMask-O_qi1p_3.js.map +1 -0
- package/dist/InputMask.js +1 -1
- package/dist/Link-eRsLWPaQ.js +103 -0
- package/dist/Link-eRsLWPaQ.js.map +1 -0
- package/dist/{Link-MiffPrW9.css → Link.css} +0 -1
- package/dist/Link.js +1 -1
- package/dist/Link.module-Cf17JWod.js +12 -0
- package/dist/Link.module-Cf17JWod.js.map +1 -0
- package/dist/LinkButton-2lXfrVoU.js +64 -0
- package/dist/LinkButton-2lXfrVoU.js.map +1 -0
- package/dist/LinkButton.js +1 -75
- package/dist/LinkButton.js.map +1 -1
- package/dist/{ListView-DVPhWDCM.js → ListView-jR2ZkBB7.js} +151 -234
- package/dist/ListView-jR2ZkBB7.js.map +1 -0
- package/dist/ListView.css +0 -1
- package/dist/ListView.js +1 -1
- package/dist/{ListView.module-MVsNF0X0-MVsNF0X0.js → ListView.module-MVsNF0X0.js} +1 -1
- package/dist/ListView.module-MVsNF0X0.js.map +1 -0
- package/dist/{Listbox-B-WUuj-_-BWWeWtLW.js → Listbox-CUhMbFm2.js} +67 -50
- package/dist/Listbox-CUhMbFm2.js.map +1 -0
- package/dist/Listbox.css +0 -1
- package/dist/Listbox.js +1 -1
- package/dist/{Listbox.module-DcBE8Zmo-DcBE8Zmo.js → Listbox.module-DcBE8Zmo.js} +1 -1
- package/dist/Listbox.module-DcBE8Zmo.js.map +1 -0
- package/dist/{LocalizationContext-UsmB5mnR-BUIYgNp2.js → LocalizationContext-UsmB5mnR.js} +2 -2
- package/dist/LocalizationContext-UsmB5mnR.js.map +1 -0
- package/dist/{LocalizationProvider-VtRAfGBT-Bo8XuFoE.js → LocalizationProvider-DEZyjW5d.js} +3 -3
- package/dist/LocalizationProvider-DEZyjW5d.js.map +1 -0
- package/dist/LocalizationProvider.d.ts +0 -4
- package/dist/LocalizationProvider.js +2 -2
- package/dist/{Menu-TtVJnSrA-yBYichuJ.js → Menu-C8we5CHP.js} +52 -22
- package/dist/Menu-C8we5CHP.js.map +1 -0
- package/dist/{Menu-TtVJnSrA.css → Menu.css} +0 -2
- package/dist/Menu.js +1 -1
- package/dist/{NumberField-C9lMsPMD.js → NumberField-1_gRsWT4.js} +158 -175
- package/dist/NumberField-1_gRsWT4.js.map +1 -0
- package/dist/NumberField.css +7 -8
- package/dist/NumberField.js +1 -1
- package/dist/{Overflow-CFClqFVC.css → Overflow.css} +0 -2
- package/dist/Overflow.js +400 -1
- package/dist/Overflow.js.map +1 -1
- package/dist/{Page-CGAylFKz.js → Page-CY6QRlvb.js} +14 -14
- package/dist/Page-CY6QRlvb.js.map +1 -0
- package/dist/Page.js +1 -1
- package/dist/{Pagination-DU_qvFRR.js → Pagination-ta8a2cJN.js} +29 -30
- package/dist/Pagination-ta8a2cJN.js.map +1 -0
- package/dist/Pagination.css +28 -28
- package/dist/Pagination.js +1 -1
- package/dist/{Popover-CU2cGVD8-Casl3vM1.js → Popover-r26xMIfm.js} +260 -229
- package/dist/Popover-r26xMIfm.js.map +1 -0
- package/dist/{Popover-CU2cGVD8.css → Popover.css} +0 -2
- package/dist/Popover.js +1 -1
- package/dist/{PortalProvider-9lXkQ0xY-BKoGegS1.js → PortalProvider-9lXkQ0xY.js} +2 -2
- package/dist/PortalProvider-9lXkQ0xY.js.map +1 -0
- package/dist/PortalProvider.d.ts +0 -4
- package/dist/PortalProvider.js +1 -1
- package/dist/ProgressBar-BnXuQ6Bx.js +130 -0
- package/dist/ProgressBar-BnXuQ6Bx.js.map +1 -0
- package/dist/ProgressBar.css +89 -0
- package/dist/ProgressBar.js +1 -1
- package/dist/{Radio-DnOuBPi_.js → Radio-CwmRUIzo.js} +4 -10
- package/dist/Radio-CwmRUIzo.js.map +1 -0
- package/dist/Radio.js +2 -1
- package/dist/Radio.js.map +1 -1
- package/dist/{Radio-DQ_VQFGZ-SdFBlDnE.js → RadioGroup-BNCWIHOG.js} +84 -105
- package/dist/RadioGroup-BNCWIHOG.js.map +1 -0
- package/dist/{Radio-DQ_VQFGZ.css → RadioGroup.css} +0 -1
- package/dist/{SearchField-BGPqpnVd.js → SearchField-BKXkoWPs.js} +21 -27
- package/dist/SearchField-BKXkoWPs.js.map +1 -0
- package/dist/SearchField.css +0 -1
- package/dist/SearchField.js +1 -1
- package/dist/{SegmentedControl-DY1PSYmd.js → SegmentedControl-CsjjV1Dz.js} +32 -80
- package/dist/SegmentedControl-CsjjV1Dz.js.map +1 -0
- package/dist/SegmentedControl.css +0 -1
- package/dist/SegmentedControl.js +1 -1
- package/dist/{SelectCard-LSAl_7Lh-BYtfe9PC.js → SelectCard-DOGCG0zr.js} +17 -17
- package/dist/SelectCard-DOGCG0zr.js.map +1 -0
- package/dist/{SelectCard-LSAl_7Lh.css → SelectCard.css} +0 -1
- package/dist/SelectCard.js +1 -1
- package/dist/{SelectTrigger-C2w-flvK.js → SelectTrigger-BMo0e-F7.js} +31 -44
- package/dist/SelectTrigger-BMo0e-F7.js.map +1 -0
- package/dist/SelectTrigger.js +1 -1
- package/dist/{SelectTriggerBase-Dj154EN4-BtTvR-Nh.js → SelectTriggerBase-BMMxnXrw.js} +54 -40
- package/dist/SelectTriggerBase-BMMxnXrw.js.map +1 -0
- package/dist/{SelectTriggerBase-Dj154EN4.css → SelectTriggerBase.css} +68 -54
- package/dist/{SideNav-Bh_pVeEw.js → SideNav-CBAzYyML.js} +71 -154
- package/dist/SideNav-CBAzYyML.js.map +1 -0
- package/dist/SideNav.css +0 -1
- package/dist/SideNav.js +1 -1
- package/dist/Skeleton.css +0 -1
- package/dist/Skeleton.d.ts +0 -4
- package/dist/Skeleton.js +190 -1
- package/dist/Skeleton.js.map +1 -1
- package/dist/{Spinner-DliJVzdW-BQlZEj4V.js → Spinner-wmO8Epw0.js} +2 -2
- package/dist/Spinner-wmO8Epw0.js.map +1 -0
- package/dist/{Spinner-DliJVzdW.css → Spinner.css} +0 -1
- package/dist/Spinner.js +1 -1
- package/dist/{SrOnly-BsKDHetF-B93X65F1.js → SrOnly-CTsYSuby.js} +2 -2
- package/dist/SrOnly-CTsYSuby.js.map +1 -0
- package/dist/{SrOnly-BsKDHetF.css → SrOnly.css} +0 -1
- package/dist/SrOnly.js +1 -1
- package/dist/{Stepper-BtbDBIzz.js → Stepper-D-fOH9TF.js} +142 -326
- package/dist/Stepper-D-fOH9TF.js.map +1 -0
- package/dist/Stepper.css +43 -44
- package/dist/Stepper.js +1 -1
- package/dist/{Switch-DAQFzi-X.js → Switch-C2ddZcr9.js} +22 -28
- package/dist/Switch-C2ddZcr9.js.map +1 -0
- package/dist/Switch.css +0 -1
- package/dist/Switch.js +1 -1
- package/dist/{Tab-BSC7e4rM.js → Tab-wNucMTgo.js} +42 -120
- package/dist/Tab-wNucMTgo.js.map +1 -0
- package/dist/Tab.css +0 -1
- package/dist/Tab.js +1 -1
- package/dist/{Text-CED_yrId-DsRYZw2-.js → Text-BqvcbXyp.js} +3 -3
- package/dist/Text-BqvcbXyp.js.map +1 -0
- package/dist/{Text-CED_yrId.css → Text.css} +0 -1
- package/dist/Text.js +1 -1
- package/dist/TextField-CwgE_JJU.js +13 -0
- package/dist/TextField-CwgE_JJU.js.map +1 -0
- package/dist/{TextField-DoPP1CQ--UWAOTYiv.js → TextField-DlsZEkS0.js} +29 -12
- package/dist/TextField-DlsZEkS0.js.map +1 -0
- package/dist/TextField.css +0 -1
- package/dist/TextField.js +1 -1
- package/dist/{TextField.module-EkKlj66e-EkKlj66e.js → TextField.module-EkKlj66e.js} +1 -1
- package/dist/TextField.module-EkKlj66e.js.map +1 -0
- package/dist/{Textarea-D2AAZ1L3.js → Textarea-DU-SpoDL.js} +38 -44
- package/dist/Textarea-DU-SpoDL.js.map +1 -0
- package/dist/Textarea.css +0 -1
- package/dist/Textarea.js +1 -1
- package/dist/{ThemeProvider-Q3ji6Rpx-DBXlAuQ8.js → ThemeProvider-Be3Pvtpz.js} +6 -8
- package/dist/ThemeProvider-Be3Pvtpz.js.map +1 -0
- package/dist/{ThemeProvider-Q3ji6Rpx.css → ThemeProvider.css} +0 -1
- package/dist/ThemeProvider.d.ts +0 -4
- package/dist/ThemeProvider.js +2 -1
- package/dist/ThemeProvider.js.map +1 -1
- package/dist/ThemeProviderContext-l52GohYT.js +8 -0
- package/dist/ThemeProviderContext-l52GohYT.js.map +1 -0
- package/dist/{TimeField-tA9uo4lK.js → TimeField-CfhyRfX9.js} +229 -215
- package/dist/TimeField-CfhyRfX9.js.map +1 -0
- package/dist/TimeField.css +0 -1
- package/dist/TimeField.d.ts +4 -0
- package/dist/TimeField.js +1 -1
- package/dist/Toast.js +2 -1
- package/dist/Toast.js.map +1 -1
- package/dist/Toaster-BgjT0p8b.js +1124 -0
- package/dist/Toaster-BgjT0p8b.js.map +1 -0
- package/dist/{toast-BhV_Ask2.js → Toaster-CfC9wod0.js} +5 -7
- package/dist/Toaster-CfC9wod0.js.map +1 -0
- package/dist/Toaster.css +235 -0
- package/dist/{Toolbar-CSWhVSUM.js → Toolbar-DK7tXy_W.js} +163 -279
- package/dist/Toolbar-DK7tXy_W.js.map +1 -0
- package/dist/Toolbar.css +28 -19
- package/dist/Toolbar.js +1 -1
- package/dist/Tooltip-BI3Xs75X.js +730 -0
- package/dist/Tooltip-BI3Xs75X.js.map +1 -0
- package/dist/Tooltip.css +99 -0
- package/dist/Tooltip.js +1 -1
- package/dist/assets/icons/st/atlas_gradient.svg +1 -0
- package/dist/assets/icons/st/atlas_logo.svg +1 -0
- package/dist/assets/icons/st/atlas_simple.svg +1 -0
- package/dist/assets/icons/st.ts +3 -0
- package/dist/{check_circle-BGfigqq-.js → check_circle-Dja-C2lM.js} +2 -4
- package/dist/check_circle-Dja-C2lM.js.map +1 -0
- package/dist/{childrenToString-Bz9MqbHb-Bz9MqbHb.js → childrenToString-Bz9MqbHb.js} +1 -1
- package/dist/childrenToString-Bz9MqbHb.js.map +1 -0
- package/dist/components/Alert/Alert.d.ts +26 -8
- package/dist/components/Announcement/Announcement.d.ts +26 -8
- package/dist/components/Avatar/Avatar.d.ts +2 -48
- package/dist/components/Avatar/AvatarGroup.d.ts +39 -0
- package/dist/components/Avatar/index.d.ts +1 -0
- package/dist/components/Avatar/internal/Avatar.d.ts +58 -0
- package/dist/components/Avatar/internal/AvatarBase.d.ts +75 -0
- package/dist/components/Badge/Badge.d.ts +31 -8
- package/dist/components/Breadcrumbs/Breadcrumbs.d.ts +23 -14
- package/dist/components/Breadcrumbs/BreadcrumbsLink.d.ts +23 -0
- package/dist/components/Breadcrumbs/index.d.ts +1 -0
- package/dist/components/Button/Button.d.ts +43 -9
- package/dist/components/ButtonCompound/ButtonCompound.d.ts +20 -7
- package/dist/components/ButtonLink/ButtonLink.d.ts +66 -15
- package/dist/components/ButtonToggle/ButtonToggle.d.ts +46 -11
- package/dist/components/Calendar/Calendar.d.ts +149 -36
- package/dist/components/Calendar/CalendarContext.d.ts +153 -0
- package/dist/components/Calendar/CalendarMonth.d.ts +9 -0
- package/dist/components/Calendar/CalendarMonthButton.d.ts +16 -0
- package/dist/components/Calendar/CalendarNextButton.d.ts +11 -0
- package/dist/components/Calendar/CalendarNowButton.d.ts +20 -0
- package/dist/components/Calendar/CalendarPrevButton.d.ts +11 -0
- package/dist/components/Calendar/CalendarYearButton.d.ts +15 -0
- package/dist/components/Calendar/index.d.ts +9 -2
- package/dist/components/Calendar/internal/CalendarDay.d.ts +21 -0
- package/dist/components/Calendar/internal/CalendarMonthSelection.d.ts +25 -0
- package/dist/components/Calendar/internal/CalendarWeek.d.ts +28 -0
- package/dist/components/Calendar/internal/CalendarYearSelection.d.ts +25 -0
- package/dist/components/Calendar/internal/utils.d.ts +12 -0
- package/dist/components/Card/Card.d.ts +26 -16
- package/dist/components/Checkbox/Checkbox.d.ts +3 -29
- package/dist/components/Checkbox/CheckboxGroup.d.ts +53 -0
- package/dist/components/Checkbox/index.d.ts +2 -0
- package/dist/components/Checkbox/internal/Checkbox.d.ts +133 -0
- package/dist/components/Checkbox/types.d.ts +4 -0
- package/dist/components/Chip/Chip.d.ts +4 -3
- package/dist/components/Chip/internal/Chip.d.ts +108 -0
- package/dist/components/Combobox/Combobox.d.ts +11 -283
- package/dist/components/Combobox/ComboboxContent.d.ts +59 -0
- package/dist/components/Combobox/ComboboxEmpty.d.ts +26 -0
- package/dist/components/Combobox/ComboboxItem.d.ts +34 -0
- package/dist/components/Combobox/ComboboxList.d.ts +31 -0
- package/dist/components/Combobox/ComboboxMockData.d.ts +44 -0
- package/dist/components/Combobox/ComboboxSelect.d.ts +59 -0
- package/dist/components/Combobox/ComboboxTrigger.d.ts +43 -0
- package/dist/components/Combobox/ComboboxTypes.d.ts +374 -0
- package/dist/components/Combobox/index.d.ts +10 -3
- package/dist/components/Combobox/internal/ComboboxContext.d.ts +8 -0
- package/dist/components/Combobox/internal/ComboboxGroupContext.d.ts +8 -0
- package/dist/components/Combobox/internal/ComboboxLegacy/ComboboxLegacy.d.ts +131 -0
- package/dist/components/Combobox/internal/ComboboxLegacy/ComboboxLegacyContent.d.ts +20 -0
- package/dist/components/Combobox/internal/ComboboxLegacy/ComboboxLegacyEmpty.d.ts +5 -0
- package/dist/components/Combobox/internal/ComboboxLegacy/ComboboxLegacyItem.d.ts +26 -0
- package/dist/components/Combobox/internal/ComboboxLegacy/ComboboxLegacyList.d.ts +5 -0
- package/dist/components/Combobox/internal/ComboboxLegacy/ComboboxLegacyMockData.d.ts +37 -0
- package/dist/components/Combobox/internal/ComboboxLegacy/ComboboxLegacyTrigger.d.ts +21 -0
- package/dist/components/Combobox/internal/ComboboxLegacy/ComboboxLegacyUtils.d.ts +38 -0
- package/dist/components/Combobox/internal/ComboboxLegacy/index.d.ts +7 -0
- package/dist/components/Combobox/internal/ComboboxMockData.d.ts +44 -0
- package/dist/components/Combobox/internal/ComboboxUtils.d.ts +74 -0
- package/dist/components/Combobox/internal/useGroups.d.ts +14 -0
- package/dist/components/Combobox/useInfiniteCombobox.d.ts +69 -1
- package/dist/components/DateField/DateField.d.ts +23 -61
- package/dist/components/DateField/internal/DateFieldLegacy/DateFieldLegacy.d.ts +37 -0
- package/dist/components/DateField/internal/DateFieldLegacy/index.d.ts +1 -0
- package/dist/components/DateField/internal/isoToDateFormat.d.ts +1 -0
- package/dist/components/DateField/types.d.ts +47 -0
- package/dist/components/DateFieldRange/DateFieldRange.d.ts +57 -6
- package/dist/components/DateFieldRange/internal/DateFieldRangeCalendar.d.ts +17 -0
- package/dist/components/DateFieldRange/internal/MaskedDateRangeInput.d.ts +41 -0
- package/dist/components/DateFieldRange/internal/maskito/dateRangePlaceholderMask.d.ts +18 -0
- package/dist/components/DateFieldRange/internal/useDateFieldRangeConversion.d.ts +29 -0
- package/dist/components/DateFieldRange/internal/useDateFieldRangeState.d.ts +70 -0
- package/dist/components/DateFieldRange/internal/utils.d.ts +17 -0
- package/dist/components/DateFieldSingle/DateFieldSingle.d.ts +55 -5
- package/dist/components/DateFieldSingle/index.d.ts +1 -0
- package/dist/components/DateFieldSingle/internal/DateFieldSingleCalendar.d.ts +15 -0
- package/dist/components/DateFieldSingle/internal/MaskedDateInput.d.ts +35 -0
- package/dist/components/DateFieldSingle/internal/constants.d.ts +3 -0
- package/dist/components/DateFieldSingle/internal/maskito/datePlaceholderMask.d.ts +16 -0
- package/dist/components/DateFieldSingle/internal/maskito/makeZeroShortcutPreprocessor.d.ts +10 -0
- package/dist/components/DateFieldSingle/internal/useDateFieldOrchestration.d.ts +17 -0
- package/dist/components/DateFieldSingle/internal/useDateFieldSingleConversion.d.ts +45 -0
- package/dist/components/DateFieldSingle/internal/useDateFieldSingleState.d.ts +49 -0
- package/dist/components/DateFieldSingle/internal/utils.d.ts +14 -0
- package/dist/components/DateFieldSingle/types.d.ts +2 -0
- package/dist/components/DateFieldYearless/DateFieldYearless.d.ts +61 -36
- package/dist/components/DateFieldYearless/index.d.ts +1 -0
- package/dist/components/DateFieldYearless/internal/MaskedYearlessDateInput.d.ts +35 -0
- package/dist/components/DateFieldYearless/internal/maskito/yearlessDatePlaceholderMask.d.ts +16 -0
- package/dist/components/DateFieldYearless/internal/utils.d.ts +12 -0
- package/dist/components/DateFieldYearless/types.d.ts +7 -0
- package/dist/components/DaysOfTheWeek/DaysOfTheWeek.d.ts +117 -20
- package/dist/components/Details/Details.d.ts +30 -58
- package/dist/components/Details/DetailsContent.d.ts +41 -0
- package/dist/components/Details/DetailsSummary.d.ts +24 -0
- package/dist/components/Details/index.d.ts +2 -0
- package/dist/components/Details/internal/DetailsArrow.d.ts +20 -0
- package/dist/components/Details/internal/DetailsContext.d.ts +8 -0
- package/dist/components/Dialog/Dialog.d.ts +97 -109
- package/dist/components/Dialog/DialogCancelButton.d.ts +21 -0
- package/dist/components/Dialog/DialogContent.d.ts +22 -0
- package/dist/components/Dialog/DialogFooter.d.ts +33 -0
- package/dist/components/Dialog/DialogHeader.d.ts +21 -0
- package/dist/components/Dialog/index.d.ts +6 -2
- package/dist/components/Dialog/internal/DialogContext.d.ts +8 -0
- package/dist/components/Dialog/internal/useDialogContext.d.ts +1 -0
- package/dist/components/Divider/Divider.d.ts +34 -7
- package/dist/components/Dnd/DndHandle.d.ts +26 -0
- package/dist/components/Dnd/DndHandleButton.d.ts +32 -0
- package/dist/components/Dnd/DndSortLine.d.ts +39 -0
- package/dist/components/Dnd/DndZone.d.ts +55 -0
- package/dist/components/Dnd/index.d.ts +7 -1
- package/dist/components/DndSort/DndSort.d.ts +40 -0
- package/dist/components/DndSort/DndSortCard.d.ts +63 -0
- package/dist/components/DndSort/DndSortZone.d.ts +130 -0
- package/dist/components/DndSort/index.d.ts +12 -2
- package/dist/components/DndSort/internal/DndSortContext.d.ts +21 -0
- package/dist/components/DndSort/internal/DndSortItem.d.ts +30 -0
- package/dist/components/DndSort/internal/DndSortOverlay.d.ts +5 -0
- package/dist/components/DndSort/internal/DndSortZoneContext.d.ts +24 -0
- package/dist/components/DndSort/internal/announcements.d.ts +8 -0
- package/dist/components/DndSort/internal/collisionDetection.d.ts +3 -0
- package/dist/components/DndSort/internal/getNextCoordinates.d.ts +17 -0
- package/dist/components/DndSort/internal/test-utils.d.ts +24 -0
- package/dist/components/DndSort/internal/utils.d.ts +55 -0
- package/dist/components/DndSort/types.d.ts +55 -0
- package/dist/components/Drawer/Drawer.d.ts +63 -118
- package/dist/components/Drawer/DrawerCancelButton.d.ts +25 -0
- package/dist/components/Drawer/DrawerContent.d.ts +26 -0
- package/dist/components/Drawer/DrawerFooter.d.ts +37 -0
- package/dist/components/Drawer/DrawerHeader.d.ts +23 -0
- package/dist/components/Drawer/index.d.ts +6 -2
- package/dist/components/Drawer/internal/DrawerContext.d.ts +15 -0
- package/dist/components/Drawer/internal/useDrawerContext.d.ts +7 -0
- package/dist/components/EditCard/EditCard.d.ts +71 -14
- package/dist/components/FieldLabel/FieldLabel.d.ts +62 -4
- package/dist/components/FieldLabel/internal/FieldLabelMoreInfoIcon.d.ts +12 -0
- package/dist/components/FieldMessage/FieldMessage.d.ts +48 -12
- package/dist/components/Flex/Flex.d.ts +46 -61
- package/dist/components/Flex/internal/FlexSpecificProps.d.ts +34 -0
- package/dist/components/Grid/Grid.d.ts +55 -27
- package/dist/components/Grid/index.d.ts +1 -0
- package/dist/components/Grid/internal/GridItem.d.ts +27 -0
- package/dist/components/Grid/internal/GridSpecificProps.d.ts +28 -0
- package/dist/components/Icon/Icon.d.ts +42 -15
- package/dist/components/InputMask/InputMask.d.ts +109 -48
- package/dist/components/InputMask/internal/constants.d.ts +1 -0
- package/dist/components/InputMask/internal/utils.d.ts +41 -0
- package/dist/components/Link/Link.d.ts +5 -17
- package/dist/components/Link/index.d.ts +1 -0
- package/dist/components/Link/internal/Link.d.ts +57 -0
- package/dist/components/Link/internal/LinkHeadless.d.ts +24 -0
- package/dist/components/Link/useLinkStyles.d.ts +17 -0
- package/dist/components/LinkButton/LinkButton.d.ts +5 -31
- package/dist/components/ListView/ListView.d.ts +17 -46
- package/dist/components/ListView/ListViewOption.d.ts +38 -0
- package/dist/components/ListView/ListViewOptionCell.d.ts +12 -0
- package/dist/components/ListView/index.d.ts +3 -1
- package/dist/components/ListView/internal/ListViewContext.d.ts +28 -0
- package/dist/components/ListView/internal/types.d.ts +52 -0
- package/dist/components/ListView/internal/utils.d.ts +4 -0
- package/dist/components/Listbox/Listbox.d.ts +97 -61
- package/dist/components/Listbox/ListboxOption.d.ts +53 -0
- package/dist/components/Listbox/ListboxOptionGroup.d.ts +32 -0
- package/dist/components/Listbox/index.d.ts +3 -1
- package/dist/components/Listbox/internal/ListboxContext.d.ts +38 -0
- package/dist/components/Listbox/internal/ListboxOptionGroupContext.d.ts +5 -0
- package/dist/components/Listbox/internal/utils.d.ts +4 -0
- package/dist/components/Menu/Menu.d.ts +20 -46
- package/dist/components/Menu/MenuItem.d.ts +57 -0
- package/dist/components/Menu/index.d.ts +2 -0
- package/dist/components/Menu/internal/MenuContext.d.ts +15 -0
- package/dist/components/Menu/internal/MenuLegacy/MenuLegacy.d.ts +50 -0
- package/dist/components/Menu/internal/MenuLegacy/MenuLegacyContext.d.ts +9 -0
- package/dist/components/Menu/internal/MenuLegacy/MenuLegacyItem.d.ts +12 -0
- package/dist/components/Menu/internal/MenuLegacy/index.d.ts +3 -0
- package/dist/components/Menu/internal/MenuNested.d.ts +42 -0
- package/dist/components/Menu/types.d.ts +72 -0
- package/dist/components/NumberField/NumberField.d.ts +48 -7
- package/dist/components/Overflow/Overflow.d.ts +51 -84
- package/dist/components/Overflow/OverflowText.d.ts +82 -0
- package/dist/components/Overflow/index.d.ts +31 -2
- package/dist/components/Page/Page.d.ts +7 -7
- package/dist/components/Page/PageFooter.d.ts +1 -1
- package/dist/components/Page/PageHeader.d.ts +1 -1
- package/dist/components/Pagination/Pagination.d.ts +4 -6
- package/dist/components/Pagination/internal/Pagination.d.ts +55 -0
- package/dist/components/Pagination/internal/PaginationItem.d.ts +52 -0
- package/dist/components/Pagination/internal/PaginationItemsPerPageMenu.d.ts +37 -0
- package/dist/components/Pagination/internal/PaginationList.d.ts +9 -0
- package/dist/components/Pagination/internal/PaginationOverflowMenu.d.ts +61 -0
- package/dist/components/Pagination/internal/PaginationTotalCount.d.ts +6 -0
- package/dist/components/Popover/Popover.d.ts +146 -134
- package/dist/components/Popover/PopoverButton.d.ts +34 -0
- package/dist/components/Popover/PopoverClose.d.ts +33 -0
- package/dist/components/Popover/PopoverContent.d.ts +46 -0
- package/dist/components/Popover/PopoverTrigger.d.ts +63 -0
- package/dist/components/Popover/index.d.ts +4 -0
- package/dist/components/Popover/internal/PopoverContext.d.ts +40 -0
- package/dist/components/Popover/internal/PopoverLegacy/PopoverLegacy.d.ts +8 -0
- package/dist/components/Popover/internal/PopoverLegacy/PopoverLegacyButton.d.ts +3 -0
- package/dist/components/Popover/internal/PopoverLegacy/PopoverLegacyClose.d.ts +3 -0
- package/dist/components/Popover/internal/PopoverLegacy/PopoverLegacyContent.d.ts +3 -0
- package/dist/components/Popover/internal/PopoverLegacy/PopoverLegacyTrigger.d.ts +9 -0
- package/dist/components/Popover/internal/PopoverLegacy/index.d.ts +8 -0
- package/dist/components/Popover/internal/PopoverLegacy/usePopoverLegacy.d.ts +121 -0
- package/dist/components/Popover/internal/PopoverLegacy/usePopoverLegacyContext.d.ts +79 -0
- package/dist/components/Popover/internal/compareElements.d.ts +1 -0
- package/dist/components/Popover/internal/usePopoverContext.d.ts +50 -0
- package/dist/components/ProgressBar/ProgressBar.d.ts +59 -14
- package/dist/components/Radio/Radio.d.ts +3 -44
- package/dist/components/Radio/RadioGroup.d.ts +61 -0
- package/dist/components/Radio/index.d.ts +2 -0
- package/dist/components/Radio/internal/Radio.d.ts +145 -0
- package/dist/components/Radio/types.d.ts +13 -0
- package/dist/components/SearchField/SearchField.d.ts +33 -8
- package/dist/components/SegmentedControl/SegmentedControl.d.ts +54 -49
- package/dist/components/SegmentedControl/SegmentedControlSegment.d.ts +69 -0
- package/dist/components/SegmentedControl/index.d.ts +1 -0
- package/dist/components/SegmentedControl/internal/SegmentedControlContext.d.ts +24 -0
- package/dist/components/SelectCard/SelectCard.d.ts +45 -16
- package/dist/components/SelectCard/SelectCardGroup.d.ts +24 -13
- package/dist/components/SelectCard/index.d.ts +1 -2
- package/dist/components/SelectCard/internal/SelectCardProvider.d.ts +83 -0
- package/dist/components/SelectTrigger/SelectTrigger.d.ts +22 -8
- package/dist/components/SelectTrigger/internal/SelectTriggerBase.d.ts +40 -0
- package/dist/components/SideNav/SideNav.d.ts +32 -114
- package/dist/components/SideNav/SideNavCollapsible.d.ts +73 -0
- package/dist/components/SideNav/SideNavGroup.d.ts +37 -0
- package/dist/components/SideNav/SideNavLink.d.ts +46 -0
- package/dist/components/SideNav/index.d.ts +4 -1
- package/dist/components/SideNav/internal/SideNavLink.d.ts +74 -0
- package/dist/components/SideNav/internal/utils.d.ts +16 -0
- package/dist/components/Skeleton/SkeletonCircle.d.ts +41 -0
- package/dist/components/Skeleton/SkeletonPill.d.ts +41 -0
- package/dist/components/Skeleton/SkeletonRectangle.d.ts +42 -0
- package/dist/components/Skeleton/SkeletonText.d.ts +52 -0
- package/dist/components/Skeleton/index.d.ts +16 -2
- package/dist/components/Spinner/Spinner.d.ts +11 -6
- package/dist/components/SrOnly/SrOnly.d.ts +3 -7
- package/dist/components/Stepper/Stepper.d.ts +119 -239
- package/dist/components/Stepper/StepperFinalPanel.d.ts +30 -0
- package/dist/components/Stepper/StepperList.d.ts +28 -0
- package/dist/components/Stepper/StepperNextButton.d.ts +73 -0
- package/dist/components/Stepper/StepperPanel.d.ts +52 -0
- package/dist/components/Stepper/StepperPrevButton.d.ts +44 -0
- package/dist/components/Stepper/StepperStep.d.ts +58 -0
- package/dist/components/Stepper/index.d.ts +6 -0
- package/dist/components/Stepper/internal/StepperContext.d.ts +15 -0
- package/dist/components/Switch/Switch.d.ts +47 -11
- package/dist/components/Tab/Tab.d.ts +22 -88
- package/dist/components/Tab/TabButton.d.ts +54 -0
- package/dist/components/Tab/TabList.d.ts +26 -0
- package/dist/components/Tab/TabPanel.d.ts +34 -0
- package/dist/components/Tab/index.d.ts +3 -0
- package/dist/components/Tab/internal/TabContext.d.ts +15 -0
- package/dist/components/Text/Text.d.ts +7 -17
- package/dist/components/Text/types.d.ts +93 -0
- package/dist/components/TextField/TextField.d.ts +4 -5
- package/dist/components/TextField/internal/TextField.d.ts +20 -0
- package/dist/components/Textarea/Textarea.d.ts +52 -19
- package/dist/components/Textarea/index.d.ts +1 -2
- package/dist/components/Textarea/types.d.ts +35 -0
- package/dist/components/TimeField/TimeField.d.ts +55 -18
- package/dist/components/TimeField/index.d.ts +2 -0
- package/dist/components/TimeField/internal/MaskedTimeInput.d.ts +87 -0
- package/dist/components/TimeField/internal/constants.d.ts +25 -0
- package/dist/components/TimeField/internal/maskito/timePlaceholderMask.d.ts +28 -0
- package/dist/components/TimeField/internal/types.d.ts +27 -0
- package/dist/components/TimeField/internal/utils/timeFormatting.d.ts +10 -0
- package/dist/components/TimeField/internal/utils/timeOptions.d.ts +24 -0
- package/dist/components/TimeField/internal/utils/timeParsing.d.ts +43 -0
- package/dist/components/TimeField/internal/utils/timeRounding.d.ts +58 -0
- package/dist/components/TimeField/internal/utils/timeValidation.d.ts +28 -0
- package/dist/components/Toast/Toaster.d.ts +4 -4
- package/dist/components/Toast/internal/Toast.d.ts +106 -0
- package/dist/components/Toast/internal/ToastProvider.d.ts +90 -0
- package/dist/components/Toast/internal/ToastStack.d.ts +81 -0
- package/dist/components/Toast/internal/Toaster.d.ts +108 -0
- package/dist/components/Toast/internal/ToasterPopover.d.ts +19 -0
- package/dist/components/Toast/internal/addOrUpdateToastHeight.d.ts +8 -0
- package/dist/components/Toast/internal/constants.d.ts +4 -0
- package/dist/components/Toast/internal/types.d.ts +18 -0
- package/dist/components/Toast/internal/useCloseToast.d.ts +7 -0
- package/dist/components/Toast/internal/useHotkeyFocus.d.ts +25 -0
- package/dist/components/Toast/internal/useShowMoreButtonPositionStyles.d.ts +6 -0
- package/dist/components/Toast/internal/useToastPositionStyles.d.ts +7 -0
- package/dist/components/Toast/internal/useToasts.d.ts +6 -0
- package/dist/components/Toast/toast.d.ts +113 -38
- package/dist/components/Toolbar/Toolbar.d.ts +99 -141
- package/dist/components/Toolbar/ToolbarButton.d.ts +41 -0
- package/dist/components/Toolbar/ToolbarButtonLink.d.ts +43 -0
- package/dist/components/Toolbar/ToolbarButtonToggle.d.ts +37 -0
- package/dist/components/Toolbar/ToolbarSelect.d.ts +108 -0
- package/dist/components/Toolbar/index.d.ts +6 -1
- package/dist/components/Toolbar/internal/ToolbarItemOverflowContext.d.ts +19 -0
- package/dist/components/Toolbar/internal/ToolbarItemWrapper.d.ts +33 -0
- package/dist/components/Toolbar/internal/ToolbarOverflowContext.d.ts +35 -0
- package/dist/components/Toolbar/internal/ToolbarOverflowMenu.d.ts +29 -0
- package/dist/components/Toolbar/internal/utils/accessibility.d.ts +21 -0
- package/dist/components/Toolbar/internal/utils/test.d.ts +29 -0
- package/dist/components/Toolbar/types.d.ts +48 -0
- package/dist/components/Tooltip/Tooltip.d.ts +73 -71
- package/dist/components/Tooltip/TooltipContent.d.ts +26 -0
- package/dist/components/Tooltip/TooltipTrigger.d.ts +30 -0
- package/dist/components/Tooltip/index.d.ts +2 -0
- package/dist/components/Tooltip/internal/TooltipContext.d.ts +92 -0
- package/dist/components/Tooltip/internal/TooltipLegacy/TooltipLegacy.d.ts +6 -0
- package/dist/components/Tooltip/internal/TooltipLegacy/TooltipLegacyContent.d.ts +3 -0
- package/dist/components/Tooltip/internal/TooltipLegacy/TooltipLegacyTrigger.d.ts +5 -0
- package/dist/components/Tooltip/internal/TooltipLegacy/index.d.ts +6 -0
- package/dist/components/Tooltip/internal/TooltipLegacy/useTooltipLegacy.d.ts +70 -0
- package/dist/components/Tooltip/internal/TooltipLegacy/useTooltipLegacyContext.d.ts +58 -0
- package/dist/components/Tooltip/internal/isNonInteractiveTrigger.d.ts +1 -0
- package/dist/components/Tooltip/internal/useTooltipContext.d.ts +47 -0
- package/dist/components/index.d.ts +1 -0
- package/dist/extends-Bg2s_OKl.js.map +1 -1
- package/dist/getActiveElement-BcSyVE7S.js +25 -0
- package/dist/getActiveElement-BcSyVE7S.js.map +1 -0
- package/dist/getKeyboardFocusableElements-QqcABz0D.js.map +1 -1
- package/dist/hooks/index.d.ts +0 -1
- package/dist/hooks/useAccessibleColor/index.d.ts +1 -1
- package/dist/hooks/useAccessibleColor/useAccessibleColor.d.ts +38 -0
- package/dist/hooks/useBreakpoint/index.d.ts +1 -1
- package/dist/hooks/useBreakpoint/useBreakpoint.d.ts +49 -0
- package/dist/hooks/useMergeRefs/index.d.ts +1 -1
- package/dist/hooks/useMergeRefs/useMergeRefs.d.ts +17 -0
- package/dist/hooks/usePrefersColorScheme/index.d.ts +1 -1
- package/dist/hooks/usePrefersColorScheme/usePrefersColorScheme.d.ts +16 -0
- package/dist/hooks/useSwipe/index.d.ts +1 -1
- package/dist/hooks/useSwipe/useSwipe.d.ts +32 -0
- package/dist/{Checkbox.module-DZ58p15b-BUsQC1lW.js → indeterminate_check_box-Bg24oeHy.js} +8 -8
- package/dist/indeterminate_check_box-Bg24oeHy.js.map +1 -0
- package/dist/{Checkbox.css → indeterminate_check_box.css} +0 -1
- package/dist/{index-CKfiQx8n-4nziUo7G.js → index-CqdP5W00.js} +5 -5
- package/dist/index-CqdP5W00.js.map +1 -0
- package/dist/{ProgressBar-BRvB-bD4.css → index.css} +0 -641
- package/dist/index.d.ts +1 -0
- package/dist/{index.esm-dyoPQhi6.js → index.esm-D889iexm.js} +115 -115
- package/dist/index.esm-D889iexm.js.map +1 -0
- package/dist/index.js +508 -72
- package/dist/index.js.map +1 -1
- package/dist/{index-CKfiQx8n.css → index2.css} +0 -1
- package/dist/info-CYpG6tcI.js +6 -0
- package/dist/info-CYpG6tcI.js.map +1 -0
- package/dist/internal/components/Helper/Helper.d.ts +18 -0
- package/dist/internal/components/Helper/index.d.ts +1 -0
- package/dist/internal/components/Label/Label.d.ts +77 -0
- package/dist/internal/components/Label/index.d.ts +2 -0
- package/dist/internal/components/index.d.ts +2 -0
- package/dist/internal/functions/childrenToString.d.ts +25 -0
- package/dist/internal/functions/getActiveElement.d.ts +1 -0
- package/dist/internal/functions/getInitial.d.ts +16 -0
- package/dist/internal/functions/getKeyboardFocusableElements.d.ts +25 -0
- package/dist/internal/functions/index.d.ts +9 -0
- package/dist/internal/functions/kebabize.d.ts +16 -0
- package/dist/internal/functions/mapOrder.d.ts +1 -0
- package/dist/internal/functions/safePopover.d.ts +2 -0
- package/dist/internal/functions/sizeToToken.d.ts +2 -0
- package/dist/internal/functions/supportsPopover.d.ts +1 -0
- package/dist/internal/hooks/index.d.ts +17 -0
- package/dist/internal/hooks/useDialogScrollLock/index.d.ts +1 -0
- package/dist/internal/hooks/useDialogScrollLock/useDialogScrollLock.d.ts +40 -0
- package/dist/internal/hooks/useDialogTransitionStates/index.d.ts +1 -0
- package/dist/internal/hooks/useDialogTransitionStates/useDialogTransitionStates.d.ts +32 -0
- package/dist/internal/hooks/useFocusWithin/index.d.ts +1 -0
- package/dist/internal/hooks/useFocusWithin/useFocusWithin.d.ts +33 -0
- package/dist/internal/hooks/useIntersectionObserver/index.d.ts +1 -0
- package/dist/internal/hooks/useIntersectionObserver/useIntersectionObserver.d.ts +67 -0
- package/dist/internal/hooks/useIsScrollable/index.d.ts +1 -0
- package/dist/internal/hooks/useIsScrollable/useIsScrollable.d.ts +6 -0
- package/dist/internal/hooks/useKeyboardFocusables/index.d.ts +1 -0
- package/dist/internal/hooks/useKeyboardFocusables/useKeyboardFocusables.d.ts +54 -0
- package/dist/internal/hooks/useLayoutPropsUtil/index.d.ts +1 -0
- package/dist/internal/hooks/useLayoutPropsUtil/useLayoutPropsUtil.d.ts +56 -0
- package/dist/internal/hooks/useNumberField/index.d.ts +1 -0
- package/dist/internal/hooks/useNumberField/internal/useNumberFieldInputMode.d.ts +24 -0
- package/dist/internal/hooks/useNumberField/internal/useNumberFieldKeys.d.ts +43 -0
- package/dist/internal/hooks/useNumberField/useNumberField.d.ts +118 -0
- package/dist/internal/hooks/useOnClickOutside/index.d.ts +1 -0
- package/dist/internal/hooks/useOnClickOutside/useOnClickOutside.d.ts +34 -0
- package/dist/internal/hooks/useOpenCloseTransitionStates/index.d.ts +1 -0
- package/dist/internal/hooks/useOpenCloseTransitionStates/useOpenCloseTransitionStates.d.ts +51 -0
- package/dist/internal/hooks/useOptionallyControlledState/index.d.ts +1 -0
- package/dist/internal/hooks/useOptionallyControlledState/useOptionallyControlledState.d.ts +59 -0
- package/dist/internal/hooks/usePlatform/index.d.ts +1 -0
- package/dist/internal/hooks/usePlatform/usePlatform.d.ts +65 -0
- package/dist/internal/hooks/usePopoverCloseDelayWorkaround/index.d.ts +1 -0
- package/dist/internal/hooks/usePopoverCloseDelayWorkaround/usePopoverCloseDelayWorkaround.d.ts +1 -0
- package/dist/internal/hooks/usePopoverSupport/index.d.ts +1 -0
- package/dist/internal/hooks/usePopoverSupport/usePopoverSupport.d.ts +1 -0
- package/dist/internal/hooks/usePopoverTransitionStates/index.d.ts +1 -0
- package/dist/internal/hooks/usePopoverTransitionStates/usePopoverTransitionStates.d.ts +25 -0
- package/dist/internal/hooks/usePrevious/index.d.ts +1 -0
- package/dist/internal/hooks/usePrevious/usePrevious.d.ts +1 -0
- package/dist/internal/hooks/useTypeAhead/index.d.ts +1 -0
- package/dist/internal/hooks/useTypeAhead/useTypeAhead.d.ts +15 -0
- package/dist/internal/types/index.d.ts +1 -0
- package/dist/internal/types/props.d.ts +7 -0
- package/dist/internal/utils/index.d.ts +1 -0
- package/dist/makeZeroShortcutPreprocessor-CxsiGTRW.js +47 -0
- package/dist/makeZeroShortcutPreprocessor-CxsiGTRW.js.map +1 -0
- package/dist/providers/AnvilProvider/AnvilProvider.d.ts +29 -6
- package/dist/providers/LocalizationProvider/LocalizationContext.d.ts +6 -0
- package/dist/providers/LocalizationProvider/LocalizationProvider.d.ts +17 -0
- package/dist/providers/LocalizationProvider/LocalizationStoryWrapper.d.ts +6 -0
- package/dist/providers/LocalizationProvider/index.d.ts +2 -1
- package/dist/providers/LocalizationProvider/useTranslations.d.ts +4 -0
- package/dist/providers/PortalProvider/PortalProvider.d.ts +10 -0
- package/dist/providers/PortalProvider/index.d.ts +1 -1
- package/dist/providers/ThemeProvider/ThemeProvider.d.ts +14 -4
- package/dist/providers/ThemeProvider/index.d.ts +7 -1
- package/dist/providers/ThemeProvider/internal/ThemeProviderContext.d.ts +6 -0
- package/dist/providers/ThemeProvider/useTheme.d.ts +1 -0
- package/dist/types/MaxLengthCounterProps.d.ts +8 -0
- package/dist/types/ianaZones.d.ts +2 -0
- package/dist/types/index.d.ts +4 -1
- package/dist/types/locales.d.ts +3 -0
- package/dist/types/props.d.ts +66 -0
- package/dist/{useAccessibleColor-Dc6B_M-Z-BYKjkGRg.js → useAccessibleColor-BYKjkGRg.js} +1 -1
- package/dist/useAccessibleColor-BYKjkGRg.js.map +1 -0
- package/dist/useAccessibleColor.js +1 -1
- package/dist/{useBreakpoint-7QkBkSeP-Cv5fnZxs.js → useBreakpoint-Cv5fnZxs.js} +1 -1
- package/dist/useBreakpoint-Cv5fnZxs.js.map +1 -0
- package/dist/useBreakpoint.js +1 -1
- package/dist/useDateFieldOrchestration-Cqa7dxtr.js +138 -0
- package/dist/useDateFieldOrchestration-Cqa7dxtr.js.map +1 -0
- package/dist/useDialogTransitionStates-2NaE_noq.js +64 -0
- package/dist/useDialogTransitionStates-2NaE_noq.js.map +1 -0
- package/dist/{useFocusWithin-Cxz14Zyz-DEudRcSI.js → useFocusWithin-BhU7hoAD.js} +2 -10
- package/dist/useFocusWithin-BhU7hoAD.js.map +1 -0
- package/dist/{Combobox-BOpe_NUu.js → useInfiniteCombobox-BN2uGhBh.js} +1791 -1847
- package/dist/useInfiniteCombobox-BN2uGhBh.js.map +1 -0
- package/dist/{Combobox.css → useInfiniteCombobox.css} +102 -45
- package/dist/{useLayoutPropsUtil-DWACCL8v-CZNrcQT-.js → useLayoutPropsUtil-DjD5IMh0.js} +2 -2
- package/dist/useLayoutPropsUtil-DjD5IMh0.js.map +1 -0
- package/dist/{useMergeRefs-Bde85AWI-Bde85AWI.js → useMergeRefs-Bde85AWI.js} +1 -1
- package/dist/useMergeRefs-Bde85AWI.js.map +1 -0
- package/dist/useMergeRefs.js +1 -1
- package/dist/useOnClickOutside-BHEWMLa9.js +170 -0
- package/dist/useOnClickOutside-BHEWMLa9.js.map +1 -0
- package/dist/{useOptionallyControlledState-DbDuos5L-DbDuos5L.js → useOptionallyControlledState-DbDuos5L.js} +1 -1
- package/dist/useOptionallyControlledState-DbDuos5L.js.map +1 -0
- package/dist/{usePopoverCloseDelayWorkaround-BZcjPkvT-BZcjPkvT.js → usePopoverCloseDelayWorkaround-BZcjPkvT.js} +1 -1
- package/dist/usePopoverCloseDelayWorkaround-BZcjPkvT.js.map +1 -0
- package/dist/{usePopoverSupport-B9Lsqryr-CYJxXiun.js → usePopoverSupport-DIjjfodl.js} +2 -2
- package/dist/usePopoverSupport-DIjjfodl.js.map +1 -0
- package/dist/{usePrefersColorScheme-_hT7dK7_-_hT7dK7_.js → usePrefersColorScheme-_hT7dK7_.js} +1 -1
- package/dist/usePrefersColorScheme-_hT7dK7_.js.map +1 -0
- package/dist/usePrefersColorScheme.js +1 -1
- package/dist/usePrevious-Bvq-5auG.js +12 -0
- package/dist/usePrevious-Bvq-5auG.js.map +1 -0
- package/dist/{useSwipe-CULmVQEk-CULmVQEk.js → useSwipe-CULmVQEk.js} +1 -1
- package/dist/useSwipe-CULmVQEk.js.map +1 -0
- package/dist/useSwipe.js +1 -1
- package/dist/useTheme-B4i6a3bM.js +9 -0
- package/dist/useTheme-B4i6a3bM.js.map +1 -0
- package/package.json +29 -4
- package/dist/Alert-C3WoRkeN-D_6Yf63F.js +0 -98
- package/dist/Alert-C3WoRkeN-D_6Yf63F.js.map +0 -1
- package/dist/Alert-DipY5OlC.js +0 -23
- package/dist/Alert-DipY5OlC.js.map +0 -1
- package/dist/Announcement-ButSjdLn.js.map +0 -1
- package/dist/AnvilProvider-BLYCqIbb.js +0 -16
- package/dist/AnvilProvider-BLYCqIbb.js.map +0 -1
- package/dist/Avatar-C7cbRTCt-DCvzmr2C.js.map +0 -1
- package/dist/Avatar-DREZJN2K.js.map +0 -1
- package/dist/Badge-7aZfE-LH.js.map +0 -1
- package/dist/Breadcrumbs-BMbkH9hL-BUjQksuj.js.map +0 -1
- package/dist/Breadcrumbs-fthw3qaL.js +0 -36
- package/dist/Breadcrumbs-fthw3qaL.js.map +0 -1
- package/dist/Button-BaHFf1AT-BQy-PFB5.js.map +0 -1
- package/dist/Button-DMQKV2sV.js +0 -27
- package/dist/Button-DMQKV2sV.js.map +0 -1
- package/dist/Button.module-BqTaW8HK-BqTaW8HK.js +0 -25
- package/dist/Button.module-BqTaW8HK-BqTaW8HK.js.map +0 -1
- package/dist/ButtonCompound-Cs2A5X-Z-Dl3InVab.js +0 -49
- package/dist/ButtonCompound-Cs2A5X-Z-Dl3InVab.js.map +0 -1
- package/dist/ButtonCompound-DGuF0zzT.js +0 -25
- package/dist/ButtonCompound-DGuF0zzT.js.map +0 -1
- package/dist/ButtonLink-5qlX0uZx-b9H7MGhk.js.map +0 -1
- package/dist/ButtonLink-B0NJuVk5.js +0 -28
- package/dist/ButtonLink-B0NJuVk5.js.map +0 -1
- package/dist/ButtonToggle-Bm4KRl3o-B1-LbfjY.js.map +0 -1
- package/dist/ButtonToggle-CKVyEODc.js +0 -27
- package/dist/ButtonToggle-CKVyEODc.js.map +0 -1
- package/dist/Calendar-BvftKznl-D4_xp9Rv.js.map +0 -1
- package/dist/Calendar-DdOR9T_K.js +0 -130
- package/dist/Calendar-DdOR9T_K.js.map +0 -1
- package/dist/Card-U2IJPk8B.js +0 -11
- package/dist/Card-U2IJPk8B.js.map +0 -1
- package/dist/Card-ZknG-yim-7W6rYSFV.js.map +0 -1
- package/dist/Checkbox-DyHm7Ntt-DYw5QL3l.js.map +0 -1
- package/dist/Checkbox-zg8LVvB6.js.map +0 -1
- package/dist/Checkbox.module-DZ58p15b-BUsQC1lW.js.map +0 -1
- package/dist/Chip-DXQiqF8k.js +0 -34
- package/dist/Chip-DXQiqF8k.js.map +0 -1
- package/dist/Chip-MbBEXeAm-DmAcwPRJ.js.map +0 -1
- package/dist/Combobox-BOpe_NUu.js.map +0 -1
- package/dist/DateField-Bqsnpt8S.js.map +0 -1
- package/dist/DateFieldRange-Cax7Kl9A.js +0 -22
- package/dist/DateFieldRange-Cax7Kl9A.js.map +0 -1
- package/dist/DateFieldSingle-bMX770gU.js +0 -22
- package/dist/DateFieldSingle-bMX770gU.js.map +0 -1
- package/dist/DateFieldYearless-ClNYTBK_.js +0 -22
- package/dist/DateFieldYearless-ClNYTBK_.js.map +0 -1
- package/dist/DateFieldYearless-pejtv7-x-DBHpW83U.js +0 -1373
- package/dist/DateFieldYearless-pejtv7-x-DBHpW83U.js.map +0 -1
- package/dist/DaysOfTheWeek-ImBPjEvl.js.map +0 -1
- package/dist/Details-DVg0EOkv.js.map +0 -1
- package/dist/Dialog-BR6f-XRH.js.map +0 -1
- package/dist/Divider-B0xGfyWE-f5-ThMiS.js.map +0 -1
- package/dist/Divider-azRKjITG.js +0 -13
- package/dist/Divider-azRKjITG.js.map +0 -1
- package/dist/DndSort-Cl0FCNQm.js +0 -5546
- package/dist/DndSort-Cl0FCNQm.js.map +0 -1
- package/dist/Drawer-0ayAWgAA.js +0 -142
- package/dist/Drawer-0ayAWgAA.js.map +0 -1
- package/dist/EditCard-B_n1uFkv.js.map +0 -1
- package/dist/FieldLabel-DWl5qsRY.js +0 -13
- package/dist/FieldLabel-DWl5qsRY.js.map +0 -1
- package/dist/FieldMessage-Bobp105T-DYhStLY4.js.map +0 -1
- package/dist/FieldMessage-DkJ0K5s-.js +0 -13
- package/dist/FieldMessage-DkJ0K5s-.js.map +0 -1
- package/dist/Flex-CiK7uNUu-BfxHG4L0.js.map +0 -1
- package/dist/Flex-Ln6PmaDl.js +0 -11
- package/dist/Flex-Ln6PmaDl.js.map +0 -1
- package/dist/Grid-CMcDeSYT.js +0 -33
- package/dist/Grid-CMcDeSYT.js.map +0 -1
- package/dist/Grid-DFAd8mTe.js.map +0 -1
- package/dist/HammerProvider-vt3DkcCZ-06BeBrPu.js.map +0 -1
- package/dist/Helper-h7k80qls-DHPFHTvI.js.map +0 -1
- package/dist/Icon-B6HmlQiR-BxQkO3X5.js.map +0 -1
- package/dist/Icon-BgKqBmlj.js +0 -13
- package/dist/Icon-BgKqBmlj.js.map +0 -1
- package/dist/InputMask-BOUlnmiF.js +0 -30
- package/dist/InputMask-BOUlnmiF.js.map +0 -1
- package/dist/InputMask-BuO8lNAB-DdxdO5Jw.js.map +0 -1
- package/dist/Link-C4N_cV3i.js +0 -45
- package/dist/Link-C4N_cV3i.js.map +0 -1
- package/dist/Link-MiffPrW9-Cx1zYWSF.js +0 -67
- package/dist/Link-MiffPrW9-Cx1zYWSF.js.map +0 -1
- package/dist/ListView-DVPhWDCM.js.map +0 -1
- package/dist/ListView.module-MVsNF0X0-MVsNF0X0.js.map +0 -1
- package/dist/Listbox-B-WUuj-_-BWWeWtLW.js.map +0 -1
- package/dist/Listbox-Di6OS1Fk.js +0 -67
- package/dist/Listbox-Di6OS1Fk.js.map +0 -1
- package/dist/Listbox.module-DcBE8Zmo-DcBE8Zmo.js.map +0 -1
- package/dist/LocalizationContext-UsmB5mnR-BUIYgNp2.js.map +0 -1
- package/dist/LocalizationProvider-VtRAfGBT-Bo8XuFoE.js.map +0 -1
- package/dist/Menu-DHCOMJx2.js +0 -60
- package/dist/Menu-DHCOMJx2.js.map +0 -1
- package/dist/Menu-TtVJnSrA-yBYichuJ.js.map +0 -1
- package/dist/NumberField-C9lMsPMD.js.map +0 -1
- package/dist/Overflow-CFClqFVC-BKqOBCan.js +0 -393
- package/dist/Overflow-CFClqFVC-BKqOBCan.js.map +0 -1
- package/dist/Overflow-w-3_04fS.js +0 -69
- package/dist/Overflow-w-3_04fS.js.map +0 -1
- package/dist/Page-CGAylFKz.js.map +0 -1
- package/dist/Pagination-DU_qvFRR.js.map +0 -1
- package/dist/Popover-BPiqdyu1.js +0 -135
- package/dist/Popover-BPiqdyu1.js.map +0 -1
- package/dist/Popover-CU2cGVD8-Casl3vM1.js.map +0 -1
- package/dist/PortalProvider-9lXkQ0xY-BKoGegS1.js.map +0 -1
- package/dist/ProgressBar-BRvB-bD4-DppwBrFg.js +0 -2616
- package/dist/ProgressBar-BRvB-bD4-DppwBrFg.js.map +0 -1
- package/dist/ProgressBar-lPKNTz6i.js +0 -13
- package/dist/ProgressBar-lPKNTz6i.js.map +0 -1
- package/dist/Radio-DQ_VQFGZ-SdFBlDnE.js.map +0 -1
- package/dist/Radio-DnOuBPi_.js.map +0 -1
- package/dist/SearchField-BGPqpnVd.js.map +0 -1
- package/dist/SegmentedControl-DY1PSYmd.js.map +0 -1
- package/dist/SelectCard-LSAl_7Lh-BYtfe9PC.js.map +0 -1
- package/dist/SelectCardGroup-u_QKdeRZ.js +0 -49
- package/dist/SelectCardGroup-u_QKdeRZ.js.map +0 -1
- package/dist/SelectTrigger-C2w-flvK.js.map +0 -1
- package/dist/SelectTrigger.css +0 -16
- package/dist/SelectTriggerBase-Dj154EN4-BtTvR-Nh.js.map +0 -1
- package/dist/SideNav-Bh_pVeEw.js.map +0 -1
- package/dist/Skeleton-COxTdwjO.js +0 -398
- package/dist/Skeleton-COxTdwjO.js.map +0 -1
- package/dist/Spinner-C1r3COiQ.js +0 -13
- package/dist/Spinner-C1r3COiQ.js.map +0 -1
- package/dist/Spinner-DliJVzdW-BQlZEj4V.js.map +0 -1
- package/dist/SrOnly-BsKDHetF-B93X65F1.js.map +0 -1
- package/dist/SrOnly-C_I8eH4C.js +0 -9
- package/dist/SrOnly-C_I8eH4C.js.map +0 -1
- package/dist/Stepper-BtbDBIzz.js.map +0 -1
- package/dist/Switch-DAQFzi-X.js.map +0 -1
- package/dist/Tab-BSC7e4rM.js.map +0 -1
- package/dist/Text-35Ve4Uq0.js +0 -13
- package/dist/Text-35Ve4Uq0.js.map +0 -1
- package/dist/Text-CED_yrId-DsRYZw2-.js.map +0 -1
- package/dist/TextField-B364hxo8.js +0 -29
- package/dist/TextField-B364hxo8.js.map +0 -1
- package/dist/TextField-DoPP1CQ--UWAOTYiv.js.map +0 -1
- package/dist/TextField.module-EkKlj66e-EkKlj66e.js.map +0 -1
- package/dist/Textarea-D2AAZ1L3.js.map +0 -1
- package/dist/ThemeProvider-DwJqkbiU.js +0 -7
- package/dist/ThemeProvider-DwJqkbiU.js.map +0 -1
- package/dist/ThemeProvider-Q3ji6Rpx-DBXlAuQ8.js.map +0 -1
- package/dist/TimeField-tA9uo4lK.js.map +0 -1
- package/dist/Toolbar-CSWhVSUM.js.map +0 -1
- package/dist/Tooltip-C2HQDvYj.js +0 -73
- package/dist/Tooltip-C2HQDvYj.js.map +0 -1
- package/dist/check_circle-BGfigqq-.js.map +0 -1
- package/dist/childrenToString-Bz9MqbHb-Bz9MqbHb.js.map +0 -1
- package/dist/components/Skeleton/Skeleton.d.ts +0 -153
- package/dist/floating-ui.react-BFNinq1w.js.map +0 -1
- package/dist/hooks/useLinkStyles/index.d.ts +0 -1
- package/dist/index-CKfiQx8n-4nziUo7G.js.map +0 -1
- package/dist/index.esm-dyoPQhi6.js.map +0 -1
- package/dist/toast-BhV_Ask2.js.map +0 -1
- package/dist/useAccessibleColor-Dc6B_M-Z-BYKjkGRg.js.map +0 -1
- package/dist/useBreakpoint-7QkBkSeP-Cv5fnZxs.js.map +0 -1
- package/dist/useFocusWithin-Cxz14Zyz-DEudRcSI.js.map +0 -1
- package/dist/useLayoutPropsUtil-DWACCL8v-CZNrcQT-.js.map +0 -1
- package/dist/useLinkStyles.d.ts +0 -6
- package/dist/useLinkStyles.js +0 -2
- package/dist/useLinkStyles.js.map +0 -1
- package/dist/useMergeRefs-Bde85AWI-Bde85AWI.js.map +0 -1
- package/dist/useOptionallyControlledState-DbDuos5L-DbDuos5L.js.map +0 -1
- package/dist/usePopoverCloseDelayWorkaround-BZcjPkvT-BZcjPkvT.js.map +0 -1
- package/dist/usePopoverSupport-B9Lsqryr-CYJxXiun.js.map +0 -1
- package/dist/usePrefersColorScheme-_hT7dK7_-_hT7dK7_.js.map +0 -1
- package/dist/useSwipe-CULmVQEk-CULmVQEk.js.map +0 -1
- /package/dist/components/SideNav/{SideNavProvider.d.ts → internal/SideNavProvider.d.ts} +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Menu-C8we5CHP.js","sources":["../../hammer-icon/mdi/round/arrow_drop_up.svg","../src/components/Menu/internal/MenuContext.ts","../../hammer-icon/mdi/round/navigate_next.svg","../src/components/Menu/internal/MenuLegacy/MenuLegacyContext.ts","../src/components/Menu/internal/MenuLegacy/MenuLegacyItem.tsx","../src/components/Menu/internal/MenuLegacy/MenuLegacy.tsx","../src/components/Menu/MenuItem.tsx","../src/components/Menu/internal/MenuNested.tsx","../src/components/Menu/Menu.tsx"],"sourcesContent":["import * as React from \"react\";\nconst SvgArrowDropUp = (props) => /* @__PURE__ */ React.createElement(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: \"1em\", height: \"1em\", viewBox: \"0 0 24 24\", ...props }, /* @__PURE__ */ React.createElement(\"path\", { d: \"M8.71 12.29 11.3 9.7a.996.996 0 0 1 1.41 0l2.59 2.59c.63.63.18 1.71-.71 1.71H9.41c-.89 0-1.33-1.08-.7-1.71z\" }));\nexport default SvgArrowDropUp;\n","import { createContext } from \"react\";\n\nimport { MenuProps } from \"../Menu\";\n\n/**\n * Context props for Menu components\n */\nexport type MenuContextProps = {\n /**\n * Function to close the root menu\n */\n closeRootMenu: () => void;\n /**\n * Whether auto height is disabled\n */\n disableAutoHeight: MenuProps[\"disableAutoHeight\"];\n};\nexport const MenuContext = createContext<MenuContextProps | null>(null);\n","import * as React from \"react\";\nconst SvgNavigateNext = (props) => /* @__PURE__ */ React.createElement(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: \"1em\", height: \"1em\", viewBox: \"0 0 24 24\", ...props }, /* @__PURE__ */ React.createElement(\"path\", { d: \"M9.31 6.71a.996.996 0 0 0 0 1.41L13.19 12l-3.88 3.88a.996.996 0 1 0 1.41 1.41l4.59-4.59a.996.996 0 0 0 0-1.41L10.72 6.7c-.38-.38-1.02-.38-1.41.01z\" }));\nexport default SvgNavigateNext;\n","import { Dispatch, HTMLProps, SetStateAction, createContext } from \"react\";\n\nimport { PopoverControlProps } from \"./MenuLegacy\";\n\nexport const MenuLegacyContext = createContext<\n {\n getItemProps: (\n userProps?: HTMLProps<HTMLElement>,\n ) => Record<string, unknown>;\n activeIndex: number | null;\n setActiveIndex?: Dispatch<SetStateAction<number | null>>;\n setHasFocusInside?: Dispatch<SetStateAction<boolean>>;\n isOpen: boolean;\n } & PopoverControlProps\n>({\n getItemProps: () => ({}),\n activeIndex: null,\n isOpen: false,\n});\n","import { useFloatingTree, useListItem } from \"@floating-ui/react\";\nimport {\n ButtonHTMLAttributes,\n MouseEvent,\n forwardRef,\n useContext,\n FocusEvent,\n ComponentPropsWithoutRef,\n ReactNode,\n} from \"react\";\nimport cx from \"classnames\";\n\nimport { childrenToString } from \"../../../../internal/functions\";\nimport { Icon, IconProps } from \"../../../Icon\";\nimport { useMergeRefs } from \"../../../../hooks\";\n\nimport { MenuLegacyContext } from \"./MenuLegacyContext\";\n\nimport styles from \"./MenuLegacy.module.scss\";\n\nexport type MenuLegacyItemProps = {\n icon?: IconProps[\"svg\"];\n label: ReactNode;\n disabled?: boolean;\n} & ComponentPropsWithoutRef<\"button\">;\n\nexport const MenuLegacyItem = forwardRef<\n HTMLButtonElement,\n MenuLegacyItemProps & ButtonHTMLAttributes<HTMLButtonElement>\n>(({ label, disabled, icon, className, ...props }, forwardedRef) => {\n const MenuLegacy = useContext(MenuLegacyContext);\n const item = useListItem({\n label: disabled ? null : childrenToString(label),\n });\n const tree = useFloatingTree();\n const isActive = item.index === MenuLegacy.activeIndex;\n const itemCx = cx([styles[\"item\"]], className);\n return (\n <button\n {...props}\n ref={useMergeRefs([item.ref, forwardedRef])}\n type=\"button\"\n role=\"menuitem\"\n data-anv=\"menu-item\"\n className={itemCx}\n tabIndex={isActive ? 0 : -1}\n disabled={disabled}\n {...MenuLegacy.getItemProps({\n onClick(event: MouseEvent<HTMLButtonElement>) {\n props.onClick?.(event);\n tree?.events.emit(\"click\");\n },\n onFocus(event: FocusEvent<HTMLButtonElement>) {\n props.onFocus?.(event);\n MenuLegacy.setHasFocusInside?.(true);\n },\n })}\n >\n {icon ? <Icon inherit aria-hidden svg={icon} /> : null}\n {label}\n </button>\n );\n});\n\nMenuLegacyItem.displayName = \"MenuLegacyItem\";\n","import {\n autoUpdate,\n flip,\n FloatingFocusManager,\n FloatingList,\n FloatingNode,\n FloatingPortal,\n FloatingTree,\n offset,\n shift,\n size,\n useHover,\n safePolygon,\n useClick,\n useDismiss,\n useFloating,\n useFloatingNodeId,\n useFloatingParentNodeId,\n useFloatingTree,\n useInteractions,\n useListItem,\n useListNavigation,\n useRole,\n useTypeahead,\n limitShift,\n Placement,\n} from \"@floating-ui/react\";\nimport {\n forwardRef,\n HTMLProps,\n useContext,\n useEffect,\n useRef,\n useState,\n FocusEvent,\n MouseEvent,\n AriaAttributes,\n ReactElement,\n useMemo,\n} from \"react\";\nimport cx from \"classnames\";\nimport Next from \"@servicetitan/hammer-icon/mdi/round/navigate_next.svg\";\nimport Up from \"@servicetitan/hammer-icon/mdi/round/arrow_drop_up.svg\";\nimport Down from \"@servicetitan/hammer-icon/mdi/round/arrow_drop_down.svg\";\n\nimport { Button, ButtonProps } from \"../../../Button\";\nimport { DialogContext } from \"../../../Dialog/internal/DialogContext\";\nimport { DrawerContext } from \"../../../Drawer/internal/DrawerContext\";\nimport { Icon, IconProps } from \"../../../Icon\";\nimport { ThemeProvider, PortalProviderContext } from \"../../../../providers\";\nimport { ThemeProviderContext } from \"../../../../providers/ThemeProvider/internal/ThemeProviderContext\";\nimport { useMergeRefs } from \"../../../../hooks\";\n\nimport { MenuLegacyItem } from \"./MenuLegacyItem\";\nimport { MenuLegacyContext } from \"./MenuLegacyContext\";\n\nimport styles from \"./MenuLegacy.module.scss\";\n\nexport type PopoverControlProps = {\n disableAutoHeight?: boolean;\n root?: HTMLElement | React.MutableRefObject<HTMLElement | null> | null;\n placement?: \"bottom-start\" | \"top-start\" | \"bottom-end\" | \"top-end\";\n};\n\ntype TriggerReturnProps = {\n \"data-open\"?: boolean;\n \"data-focus-inside\"?: boolean;\n \"aria-controls\"?: AriaAttributes[\"aria-controls\"];\n \"aria-expanded\"?: AriaAttributes[\"aria-expanded\"];\n \"aria-haspopup\"?: AriaAttributes[\"aria-haspopup\"];\n id?: string;\n onClick?: () => void;\n onFocus?: () => void;\n onKeyDown?: () => void;\n onKeyUp?: () => void;\n onMouseDown?: () => void;\n onPointerDown?: () => void;\n ref?: ((instance: HTMLElement | null) => void) | null;\n};\n\ntype DefaultTriggerProps = {\n trigger?: never;\n open?: boolean;\n icon?: IconProps[\"svg\"];\n} & (\n | {\n label: string;\n }\n | {\n \"aria-label\": string;\n }\n | {\n \"aria-labellbedby\": string;\n }\n) &\n Omit<ButtonProps, \"icon\"> &\n PopoverControlProps;\n\ntype CustomTriggerProps = {\n trigger: (props: TriggerReturnProps) => ReactElement;\n icon?: IconProps[\"svg\"];\n label?: never;\n open?: boolean;\n // This is to allow any type of element to be used as a custom trigger element\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n} & Omit<HTMLProps<any>, \"ref\"> &\n PopoverControlProps;\n\nexport type MenuLegacyProps = DefaultTriggerProps | CustomTriggerProps;\n\nexport const MenuLegacyComponent = forwardRef<HTMLElement, MenuLegacyProps>(\n (\n {\n children,\n disableAutoHeight,\n open,\n icon,\n root,\n placement = \"bottom-start\",\n ...props\n },\n forwardedRef,\n ) => {\n const [isOpen, setIsOpen] = useState(!!open || false);\n const [hasFocusInside, setHasFocusInside] = useState(false);\n const [activeIndex, setActiveIndex] = useState<number | null>(null);\n\n const scrollRef = useRef<HTMLDivElement>(null);\n const [scrollTop, setScrollTop] = useState(0);\n const [menuHeight, setMenuLegacyHeight] = useState<number | null>(null);\n const [arrowStart, setArrowStart] = useState(false);\n const [arrowEnd, setArrowEnd] = useState(false);\n\n const elementsRef = useRef<Array<HTMLButtonElement | null>>([]);\n const labelsRef = useRef<Array<string | null>>([]);\n const parent = useContext(MenuLegacyContext);\n const { root: portalRoot } = useContext(PortalProviderContext);\n\n const tree = useFloatingTree();\n const nodeId = useFloatingNodeId();\n const parentId = useFloatingParentNodeId();\n const item = useListItem();\n\n const isNested = parentId != null;\n\n const { theme, mode = \"light\" } = useContext(ThemeProviderContext);\n\n const dialogContext = useContext(DialogContext);\n const drawerContext = useContext(DrawerContext);\n\n const fallbackArr = () => {\n if (!isNested) {\n if (placement.startsWith(\"top\")) {\n return disableAutoHeight\n ? placement\n : [\"top-start\", \"top-end\", \"bottom-start\", \"bottom-end\"];\n }\n return disableAutoHeight\n ? placement\n : [\"bottom-start\", \"bottom-end\", \"top-start\", \"top-end\"];\n }\n\n return parent.disableAutoHeight\n ? [\"right-start\"]\n : [\"right-start\", \"right-end\", \"left-start\", \"left-end\"];\n };\n\n const handleIsOpenChange = (internalOpen: boolean) => {\n if (typeof open === \"boolean\") {\n setIsOpen(open);\n return;\n }\n setIsOpen(internalOpen);\n };\n\n const { floatingStyles, refs, context } = useFloating<HTMLButtonElement>({\n nodeId,\n open: isOpen,\n onOpenChange: handleIsOpenChange,\n placement: isNested ? \"right-start\" : placement,\n middleware: [\n offset({\n mainAxis: isNested ? 0 : 4,\n alignmentAxis: isNested ? -4 : 0,\n }),\n flip({\n fallbackStrategy: \"bestFit\",\n fallbackPlacements: fallbackArr() as Placement[],\n }),\n shift({\n mainAxis: !parent.disableAutoHeight,\n crossAxis: false,\n limiter: limitShift({\n mainAxis: !parent.disableAutoHeight,\n }),\n }),\n size({\n padding: 8,\n apply({ availableWidth, availableHeight, elements }) {\n if (disableAutoHeight ?? parent.disableAutoHeight) return;\n setMenuLegacyHeight(availableHeight);\n Object.assign(elements.floating.style, {\n maxWidth: `${availableWidth}px`,\n maxHeight: `${availableHeight}px`,\n });\n },\n }),\n ],\n whileElementsMounted: autoUpdate,\n });\n const [hoverEnabled, setHoverEnabled] = useState(false);\n const hover = useHover(context, {\n enabled: hoverEnabled,\n delay: { open: 75 },\n handleClose: safePolygon({ blockPointerEvents: true }),\n });\n const click = useClick(context, {\n event: \"mousedown\",\n toggle: !isNested,\n ignoreMouse: isNested,\n });\n const role = useRole(context, { role: \"menu\" });\n const dismiss = useDismiss(context, { bubbles: true });\n const listNavigation = useListNavigation(context, {\n listRef: elementsRef,\n activeIndex,\n nested: isNested,\n onNavigate: setActiveIndex,\n });\n const typeahead = useTypeahead(context, {\n listRef: labelsRef,\n onMatch: isOpen ? setActiveIndex : undefined,\n activeIndex,\n });\n\n const { getReferenceProps, getFloatingProps, getItemProps } =\n useInteractions([hover, click, role, dismiss, listNavigation, typeahead]);\n\n // Event emitter allows you to communicate across tree components.\n // This effect closes all menus when an item gets clicked anywhere\n // in the tree.\n useEffect(() => {\n if (!tree) return;\n\n function handleTreeClick() {\n setIsOpen(!!open || false);\n }\n\n function onSubMenuLegacyOpen(event: {\n nodeId: string;\n parentId: string;\n }) {\n if (event.nodeId === nodeId || event.parentId !== parentId) {\n return;\n }\n setIsOpen(!!open || false);\n }\n\n tree.events.on(\"click\", handleTreeClick);\n tree.events.on(\"menuopen\", onSubMenuLegacyOpen);\n\n return () => {\n tree.events.off(\"click\", handleTreeClick);\n tree.events.off(\"menuopen\", onSubMenuLegacyOpen);\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [tree, nodeId, parentId]);\n\n useEffect(() => {\n if (disableAutoHeight ?? parent.disableAutoHeight) return;\n if (!isOpen) {\n setMenuLegacyHeight(null);\n return;\n }\n setTimeout(() => {\n if (!scrollRef.current || !refs.floating.current) return;\n setMenuLegacyHeight(refs.floating.current.clientHeight);\n const isOverflow =\n scrollRef.current.scrollHeight > refs.floating.current.clientHeight;\n if (!isOverflow) return;\n const showTop = scrollRef.current.scrollTop > 0;\n const showBottom =\n scrollRef.current.scrollHeight -\n refs.floating.current.clientHeight -\n scrollTop -\n 16 >\n 0;\n setArrowStart(showTop);\n setArrowEnd(showBottom);\n }, 0);\n }, [\n disableAutoHeight,\n isOpen,\n parent.disableAutoHeight,\n refs.floating,\n scrollTop,\n ]);\n\n useEffect(() => {\n if (!isOpen || !tree) return;\n tree.events.emit(\"menuopen\", { parentId, nodeId });\n }, [tree, isOpen, nodeId, parentId]);\n\n const menuComponentCX = cx({\n [styles[\"nested-menu\"]]: isNested,\n [styles[\"item\"]]: !isNested,\n });\n\n const menuRefs = useMergeRefs([refs.setReference, item.ref, forwardedRef]);\n\n const triggerProps: TriggerReturnProps = {\n \"data-open\": isOpen,\n \"data-focus-inside\": hasFocusInside,\n ref: menuRefs,\n ...getReferenceProps(\n parent.getItemProps({\n ...props,\n // This is to allow any type of element to be used as a custom trigger element\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n onFocus(event: FocusEvent<any>) {\n props.onFocus?.(event);\n setHasFocusInside(false);\n parent.setHasFocusInside?.(true);\n },\n // This is to allow any type of element to be used as a custom trigger element\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n } as HTMLProps<any>),\n ),\n };\n\n const value = useMemo(\n () => ({\n activeIndex,\n setActiveIndex,\n getItemProps,\n setHasFocusInside,\n isOpen,\n disableAutoHeight: disableAutoHeight ?? parent.disableAutoHeight,\n }),\n [\n activeIndex,\n disableAutoHeight,\n getItemProps,\n isOpen,\n parent.disableAutoHeight,\n ],\n );\n\n return (\n <FloatingNode id={nodeId}>\n {isNested ? (\n <button\n ref={menuRefs}\n tabIndex={parent.activeIndex === item.index ? 0 : -1}\n role=\"menuitem\"\n data-anv=\"menu-item\"\n data-open={isOpen ? \"\" : undefined}\n data-nested=\"\"\n data-focus-inside={hasFocusInside ? \"\" : undefined}\n className={menuComponentCX}\n {...getReferenceProps(\n parent.getItemProps({\n ...props,\n onFocus(event: FocusEvent<HTMLButtonElement>) {\n props.onFocus?.(event);\n setHasFocusInside(false);\n parent.setHasFocusInside?.(true);\n },\n onMouseEnter: () => setHoverEnabled(true),\n } as HTMLProps<HTMLButtonElement>),\n )}\n >\n {icon ? <Icon inherit aria-hidden svg={icon} /> : null}\n {\"label\" in props && props.label}\n <div style={{ flexGrow: 1 }} />\n <Icon aria-hidden svg={Next} />\n </button>\n ) : \"trigger\" in props ? (\n props.trigger?.(triggerProps)\n ) : (\n <Button\n {...(props as ButtonProps)}\n {...(triggerProps as DefaultTriggerProps)}\n {...getReferenceProps({\n onFocus: (event) => props.onFocus?.(event),\n } as HTMLProps<HTMLButtonElement>)}\n icon={icon}\n data-anv=\"menu\"\n >\n {\"label\" in props && props.label}\n </Button>\n )}\n\n <MenuLegacyContext.Provider value={value}>\n <FloatingList elementsRef={elementsRef} labelsRef={labelsRef}>\n {isOpen &&\n (dialogContext == null ||\n dialogContext?.ref?.current != null) && (\n <FloatingPortal\n root={\n root ??\n dialogContext?.ref?.current ??\n drawerContext?.ref?.current ??\n portalRoot\n }\n >\n <FloatingFocusManager\n context={context}\n modal={false}\n initialFocus={isNested ? -1 : 0}\n returnFocus={!isNested}\n >\n <ThemeProvider theme={theme} mode={mode}>\n <div\n ref={refs.setFloating}\n className={styles[\"menu\"]}\n style={floatingStyles}\n {...getFloatingProps({\n onMouseEnter: () => {\n setHoverEnabled(false);\n },\n onKeyDown: (e) => {\n if (\n e.code === \"ArrowLeft\" ||\n e.code === \"ArrowRight\"\n ) {\n e.stopPropagation();\n }\n },\n })}\n >\n {arrowStart && (\n <div className={styles[\"arrow-up\"]} aria-hidden>\n <Icon\n svg={Up}\n size=\"xlarge\"\n className={styles[\"arrow-icon\"]}\n />\n </div>\n )}\n <div\n ref={scrollRef}\n className={styles[\"scroll\"]}\n style={{\n position: \"relative\",\n maxHeight: menuHeight ?? \"inherit\",\n }}\n onScroll={(e: MouseEvent<HTMLDivElement>) =>\n setScrollTop(e.currentTarget.scrollTop)\n }\n >\n {children}\n </div>\n {arrowEnd && (\n <div className={styles[\"arrow-down\"]} aria-hidden>\n <Icon\n svg={Down}\n size=\"xlarge\"\n className={styles[\"arrow-icon\"]}\n />\n </div>\n )}\n </div>\n </ThemeProvider>\n </FloatingFocusManager>\n </FloatingPortal>\n )}\n </FloatingList>\n </MenuLegacyContext.Provider>\n </FloatingNode>\n );\n },\n);\n\nMenuLegacyComponent.displayName = \"MenuLegacyComponent\";\n\nconst MenuLegacyElement = forwardRef<HTMLElement, MenuLegacyProps>(\n (props, ref) => {\n const parentId = useFloatingParentNodeId();\n\n if (parentId === null) {\n return (\n <FloatingTree>\n <MenuLegacyComponent {...props} ref={ref} />\n </FloatingTree>\n );\n }\n\n return <MenuLegacyComponent {...props} ref={ref} />;\n },\n);\n\nMenuLegacyElement.displayName = \"MenuLegacy\";\n\nexport const MenuLegacy = Object.assign(MenuLegacyElement, {\n Item: MenuLegacyItem,\n});\n","import {\n ButtonHTMLAttributes,\n forwardRef,\n useContext,\n ComponentPropsWithoutRef,\n ReactNode,\n MouseEvent,\n useId,\n useRef,\n useState,\n} from \"react\";\nimport cx from \"classnames\";\n\nimport { childrenToString, supportsPopover } from \"../../internal/functions\";\nimport { DataTrackingId } from \"../../types\";\nimport { Icon, IconProps } from \"../Icon\";\nimport { MenuContext } from \"./internal/MenuContext\";\nimport { useMergeRefs, useTrackingId } from \"../../hooks\";\n\nimport { MenuLegacyItem } from \"./internal/MenuLegacy\";\n\nimport styles from \"./Menu.module.scss\";\n\n/**\n * Props for the MenuItem component\n * @extends ComponentPropsWithoutRef<\"button\">\n */\nexport type MenuItemProps = {\n /**\n * Icon to display next to the menu item label\n */\n icon?: IconProps[\"svg\"];\n /**\n * The label text or content for the menu item\n */\n label: ReactNode;\n /**\n * Whether the menu item is disabled\n * @default false\n */\n disabled?: boolean;\n} & ComponentPropsWithoutRef<\"button\"> &\n DataTrackingId;\n\n/**\n * MenuItem component for individual menu options within a Menu.\n *\n * Features:\n * - Supports icons and labels\n * - Keyboard navigation support\n * - Disabled state handling\n * - Automatic menu closing on selection\n * - Fully accessible with proper ARIA attributes\n * - Focus management and tab index handling\n * - Click and mouse enter event handling\n * - Legacy popover support with fallback\n *\n * @example\n * <MenuItem\n * label=\"Edit Profile\"\n * icon={EditIcon}\n * onClick={() => console.log('Edit profile clicked')}\n * />\n */\nexport const MenuItem = forwardRef<\n HTMLButtonElement,\n MenuItemProps & ButtonHTMLAttributes<HTMLButtonElement>\n>((props, ref) => {\n const {\n label,\n disabled,\n icon,\n className,\n onClick,\n onMouseEnter,\n id: idProp,\n ...rest\n } = props;\n const menuContext = useContext(MenuContext);\n const uid = useId();\n const buttonRef = useRef<HTMLButtonElement>(null);\n const combinedRef = useMergeRefs([buttonRef, ref]);\n const [tabIndex, setTabIndex] = useState(-1);\n const itemCx = cx([styles[\"item\"]], className);\n const onClickHandler = (e: MouseEvent<HTMLButtonElement>) => {\n if (disabled) {\n e.preventDefault();\n e.stopPropagation();\n return;\n }\n onClick?.(e);\n menuContext?.closeRootMenu();\n };\n const onMouseEnterHandler = (e: MouseEvent<HTMLButtonElement>) => {\n onMouseEnter?.(e);\n buttonRef.current?.focus();\n };\n\n const onFocusHandler = () => {\n setTabIndex(0);\n };\n const onBlurHandler = () => {\n setTabIndex(-1);\n };\n\n const data = {\n label: childrenToString(props.label),\n };\n\n const trackingId = useTrackingId({\n name: \"MenuItem\",\n data,\n hasOverride: !!props[\"data-tracking-id\"],\n });\n\n if (!supportsPopover())\n return (\n <MenuLegacyItem data-tracking-id={trackingId} {...props} ref={ref} />\n );\n\n return (\n <button\n data-tracking-id={trackingId}\n {...rest}\n ref={combinedRef}\n type=\"button\"\n role=\"menuitem\"\n data-anv=\"menu-item\"\n id={idProp ?? `menuitem-${uid.replace(/:/g, \"\")}`}\n className={itemCx}\n tabIndex={tabIndex}\n aria-disabled={disabled}\n onClick={onClickHandler}\n onMouseEnter={onMouseEnterHandler}\n onFocus={onFocusHandler}\n onBlur={onBlurHandler}\n >\n {icon ? <Icon inherit aria-hidden svg={icon} /> : null}\n {label}\n </button>\n );\n});\n\nMenuItem.displayName = \"MenuItem\";\n","import {\n Placement,\n size,\n flip,\n limitShift,\n offset,\n shift,\n computePosition,\n autoUpdate,\n} from \"@floating-ui/react\";\nimport {\n ComponentPropsWithoutRef,\n useEffect,\n useId,\n useRef,\n useState,\n useLayoutEffect,\n useCallback,\n useContext,\n MouseEvent,\n KeyboardEvent,\n} from \"react\";\nimport cx from \"classnames\";\nimport Next from \"@servicetitan/hammer-icon/mdi/round/navigate_next.svg\";\nimport Up from \"@servicetitan/hammer-icon/mdi/round/arrow_drop_up.svg\";\nimport Down from \"@servicetitan/hammer-icon/mdi/round/arrow_drop_down.svg\";\n\nimport {\n getActiveElement,\n safeHidePopover,\n safeShowPopover,\n} from \"../../../internal/functions\";\nimport { Icon, IconProps } from \"../../Icon\";\n\nimport { MenuCommonProps } from \"../types\";\nimport { MenuContext } from \"./MenuContext\";\n\nimport styles from \"../Menu.module.scss\";\n\n/**\n * Props for the MenuNested component\n * @extends ComponentPropsWithoutRef<\"button\">\n * @extends MenuCommonProps\n */\nexport type MenuNestedProps = ComponentPropsWithoutRef<\"button\"> &\n MenuCommonProps & {\n /**\n * Icon to display on the nested menu button\n */\n icon?: IconProps[\"svg\"];\n };\n\n/**\n * MenuNested component for creating nested submenus within a Menu.\n *\n * Features:\n * - Hover-based menu opening and closing\n * - Automatic positioning with fallback strategies\n * - Keyboard navigation with arrow keys\n * - Scroll indicators for overflow content\n * - Automatic height adjustment\n * - Focus management and accessibility\n * - Popover API support with legacy fallback\n * - Smooth transitions and animations\n * - Context integration with parent menus\n *\n * @example\n * <Menu label=\"Edit\">\n * <Menu.Item label=\"Cut\" onClick={() => console.log('Cut clicked')} />\n * <Menu label=\"Copy as\">\n * <Menu.Item label=\"Text\" onClick={() => console.log('Copy as Text')} />\n * <Menu.Item label=\"Video\" onClick={() => console.log('Copy as Video')} />\n * <Menu label=\"Image\">\n * <Menu.Item label=\".png\" onClick={() => console.log('Copy as PNG')} />\n * <Menu.Item label=\".jpg\" onClick={() => console.log('Copy as JPG')} />\n * </Menu>\n * </Menu>\n * </Menu>\n */\nexport const MenuNested = (props: MenuNestedProps) => {\n const { children, open, defaultOpen = false, label, className, icon } = props;\n const uid = useId();\n const [tabIndex, setTabIndex] = useState(-1);\n const [openState, setOpenState] = useState<boolean>(open ?? defaultOpen);\n const [scrollTop, setScrollTop] = useState(0);\n const [menuHeight, setMenuHeight] = useState<number | null>(null);\n const [arrowStart, setArrowStart] = useState(false);\n const [arrowEnd, setArrowEnd] = useState(false);\n const invokerRef = useRef<HTMLButtonElement>(null);\n const menuRef = useRef<HTMLDivElement>(null);\n const childrenRef = useRef<HTMLDivElement>(null);\n const containerRef = useRef<HTMLDivElement>(null);\n const [focusItems, setFocusItems] = useState<HTMLElement[]>();\n const menuContext = useContext(MenuContext);\n\n // TODO: Find a way to test these properly!\n // Stryker disable all : Currently relying on Chromatic test for all visuals\n /* istanbul ignore next */\n const fallbackArr = useCallback(() => {\n return menuContext?.disableAutoHeight\n ? [\"right-start\"]\n : [\"right-start\", \"right-end\", \"left-start\", \"left-end\"];\n }, [menuContext?.disableAutoHeight]);\n\n const updatePosition = useCallback(() => {\n if (!invokerRef.current || !menuRef.current) return;\n const timeoutId = setTimeout(() => {\n if (!invokerRef.current || !menuRef.current) return;\n computePosition(invokerRef.current, menuRef.current, {\n placement: \"right-start\",\n middleware: [\n offset({\n mainAxis: 0,\n alignmentAxis: -4,\n }),\n flip({\n fallbackStrategy: \"bestFit\",\n fallbackPlacements: fallbackArr() as Placement[],\n }),\n shift({\n mainAxis: !menuContext?.disableAutoHeight,\n crossAxis: false,\n limiter: limitShift({\n mainAxis: !menuContext?.disableAutoHeight,\n }),\n }),\n size({\n padding: 8,\n apply({ availableWidth, availableHeight, elements }) {\n if (menuContext?.disableAutoHeight) return;\n const newHeight = availableHeight;\n if (Math.abs((menuHeight ?? 0) - newHeight) > 1) {\n setMenuHeight(newHeight);\n Object.assign(elements.floating.style, {\n maxWidth: `${availableWidth - 16}px`,\n maxHeight: `${availableHeight - 16}px`,\n });\n }\n },\n }),\n ],\n }).then(({ x, y }) => {\n if (!menuRef.current) return;\n Object.assign(menuRef.current.style, {\n left: `${x}px`,\n top: `${y + 8}px`,\n });\n });\n }, 50);\n return () => clearTimeout(timeoutId);\n }, [fallbackArr, menuContext?.disableAutoHeight, menuHeight]);\n\n const menuReference = useRef<HTMLDivElement | null>(null);\n useLayoutEffect(() => {\n if (!openState) {\n setMenuHeight(null);\n setScrollTop(0);\n return;\n }\n\n if (!menuRef.current) return;\n menuReference.current = menuRef.current;\n\n let resizeTimeout: number | null = null;\n const lastDimensions = {\n height: menuReference.current.clientHeight,\n scrollHeight: childrenRef.current?.scrollHeight ?? 0,\n };\n\n const updateArrows = (height: number, scrollHeight: number) => {\n if (!childrenRef.current) return;\n const isOverflow = scrollHeight > height;\n setArrowStart(isOverflow && childrenRef.current.scrollTop > 0);\n setArrowEnd(isOverflow && scrollHeight - height - scrollTop - 16 > 0);\n };\n\n const observer = new ResizeObserver(() => {\n if (!childrenRef.current || !menuReference.current) return;\n\n if (resizeTimeout) {\n window.clearTimeout(resizeTimeout);\n }\n\n resizeTimeout = window.setTimeout(() => {\n const newHeight = menuReference.current?.clientHeight ?? 0;\n const newScrollHeight = childrenRef.current?.scrollHeight ?? 0;\n\n if (!newHeight) return;\n\n lastDimensions.height = newHeight;\n lastDimensions.scrollHeight = newScrollHeight;\n\n setMenuHeight(newHeight);\n updateArrows(newHeight, newScrollHeight);\n }, 100); // Shorter debounce for nested menu\n });\n\n if (menuReference.current) {\n observer.observe(menuReference.current);\n }\n\n return () => {\n if (resizeTimeout) {\n window.clearTimeout(resizeTimeout);\n }\n if (menuReference.current) {\n observer.unobserve(menuReference.current);\n }\n observer.disconnect();\n };\n }, [openState, scrollTop]);\n\n // Effect to add autoUpdate to eventListener\n // while the popover is opened\n useLayoutEffect(() => {\n if (!menuRef.current || !invokerRef.current) return;\n\n const cleanup = autoUpdate(invokerRef.current, menuRef.current, () => {\n updatePosition();\n });\n\n return () => {\n cleanup();\n };\n }, [updatePosition]);\n // Stryker restore all\n\n const popoverHoverTriggered = useRef<boolean>();\n\n // Main function to open menu\n // This gets canceled if close is called before the promise is resolved\n // Ex) Allows cursor jump from invoker to menu\n // without closing\n const openMenu = useCallback(async () => {\n popoverHoverTriggered.current = true;\n await new Promise((resolve) => setTimeout(resolve, 100));\n if (\n !popoverHoverTriggered.current ||\n !menuRef.current ||\n !childrenRef.current\n )\n return;\n\n // Show the menu but keep it transparent\n menuRef.current.style.opacity = \"0\";\n safeShowPopover(menuRef.current);\n\n // Position the menu before showing it\n if (!invokerRef.current || !menuRef.current) return;\n\n await computePosition(invokerRef.current, menuRef.current, {\n placement: \"right-start\",\n middleware: [\n offset({\n mainAxis: 0,\n alignmentAxis: -4,\n }),\n flip({\n fallbackStrategy: \"bestFit\",\n fallbackPlacements: fallbackArr() as Placement[],\n }),\n shift({\n mainAxis: !menuContext?.disableAutoHeight,\n crossAxis: false,\n limiter: limitShift({\n mainAxis: !menuContext?.disableAutoHeight,\n }),\n }),\n ],\n }).then(({ x, y }) => {\n if (!menuRef.current) return;\n Object.assign(menuRef.current.style, {\n left: `${x}px`,\n top: `${y + 8}px`,\n });\n });\n\n setOpenState(true);\n const focusables = Array.from(\n childrenRef.current.querySelectorAll(\n `#scroller-${uid.replace(/:/g, \"\")} > button, #scroller-${uid.replace(/:/g, \"\")} > div[data-nested=\"true\"] > button, #scroller-${uid.replace(/:/g, \"\")} > a[href]`,\n ),\n ) as HTMLElement[];\n setFocusItems(focusables);\n\n // Make the menu visible with a short delay to ensure smooth transition\n requestAnimationFrame(() => {\n if (!menuRef.current) return;\n menuRef.current.style.opacity = \"1\";\n });\n }, [uid, fallbackArr, menuContext?.disableAutoHeight]);\n\n // Main function to close menu\n // This gets canceled if close is called before the promise is resolved\n // Ex) Allows menu to be kept closed when cursor\n // moves out of the invoker and menu\n const closeMenu = useCallback(async (fn?: () => void) => {\n popoverHoverTriggered.current = false;\n await new Promise((resolve) => setTimeout(resolve, 100));\n if (popoverHoverTriggered.current || !menuRef.current) return;\n fn?.();\n safeHidePopover(menuRef.current);\n setOpenState(false);\n }, []);\n\n const isControlled = typeof open !== \"undefined\";\n\n // Updating openness for controlled\n const initialRender = useRef(true);\n useEffect(() => {\n if (!isControlled) return;\n if (initialRender.current === true) {\n if (open && menuRef.current) {\n openMenu();\n }\n initialRender.current = false;\n return;\n }\n setOpenState(open);\n if (open) {\n openMenu();\n } else {\n closeMenu();\n }\n }, [closeMenu, isControlled, open, openMenu]);\n\n useEffect(() => {\n if (!containerRef.current) return;\n const nestedContainer = containerRef.current;\n nestedContainer.addEventListener(\"focusin\", (_e) => {\n openMenu();\n });\n nestedContainer.addEventListener(\"focusout\", () => closeMenu());\n return () => {\n nestedContainer.removeEventListener(\"focusin\", () => openMenu());\n nestedContainer.removeEventListener(\"focusout\", () => closeMenu());\n };\n }, [closeMenu, openMenu]);\n\n const onKeyDownHandler = (e: KeyboardEvent<HTMLDivElement>) => {\n if (!openState || !childrenRef.current) return;\n\n const currentActiveIndex = focusItems?.findIndex(\n (item) => item.id === getActiveElement(document)?.id,\n );\n\n const firstItem = focusItems?.[0] as HTMLElement;\n const lastItem = focusItems?.[focusItems.length - 1] as HTMLElement;\n\n if (e.code === \"Escape\") {\n menuContext?.closeRootMenu();\n }\n if (e.code === \"ArrowLeft\") {\n e.stopPropagation();\n e.preventDefault();\n invokerRef.current?.focus();\n closeMenu();\n }\n if (e.code === \"ArrowDown\") {\n e.stopPropagation();\n if (currentActiveIndex === (focusItems?.length ?? 0) - 1) {\n firstItem.focus();\n return;\n }\n const nextItem = focusItems?.[\n (currentActiveIndex ?? 0) + 1\n ] as HTMLElement;\n nextItem.focus();\n return;\n }\n if (e.code === \"ArrowUp\") {\n e.stopPropagation();\n e.preventDefault();\n if (currentActiveIndex === 0) {\n lastItem.focus();\n return;\n }\n const prevItem = focusItems?.[\n (currentActiveIndex ?? 0) - 1\n ] as HTMLElement;\n prevItem.focus();\n return;\n }\n };\n\n const onFocusHandler = () => {\n setTabIndex(0);\n };\n const onBlurHandler = () => {\n setTabIndex(-1);\n };\n\n const MenuButtonOnKeyDownHandler = (e: KeyboardEvent<HTMLButtonElement>) => {\n if (e.code === \"ArrowRight\") {\n e.stopPropagation();\n e.preventDefault();\n openMenu();\n const firstItem = menuRef.current?.querySelectorAll(\n `#scroller-${uid.replace(/:/g, \"\")} > button, #scroller-${uid.replace(/:/g, \"\")} > a[href]`,\n )[0];\n (firstItem as HTMLButtonElement).focus();\n }\n };\n\n const MenuButtonOnClick = () => {\n if (isControlled) return;\n openMenu();\n };\n\n const itemCx = cx([styles[\"item\"]], className);\n\n return (\n <div ref={containerRef} data-nested=\"true\">\n <button\n role=\"menuitem\"\n data-anv=\"menu-item\"\n data-state={openState ? \"open\" : \"close\"}\n ref={invokerRef}\n id={`menuitem-${uid.replace(/:/g, \"\")}`}\n aria-expanded={openState}\n onMouseEnter={(e) => {\n e.currentTarget.focus();\n }}\n onKeyDown={MenuButtonOnKeyDownHandler}\n onFocus={onFocusHandler}\n onBlur={onBlurHandler}\n onClick={MenuButtonOnClick}\n aria-haspopup={true}\n aria-controls={`menu-${uid.replace(/:/g, \"\")}`}\n className={itemCx}\n tabIndex={tabIndex}\n >\n {icon ? <Icon inherit aria-hidden svg={icon} /> : null}\n {label}\n <div style={{ flexGrow: 1 }} />\n <Icon aria-hidden svg={Next} />\n </button>\n <div\n popover=\"auto\"\n id={`menu-${uid.replace(/:/g, \"\")}`}\n data-anv=\"menu-content\"\n className={styles.content}\n ref={menuRef}\n role=\"presentation\"\n onKeyDown={onKeyDownHandler}\n >\n {arrowStart && (\n <div className={styles[\"arrow-up\"]} aria-hidden>\n <Icon svg={Up} size=\"xlarge\" className={styles[\"arrow-icon\"]} />\n </div>\n )}\n <div\n className={styles.scroller}\n tabIndex={-1}\n ref={childrenRef}\n style={{\n position: \"relative\",\n maxHeight: menuHeight ?? \"inherit\",\n }}\n onScroll={(e: MouseEvent<HTMLDivElement>) =>\n setScrollTop(e.currentTarget.scrollTop)\n }\n role=\"menu\"\n id={`scroller-${uid.replace(/:/g, \"\")}`}\n >\n {children}\n </div>\n {arrowEnd && (\n <div className={styles[\"arrow-down\"]} aria-hidden>\n <Icon svg={Down} size=\"xlarge\" className={styles[\"arrow-icon\"]} />\n </div>\n )}\n </div>\n </div>\n );\n};\n","import {\n useEffect,\n useId,\n useRef,\n useState,\n useMemo,\n useLayoutEffect,\n useCallback,\n useContext,\n KeyboardEvent,\n MouseEvent,\n forwardRef,\n} from \"react\";\nimport {\n Placement,\n size,\n flip,\n limitShift,\n offset,\n shift,\n computePosition,\n autoUpdate,\n} from \"@floating-ui/react\";\nimport cx from \"classnames\";\nimport Up from \"@servicetitan/hammer-icon/mdi/round/arrow_drop_up.svg\";\nimport Down from \"@servicetitan/hammer-icon/mdi/round/arrow_drop_down.svg\";\n\nimport { Button, ButtonProps } from \"../Button\";\nimport { childrenToString } from \"../../internal/functions\";\nimport { DialogContext } from \"../Dialog/internal/DialogContext\";\nimport { getActiveElement } from \"../../internal/functions\";\nimport { Icon, IconProps } from \"../Icon\";\nimport {\n supportsPopover,\n safeHidePopover,\n safeShowPopover,\n} from \"../../internal/functions\";\nimport { useTrackingId } from \"../../hooks\";\nimport { DataTrackingId } from \"../../types\";\n\nimport { MenuContext } from \"./internal/MenuContext\";\nimport { MenuItem } from \"./MenuItem\";\nimport {\n MenuLegacy as MenuLegacyComponent,\n MenuLegacyProps,\n} from \"./internal/MenuLegacy\";\nimport { MenuNested } from \"./internal/MenuNested\";\nimport { MenuCommonProps } from \"./types\";\n\nimport styles from \"./Menu.module.scss\";\n\n/**\n * Props for the Menu component\n * @extends Omit<ButtonProps, \"icon\">\n * @extends MenuCommonProps\n */\nexport type MenuProps = Omit<ButtonProps, \"icon\"> &\n MenuCommonProps & {\n /**\n * Icon to display on the menu button\n */\n icon?: IconProps[\"svg\"];\n } & DataTrackingId;\n\nconst MenuElement = forwardRef<HTMLElement, MenuProps>(\n (props: MenuProps, ref) => {\n const {\n children,\n placement = \"bottom-start\",\n open,\n defaultOpen = false,\n disableAutoHeight,\n label,\n onOutsidePress,\n trigger,\n root,\n contentClassName,\n maxHeight,\n ...rest\n } = props;\n const uid = useId();\n const [openState, setOpenState] = useState<boolean>(open ?? defaultOpen);\n const [scrollTop, setScrollTop] = useState(0);\n const [menuHeight, setMenuHeight] = useState<number | null>(null);\n const [arrowStart, setArrowStart] = useState(false);\n const [arrowEnd, setArrowEnd] = useState(false);\n const invokerRef = useRef<HTMLButtonElement>(null);\n const menuRef = useRef<HTMLDivElement>(null);\n const childrenRef = useRef<HTMLDivElement>(null);\n const [focusItems, setFocusItems] = useState<HTMLElement[]>();\n const dialogContext = useContext(DialogContext);\n const menuContext = useContext(MenuContext);\n\n // TODO: Find a way to test these properly!\n // Stryker disable all : Currently relying on Chromatic test for all visuals\n const fallbackArr = useCallback(() => {\n if (placement.startsWith(\"top\")) {\n return disableAutoHeight\n ? placement\n : [\"top-start\", \"top-end\", \"bottom-start\", \"bottom-end\"];\n }\n return disableAutoHeight\n ? placement\n : [\"bottom-start\", \"bottom-end\", \"top-start\", \"top-end\"];\n }, [disableAutoHeight, placement]);\n\n /* istanbul ignore next */\n const updatePosition = useCallback(() => {\n if (!invokerRef.current || !menuRef.current) return;\n const timeoutId = setTimeout(() => {\n if (!invokerRef.current || !menuRef.current) return;\n computePosition(invokerRef.current, menuRef.current, {\n placement: placement,\n middleware: [\n offset({\n mainAxis: 5,\n alignmentAxis: 0,\n }),\n flip({\n fallbackStrategy: \"bestFit\",\n fallbackPlacements: fallbackArr() as Placement[],\n }),\n shift({\n mainAxis: !menuContext?.disableAutoHeight,\n crossAxis: false,\n limiter: limitShift({\n mainAxis: !menuContext?.disableAutoHeight,\n }),\n }),\n size({\n padding: 8,\n apply({ availableWidth, availableHeight, elements }) {\n if (disableAutoHeight ?? menuContext?.disableAutoHeight) return;\n const newHeight = availableHeight;\n if (Math.abs((menuHeight ?? 0) - newHeight) > 1) {\n setMenuHeight(newHeight);\n Object.assign(elements.floating.style, {\n maxWidth: `${availableWidth - 16}px`,\n maxHeight: maxHeight\n ? `${Math.min(availableHeight - 16, typeof maxHeight === \"number\" ? maxHeight : parseInt(maxHeight.toString()))}px`\n : `${availableHeight - 16}px`,\n });\n }\n },\n }),\n ],\n }).then(({ x, y }) => {\n if (!menuRef.current) return;\n Object.assign(menuRef.current.style, {\n left: `${x}px`,\n top: `${y}px`,\n });\n });\n }, 50);\n return () => clearTimeout(timeoutId);\n }, [\n placement,\n fallbackArr,\n menuContext?.disableAutoHeight,\n disableAutoHeight,\n menuHeight,\n maxHeight,\n ]);\n\n const menuReference = useRef<HTMLDivElement | null>(null);\n\n useLayoutEffect(() => {\n if (!openState) {\n setMenuHeight(null);\n setScrollTop(0);\n return;\n }\n if (!menuRef.current) return;\n menuReference.current = menuRef.current;\n\n let resizeTimeout: number | null = null;\n const lastDimensions = {\n height: menuReference.current.clientHeight,\n scrollHeight: childrenRef.current?.scrollHeight ?? 0,\n };\n\n const updateArrows = (height: number, scrollHeight: number) => {\n if (!childrenRef.current) return;\n const isOverflow = scrollHeight > height;\n setArrowStart(isOverflow && childrenRef.current.scrollTop > 0);\n setArrowEnd(isOverflow && scrollHeight - height - scrollTop - 16 > 0);\n };\n\n const observer = new ResizeObserver(() => {\n if (!childrenRef.current || !menuReference.current) return;\n\n if (resizeTimeout) {\n window.clearTimeout(resizeTimeout);\n }\n\n resizeTimeout = window.setTimeout(() => {\n const newHeight = menuReference.current?.clientHeight ?? 0;\n const newScrollHeight = childrenRef.current?.scrollHeight ?? 0;\n\n if (!newHeight) return;\n\n lastDimensions.height = newHeight;\n lastDimensions.scrollHeight = newScrollHeight;\n\n setMenuHeight(newHeight);\n updateArrows(newHeight, newScrollHeight);\n }, 150);\n });\n\n if (menuReference.current) {\n observer.observe(menuReference.current);\n }\n\n return () => {\n if (resizeTimeout) {\n window.clearTimeout(resizeTimeout);\n }\n if (menuReference.current) {\n observer.unobserve(menuReference.current);\n }\n observer.disconnect();\n };\n }, [openState, scrollTop]);\n\n // Effect to add autoUpdate to eventListener\n // while the popover is opened\n useLayoutEffect(() => {\n if (!menuRef.current || !invokerRef.current) return;\n\n const cleanup = autoUpdate(invokerRef.current, menuRef.current, () => {\n updatePosition();\n });\n\n return () => {\n cleanup();\n };\n }, [updatePosition]);\n // Stryker restore all\n\n // Main function to open menu\n // This gets canceled if close is called before the promise is resolved\n // Ex) Allows cursor jump from invoker to menu\n // without closing\n const openMenu = useCallback(async () => {\n if (!menuRef.current || !childrenRef.current) return;\n\n safeShowPopover(menuRef.current);\n\n // Position the menu before showing it\n if (!invokerRef.current || !menuRef.current) return;\n\n await computePosition(invokerRef.current, menuRef.current, {\n placement: placement,\n middleware: [\n offset({\n mainAxis: 5,\n alignmentAxis: 0,\n }),\n flip({\n fallbackStrategy: \"bestFit\",\n fallbackPlacements: fallbackArr() as Placement[],\n }),\n shift({\n mainAxis: !menuContext?.disableAutoHeight,\n crossAxis: false,\n limiter: limitShift({\n mainAxis: !menuContext?.disableAutoHeight,\n }),\n }),\n ],\n }).then(({ x, y }) => {\n if (!menuRef.current) return;\n Object.assign(menuRef.current.style, {\n left: `${x}px`,\n top: `${y}px`,\n });\n menuRef.current.dataset.positioned = \"true\";\n });\n\n setOpenState(true);\n\n // Wait for next frame to ensure DOM is updated\n requestAnimationFrame(() => {\n if (!childrenRef.current) return;\n const focusables = Array.from(\n childrenRef.current.querySelectorAll(\n `#scroller-${uid.replace(/:/g, \"\")} > button, #scroller-${uid.replace(/:/g, \"\")} > div[data-nested=\"true\"] > button, #scroller-${uid.replace(/:/g, \"\")} > a[href]`,\n ),\n ) as HTMLElement[];\n setFocusItems(focusables);\n });\n\n dialogContext?.setHasOpenPopover?.(true);\n }, [\n dialogContext,\n uid,\n placement,\n fallbackArr,\n menuContext?.disableAutoHeight,\n ]);\n\n // Main function to close menu\n // This gets canceled if close is called before the promise is resolved\n // Ex) Allows popover to be kept closed when cursor\n // moves out of the invoker and menu\n const closeMenu = useCallback(\n async (fn?: () => void) => {\n if (!menuRef.current || !openState) return;\n fn?.();\n setOpenState(false);\n safeHidePopover(menuRef.current);\n dialogContext?.setHasOpenPopover?.(false);\n invokerRef.current?.focus();\n },\n [openState, dialogContext],\n );\n\n const isControlled = typeof open !== \"undefined\";\n\n // Updating openness for controlled\n const initialRender = useRef(true);\n useEffect(() => {\n if (!isControlled) return;\n if (initialRender.current === true) {\n if (open && menuRef.current) {\n openMenu();\n }\n initialRender.current = false;\n return;\n }\n if (open) {\n openMenu();\n } else {\n closeMenu();\n }\n // open ? openMenu() : closeMenu();\n }, [closeMenu, isControlled, open, openMenu, dialogContext]);\n\n // Effect to attach eventListener for reading click state from\n // globalThis.MouseEvent for composedPath to detect if target is\n // part of the composedPath, then to attempt to close\n useEffect(() => {\n if (typeof document === \"undefined\") return;\n\n let isClosable = false;\n const onMouseDownHandler = (e: globalThis.MouseEvent) => {\n if (!invokerRef.current || !menuRef.current) return;\n const isInvoker = e.composedPath().includes(invokerRef.current);\n const isPopover = e.composedPath().includes(menuRef.current);\n if (!isInvoker && !isPopover && openState) {\n onOutsidePress?.(e);\n isClosable = true;\n }\n };\n const onMouseUpHandler = (e: globalThis.MouseEvent) => {\n if (!invokerRef.current || !menuRef.current) return;\n const isInvoker = e.composedPath().includes(invokerRef.current);\n const isPopover = e.composedPath().includes(menuRef.current);\n if (!isInvoker && !isPopover && openState) {\n if (isControlled || !isClosable || !openState) return;\n\n closeMenu();\n }\n };\n\n document.addEventListener(\"mousedown\", onMouseDownHandler);\n document.addEventListener(\"mouseup\", onMouseUpHandler);\n return () => {\n document.removeEventListener(\"mousedown\", onMouseDownHandler);\n document.removeEventListener(\"mouseup\", onMouseUpHandler);\n };\n }, [isControlled, openState, onOutsidePress, closeMenu]);\n\n const onKeyDownHandler = (e: KeyboardEvent<HTMLDivElement>) => {\n if (!openState || !childrenRef.current || menuContext) return;\n if (e.code === \"Escape\") {\n e.stopPropagation();\n e.preventDefault();\n closeMenu();\n }\n\n const currentActiveIndex = focusItems?.findIndex(\n (item) => item.id === getActiveElement(document)?.id,\n );\n\n const firstItem = focusItems?.[0] as HTMLElement;\n const lastItem = focusItems?.[focusItems.length - 1] as HTMLElement;\n\n if (e.code === \"ArrowDown\") {\n e.stopPropagation();\n e.preventDefault();\n if (currentActiveIndex === (focusItems?.length ?? 0) - 1) {\n firstItem.focus();\n return;\n }\n const nextItem = focusItems?.[\n (currentActiveIndex ?? 0) + 1\n ] as HTMLElement;\n nextItem.focus();\n return;\n }\n if (e.code === \"ArrowUp\") {\n e.stopPropagation();\n e.preventDefault();\n if (currentActiveIndex === 0) {\n lastItem.focus();\n return;\n }\n const prevItem = focusItems?.[\n (currentActiveIndex ?? 0) - 1\n ] as HTMLElement;\n prevItem.focus();\n return;\n }\n };\n\n const value = useMemo(() => {\n return {\n disableAutoHeight,\n closeRootMenu: menuContext?.closeRootMenu ?? closeMenu,\n };\n }, [disableAutoHeight, menuContext, closeMenu]);\n\n const MenuButtonOnKeyDownHandler = (\n e: KeyboardEvent<HTMLButtonElement>,\n ) => {\n if (e.code === \"ArrowDown\") {\n focusItems?.[0].focus();\n e.stopPropagation();\n e.preventDefault();\n }\n };\n const MenuButtonOnClick = () => {\n if (isControlled) return;\n if (openState) {\n closeMenu();\n return;\n }\n openMenu();\n };\n\n const data = {\n label: childrenToString(props.label),\n };\n\n const trackingId = useTrackingId({\n name: \"Menu\",\n data,\n hasOverride: !!props[\"data-tracking-id\"],\n });\n\n if (!supportsPopover())\n return (\n <MenuLegacyComponent\n data-tracking-id={trackingId}\n {...(props as MenuLegacyProps)}\n ref={ref}\n />\n );\n\n if (menuContext) {\n return (\n <MenuContext.Provider value={value}>\n <MenuNested\n data-tracking-id={trackingId}\n open={open}\n defaultOpen={defaultOpen}\n className={props.className}\n icon={props.icon}\n label={label}\n >\n {children}\n </MenuNested>\n </MenuContext.Provider>\n );\n }\n return (\n <MenuContext.Provider value={value}>\n {trigger ? (\n trigger({\n ref: invokerRef,\n onClick: () => MenuButtonOnClick(),\n \"aria-haspopup\": true,\n \"aria-controls\": `menu-${uid.replace(/:/g, \"\")}`,\n \"aria-expanded\": openState,\n \"data-state\": openState ? \"open\" : \"close\",\n })\n ) : (\n <Button\n ref={invokerRef}\n onClick={MenuButtonOnClick}\n onKeyDown={MenuButtonOnKeyDownHandler}\n aria-haspopup={true}\n aria-controls={`menu-${uid.replace(/:/g, \"\")}`}\n data-state={openState ? \"open\" : \"close\"}\n aria-expanded={openState}\n {...rest}\n >\n {label}\n </Button>\n )}\n <div\n popover=\"manual\"\n id={`menu-${uid.replace(/:/g, \"\")}`}\n data-anv=\"menu-content\"\n className={cx(styles.content, contentClassName)}\n onKeyDown={onKeyDownHandler}\n ref={menuRef}\n role=\"presentation\"\n >\n {arrowStart && (\n <div className={styles[\"arrow-up\"]} aria-hidden>\n <Icon svg={Up} size=\"xlarge\" className={styles[\"arrow-icon\"]} />\n </div>\n )}\n <div\n className={styles.scroller}\n tabIndex={-1}\n ref={childrenRef}\n style={{\n position: \"relative\",\n maxHeight: maxHeight\n ? `${Math.min(menuHeight ?? Infinity, typeof maxHeight === \"number\" ? maxHeight : parseInt(maxHeight.toString()))}px`\n : (menuHeight ?? \"inherit\"),\n }}\n onScroll={(e: MouseEvent<HTMLDivElement>) =>\n setScrollTop(e.currentTarget.scrollTop)\n }\n role=\"menu\"\n id={`scroller-${uid.replace(/:/g, \"\")}`}\n >\n {children}\n </div>\n {arrowEnd && (\n <div className={styles[\"arrow-down\"]} aria-hidden>\n <Icon svg={Down} size=\"xlarge\" className={styles[\"arrow-icon\"]} />\n </div>\n )}\n </div>\n </MenuContext.Provider>\n );\n },\n);\n\nMenuElement.displayName = \"Menu\";\n\n/**\n * Menu component for displaying dropdown menus with navigation and actions.\n *\n * Features:\n * - Supports both controlled and uncontrolled modes\n * - Automatic positioning with fallback strategies\n * - Keyboard navigation with arrow keys and escape\n * - Custom trigger elements\n * - Nested menu support\n * - Automatic height adjustment\n * - Scroll indicators for overflow content\n * - Fully accessible with proper ARIA attributes\n * - Popover API support with legacy fallback\n * - Outside click detection and handling\n *\n * @example\n * <Menu label=\"Edit\">\n * <Menu.Item label=\"Cut\" onClick={() => console.log('Cut clicked')} />\n * <Menu.Item label=\"Copy\" onClick={() => console.log('Copy clicked')} />\n * <Menu label=\"Copy as\">\n * <Menu.Item label=\"Text\" onClick={() => console.log('Copy as Text')} />\n * <Menu.Item label=\"Video\" onClick={() => console.log('Copy as Video')} />\n * <Menu label=\"Image\">\n * <Menu.Item label=\".png\" onClick={() => console.log('Copy as PNG')} />\n * <Menu.Item label=\".jpg\" onClick={() => console.log('Copy as JPG')} />\n * </Menu>\n * </Menu>\n */\nexport const Menu = Object.assign(MenuElement, {\n /**\n * MenuItem component for individual menu options.\n *\n * Features:\n * - Supports icons and labels\n * - Keyboard navigation support\n * - Disabled state handling\n * - Automatic menu closing on selection\n * - Fully accessible with proper ARIA attributes\n * - Focus management and tab index handling\n * - Click and mouse enter event handling\n *\n * @example\n * <Menu.Item\n * label=\"Edit Profile\"\n * icon={EditIcon}\n * onClick={() => console.log('Edit profile clicked')}\n * />\n */\n Item: MenuItem,\n});\n"],"names":["styles","Next","Up","Down","MenuLegacyComponent"],"mappings":"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"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
@layer starter, reset, base, state, application;
|
|
2
2
|
@layer starter, reset, base, state, application;
|
|
3
|
-
@layer starter, reset, base, state, application;
|
|
4
3
|
@layer reset {
|
|
5
4
|
._nested-menu_tsacs_3,
|
|
6
5
|
._item_tsacs_4 {
|
|
@@ -113,7 +112,6 @@
|
|
|
113
112
|
cursor: not-allowed;
|
|
114
113
|
}
|
|
115
114
|
}@layer starter, reset, base, state, application;
|
|
116
|
-
@layer starter, reset, base, state, application;
|
|
117
115
|
@layer reset {
|
|
118
116
|
._item_w0dno_2 {
|
|
119
117
|
all: unset;
|
package/dist/Menu.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export { M as Menu, a as MenuItem, M as default } from './Menu-
|
|
1
|
+
export { M as Menu, a as MenuItem, M as default } from './Menu-C8we5CHP.js';
|
|
2
2
|
//# sourceMappingURL=Menu.js.map
|
|
@@ -1,24 +1,137 @@
|
|
|
1
1
|
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
2
2
|
import * as React from 'react';
|
|
3
|
-
import {
|
|
4
|
-
import { useTrackingId } from './useTrackingId.js';
|
|
5
|
-
import { c as childrenToString } from './childrenToString-Bz9MqbHb-Bz9MqbHb.js';
|
|
3
|
+
import { useState, useEffect, useMemo, useRef, useCallback, forwardRef, useId } from 'react';
|
|
6
4
|
import { c as cx } from './index-tZvMCc77.js';
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
11
|
-
import {
|
|
12
|
-
import {
|
|
13
|
-
import {
|
|
14
|
-
import { u as useOptionallyControlledState } from './useOptionallyControlledState-DbDuos5L
|
|
15
|
-
import { u as useMergeRefs } from './useMergeRefs-Bde85AWI
|
|
16
|
-
import { u as useLayoutPropsUtil } from './useLayoutPropsUtil-
|
|
17
|
-
import {
|
|
5
|
+
import { S as Spinner } from './Spinner-wmO8Epw0.js';
|
|
6
|
+
import { t as textfieldStyles } from './TextField.module-EkKlj66e.js';
|
|
7
|
+
import { B as Button } from './Button-BxFXQ0-n.js';
|
|
8
|
+
import { I as Icon } from './Icon-D8SPKeO4.js';
|
|
9
|
+
import { F as FieldLabel } from './FieldLabel-BfnCXung.js';
|
|
10
|
+
import { d as maskitoNumberOptionsGenerator, e as maskitoParseNumber, f as maskitoStringifyNumber, u as useMaskito } from './index.esm-D889iexm.js';
|
|
11
|
+
import { u as usePrevious } from './usePrevious-Bvq-5auG.js';
|
|
12
|
+
import { u as useOptionallyControlledState } from './useOptionallyControlledState-DbDuos5L.js';
|
|
13
|
+
import { u as useMergeRefs } from './useMergeRefs-Bde85AWI.js';
|
|
14
|
+
import { u as useLayoutPropsUtil } from './useLayoutPropsUtil-DjD5IMh0.js';
|
|
15
|
+
import { u as useFocusWithin } from './useFocusWithin-BhU7hoAD.js';
|
|
16
|
+
import { c as childrenToString } from './childrenToString-Bz9MqbHb.js';
|
|
17
|
+
import { useTrackingId } from './useTrackingId.js';
|
|
18
|
+
import { H as Helper } from './Helper-BkIDJqgA.js';
|
|
18
19
|
|
|
19
|
-
import './NumberField.css';
|
|
20
|
+
import './NumberField.css';function usePlatform() {
|
|
21
|
+
const [platform, setPlatform] = useState(detectPlatform());
|
|
22
|
+
useEffect(() => {
|
|
23
|
+
setPlatform(detectPlatform());
|
|
24
|
+
}, []);
|
|
25
|
+
return platform;
|
|
26
|
+
}
|
|
27
|
+
function detectPlatform() {
|
|
28
|
+
if (typeof window === "undefined" || typeof navigator === "undefined") {
|
|
29
|
+
return {
|
|
30
|
+
isIPhone: false,
|
|
31
|
+
isIPad: false,
|
|
32
|
+
isIOS: false,
|
|
33
|
+
isMac: false,
|
|
34
|
+
isAppleDevice: false,
|
|
35
|
+
isWebKit: false,
|
|
36
|
+
isChrome: false,
|
|
37
|
+
isFirefox: false,
|
|
38
|
+
isAndroid: false
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
const userAgent = navigator.userAgent;
|
|
42
|
+
const platform = navigator.platform;
|
|
43
|
+
const isIPhone = /iPhone/.test(userAgent) && !window.MSStream;
|
|
44
|
+
const isIPad = /iPad/.test(userAgent) || !!navigator.maxTouchPoints && navigator.maxTouchPoints > 2 && /MacIntel/.test(platform);
|
|
45
|
+
const isIOS = isIPhone || isIPad;
|
|
46
|
+
const isMac = /Mac/.test(platform) && !isIOS;
|
|
47
|
+
const isAppleDevice = isIOS || isMac;
|
|
48
|
+
const isWebKit = /WebKit/.test(userAgent) && !/Chrome/.test(userAgent);
|
|
49
|
+
const isChrome = /Chrome/.test(userAgent) && !/Edge/.test(userAgent) && !/Edg/.test(userAgent);
|
|
50
|
+
const isFirefox = /Firefox/.test(userAgent);
|
|
51
|
+
const isAndroid = /Android/.test(userAgent);
|
|
52
|
+
return {
|
|
53
|
+
isIPhone,
|
|
54
|
+
isIPad,
|
|
55
|
+
isIOS,
|
|
56
|
+
isMac,
|
|
57
|
+
isAppleDevice,
|
|
58
|
+
isWebKit,
|
|
59
|
+
isChrome,
|
|
60
|
+
isFirefox,
|
|
61
|
+
isAndroid
|
|
62
|
+
};
|
|
63
|
+
}
|
|
20
64
|
|
|
21
|
-
const
|
|
65
|
+
const useNumberFieldInputMode = ({
|
|
66
|
+
hasDecimals,
|
|
67
|
+
hasNegative
|
|
68
|
+
}) => {
|
|
69
|
+
const platform = usePlatform();
|
|
70
|
+
const inputMode = useMemo(() => {
|
|
71
|
+
let value = "decimal";
|
|
72
|
+
if (platform.isIPhone) {
|
|
73
|
+
if (hasNegative) {
|
|
74
|
+
value = "text";
|
|
75
|
+
} else if (hasDecimals) {
|
|
76
|
+
value = "decimal";
|
|
77
|
+
}
|
|
78
|
+
} else if (platform.isAndroid) {
|
|
79
|
+
if (hasNegative) {
|
|
80
|
+
value = "numeric";
|
|
81
|
+
} else if (hasDecimals) {
|
|
82
|
+
value = "decimal";
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
return value;
|
|
86
|
+
}, [hasDecimals, hasNegative, platform.isAndroid, platform.isIPhone]);
|
|
87
|
+
return inputMode;
|
|
88
|
+
};
|
|
89
|
+
|
|
90
|
+
function useNumberFieldKeys(config) {
|
|
91
|
+
const inputRef = useRef(null);
|
|
92
|
+
useEffect(() => {
|
|
93
|
+
const handleKeyDown = (event) => {
|
|
94
|
+
switch (event.key) {
|
|
95
|
+
case "ArrowUp":
|
|
96
|
+
event.preventDefault();
|
|
97
|
+
config.increment(config.step);
|
|
98
|
+
break;
|
|
99
|
+
case "ArrowDown":
|
|
100
|
+
event.preventDefault();
|
|
101
|
+
config.decrement(config.step);
|
|
102
|
+
break;
|
|
103
|
+
case "PageUp":
|
|
104
|
+
event.preventDefault();
|
|
105
|
+
config.increment(config.step * config.largeStepMultiplier);
|
|
106
|
+
break;
|
|
107
|
+
case "PageDown":
|
|
108
|
+
event.preventDefault();
|
|
109
|
+
config.decrement(config.step * config.largeStepMultiplier);
|
|
110
|
+
break;
|
|
111
|
+
case "Home":
|
|
112
|
+
event.preventDefault();
|
|
113
|
+
config.setToMin();
|
|
114
|
+
break;
|
|
115
|
+
case "End":
|
|
116
|
+
event.preventDefault();
|
|
117
|
+
config.setToMax();
|
|
118
|
+
break;
|
|
119
|
+
}
|
|
120
|
+
};
|
|
121
|
+
const inputElement = inputRef.current;
|
|
122
|
+
if (inputElement) {
|
|
123
|
+
inputElement.addEventListener("keydown", handleKeyDown);
|
|
124
|
+
}
|
|
125
|
+
return () => {
|
|
126
|
+
if (inputElement) {
|
|
127
|
+
inputElement.removeEventListener("keydown", handleKeyDown);
|
|
128
|
+
}
|
|
129
|
+
};
|
|
130
|
+
}, [config]);
|
|
131
|
+
return {
|
|
132
|
+
inputRef
|
|
133
|
+
};
|
|
134
|
+
}
|
|
22
135
|
|
|
23
136
|
/*
|
|
24
137
|
* big.js v7.0.1
|
|
@@ -1052,122 +1165,6 @@ P.valueOf = function () {
|
|
|
1052
1165
|
|
|
1053
1166
|
var Big = _Big_();
|
|
1054
1167
|
|
|
1055
|
-
function usePlatform() {
|
|
1056
|
-
const [platform, setPlatform] = useState(detectPlatform());
|
|
1057
|
-
useEffect(() => {
|
|
1058
|
-
setPlatform(detectPlatform());
|
|
1059
|
-
}, []);
|
|
1060
|
-
return platform;
|
|
1061
|
-
}
|
|
1062
|
-
function detectPlatform() {
|
|
1063
|
-
if (typeof window === "undefined" || typeof navigator === "undefined") {
|
|
1064
|
-
return {
|
|
1065
|
-
isIPhone: false,
|
|
1066
|
-
isIPad: false,
|
|
1067
|
-
isIOS: false,
|
|
1068
|
-
isMac: false,
|
|
1069
|
-
isAppleDevice: false,
|
|
1070
|
-
isWebKit: false,
|
|
1071
|
-
isChrome: false,
|
|
1072
|
-
isFirefox: false,
|
|
1073
|
-
isAndroid: false
|
|
1074
|
-
};
|
|
1075
|
-
}
|
|
1076
|
-
const userAgent = navigator.userAgent;
|
|
1077
|
-
const platform = navigator.platform;
|
|
1078
|
-
const isIPhone = /iPhone/.test(userAgent) && !window.MSStream;
|
|
1079
|
-
const isIPad = /iPad/.test(userAgent) || !!navigator.maxTouchPoints && navigator.maxTouchPoints > 2 && /MacIntel/.test(platform);
|
|
1080
|
-
const isIOS = isIPhone || isIPad;
|
|
1081
|
-
const isMac = /Mac/.test(platform) && !isIOS;
|
|
1082
|
-
const isAppleDevice = isIOS || isMac;
|
|
1083
|
-
const isWebKit = /WebKit/.test(userAgent) && !/Chrome/.test(userAgent);
|
|
1084
|
-
const isChrome = /Chrome/.test(userAgent) && !/Edge/.test(userAgent) && !/Edg/.test(userAgent);
|
|
1085
|
-
const isFirefox = /Firefox/.test(userAgent);
|
|
1086
|
-
const isAndroid = /Android/.test(userAgent);
|
|
1087
|
-
return {
|
|
1088
|
-
isIPhone,
|
|
1089
|
-
isIPad,
|
|
1090
|
-
isIOS,
|
|
1091
|
-
isMac,
|
|
1092
|
-
isAppleDevice,
|
|
1093
|
-
isWebKit,
|
|
1094
|
-
isChrome,
|
|
1095
|
-
isFirefox,
|
|
1096
|
-
isAndroid
|
|
1097
|
-
};
|
|
1098
|
-
}
|
|
1099
|
-
|
|
1100
|
-
const useNumberFieldInputMode = ({
|
|
1101
|
-
hasDecimals,
|
|
1102
|
-
hasNegative
|
|
1103
|
-
}) => {
|
|
1104
|
-
const platform = usePlatform();
|
|
1105
|
-
const inputMode = useMemo(() => {
|
|
1106
|
-
let value = "decimal";
|
|
1107
|
-
if (platform.isIPhone) {
|
|
1108
|
-
if (hasNegative) {
|
|
1109
|
-
value = "text";
|
|
1110
|
-
} else if (hasDecimals) {
|
|
1111
|
-
value = "decimal";
|
|
1112
|
-
}
|
|
1113
|
-
} else if (platform.isAndroid) {
|
|
1114
|
-
if (hasNegative) {
|
|
1115
|
-
value = "numeric";
|
|
1116
|
-
} else if (hasDecimals) {
|
|
1117
|
-
value = "decimal";
|
|
1118
|
-
}
|
|
1119
|
-
}
|
|
1120
|
-
return value;
|
|
1121
|
-
}, [hasDecimals, hasNegative, platform.isAndroid, platform.isIPhone]);
|
|
1122
|
-
return inputMode;
|
|
1123
|
-
};
|
|
1124
|
-
|
|
1125
|
-
function useNumberFieldKeys(config) {
|
|
1126
|
-
const inputRef = useRef(null);
|
|
1127
|
-
useEffect(() => {
|
|
1128
|
-
const handleKeyDown = (event) => {
|
|
1129
|
-
switch (event.key) {
|
|
1130
|
-
case "ArrowUp":
|
|
1131
|
-
event.preventDefault();
|
|
1132
|
-
config.increment(config.step);
|
|
1133
|
-
break;
|
|
1134
|
-
case "ArrowDown":
|
|
1135
|
-
event.preventDefault();
|
|
1136
|
-
config.decrement(config.step);
|
|
1137
|
-
break;
|
|
1138
|
-
case "PageUp":
|
|
1139
|
-
event.preventDefault();
|
|
1140
|
-
config.increment(config.step * config.largeStepMultiplier);
|
|
1141
|
-
break;
|
|
1142
|
-
case "PageDown":
|
|
1143
|
-
event.preventDefault();
|
|
1144
|
-
config.decrement(config.step * config.largeStepMultiplier);
|
|
1145
|
-
break;
|
|
1146
|
-
case "Home":
|
|
1147
|
-
event.preventDefault();
|
|
1148
|
-
config.setToMin();
|
|
1149
|
-
break;
|
|
1150
|
-
case "End":
|
|
1151
|
-
event.preventDefault();
|
|
1152
|
-
config.setToMax();
|
|
1153
|
-
break;
|
|
1154
|
-
}
|
|
1155
|
-
};
|
|
1156
|
-
const inputElement = inputRef.current;
|
|
1157
|
-
if (inputElement) {
|
|
1158
|
-
inputElement.addEventListener("keydown", handleKeyDown);
|
|
1159
|
-
}
|
|
1160
|
-
return () => {
|
|
1161
|
-
if (inputElement) {
|
|
1162
|
-
inputElement.removeEventListener("keydown", handleKeyDown);
|
|
1163
|
-
}
|
|
1164
|
-
};
|
|
1165
|
-
}, [config]);
|
|
1166
|
-
return {
|
|
1167
|
-
inputRef
|
|
1168
|
-
};
|
|
1169
|
-
}
|
|
1170
|
-
|
|
1171
1168
|
const DEFAULT_MIN_VALUE = 0;
|
|
1172
1169
|
const DEFAULT_MAX_VALUE = 1e14;
|
|
1173
1170
|
const useNumberField = (config) => {
|
|
@@ -1348,15 +1345,19 @@ function convertValueProp(v, { maskitoParams }) {
|
|
|
1348
1345
|
);
|
|
1349
1346
|
}
|
|
1350
1347
|
|
|
1351
|
-
const small = "
|
|
1352
|
-
const large = "
|
|
1348
|
+
const small = "_small_9j1jb_24";
|
|
1349
|
+
const large = "_large_9j1jb_40";
|
|
1353
1350
|
const numberFieldStyles = {
|
|
1354
|
-
"stepper-buttons": "_stepper-
|
|
1351
|
+
"stepper-buttons": "_stepper-buttons_9j1jb_2",
|
|
1355
1352
|
small: small,
|
|
1356
1353
|
large: large
|
|
1357
1354
|
};
|
|
1358
1355
|
|
|
1359
|
-
const
|
|
1356
|
+
const SvgAdd = (props) => /* @__PURE__ */ React.createElement("svg", { xmlns: "http://www.w3.org/2000/svg", width: "1em", height: "1em", viewBox: "0 0 24 24", ...props }, /* @__PURE__ */ React.createElement("path", { d: "M18 13h-5v5c0 .55-.45 1-1 1s-1-.45-1-1v-5H6c-.55 0-1-.45-1-1s.45-1 1-1h5V6c0-.55.45-1 1-1s1 .45 1 1v5h5c.55 0 1 .45 1 1s-.45 1-1 1z" }));
|
|
1357
|
+
|
|
1358
|
+
const SvgRemove = (props) => /* @__PURE__ */ React.createElement("svg", { xmlns: "http://www.w3.org/2000/svg", width: "1em", height: "1em", viewBox: "0 0 24 24", ...props }, /* @__PURE__ */ React.createElement("path", { d: "M18 13H6c-.55 0-1-.45-1-1s.45-1 1-1h12c.55 0 1 .45 1 1s-.45 1-1 1z" }));
|
|
1359
|
+
|
|
1360
|
+
const NumberField = forwardRef(
|
|
1360
1361
|
(props, ref) => {
|
|
1361
1362
|
const { layoutStyles, componentProps } = useLayoutPropsUtil(props);
|
|
1362
1363
|
const {
|
|
@@ -1425,6 +1426,23 @@ const NumberField$1 = forwardRef(
|
|
|
1425
1426
|
const helperUid = useId();
|
|
1426
1427
|
const errorMessage = typeof error !== "boolean" ? error : void 0;
|
|
1427
1428
|
const styleCombined = { ...style, ...layoutStyles };
|
|
1429
|
+
const data = {
|
|
1430
|
+
label: childrenToString(props.label),
|
|
1431
|
+
prefix: childrenToString(props.prefix),
|
|
1432
|
+
suffix: childrenToString(props.suffix),
|
|
1433
|
+
description: childrenToString(props.description),
|
|
1434
|
+
size: props.size,
|
|
1435
|
+
minValue: props.minValue,
|
|
1436
|
+
maxValue: props.maxValue,
|
|
1437
|
+
step: props.step,
|
|
1438
|
+
maximumFractionDigits: props.maximumFractionDigits,
|
|
1439
|
+
minimumFractionDigits: props.minimumFractionDigits
|
|
1440
|
+
};
|
|
1441
|
+
const trackingId = useTrackingId({
|
|
1442
|
+
name: "NumberField",
|
|
1443
|
+
data,
|
|
1444
|
+
hasOverride: !!props["data-tracking-id"]
|
|
1445
|
+
});
|
|
1428
1446
|
return /* @__PURE__ */ jsxs(
|
|
1429
1447
|
"div",
|
|
1430
1448
|
{
|
|
@@ -1434,7 +1452,7 @@ const NumberField$1 = forwardRef(
|
|
|
1434
1452
|
ref: wrapperRef,
|
|
1435
1453
|
children: [
|
|
1436
1454
|
label && /* @__PURE__ */ jsx(
|
|
1437
|
-
|
|
1455
|
+
FieldLabel,
|
|
1438
1456
|
{
|
|
1439
1457
|
moreInfo,
|
|
1440
1458
|
openMoreInfo: openInfo,
|
|
@@ -1472,6 +1490,7 @@ const NumberField$1 = forwardRef(
|
|
|
1472
1490
|
className: cx(textfieldStyles["input"], {
|
|
1473
1491
|
[textfieldStyles["error"]]: error
|
|
1474
1492
|
}),
|
|
1493
|
+
"data-tracking-id": trackingId,
|
|
1475
1494
|
...rest,
|
|
1476
1495
|
...inputProps,
|
|
1477
1496
|
required,
|
|
@@ -1540,43 +1559,7 @@ const NumberField$1 = forwardRef(
|
|
|
1540
1559
|
);
|
|
1541
1560
|
}
|
|
1542
1561
|
);
|
|
1543
|
-
NumberField
|
|
1544
|
-
|
|
1545
|
-
const styles = {
|
|
1546
|
-
|
|
1547
|
-
};
|
|
1548
|
-
|
|
1549
|
-
const NumberField = forwardRef(
|
|
1550
|
-
(props, ref) => {
|
|
1551
|
-
const data = {
|
|
1552
|
-
label: childrenToString(props.label),
|
|
1553
|
-
prefix: childrenToString(props.prefix),
|
|
1554
|
-
suffix: childrenToString(props.suffix),
|
|
1555
|
-
description: childrenToString(props.description),
|
|
1556
|
-
size: props.size,
|
|
1557
|
-
minValue: props.minValue,
|
|
1558
|
-
maxValue: props.maxValue,
|
|
1559
|
-
step: props.step,
|
|
1560
|
-
maximumFractionDigits: props.maximumFractionDigits,
|
|
1561
|
-
minimumFractionDigits: props.minimumFractionDigits
|
|
1562
|
-
};
|
|
1563
|
-
const trackingId = useTrackingId({
|
|
1564
|
-
name: "NumberField",
|
|
1565
|
-
data,
|
|
1566
|
-
hasOverride: !!props["data-tracking-id"]
|
|
1567
|
-
});
|
|
1568
|
-
return /* @__PURE__ */ jsx(
|
|
1569
|
-
NumberField$1,
|
|
1570
|
-
{
|
|
1571
|
-
ref,
|
|
1572
|
-
"data-tracking-id": trackingId,
|
|
1573
|
-
className: styles["number-field"],
|
|
1574
|
-
...props
|
|
1575
|
-
}
|
|
1576
|
-
);
|
|
1577
|
-
}
|
|
1578
|
-
);
|
|
1579
|
-
NumberField.displayName = NumberField$1.displayName;
|
|
1562
|
+
NumberField.displayName = "NumberField";
|
|
1580
1563
|
|
|
1581
1564
|
export { NumberField as N };
|
|
1582
|
-
//# sourceMappingURL=NumberField-
|
|
1565
|
+
//# sourceMappingURL=NumberField-1_gRsWT4.js.map
|