@servicetitan/anvil2 1.37.2 → 1.38.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +21 -0
- package/dist/{Alert-DMk5bG5T-kR7Uzp64.js → Alert-C3WoRkeN-D_6Yf63F.js} +5 -5
- package/dist/{Alert-DMk5bG5T-kR7Uzp64.js.map → Alert-C3WoRkeN-D_6Yf63F.js.map} +1 -1
- package/dist/{Alert-BsFFiu7g.js → Alert-DipY5OlC.js} +3 -2
- package/dist/Alert-DipY5OlC.js.map +1 -0
- package/dist/Alert.js +1 -1
- package/dist/{Announcement-BawOyXV3.js → Announcement-ButSjdLn.js} +5 -4
- package/dist/Announcement-ButSjdLn.js.map +1 -0
- package/dist/Announcement.js +1 -1
- package/dist/{AnvilProvider-DJ4lYJVW.js → AnvilProvider-Lh8YtV03.js} +2 -2
- package/dist/{AnvilProvider-DJ4lYJVW.js.map → AnvilProvider-Lh8YtV03.js.map} +1 -1
- package/dist/AnvilProvider.js +1 -1
- package/dist/{Avatar-C2IfIAxL-BUio7c00.js → Avatar-B20IdOEO-Di14brYV.js} +23 -4
- package/dist/Avatar-B20IdOEO-Di14brYV.js.map +1 -0
- package/dist/Avatar-hNOToS9S.js +42 -0
- package/dist/Avatar-hNOToS9S.js.map +1 -0
- package/dist/Avatar.js +1 -1
- package/dist/{Badge-Bko3Cw3L.js → Badge-7aZfE-LH.js} +3 -2
- package/dist/{Badge-Bko3Cw3L.js.map → Badge-7aZfE-LH.js.map} +1 -1
- package/dist/Badge.js +1 -1
- package/dist/{Breadcrumbs-BP5QXVje.js → Breadcrumbs-DJbCkSeD.js} +35 -5
- package/dist/Breadcrumbs-DJbCkSeD.js.map +1 -0
- package/dist/Breadcrumbs.js +1 -1
- package/dist/{Button-C-QpfgfF-CRBE7KiD.js → Button-BaHFf1AT-BQy-PFB5.js} +3 -3
- package/dist/{Button-C-QpfgfF-CRBE7KiD.js.map → Button-BaHFf1AT-BQy-PFB5.js.map} +1 -1
- package/dist/{Button-NTFmgcbr.js → Button-DMQKV2sV.js} +4 -3
- package/dist/Button-DMQKV2sV.js.map +1 -0
- package/dist/Button.js +1 -1
- package/dist/{ButtonCompound-Dp5J4W81-BkZ68L4-.js → ButtonCompound-Cs2A5X-Z-Dl3InVab.js} +2 -2
- package/dist/{ButtonCompound-Dp5J4W81-BkZ68L4-.js.map → ButtonCompound-Cs2A5X-Z-Dl3InVab.js.map} +1 -1
- package/dist/{ButtonCompound-DlgIyoB9.js → ButtonCompound-DGuF0zzT.js} +3 -2
- package/dist/ButtonCompound-DGuF0zzT.js.map +1 -0
- package/dist/ButtonCompound.js +1 -1
- package/dist/{ButtonLink-CSaxjhI2-KLVGwWjE.js → ButtonLink-5qlX0uZx-b9H7MGhk.js} +6 -4
- package/dist/ButtonLink-5qlX0uZx-b9H7MGhk.js.map +1 -0
- package/dist/{ButtonLink-B_uUWBLY.js → ButtonLink-B0NJuVk5.js} +4 -3
- package/dist/ButtonLink-B0NJuVk5.js.map +1 -0
- package/dist/ButtonLink.js +1 -1
- package/dist/{ButtonToggle-CvXIngRd-BiWpOOWr.js → ButtonToggle-Bm4KRl3o-B1-LbfjY.js} +3 -3
- package/dist/{ButtonToggle-CvXIngRd-BiWpOOWr.js.map → ButtonToggle-Bm4KRl3o-B1-LbfjY.js.map} +1 -1
- package/dist/{ButtonToggle-D3tcTRq9.js → ButtonToggle-CKVyEODc.js} +3 -2
- package/dist/ButtonToggle-CKVyEODc.js.map +1 -0
- package/dist/ButtonToggle.js +1 -1
- package/dist/{Calendar-Bn00Dnc--DcCNi1xz.js → Calendar-CohGSWFp-DFYJkf7Y.js} +9 -9
- package/dist/{Calendar-Bn00Dnc--DcCNi1xz.js.map → Calendar-CohGSWFp-DFYJkf7Y.js.map} +1 -1
- package/dist/Calendar-jl0s6W7p.js +130 -0
- package/dist/Calendar-jl0s6W7p.js.map +1 -0
- package/dist/Calendar.js +1 -1
- package/dist/{Card-DgxiRqS_.js → Card-U2IJPk8B.js} +3 -2
- package/dist/Card-U2IJPk8B.js.map +1 -0
- package/dist/{Card-BNT0qpxt-OPUNKZW6.js → Card-ZknG-yim-7W6rYSFV.js} +3 -3
- package/dist/{Card-BNT0qpxt-OPUNKZW6.js.map → Card-ZknG-yim-7W6rYSFV.js.map} +1 -1
- package/dist/Card.js +1 -1
- package/dist/{Checkbox-BIlp8xmW.js → Checkbox-DbDwtefR.js} +25 -2
- package/dist/Checkbox-DbDwtefR.js.map +1 -0
- package/dist/{Checkbox-CRurfeRE-BR_NXfh6.js → Checkbox-TIcImbEx-EgjesTNn.js} +6 -5
- package/dist/Checkbox-TIcImbEx-EgjesTNn.js.map +1 -0
- package/dist/Checkbox.js +1 -1
- package/dist/{Chip-BQ58RQ3v.js → Chip-BlLavyIK.js} +2 -2
- package/dist/Chip-BlLavyIK.js.map +1 -0
- package/dist/{Chip-DwiMFYBm-CIDM1d8e.js → Chip-_daV8CmM-CTke7zH4.js} +5 -5
- package/dist/{Chip-DwiMFYBm-CIDM1d8e.js.map → Chip-_daV8CmM-CTke7zH4.js.map} +1 -1
- package/dist/Chip.js +1 -1
- package/dist/{Combobox-Dde7-7tv.js → Combobox-7ADxZKDE.js} +187 -24
- package/dist/Combobox-7ADxZKDE.js.map +1 -0
- package/dist/Combobox.js +1 -1
- package/dist/{DateField-D-eVP6xh.js → DateField-CUO_26rh.js} +18 -13
- package/dist/DateField-CUO_26rh.js.map +1 -0
- package/dist/DateField.js +1 -1
- package/dist/{DaysOfTheWeek-Dz-aZ-LW.js → DaysOfTheWeek-CEKoAJSv.js} +7 -7
- package/dist/DaysOfTheWeek-CEKoAJSv.js.map +1 -0
- package/dist/DaysOfTheWeek.js +1 -1
- package/dist/{Details-ChZdA5Yo.js → Details-DVg0EOkv.js} +51 -3
- package/dist/Details-DVg0EOkv.js.map +1 -0
- package/dist/Details.js +1 -1
- package/dist/{Dialog-DJhN8QWP.js → Dialog-D6zpW-GE.js} +125 -4
- package/dist/Dialog-D6zpW-GE.js.map +1 -0
- package/dist/Dialog.js +1 -1
- package/dist/{Divider-Crum3dyV.js → Divider-CN36wX4s.js} +3 -2
- package/dist/Divider-CN36wX4s.js.map +1 -0
- package/dist/Divider.js +1 -1
- package/dist/Dnd.js +1 -1
- package/dist/{DndSort-Dy_D1EnT.js → DndSort-Cl0FCNQm.js} +6 -6
- package/dist/{DndSort-Dy_D1EnT.js.map → DndSort-Cl0FCNQm.js.map} +1 -1
- package/dist/DndSort.js +1 -1
- package/dist/Drawer-qb7Q0BAm.js +142 -0
- package/dist/Drawer-qb7Q0BAm.js.map +1 -0
- package/dist/Drawer.js +1 -1
- package/dist/{EditCard-BNwoKJ_6.js → EditCard-C0hD1VPA.js} +7 -6
- package/dist/EditCard-C0hD1VPA.js.map +1 -0
- package/dist/EditCard.js +1 -1
- package/dist/{FieldMessage-CERWyhwG.js → FieldMessage-Cg3zcgk5.js} +2 -2
- package/dist/FieldMessage-Cg3zcgk5.js.map +1 -0
- package/dist/{FieldMessage-Js4e1ezw-DZ6YDx24.js → FieldMessage-ChFXWVDb-loVSCnCM.js} +3 -3
- package/dist/{FieldMessage-Js4e1ezw-DZ6YDx24.js.map → FieldMessage-ChFXWVDb-loVSCnCM.js.map} +1 -1
- package/dist/FieldMessage.js +1 -1
- package/dist/{Flex-EX9xObMl-BPBQ7nb5.js → Flex-CiK7uNUu-BfxHG4L0.js} +3 -3
- package/dist/{Flex-EX9xObMl-BPBQ7nb5.js.map → Flex-CiK7uNUu-BfxHG4L0.js.map} +1 -1
- package/dist/{Flex-DT1l-wJc.js → Flex-Ln6PmaDl.js} +3 -2
- package/dist/Flex-Ln6PmaDl.js.map +1 -0
- package/dist/Flex.js +1 -1
- package/dist/Grid-CMcDeSYT.js +33 -0
- package/dist/Grid-CMcDeSYT.js.map +1 -0
- package/dist/{Grid-BmNHm7Fa.js → Grid-DFAd8mTe.js} +2 -2
- package/dist/{Grid-BmNHm7Fa.js.map → Grid-DFAd8mTe.js.map} +1 -1
- package/dist/Grid.js +1 -1
- package/dist/{HammerProvider-BEJW4XcH-BBKdl0zs.js → HammerProvider-CYP98rq3-Dd9GVIyP.js} +3 -3
- package/dist/{HammerProvider-BEJW4XcH-BBKdl0zs.js.map → HammerProvider-CYP98rq3-Dd9GVIyP.js.map} +1 -1
- package/dist/Helper-C9sHaTrI-C5fAsK6i.js +46 -0
- package/dist/Helper-C9sHaTrI-C5fAsK6i.js.map +1 -0
- package/dist/Helper-C9sHaTrI.css +21 -0
- package/dist/{Icon-BrdmZw1i-CG-LzgEz.js → Icon-B6HmlQiR-BxQkO3X5.js} +3 -3
- package/dist/{Icon-BrdmZw1i-CG-LzgEz.js.map → Icon-B6HmlQiR-BxQkO3X5.js.map} +1 -1
- package/dist/{Icon-CcUV8glf.js → Icon-BgKqBmlj.js} +3 -2
- package/dist/Icon-BgKqBmlj.js.map +1 -0
- package/dist/Icon.js +1 -1
- package/dist/{InputMask-CeqX68uX.js → InputMask-DKPqOpHs.js} +3 -2
- package/dist/InputMask-DKPqOpHs.js.map +1 -0
- package/dist/InputMask-kJ-hlK0O-Ctwa0U7r.js +231 -0
- package/dist/InputMask-kJ-hlK0O-Ctwa0U7r.js.map +1 -0
- package/dist/InputMask.js +1 -1
- package/dist/Layout-CUUb2PVr.js.map +1 -1
- package/dist/{Link-K3nk4QAp.js → Link-DZa0wmkA.js} +3 -3
- package/dist/Link-DZa0wmkA.js.map +1 -0
- package/dist/{Link-CVN5Mwtx-B08PO1ef.js → Link-Dqp_XXl_-Bv20l_tY.js} +4 -4
- package/dist/{Link-CVN5Mwtx-B08PO1ef.js.map → Link-Dqp_XXl_-Bv20l_tY.js.map} +1 -1
- package/dist/Link.js +1 -1
- package/dist/{ListView-zlg5FlKW.js → ListView-0xHc5wT6.js} +87 -47
- package/dist/ListView-0xHc5wT6.js.map +1 -0
- package/dist/ListView.js +1 -1
- package/dist/{Listbox-DLlT8qbJ-BvhkfmIf.js → Listbox-BvJLSAVO-Br5k6fmq.js} +51 -10
- package/dist/Listbox-BvJLSAVO-Br5k6fmq.js.map +1 -0
- package/dist/Listbox-dVARiucB.js +67 -0
- package/dist/Listbox-dVARiucB.js.map +1 -0
- package/dist/Listbox.js +1 -1
- package/dist/{LocalizationProvider-FkvhW-le-DPTpcI0N.js → LocalizationProvider-VtRAfGBT-Bo8XuFoE.js} +2 -2
- package/dist/{LocalizationProvider-FkvhW-le-DPTpcI0N.js.map → LocalizationProvider-VtRAfGBT-Bo8XuFoE.js.map} +1 -1
- package/dist/LocalizationProvider.js +1 -1
- package/dist/{Menu-BjzTwENs.js → Menu-BAuADOyt.js} +60 -10
- package/dist/Menu-BAuADOyt.js.map +1 -0
- package/dist/Menu.js +1 -1
- package/dist/{Overflow-vc1mxjUD.js → Overflow-B6rIOkAI.js} +27 -2
- package/dist/Overflow-B6rIOkAI.js.map +1 -0
- package/dist/{Overflow-ENfRRD_5-DLHLZ02e.js → Overflow-BrXwlYpn-CtqaiNgb.js} +25 -4
- package/dist/Overflow-BrXwlYpn-CtqaiNgb.js.map +1 -0
- package/dist/Overflow.js +1 -1
- package/dist/{Page-CSM-a2UE.js → Page-CtwsyE3i.js} +131 -15
- package/dist/Page-CtwsyE3i.js.map +1 -0
- package/dist/Page.js +1 -1
- package/dist/Popover-Bnkwq99S.js +135 -0
- package/dist/Popover-Bnkwq99S.js.map +1 -0
- package/dist/{Popover-CpyYXmal-I-E-B4u8.js → Popover-VztF0YHt-ci3tYiye.js} +80 -8
- package/dist/Popover-VztF0YHt-ci3tYiye.js.map +1 -0
- package/dist/Popover.js +1 -1
- package/dist/{ProgressBar-B25Wxpaf.js → ProgressBar-BotOFymw.js} +3 -2
- package/dist/ProgressBar-BotOFymw.js.map +1 -0
- package/dist/{ProgressBar-CeClhdcf-Dcft7ZjO.js → ProgressBar-Cfi5zZRy-BpESsdh_.js} +164 -99
- package/dist/ProgressBar-Cfi5zZRy-BpESsdh_.js.map +1 -0
- package/dist/ProgressBar-Cfi5zZRy.css +671 -0
- package/dist/ProgressBar.js +1 -1
- package/dist/{Radio-BlMDLvPw-DUeywcYR.js → Radio-7U7IBI58-BDhdZJoC.js} +25 -5
- package/dist/Radio-7U7IBI58-BDhdZJoC.js.map +1 -0
- package/dist/Radio-D4rRt1a6.js +66 -0
- package/dist/Radio-D4rRt1a6.js.map +1 -0
- package/dist/Radio.js +1 -1
- package/dist/{SearchField-D3z4LjJg.js → SearchField-Bz4HPxCQ.js} +5 -4
- package/dist/SearchField-Bz4HPxCQ.js.map +1 -0
- package/dist/SearchField.js +1 -1
- package/dist/{SegmentedControl-D_ADGpVy.js → SegmentedControl-DKMQuf7s.js} +41 -2
- package/dist/SegmentedControl-DKMQuf7s.js.map +1 -0
- package/dist/SegmentedControl.js +1 -1
- package/dist/{SelectCard-D26y01WZ-BWN9G09J.js → SelectCard-B5EqtxOK-CpCgVjV8.js} +46 -17
- package/dist/SelectCard-B5EqtxOK-CpCgVjV8.js.map +1 -0
- package/dist/SelectCard.js +1 -1
- package/dist/SelectCardGroup-DsHZgCqA.js +49 -0
- package/dist/SelectCardGroup-DsHZgCqA.js.map +1 -0
- package/dist/{SideNav-C7wc1_JK.js → SideNav-DEoGpeqJ.js} +130 -10
- package/dist/SideNav-DEoGpeqJ.js.map +1 -0
- package/dist/SideNav.js +1 -1
- package/dist/Skeleton-COxTdwjO.js +398 -0
- package/dist/Skeleton-COxTdwjO.js.map +1 -0
- package/dist/Skeleton.js +1 -1
- package/dist/{Spinner-Bc5-_6pK.js → Spinner-C1r3COiQ.js} +2 -1
- package/dist/Spinner-C1r3COiQ.js.map +1 -0
- package/dist/Spinner.js +1 -1
- package/dist/SrOnly-C_I8eH4C.js.map +1 -1
- package/dist/{Stepper-Bp0w8eRW.js → Stepper-CwIV7ZiT.js} +281 -6
- package/dist/Stepper-CwIV7ZiT.js.map +1 -0
- package/dist/Stepper.js +1 -1
- package/dist/{Switch-BbHIwrGc.js → Switch-Dd9tJFmG.js} +20 -10
- package/dist/Switch-Dd9tJFmG.js.map +1 -0
- package/dist/Switch.css +23 -24
- package/dist/Switch.js +1 -1
- package/dist/{Tab-DcOQTX5Z.js → Tab-BSC7e4rM.js} +127 -10
- package/dist/Tab-BSC7e4rM.js.map +1 -0
- package/dist/Tab.js +1 -1
- package/dist/{Text-BDYfD8j4.js → Text-B91g6xKn.js} +3 -2
- package/dist/Text-B91g6xKn.js.map +1 -0
- package/dist/{Text-CN_-FF7J-Dzoy8A70.js → Text-DCvcLCvf-DlmnnjTR.js} +3 -3
- package/dist/{Text-CN_-FF7J-Dzoy8A70.js.map → Text-DCvcLCvf-DlmnnjTR.js.map} +1 -1
- package/dist/Text.js +1 -1
- package/dist/{TextField-Ds9EKvSs.js → TextField-BYyyw3m2.js} +3 -2
- package/dist/{TextField-Ds9EKvSs.js.map → TextField-BYyyw3m2.js.map} +1 -1
- package/dist/{TextField-Bp1q4hMI-2jGZG2k2.js → TextField-CGJtMoil-CJqYM83o.js} +4 -3
- package/dist/TextField-CGJtMoil-CJqYM83o.js.map +1 -0
- package/dist/TextField.js +1 -1
- package/dist/{Textarea-CMELRfU8.js → Textarea-AczEXhHB.js} +5 -3
- package/dist/Textarea-AczEXhHB.js.map +1 -0
- package/dist/Textarea.js +1 -1
- package/dist/{ThemeProvider-D2x18Y1l.js → ThemeProvider-BKave7Ha.js} +2 -2
- package/dist/{ThemeProvider-D2x18Y1l.js.map → ThemeProvider-BKave7Ha.js.map} +1 -1
- package/dist/{ThemeProvider-BIeaAmWx-DVYOQ6bw.js → ThemeProvider-CR67FJg0-DYVRlJRA.js} +3 -3
- package/dist/{ThemeProvider-BIeaAmWx-DVYOQ6bw.js.map → ThemeProvider-CR67FJg0-DYVRlJRA.js.map} +1 -1
- package/dist/ThemeProvider.js +1 -1
- package/dist/Toast.js +1 -1
- package/dist/{Toolbar-CYwR6GQG.js → Toolbar-Cu3u0TRX.js} +183 -14
- package/dist/Toolbar-Cu3u0TRX.js.map +1 -0
- package/dist/Toolbar.css +1 -11
- package/dist/Toolbar.js +1 -1
- package/dist/Tooltip-BL_bgvwA.js +73 -0
- package/dist/Tooltip-BL_bgvwA.js.map +1 -0
- package/dist/Tooltip.js +1 -1
- package/dist/assets/icons/st/insurance_work_queue.svg +1 -0
- package/dist/assets/icons/st/production_work_queue.svg +1 -0
- package/dist/assets/icons/st.ts +2 -0
- package/dist/components/Alert/Alert.d.ts +37 -0
- package/dist/components/Announcement/Announcement.d.ts +37 -0
- package/dist/components/Avatar/Avatar.d.ts +73 -0
- package/dist/components/Badge/Badge.d.ts +27 -0
- package/dist/components/Breadcrumbs/Breadcrumbs.d.ts +39 -0
- package/dist/components/Button/Button.d.ts +28 -0
- package/dist/components/ButtonCompound/ButtonCompound.d.ts +24 -0
- package/dist/components/ButtonLink/ButtonLink.d.ts +30 -0
- package/dist/components/ButtonToggle/ButtonToggle.d.ts +32 -0
- package/dist/components/Calendar/Calendar.d.ts +114 -0
- package/dist/components/Card/Card.d.ts +24 -0
- package/dist/components/Checkbox/Checkbox.d.ts +77 -0
- package/dist/components/Chip/Chip.d.ts +34 -0
- package/dist/components/Combobox/Combobox.d.ts +442 -2
- package/dist/components/DateField/DateField.d.ts +65 -0
- package/dist/components/DaysOfTheWeek/DaysOfTheWeek.d.ts +44 -6
- package/dist/components/Details/Details.d.ts +68 -0
- package/dist/components/Dialog/Dialog.d.ts +178 -0
- package/dist/components/Divider/Divider.d.ts +24 -0
- package/dist/components/Drawer/Drawer.d.ts +200 -0
- package/dist/components/EditCard/EditCard.d.ts +50 -0
- package/dist/components/FieldMessage/FieldMessage.d.ts +31 -0
- package/dist/components/Flex/Flex.d.ts +48 -0
- package/dist/components/Grid/Grid.d.ts +74 -0
- package/dist/components/Icon/Icon.d.ts +39 -0
- package/dist/components/InputMask/InputMask.d.ts +57 -0
- package/dist/components/Layout/Layout.d.ts +131 -0
- package/dist/components/Link/Link.d.ts +47 -0
- package/dist/components/ListView/ListView.d.ts +85 -0
- package/dist/components/Listbox/Listbox.d.ts +124 -0
- package/dist/components/Menu/Menu.d.ts +85 -1
- package/dist/components/Overflow/Overflow.d.ts +84 -0
- package/dist/components/Page/Page.d.ts +443 -0
- package/dist/components/Popover/Popover.d.ts +268 -0
- package/dist/components/ProgressBar/ProgressBar.d.ts +52 -0
- package/dist/components/Radio/Radio.d.ts +121 -0
- package/dist/components/SearchField/SearchField.d.ts +37 -0
- package/dist/components/SegmentedControl/SegmentedControl.d.ts +98 -0
- package/dist/components/SelectCard/SelectCard.d.ts +60 -0
- package/dist/components/SelectCard/SelectCardGroup.d.ts +37 -0
- package/dist/components/SideNav/SideNav.d.ts +192 -2
- package/dist/components/SideNav/SideNavProvider.d.ts +30 -0
- package/dist/components/Skeleton/Skeleton.d.ts +130 -0
- package/dist/components/Spinner/Spinner.d.ts +25 -0
- package/dist/components/SrOnly/SrOnly.d.ts +19 -0
- package/dist/components/Stepper/Stepper.d.ts +335 -0
- package/dist/components/Switch/Switch.d.ts +33 -0
- package/dist/components/Tab/Tab.d.ts +152 -0
- package/dist/components/Text/Text.d.ts +37 -0
- package/dist/components/Textarea/Textarea.d.ts +50 -0
- package/dist/components/Toast/Toaster.d.ts +43 -0
- package/dist/components/Toast/toast.d.ts +31 -0
- package/dist/components/Toolbar/Toolbar.d.ts +251 -0
- package/dist/components/Tooltip/Tooltip.d.ts +123 -0
- package/dist/{floating-ui.react-Domgunz0.js → floating-ui.react-BFNinq1w.js} +2 -2
- package/dist/{floating-ui.react-Domgunz0.js.map → floating-ui.react-BFNinq1w.js.map} +1 -1
- package/dist/hooks/useSize/index.d.ts +15 -0
- package/dist/hooks/useTrackingId/index.d.ts +19 -0
- package/dist/{index-CdSSO4ct-elKOdXPf.js → index-CKfiQx8n-4nziUo7G.js} +4 -4
- package/dist/{index-CdSSO4ct-elKOdXPf.js.map → index-CKfiQx8n-4nziUo7G.js.map} +1 -1
- package/dist/index.js +57 -57
- package/dist/{toast-C-6NdR43.js → toast-B39L6vJ0.js} +3 -3
- package/dist/toast-B39L6vJ0.js.map +1 -0
- package/dist/{useLayoutPropsUtil-GT5myWCm-Clw_nEze.js → useLayoutPropsUtil-DWACCL8v-CZNrcQT-.js} +6 -4
- package/dist/useLayoutPropsUtil-DWACCL8v-CZNrcQT-.js.map +1 -0
- package/dist/useLinkStyles.js +1 -1
- package/dist/useSize.js.map +1 -1
- package/dist/{useSwipe-DIUHs7T5-DIUHs7T5.js → useSwipe-CULmVQEk-CULmVQEk.js} +2 -2
- package/dist/useSwipe-CULmVQEk-CULmVQEk.js.map +1 -0
- package/dist/useSwipe.js +1 -1
- package/dist/useTrackingId.js.map +1 -1
- package/package.json +3 -2
- package/dist/Alert-BsFFiu7g.js.map +0 -1
- package/dist/Announcement-BawOyXV3.js.map +0 -1
- package/dist/Avatar-C2IfIAxL-BUio7c00.js.map +0 -1
- package/dist/Avatar-DYCN2A_l.js +0 -20
- package/dist/Avatar-DYCN2A_l.js.map +0 -1
- package/dist/Breadcrumbs-BP5QXVje.js.map +0 -1
- package/dist/Button-NTFmgcbr.js.map +0 -1
- package/dist/Button2.css +0 -8
- package/dist/ButtonCompound-DlgIyoB9.js.map +0 -1
- package/dist/ButtonLink-B_uUWBLY.js.map +0 -1
- package/dist/ButtonLink-CSaxjhI2-KLVGwWjE.js.map +0 -1
- package/dist/ButtonLink.css +0 -10
- package/dist/ButtonToggle-D3tcTRq9.js.map +0 -1
- package/dist/Calendar-B4MO-Uhv.js +0 -57
- package/dist/Calendar-B4MO-Uhv.js.map +0 -1
- package/dist/Card-DgxiRqS_.js.map +0 -1
- package/dist/Checkbox-BIlp8xmW.js.map +0 -1
- package/dist/Checkbox-CRurfeRE-BR_NXfh6.js.map +0 -1
- package/dist/Chip-BQ58RQ3v.js.map +0 -1
- package/dist/Combobox-Dde7-7tv.js.map +0 -1
- package/dist/DateField-D-eVP6xh.js.map +0 -1
- package/dist/DaysOfTheWeek-Dz-aZ-LW.js.map +0 -1
- package/dist/Details-ChZdA5Yo.js.map +0 -1
- package/dist/Dialog-DJhN8QWP.js.map +0 -1
- package/dist/Divider-Crum3dyV.js.map +0 -1
- package/dist/Drawer-BFfakO8h.js +0 -66
- package/dist/Drawer-BFfakO8h.js.map +0 -1
- package/dist/EditCard-BNwoKJ_6.js.map +0 -1
- package/dist/FieldMessage-CERWyhwG.js.map +0 -1
- package/dist/Flex-DT1l-wJc.js.map +0 -1
- package/dist/Grid-h9VbEjJe.js +0 -14
- package/dist/Grid-h9VbEjJe.js.map +0 -1
- package/dist/Icon-CcUV8glf.js.map +0 -1
- package/dist/InputMask-CeqX68uX.js.map +0 -1
- package/dist/InputMask-DfpkWGmY-D8QEut94.js +0 -323
- package/dist/InputMask-DfpkWGmY-D8QEut94.js.map +0 -1
- package/dist/Link-K3nk4QAp.js.map +0 -1
- package/dist/ListView-zlg5FlKW.js.map +0 -1
- package/dist/Listbox-36Mda5DS.js +0 -37
- package/dist/Listbox-36Mda5DS.js.map +0 -1
- package/dist/Listbox-DLlT8qbJ-BvhkfmIf.js.map +0 -1
- package/dist/Menu-BjzTwENs.js.map +0 -1
- package/dist/Overflow-ENfRRD_5-DLHLZ02e.js.map +0 -1
- package/dist/Overflow-vc1mxjUD.js.map +0 -1
- package/dist/Page-CSM-a2UE.js.map +0 -1
- package/dist/Popover-CpyYXmal-I-E-B4u8.js.map +0 -1
- package/dist/Popover-a81z9wSj.js +0 -56
- package/dist/Popover-a81z9wSj.js.map +0 -1
- package/dist/ProgressBar-B25Wxpaf.js.map +0 -1
- package/dist/ProgressBar-CeClhdcf-Dcft7ZjO.js.map +0 -1
- package/dist/ProgressBar-CeClhdcf.css +0 -666
- package/dist/Radio-BlMDLvPw-DUeywcYR.js.map +0 -1
- package/dist/Radio-D3CqAXiM.js +0 -34
- package/dist/Radio-D3CqAXiM.js.map +0 -1
- package/dist/SearchField-D3z4LjJg.js.map +0 -1
- package/dist/SegmentedControl-D_ADGpVy.js.map +0 -1
- package/dist/SelectCard-D26y01WZ-BWN9G09J.js.map +0 -1
- package/dist/SelectCardGroup-DxA6P-Q7.js +0 -21
- package/dist/SelectCardGroup-DxA6P-Q7.js.map +0 -1
- package/dist/SideNav-C7wc1_JK.js.map +0 -1
- package/dist/Skeleton-CdzDKQi4.js +0 -215
- package/dist/Skeleton-CdzDKQi4.js.map +0 -1
- package/dist/Spinner-Bc5-_6pK.js.map +0 -1
- package/dist/Stepper-Bp0w8eRW.js.map +0 -1
- package/dist/Switch-BbHIwrGc.js.map +0 -1
- package/dist/Tab-DcOQTX5Z.js.map +0 -1
- package/dist/Text-BDYfD8j4.js.map +0 -1
- package/dist/TextField-Bp1q4hMI-2jGZG2k2.js.map +0 -1
- package/dist/Textarea-CMELRfU8.js.map +0 -1
- package/dist/Toolbar-CYwR6GQG.js.map +0 -1
- package/dist/Tooltip-C-UNrFz3.js +0 -34
- package/dist/Tooltip-C-UNrFz3.js.map +0 -1
- package/dist/toast-C-6NdR43.js.map +0 -1
- package/dist/useLayoutPropsUtil-GT5myWCm-Clw_nEze.js.map +0 -1
- package/dist/useSwipe-DIUHs7T5-DIUHs7T5.js.map +0 -1
- /package/dist/{Alert-DMk5bG5T.css → Alert-C3WoRkeN.css} +0 -0
- /package/dist/{Avatar-C2IfIAxL.css → Avatar-B20IdOEO.css} +0 -0
- /package/dist/{Calendar-Bn00Dnc-.css → Calendar-CohGSWFp.css} +0 -0
- /package/dist/{Card-BNT0qpxt.css → Card-ZknG-yim.css} +0 -0
- /package/dist/{Chip-DwiMFYBm.css → Chip-_daV8CmM.css} +0 -0
- /package/dist/{FieldMessage-Js4e1ezw.css → FieldMessage-ChFXWVDb.css} +0 -0
- /package/dist/{Flex-EX9xObMl.css → Flex-CiK7uNUu.css} +0 -0
- /package/dist/{Icon-BrdmZw1i.css → Icon-B6HmlQiR.css} +0 -0
- /package/dist/{Link-CVN5Mwtx.css → Link-Dqp_XXl_.css} +0 -0
- /package/dist/{Overflow-ENfRRD_5.css → Overflow-BrXwlYpn.css} +0 -0
- /package/dist/{Popover-CpyYXmal.css → Popover-VztF0YHt.css} +0 -0
- /package/dist/{Radio-BlMDLvPw.css → Radio-7U7IBI58.css} +0 -0
- /package/dist/{SelectCard-D26y01WZ.css → SelectCard-B5EqtxOK.css} +0 -0
- /package/dist/{Text-CN_-FF7J.css → Text-DCvcLCvf.css} +0 -0
- /package/dist/{ThemeProvider-BIeaAmWx.css → ThemeProvider-CR67FJg0.css} +0 -0
- /package/dist/{index-CdSSO4ct.css → index-CKfiQx8n.css} +0 -0
|
@@ -6,22 +6,22 @@ import { S as SvgKeyboardArrowDown } from './keyboard_arrow_down-C8WQ38p1.js';
|
|
|
6
6
|
import { S as SvgKeyboardArrowUp } from './keyboard_arrow_up-CxzK6LAl.js';
|
|
7
7
|
import { S as SvgMoreVert } from './more_vert-C_lJSyxt.js';
|
|
8
8
|
import { b as BreakpointLg } from './primitive-BoyEHaOo.js';
|
|
9
|
-
import { B as Breadcrumbs } from './Breadcrumbs-
|
|
10
|
-
import { B as Button } from './Button-
|
|
11
|
-
import { B as ButtonLink } from './ButtonLink-
|
|
12
|
-
import { C as Chip } from './Chip-
|
|
13
|
-
import { D as Dialog } from './Dialog-
|
|
14
|
-
import { F as Flex } from './Flex-
|
|
15
|
-
import { I as Icon } from './Icon-
|
|
9
|
+
import { B as Breadcrumbs } from './Breadcrumbs-DJbCkSeD.js';
|
|
10
|
+
import { B as Button } from './Button-DMQKV2sV.js';
|
|
11
|
+
import { B as ButtonLink } from './ButtonLink-B0NJuVk5.js';
|
|
12
|
+
import { C as Chip } from './Chip-BlLavyIK.js';
|
|
13
|
+
import { D as Dialog } from './Dialog-D6zpW-GE.js';
|
|
14
|
+
import { F as Flex } from './Flex-Ln6PmaDl.js';
|
|
15
|
+
import { I as Icon } from './Icon-BgKqBmlj.js';
|
|
16
16
|
import { L as Layout } from './Layout-CUUb2PVr.js';
|
|
17
|
-
import { M as Menu } from './Menu-
|
|
18
|
-
import { P as Popover } from './Popover-
|
|
19
|
-
import { T as Text } from './Text-
|
|
20
|
-
import { T as Tooltip } from './Tooltip-
|
|
17
|
+
import { M as Menu } from './Menu-BAuADOyt.js';
|
|
18
|
+
import { P as Popover } from './Popover-Bnkwq99S.js';
|
|
19
|
+
import { T as Text } from './Text-B91g6xKn.js';
|
|
20
|
+
import { T as Tooltip } from './Tooltip-BL_bgvwA.js';
|
|
21
21
|
import { c as cx } from './index-tZvMCc77.js';
|
|
22
|
-
import { a as AnvilProviderContext } from './AnvilProvider-
|
|
22
|
+
import { a as AnvilProviderContext } from './AnvilProvider-Lh8YtV03.js';
|
|
23
23
|
import { useTrackingId } from './useTrackingId.js';
|
|
24
|
-
import { u as useLayoutPropsUtil } from './useLayoutPropsUtil-
|
|
24
|
+
import { u as useLayoutPropsUtil } from './useLayoutPropsUtil-DWACCL8v-CZNrcQT-.js';
|
|
25
25
|
|
|
26
26
|
import './Page.css';function useMergedRef(...refs) {
|
|
27
27
|
return React.useCallback(element => {
|
|
@@ -225,7 +225,7 @@ const PagePanel = forwardRef(
|
|
|
225
225
|
const breakpointWidth = +(BreakpointLg?.value.replace("px", "") ?? 0);
|
|
226
226
|
const innerWidth = breakpoint?.innerWidth ?? 0;
|
|
227
227
|
if (typeof open !== "undefined" && innerWidth < breakpointWidth) {
|
|
228
|
-
return /* @__PURE__ */ jsx(Dialog, { open, children: /* @__PURE__ */ jsx(Dialog.Content, { children: /* @__PURE__ */ jsx(
|
|
228
|
+
return /* @__PURE__ */ jsx(Dialog, { open, disableCloseOnClickOutside: true, children: /* @__PURE__ */ jsx(Dialog.Content, { children: /* @__PURE__ */ jsx(
|
|
229
229
|
"div",
|
|
230
230
|
{
|
|
231
231
|
className: classNames,
|
|
@@ -459,13 +459,129 @@ const PageFooter = forwardRef(
|
|
|
459
459
|
);
|
|
460
460
|
PageFooter.displayName = "PageFooter";
|
|
461
461
|
const Page = Object.assign(PageElement, {
|
|
462
|
+
/**
|
|
463
|
+
* PageSidebar component for creating collapsible navigation sidebars.
|
|
464
|
+
*
|
|
465
|
+
* Features:
|
|
466
|
+
* - Collapsible sidebar with localStorage persistence
|
|
467
|
+
* - Responsive design with adaptive popover on mobile
|
|
468
|
+
* - Automatic tracking ID generation for analytics
|
|
469
|
+
* - Keyboard navigation and accessibility support
|
|
470
|
+
* - Toggle button with tooltip
|
|
471
|
+
* - Context provider for sidebar state
|
|
472
|
+
* - Mobile-friendly popover navigation
|
|
473
|
+
*
|
|
474
|
+
* @example
|
|
475
|
+
* <Page.Sidebar currentPageTitle="Navigation">
|
|
476
|
+
* <Page.SidebarHeader>
|
|
477
|
+
* <Text variant="headline" el="h2">Sidebar Title</Text>
|
|
478
|
+
* </Page.SidebarHeader>
|
|
479
|
+
* <SideNav>
|
|
480
|
+
* <SideNavLink pathname="/">Home</SideNavLink>
|
|
481
|
+
* </SideNav>
|
|
482
|
+
* </Page.Sidebar>
|
|
483
|
+
*/
|
|
462
484
|
Sidebar: PageSidebar,
|
|
485
|
+
/**
|
|
486
|
+
* PageSidebarHeader component for creating header sections within sidebars.
|
|
487
|
+
*
|
|
488
|
+
* Features:
|
|
489
|
+
* - Container for sidebar header content
|
|
490
|
+
* - Automatic visibility handling based on sidebar collapsed state
|
|
491
|
+
* - Supports all standard div props
|
|
492
|
+
* - Context-aware styling
|
|
493
|
+
*
|
|
494
|
+
* @example
|
|
495
|
+
* <Page.SidebarHeader>
|
|
496
|
+
* <Text variant="headline" el="h2" size="medium">
|
|
497
|
+
* Sidebar Title
|
|
498
|
+
* </Text>
|
|
499
|
+
* </Page.SidebarHeader>
|
|
500
|
+
*/
|
|
463
501
|
SidebarHeader: PageSidebarHeader,
|
|
502
|
+
/**
|
|
503
|
+
* PageHeader component for creating page headers with navigation and actions.
|
|
504
|
+
*
|
|
505
|
+
* Features:
|
|
506
|
+
* - Page title with semantic heading
|
|
507
|
+
* - Breadcrumb navigation support
|
|
508
|
+
* - Status chips display
|
|
509
|
+
* - Primary and secondary action buttons
|
|
510
|
+
* - Preference action button/link
|
|
511
|
+
* - Responsive layout with fluid grid
|
|
512
|
+
* - Accessibility support with proper ARIA labels
|
|
513
|
+
* - Flexible layout configuration
|
|
514
|
+
* - Description content support
|
|
515
|
+
*
|
|
516
|
+
* @example
|
|
517
|
+
* <Page.Header
|
|
518
|
+
* title="Page Title"
|
|
519
|
+
* breadcrumbs={[
|
|
520
|
+
* { href: "/", children: "Home" },
|
|
521
|
+
* { children: "Current Page" }
|
|
522
|
+
* ]}
|
|
523
|
+
* chips={[{ label: "Status" }]}
|
|
524
|
+
* actions={{
|
|
525
|
+
* primary: { label: "Save", onClick: handleSave },
|
|
526
|
+
* secondary: [{ label: "Cancel", onClick: handleCancel }]
|
|
527
|
+
* }}
|
|
528
|
+
* />
|
|
529
|
+
*/
|
|
464
530
|
Header: PageHeader,
|
|
531
|
+
/**
|
|
532
|
+
* PageContent component for the main content area of a page.
|
|
533
|
+
*
|
|
534
|
+
* Features:
|
|
535
|
+
* - Semantic main element for page content
|
|
536
|
+
* - Virtual scrolling support for long content
|
|
537
|
+
* - Automatic scroll synchronization
|
|
538
|
+
* - Responsive design
|
|
539
|
+
* - Accessibility support with proper main landmark
|
|
540
|
+
* - Scroll position management
|
|
541
|
+
*
|
|
542
|
+
* @example
|
|
543
|
+
* <Page.Content>
|
|
544
|
+
* <Text>Main page content goes here</Text>
|
|
545
|
+
* <Button>Action Button</Button>
|
|
546
|
+
* </Page.Content>
|
|
547
|
+
*/
|
|
465
548
|
Content: PageContent,
|
|
549
|
+
/**
|
|
550
|
+
* PagePanel component for creating slide-out panels or dialogs.
|
|
551
|
+
*
|
|
552
|
+
* Features:
|
|
553
|
+
* - Responsive design with dialog fallback on mobile
|
|
554
|
+
* - Multiple size variants (small, medium, large)
|
|
555
|
+
* - Optional padding control
|
|
556
|
+
* - Persistent or controlled open state
|
|
557
|
+
* - Automatic mobile dialog conversion
|
|
558
|
+
* - Keyboard navigation and accessibility support
|
|
559
|
+
* - Smooth animations and transitions
|
|
560
|
+
*
|
|
561
|
+
* @example
|
|
562
|
+
* <Page.Panel open={isOpen} size="medium">
|
|
563
|
+
* <Text variant="headline" el="h3">Panel Content</Text>
|
|
564
|
+
* <Button onClick={() => setIsOpen(false)}>Close</Button>
|
|
565
|
+
* </Page.Panel>
|
|
566
|
+
*/
|
|
466
567
|
Panel: PagePanel,
|
|
568
|
+
/**
|
|
569
|
+
* PageFooter component for creating page footers with layout utilities.
|
|
570
|
+
*
|
|
571
|
+
* Features:
|
|
572
|
+
* - Semantic footer element
|
|
573
|
+
* - Layout utility props support
|
|
574
|
+
* - Responsive design
|
|
575
|
+
* - Accessibility support with proper footer landmark
|
|
576
|
+
* - Flexible content positioning
|
|
577
|
+
*
|
|
578
|
+
* @example
|
|
579
|
+
* <Page.Footer>
|
|
580
|
+
* <Text>Footer content with layout utilities</Text>
|
|
581
|
+
* </Page.Footer>
|
|
582
|
+
*/
|
|
467
583
|
Footer: PageFooter
|
|
468
584
|
});
|
|
469
585
|
|
|
470
586
|
export { Page as P, PageSidebar as a, PageSidebarHeader as b, PagePanel as c, PageHeader as d, PageContent as e };
|
|
471
|
-
//# sourceMappingURL=Page-
|
|
587
|
+
//# sourceMappingURL=Page-CtwsyE3i.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Page-CtwsyE3i.js","sources":["../../../node_modules/.pnpm/@react-hook+merged-ref@1.3.2_react@18.2.0/node_modules/@react-hook/merged-ref/dist/module/index.js","../../hammer-icon/mdi/round/chevron_left.svg","../../hammer-icon/mdi/round/segment.svg","../public/assets/icons/st/local_settings.svg","../src/components/Page/Page.tsx"],"sourcesContent":["import * as React from 'react';\n\nfunction useMergedRef(...refs) {\n return React.useCallback(element => {\n for (let i = 0; i < refs.length; i++) {\n const ref = refs[i];\n if (typeof ref === 'function') ref(element);else if (ref && typeof ref === 'object') ref.current = element;\n }\n }, // eslint-disable-next-line react-hooks/exhaustive-deps\n refs);\n}\n\nexport default useMergedRef;","import * as React from \"react\";\nconst SvgChevronLeft = (props) => /* @__PURE__ */ React.createElement(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: \"1em\", height: \"1em\", viewBox: \"0 0 24 24\", ...props }, /* @__PURE__ */ React.createElement(\"path\", { d: \"M14.71 6.71a.996.996 0 0 0-1.41 0L8.71 11.3a.996.996 0 0 0 0 1.41l4.59 4.59a.996.996 0 1 0 1.41-1.41L10.83 12l3.88-3.88c.39-.39.38-1.03 0-1.41z\" }));\nexport default SvgChevronLeft;\n","import * as React from \"react\";\nconst SvgSegment = (props) => /* @__PURE__ */ React.createElement(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: \"1em\", height: \"1em\", viewBox: \"0 0 24 24\", ...props }, /* @__PURE__ */ React.createElement(\"path\", { d: \"M10 18h10c.55 0 1-.45 1-1s-.45-1-1-1H10c-.55 0-1 .45-1 1s.45 1 1 1zM3 7c0 .55.45 1 1 1h16c.55 0 1-.45 1-1s-.45-1-1-1H4c-.55 0-1 .45-1 1zm7 6h10c.55 0 1-.45 1-1s-.45-1-1-1H10c-.55 0-1 .45-1 1s.45 1 1 1z\" }));\nexport default SvgSegment;\n","import * as React from \"react\";\nconst SvgLocalSettings = (props) => /* @__PURE__ */ React.createElement(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: \"1em\", height: \"1em\", viewBox: \"0 0 24 24\", ...props }, /* @__PURE__ */ React.createElement(\"path\", { fillRule: \"evenodd\", d: \"M10.5 21h-.955a.49.49 0 0 1-.484-.399l-.366-2.517a7.5 7.5 0 0 1-1.65-.936l-2.431.954a.49.49 0 0 1-.596-.204l-1.953-3.291a.465.465 0 0 1 .117-.608l2.06-1.573a8 8 0 0 1-.067-.926c0-.313.03-.622.068-.926l-2.06-1.572a.467.467 0 0 1-.117-.609l1.953-3.291c.122-.205.376-.285.595-.205l2.431.955a7.3 7.3 0 0 1 1.65-.936L9.062 2.4a.49.49 0 0 1 .482-.4h3.906c.244 0 .444.176.488.399l.366 2.518a7.5 7.5 0 0 1 1.65.935l2.432-.955a.49.49 0 0 1 .595.205l1.953 3.291a.465.465 0 0 1-.117.608L18.85 10.5h-4.091c-.436-1.348-1.73-2.325-3.26-2.325-1.89 0-3.418 1.486-3.418 3.325 0 1.5 1.018 2.767 2.42 3.182z\", clipRule: \"evenodd\" }), /* @__PURE__ */ React.createElement(\"path\", { fillRule: \"evenodd\", d: \"M12.437 21.563A1.45 1.45 0 0 0 13.5 22h7q.624 0 1.062-.437A1.45 1.45 0 0 0 22 20.5v-7q0-.625-.438-1.062A1.45 1.45 0 0 0 20.5 12h-7q-.625 0-1.063.438A1.45 1.45 0 0 0 12 13.5v7q0 .625.437 1.063m.991-.991v-.777c.43-.505.96-.914 1.556-1.202q.919-.45 2.015-.45 1.098 0 2.016.45t1.556 1.202v.777zM17 17.143a1.5 1.5 0 0 0 1.113-.459 1.5 1.5 0 0 0 .458-1.113q0-.654-.458-1.112A1.5 1.5 0 0 0 17 14a1.5 1.5 0 0 0-1.113.459 1.5 1.5 0 0 0-.459 1.113q0 .654.459 1.113a1.52 1.52 0 0 0 1.113.458\", clipRule: \"evenodd\" }), /* @__PURE__ */ React.createElement(\"path\", { fillRule: \"evenodd\", d: \"M10.5 21h-.955a.49.49 0 0 1-.484-.399l-.366-2.517a7.5 7.5 0 0 1-1.65-.936l-2.431.954a.49.49 0 0 1-.596-.204l-1.953-3.291a.465.465 0 0 1 .117-.608l2.06-1.573a8 8 0 0 1-.067-.926c0-.313.03-.622.068-.926l-2.06-1.572a.467.467 0 0 1-.117-.609l1.953-3.291c.122-.205.376-.285.595-.205l2.431.955a7.3 7.3 0 0 1 1.65-.936L9.062 2.4a.49.49 0 0 1 .482-.4h3.906c.244 0 .444.176.488.399l.366 2.518a7.5 7.5 0 0 1 1.65.935l2.432-.955a.49.49 0 0 1 .595.205l1.953 3.291a.465.465 0 0 1-.117.608L18.85 10.5h-4.091c-.436-1.348-1.73-2.325-3.26-2.325-1.89 0-3.418 1.486-3.418 3.325 0 1.5 1.018 2.767 2.42 3.182z\", clipRule: \"evenodd\" }), /* @__PURE__ */ React.createElement(\"path\", { fillRule: \"evenodd\", d: \"M12.437 21.563A1.45 1.45 0 0 0 13.5 22h7q.624 0 1.062-.437A1.45 1.45 0 0 0 22 20.5v-7q0-.625-.438-1.062A1.45 1.45 0 0 0 20.5 12h-7q-.625 0-1.063.438A1.45 1.45 0 0 0 12 13.5v7q0 .625.437 1.063m.991-.991v-.777c.43-.505.96-.914 1.556-1.202q.919-.45 2.015-.45 1.098 0 2.016.45t1.556 1.202v.777zM17 17.143a1.5 1.5 0 0 0 1.113-.459 1.5 1.5 0 0 0 .458-1.113q0-.654-.458-1.112A1.5 1.5 0 0 0 17 14a1.5 1.5 0 0 0-1.113.459 1.5 1.5 0 0 0-.459 1.113q0 .654.459 1.113a1.52 1.52 0 0 0 1.113.458\", clipRule: \"evenodd\" }));\nexport default SvgLocalSettings;\n","import useMergedRef from \"@react-hook/merged-ref\";\nimport CloseSVG from \"@servicetitan/hammer-icon/mdi/round/chevron_left.svg\";\nimport OpenSVG from \"@servicetitan/hammer-icon/mdi/round/chevron_right.svg\";\nimport RespOpen from \"@servicetitan/hammer-icon/mdi/round/keyboard_arrow_down.svg\";\nimport RespClose from \"@servicetitan/hammer-icon/mdi/round/keyboard_arrow_up.svg\";\nimport MoreVert from \"@servicetitan/hammer-icon/mdi/round/more_vert.svg\";\nimport SegmentSVG from \"@servicetitan/hammer-icon/mdi/round/segment.svg\";\nimport {\n LayoutUtilProps,\n useLayoutPropsUtil,\n} from \"@servicetitan/hammer-react\";\nimport { core } from \"@servicetitan/hammer-token\";\nimport {\n ComponentPropsWithoutRef,\n ReactNode,\n Ref,\n RefObject,\n UIEvent,\n createContext,\n forwardRef,\n useContext,\n useEffect,\n useRef,\n useState,\n} from \"react\";\nimport LocalSettings from \"../../../public/assets/icons/st/local_settings.svg\";\nimport { useTrackingId } from \"../../hooks\";\nimport {\n AnvilProviderContext,\n AnvilProviderContextProps,\n} from \"../../providers\";\nimport Breadcrumbs, { BreadcrumbsLinkProps } from \"../Breadcrumbs\";\nimport Button, { ButtonProps } from \"../Button\";\nimport ButtonLink, { ButtonLinkProps } from \"../ButtonLink\";\nimport Chip, { ChipProps } from \"../Chip\";\nimport Dialog from \"../Dialog\";\nimport Flex from \"../Flex\";\nimport Icon from \"../Icon\";\nimport Layout, { LayoutProps } from \"../Layout\";\nimport Menu from \"../Menu\";\nimport Popover from \"../Popover\";\nimport Text from \"../Text\";\nimport Tooltip from \"../Tooltip\";\n\nimport cx from \"classnames\";\nimport styles from \"./Page.module.scss\";\n\n//--- Start Page Sidebar ---//\ntype PageSideBarContextProps = {\n collapsed: boolean;\n};\n\nconst PageSideBarContext = createContext<PageSideBarContextProps | null>(null);\n\n/**\n * Props for the PageSidebar component\n * @extends ComponentPropsWithoutRef<\"div\">\n */\nexport type PageSidebarProps = ComponentPropsWithoutRef<\"div\"> & {\n /**\n * Key for storing sidebar collapsed state in localStorage\n * @default \"sidebar-collapsed\"\n */\n localStorageKey?: string;\n /**\n * Custom tracking ID for analytics\n */\n [\"data-tracking-id\"]?: string;\n /**\n * Title to display in the adaptive trigger button\n */\n currentPageTitle?: string;\n};\n\n/**\n * PageSidebar component for creating collapsible navigation sidebars.\n *\n * Features:\n * - Collapsible sidebar with localStorage persistence\n * - Responsive design with adaptive popover on mobile\n * - Automatic tracking ID generation for analytics\n * - Keyboard navigation and accessibility support\n * - Toggle button with tooltip\n * - Context provider for sidebar state\n * - Mobile-friendly popover navigation\n *\n * @example\n * <Page.Sidebar currentPageTitle=\"Navigation\">\n * <Page.SidebarHeader>\n * <Text variant=\"headline\" el=\"h2\">Sidebar Title</Text>\n * </Page.SidebarHeader>\n * <SideNav>\n * <SideNavLink pathname=\"/\">Home</SideNavLink>\n * </SideNav>\n * </Page.Sidebar>\n */\nexport const PageSidebar = forwardRef(\n (props: PageSidebarProps, ref: Ref<HTMLDivElement>) => {\n const {\n children,\n className,\n currentPageTitle,\n localStorageKey = \"sidebar-collapsed\",\n ...rest\n } = props;\n\n const data = {\n localStorageKey,\n };\n\n const { breakpoint } =\n useContext<AnvilProviderContextProps>(AnvilProviderContext);\n\n const trackingId = useTrackingId({\n name: \"PageSidebarButton\",\n data,\n hasOverride: !!props[\"data-tracking-id\"],\n });\n\n const [collapsed, setCollapsed] = useState<boolean>(() => {\n // getting stored value\n const sidebarState = localStorage.getItem(localStorageKey);\n return sidebarState ? JSON.parse(sidebarState) : false;\n });\n const classNames = cx([styles[\"sidebar\"]], className, {\n [styles[\"collapsed\"]]: collapsed,\n });\n const onToggleButtonClick = () => {\n setCollapsed((prev) => {\n localStorage.setItem(localStorageKey, JSON.stringify(!prev));\n return !prev;\n });\n };\n\n const breakpointWidth = +(\n core.primitive?.BreakpointLg?.value.replace(\"px\", \"\") ?? 0\n );\n const innerWidth = breakpoint?.innerWidth ?? 0;\n\n if (innerWidth < breakpointWidth) {\n return (\n <Popover fillAvailableHeight matchReferenceWidth noPadding disableCaret>\n <Popover.Trigger>\n {(props) => {\n if (typeof document !== \"undefined\") {\n if (props[\"data-state\"] === \"open\") {\n document.body.style.overflow = \"hidden\";\n } else {\n document.body.style.overflow = \"auto\";\n }\n }\n return (\n <div className={styles[\"sidebar-adaptive-trigger-container\"]}>\n <Button\n className={styles[\"sidebar-adaptive-trigger\"]}\n icon={SegmentSVG}\n appearance=\"ghost\"\n {...props}\n >\n {!currentPageTitle ? \"Menu\" : currentPageTitle}\n <Icon\n className={styles[\"sidebar-adaptive-trigger-icon\"]}\n justifyContent=\"end\"\n svg={\n props[\"data-state\"] === \"open\" ? RespClose : RespOpen\n }\n />\n </Button>\n </div>\n );\n }}\n </Popover.Trigger>\n <Popover.Content className={styles[\"sidebar-adaptive-container\"]}>\n <Flex\n direction=\"column\"\n className={styles[\"sidebar-adaptive\"]}\n ref={ref}\n >\n {children}\n </Flex>\n </Popover.Content>\n </Popover>\n );\n }\n\n return (\n <PageSideBarContext.Provider value={{ collapsed }}>\n <div className={classNames} ref={ref} {...rest}>\n <div className={styles[\"sidebar-inner\"]} aria-hidden={collapsed}>\n <div>{children}</div>\n </div>\n <div className={styles[\"toggle-button-wrapper\"]}>\n <Tooltip placement=\"right\">\n <Tooltip.Trigger className={styles[\"toggle-button-tooltip\"]}>\n <Button\n size=\"small\"\n onClick={onToggleButtonClick}\n className={styles[\"toggle-button\"]}\n aria-label={collapsed ? \"Open Sidebar\" : \"Close Sidebar\"}\n data-tracking-id={trackingId}\n icon={collapsed ? OpenSVG : CloseSVG}\n />\n </Tooltip.Trigger>\n <Tooltip.Content>\n {collapsed ? \"Open Sidebar\" : \"Close Sidebar\"}\n </Tooltip.Content>\n </Tooltip>\n </div>\n </div>\n </PageSideBarContext.Provider>\n );\n },\n);\n\nPageSidebar.displayName = \"Page.Sidebar\";\n//--- End Page Sidebar ---//\n\n//--- Start Page Sidebar Header ---//\n/**\n * Props for the PageSidebarHeader component\n * @extends ComponentPropsWithoutRef<\"div\">\n */\nexport type PageSidebarHeaderProps = ComponentPropsWithoutRef<\"div\">;\n\n/**\n * PageSidebarHeader component for creating header sections within sidebars.\n *\n * Features:\n * - Container for sidebar header content\n * - Automatic visibility handling based on sidebar collapsed state\n * - Supports all standard div props\n * - Context-aware styling\n *\n * @example\n * <Page.SidebarHeader>\n * <Text variant=\"headline\" el=\"h2\" size=\"medium\">\n * Sidebar Title\n * </Text>\n * </Page.SidebarHeader>\n */\nexport const PageSidebarHeader = forwardRef(\n (props: PageSidebarHeaderProps, ref: Ref<HTMLDivElement>) => {\n const { children, className, ...rest } = props;\n const context = useContext(PageSideBarContext);\n const classNames = cx([styles[\"sidebar-header\"]], className);\n\n return (\n <div className={classNames} ref={ref} {...rest}>\n <div\n className={styles[\"header-content\"]}\n aria-hidden={context?.collapsed}\n >\n {children}\n </div>\n </div>\n );\n },\n);\n\nPageSidebarHeader.displayName = \"Page.SidebarHeader\";\n//--- End Page SidebarHeader ---//\n\n//--- Start Page Panel ---//\n/**\n * Props for the PagePanel component\n * @extends ComponentPropsWithoutRef<\"div\">\n */\nexport type PagePanelProps = ComponentPropsWithoutRef<\"div\"> & {\n /**\n * Whether the panel is open\n * @default true\n */\n open?: boolean;\n /**\n * Size of the panel\n * @default \"medium\"\n */\n size?: \"small\" | \"medium\" | \"large\";\n /**\n * Whether to remove default padding from the panel\n * @default false\n */\n noPadding?: boolean;\n};\n\n/**\n * PagePanel component for creating slide-out panels or dialogs.\n *\n * Features:\n * - Responsive design with dialog fallback on mobile\n * - Multiple size variants (small, medium, large)\n * - Optional padding control\n * - Persistent or controlled open state\n * - Automatic mobile dialog conversion\n * - Keyboard navigation and accessibility support\n * - Smooth animations and transitions\n *\n * @example\n * <Page.Panel open={isOpen} size=\"medium\">\n * <Text variant=\"headline\" el=\"h3\">Panel Content</Text>\n * <Button onClick={() => setIsOpen(false)}>Close</Button>\n * </Page.Panel>\n */\nexport const PagePanel = forwardRef(\n (props: PagePanelProps, ref: Ref<HTMLDivElement>) => {\n const {\n children,\n open,\n size = \"medium\",\n noPadding,\n style,\n className,\n ...rest\n } = props;\n const classNames = cx([styles[\"panel\"]], [styles[size]], className, {\n [styles[\"open\"]]: typeof open === \"undefined\" ? true : open,\n [styles[\"persistent\"]]: typeof open === \"undefined\",\n [styles[\"noPadding\"]]: noPadding,\n });\n\n const { breakpoint } =\n useContext<AnvilProviderContextProps>(AnvilProviderContext);\n\n const breakpointWidth = +(\n core.primitive?.BreakpointLg?.value.replace(\"px\", \"\") ?? 0\n );\n const innerWidth = breakpoint?.innerWidth ?? 0;\n\n if (typeof open !== \"undefined\" && innerWidth < breakpointWidth) {\n return (\n <Dialog open={open} disableCloseOnClickOutside>\n <Dialog.Content>\n <div\n className={classNames}\n aria-hidden={!open}\n aria-disabled={!open}\n ref={ref}\n {...rest}\n >\n {children}\n </div>\n </Dialog.Content>\n </Dialog>\n );\n }\n return (\n <div\n className={classNames}\n aria-hidden={!open}\n aria-disabled={!open}\n ref={ref}\n {...rest}\n >\n <div\n className={styles[\"panel-inner\"]}\n /* eslint-disable-next-line jsx-a11y/no-noninteractive-tabindex */\n tabIndex={typeof open !== \"undefined\" && open ? 0 : -1}\n style={style}\n >\n <div>{children}</div>\n </div>\n </div>\n );\n },\n);\nPagePanel.displayName = \"PagePanel\";\n//--- End Page Panel ---//\n\n//--- Start Page Header ---//\n/**\n * Props for page header action buttons\n */\ntype PageHeaderActionProps = Omit<ButtonProps, \"appearance\"> & {\n /**\n * Label text for the action button\n */\n label: string;\n};\n\n/**\n * Props for page header actions configuration\n */\ntype PageHeaderActionsProps = {\n /**\n * Primary action button\n */\n primary?: PageHeaderActionProps;\n /**\n * Array of secondary action buttons\n */\n secondary?: PageHeaderActionProps[];\n};\n\n/**\n * Base props for preference actions\n */\ntype BasePreferenceProps = {\n /**\n * Accessible label for the preference action\n */\n \"aria-label\": string;\n};\n\n/**\n * Props for preference button actions\n */\ntype PreferenceButtonProps = Omit<\n ButtonProps,\n \"aria-label\" | \"icon\" | \"appearance\" | \"size\" | \"className\"\n> &\n BasePreferenceProps;\n\n/**\n * Props for preference link actions\n */\ntype PreferenceLinkProps = Omit<\n ButtonLinkProps,\n \"aria-label\" | \"icon\" | \"appearance\" | \"size\" | \"className\"\n> &\n BasePreferenceProps;\n\n/**\n * Props for the PageHeader component\n * @extends ComponentPropsWithoutRef<\"header\">\n */\nexport type PageHeaderProps = ComponentPropsWithoutRef<\"header\"> & {\n /**\n * Main title of the page\n */\n title: string;\n /**\n * Breadcrumb navigation links\n */\n breadcrumbs?: BreadcrumbsLinkProps[];\n /**\n * Status chips to display\n */\n chips?: ChipProps[];\n /**\n * Description text or content below the title\n */\n description?: ReactNode;\n /**\n * Primary and secondary action buttons\n */\n actions?: PageHeaderActionsProps;\n /**\n * Preference action button or link\n */\n preferenceAction?: PreferenceButtonProps | PreferenceLinkProps;\n /**\n * Layout configuration for the header\n */\n layout?: LayoutProps;\n};\n\n/**\n * PageHeader component for creating page headers with navigation and actions.\n *\n * Features:\n * - Page title with semantic heading\n * - Breadcrumb navigation support\n * - Status chips display\n * - Primary and secondary action buttons\n * - Preference action button/link\n * - Responsive layout with fluid grid\n * - Accessibility support with proper ARIA labels\n * - Flexible layout configuration\n * - Description content support\n *\n * @example\n * <Page.Header\n * title=\"Page Title\"\n * breadcrumbs={[\n * { href: \"/\", children: \"Home\" },\n * { children: \"Current Page\" }\n * ]}\n * chips={[{ label: \"Status\" }]}\n * actions={{\n * primary: { label: \"Save\", onClick: handleSave },\n * secondary: [{ label: \"Cancel\", onClick: handleCancel }]\n * }}\n * />\n */\nexport const PageHeader = forwardRef(\n (props: PageHeaderProps, ref: Ref<HTMLHeadElement>) => {\n const {\n title,\n breadcrumbs,\n chips,\n description,\n actions,\n preferenceAction,\n layout,\n className,\n ...rest\n } = props;\n\n const { fluid, variant } = layout || {};\n\n const preferenceItem =\n preferenceAction &&\n (\"href\" in preferenceAction ? (\n <Tooltip>\n <Tooltip.Trigger>\n <ButtonLink\n appearance=\"ghost\"\n icon={LocalSettings}\n size=\"small\"\n className={styles[\"preference-action\"]}\n {...(preferenceAction as PreferenceLinkProps)}\n />\n </Tooltip.Trigger>\n <Tooltip.Content>{preferenceAction[\"aria-label\"]}</Tooltip.Content>\n </Tooltip>\n ) : (\n <Tooltip>\n <Tooltip.Trigger>\n <Button\n appearance=\"ghost\"\n icon={LocalSettings}\n size=\"small\"\n className={styles[\"preference-action\"]}\n {...(preferenceAction as PreferenceButtonProps)}\n />\n </Tooltip.Trigger>\n <Tooltip.Content>{preferenceAction[\"aria-label\"]}</Tooltip.Content>\n </Tooltip>\n ));\n\n const actionItems = actions && (\n <Flex justifyContent=\"flex-end\" className={styles.actions}>\n {/* Only primary action */}\n {actions.primary &&\n (!actions.secondary || actions.secondary.length === 0) && (\n <Button appearance=\"primary\" {...actions.primary}>\n {actions.primary.label}\n </Button>\n )}\n\n {/* Only secondary actions (1-2 buttons) */}\n {!!actions.secondary?.length &&\n actions.secondary.length < 3 &&\n !actions.primary &&\n actions.secondary.map((action, index) => (\n <Button key={index} appearance=\"secondary\" {...action}>\n {action.label}\n </Button>\n ))}\n\n {/* 1 secondary action + primary action */}\n {actions.primary &&\n !!actions.secondary?.length &&\n actions.secondary.length === 1 && (\n <>\n <Button appearance=\"secondary\" {...actions.secondary[0]}>\n {actions.secondary[0].label}\n </Button>\n <Button appearance=\"primary\" {...actions.primary}>\n {actions.primary.label}\n </Button>\n </>\n )}\n\n {/* Multiple secondary actions (3+) with optional primary */}\n {!!actions.secondary?.length &&\n (actions.secondary.length >= 3 ||\n (actions.secondary.length >= 2 && actions.primary)) && (\n <>\n <Menu\n trigger={({ ref, ...rest }) => (\n <Tooltip>\n <Tooltip.Trigger\n ref={ref as unknown as RefObject<HTMLDivElement>}\n {...rest}\n >\n <Button\n appearance=\"secondary\"\n icon={MoreVert}\n aria-label=\"More actions\"\n />\n </Tooltip.Trigger>\n <Tooltip.Content>More actions</Tooltip.Content>\n </Tooltip>\n )}\n >\n {actions.secondary.map((action, index) => (\n <Menu.Item\n key={index}\n label={action.label}\n onClick={action.onClick}\n disabled={action.disabled}\n />\n ))}\n </Menu>\n {actions.primary && (\n <Button appearance=\"primary\" {...actions.primary}>\n {actions.primary.label}\n </Button>\n )}\n </>\n )}\n </Flex>\n );\n\n const headerClassName = cx(styles.content, styles.header, className);\n\n const headerContentClassName = cx(\n styles[\"content-inner\"],\n styles[\"content-header-inner\"],\n );\n\n return (\n <header ref={ref} className={headerClassName} {...rest}>\n <div className={headerContentClassName}>\n <Layout fluid={fluid} variant={variant} className={styles[\"layout\"]}>\n <Layout.Item>\n {breadcrumbs && (\n <Breadcrumbs>\n {breadcrumbs.map((breadcrumb, index) => (\n <Breadcrumbs.Link key={index} {...breadcrumb} />\n ))}\n </Breadcrumbs>\n )}\n </Layout.Item>\n\n <Layout.Item md={actionItems ? 6 : 12}>\n <div className={styles[\"title-wrapper\"]}>\n <Text\n variant=\"headline\"\n size=\"large\"\n el=\"h1\"\n className={styles.title}\n >\n {title}\n </Text>\n\n {preferenceItem}\n </div>\n\n {chips && (\n <Flex className={styles.chips}>\n {chips.map((chip, index) => (\n <Chip key={index} {...chip} />\n ))}\n </Flex>\n )}\n </Layout.Item>\n\n {actions && <Layout.Item md={6}>{actionItems}</Layout.Item>}\n\n {description && (\n <Layout.Item md={12} className={styles.description}>\n {description}\n </Layout.Item>\n )}\n </Layout>\n </div>\n </header>\n );\n },\n);\n\nPageHeader.displayName = \"Page.Header\";\n//--- End Page Header ---//\n\n//--- Start Page Content ---//\n/**\n * Props for the PageContent component\n * @extends ComponentPropsWithoutRef<\"main\">\n */\nexport type PageContentProps = ComponentPropsWithoutRef<\"main\">;\n\n/**\n * PageContent component for the main content area of a page.\n *\n * Features:\n * - Semantic main element for page content\n * - Virtual scrolling support for long content\n * - Automatic scroll synchronization\n * - Responsive design\n * - Accessibility support with proper main landmark\n * - Scroll position management\n *\n * @example\n * <Page.Content>\n * <Text>Main page content goes here</Text>\n * <Button>Action Button</Button>\n * </Page.Content>\n */\nexport const PageContent = forwardRef(\n (props: PageContentProps, ref: Ref<HTMLAreaElement>) => {\n const { children, className, ...rest } = props;\n const classNames = cx([styles[\"content\"]], className);\n const mainRef = useRef<HTMLAreaElement>(null);\n const virtualScrollRef = useRef<HTMLDivElement>(null);\n const blocker = useRef(true);\n const [leftOffset, setLeftOffset] = useState(\n (mainRef.current?.offsetLeft ?? 0) +\n (mainRef.current?.offsetWidth ?? 0) -\n 9,\n );\n const [contentHeight, setContentHeight] = useState(\n mainRef.current?.offsetHeight,\n );\n\n // Updates scroll position\n useEffect(() => {\n if (typeof window === \"undefined\") return;\n if (!blocker.current) return;\n function updatePosition() {\n const newValue = window.scrollY;\n\n virtualScrollRef.current?.scrollTo(0, newValue ?? 0);\n }\n window.addEventListener(\"scroll\", updatePosition, { passive: true });\n\n return () => {\n window.removeEventListener(\"scroll\", updatePosition);\n };\n }, []);\n\n // Updates virtual scroll properties when main resizes\n useEffect(() => {\n if (mainRef.current) {\n const observer = new ResizeObserver(() => {\n if (!mainRef.current) return;\n setLeftOffset(\n mainRef.current.offsetLeft + mainRef.current.offsetWidth - 9,\n );\n setContentHeight(mainRef.current.offsetHeight);\n });\n\n observer.observe(mainRef.current);\n\n // Cleanup function\n return () => {\n observer.disconnect();\n };\n }\n }, []);\n\n function scrollBody(e: UIEvent<HTMLElement>) {\n if (typeof window === \"undefined\") return;\n if (blocker.current) return;\n window.scrollTo(0, (e.target as HTMLDivElement).scrollTop);\n }\n\n return (\n <main className={classNames} ref={useMergedRef(mainRef, ref)} {...rest}>\n <div className={styles[\"content-inner\"]}>{children}</div>\n <div\n className={styles[\"virtual-scroll-container\"]}\n ref={virtualScrollRef}\n style={{\n left: leftOffset,\n }}\n onScrollCapture={scrollBody}\n onMouseEnter={() => {\n blocker.current = false;\n }}\n onMouseLeave={() => {\n blocker.current = true;\n }}\n >\n <div style={{ width: 1, height: contentHeight }} />\n </div>\n </main>\n );\n },\n);\n\nPageContent.displayName = \"PageContent\";\n//--- End Page Content ---//\n\n//--- Start Page Element ---//\n/**\n * Props for the Page component\n * @extends ComponentPropsWithoutRef<\"div\">\n */\nexport type PageProps = ComponentPropsWithoutRef<\"div\">;\n\nconst PageElement = forwardRef((props: PageProps, ref: Ref<HTMLDivElement>) => {\n const { children, className, ...rest } = props;\n const classNames = cx(styles[\"page\"], className);\n\n return (\n <div className={classNames} data-anv=\"Page\" ref={ref} {...rest}>\n <div className={styles[\"container\"]}>{children}</div>\n </div>\n );\n});\n\nPageElement.displayName = \"Page\";\n\n/**\n * Props for the PageFooter component\n * @extends ComponentPropsWithoutRef<\"div\">\n * @extends LayoutUtilProps\n */\nexport type PageFooterProps = ComponentPropsWithoutRef<\"div\"> & LayoutUtilProps;\n\n/**\n * PageFooter component for creating page footers with layout utilities.\n *\n * Features:\n * - Semantic footer element\n * - Layout utility props support\n * - Responsive design\n * - Accessibility support with proper footer landmark\n * - Flexible content positioning\n *\n * @example\n * <Page.Footer>\n * <Text>Footer content with layout utilities</Text>\n * </Page.Footer>\n */\nconst PageFooter = forwardRef(\n (props: PageFooterProps, ref: Ref<HTMLDivElement>) => {\n const { layoutStyles, componentProps } = useLayoutPropsUtil(props);\n const { children, className, style, ...rest } = componentProps;\n\n const classNames = cx([styles[\"content-footer\"]], className);\n const styleCombined = {\n ...style,\n ...layoutStyles,\n };\n return (\n <footer className={classNames} ref={ref} style={styleCombined} {...rest}>\n {children}\n </footer>\n );\n },\n);\nPageFooter.displayName = \"PageFooter\";\n\n/**\n * Page component for creating full-page layouts with navigation and content areas.\n *\n * Features:\n * - Container for complete page layouts\n * - Supports sidebar navigation with collapsible state\n * - Header with breadcrumbs, chips, and action buttons\n * - Main content area with virtual scrolling\n * - Optional slide-out panels with responsive dialog fallback\n * - Footer with layout utilities\n * - Responsive design with mobile adaptations\n * - Accessibility support with proper landmarks\n * - Automatic tracking ID generation for analytics\n * - Local storage persistence for sidebar state\n *\n * @example\n * <Page>\n * <Page.Sidebar currentPageTitle=\"Navigation\">\n * <Page.SidebarHeader>\n * <Text variant=\"headline\" el=\"h2\">Navigation</Text>\n * </Page.SidebarHeader>\n * <SideNav>\n * <SideNavLink pathname=\"/\">Home</SideNavLink>\n * </SideNav>\n * </Page.Sidebar>\n * <Page.Header\n * title=\"Page Title\"\n * breadcrumbs={[{ href: \"/\", children: \"Home\" }]}\n * actions={{ primary: { label: \"Save\", onClick: handleSave } }}\n * />\n * <Page.Content>\n * <Text>Main content</Text>\n * </Page.Content>\n * <Page.Panel open={isPanelOpen} size=\"medium\">\n * <Text>Panel content</Text>\n * </Page.Panel>\n * <Page.Footer>\n * <Text>Footer content</Text>\n * </Page.Footer>\n * </Page>\n */\nexport const Page = Object.assign(PageElement, {\n /**\n * PageSidebar component for creating collapsible navigation sidebars.\n *\n * Features:\n * - Collapsible sidebar with localStorage persistence\n * - Responsive design with adaptive popover on mobile\n * - Automatic tracking ID generation for analytics\n * - Keyboard navigation and accessibility support\n * - Toggle button with tooltip\n * - Context provider for sidebar state\n * - Mobile-friendly popover navigation\n *\n * @example\n * <Page.Sidebar currentPageTitle=\"Navigation\">\n * <Page.SidebarHeader>\n * <Text variant=\"headline\" el=\"h2\">Sidebar Title</Text>\n * </Page.SidebarHeader>\n * <SideNav>\n * <SideNavLink pathname=\"/\">Home</SideNavLink>\n * </SideNav>\n * </Page.Sidebar>\n */\n Sidebar: PageSidebar,\n /**\n * PageSidebarHeader component for creating header sections within sidebars.\n *\n * Features:\n * - Container for sidebar header content\n * - Automatic visibility handling based on sidebar collapsed state\n * - Supports all standard div props\n * - Context-aware styling\n *\n * @example\n * <Page.SidebarHeader>\n * <Text variant=\"headline\" el=\"h2\" size=\"medium\">\n * Sidebar Title\n * </Text>\n * </Page.SidebarHeader>\n */\n SidebarHeader: PageSidebarHeader,\n /**\n * PageHeader component for creating page headers with navigation and actions.\n *\n * Features:\n * - Page title with semantic heading\n * - Breadcrumb navigation support\n * - Status chips display\n * - Primary and secondary action buttons\n * - Preference action button/link\n * - Responsive layout with fluid grid\n * - Accessibility support with proper ARIA labels\n * - Flexible layout configuration\n * - Description content support\n *\n * @example\n * <Page.Header\n * title=\"Page Title\"\n * breadcrumbs={[\n * { href: \"/\", children: \"Home\" },\n * { children: \"Current Page\" }\n * ]}\n * chips={[{ label: \"Status\" }]}\n * actions={{\n * primary: { label: \"Save\", onClick: handleSave },\n * secondary: [{ label: \"Cancel\", onClick: handleCancel }]\n * }}\n * />\n */\n Header: PageHeader,\n /**\n * PageContent component for the main content area of a page.\n *\n * Features:\n * - Semantic main element for page content\n * - Virtual scrolling support for long content\n * - Automatic scroll synchronization\n * - Responsive design\n * - Accessibility support with proper main landmark\n * - Scroll position management\n *\n * @example\n * <Page.Content>\n * <Text>Main page content goes here</Text>\n * <Button>Action Button</Button>\n * </Page.Content>\n */\n Content: PageContent,\n /**\n * PagePanel component for creating slide-out panels or dialogs.\n *\n * Features:\n * - Responsive design with dialog fallback on mobile\n * - Multiple size variants (small, medium, large)\n * - Optional padding control\n * - Persistent or controlled open state\n * - Automatic mobile dialog conversion\n * - Keyboard navigation and accessibility support\n * - Smooth animations and transitions\n *\n * @example\n * <Page.Panel open={isOpen} size=\"medium\">\n * <Text variant=\"headline\" el=\"h3\">Panel Content</Text>\n * <Button onClick={() => setIsOpen(false)}>Close</Button>\n * </Page.Panel>\n */\n Panel: PagePanel,\n /**\n * PageFooter component for creating page footers with layout utilities.\n *\n * Features:\n * - Semantic footer element\n * - Layout utility props support\n * - Responsive design\n * - Accessibility support with proper footer landmark\n * - Flexible content positioning\n *\n * @example\n * <Page.Footer>\n * <Text>Footer content with layout utilities</Text>\n * </Page.Footer>\n */\n Footer: PageFooter,\n});\n"],"names":["core.primitive?.BreakpointLg","props","SegmentSVG","RespClose","RespOpen","OpenSVG","CloseSVG","LocalSettings","ref","rest","MoreVert"],"mappings":"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","x_google_ignoreList":[0]}
|
package/dist/Page.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export { P as Page, e as PageContent, d as PageHeader, c as PagePanel, a as PageSidebar, b as PageSidebarHeader, P as default } from './Page-
|
|
1
|
+
export { P as Page, e as PageContent, d as PageHeader, c as PagePanel, a as PageSidebar, b as PageSidebarHeader, P as default } from './Page-CtwsyE3i.js';
|
|
2
2
|
//# sourceMappingURL=Page.js.map
|
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
import { jsx } from 'react/jsx-runtime';
|
|
2
|
+
import { forwardRef } from 'react';
|
|
3
|
+
import { useTrackingId } from './useTrackingId.js';
|
|
4
|
+
import { P as PopoverTrigger$1, a as PopoverContent$1, b as PopoverClose$1, c as PopoverButton$1, d as Popover$1 } from './Popover-VztF0YHt-ci3tYiye.js';
|
|
5
|
+
import { c as childrenToString } from './childrenToString-Bz9MqbHb-Bz9MqbHb.js';
|
|
6
|
+
|
|
7
|
+
const PopoverElement = (props) => {
|
|
8
|
+
return /* @__PURE__ */ jsx(Popover$1, { ...props });
|
|
9
|
+
};
|
|
10
|
+
function PopoverTrigger(props) {
|
|
11
|
+
return /* @__PURE__ */ jsx(PopoverTrigger$1, { ...props });
|
|
12
|
+
}
|
|
13
|
+
const PopoverContent = forwardRef(
|
|
14
|
+
(props, ref) => {
|
|
15
|
+
return /* @__PURE__ */ jsx(PopoverContent$1, { ref, ...props });
|
|
16
|
+
}
|
|
17
|
+
);
|
|
18
|
+
PopoverContent.displayName = PopoverContent$1.displayName;
|
|
19
|
+
const PopoverClose = forwardRef(
|
|
20
|
+
(props, ref) => {
|
|
21
|
+
const data = {
|
|
22
|
+
children: childrenToString(props.children)
|
|
23
|
+
};
|
|
24
|
+
const trackingId = useTrackingId({
|
|
25
|
+
name: "PopoverClose",
|
|
26
|
+
data,
|
|
27
|
+
hasOverride: !!props["data-tracking-id"]
|
|
28
|
+
});
|
|
29
|
+
return /* @__PURE__ */ jsx(PopoverClose$1, { ref, "data-tracking-id": trackingId, ...props });
|
|
30
|
+
}
|
|
31
|
+
);
|
|
32
|
+
PopoverClose.displayName = PopoverClose$1.displayName;
|
|
33
|
+
const PopoverButton = forwardRef(
|
|
34
|
+
(props, ref) => {
|
|
35
|
+
const data = {
|
|
36
|
+
children: childrenToString(props.children),
|
|
37
|
+
appearance: props.appearance,
|
|
38
|
+
icon: props.icon,
|
|
39
|
+
size: props.size,
|
|
40
|
+
type: props.type
|
|
41
|
+
};
|
|
42
|
+
const trackingId = useTrackingId({
|
|
43
|
+
name: "PopoverButton",
|
|
44
|
+
data,
|
|
45
|
+
hasOverride: !!props["data-tracking-id"]
|
|
46
|
+
});
|
|
47
|
+
return /* @__PURE__ */ jsx(PopoverButton$1, { ref, "data-tracking-id": trackingId, ...props });
|
|
48
|
+
}
|
|
49
|
+
);
|
|
50
|
+
PopoverButton.displayName = PopoverButton$1.displayName;
|
|
51
|
+
const Popover = Object.assign(PopoverElement, {
|
|
52
|
+
/**
|
|
53
|
+
* PopoverTrigger component for creating custom trigger elements.
|
|
54
|
+
*
|
|
55
|
+
* Features:
|
|
56
|
+
* - Supports custom trigger elements via render prop pattern
|
|
57
|
+
* - Automatic focus management and keyboard interaction
|
|
58
|
+
* - Hover and click event handling
|
|
59
|
+
* - Accessibility attributes (aria-haspopup, aria-expanded, aria-details)
|
|
60
|
+
* - Legacy popover support with fallback
|
|
61
|
+
* - Context integration with parent popover
|
|
62
|
+
* - Automatic tracking ID generation for analytics
|
|
63
|
+
*
|
|
64
|
+
* @example
|
|
65
|
+
* <Popover.Trigger>
|
|
66
|
+
* {(props) => (
|
|
67
|
+
* <button {...props}>
|
|
68
|
+
* Click to open popover
|
|
69
|
+
* </button>
|
|
70
|
+
* )}
|
|
71
|
+
* </Popover.Trigger>
|
|
72
|
+
*/
|
|
73
|
+
Trigger: PopoverTrigger,
|
|
74
|
+
/**
|
|
75
|
+
* PopoverContent component for the main popover content area.
|
|
76
|
+
*
|
|
77
|
+
* Features:
|
|
78
|
+
* - Automatic positioning and sizing based on trigger
|
|
79
|
+
* - Screen boundary detection and fitting
|
|
80
|
+
* - Scroll handling with custom scroller reference
|
|
81
|
+
* - Focus management and keyboard navigation
|
|
82
|
+
* - Hover interaction support for tooltip mode
|
|
83
|
+
* - Escape key handling for closing
|
|
84
|
+
* - Tab key trapping for modal popovers
|
|
85
|
+
* - Arrow/caret indicator with automatic positioning
|
|
86
|
+
* - Legacy popover support with fallback
|
|
87
|
+
* - Context integration with parent popover
|
|
88
|
+
* - Accessibility support with proper ARIA roles
|
|
89
|
+
*
|
|
90
|
+
* @example
|
|
91
|
+
* <Popover.Content>
|
|
92
|
+
* <p>This is the popover content</p>
|
|
93
|
+
* <Popover.Close>Close</Popover.Close>
|
|
94
|
+
* </Popover.Content>
|
|
95
|
+
*/
|
|
96
|
+
Content: PopoverContent,
|
|
97
|
+
/**
|
|
98
|
+
* PopoverClose component for closing the popover.
|
|
99
|
+
*
|
|
100
|
+
* Features:
|
|
101
|
+
* - Automatic popover closing on click
|
|
102
|
+
* - Supports all Button component props and styling
|
|
103
|
+
* - Controlled and uncontrolled mode support
|
|
104
|
+
* - Legacy popover support with fallback
|
|
105
|
+
* - Context integration with parent popover
|
|
106
|
+
* - Accessibility support with proper button semantics
|
|
107
|
+
* - Delayed closing for controlled mode
|
|
108
|
+
* - Automatic tracking ID generation for analytics
|
|
109
|
+
*
|
|
110
|
+
* @example
|
|
111
|
+
* <Popover.Close>Close</Popover.Close>
|
|
112
|
+
*/
|
|
113
|
+
Close: PopoverClose,
|
|
114
|
+
/**
|
|
115
|
+
* PopoverButton component for creating button-style triggers.
|
|
116
|
+
*
|
|
117
|
+
* Features:
|
|
118
|
+
* - Button styling and behavior with all Button props
|
|
119
|
+
* - Automatic popover opening on click
|
|
120
|
+
* - Hover interaction support for tooltip mode
|
|
121
|
+
* - Focus management and keyboard navigation
|
|
122
|
+
* - Accessibility attributes (aria-haspopup, aria-expanded, aria-details)
|
|
123
|
+
* - Legacy popover support with fallback
|
|
124
|
+
* - Context integration with parent popover
|
|
125
|
+
* - Event handling for mouse, keyboard, and focus events
|
|
126
|
+
* - Automatic tracking ID generation for analytics
|
|
127
|
+
*
|
|
128
|
+
* @example
|
|
129
|
+
* <Popover.Button>Click to open</Popover.Button>
|
|
130
|
+
*/
|
|
131
|
+
Button: PopoverButton
|
|
132
|
+
});
|
|
133
|
+
|
|
134
|
+
export { Popover as P, PopoverTrigger as a, PopoverContent as b, PopoverClose as c, PopoverButton as d };
|
|
135
|
+
//# sourceMappingURL=Popover-Bnkwq99S.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Popover-Bnkwq99S.js","sources":["../src/components/Popover/Popover.tsx"],"sourcesContent":["import {\n PopoverProps as CorePopoverProps,\n Popover as CorePopover,\n PopoverTrigger as CorePopoverTrigger,\n PopoverTriggerProps as CorePopoverTriggerProps,\n PopoverContent as CorePopoverContent,\n PopoverContentProps as CorePopoverContentProps,\n PopoverClose as CorePopoverClose,\n PopoverCloseProps as CorePopoverCloseProps,\n PopoverButton as CorePopoverButton,\n PopoverButtonProps as CorePopoverButtonProps,\n childrenToString,\n} from \"@servicetitan/hammer-react\";\nimport { Ref, forwardRef } from \"react\";\nimport { useTrackingId } from \"../../hooks/useTrackingId\";\nimport { DataTrackingId } from \"../../types/DataTrackingId\";\n\n/**\n * Props for the Popover component\n * @property {ReactNode} [children] - The content to be rendered inside the popover\n * @property {string} [id] - Unique identifier for the popover\n * @property {boolean} [modal] - Whether the popover should be modal (traps focus)\n * @property {boolean} [openOnHover] - Changes interaction to use hover instead of click\n * @property {boolean} [fillAvailableHeight] - Changes height and positioning for select/combobox\n * @property {number | string} [maxHeight] - Maximum height of the popover content\n * @property {boolean} [fitScreen] - Whether the popover should fit within the screen bounds\n * @property {number | string} [minHeight] - Minimum height of the popover content\n * @property {boolean} [matchReferenceWidth] - Whether the popover width should match the trigger element\n * @property {boolean} [fixedWidth] - Whether the popover should have a fixed width\n * @property {string} [placement] - Placement of the popover relative to the trigger\n * @property {boolean} [open] - Controlled open state\n * @property {boolean} [defaultOpen] - Default open state for uncontrolled mode\n * @property {Function} [onOpenChange] - Callback when open state changes\n * @property {Function} [onOutsidePress] - Callback when clicking outside the popover\n * @property {Function} [onClose] - Fires when the floating element is requested to be closed\n * @property {boolean} [disableCaret] - Whether to disable the caret/arrow indicator\n * @property {boolean} [noPadding] - Whether to remove default padding from content\n * @property {boolean} [disableAutoUpdate] - Whether to disable automatic position updates\n * @property {boolean} [disableTriggerFocus] - Whether to disable focus on the trigger element\n * @property {number} [delay] - Delay before opening the popover (for hover mode)\n * @property {boolean} [disableCloseOnClickOutside] - Whether to disable closing on outside click\n * @property {boolean} [disableCloseOnEscape] - Whether to disable closing on escape key\n */\nexport type PopoverProps = CorePopoverProps;\n\n/**\n * Props for the PopoverTrigger component\n * @property {Function} children - Render function that receives trigger props and returns a React element\n */\nexport type PopoverTriggerProps = CorePopoverTriggerProps & DataTrackingId;\n\n/**\n * Props for the PopoverContent component\n * @property {ReactNode} [children] - The content to be displayed in the popover\n * @property {RefObject<HTMLDivElement>} [scrollerRef] - Reference to the scrollable content area\n */\nexport type PopoverContentProps = CorePopoverContentProps;\n\n/**\n * Props for the PopoverClose component\n * @property {ReactNode} [children] - The close button content\n * @property {string} [appearance] - The button appearance\n * @property {string} [size] - The button size\n * @property {string} [type] - The button type\n * @property {Function} [onClick] - Click handler for the close button\n */\nexport type PopoverCloseProps = CorePopoverCloseProps & DataTrackingId;\n\n/**\n * Props for the PopoverButton component\n * @property {ReactNode} [children] - The button content\n * @property {string} [appearance] - The button appearance\n * @property {string} [icon] - The button icon\n * @property {string} [size] - The button size\n * @property {string} [type] - The button type\n * @property {Function} [onClick] - Click handler for the button\n */\nexport type PopoverButtonProps = CorePopoverButtonProps & DataTrackingId;\n\nconst PopoverElement = (props: PopoverProps) => {\n return <CorePopover {...props} />;\n};\n\n/**\n * PopoverTrigger component for creating custom trigger elements.\n *\n * Features:\n * - Supports custom trigger elements via render prop pattern\n * - Automatic focus management and keyboard interaction\n * - Hover and click event handling\n * - Accessibility attributes (aria-haspopup, aria-expanded, aria-details)\n * - Legacy popover support with fallback\n * - Context integration with parent popover\n * - Automatic tracking ID generation for analytics\n *\n * @example\n * <Popover>\n * <Popover.Trigger>\n * {(props) => (\n * <button {...props}>\n * Click to open popover\n * </button>\n * )}\n * </Popover.Trigger>\n * <Popover.Content>\n * <p>Content here</p>\n * </Popover.Content>\n * </Popover>\n */\nexport function PopoverTrigger(props: PopoverTriggerProps) {\n return <CorePopoverTrigger {...props} />;\n}\n\n/**\n * PopoverContent component for the main popover content area.\n *\n * Features:\n * - Automatic positioning and sizing based on trigger\n * - Screen boundary detection and fitting\n * - Scroll handling with custom scroller reference\n * - Focus management and keyboard navigation\n * - Hover interaction support for tooltip mode\n * - Escape key handling for closing\n * - Tab key trapping for modal popovers\n * - Arrow/caret indicator with automatic positioning\n * - Legacy popover support with fallback\n * - Context integration with parent popover\n * - Accessibility support with proper ARIA roles\n *\n * @example\n * <Popover>\n * <Popover.Button>Click to open</Popover.Button>\n * <Popover.Content>\n * <p>This is the popover content</p>\n * <Popover.Close>Close</Popover.Close>\n * </Popover.Content>\n * </Popover>\n */\nexport const PopoverContent = forwardRef(\n (props: PopoverContentProps, ref: Ref<HTMLDivElement>) => {\n return <CorePopoverContent ref={ref} {...props} />;\n },\n);\nPopoverContent.displayName = CorePopoverContent.displayName;\n\n/**\n * PopoverClose component for closing the popover.\n *\n * Features:\n * - Automatic popover closing on click\n * - Supports all Button component props and styling\n * - Controlled and uncontrolled mode support\n * - Legacy popover support with fallback\n * - Context integration with parent popover\n * - Accessibility support with proper button semantics\n * - Delayed closing for controlled mode\n * - Automatic tracking ID generation for analytics\n *\n * @example\n * <Popover>\n * <Popover.Button>Click to open</Popover.Button>\n * <Popover.Content>\n * <p>Content here</p>\n * <Popover.Close>Close</Popover.Close>\n * </Popover.Content>\n * </Popover>\n */\nexport const PopoverClose = forwardRef(\n (props: PopoverCloseProps, ref: Ref<HTMLButtonElement>) => {\n const data = {\n children: childrenToString(props.children),\n };\n\n const trackingId = useTrackingId({\n name: \"PopoverClose\",\n data,\n hasOverride: !!props[\"data-tracking-id\"],\n });\n return (\n <CorePopoverClose ref={ref} data-tracking-id={trackingId} {...props} />\n );\n },\n);\nPopoverClose.displayName = CorePopoverClose.displayName;\n\n/**\n * PopoverButton component for creating button-style triggers.\n *\n * Features:\n * - Button styling and behavior with all Button props\n * - Automatic popover opening on click\n * - Hover interaction support for tooltip mode\n * - Focus management and keyboard navigation\n * - Accessibility attributes (aria-haspopup, aria-expanded, aria-details)\n * - Legacy popover support with fallback\n * - Context integration with parent popover\n * - Event handling for mouse, keyboard, and focus events\n * - Automatic tracking ID generation for analytics\n *\n * @example\n * <Popover>\n * <Popover.Button>Click to open</Popover.Button>\n * <Popover.Content>\n * <p>Content here</p>\n * </Popover.Content>\n * </Popover>\n */\nexport const PopoverButton = forwardRef(\n (props: PopoverButtonProps, ref: Ref<HTMLButtonElement>) => {\n const data = {\n children: childrenToString(props.children),\n appearance: props.appearance,\n icon: props.icon,\n size: props.size,\n type: props.type,\n };\n\n const trackingId = useTrackingId({\n name: \"PopoverButton\",\n data,\n hasOverride: !!props[\"data-tracking-id\"],\n });\n return (\n <CorePopoverButton ref={ref} data-tracking-id={trackingId} {...props} />\n );\n },\n);\nPopoverButton.displayName = CorePopoverButton.displayName;\n\n// export const usePopoverContext = useCorePopoverContext;\n\n/**\n * Popover component for displaying floating content relative to a trigger element.\n *\n * Features:\n * - Supports both controlled and uncontrolled modes\n * - Automatic positioning with fallback strategies\n * - Hover and click interaction modes\n * - Modal and non-modal variants\n * - Custom trigger elements\n * - Automatic height and width management\n * - Screen boundary detection and fitting\n * - Keyboard navigation and accessibility\n * - Popover API support with legacy fallback\n * - Outside click detection and handling\n * - Focus management and trapping\n * - Arrow/caret indicators\n * - Delay support for hover interactions\n * - Automatic tracking ID generation for analytics\n *\n * @example\n * <Popover>\n * <Popover.Button>Click to open</Popover.Button>\n * <Popover.Content>\n * <p>This is the popover content</p>\n * <Popover.Close>Close</Popover.Close>\n * </Popover.Content>\n * </Popover>\n *\n * @example\n * <Popover openOnHover delay={1000}>\n * <Popover.Button>Hover to open</Popover.Button>\n * <Popover.Content>Tooltip content</Popover.Content>\n * </Popover>\n *\n * @example\n * <Popover modal>\n * <Popover.Trigger>\n * {(props) => <button {...props}>Custom trigger</button>}\n * </Popover.Trigger>\n * <Popover.Content>\n * <TextField label=\"Form field\" />\n * <Popover.Close>Done</Popover.Close>\n * </Popover.Content>\n * </Popover>\n */\nexport const Popover = Object.assign(PopoverElement, {\n /**\n * PopoverTrigger component for creating custom trigger elements.\n *\n * Features:\n * - Supports custom trigger elements via render prop pattern\n * - Automatic focus management and keyboard interaction\n * - Hover and click event handling\n * - Accessibility attributes (aria-haspopup, aria-expanded, aria-details)\n * - Legacy popover support with fallback\n * - Context integration with parent popover\n * - Automatic tracking ID generation for analytics\n *\n * @example\n * <Popover.Trigger>\n * {(props) => (\n * <button {...props}>\n * Click to open popover\n * </button>\n * )}\n * </Popover.Trigger>\n */\n Trigger: PopoverTrigger,\n /**\n * PopoverContent component for the main popover content area.\n *\n * Features:\n * - Automatic positioning and sizing based on trigger\n * - Screen boundary detection and fitting\n * - Scroll handling with custom scroller reference\n * - Focus management and keyboard navigation\n * - Hover interaction support for tooltip mode\n * - Escape key handling for closing\n * - Tab key trapping for modal popovers\n * - Arrow/caret indicator with automatic positioning\n * - Legacy popover support with fallback\n * - Context integration with parent popover\n * - Accessibility support with proper ARIA roles\n *\n * @example\n * <Popover.Content>\n * <p>This is the popover content</p>\n * <Popover.Close>Close</Popover.Close>\n * </Popover.Content>\n */\n Content: PopoverContent,\n /**\n * PopoverClose component for closing the popover.\n *\n * Features:\n * - Automatic popover closing on click\n * - Supports all Button component props and styling\n * - Controlled and uncontrolled mode support\n * - Legacy popover support with fallback\n * - Context integration with parent popover\n * - Accessibility support with proper button semantics\n * - Delayed closing for controlled mode\n * - Automatic tracking ID generation for analytics\n *\n * @example\n * <Popover.Close>Close</Popover.Close>\n */\n Close: PopoverClose,\n /**\n * PopoverButton component for creating button-style triggers.\n *\n * Features:\n * - Button styling and behavior with all Button props\n * - Automatic popover opening on click\n * - Hover interaction support for tooltip mode\n * - Focus management and keyboard navigation\n * - Accessibility attributes (aria-haspopup, aria-expanded, aria-details)\n * - Legacy popover support with fallback\n * - Context integration with parent popover\n * - Event handling for mouse, keyboard, and focus events\n * - Automatic tracking ID generation for analytics\n *\n * @example\n * <Popover.Button>Click to open</Popover.Button>\n */\n Button: PopoverButton,\n});\n"],"names":["CorePopover","CorePopoverTrigger","CorePopoverContent","CorePopoverClose","CorePopoverButton"],"mappings":";;;;;;AA+EA,MAAM,cAAA,GAAiB,CAAC,KAAwB,KAAA;AAC9C,EAAO,uBAAA,GAAA,CAACA,SAAa,EAAA,EAAA,GAAG,KAAO,EAAA,CAAA;AACjC,CAAA;AA4BO,SAAS,eAAe,KAA4B,EAAA;AACzD,EAAO,uBAAA,GAAA,CAACC,gBAAoB,EAAA,EAAA,GAAG,KAAO,EAAA,CAAA;AACxC;AA2BO,MAAM,cAAiB,GAAA,UAAA;AAAA,EAC5B,CAAC,OAA4B,GAA6B,KAAA;AACxD,IAAA,uBAAQ,GAAA,CAAAC,gBAAA,EAAA,EAAmB,GAAW,EAAA,GAAG,KAAO,EAAA,CAAA;AAAA;AAEpD;AACA,cAAA,CAAe,cAAcA,gBAAmB,CAAA,WAAA;AAwBzC,MAAM,YAAe,GAAA,UAAA;AAAA,EAC1B,CAAC,OAA0B,GAAgC,KAAA;AACzD,IAAA,MAAM,IAAO,GAAA;AAAA,MACX,QAAA,EAAU,gBAAiB,CAAA,KAAA,CAAM,QAAQ;AAAA,KAC3C;AAEA,IAAA,MAAM,aAAa,aAAc,CAAA;AAAA,MAC/B,IAAM,EAAA,cAAA;AAAA,MACN,IAAA;AAAA,MACA,WAAa,EAAA,CAAC,CAAC,KAAA,CAAM,kBAAkB;AAAA,KACxC,CAAA;AACD,IAAA,2BACGC,cAAiB,EAAA,EAAA,GAAA,EAAU,kBAAkB,EAAA,UAAA,EAAa,GAAG,KAAO,EAAA,CAAA;AAAA;AAG3E;AACA,YAAA,CAAa,cAAcA,cAAiB,CAAA,WAAA;AAwBrC,MAAM,aAAgB,GAAA,UAAA;AAAA,EAC3B,CAAC,OAA2B,GAAgC,KAAA;AAC1D,IAAA,MAAM,IAAO,GAAA;AAAA,MACX,QAAA,EAAU,gBAAiB,CAAA,KAAA,CAAM,QAAQ,CAAA;AAAA,MACzC,YAAY,KAAM,CAAA,UAAA;AAAA,MAClB,MAAM,KAAM,CAAA,IAAA;AAAA,MACZ,MAAM,KAAM,CAAA,IAAA;AAAA,MACZ,MAAM,KAAM,CAAA;AAAA,KACd;AAEA,IAAA,MAAM,aAAa,aAAc,CAAA;AAAA,MAC/B,IAAM,EAAA,eAAA;AAAA,MACN,IAAA;AAAA,MACA,WAAa,EAAA,CAAC,CAAC,KAAA,CAAM,kBAAkB;AAAA,KACxC,CAAA;AACD,IAAA,2BACGC,eAAkB,EAAA,EAAA,GAAA,EAAU,kBAAkB,EAAA,UAAA,EAAa,GAAG,KAAO,EAAA,CAAA;AAAA;AAG5E;AACA,aAAA,CAAc,cAAcA,eAAkB,CAAA,WAAA;AAiDjC,MAAA,OAAA,GAAU,MAAO,CAAA,MAAA,CAAO,cAAgB,EAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAsBnD,OAAS,EAAA,cAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAuBT,OAAS,EAAA,cAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAiBT,KAAO,EAAA,YAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAkBP,MAAQ,EAAA;AACV,CAAC;;;;"}
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
2
2
|
import { forwardRef, useRef, useContext, createContext, useMemo, useState, useEffect, useLayoutEffect, useId, useCallback } from 'react';
|
|
3
|
-
import { i as DialogContext, o as DrawerContext, s as supportsPopover, j as useKeyboardFocusables, p as safeShowPopover, q as safeHidePopover } from './ProgressBar-
|
|
4
|
-
import { B as Button } from './Button-
|
|
5
|
-
import { F as FloatingPortal, a as FloatingFocusManager, b as FloatingArrow, c as useFloating, o as offset, s as size, f as flip, d as shift, e as arrow$1, l as limitShift, g as useClick, h as useHover, i as safePolygon, j as useDismiss, k as useRole, m as useInteractions, n as autoUpdate, p as computePosition } from './floating-ui.react-
|
|
3
|
+
import { i as DialogContext, o as DrawerContext, s as supportsPopover, j as useKeyboardFocusables, p as safeShowPopover, q as safeHidePopover } from './ProgressBar-Cfi5zZRy-BpESsdh_.js';
|
|
4
|
+
import { B as Button } from './Button-BaHFf1AT-BQy-PFB5.js';
|
|
5
|
+
import { F as FloatingPortal, a as FloatingFocusManager, b as FloatingArrow, c as useFloating, o as offset, s as size, f as flip, d as shift, e as arrow$1, l as limitShift, g as useClick, h as useHover, i as safePolygon, j as useDismiss, k as useRole, m as useInteractions, n as autoUpdate, p as computePosition } from './floating-ui.react-BFNinq1w.js';
|
|
6
6
|
import { u as useMergeRefs } from './useMergeRefs-Bde85AWI-Bde85AWI.js';
|
|
7
7
|
import { c as cx } from './index-tZvMCc77.js';
|
|
8
8
|
import { a as PortalProviderContext } from './PortalProvider-9lXkQ0xY-BKoGegS1.js';
|
|
9
|
-
import { T as ThemeProvider, a as ThemeProviderContext } from './ThemeProvider-
|
|
9
|
+
import { T as ThemeProvider, a as ThemeProviderContext } from './ThemeProvider-CR67FJg0-DYVRlJRA.js';
|
|
10
10
|
|
|
11
|
-
import './Popover-
|
|
11
|
+
import './Popover-VztF0YHt.css';function usePopoverLegacy({
|
|
12
12
|
defaultOpen,
|
|
13
13
|
placement = "bottom",
|
|
14
14
|
modal,
|
|
@@ -793,8 +793,7 @@ const PopoverElement = (props) => {
|
|
|
793
793
|
modal,
|
|
794
794
|
noPadding,
|
|
795
795
|
onOutsidePress,
|
|
796
|
-
onClose
|
|
797
|
-
root
|
|
796
|
+
onClose
|
|
798
797
|
} = props;
|
|
799
798
|
const uid = useId();
|
|
800
799
|
const [invoker, setInvoker] = useState(void 0);
|
|
@@ -1045,12 +1044,85 @@ const PopoverElement = (props) => {
|
|
|
1045
1044
|
return /* @__PURE__ */ jsx(PopoverContext.Provider, { value, children });
|
|
1046
1045
|
};
|
|
1047
1046
|
const Popover = Object.assign(PopoverElement, {
|
|
1047
|
+
/**
|
|
1048
|
+
* PopoverTrigger component for creating custom trigger elements.
|
|
1049
|
+
*
|
|
1050
|
+
* Features:
|
|
1051
|
+
* - Supports custom trigger elements via render prop pattern
|
|
1052
|
+
* - Automatic focus management and keyboard interaction
|
|
1053
|
+
* - Hover and click event handling
|
|
1054
|
+
* - Accessibility attributes (aria-haspopup, aria-expanded, aria-details)
|
|
1055
|
+
* - Legacy popover support with fallback
|
|
1056
|
+
* - Context integration with parent popover
|
|
1057
|
+
*
|
|
1058
|
+
* @example
|
|
1059
|
+
* <Popover.Trigger>
|
|
1060
|
+
* {(props) => (
|
|
1061
|
+
* <button {...props}>
|
|
1062
|
+
* Click to open popover
|
|
1063
|
+
* </button>
|
|
1064
|
+
* )}
|
|
1065
|
+
* </Popover.Trigger>
|
|
1066
|
+
*/
|
|
1048
1067
|
Trigger: PopoverTrigger,
|
|
1068
|
+
/**
|
|
1069
|
+
* PopoverClose component for closing the popover.
|
|
1070
|
+
*
|
|
1071
|
+
* Features:
|
|
1072
|
+
* - Automatic popover closing on click
|
|
1073
|
+
* - Supports all Button component props and styling
|
|
1074
|
+
* - Controlled and uncontrolled mode support
|
|
1075
|
+
* - Legacy popover support with fallback
|
|
1076
|
+
* - Context integration with parent popover
|
|
1077
|
+
* - Accessibility support with proper button semantics
|
|
1078
|
+
* - Delayed closing for controlled mode
|
|
1079
|
+
*
|
|
1080
|
+
* @example
|
|
1081
|
+
* <Popover.Close>Close</Popover.Close>
|
|
1082
|
+
*/
|
|
1049
1083
|
Close: PopoverClose,
|
|
1084
|
+
/**
|
|
1085
|
+
* PopoverContent component for the main popover content area.
|
|
1086
|
+
*
|
|
1087
|
+
* Features:
|
|
1088
|
+
* - Automatic positioning and sizing based on trigger
|
|
1089
|
+
* - Screen boundary detection and fitting
|
|
1090
|
+
* - Scroll handling with custom scroller reference
|
|
1091
|
+
* - Focus management and keyboard navigation
|
|
1092
|
+
* - Hover interaction support for tooltip mode
|
|
1093
|
+
* - Escape key handling for closing
|
|
1094
|
+
* - Tab key trapping for modal popovers
|
|
1095
|
+
* - Arrow/caret indicator with automatic positioning
|
|
1096
|
+
* - Legacy popover support with fallback
|
|
1097
|
+
* - Context integration with parent popover
|
|
1098
|
+
* - Accessibility support with proper ARIA roles
|
|
1099
|
+
*
|
|
1100
|
+
* @example
|
|
1101
|
+
* <Popover.Content>
|
|
1102
|
+
* <p>This is the popover content</p>
|
|
1103
|
+
* <Popover.Close>Close</Popover.Close>
|
|
1104
|
+
* </Popover.Content>
|
|
1105
|
+
*/
|
|
1050
1106
|
Content: PopoverContent,
|
|
1107
|
+
/**
|
|
1108
|
+
* PopoverButton component for creating button-style triggers.
|
|
1109
|
+
*
|
|
1110
|
+
* Features:
|
|
1111
|
+
* - Button styling and behavior with all Button props
|
|
1112
|
+
* - Automatic popover opening on click
|
|
1113
|
+
* - Hover interaction support for tooltip mode
|
|
1114
|
+
* - Focus management and keyboard navigation
|
|
1115
|
+
* - Accessibility attributes (aria-haspopup, aria-expanded, aria-details)
|
|
1116
|
+
* - Legacy popover support with fallback
|
|
1117
|
+
* - Context integration with parent popover
|
|
1118
|
+
* - Event handling for mouse, keyboard, and focus events
|
|
1119
|
+
*
|
|
1120
|
+
* @example
|
|
1121
|
+
* <Popover.Button>Click to open</Popover.Button>
|
|
1122
|
+
*/
|
|
1051
1123
|
Button: PopoverButton,
|
|
1052
1124
|
Context: PopoverContext
|
|
1053
1125
|
});
|
|
1054
1126
|
|
|
1055
1127
|
export { PopoverTrigger as P, PopoverContent as a, PopoverClose as b, PopoverButton as c, Popover as d, PopoverLegacy as e, usePopoverContext as f, usePopoverLegacyContext as u };
|
|
1056
|
-
//# sourceMappingURL=Popover-
|
|
1128
|
+
//# sourceMappingURL=Popover-VztF0YHt-ci3tYiye.js.map
|