lynote-ui 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +24 -0
- package/dist/CompositeItem-DKYDWwo1.js +30 -0
- package/dist/CompositeItem-DKYDWwo1.js.map +1 -0
- package/dist/CompositeItem-DqbuwxxP.mjs +31 -0
- package/dist/CompositeItem-DqbuwxxP.mjs.map +1 -0
- package/dist/CompositeList-CLP_jD9H.js +151 -0
- package/dist/CompositeList-CLP_jD9H.js.map +1 -0
- package/dist/CompositeList-CM71m-RA.mjs +135 -0
- package/dist/CompositeList-CM71m-RA.mjs.map +1 -0
- package/dist/CompositeRoot-Clz7hqk6.mjs +291 -0
- package/dist/CompositeRoot-Clz7hqk6.mjs.map +1 -0
- package/dist/CompositeRoot-DhWDFM9v.js +307 -0
- package/dist/CompositeRoot-DhWDFM9v.js.map +1 -0
- package/dist/DialogRoot-C_3aVl-g.mjs +69 -0
- package/dist/DialogRoot-C_3aVl-g.mjs.map +1 -0
- package/dist/DialogRoot-D_7sM8HI.js +85 -0
- package/dist/DialogRoot-D_7sM8HI.js.map +1 -0
- package/dist/DialogTrigger-BqeNq2F6.mjs +532 -0
- package/dist/DialogTrigger-BqeNq2F6.mjs.map +1 -0
- package/dist/DialogTrigger-CgBPTG9W.js +548 -0
- package/dist/DialogTrigger-CgBPTG9W.js.map +1 -0
- package/dist/DirectionContext-BaCziR5k.mjs +12 -0
- package/dist/DirectionContext-BaCziR5k.mjs.map +1 -0
- package/dist/DirectionContext-BsZvU9q3.js +28 -0
- package/dist/DirectionContext-BsZvU9q3.js.map +1 -0
- package/dist/DirectionProvider-DaKrURtH.js +36 -0
- package/dist/DirectionProvider-DaKrURtH.js.map +1 -0
- package/dist/DirectionProvider-ttyWmQjZ.mjs +20 -0
- package/dist/DirectionProvider-ttyWmQjZ.mjs.map +1 -0
- package/dist/FieldItemContext-DRVgx-D1.mjs +13 -0
- package/dist/FieldItemContext-DRVgx-D1.mjs.map +1 -0
- package/dist/FieldItemContext-K2sFjft8.js +29 -0
- package/dist/FieldItemContext-K2sFjft8.js.map +1 -0
- package/dist/FloatingPortalLite-CEKehtqV.js +50 -0
- package/dist/FloatingPortalLite-CEKehtqV.js.map +1 -0
- package/dist/FloatingPortalLite-CsPfJ360.mjs +33 -0
- package/dist/FloatingPortalLite-CsPfJ360.mjs.map +1 -0
- package/dist/FormItem-BmgGAecB.mjs +185 -0
- package/dist/FormItem-BmgGAecB.mjs.map +1 -0
- package/dist/FormItem-xksTqxKD.js +200 -0
- package/dist/FormItem-xksTqxKD.js.map +1 -0
- package/dist/InternalBackdrop-B3WuVcuG.js +1021 -0
- package/dist/InternalBackdrop-B3WuVcuG.js.map +1 -0
- package/dist/InternalBackdrop-C7vtdMWQ.mjs +1005 -0
- package/dist/InternalBackdrop-C7vtdMWQ.mjs.map +1 -0
- package/dist/LabelableContext-DLLBESLn.mjs +213 -0
- package/dist/LabelableContext-DLLBESLn.mjs.map +1 -0
- package/dist/LabelableContext-DYy4DAX3.js +230 -0
- package/dist/LabelableContext-DYy4DAX3.js.map +1 -0
- package/dist/MenuSubmenuTrigger-95oBD6Dx.js +1659 -0
- package/dist/MenuSubmenuTrigger-95oBD6Dx.js.map +1 -0
- package/dist/MenuSubmenuTrigger-Bnw6ycbc.mjs +1643 -0
- package/dist/MenuSubmenuTrigger-Bnw6ycbc.mjs.map +1 -0
- package/dist/Separator-BKPk5Lcn.js +43 -0
- package/dist/Separator-BKPk5Lcn.js.map +1 -0
- package/dist/Separator-Dvb0TS9E.mjs +27 -0
- package/dist/Separator-Dvb0TS9E.mjs.map +1 -0
- package/dist/ToolbarRootContext-B_HxjkNI.mjs +11 -0
- package/dist/ToolbarRootContext-B_HxjkNI.mjs.map +1 -0
- package/dist/ToolbarRootContext-C8eU2VAC.js +27 -0
- package/dist/ToolbarRootContext-C8eU2VAC.js.map +1 -0
- package/dist/accordion/index.d.ts +6 -0
- package/dist/accordion/index.js +618 -0
- package/dist/accordion/index.js.map +1 -0
- package/dist/accordion/index.mjs +601 -0
- package/dist/accordion/index.mjs.map +1 -0
- package/dist/alert/index.d.ts +11 -0
- package/dist/alert/index.js +78 -0
- package/dist/alert/index.js.map +1 -0
- package/dist/alert/index.mjs +78 -0
- package/dist/alert/index.mjs.map +1 -0
- package/dist/alert-dialog/index.d.ts +18 -0
- package/dist/alert-dialog/index.js +240 -0
- package/dist/alert-dialog/index.js.map +1 -0
- package/dist/alert-dialog/index.mjs +223 -0
- package/dist/alert-dialog/index.mjs.map +1 -0
- package/dist/aspect-ratio/index.d.ts +4 -0
- package/dist/aspect-ratio/index.js +23 -0
- package/dist/aspect-ratio/index.js.map +1 -0
- package/dist/aspect-ratio/index.mjs +23 -0
- package/dist/aspect-ratio/index.mjs.map +1 -0
- package/dist/avatar/index.d.ts +11 -0
- package/dist/avatar/index.js +287 -0
- package/dist/avatar/index.js.map +1 -0
- package/dist/avatar/index.mjs +270 -0
- package/dist/avatar/index.mjs.map +1 -0
- package/dist/badge/index.d.ts +9 -0
- package/dist/badge/index.js +48 -0
- package/dist/badge/index.js.map +1 -0
- package/dist/badge/index.mjs +48 -0
- package/dist/badge/index.mjs.map +1 -0
- package/dist/breadcrumb/index.d.ts +10 -0
- package/dist/breadcrumb/index.js +123 -0
- package/dist/breadcrumb/index.js.map +1 -0
- package/dist/breadcrumb/index.mjs +123 -0
- package/dist/breadcrumb/index.mjs.map +1 -0
- package/dist/button/index.d.ts +9 -0
- package/dist/button/index.js +99 -0
- package/dist/button/index.js.map +1 -0
- package/dist/button/index.mjs +82 -0
- package/dist/button/index.mjs.map +1 -0
- package/dist/button-group/index.d.ts +12 -0
- package/dist/button-group/index.js +83 -0
- package/dist/button-group/index.js.map +1 -0
- package/dist/button-group/index.mjs +83 -0
- package/dist/button-group/index.mjs.map +1 -0
- package/dist/calendar/index.d.ts +10 -0
- package/dist/calendar/index.js +205 -0
- package/dist/calendar/index.js.map +1 -0
- package/dist/calendar/index.mjs +188 -0
- package/dist/calendar/index.mjs.map +1 -0
- package/dist/card/index.d.ts +11 -0
- package/dist/card/index.js +102 -0
- package/dist/card/index.js.map +1 -0
- package/dist/card/index.mjs +102 -0
- package/dist/card/index.mjs.map +1 -0
- package/dist/carousel/index.d.ts +28 -0
- package/dist/carousel/index.js +217 -0
- package/dist/carousel/index.js.map +1 -0
- package/dist/carousel/index.mjs +200 -0
- package/dist/carousel/index.mjs.map +1 -0
- package/dist/chart/index.d.ts +44 -0
- package/dist/chart/index.js +272 -0
- package/dist/chart/index.js.map +1 -0
- package/dist/chart/index.mjs +254 -0
- package/dist/chart/index.mjs.map +1 -0
- package/dist/checkbox/index.d.ts +3 -0
- package/dist/checkbox/index.js +425 -0
- package/dist/checkbox/index.js.map +1 -0
- package/dist/checkbox/index.mjs +408 -0
- package/dist/checkbox/index.mjs.map +1 -0
- package/dist/clamp-CRAygR8_.mjs +17 -0
- package/dist/clamp-CRAygR8_.mjs.map +1 -0
- package/dist/clamp-Cl34OJjs.js +33 -0
- package/dist/clamp-Cl34OJjs.js.map +1 -0
- package/dist/collapsible/index.d.ts +5 -0
- package/dist/collapsible/index.js +244 -0
- package/dist/collapsible/index.js.map +1 -0
- package/dist/collapsible/index.mjs +227 -0
- package/dist/collapsible/index.mjs.map +1 -0
- package/dist/combobox/index.d.ts +24 -0
- package/dist/combobox/index.js +294 -0
- package/dist/combobox/index.js.map +1 -0
- package/dist/combobox/index.mjs +277 -0
- package/dist/combobox/index.mjs.map +1 -0
- package/dist/command/index.d.ts +19 -0
- package/dist/command/index.js +174 -0
- package/dist/command/index.js.map +1 -0
- package/dist/command/index.mjs +174 -0
- package/dist/command/index.mjs.map +1 -0
- package/dist/composite-54CI9F0V.mjs +346 -0
- package/dist/composite-54CI9F0V.mjs.map +1 -0
- package/dist/composite-B6lEHrCV.mjs +119 -0
- package/dist/composite-B6lEHrCV.mjs.map +1 -0
- package/dist/composite-BT0EMBUB.js +118 -0
- package/dist/composite-BT0EMBUB.js.map +1 -0
- package/dist/composite-DhXBXmhV.js +345 -0
- package/dist/composite-DhXBXmhV.js.map +1 -0
- package/dist/constants-DAVIOz2s.js +18 -0
- package/dist/constants-DAVIOz2s.js.map +1 -0
- package/dist/constants-Dfh7hQez.mjs +19 -0
- package/dist/constants-Dfh7hQez.mjs.map +1 -0
- package/dist/context-menu/index.d.ts +29 -0
- package/dist/context-menu/index.js +458 -0
- package/dist/context-menu/index.js.map +1 -0
- package/dist/context-menu/index.mjs +441 -0
- package/dist/context-menu/index.mjs.map +1 -0
- package/dist/createBaseUIEventDetails-CRQSf9K3.mjs +79 -0
- package/dist/createBaseUIEventDetails-CRQSf9K3.mjs.map +1 -0
- package/dist/createBaseUIEventDetails-D39y2D9R.js +78 -0
- package/dist/createBaseUIEventDetails-D39y2D9R.js.map +1 -0
- package/dist/date-picker/index.d.ts +3 -0
- package/dist/date-picker/index.js +47 -0
- package/dist/date-picker/index.js.map +1 -0
- package/dist/date-picker/index.mjs +30 -0
- package/dist/date-picker/index.mjs.map +1 -0
- package/dist/detectBrowser-CT93wuqL.mjs +64 -0
- package/dist/detectBrowser-CT93wuqL.mjs.map +1 -0
- package/dist/detectBrowser-j_AUpd7-.js +63 -0
- package/dist/detectBrowser-j_AUpd7-.js.map +1 -0
- package/dist/dialog/index.d.ts +17 -0
- package/dist/dialog/index.js +153 -0
- package/dist/dialog/index.js.map +1 -0
- package/dist/dialog/index.mjs +153 -0
- package/dist/dialog/index.mjs.map +1 -0
- package/dist/direction/index.d.ts +1 -0
- package/dist/direction/index.js +7 -0
- package/dist/direction/index.js.map +1 -0
- package/dist/direction/index.mjs +7 -0
- package/dist/direction/index.mjs.map +1 -0
- package/dist/drawer/index.d.ts +13 -0
- package/dist/drawer/index.js +128 -0
- package/dist/drawer/index.js.map +1 -0
- package/dist/drawer/index.mjs +128 -0
- package/dist/drawer/index.mjs.map +1 -0
- package/dist/dropdown-menu/index.d.ts +29 -0
- package/dist/dropdown-menu/index.js +573 -0
- package/dist/dropdown-menu/index.js.map +1 -0
- package/dist/dropdown-menu/index.mjs +555 -0
- package/dist/dropdown-menu/index.mjs.map +1 -0
- package/dist/element-BtC-M4rb.mjs +103 -0
- package/dist/element-BtC-M4rb.mjs.map +1 -0
- package/dist/element-DAAyJrnp.js +102 -0
- package/dist/element-DAAyJrnp.js.map +1 -0
- package/dist/empty/index.d.ts +12 -0
- package/dist/empty/index.js +103 -0
- package/dist/empty/index.js.map +1 -0
- package/dist/empty/index.mjs +103 -0
- package/dist/empty/index.mjs.map +1 -0
- package/dist/event-BHxKjfyi.js +43 -0
- package/dist/event-BHxKjfyi.js.map +1 -0
- package/dist/event-CcyVszlp.mjs +44 -0
- package/dist/event-CcyVszlp.mjs.map +1 -0
- package/dist/field/index.d.ts +25 -0
- package/dist/field/index.js +219 -0
- package/dist/field/index.js.map +1 -0
- package/dist/field/index.mjs +219 -0
- package/dist/field/index.mjs.map +1 -0
- package/dist/floating-ui.utils-CMX6M1P8.js +149 -0
- package/dist/floating-ui.utils-CMX6M1P8.js.map +1 -0
- package/dist/floating-ui.utils-DoPG3M8C.mjs +150 -0
- package/dist/floating-ui.utils-DoPG3M8C.mjs.map +1 -0
- package/dist/floating-ui.utils.dom-BAD07kLX.mjs +176 -0
- package/dist/floating-ui.utils.dom-BAD07kLX.mjs.map +1 -0
- package/dist/floating-ui.utils.dom-djqmdyxg.js +175 -0
- package/dist/floating-ui.utils.dom-djqmdyxg.js.map +1 -0
- package/dist/form/components/Form.d.ts +4 -0
- package/dist/form/components/FormControl.d.ts +3 -0
- package/dist/form/components/FormDescription.d.ts +3 -0
- package/dist/form/components/FormField.d.ts +3 -0
- package/dist/form/components/FormItem.d.ts +7 -0
- package/dist/form/components/FormLabel.d.ts +3 -0
- package/dist/form/components/FormMessage.d.ts +4 -0
- package/dist/form/components/variants.d.ts +6 -0
- package/dist/form/context/index.d.ts +4 -0
- package/dist/form/hooks/useFormField.d.ts +14 -0
- package/dist/form/index.d.ts +11 -0
- package/dist/form/index.js +19 -0
- package/dist/form/index.js.map +1 -0
- package/dist/form/index.mjs +13 -0
- package/dist/form/index.mjs.map +1 -0
- package/dist/form/type.d.ts +48 -0
- package/dist/getEmptyRootContext-CBrvBF2x.mjs +17 -0
- package/dist/getEmptyRootContext-CBrvBF2x.mjs.map +1 -0
- package/dist/getEmptyRootContext-DrOPobKp.js +16 -0
- package/dist/getEmptyRootContext-DrOPobKp.js.map +1 -0
- package/dist/getPseudoElementBounds-CN2-zcsN.js +29 -0
- package/dist/getPseudoElementBounds-CN2-zcsN.js.map +1 -0
- package/dist/getPseudoElementBounds-i4YX-qQ2.mjs +30 -0
- package/dist/getPseudoElementBounds-i4YX-qQ2.mjs.map +1 -0
- package/dist/hooks/use-mobile.d.ts +1 -0
- package/dist/hover-card/index.d.ts +5 -0
- package/dist/hover-card/index.js +501 -0
- package/dist/hover-card/index.js.map +1 -0
- package/dist/hover-card/index.mjs +483 -0
- package/dist/hover-card/index.mjs.map +1 -0
- package/dist/index-B3i3Mf61.mjs +147 -0
- package/dist/index-B3i3Mf61.mjs.map +1 -0
- package/dist/index-zBgD3uv6.js +163 -0
- package/dist/index-zBgD3uv6.js.map +1 -0
- package/dist/index.d.ts +57 -0
- package/dist/index.js +393 -0
- package/dist/index.js.map +1 -0
- package/dist/index.mjs +384 -0
- package/dist/index.mjs.map +1 -0
- package/dist/inertValue-gSeyz2Lm.js +10 -0
- package/dist/inertValue-gSeyz2Lm.js.map +1 -0
- package/dist/inertValue-t5QI1CFn.mjs +11 -0
- package/dist/inertValue-t5QI1CFn.mjs.map +1 -0
- package/dist/input/index.d.ts +3 -0
- package/dist/input/index.js +167 -0
- package/dist/input/index.js.map +1 -0
- package/dist/input/index.mjs +150 -0
- package/dist/input/index.mjs.map +1 -0
- package/dist/input-group/index.d.ts +19 -0
- package/dist/input-group/index.js +146 -0
- package/dist/input-group/index.js.map +1 -0
- package/dist/input-group/index.mjs +146 -0
- package/dist/input-group/index.mjs.map +1 -0
- package/dist/input-otp/index.d.ts +11 -0
- package/dist/input-otp/index.js +84 -0
- package/dist/input-otp/index.js.map +1 -0
- package/dist/input-otp/index.mjs +67 -0
- package/dist/input-otp/index.mjs.map +1 -0
- package/dist/isElementDisabled-2KG8-O4B.mjs +7 -0
- package/dist/isElementDisabled-2KG8-O4B.mjs.map +1 -0
- package/dist/isElementDisabled-p2fc38Eq.js +6 -0
- package/dist/isElementDisabled-p2fc38Eq.js.map +1 -0
- package/dist/item/index.d.ts +23 -0
- package/dist/item/index.js +196 -0
- package/dist/item/index.js.map +1 -0
- package/dist/item/index.mjs +196 -0
- package/dist/item/index.mjs.map +1 -0
- package/dist/jsx-runtime-CPzt8Nmm.js +321 -0
- package/dist/jsx-runtime-CPzt8Nmm.js.map +1 -0
- package/dist/jsx-runtime-Dog7MAYX.mjs +322 -0
- package/dist/jsx-runtime-Dog7MAYX.mjs.map +1 -0
- package/dist/kbd/index.d.ts +3 -0
- package/dist/kbd/index.js +30 -0
- package/dist/kbd/index.js.map +1 -0
- package/dist/kbd/index.mjs +30 -0
- package/dist/kbd/index.mjs.map +1 -0
- package/dist/label/index.d.ts +3 -0
- package/dist/label/index.js +19 -0
- package/dist/label/index.js.map +1 -0
- package/dist/label/index.mjs +19 -0
- package/dist/label/index.mjs.map +1 -0
- package/dist/lib/cva.d.ts +1 -0
- package/dist/lib/index.d.ts +2 -0
- package/dist/lib/utils.d.ts +2 -0
- package/dist/menubar/index.d.ts +29 -0
- package/dist/menubar/index.js +365 -0
- package/dist/menubar/index.js.map +1 -0
- package/dist/menubar/index.mjs +348 -0
- package/dist/menubar/index.mjs.map +1 -0
- package/dist/native-select/index.d.ts +8 -0
- package/dist/native-select/index.js +54 -0
- package/dist/native-select/index.js.map +1 -0
- package/dist/native-select/index.mjs +54 -0
- package/dist/native-select/index.mjs.map +1 -0
- package/dist/navigation-menu/index.d.ts +12 -0
- package/dist/navigation-menu/index.js +1702 -0
- package/dist/navigation-menu/index.js.map +1 -0
- package/dist/navigation-menu/index.mjs +1684 -0
- package/dist/navigation-menu/index.mjs.map +1 -0
- package/dist/owner-Cf_X0F_A.mjs +7 -0
- package/dist/owner-Cf_X0F_A.mjs.map +1 -0
- package/dist/owner-DohlhdQa.js +6 -0
- package/dist/owner-DohlhdQa.js.map +1 -0
- package/dist/pagination/index.d.ts +17 -0
- package/dist/pagination/index.js +129 -0
- package/dist/pagination/index.js.map +1 -0
- package/dist/pagination/index.mjs +129 -0
- package/dist/pagination/index.mjs.map +1 -0
- package/dist/popover/index.d.ts +12 -0
- package/dist/popover/index.js +83 -0
- package/dist/popover/index.js.map +1 -0
- package/dist/popover/index.mjs +83 -0
- package/dist/popover/index.mjs.map +1 -0
- package/dist/popupStateMapping-DKN5mXrh.js +2694 -0
- package/dist/popupStateMapping-DKN5mXrh.js.map +1 -0
- package/dist/popupStateMapping-Dvf6vjid.mjs +2678 -0
- package/dist/popupStateMapping-Dvf6vjid.mjs.map +1 -0
- package/dist/progress/index.d.ts +7 -0
- package/dist/progress/index.js +315 -0
- package/dist/progress/index.js.map +1 -0
- package/dist/progress/index.mjs +298 -0
- package/dist/progress/index.mjs.map +1 -0
- package/dist/radio-group/index.d.ts +5 -0
- package/dist/radio-group/index.js +549 -0
- package/dist/radio-group/index.js.map +1 -0
- package/dist/radio-group/index.mjs +532 -0
- package/dist/radio-group/index.mjs.map +1 -0
- package/dist/resizable/index.d.ts +7 -0
- package/dist/resizable/index.js +63 -0
- package/dist/resizable/index.js.map +1 -0
- package/dist/resizable/index.mjs +46 -0
- package/dist/resizable/index.mjs.map +1 -0
- package/dist/resolveAriaLabelledBy-BOrKNO_y.js +10 -0
- package/dist/resolveAriaLabelledBy-BOrKNO_y.js.map +1 -0
- package/dist/resolveAriaLabelledBy-JxsTST5s.mjs +11 -0
- package/dist/resolveAriaLabelledBy-JxsTST5s.mjs.map +1 -0
- package/dist/safePolygon-ClN7sX4N.mjs +710 -0
- package/dist/safePolygon-ClN7sX4N.mjs.map +1 -0
- package/dist/safePolygon-DzT-LXP_.js +727 -0
- package/dist/safePolygon-DzT-LXP_.js.map +1 -0
- package/dist/safeReact-V1Amqcv9.mjs +8 -0
- package/dist/safeReact-V1Amqcv9.mjs.map +1 -0
- package/dist/safeReact-j2phwwP4.js +24 -0
- package/dist/safeReact-j2phwwP4.js.map +1 -0
- package/dist/scroll-area/index.d.ts +4 -0
- package/dist/scroll-area/index.js +1017 -0
- package/dist/scroll-area/index.js.map +1 -0
- package/dist/scroll-area/index.mjs +1000 -0
- package/dist/scroll-area/index.mjs.map +1 -0
- package/dist/select/index.d.ts +15 -0
- package/dist/select/index.js +2311 -0
- package/dist/select/index.js.map +1 -0
- package/dist/select/index.mjs +2293 -0
- package/dist/select/index.mjs.map +1 -0
- package/dist/separator/index.d.ts +3 -0
- package/dist/separator/index.js +25 -0
- package/dist/separator/index.js.map +1 -0
- package/dist/separator/index.mjs +25 -0
- package/dist/separator/index.mjs.map +1 -0
- package/dist/serializeValue-BLvnTy3o.mjs +17 -0
- package/dist/serializeValue-BLvnTy3o.mjs.map +1 -0
- package/dist/serializeValue-rMlAxdiX.js +16 -0
- package/dist/serializeValue-rMlAxdiX.js.map +1 -0
- package/dist/sheet/index.d.ts +14 -0
- package/dist/sheet/index.js +135 -0
- package/dist/sheet/index.js.map +1 -0
- package/dist/sheet/index.mjs +135 -0
- package/dist/sheet/index.mjs.map +1 -0
- package/dist/sidebar/index.d.ts +64 -0
- package/dist/sidebar/index.js +671 -0
- package/dist/sidebar/index.js.map +1 -0
- package/dist/sidebar/index.mjs +654 -0
- package/dist/sidebar/index.mjs.map +1 -0
- package/dist/skeleton/index.d.ts +2 -0
- package/dist/skeleton/index.js +16 -0
- package/dist/skeleton/index.js.map +1 -0
- package/dist/skeleton/index.mjs +16 -0
- package/dist/skeleton/index.mjs.map +1 -0
- package/dist/slider/index.d.ts +3 -0
- package/dist/slider/index.js +1361 -0
- package/dist/slider/index.js.map +1 -0
- package/dist/slider/index.mjs +1344 -0
- package/dist/slider/index.mjs.map +1 -0
- package/dist/sonner/index.d.ts +3 -0
- package/dist/sonner/index.js +10 -0
- package/dist/sonner/index.js.map +1 -0
- package/dist/sonner/index.mjs +7 -0
- package/dist/sonner/index.mjs.map +1 -0
- package/dist/sonner/sonner.d.ts +3 -0
- package/dist/sonner-Ctpa1LLR.js +36 -0
- package/dist/sonner-Ctpa1LLR.js.map +1 -0
- package/dist/sonner-D0rALbMy.mjs +37 -0
- package/dist/sonner-D0rALbMy.mjs.map +1 -0
- package/dist/spinner/index.d.ts +2 -0
- package/dist/spinner/index.js +10 -0
- package/dist/spinner/index.js.map +1 -0
- package/dist/spinner/index.mjs +10 -0
- package/dist/spinner/index.mjs.map +1 -0
- package/dist/style.css +6284 -0
- package/dist/styles-BY9BExrL.js +17 -0
- package/dist/styles-BY9BExrL.js.map +1 -0
- package/dist/styles-DGdX19B5.mjs +18 -0
- package/dist/styles-DGdX19B5.mjs.map +1 -0
- package/dist/switch/index.d.ts +5 -0
- package/dist/switch/index.js +306 -0
- package/dist/switch/index.js.map +1 -0
- package/dist/switch/index.mjs +289 -0
- package/dist/switch/index.mjs.map +1 -0
- package/dist/table/index.d.ts +10 -0
- package/dist/table/index.js +115 -0
- package/dist/table/index.js.map +1 -0
- package/dist/table/index.mjs +115 -0
- package/dist/table/index.mjs.map +1 -0
- package/dist/tabs/index.d.ts +11 -0
- package/dist/tabs/index.js +718 -0
- package/dist/tabs/index.js.map +1 -0
- package/dist/tabs/index.mjs +701 -0
- package/dist/tabs/index.mjs.map +1 -0
- package/dist/textarea/index.d.ts +3 -0
- package/dist/textarea/index.js +19 -0
- package/dist/textarea/index.js.map +1 -0
- package/dist/textarea/index.mjs +19 -0
- package/dist/textarea/index.mjs.map +1 -0
- package/dist/toggle/index.d.ts +9 -0
- package/dist/toggle/index.js +9 -0
- package/dist/toggle/index.js.map +1 -0
- package/dist/toggle/index.mjs +9 -0
- package/dist/toggle/index.mjs.map +1 -0
- package/dist/toggle-group/index.d.ts +10 -0
- package/dist/toggle-group/index.js +199 -0
- package/dist/toggle-group/index.js.map +1 -0
- package/dist/toggle-group/index.mjs +182 -0
- package/dist/toggle-group/index.mjs.map +1 -0
- package/dist/tooltip/index.d.ts +6 -0
- package/dist/tooltip/index.js +940 -0
- package/dist/tooltip/index.js.map +1 -0
- package/dist/tooltip/index.mjs +922 -0
- package/dist/tooltip/index.mjs.map +1 -0
- package/dist/useAnchorPositioning-DEkPt210.mjs +2213 -0
- package/dist/useAnchorPositioning-DEkPt210.mjs.map +1 -0
- package/dist/useAnchorPositioning-jXRh4g8d.js +2229 -0
- package/dist/useAnchorPositioning-jXRh4g8d.js.map +1 -0
- package/dist/useAnimationFrame-Bgt4Euiv.js +100 -0
- package/dist/useAnimationFrame-Bgt4Euiv.js.map +1 -0
- package/dist/useAnimationFrame-CJsjFUv3.mjs +101 -0
- package/dist/useAnimationFrame-CJsjFUv3.mjs.map +1 -0
- package/dist/useAriaLabelledBy-AZCBHH3a.js +63 -0
- package/dist/useAriaLabelledBy-AZCBHH3a.js.map +1 -0
- package/dist/useAriaLabelledBy-Chelmb26.mjs +47 -0
- package/dist/useAriaLabelledBy-Chelmb26.mjs.map +1 -0
- package/dist/useBaseUiId-Dd6rCWZj.mjs +30 -0
- package/dist/useBaseUiId-Dd6rCWZj.mjs.map +1 -0
- package/dist/useBaseUiId-ZDgjliOe.js +46 -0
- package/dist/useBaseUiId-ZDgjliOe.js.map +1 -0
- package/dist/useButton-CcvYPR5H.js +246 -0
- package/dist/useButton-CcvYPR5H.js.map +1 -0
- package/dist/useButton-DbBdV6Ig.mjs +230 -0
- package/dist/useButton-DbBdV6Ig.mjs.map +1 -0
- package/dist/useClick-1DLd7znk.mjs +97 -0
- package/dist/useClick-1DLd7znk.mjs.map +1 -0
- package/dist/useClick-wsFFnZw6.js +113 -0
- package/dist/useClick-wsFFnZw6.js.map +1 -0
- package/dist/useCollapsiblePanel-DIdAXCDX.mjs +439 -0
- package/dist/useCollapsiblePanel-DIdAXCDX.mjs.map +1 -0
- package/dist/useCollapsiblePanel-OP0gCAiW.js +455 -0
- package/dist/useCollapsiblePanel-OP0gCAiW.js.map +1 -0
- package/dist/useCompositeItem-CP0qNLGv.mjs +43 -0
- package/dist/useCompositeItem-CP0qNLGv.mjs.map +1 -0
- package/dist/useCompositeItem-F8jky_8M.js +59 -0
- package/dist/useCompositeItem-F8jky_8M.js.map +1 -0
- package/dist/useCompositeListItem-CPSGNf6p.js +116 -0
- package/dist/useCompositeListItem-CPSGNf6p.js.map +1 -0
- package/dist/useCompositeListItem-CvqgwmCe.mjs +100 -0
- package/dist/useCompositeListItem-CvqgwmCe.mjs.map +1 -0
- package/dist/useControlled-DITi2kHX.mjs +38 -0
- package/dist/useControlled-DITi2kHX.mjs.map +1 -0
- package/dist/useControlled-DTjTIpeU.js +54 -0
- package/dist/useControlled-DTjTIpeU.js.map +1 -0
- package/dist/useFocus-BonLJ9UY.js +162 -0
- package/dist/useFocus-BonLJ9UY.js.map +1 -0
- package/dist/useFocus-D2m1G1R7.mjs +146 -0
- package/dist/useFocus-D2m1G1R7.mjs.map +1 -0
- package/dist/useIsoLayoutEffect-CAx-dEZM.mjs +8 -0
- package/dist/useIsoLayoutEffect-CAx-dEZM.mjs.map +1 -0
- package/dist/useIsoLayoutEffect-CYDr9Bko.js +24 -0
- package/dist/useIsoLayoutEffect-CYDr9Bko.js.map +1 -0
- package/dist/useLabelableId-BMQMbGuJ.mjs +67 -0
- package/dist/useLabelableId-BMQMbGuJ.mjs.map +1 -0
- package/dist/useLabelableId-C-dL4hfJ.js +83 -0
- package/dist/useLabelableId-C-dL4hfJ.js.map +1 -0
- package/dist/useOnFirstRender-BYSeF6Y1.js +28 -0
- package/dist/useOnFirstRender-BYSeF6Y1.js.map +1 -0
- package/dist/useOnFirstRender-_PvKQsmi.mjs +12 -0
- package/dist/useOnFirstRender-_PvKQsmi.mjs.map +1 -0
- package/dist/useOnMount-CzmIG4WC.js +25 -0
- package/dist/useOnMount-CzmIG4WC.js.map +1 -0
- package/dist/useOnMount-DN6FnE-7.mjs +9 -0
- package/dist/useOnMount-DN6FnE-7.mjs.map +1 -0
- package/dist/useOpenChangeComplete-B0xZNwMu.js +194 -0
- package/dist/useOpenChangeComplete-B0xZNwMu.js.map +1 -0
- package/dist/useOpenChangeComplete-DbPLu-k9.mjs +177 -0
- package/dist/useOpenChangeComplete-DbPLu-k9.mjs.map +1 -0
- package/dist/useRender-DKDvf6kd.mjs +8 -0
- package/dist/useRender-DKDvf6kd.mjs.map +1 -0
- package/dist/useRender-PucZeh4Y.js +7 -0
- package/dist/useRender-PucZeh4Y.js.map +1 -0
- package/dist/useRenderElement-CtyURhhF.js +427 -0
- package/dist/useRenderElement-CtyURhhF.js.map +1 -0
- package/dist/useRenderElement-DtkRtCHE.mjs +412 -0
- package/dist/useRenderElement-DtkRtCHE.mjs.map +1 -0
- package/dist/useRole-CuVJ_Qa_.js +125 -0
- package/dist/useRole-CuVJ_Qa_.js.map +1 -0
- package/dist/useRole-DzRWctvj.mjs +109 -0
- package/dist/useRole-DzRWctvj.mjs.map +1 -0
- package/dist/useStableCallback-8_xI9oDo.mjs +40 -0
- package/dist/useStableCallback-8_xI9oDo.mjs.map +1 -0
- package/dist/useStableCallback-CfE_knIO.js +56 -0
- package/dist/useStableCallback-CfE_knIO.js.map +1 -0
- package/dist/useSyncedFloatingRootContext-BhwJbN5C.js +237 -0
- package/dist/useSyncedFloatingRootContext-BhwJbN5C.js.map +1 -0
- package/dist/useSyncedFloatingRootContext-BiC-l-Yp.mjs +221 -0
- package/dist/useSyncedFloatingRootContext-BiC-l-Yp.mjs.map +1 -0
- package/dist/useTimeout-CSlJ10_7.js +45 -0
- package/dist/useTimeout-CSlJ10_7.js.map +1 -0
- package/dist/useTimeout-DP0d-UkF.mjs +46 -0
- package/dist/useTimeout-DP0d-UkF.mjs.map +1 -0
- package/dist/useTypeahead-De1veul8.mjs +697 -0
- package/dist/useTypeahead-De1veul8.mjs.map +1 -0
- package/dist/useTypeahead-JL7mFfnS.js +713 -0
- package/dist/useTypeahead-JL7mFfnS.js.map +1 -0
- package/dist/useValueAsRef-BPI-p5A3.mjs +22 -0
- package/dist/useValueAsRef-BPI-p5A3.mjs.map +1 -0
- package/dist/useValueAsRef-uSzmRbW_.js +21 -0
- package/dist/useValueAsRef-uSzmRbW_.js.map +1 -0
- package/dist/useValueChanged-CEUlHhs5.mjs +20 -0
- package/dist/useValueChanged-CEUlHhs5.mjs.map +1 -0
- package/dist/useValueChanged-CvJls2Pv.js +36 -0
- package/dist/useValueChanged-CvJls2Pv.js.map +1 -0
- package/dist/utils-H80jjgLf.mjs +9 -0
- package/dist/utils-H80jjgLf.mjs.map +1 -0
- package/dist/utils-ij3i9zTT.js +8 -0
- package/dist/utils-ij3i9zTT.js.map +1 -0
- package/dist/valueToPercent-CfYnVMaY.js +39 -0
- package/dist/valueToPercent-CfYnVMaY.js.map +1 -0
- package/dist/valueToPercent-DxMnLf8t.mjs +40 -0
- package/dist/valueToPercent-DxMnLf8t.mjs.map +1 -0
- package/dist/visuallyHidden-D_sL9-70.mjs +25 -0
- package/dist/visuallyHidden-D_sL9-70.mjs.map +1 -0
- package/dist/visuallyHidden-Dkg-c0_K.js +24 -0
- package/dist/visuallyHidden-Dkg-c0_K.js.map +1 -0
- package/package.json +382 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"popupStateMapping-DKN5mXrh.js","sources":["../../../node_modules/.pnpm/@base-ui+react@1.3.0_@types+react@19.2.14_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/@base-ui/react/esm/utils/constants.js","../../../node_modules/.pnpm/@base-ui+react@1.3.0_@types+react@19.2.14_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/@base-ui/react/esm/floating-ui-react/utils/nodes.js","../../../node_modules/.pnpm/tabbable@6.4.0/node_modules/tabbable/dist/index.esm.js","../../../node_modules/.pnpm/@base-ui+react@1.3.0_@types+react@19.2.14_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/@base-ui/react/esm/floating-ui-react/utils/tabbable.js","../../../node_modules/.pnpm/@base-ui+react@1.3.0_@types+react@19.2.14_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/@base-ui/react/esm/utils/FocusGuard.js","../../../node_modules/.pnpm/@base-ui+react@1.3.0_@types+react@19.2.14_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/@base-ui/react/esm/floating-ui-react/utils/createAttribute.js","../../../node_modules/.pnpm/@base-ui+react@1.3.0_@types+react@19.2.14_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/@base-ui/react/esm/floating-ui-react/components/FloatingPortal.js","../../../node_modules/.pnpm/@base-ui+react@1.3.0_@types+react@19.2.14_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/@base-ui/react/esm/floating-ui-react/utils/createEventEmitter.js","../../../node_modules/.pnpm/@base-ui+react@1.3.0_@types+react@19.2.14_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/@base-ui/react/esm/floating-ui-react/components/FloatingTreeStore.js","../../../node_modules/.pnpm/@base-ui+react@1.3.0_@types+react@19.2.14_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/@base-ui/react/esm/floating-ui-react/components/FloatingTree.js","../../../node_modules/.pnpm/@base-ui+react@1.3.0_@types+react@19.2.14_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/@base-ui/react/esm/floating-ui-react/hooks/useDismiss.js","../../../node_modules/.pnpm/reselect@5.1.1/node_modules/reselect/dist/reselect.mjs","../../../node_modules/.pnpm/@base-ui+utils@0.2.6_@types+react@19.2.14_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/@base-ui/utils/esm/store/createSelector.js","../../../node_modules/.pnpm/use-sync-external-store@1.6.0_react@19.2.4/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.production.js","../../../node_modules/.pnpm/use-sync-external-store@1.6.0_react@19.2.4/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.development.js","../../../node_modules/.pnpm/use-sync-external-store@1.6.0_react@19.2.4/node_modules/use-sync-external-store/shim/index.js","../../../node_modules/.pnpm/use-sync-external-store@1.6.0_react@19.2.4/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.production.js","../../../node_modules/.pnpm/use-sync-external-store@1.6.0_react@19.2.4/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.development.js","../../../node_modules/.pnpm/use-sync-external-store@1.6.0_react@19.2.4/node_modules/use-sync-external-store/shim/with-selector.js","../../../node_modules/.pnpm/@base-ui+utils@0.2.6_@types+react@19.2.14_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/@base-ui/utils/esm/fastHooks.js","../../../node_modules/.pnpm/@base-ui+utils@0.2.6_@types+react@19.2.14_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/@base-ui/utils/esm/store/useStore.js","../../../node_modules/.pnpm/@base-ui+utils@0.2.6_@types+react@19.2.14_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/@base-ui/utils/esm/store/Store.js","../../../node_modules/.pnpm/@base-ui+utils@0.2.6_@types+react@19.2.14_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/@base-ui/utils/esm/store/ReactStore.js","../../../node_modules/.pnpm/@base-ui+react@1.3.0_@types+react@19.2.14_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/@base-ui/react/esm/floating-ui-react/components/FloatingRootStore.js","../../../node_modules/.pnpm/@base-ui+react@1.3.0_@types+react@19.2.14_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/@base-ui/react/esm/utils/popups/popupTriggerMap.js","../../../node_modules/.pnpm/@base-ui+react@1.3.0_@types+react@19.2.14_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/@base-ui/react/esm/floating-ui-react/hooks/useInteractions.js","../../../node_modules/.pnpm/@base-ui+react@1.3.0_@types+react@19.2.14_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/@base-ui/react/esm/utils/popupStateMapping.js"],"sourcesContent":["export const TYPEAHEAD_RESET_MS = 500;\nexport const PATIENT_CLICK_THRESHOLD = 500;\nexport const DISABLED_TRANSITIONS_STYLE = {\n style: {\n transition: 'none'\n }\n};\nexport { EMPTY_OBJECT, EMPTY_ARRAY } from '@base-ui/utils/empty';\nexport const CLICK_TRIGGER_IDENTIFIER = 'data-base-ui-click-trigger';\nexport const BASE_UI_SWIPE_IGNORE_ATTRIBUTE = 'data-base-ui-swipe-ignore';\nexport const LEGACY_SWIPE_IGNORE_ATTRIBUTE = 'data-swipe-ignore';\nexport const BASE_UI_SWIPE_IGNORE_SELECTOR = `[${BASE_UI_SWIPE_IGNORE_ATTRIBUTE}]`;\nexport const LEGACY_SWIPE_IGNORE_SELECTOR = `[${LEGACY_SWIPE_IGNORE_ATTRIBUTE}]`;\n\n/**\n * Used for dropdowns that usually strictly prefer top/bottom placements and\n * use `var(--available-height)` to limit their height.\n */\nexport const DROPDOWN_COLLISION_AVOIDANCE = {\n fallbackAxisSide: 'none'\n};\n\n/**\n * Used by regular popups that usually aren't scrollable and are allowed to\n * freely flip to any axis of placement.\n */\nexport const POPUP_COLLISION_AVOIDANCE = {\n fallbackAxisSide: 'end'\n};\n\n/**\n * Special visually hidden styles for the aria-owns owner element to ensure owned element\n * accessibility in iOS/Safari/VoiceControl.\n * The owner element is an empty span, so most of the common visually hidden styles are not needed.\n * @see https://github.com/floating-ui/floating-ui/issues/3403\n */\nexport const ownerVisuallyHidden = {\n clipPath: 'inset(50%)',\n position: 'fixed',\n top: 0,\n left: 0\n};","/* eslint-disable @typescript-eslint/no-loop-func */\n\nexport function getNodeChildren(nodes, id, onlyOpenChildren = true) {\n const directChildren = nodes.filter(node => node.parentId === id && (!onlyOpenChildren || node.context?.open));\n return directChildren.flatMap(child => [child, ...getNodeChildren(nodes, child.id, onlyOpenChildren)]);\n}\nexport function getDeepestNode(nodes, id) {\n let deepestNodeId;\n let maxDepth = -1;\n function findDeepest(nodeId, depth) {\n if (depth > maxDepth) {\n deepestNodeId = nodeId;\n maxDepth = depth;\n }\n const children = getNodeChildren(nodes, nodeId);\n children.forEach(child => {\n findDeepest(child.id, depth + 1);\n });\n }\n findDeepest(id, 0);\n return nodes.find(node => node.id === deepestNodeId);\n}\nexport function getNodeAncestors(nodes, id) {\n let allAncestors = [];\n let currentParentId = nodes.find(node => node.id === id)?.parentId;\n while (currentParentId) {\n const currentNode = nodes.find(node => node.id === currentParentId);\n currentParentId = currentNode?.parentId;\n if (currentNode) {\n allAncestors = allAncestors.concat(currentNode);\n }\n }\n return allAncestors;\n}","/*!\n* tabbable 6.4.0\n* @license MIT, https://github.com/focus-trap/tabbable/blob/master/LICENSE\n*/\n// NOTE: separate `:not()` selectors has broader browser support than the newer\n// `:not([inert], [inert] *)` (Feb 2023)\nvar candidateSelectors = ['input:not([inert]):not([inert] *)', 'select:not([inert]):not([inert] *)', 'textarea:not([inert]):not([inert] *)', 'a[href]:not([inert]):not([inert] *)', 'button:not([inert]):not([inert] *)', '[tabindex]:not(slot):not([inert]):not([inert] *)', 'audio[controls]:not([inert]):not([inert] *)', 'video[controls]:not([inert]):not([inert] *)', '[contenteditable]:not([contenteditable=\"false\"]):not([inert]):not([inert] *)', 'details>summary:first-of-type:not([inert]):not([inert] *)', 'details:not([inert]):not([inert] *)'];\nvar candidateSelector = /* #__PURE__ */candidateSelectors.join(',');\nvar NoElement = typeof Element === 'undefined';\nvar matches = NoElement ? function () {} : Element.prototype.matches || Element.prototype.msMatchesSelector || Element.prototype.webkitMatchesSelector;\nvar getRootNode = !NoElement && Element.prototype.getRootNode ? function (element) {\n var _element$getRootNode;\n return element === null || element === void 0 ? void 0 : (_element$getRootNode = element.getRootNode) === null || _element$getRootNode === void 0 ? void 0 : _element$getRootNode.call(element);\n} : function (element) {\n return element === null || element === void 0 ? void 0 : element.ownerDocument;\n};\n\n/**\n * Determines if a node is inert or in an inert ancestor.\n * @param {Node} [node]\n * @param {boolean} [lookUp] If true and `node` is not inert, looks up at ancestors to\n * see if any of them are inert. If false, only `node` itself is considered.\n * @returns {boolean} True if inert itself or by way of being in an inert ancestor.\n * False if `node` is falsy.\n */\nvar _isInert = function isInert(node, lookUp) {\n var _node$getAttribute;\n if (lookUp === void 0) {\n lookUp = true;\n }\n // CAREFUL: JSDom does not support inert at all, so we can't use the `HTMLElement.inert`\n // JS API property; we have to check the attribute, which can either be empty or 'true';\n // if it's `null` (not specified) or 'false', it's an active element\n var inertAtt = node === null || node === void 0 ? void 0 : (_node$getAttribute = node.getAttribute) === null || _node$getAttribute === void 0 ? void 0 : _node$getAttribute.call(node, 'inert');\n var inert = inertAtt === '' || inertAtt === 'true';\n\n // NOTE: this could also be handled with `node.matches('[inert], :is([inert] *)')`\n // if it weren't for `matches()` not being a function on shadow roots; the following\n // code works for any kind of node\n var result = inert || lookUp && node && (\n // closest does not exist on shadow roots, so we fall back to a manual\n // lookup upward, in case it is not defined.\n typeof node.closest === 'function' ? node.closest('[inert]') : _isInert(node.parentNode));\n return result;\n};\n\n/**\n * Determines if a node's content is editable.\n * @param {Element} [node]\n * @returns True if it's content-editable; false if it's not or `node` is falsy.\n */\nvar isContentEditable = function isContentEditable(node) {\n var _node$getAttribute2;\n // CAREFUL: JSDom does not support the `HTMLElement.isContentEditable` API so we have\n // to use the attribute directly to check for this, which can either be empty or 'true';\n // if it's `null` (not specified) or 'false', it's a non-editable element\n var attValue = node === null || node === void 0 ? void 0 : (_node$getAttribute2 = node.getAttribute) === null || _node$getAttribute2 === void 0 ? void 0 : _node$getAttribute2.call(node, 'contenteditable');\n return attValue === '' || attValue === 'true';\n};\n\n/**\n * @param {Element} el container to check in\n * @param {boolean} includeContainer add container to check\n * @param {(node: Element) => boolean} filter filter candidates\n * @returns {Element[]}\n */\nvar getCandidates = function getCandidates(el, includeContainer, filter) {\n // even if `includeContainer=false`, we still have to check it for inertness because\n // if it's inert (either by itself or via its parent), then all its children are inert\n if (_isInert(el)) {\n return [];\n }\n var candidates = Array.prototype.slice.apply(el.querySelectorAll(candidateSelector));\n if (includeContainer && matches.call(el, candidateSelector)) {\n candidates.unshift(el);\n }\n candidates = candidates.filter(filter);\n return candidates;\n};\n\n/**\n * @callback GetShadowRoot\n * @param {Element} element to check for shadow root\n * @returns {ShadowRoot|boolean} ShadowRoot if available or boolean indicating if a shadowRoot is attached but not available.\n */\n\n/**\n * @callback ShadowRootFilter\n * @param {Element} shadowHostNode the element which contains shadow content\n * @returns {boolean} true if a shadow root could potentially contain valid candidates.\n */\n\n/**\n * @typedef {Object} CandidateScope\n * @property {Element} scopeParent contains inner candidates\n * @property {Element[]} candidates list of candidates found in the scope parent\n */\n\n/**\n * @typedef {Object} IterativeOptions\n * @property {GetShadowRoot|boolean} getShadowRoot true if shadow support is enabled; falsy if not;\n * if a function, implies shadow support is enabled and either returns the shadow root of an element\n * or a boolean stating if it has an undisclosed shadow root\n * @property {(node: Element) => boolean} filter filter candidates\n * @property {boolean} flatten if true then result will flatten any CandidateScope into the returned list\n * @property {ShadowRootFilter} shadowRootFilter filter shadow roots;\n */\n\n/**\n * @param {Element[]} elements list of element containers to match candidates from\n * @param {boolean} includeContainer add container list to check\n * @param {IterativeOptions} options\n * @returns {Array.<Element|CandidateScope>}\n */\nvar _getCandidatesIteratively = function getCandidatesIteratively(elements, includeContainer, options) {\n var candidates = [];\n var elementsToCheck = Array.from(elements);\n while (elementsToCheck.length) {\n var element = elementsToCheck.shift();\n if (_isInert(element, false)) {\n // no need to look up since we're drilling down\n // anything inside this container will also be inert\n continue;\n }\n if (element.tagName === 'SLOT') {\n // add shadow dom slot scope (slot itself cannot be focusable)\n var assigned = element.assignedElements();\n var content = assigned.length ? assigned : element.children;\n var nestedCandidates = _getCandidatesIteratively(content, true, options);\n if (options.flatten) {\n candidates.push.apply(candidates, nestedCandidates);\n } else {\n candidates.push({\n scopeParent: element,\n candidates: nestedCandidates\n });\n }\n } else {\n // check candidate element\n var validCandidate = matches.call(element, candidateSelector);\n if (validCandidate && options.filter(element) && (includeContainer || !elements.includes(element))) {\n candidates.push(element);\n }\n\n // iterate over shadow content if possible\n var shadowRoot = element.shadowRoot ||\n // check for an undisclosed shadow\n typeof options.getShadowRoot === 'function' && options.getShadowRoot(element);\n\n // no inert look up because we're already drilling down and checking for inertness\n // on the way down, so all containers to this root node should have already been\n // vetted as non-inert\n var validShadowRoot = !_isInert(shadowRoot, false) && (!options.shadowRootFilter || options.shadowRootFilter(element));\n if (shadowRoot && validShadowRoot) {\n // add shadow dom scope IIF a shadow root node was given; otherwise, an undisclosed\n // shadow exists, so look at light dom children as fallback BUT create a scope for any\n // child candidates found because they're likely slotted elements (elements that are\n // children of the web component element (which has the shadow), in the light dom, but\n // slotted somewhere _inside_ the undisclosed shadow) -- the scope is created below,\n // _after_ we return from this recursive call\n var _nestedCandidates = _getCandidatesIteratively(shadowRoot === true ? element.children : shadowRoot.children, true, options);\n if (options.flatten) {\n candidates.push.apply(candidates, _nestedCandidates);\n } else {\n candidates.push({\n scopeParent: element,\n candidates: _nestedCandidates\n });\n }\n } else {\n // there's not shadow so just dig into the element's (light dom) children\n // __without__ giving the element special scope treatment\n elementsToCheck.unshift.apply(elementsToCheck, element.children);\n }\n }\n }\n return candidates;\n};\n\n/**\n * @private\n * Determines if the node has an explicitly specified `tabindex` attribute.\n * @param {HTMLElement} node\n * @returns {boolean} True if so; false if not.\n */\nvar hasTabIndex = function hasTabIndex(node) {\n return !isNaN(parseInt(node.getAttribute('tabindex'), 10));\n};\n\n/**\n * Determine the tab index of a given node.\n * @param {HTMLElement} node\n * @returns {number} Tab order (negative, 0, or positive number).\n * @throws {Error} If `node` is falsy.\n */\nvar getTabIndex = function getTabIndex(node) {\n if (!node) {\n throw new Error('No node provided');\n }\n if (node.tabIndex < 0) {\n // in Chrome, <details/>, <audio controls/> and <video controls/> elements get a default\n // `tabIndex` of -1 when the 'tabindex' attribute isn't specified in the DOM,\n // yet they are still part of the regular tab order; in FF, they get a default\n // `tabIndex` of 0; since Chrome still puts those elements in the regular tab\n // order, consider their tab index to be 0.\n // Also browsers do not return `tabIndex` correctly for contentEditable nodes;\n // so if they don't have a tabindex attribute specifically set, assume it's 0.\n if ((/^(AUDIO|VIDEO|DETAILS)$/.test(node.tagName) || isContentEditable(node)) && !hasTabIndex(node)) {\n return 0;\n }\n }\n return node.tabIndex;\n};\n\n/**\n * Determine the tab index of a given node __for sort order purposes__.\n * @param {HTMLElement} node\n * @param {boolean} [isScope] True for a custom element with shadow root or slot that, by default,\n * has tabIndex -1, but needs to be sorted by document order in order for its content to be\n * inserted into the correct sort position.\n * @returns {number} Tab order (negative, 0, or positive number).\n */\nvar getSortOrderTabIndex = function getSortOrderTabIndex(node, isScope) {\n var tabIndex = getTabIndex(node);\n if (tabIndex < 0 && isScope && !hasTabIndex(node)) {\n return 0;\n }\n return tabIndex;\n};\nvar sortOrderedTabbables = function sortOrderedTabbables(a, b) {\n return a.tabIndex === b.tabIndex ? a.documentOrder - b.documentOrder : a.tabIndex - b.tabIndex;\n};\nvar isInput = function isInput(node) {\n return node.tagName === 'INPUT';\n};\nvar isHiddenInput = function isHiddenInput(node) {\n return isInput(node) && node.type === 'hidden';\n};\nvar isDetailsWithSummary = function isDetailsWithSummary(node) {\n var r = node.tagName === 'DETAILS' && Array.prototype.slice.apply(node.children).some(function (child) {\n return child.tagName === 'SUMMARY';\n });\n return r;\n};\nvar getCheckedRadio = function getCheckedRadio(nodes, form) {\n for (var i = 0; i < nodes.length; i++) {\n if (nodes[i].checked && nodes[i].form === form) {\n return nodes[i];\n }\n }\n};\nvar isTabbableRadio = function isTabbableRadio(node) {\n if (!node.name) {\n return true;\n }\n var radioScope = node.form || getRootNode(node);\n var queryRadios = function queryRadios(name) {\n return radioScope.querySelectorAll('input[type=\"radio\"][name=\"' + name + '\"]');\n };\n var radioSet;\n if (typeof window !== 'undefined' && typeof window.CSS !== 'undefined' && typeof window.CSS.escape === 'function') {\n radioSet = queryRadios(window.CSS.escape(node.name));\n } else {\n try {\n radioSet = queryRadios(node.name);\n } catch (err) {\n // eslint-disable-next-line no-console\n console.error('Looks like you have a radio button with a name attribute containing invalid CSS selector characters and need the CSS.escape polyfill: %s', err.message);\n return false;\n }\n }\n var checked = getCheckedRadio(radioSet, node.form);\n return !checked || checked === node;\n};\nvar isRadio = function isRadio(node) {\n return isInput(node) && node.type === 'radio';\n};\nvar isNonTabbableRadio = function isNonTabbableRadio(node) {\n return isRadio(node) && !isTabbableRadio(node);\n};\n\n// determines if a node is ultimately attached to the window's document\nvar isNodeAttached = function isNodeAttached(node) {\n var _nodeRoot;\n // The root node is the shadow root if the node is in a shadow DOM; some document otherwise\n // (but NOT _the_ document; see second 'If' comment below for more).\n // If rootNode is shadow root, it'll have a host, which is the element to which the shadow\n // is attached, and the one we need to check if it's in the document or not (because the\n // shadow, and all nodes it contains, is never considered in the document since shadows\n // behave like self-contained DOMs; but if the shadow's HOST, which is part of the document,\n // is hidden, or is not in the document itself but is detached, it will affect the shadow's\n // visibility, including all the nodes it contains). The host could be any normal node,\n // or a custom element (i.e. web component). Either way, that's the one that is considered\n // part of the document, not the shadow root, nor any of its children (i.e. the node being\n // tested).\n // To further complicate things, we have to look all the way up until we find a shadow HOST\n // that is attached (or find none) because the node might be in nested shadows...\n // If rootNode is not a shadow root, it won't have a host, and so rootNode should be the\n // document (per the docs) and while it's a Document-type object, that document does not\n // appear to be the same as the node's `ownerDocument` for some reason, so it's safer\n // to ignore the rootNode at this point, and use `node.ownerDocument`. Otherwise,\n // using `rootNode.contains(node)` will _always_ be true we'll get false-positives when\n // node is actually detached.\n // NOTE: If `nodeRootHost` or `node` happens to be the `document` itself (which is possible\n // if a tabbable/focusable node was quickly added to the DOM, focused, and then removed\n // from the DOM as in https://github.com/focus-trap/focus-trap-react/issues/905), then\n // `ownerDocument` will be `null`, hence the optional chaining on it.\n var nodeRoot = node && getRootNode(node);\n var nodeRootHost = (_nodeRoot = nodeRoot) === null || _nodeRoot === void 0 ? void 0 : _nodeRoot.host;\n\n // in some cases, a detached node will return itself as the root instead of a document or\n // shadow root object, in which case, we shouldn't try to look further up the host chain\n var attached = false;\n if (nodeRoot && nodeRoot !== node) {\n var _nodeRootHost, _nodeRootHost$ownerDo, _node$ownerDocument;\n attached = !!((_nodeRootHost = nodeRootHost) !== null && _nodeRootHost !== void 0 && (_nodeRootHost$ownerDo = _nodeRootHost.ownerDocument) !== null && _nodeRootHost$ownerDo !== void 0 && _nodeRootHost$ownerDo.contains(nodeRootHost) || node !== null && node !== void 0 && (_node$ownerDocument = node.ownerDocument) !== null && _node$ownerDocument !== void 0 && _node$ownerDocument.contains(node));\n while (!attached && nodeRootHost) {\n var _nodeRoot2, _nodeRootHost2, _nodeRootHost2$ownerD;\n // since it's not attached and we have a root host, the node MUST be in a nested shadow DOM,\n // which means we need to get the host's host and check if that parent host is contained\n // in (i.e. attached to) the document\n nodeRoot = getRootNode(nodeRootHost);\n nodeRootHost = (_nodeRoot2 = nodeRoot) === null || _nodeRoot2 === void 0 ? void 0 : _nodeRoot2.host;\n attached = !!((_nodeRootHost2 = nodeRootHost) !== null && _nodeRootHost2 !== void 0 && (_nodeRootHost2$ownerD = _nodeRootHost2.ownerDocument) !== null && _nodeRootHost2$ownerD !== void 0 && _nodeRootHost2$ownerD.contains(nodeRootHost));\n }\n }\n return attached;\n};\nvar isZeroArea = function isZeroArea(node) {\n var _node$getBoundingClie = node.getBoundingClientRect(),\n width = _node$getBoundingClie.width,\n height = _node$getBoundingClie.height;\n return width === 0 && height === 0;\n};\nvar isHidden = function isHidden(node, _ref) {\n var displayCheck = _ref.displayCheck,\n getShadowRoot = _ref.getShadowRoot;\n if (displayCheck === 'full-native') {\n if ('checkVisibility' in node) {\n // Chrome >= 105, Edge >= 105, Firefox >= 106, Safari >= 17.4\n // @see https://developer.mozilla.org/en-US/docs/Web/API/Element/checkVisibility#browser_compatibility\n var visible = node.checkVisibility({\n // Checking opacity might be desirable for some use cases, but natively,\n // opacity zero elements _are_ focusable and tabbable.\n checkOpacity: false,\n opacityProperty: false,\n contentVisibilityAuto: true,\n visibilityProperty: true,\n // This is an alias for `visibilityProperty`. Contemporary browsers\n // support both. However, this alias has wider browser support (Chrome\n // >= 105 and Firefox >= 106, vs. Chrome >= 121 and Firefox >= 122), so\n // we include it anyway.\n checkVisibilityCSS: true\n });\n return !visible;\n }\n // Fall through to manual visibility checks\n }\n\n // NOTE: visibility will be `undefined` if node is detached from the document\n // (see notes about this further down), which means we will consider it visible\n // (this is legacy behavior from a very long way back)\n // NOTE: we check this regardless of `displayCheck=\"none\"` because this is a\n // _visibility_ check, not a _display_ check\n if (getComputedStyle(node).visibility === 'hidden') {\n return true;\n }\n var isDirectSummary = matches.call(node, 'details>summary:first-of-type');\n var nodeUnderDetails = isDirectSummary ? node.parentElement : node;\n if (matches.call(nodeUnderDetails, 'details:not([open]) *')) {\n return true;\n }\n if (!displayCheck || displayCheck === 'full' ||\n // full-native can run this branch when it falls through in case\n // Element#checkVisibility is unsupported\n displayCheck === 'full-native' || displayCheck === 'legacy-full') {\n if (typeof getShadowRoot === 'function') {\n // figure out if we should consider the node to be in an undisclosed shadow and use the\n // 'non-zero-area' fallback\n var originalNode = node;\n while (node) {\n var parentElement = node.parentElement;\n var rootNode = getRootNode(node);\n if (parentElement && !parentElement.shadowRoot && getShadowRoot(parentElement) === true // check if there's an undisclosed shadow\n ) {\n // node has an undisclosed shadow which means we can only treat it as a black box, so we\n // fall back to a non-zero-area test\n return isZeroArea(node);\n } else if (node.assignedSlot) {\n // iterate up slot\n node = node.assignedSlot;\n } else if (!parentElement && rootNode !== node.ownerDocument) {\n // cross shadow boundary\n node = rootNode.host;\n } else {\n // iterate up normal dom\n node = parentElement;\n }\n }\n node = originalNode;\n }\n // else, `getShadowRoot` might be true, but all that does is enable shadow DOM support\n // (i.e. it does not also presume that all nodes might have undisclosed shadows); or\n // it might be a falsy value, which means shadow DOM support is disabled\n\n // Since we didn't find it sitting in an undisclosed shadow (or shadows are disabled)\n // now we can just test to see if it would normally be visible or not, provided it's\n // attached to the main document.\n // NOTE: We must consider case where node is inside a shadow DOM and given directly to\n // `isTabbable()` or `isFocusable()` -- regardless of `getShadowRoot` option setting.\n\n if (isNodeAttached(node)) {\n // this works wherever the node is: if there's at least one client rect, it's\n // somehow displayed; it also covers the CSS 'display: contents' case where the\n // node itself is hidden in place of its contents; and there's no need to search\n // up the hierarchy either\n return !node.getClientRects().length;\n }\n\n // Else, the node isn't attached to the document, which means the `getClientRects()`\n // API will __always__ return zero rects (this can happen, for example, if React\n // is used to render nodes onto a detached tree, as confirmed in this thread:\n // https://github.com/facebook/react/issues/9117#issuecomment-284228870)\n //\n // It also means that even window.getComputedStyle(node).display will return `undefined`\n // because styles are only computed for nodes that are in the document.\n //\n // NOTE: THIS HAS BEEN THE CASE FOR YEARS. It is not new, nor is it caused by tabbable\n // somehow. Though it was never stated officially, anyone who has ever used tabbable\n // APIs on nodes in detached containers has actually implicitly used tabbable in what\n // was later (as of v5.2.0 on Apr 9, 2021) called `displayCheck=\"none\"` mode -- essentially\n // considering __everything__ to be visible because of the innability to determine styles.\n //\n // v6.0.0: As of this major release, the default 'full' option __no longer treats detached\n // nodes as visible with the 'none' fallback.__\n if (displayCheck !== 'legacy-full') {\n return true; // hidden\n }\n // else, fallback to 'none' mode and consider the node visible\n } else if (displayCheck === 'non-zero-area') {\n // NOTE: Even though this tests that the node's client rect is non-zero to determine\n // whether it's displayed, and that a detached node will __always__ have a zero-area\n // client rect, we don't special-case for whether the node is attached or not. In\n // this mode, we do want to consider nodes that have a zero area to be hidden at all\n // times, and that includes attached or not.\n return isZeroArea(node);\n }\n\n // visible, as far as we can tell, or per current `displayCheck=none` mode, we assume\n // it's visible\n return false;\n};\n\n// form fields (nested) inside a disabled fieldset are not focusable/tabbable\n// unless they are in the _first_ <legend> element of the top-most disabled\n// fieldset\nvar isDisabledFromFieldset = function isDisabledFromFieldset(node) {\n if (/^(INPUT|BUTTON|SELECT|TEXTAREA)$/.test(node.tagName)) {\n var parentNode = node.parentElement;\n // check if `node` is contained in a disabled <fieldset>\n while (parentNode) {\n if (parentNode.tagName === 'FIELDSET' && parentNode.disabled) {\n // look for the first <legend> among the children of the disabled <fieldset>\n for (var i = 0; i < parentNode.children.length; i++) {\n var child = parentNode.children.item(i);\n // when the first <legend> (in document order) is found\n if (child.tagName === 'LEGEND') {\n // if its parent <fieldset> is not nested in another disabled <fieldset>,\n // return whether `node` is a descendant of its first <legend>\n return matches.call(parentNode, 'fieldset[disabled] *') ? true : !child.contains(node);\n }\n }\n // the disabled <fieldset> containing `node` has no <legend>\n return true;\n }\n parentNode = parentNode.parentElement;\n }\n }\n\n // else, node's tabbable/focusable state should not be affected by a fieldset's\n // enabled/disabled state\n return false;\n};\nvar isNodeMatchingSelectorFocusable = function isNodeMatchingSelectorFocusable(options, node) {\n if (node.disabled || isHiddenInput(node) || isHidden(node, options) ||\n // For a details element with a summary, the summary element gets the focus\n isDetailsWithSummary(node) || isDisabledFromFieldset(node)) {\n return false;\n }\n return true;\n};\nvar isNodeMatchingSelectorTabbable = function isNodeMatchingSelectorTabbable(options, node) {\n if (isNonTabbableRadio(node) || getTabIndex(node) < 0 || !isNodeMatchingSelectorFocusable(options, node)) {\n return false;\n }\n return true;\n};\nvar isShadowRootTabbable = function isShadowRootTabbable(shadowHostNode) {\n var tabIndex = parseInt(shadowHostNode.getAttribute('tabindex'), 10);\n if (isNaN(tabIndex) || tabIndex >= 0) {\n return true;\n }\n // If a custom element has an explicit negative tabindex,\n // browsers will not allow tab targeting said element's children.\n return false;\n};\n\n/**\n * @param {Array.<Element|CandidateScope>} candidates\n * @returns Element[]\n */\nvar _sortByOrder = function sortByOrder(candidates) {\n var regularTabbables = [];\n var orderedTabbables = [];\n candidates.forEach(function (item, i) {\n var isScope = !!item.scopeParent;\n var element = isScope ? item.scopeParent : item;\n var candidateTabindex = getSortOrderTabIndex(element, isScope);\n var elements = isScope ? _sortByOrder(item.candidates) : element;\n if (candidateTabindex === 0) {\n isScope ? regularTabbables.push.apply(regularTabbables, elements) : regularTabbables.push(element);\n } else {\n orderedTabbables.push({\n documentOrder: i,\n tabIndex: candidateTabindex,\n item: item,\n isScope: isScope,\n content: elements\n });\n }\n });\n return orderedTabbables.sort(sortOrderedTabbables).reduce(function (acc, sortable) {\n sortable.isScope ? acc.push.apply(acc, sortable.content) : acc.push(sortable.content);\n return acc;\n }, []).concat(regularTabbables);\n};\nvar tabbable = function tabbable(container, options) {\n options = options || {};\n var candidates;\n if (options.getShadowRoot) {\n candidates = _getCandidatesIteratively([container], options.includeContainer, {\n filter: isNodeMatchingSelectorTabbable.bind(null, options),\n flatten: false,\n getShadowRoot: options.getShadowRoot,\n shadowRootFilter: isShadowRootTabbable\n });\n } else {\n candidates = getCandidates(container, options.includeContainer, isNodeMatchingSelectorTabbable.bind(null, options));\n }\n return _sortByOrder(candidates);\n};\nvar focusable = function focusable(container, options) {\n options = options || {};\n var candidates;\n if (options.getShadowRoot) {\n candidates = _getCandidatesIteratively([container], options.includeContainer, {\n filter: isNodeMatchingSelectorFocusable.bind(null, options),\n flatten: true,\n getShadowRoot: options.getShadowRoot\n });\n } else {\n candidates = getCandidates(container, options.includeContainer, isNodeMatchingSelectorFocusable.bind(null, options));\n }\n return candidates;\n};\nvar isTabbable = function isTabbable(node, options) {\n options = options || {};\n if (!node) {\n throw new Error('No node provided');\n }\n if (matches.call(node, candidateSelector) === false) {\n return false;\n }\n return isNodeMatchingSelectorTabbable(options, node);\n};\nvar focusableCandidateSelector = /* #__PURE__ */candidateSelectors.concat('iframe:not([inert]):not([inert] *)').join(',');\nvar isFocusable = function isFocusable(node, options) {\n options = options || {};\n if (!node) {\n throw new Error('No node provided');\n }\n if (matches.call(node, focusableCandidateSelector) === false) {\n return false;\n }\n return isNodeMatchingSelectorFocusable(options, node);\n};\n\nexport { focusable, getTabIndex, isFocusable, isTabbable, tabbable };\n//# sourceMappingURL=index.esm.js.map\n","import { tabbable } from 'tabbable';\nimport { ownerDocument } from '@base-ui/utils/owner';\nimport { activeElement, contains } from \"./element.js\";\nexport const getTabbableOptions = () => ({\n getShadowRoot: true,\n displayCheck:\n // JSDOM does not support the `tabbable` library. To solve this we can\n // check if `ResizeObserver` is a real function (not polyfilled), which\n // determines if the current environment is JSDOM-like.\n typeof ResizeObserver === 'function' && ResizeObserver.toString().includes('[native code]') ? 'full' : 'none'\n});\nfunction getTabbableIn(container, dir) {\n const list = tabbable(container, getTabbableOptions());\n const len = list.length;\n if (len === 0) {\n return undefined;\n }\n const active = activeElement(ownerDocument(container));\n const index = list.indexOf(active);\n // eslint-disable-next-line no-nested-ternary\n const nextIndex = index === -1 ? dir === 1 ? 0 : len - 1 : index + dir;\n return list[nextIndex];\n}\nexport function getNextTabbable(referenceElement) {\n return getTabbableIn(ownerDocument(referenceElement).body, 1) || referenceElement;\n}\nexport function getPreviousTabbable(referenceElement) {\n return getTabbableIn(ownerDocument(referenceElement).body, -1) || referenceElement;\n}\nfunction getTabbableNearElement(referenceElement, dir) {\n if (!referenceElement) {\n return null;\n }\n const list = tabbable(ownerDocument(referenceElement).body, getTabbableOptions());\n const elementCount = list.length;\n if (elementCount === 0) {\n return null;\n }\n const index = list.indexOf(referenceElement);\n if (index === -1) {\n return null;\n }\n const nextIndex = (index + dir + elementCount) % elementCount;\n return list[nextIndex];\n}\nexport function getTabbableAfterElement(referenceElement) {\n return getTabbableNearElement(referenceElement, 1);\n}\nexport function getTabbableBeforeElement(referenceElement) {\n return getTabbableNearElement(referenceElement, -1);\n}\nexport function isOutsideEvent(event, container) {\n const containerElement = container || event.currentTarget;\n const relatedTarget = event.relatedTarget;\n return !relatedTarget || !contains(containerElement, relatedTarget);\n}\nexport function disableFocusInside(container) {\n const tabbableElements = tabbable(container, getTabbableOptions());\n tabbableElements.forEach(element => {\n element.dataset.tabindex = element.getAttribute('tabindex') || '';\n element.setAttribute('tabindex', '-1');\n });\n}\nexport function enableFocusInside(container) {\n const elements = container.querySelectorAll('[data-tabindex]');\n elements.forEach(element => {\n const tabindex = element.dataset.tabindex;\n delete element.dataset.tabindex;\n if (tabindex) {\n element.setAttribute('tabindex', tabindex);\n } else {\n element.removeAttribute('tabindex');\n }\n });\n}","'use client';\n\nimport * as React from 'react';\nimport { useIsoLayoutEffect } from '@base-ui/utils/useIsoLayoutEffect';\nimport { isSafari } from '@base-ui/utils/detectBrowser';\nimport { visuallyHidden } from '@base-ui/utils/visuallyHidden';\n\n/**\n * @internal\n */\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport const FocusGuard = /*#__PURE__*/React.forwardRef(function FocusGuard(props, ref) {\n const [role, setRole] = React.useState();\n useIsoLayoutEffect(() => {\n if (isSafari) {\n // Unlike other screen readers such as NVDA and JAWS, the virtual cursor\n // on VoiceOver does trigger the onFocus event, so we can use the focus\n // trap element. On Safari, only buttons trigger the onFocus event.\n setRole('button');\n }\n }, []);\n const restProps = {\n tabIndex: 0,\n // Role is only for VoiceOver\n role\n };\n return /*#__PURE__*/_jsx(\"span\", {\n ...props,\n ref: ref,\n style: visuallyHidden,\n \"aria-hidden\": role ? undefined : true,\n ...restProps,\n \"data-base-ui-focus-guard\": \"\"\n });\n});\nif (process.env.NODE_ENV !== \"production\") FocusGuard.displayName = \"FocusGuard\";","export function createAttribute(name) {\n return `data-base-ui-${name}`;\n}","'use client';\n\nimport * as React from 'react';\nimport * as ReactDOM from 'react-dom';\nimport { isNode } from '@floating-ui/utils/dom';\nimport { useId } from '@base-ui/utils/useId';\nimport { useIsoLayoutEffect } from '@base-ui/utils/useIsoLayoutEffect';\nimport { useStableCallback } from '@base-ui/utils/useStableCallback';\nimport { FocusGuard } from \"../../utils/FocusGuard.js\";\nimport { enableFocusInside, disableFocusInside, getPreviousTabbable, getNextTabbable, isOutsideEvent } from \"../utils.js\";\nimport { createChangeEventDetails } from \"../../utils/createBaseUIEventDetails.js\";\nimport { REASONS } from \"../../utils/reasons.js\";\nimport { createAttribute } from \"../utils/createAttribute.js\";\nimport { useRenderElement } from \"../../utils/useRenderElement.js\";\nimport { EMPTY_OBJECT, ownerVisuallyHidden } from \"../../utils/constants.js\";\nimport { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nconst PortalContext = /*#__PURE__*/React.createContext(null);\nif (process.env.NODE_ENV !== \"production\") PortalContext.displayName = \"PortalContext\";\nexport const usePortalContext = () => React.useContext(PortalContext);\nconst attr = createAttribute('portal');\nexport function useFloatingPortalNode(props = {}) {\n const {\n ref,\n container: containerProp,\n componentProps = EMPTY_OBJECT,\n elementProps\n } = props;\n const uniqueId = useId();\n const portalContext = usePortalContext();\n const parentPortalNode = portalContext?.portalNode;\n const [containerElement, setContainerElement] = React.useState(null);\n const [portalNode, setPortalNode] = React.useState(null);\n const setPortalNodeRef = useStableCallback(node => {\n if (node !== null) {\n // the useIsoLayoutEffect below watching containerProp / parentPortalNode\n // sets setPortalNode(null) when the container becomes null or changes.\n // So even though the ref callback now ignores null, the portal node still gets cleared.\n setPortalNode(node);\n }\n });\n const containerRef = React.useRef(null);\n useIsoLayoutEffect(() => {\n // Wait for the container to be resolved if explicitly `null`.\n if (containerProp === null) {\n if (containerRef.current) {\n containerRef.current = null;\n setPortalNode(null);\n setContainerElement(null);\n }\n return;\n }\n\n // React 17 does not use React.useId().\n if (uniqueId == null) {\n return;\n }\n const resolvedContainer = (containerProp && (isNode(containerProp) ? containerProp : containerProp.current)) ?? parentPortalNode ?? document.body;\n if (resolvedContainer == null) {\n if (containerRef.current) {\n containerRef.current = null;\n setPortalNode(null);\n setContainerElement(null);\n }\n return;\n }\n if (containerRef.current !== resolvedContainer) {\n containerRef.current = resolvedContainer;\n setPortalNode(null);\n setContainerElement(resolvedContainer);\n }\n }, [containerProp, parentPortalNode, uniqueId]);\n const portalElement = useRenderElement('div', componentProps, {\n ref: [ref, setPortalNodeRef],\n props: [{\n id: uniqueId,\n [attr]: ''\n }, elementProps]\n });\n\n // This `createPortal` call injects `portalElement` into the `container`.\n // Another call inside `FloatingPortal`/`FloatingPortalLite` then injects the children into `portalElement`.\n const portalSubtree = containerElement && portalElement ? /*#__PURE__*/ReactDOM.createPortal(portalElement, containerElement) : null;\n return {\n portalNode,\n portalSubtree\n };\n}\n\n/**\n * Portals the floating element into a given container element — by default,\n * outside of the app root and into the body.\n * This is necessary to ensure the floating element can appear outside any\n * potential parent containers that cause clipping (such as `overflow: hidden`),\n * while retaining its location in the React tree.\n * @see https://floating-ui.com/docs/FloatingPortal\n * @internal\n */\nexport const FloatingPortal = /*#__PURE__*/React.forwardRef(function FloatingPortal(componentProps, forwardedRef) {\n const {\n children,\n container,\n className,\n render,\n renderGuards,\n ...elementProps\n } = componentProps;\n const {\n portalNode,\n portalSubtree\n } = useFloatingPortalNode({\n container,\n ref: forwardedRef,\n componentProps,\n elementProps\n });\n const beforeOutsideRef = React.useRef(null);\n const afterOutsideRef = React.useRef(null);\n const beforeInsideRef = React.useRef(null);\n const afterInsideRef = React.useRef(null);\n const [focusManagerState, setFocusManagerState] = React.useState(null);\n const modal = focusManagerState?.modal;\n const open = focusManagerState?.open;\n const shouldRenderGuards = typeof renderGuards === 'boolean' ? renderGuards : !!focusManagerState && !focusManagerState.modal && focusManagerState.open && !!portalNode;\n\n // https://codesandbox.io/s/tabbable-portal-f4tng?file=/src/TabbablePortal.tsx\n React.useEffect(() => {\n if (!portalNode || modal) {\n return undefined;\n }\n\n // Make sure elements inside the portal element are tabbable only when the\n // portal has already been focused, either by tabbing into a focus trap\n // element outside or using the mouse.\n function onFocus(event) {\n if (portalNode && event.relatedTarget && isOutsideEvent(event)) {\n const focusing = event.type === 'focusin';\n const manageFocus = focusing ? enableFocusInside : disableFocusInside;\n manageFocus(portalNode);\n }\n }\n\n // Listen to the event on the capture phase so they run before the focus\n // trap elements onFocus prop is called.\n portalNode.addEventListener('focusin', onFocus, true);\n portalNode.addEventListener('focusout', onFocus, true);\n return () => {\n portalNode.removeEventListener('focusin', onFocus, true);\n portalNode.removeEventListener('focusout', onFocus, true);\n };\n }, [portalNode, modal]);\n React.useEffect(() => {\n if (!portalNode || open) {\n return;\n }\n enableFocusInside(portalNode);\n }, [open, portalNode]);\n const portalContextValue = React.useMemo(() => ({\n beforeOutsideRef,\n afterOutsideRef,\n beforeInsideRef,\n afterInsideRef,\n portalNode,\n setFocusManagerState\n }), [portalNode]);\n return /*#__PURE__*/_jsxs(React.Fragment, {\n children: [portalSubtree, /*#__PURE__*/_jsxs(PortalContext.Provider, {\n value: portalContextValue,\n children: [shouldRenderGuards && portalNode && /*#__PURE__*/_jsx(FocusGuard, {\n \"data-type\": \"outside\",\n ref: beforeOutsideRef,\n onFocus: event => {\n if (isOutsideEvent(event, portalNode)) {\n beforeInsideRef.current?.focus();\n } else {\n const domReference = focusManagerState ? focusManagerState.domReference : null;\n const prevTabbable = getPreviousTabbable(domReference);\n prevTabbable?.focus();\n }\n }\n }), shouldRenderGuards && portalNode && /*#__PURE__*/_jsx(\"span\", {\n \"aria-owns\": portalNode.id,\n style: ownerVisuallyHidden\n }), portalNode && /*#__PURE__*/ReactDOM.createPortal(children, portalNode), shouldRenderGuards && portalNode && /*#__PURE__*/_jsx(FocusGuard, {\n \"data-type\": \"outside\",\n ref: afterOutsideRef,\n onFocus: event => {\n if (isOutsideEvent(event, portalNode)) {\n afterInsideRef.current?.focus();\n } else {\n const domReference = focusManagerState ? focusManagerState.domReference : null;\n const nextTabbable = getNextTabbable(domReference);\n nextTabbable?.focus();\n if (focusManagerState?.closeOnFocusOut) {\n focusManagerState?.onOpenChange(false, createChangeEventDetails(REASONS.focusOut, event.nativeEvent));\n }\n }\n }\n })]\n })]\n });\n});\nif (process.env.NODE_ENV !== \"production\") FloatingPortal.displayName = \"FloatingPortal\";","export function createEventEmitter() {\n const map = new Map();\n return {\n emit(event, data) {\n map.get(event)?.forEach(listener => listener(data));\n },\n on(event, listener) {\n if (!map.has(event)) {\n map.set(event, new Set());\n }\n map.get(event).add(listener);\n },\n off(event, listener) {\n map.get(event)?.delete(listener);\n }\n };\n}","import { createEventEmitter } from \"../utils/createEventEmitter.js\";\n\n/**\n * Stores and manages floating elements in a tree structure.\n * This is a backing store for the `FloatingTree` component.\n */\nexport class FloatingTreeStore {\n nodesRef = {\n current: []\n };\n events = createEventEmitter();\n addNode(node) {\n this.nodesRef.current.push(node);\n }\n removeNode(node) {\n const index = this.nodesRef.current.findIndex(n => n === node);\n if (index !== -1) {\n this.nodesRef.current.splice(index, 1);\n }\n }\n}","'use client';\n\nimport * as React from 'react';\nimport { useId } from '@base-ui/utils/useId';\nimport { useIsoLayoutEffect } from '@base-ui/utils/useIsoLayoutEffect';\nimport { useRefWithInit } from '@base-ui/utils/useRefWithInit';\nimport { FloatingTreeStore } from \"./FloatingTreeStore.js\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst FloatingNodeContext = /*#__PURE__*/React.createContext(null);\nif (process.env.NODE_ENV !== \"production\") FloatingNodeContext.displayName = \"FloatingNodeContext\";\nconst FloatingTreeContext = /*#__PURE__*/React.createContext(null);\n\n/**\n * Returns the parent node id for nested floating elements, if available.\n * Returns `null` for top-level floating elements.\n */\nif (process.env.NODE_ENV !== \"production\") FloatingTreeContext.displayName = \"FloatingTreeContext\";\nexport const useFloatingParentNodeId = () => React.useContext(FloatingNodeContext)?.id || null;\n\n/**\n * Returns the nearest floating tree context, if available.\n */\nexport const useFloatingTree = externalTree => {\n const contextTree = React.useContext(FloatingTreeContext);\n return externalTree ?? contextTree;\n};\n\n/**\n * Registers a node into the `FloatingTree`, returning its id.\n * @see https://floating-ui.com/docs/FloatingTree\n */\nexport function useFloatingNodeId(externalTree) {\n const id = useId();\n const tree = useFloatingTree(externalTree);\n const parentId = useFloatingParentNodeId();\n useIsoLayoutEffect(() => {\n if (!id) {\n return undefined;\n }\n const node = {\n id,\n parentId\n };\n tree?.addNode(node);\n return () => {\n tree?.removeNode(node);\n };\n }, [tree, id, parentId]);\n return id;\n}\n/**\n * Provides parent node context for nested floating elements.\n * @see https://floating-ui.com/docs/FloatingTree\n * @internal\n */\nexport function FloatingNode(props) {\n const {\n children,\n id\n } = props;\n const parentId = useFloatingParentNodeId();\n return /*#__PURE__*/_jsx(FloatingNodeContext.Provider, {\n value: React.useMemo(() => ({\n id,\n parentId\n }), [id, parentId]),\n children: children\n });\n}\n/**\n * Provides context for nested floating elements when they are not children of\n * each other on the DOM.\n * This is not necessary in all cases, except when there must be explicit communication between parent and child floating elements. It is necessary for:\n * - The `bubbles` option in the `useDismiss()` Hook\n * - Nested virtual list navigation\n * - Nested floating elements that each open on hover\n * - Custom communication between parent and child floating elements\n * @see https://floating-ui.com/docs/FloatingTree\n * @internal\n */\nexport function FloatingTree(props) {\n const {\n children,\n externalTree\n } = props;\n const tree = useRefWithInit(() => externalTree ?? new FloatingTreeStore()).current;\n return /*#__PURE__*/_jsx(FloatingTreeContext.Provider, {\n value: tree,\n children: children\n });\n}","'use client';\n\nimport * as React from 'react';\nimport { getComputedStyle, getParentNode, isElement, isHTMLElement, isLastTraversableNode, isShadowRoot, isWebKit } from '@floating-ui/utils/dom';\nimport { Timeout, useTimeout } from '@base-ui/utils/useTimeout';\nimport { useStableCallback } from '@base-ui/utils/useStableCallback';\nimport { ownerDocument } from '@base-ui/utils/owner';\nimport { contains, getTarget, isEventTargetWithin, isReactEvent, isRootElement, getNodeChildren } from \"../utils.js\";\n\n/* eslint-disable no-underscore-dangle */\n\nimport { useFloatingTree } from \"../components/FloatingTree.js\";\nimport { createChangeEventDetails } from \"../../utils/createBaseUIEventDetails.js\";\nimport { REASONS } from \"../../utils/reasons.js\";\nimport { createAttribute } from \"../utils/createAttribute.js\";\nconst bubbleHandlerKeys = {\n intentional: 'onClick',\n sloppy: 'onPointerDown'\n};\nfunction alwaysFalse() {\n return false;\n}\nexport function normalizeProp(normalizable) {\n return {\n escapeKey: typeof normalizable === 'boolean' ? normalizable : normalizable?.escapeKey ?? false,\n outsidePress: typeof normalizable === 'boolean' ? normalizable : normalizable?.outsidePress ?? true\n };\n}\n/**\n * Closes the floating element when a dismissal is requested — by default, when\n * the user presses the `escape` key or outside of the floating element.\n * @see https://floating-ui.com/docs/useDismiss\n */\nexport function useDismiss(context, props = {}) {\n const store = 'rootStore' in context ? context.rootStore : context;\n const open = store.useState('open');\n const floatingElement = store.useState('floatingElement');\n const {\n dataRef\n } = store.context;\n const {\n enabled = true,\n escapeKey = true,\n outsidePress: outsidePressProp = true,\n outsidePressEvent = 'sloppy',\n referencePress = alwaysFalse,\n referencePressEvent = 'sloppy',\n bubbles,\n externalTree\n } = props;\n const tree = useFloatingTree(externalTree);\n const outsidePressFn = useStableCallback(typeof outsidePressProp === 'function' ? outsidePressProp : () => false);\n const outsidePress = typeof outsidePressProp === 'function' ? outsidePressFn : outsidePressProp;\n const outsidePressEnabled = outsidePress !== false;\n const getOutsidePressEventProp = useStableCallback(() => outsidePressEvent);\n const pressStartedInsideRef = React.useRef(false);\n const pressStartPreventedRef = React.useRef(false);\n // Ignore only the very next outside click after dragging from inside to outside.\n const suppressNextOutsideClickRef = React.useRef(false);\n const {\n escapeKey: escapeKeyBubbles,\n outsidePress: outsidePressBubbles\n } = normalizeProp(bubbles);\n const touchStateRef = React.useRef(null);\n const cancelDismissOnEndTimeout = useTimeout();\n const clearInsideReactTreeTimeout = useTimeout();\n const clearInsideReactTree = useStableCallback(() => {\n clearInsideReactTreeTimeout.clear();\n dataRef.current.insideReactTree = false;\n });\n const isComposingRef = React.useRef(false);\n const currentPointerTypeRef = React.useRef('');\n const isReferencePressEnabled = useStableCallback(referencePress);\n const closeOnEscapeKeyDown = useStableCallback(event => {\n if (!open || !enabled || !escapeKey || event.key !== 'Escape') {\n return;\n }\n\n // Wait until IME is settled. Pressing `Escape` while composing should\n // close the compose menu, but not the floating element.\n if (isComposingRef.current) {\n return;\n }\n const nodeId = dataRef.current.floatingContext?.nodeId;\n const children = tree ? getNodeChildren(tree.nodesRef.current, nodeId) : [];\n if (!escapeKeyBubbles) {\n if (children.length > 0) {\n let shouldDismiss = true;\n children.forEach(child => {\n if (child.context?.open && !child.context.dataRef.current.__escapeKeyBubbles) {\n shouldDismiss = false;\n }\n });\n if (!shouldDismiss) {\n return;\n }\n }\n }\n const native = isReactEvent(event) ? event.nativeEvent : event;\n const eventDetails = createChangeEventDetails(REASONS.escapeKey, native);\n store.setOpen(false, eventDetails);\n if (!escapeKeyBubbles && !eventDetails.isPropagationAllowed) {\n event.stopPropagation();\n }\n });\n const markInsideReactTree = useStableCallback(() => {\n dataRef.current.insideReactTree = true;\n clearInsideReactTreeTimeout.start(0, clearInsideReactTree);\n });\n React.useEffect(() => {\n if (!open || !enabled) {\n return undefined;\n }\n dataRef.current.__escapeKeyBubbles = escapeKeyBubbles;\n dataRef.current.__outsidePressBubbles = outsidePressBubbles;\n const compositionTimeout = new Timeout();\n const preventedPressSuppressionTimeout = new Timeout();\n function handleCompositionStart() {\n compositionTimeout.clear();\n isComposingRef.current = true;\n }\n function handleCompositionEnd() {\n // Safari fires `compositionend` before `keydown`, so we need to wait\n // until the next tick to set `isComposing` to `false`.\n // https://bugs.webkit.org/show_bug.cgi?id=165004\n compositionTimeout.start(\n // 0ms or 1ms don't work in Safari. 5ms appears to consistently work.\n // Only apply to WebKit for the test to remain 0ms.\n isWebKit() ? 5 : 0, () => {\n isComposingRef.current = false;\n });\n }\n function suppressImmediateOutsideClickAfterPreventedStart() {\n suppressNextOutsideClickRef.current = true;\n // Firefox can emit the synthetic outside click in a later task after\n // pointer lock exit, so microtask clearing is too early here.\n preventedPressSuppressionTimeout.start(0, () => {\n suppressNextOutsideClickRef.current = false;\n });\n }\n function resetPressStartState() {\n pressStartedInsideRef.current = false;\n pressStartPreventedRef.current = false;\n }\n function getOutsidePressEvent() {\n const type = currentPointerTypeRef.current;\n const computedType = type === 'pen' || !type ? 'mouse' : type;\n const outsidePressEventValue = getOutsidePressEventProp();\n const resolved = typeof outsidePressEventValue === 'function' ? outsidePressEventValue() : outsidePressEventValue;\n if (typeof resolved === 'string') {\n return resolved;\n }\n return resolved[computedType];\n }\n function shouldIgnoreEvent(event) {\n const computedOutsidePressEvent = getOutsidePressEvent();\n return computedOutsidePressEvent === 'intentional' && event.type !== 'click' || computedOutsidePressEvent === 'sloppy' && event.type === 'click';\n }\n function isEventWithinFloatingTree(event) {\n const nodeId = dataRef.current.floatingContext?.nodeId;\n const targetIsInsideChildren = tree && getNodeChildren(tree.nodesRef.current, nodeId).some(node => isEventTargetWithin(event, node.context?.elements.floating));\n return isEventTargetWithin(event, store.select('floatingElement')) || isEventTargetWithin(event, store.select('domReferenceElement')) || targetIsInsideChildren;\n }\n function closeOnPressOutside(event) {\n if (shouldIgnoreEvent(event)) {\n clearInsideReactTree();\n return;\n }\n if (dataRef.current.insideReactTree) {\n clearInsideReactTree();\n return;\n }\n const target = getTarget(event);\n const inertSelector = `[${createAttribute('inert')}]`;\n let markers = Array.from(ownerDocument(store.select('floatingElement')).querySelectorAll(inertSelector));\n const targetRoot = isElement(target) ? target.getRootNode() : null;\n if (isShadowRoot(targetRoot)) {\n markers = markers.concat(Array.from(targetRoot.querySelectorAll(inertSelector)));\n }\n const triggers = store.context.triggerElements;\n\n // If another trigger is clicked, don't close the floating element.\n if (target && (triggers.hasElement(target) || triggers.hasMatchingElement(trigger => contains(trigger, target)))) {\n return;\n }\n let targetRootAncestor = isElement(target) ? target : null;\n while (targetRootAncestor && !isLastTraversableNode(targetRootAncestor)) {\n const nextParent = getParentNode(targetRootAncestor);\n if (isLastTraversableNode(nextParent) || !isElement(nextParent)) {\n break;\n }\n targetRootAncestor = nextParent;\n }\n\n // Check if the click occurred on a third-party element injected after the\n // floating element rendered.\n if (markers.length && isElement(target) && !isRootElement(target) &&\n // Clicked on a direct ancestor (e.g. FloatingOverlay).\n !contains(target, store.select('floatingElement')) &&\n // If the target root element contains none of the markers, then the\n // element was injected after the floating element rendered.\n markers.every(marker => !contains(targetRootAncestor, marker))) {\n return;\n }\n\n // Check if the click occurred on the scrollbar\n // Skip for touch events: scrollbars don't receive touch events on most platforms\n if (isHTMLElement(target) && !('touches' in event)) {\n const lastTraversableNode = isLastTraversableNode(target);\n const style = getComputedStyle(target);\n const scrollRe = /auto|scroll/;\n const isScrollableX = lastTraversableNode || scrollRe.test(style.overflowX);\n const isScrollableY = lastTraversableNode || scrollRe.test(style.overflowY);\n const canScrollX = isScrollableX && target.clientWidth > 0 && target.scrollWidth > target.clientWidth;\n const canScrollY = isScrollableY && target.clientHeight > 0 && target.scrollHeight > target.clientHeight;\n const isRTL = style.direction === 'rtl';\n\n // Check click position relative to scrollbar.\n // In some browsers it is possible to change the <body> (or window)\n // scrollbar to the left side, but is very rare and is difficult to\n // check for. Plus, for modal dialogs with backdrops, it is more\n // important that the backdrop is checked but not so much the window.\n const pressedVerticalScrollbar = canScrollY && (isRTL ? event.offsetX <= target.offsetWidth - target.clientWidth : event.offsetX > target.clientWidth);\n const pressedHorizontalScrollbar = canScrollX && event.offsetY > target.clientHeight;\n if (pressedVerticalScrollbar || pressedHorizontalScrollbar) {\n return;\n }\n }\n if (isEventWithinFloatingTree(event)) {\n return;\n }\n\n // In intentional mode, a press that starts inside and ends outside gets\n // one suppressed outside click. Run this after inside-target checks so\n // inside clicks don't consume the one-shot suppression.\n if (getOutsidePressEvent() === 'intentional' && suppressNextOutsideClickRef.current) {\n preventedPressSuppressionTimeout.clear();\n suppressNextOutsideClickRef.current = false;\n return;\n }\n if (typeof outsidePress === 'function' && !outsidePress(event)) {\n return;\n }\n const nodeId = dataRef.current.floatingContext?.nodeId;\n const children = tree ? getNodeChildren(tree.nodesRef.current, nodeId) : [];\n if (children.length > 0) {\n let shouldDismiss = true;\n children.forEach(child => {\n if (child.context?.open && !child.context.dataRef.current.__outsidePressBubbles) {\n shouldDismiss = false;\n }\n });\n if (!shouldDismiss) {\n return;\n }\n }\n store.setOpen(false, createChangeEventDetails(REASONS.outsidePress, event));\n clearInsideReactTree();\n }\n function handlePointerDown(event) {\n if (getOutsidePressEvent() !== 'sloppy' || event.pointerType === 'touch' || !store.select('open') || !enabled || isEventTargetWithin(event, store.select('floatingElement')) || isEventTargetWithin(event, store.select('domReferenceElement'))) {\n return;\n }\n closeOnPressOutside(event);\n }\n function handleTouchStart(event) {\n if (getOutsidePressEvent() !== 'sloppy' || !store.select('open') || !enabled || isEventTargetWithin(event, store.select('floatingElement')) || isEventTargetWithin(event, store.select('domReferenceElement'))) {\n return;\n }\n const touch = event.touches[0];\n if (touch) {\n touchStateRef.current = {\n startTime: Date.now(),\n startX: touch.clientX,\n startY: touch.clientY,\n dismissOnTouchEnd: false,\n dismissOnMouseDown: true\n };\n cancelDismissOnEndTimeout.start(1000, () => {\n if (touchStateRef.current) {\n touchStateRef.current.dismissOnTouchEnd = false;\n touchStateRef.current.dismissOnMouseDown = false;\n }\n });\n }\n }\n function handleTouchStartCapture(event) {\n currentPointerTypeRef.current = 'touch';\n const target = getTarget(event);\n function callback() {\n handleTouchStart(event);\n target?.removeEventListener(event.type, callback);\n }\n target?.addEventListener(event.type, callback);\n }\n function closeOnPressOutsideCapture(event) {\n cancelDismissOnEndTimeout.clear();\n if (event.type === 'pointerdown') {\n currentPointerTypeRef.current = event.pointerType;\n }\n if (event.type === 'mousedown' && touchStateRef.current && !touchStateRef.current.dismissOnMouseDown) {\n return;\n }\n const target = getTarget(event);\n function callback() {\n if (event.type === 'pointerdown') {\n handlePointerDown(event);\n } else {\n closeOnPressOutside(event);\n }\n target?.removeEventListener(event.type, callback);\n }\n target?.addEventListener(event.type, callback);\n }\n function handlePressEndCapture(event) {\n if (!pressStartedInsideRef.current) {\n return;\n }\n const pressStartedInsideDefaultPrevented = pressStartPreventedRef.current;\n resetPressStartState();\n if (getOutsidePressEvent() !== 'intentional') {\n return;\n }\n if (event.type === 'pointercancel') {\n if (pressStartedInsideDefaultPrevented) {\n suppressImmediateOutsideClickAfterPreventedStart();\n }\n return;\n }\n if (isEventWithinFloatingTree(event)) {\n return;\n }\n\n // If pointerdown was prevented, no click may be generated for that\n // interaction. However, Firefox may still emit an immediate click after\n // pointerup (e.g. NumberField scrub with pointer lock), so suppress for\n // one tick to absorb that synthetic click only.\n if (pressStartedInsideDefaultPrevented) {\n suppressImmediateOutsideClickAfterPreventedStart();\n return;\n }\n\n // Avoid suppressing when outsidePress explicitly ignores this target.\n if (typeof outsidePress === 'function' && !outsidePress(event)) {\n return;\n }\n preventedPressSuppressionTimeout.clear();\n suppressNextOutsideClickRef.current = true;\n clearInsideReactTree();\n }\n function handleTouchMove(event) {\n if (getOutsidePressEvent() !== 'sloppy' || !touchStateRef.current || isEventTargetWithin(event, store.select('floatingElement')) || isEventTargetWithin(event, store.select('domReferenceElement'))) {\n return;\n }\n const touch = event.touches[0];\n if (!touch) {\n return;\n }\n const deltaX = Math.abs(touch.clientX - touchStateRef.current.startX);\n const deltaY = Math.abs(touch.clientY - touchStateRef.current.startY);\n const distance = Math.sqrt(deltaX * deltaX + deltaY * deltaY);\n if (distance > 5) {\n touchStateRef.current.dismissOnTouchEnd = true;\n }\n if (distance > 10) {\n closeOnPressOutside(event);\n cancelDismissOnEndTimeout.clear();\n touchStateRef.current = null;\n }\n }\n function handleTouchMoveCapture(event) {\n const target = getTarget(event);\n function callback() {\n handleTouchMove(event);\n target?.removeEventListener(event.type, callback);\n }\n target?.addEventListener(event.type, callback);\n }\n function handleTouchEnd(event) {\n if (getOutsidePressEvent() !== 'sloppy' || !touchStateRef.current || isEventTargetWithin(event, store.select('floatingElement')) || isEventTargetWithin(event, store.select('domReferenceElement'))) {\n return;\n }\n if (touchStateRef.current.dismissOnTouchEnd) {\n closeOnPressOutside(event);\n }\n cancelDismissOnEndTimeout.clear();\n touchStateRef.current = null;\n }\n function handleTouchEndCapture(event) {\n const target = getTarget(event);\n function callback() {\n handleTouchEnd(event);\n target?.removeEventListener(event.type, callback);\n }\n target?.addEventListener(event.type, callback);\n }\n const doc = ownerDocument(floatingElement);\n if (escapeKey) {\n doc.addEventListener('keydown', closeOnEscapeKeyDown);\n doc.addEventListener('compositionstart', handleCompositionStart);\n doc.addEventListener('compositionend', handleCompositionEnd);\n }\n if (outsidePressEnabled) {\n doc.addEventListener('click', closeOnPressOutsideCapture, true);\n doc.addEventListener('pointerdown', closeOnPressOutsideCapture, true);\n doc.addEventListener('pointerup', handlePressEndCapture, true);\n doc.addEventListener('pointercancel', handlePressEndCapture, true);\n doc.addEventListener('mousedown', closeOnPressOutsideCapture, true);\n doc.addEventListener('mouseup', handlePressEndCapture, true);\n doc.addEventListener('touchstart', handleTouchStartCapture, true);\n doc.addEventListener('touchmove', handleTouchMoveCapture, true);\n doc.addEventListener('touchend', handleTouchEndCapture, true);\n }\n return () => {\n if (escapeKey) {\n doc.removeEventListener('keydown', closeOnEscapeKeyDown);\n doc.removeEventListener('compositionstart', handleCompositionStart);\n doc.removeEventListener('compositionend', handleCompositionEnd);\n }\n if (outsidePressEnabled) {\n doc.removeEventListener('click', closeOnPressOutsideCapture, true);\n doc.removeEventListener('pointerdown', closeOnPressOutsideCapture, true);\n doc.removeEventListener('pointerup', handlePressEndCapture, true);\n doc.removeEventListener('pointercancel', handlePressEndCapture, true);\n doc.removeEventListener('mousedown', closeOnPressOutsideCapture, true);\n doc.removeEventListener('mouseup', handlePressEndCapture, true);\n doc.removeEventListener('touchstart', handleTouchStartCapture, true);\n doc.removeEventListener('touchmove', handleTouchMoveCapture, true);\n doc.removeEventListener('touchend', handleTouchEndCapture, true);\n }\n compositionTimeout.clear();\n preventedPressSuppressionTimeout.clear();\n resetPressStartState();\n suppressNextOutsideClickRef.current = false;\n };\n }, [dataRef, floatingElement, escapeKey, outsidePressEnabled, outsidePress, open, enabled, escapeKeyBubbles, outsidePressBubbles, closeOnEscapeKeyDown, clearInsideReactTree, getOutsidePressEventProp, tree, store, cancelDismissOnEndTimeout]);\n React.useEffect(clearInsideReactTree, [outsidePress, clearInsideReactTree]);\n const reference = React.useMemo(() => ({\n onKeyDown: closeOnEscapeKeyDown,\n [bubbleHandlerKeys[referencePressEvent]]: event => {\n if (!isReferencePressEnabled()) {\n return;\n }\n store.setOpen(false, createChangeEventDetails(REASONS.triggerPress, event.nativeEvent));\n },\n ...(referencePressEvent !== 'intentional' && {\n onClick(event) {\n if (!isReferencePressEnabled()) {\n return;\n }\n store.setOpen(false, createChangeEventDetails(REASONS.triggerPress, event.nativeEvent));\n }\n })\n }), [closeOnEscapeKeyDown, store, referencePressEvent, isReferencePressEnabled]);\n const markPressStartedInsideReactTree = useStableCallback(event => {\n if (!open || !enabled || event.button !== 0) {\n return;\n }\n const target = getTarget(event.nativeEvent);\n // Only treat presses that start within the floating DOM subtree as inside.\n // This avoids suppressing parent dismissal when interacting with nested portals.\n if (!contains(store.select('floatingElement'), target)) {\n return;\n }\n if (!pressStartedInsideRef.current) {\n pressStartedInsideRef.current = true;\n pressStartPreventedRef.current = false;\n }\n });\n const markInsidePressStartPrevented = useStableCallback(event => {\n if (!open || !enabled) {\n return;\n }\n if (!(event.defaultPrevented || event.nativeEvent.defaultPrevented)) {\n return;\n }\n if (pressStartedInsideRef.current) {\n pressStartPreventedRef.current = true;\n }\n });\n const floating = React.useMemo(() => ({\n onKeyDown: closeOnEscapeKeyDown,\n // `onMouseDown` may be blocked if `event.preventDefault()` is called in\n // `onPointerDown`, such as with <NumberField.ScrubArea>.\n // See https://github.com/mui/base-ui/pull/3379\n onPointerDown: markInsidePressStartPrevented,\n onMouseDown: markInsidePressStartPrevented,\n onClickCapture: markInsideReactTree,\n onMouseDownCapture(event) {\n markInsideReactTree();\n markPressStartedInsideReactTree(event);\n },\n onPointerDownCapture(event) {\n markInsideReactTree();\n markPressStartedInsideReactTree(event);\n },\n onMouseUpCapture: markInsideReactTree,\n onTouchEndCapture: markInsideReactTree,\n onTouchMoveCapture: markInsideReactTree\n }), [closeOnEscapeKeyDown, markInsideReactTree, markPressStartedInsideReactTree, markInsidePressStartPrevented]);\n return React.useMemo(() => enabled ? {\n reference,\n floating,\n trigger: reference\n } : {}, [enabled, reference, floating]);\n}","// src/devModeChecks/identityFunctionCheck.ts\nvar runIdentityFunctionCheck = (resultFunc, inputSelectorsResults, outputSelectorResult) => {\n if (inputSelectorsResults.length === 1 && inputSelectorsResults[0] === outputSelectorResult) {\n let isInputSameAsOutput = false;\n try {\n const emptyObject = {};\n if (resultFunc(emptyObject) === emptyObject)\n isInputSameAsOutput = true;\n } catch {\n }\n if (isInputSameAsOutput) {\n let stack = void 0;\n try {\n throw new Error();\n } catch (e) {\n ;\n ({ stack } = e);\n }\n console.warn(\n \"The result function returned its own inputs without modification. e.g\\n`createSelector([state => state.todos], todos => todos)`\\nThis could lead to inefficient memoization and unnecessary re-renders.\\nEnsure transformation logic is in the result function, and extraction logic is in the input selectors.\",\n { stack }\n );\n }\n }\n};\n\n// src/devModeChecks/inputStabilityCheck.ts\nvar runInputStabilityCheck = (inputSelectorResultsObject, options, inputSelectorArgs) => {\n const { memoize, memoizeOptions } = options;\n const { inputSelectorResults, inputSelectorResultsCopy } = inputSelectorResultsObject;\n const createAnEmptyObject = memoize(() => ({}), ...memoizeOptions);\n const areInputSelectorResultsEqual = createAnEmptyObject.apply(null, inputSelectorResults) === createAnEmptyObject.apply(null, inputSelectorResultsCopy);\n if (!areInputSelectorResultsEqual) {\n let stack = void 0;\n try {\n throw new Error();\n } catch (e) {\n ;\n ({ stack } = e);\n }\n console.warn(\n \"An input selector returned a different result when passed same arguments.\\nThis means your output selector will likely run more frequently than intended.\\nAvoid returning a new reference inside your input selector, e.g.\\n`createSelector([state => state.todos.map(todo => todo.id)], todoIds => todoIds.length)`\",\n {\n arguments: inputSelectorArgs,\n firstInputs: inputSelectorResults,\n secondInputs: inputSelectorResultsCopy,\n stack\n }\n );\n }\n};\n\n// src/devModeChecks/setGlobalDevModeChecks.ts\nvar globalDevModeChecks = {\n inputStabilityCheck: \"once\",\n identityFunctionCheck: \"once\"\n};\nvar setGlobalDevModeChecks = (devModeChecks) => {\n Object.assign(globalDevModeChecks, devModeChecks);\n};\n\n// src/utils.ts\nvar NOT_FOUND = /* @__PURE__ */ Symbol(\"NOT_FOUND\");\nfunction assertIsFunction(func, errorMessage = `expected a function, instead received ${typeof func}`) {\n if (typeof func !== \"function\") {\n throw new TypeError(errorMessage);\n }\n}\nfunction assertIsObject(object, errorMessage = `expected an object, instead received ${typeof object}`) {\n if (typeof object !== \"object\") {\n throw new TypeError(errorMessage);\n }\n}\nfunction assertIsArrayOfFunctions(array, errorMessage = `expected all items to be functions, instead received the following types: `) {\n if (!array.every((item) => typeof item === \"function\")) {\n const itemTypes = array.map(\n (item) => typeof item === \"function\" ? `function ${item.name || \"unnamed\"}()` : typeof item\n ).join(\", \");\n throw new TypeError(`${errorMessage}[${itemTypes}]`);\n }\n}\nvar ensureIsArray = (item) => {\n return Array.isArray(item) ? item : [item];\n};\nfunction getDependencies(createSelectorArgs) {\n const dependencies = Array.isArray(createSelectorArgs[0]) ? createSelectorArgs[0] : createSelectorArgs;\n assertIsArrayOfFunctions(\n dependencies,\n `createSelector expects all input-selectors to be functions, but received the following types: `\n );\n return dependencies;\n}\nfunction collectInputSelectorResults(dependencies, inputSelectorArgs) {\n const inputSelectorResults = [];\n const { length } = dependencies;\n for (let i = 0; i < length; i++) {\n inputSelectorResults.push(dependencies[i].apply(null, inputSelectorArgs));\n }\n return inputSelectorResults;\n}\nvar getDevModeChecksExecutionInfo = (firstRun, devModeChecks) => {\n const { identityFunctionCheck, inputStabilityCheck } = {\n ...globalDevModeChecks,\n ...devModeChecks\n };\n return {\n identityFunctionCheck: {\n shouldRun: identityFunctionCheck === \"always\" || identityFunctionCheck === \"once\" && firstRun,\n run: runIdentityFunctionCheck\n },\n inputStabilityCheck: {\n shouldRun: inputStabilityCheck === \"always\" || inputStabilityCheck === \"once\" && firstRun,\n run: runInputStabilityCheck\n }\n };\n};\n\n// src/autotrackMemoize/autotracking.ts\nvar $REVISION = 0;\nvar CURRENT_TRACKER = null;\nvar Cell = class {\n revision = $REVISION;\n _value;\n _lastValue;\n _isEqual = tripleEq;\n constructor(initialValue, isEqual = tripleEq) {\n this._value = this._lastValue = initialValue;\n this._isEqual = isEqual;\n }\n // Whenever a storage value is read, it'll add itself to the current tracker if\n // one exists, entangling its state with that cache.\n get value() {\n CURRENT_TRACKER?.add(this);\n return this._value;\n }\n // Whenever a storage value is updated, we bump the global revision clock,\n // assign the revision for this storage to the new value, _and_ we schedule a\n // rerender. This is important, and it's what makes autotracking _pull_\n // based. We don't actively tell the caches which depend on the storage that\n // anything has happened. Instead, we recompute the caches when needed.\n set value(newValue) {\n if (this.value === newValue)\n return;\n this._value = newValue;\n this.revision = ++$REVISION;\n }\n};\nfunction tripleEq(a, b) {\n return a === b;\n}\nvar TrackingCache = class {\n _cachedValue;\n _cachedRevision = -1;\n _deps = [];\n hits = 0;\n fn;\n constructor(fn) {\n this.fn = fn;\n }\n clear() {\n this._cachedValue = void 0;\n this._cachedRevision = -1;\n this._deps = [];\n this.hits = 0;\n }\n get value() {\n if (this.revision > this._cachedRevision) {\n const { fn } = this;\n const currentTracker = /* @__PURE__ */ new Set();\n const prevTracker = CURRENT_TRACKER;\n CURRENT_TRACKER = currentTracker;\n this._cachedValue = fn();\n CURRENT_TRACKER = prevTracker;\n this.hits++;\n this._deps = Array.from(currentTracker);\n this._cachedRevision = this.revision;\n }\n CURRENT_TRACKER?.add(this);\n return this._cachedValue;\n }\n get revision() {\n return Math.max(...this._deps.map((d) => d.revision), 0);\n }\n};\nfunction getValue(cell) {\n if (!(cell instanceof Cell)) {\n console.warn(\"Not a valid cell! \", cell);\n }\n return cell.value;\n}\nfunction setValue(storage, value) {\n if (!(storage instanceof Cell)) {\n throw new TypeError(\n \"setValue must be passed a tracked store created with `createStorage`.\"\n );\n }\n storage.value = storage._lastValue = value;\n}\nfunction createCell(initialValue, isEqual = tripleEq) {\n return new Cell(initialValue, isEqual);\n}\nfunction createCache(fn) {\n assertIsFunction(\n fn,\n \"the first parameter to `createCache` must be a function\"\n );\n return new TrackingCache(fn);\n}\n\n// src/autotrackMemoize/tracking.ts\nvar neverEq = (a, b) => false;\nfunction createTag() {\n return createCell(null, neverEq);\n}\nfunction dirtyTag(tag, value) {\n setValue(tag, value);\n}\nvar consumeCollection = (node) => {\n let tag = node.collectionTag;\n if (tag === null) {\n tag = node.collectionTag = createTag();\n }\n getValue(tag);\n};\nvar dirtyCollection = (node) => {\n const tag = node.collectionTag;\n if (tag !== null) {\n dirtyTag(tag, null);\n }\n};\n\n// src/autotrackMemoize/proxy.ts\nvar REDUX_PROXY_LABEL = Symbol();\nvar nextId = 0;\nvar proto = Object.getPrototypeOf({});\nvar ObjectTreeNode = class {\n constructor(value) {\n this.value = value;\n this.value = value;\n this.tag.value = value;\n }\n proxy = new Proxy(this, objectProxyHandler);\n tag = createTag();\n tags = {};\n children = {};\n collectionTag = null;\n id = nextId++;\n};\nvar objectProxyHandler = {\n get(node, key) {\n function calculateResult() {\n const { value } = node;\n const childValue = Reflect.get(value, key);\n if (typeof key === \"symbol\") {\n return childValue;\n }\n if (key in proto) {\n return childValue;\n }\n if (typeof childValue === \"object\" && childValue !== null) {\n let childNode = node.children[key];\n if (childNode === void 0) {\n childNode = node.children[key] = createNode(childValue);\n }\n if (childNode.tag) {\n getValue(childNode.tag);\n }\n return childNode.proxy;\n } else {\n let tag = node.tags[key];\n if (tag === void 0) {\n tag = node.tags[key] = createTag();\n tag.value = childValue;\n }\n getValue(tag);\n return childValue;\n }\n }\n const res = calculateResult();\n return res;\n },\n ownKeys(node) {\n consumeCollection(node);\n return Reflect.ownKeys(node.value);\n },\n getOwnPropertyDescriptor(node, prop) {\n return Reflect.getOwnPropertyDescriptor(node.value, prop);\n },\n has(node, prop) {\n return Reflect.has(node.value, prop);\n }\n};\nvar ArrayTreeNode = class {\n constructor(value) {\n this.value = value;\n this.value = value;\n this.tag.value = value;\n }\n proxy = new Proxy([this], arrayProxyHandler);\n tag = createTag();\n tags = {};\n children = {};\n collectionTag = null;\n id = nextId++;\n};\nvar arrayProxyHandler = {\n get([node], key) {\n if (key === \"length\") {\n consumeCollection(node);\n }\n return objectProxyHandler.get(node, key);\n },\n ownKeys([node]) {\n return objectProxyHandler.ownKeys(node);\n },\n getOwnPropertyDescriptor([node], prop) {\n return objectProxyHandler.getOwnPropertyDescriptor(node, prop);\n },\n has([node], prop) {\n return objectProxyHandler.has(node, prop);\n }\n};\nfunction createNode(value) {\n if (Array.isArray(value)) {\n return new ArrayTreeNode(value);\n }\n return new ObjectTreeNode(value);\n}\nfunction updateNode(node, newValue) {\n const { value, tags, children } = node;\n node.value = newValue;\n if (Array.isArray(value) && Array.isArray(newValue) && value.length !== newValue.length) {\n dirtyCollection(node);\n } else {\n if (value !== newValue) {\n let oldKeysSize = 0;\n let newKeysSize = 0;\n let anyKeysAdded = false;\n for (const _key in value) {\n oldKeysSize++;\n }\n for (const key in newValue) {\n newKeysSize++;\n if (!(key in value)) {\n anyKeysAdded = true;\n break;\n }\n }\n const isDifferent = anyKeysAdded || oldKeysSize !== newKeysSize;\n if (isDifferent) {\n dirtyCollection(node);\n }\n }\n }\n for (const key in tags) {\n const childValue = value[key];\n const newChildValue = newValue[key];\n if (childValue !== newChildValue) {\n dirtyCollection(node);\n dirtyTag(tags[key], newChildValue);\n }\n if (typeof newChildValue === \"object\" && newChildValue !== null) {\n delete tags[key];\n }\n }\n for (const key in children) {\n const childNode = children[key];\n const newChildValue = newValue[key];\n const childValue = childNode.value;\n if (childValue === newChildValue) {\n continue;\n } else if (typeof newChildValue === \"object\" && newChildValue !== null) {\n updateNode(childNode, newChildValue);\n } else {\n deleteNode(childNode);\n delete children[key];\n }\n }\n}\nfunction deleteNode(node) {\n if (node.tag) {\n dirtyTag(node.tag, null);\n }\n dirtyCollection(node);\n for (const key in node.tags) {\n dirtyTag(node.tags[key], null);\n }\n for (const key in node.children) {\n deleteNode(node.children[key]);\n }\n}\n\n// src/lruMemoize.ts\nfunction createSingletonCache(equals) {\n let entry;\n return {\n get(key) {\n if (entry && equals(entry.key, key)) {\n return entry.value;\n }\n return NOT_FOUND;\n },\n put(key, value) {\n entry = { key, value };\n },\n getEntries() {\n return entry ? [entry] : [];\n },\n clear() {\n entry = void 0;\n }\n };\n}\nfunction createLruCache(maxSize, equals) {\n let entries = [];\n function get(key) {\n const cacheIndex = entries.findIndex((entry) => equals(key, entry.key));\n if (cacheIndex > -1) {\n const entry = entries[cacheIndex];\n if (cacheIndex > 0) {\n entries.splice(cacheIndex, 1);\n entries.unshift(entry);\n }\n return entry.value;\n }\n return NOT_FOUND;\n }\n function put(key, value) {\n if (get(key) === NOT_FOUND) {\n entries.unshift({ key, value });\n if (entries.length > maxSize) {\n entries.pop();\n }\n }\n }\n function getEntries() {\n return entries;\n }\n function clear() {\n entries = [];\n }\n return { get, put, getEntries, clear };\n}\nvar referenceEqualityCheck = (a, b) => a === b;\nfunction createCacheKeyComparator(equalityCheck) {\n return function areArgumentsShallowlyEqual(prev, next) {\n if (prev === null || next === null || prev.length !== next.length) {\n return false;\n }\n const { length } = prev;\n for (let i = 0; i < length; i++) {\n if (!equalityCheck(prev[i], next[i])) {\n return false;\n }\n }\n return true;\n };\n}\nfunction lruMemoize(func, equalityCheckOrOptions) {\n const providedOptions = typeof equalityCheckOrOptions === \"object\" ? equalityCheckOrOptions : { equalityCheck: equalityCheckOrOptions };\n const {\n equalityCheck = referenceEqualityCheck,\n maxSize = 1,\n resultEqualityCheck\n } = providedOptions;\n const comparator = createCacheKeyComparator(equalityCheck);\n let resultsCount = 0;\n const cache = maxSize <= 1 ? createSingletonCache(comparator) : createLruCache(maxSize, comparator);\n function memoized() {\n let value = cache.get(arguments);\n if (value === NOT_FOUND) {\n value = func.apply(null, arguments);\n resultsCount++;\n if (resultEqualityCheck) {\n const entries = cache.getEntries();\n const matchingEntry = entries.find(\n (entry) => resultEqualityCheck(entry.value, value)\n );\n if (matchingEntry) {\n value = matchingEntry.value;\n resultsCount !== 0 && resultsCount--;\n }\n }\n cache.put(arguments, value);\n }\n return value;\n }\n memoized.clearCache = () => {\n cache.clear();\n memoized.resetResultsCount();\n };\n memoized.resultsCount = () => resultsCount;\n memoized.resetResultsCount = () => {\n resultsCount = 0;\n };\n return memoized;\n}\n\n// src/autotrackMemoize/autotrackMemoize.ts\nfunction autotrackMemoize(func) {\n const node = createNode(\n []\n );\n let lastArgs = null;\n const shallowEqual = createCacheKeyComparator(referenceEqualityCheck);\n const cache = createCache(() => {\n const res = func.apply(null, node.proxy);\n return res;\n });\n function memoized() {\n if (!shallowEqual(lastArgs, arguments)) {\n updateNode(node, arguments);\n lastArgs = arguments;\n }\n return cache.value;\n }\n memoized.clearCache = () => {\n return cache.clear();\n };\n return memoized;\n}\n\n// src/weakMapMemoize.ts\nvar StrongRef = class {\n constructor(value) {\n this.value = value;\n }\n deref() {\n return this.value;\n }\n};\nvar Ref = typeof WeakRef !== \"undefined\" ? WeakRef : StrongRef;\nvar UNTERMINATED = 0;\nvar TERMINATED = 1;\nfunction createCacheNode() {\n return {\n s: UNTERMINATED,\n v: void 0,\n o: null,\n p: null\n };\n}\nfunction weakMapMemoize(func, options = {}) {\n let fnNode = createCacheNode();\n const { resultEqualityCheck } = options;\n let lastResult;\n let resultsCount = 0;\n function memoized() {\n let cacheNode = fnNode;\n const { length } = arguments;\n for (let i = 0, l = length; i < l; i++) {\n const arg = arguments[i];\n if (typeof arg === \"function\" || typeof arg === \"object\" && arg !== null) {\n let objectCache = cacheNode.o;\n if (objectCache === null) {\n cacheNode.o = objectCache = /* @__PURE__ */ new WeakMap();\n }\n const objectNode = objectCache.get(arg);\n if (objectNode === void 0) {\n cacheNode = createCacheNode();\n objectCache.set(arg, cacheNode);\n } else {\n cacheNode = objectNode;\n }\n } else {\n let primitiveCache = cacheNode.p;\n if (primitiveCache === null) {\n cacheNode.p = primitiveCache = /* @__PURE__ */ new Map();\n }\n const primitiveNode = primitiveCache.get(arg);\n if (primitiveNode === void 0) {\n cacheNode = createCacheNode();\n primitiveCache.set(arg, cacheNode);\n } else {\n cacheNode = primitiveNode;\n }\n }\n }\n const terminatedNode = cacheNode;\n let result;\n if (cacheNode.s === TERMINATED) {\n result = cacheNode.v;\n } else {\n result = func.apply(null, arguments);\n resultsCount++;\n if (resultEqualityCheck) {\n const lastResultValue = lastResult?.deref?.() ?? lastResult;\n if (lastResultValue != null && resultEqualityCheck(lastResultValue, result)) {\n result = lastResultValue;\n resultsCount !== 0 && resultsCount--;\n }\n const needsWeakRef = typeof result === \"object\" && result !== null || typeof result === \"function\";\n lastResult = needsWeakRef ? new Ref(result) : result;\n }\n }\n terminatedNode.s = TERMINATED;\n terminatedNode.v = result;\n return result;\n }\n memoized.clearCache = () => {\n fnNode = createCacheNode();\n memoized.resetResultsCount();\n };\n memoized.resultsCount = () => resultsCount;\n memoized.resetResultsCount = () => {\n resultsCount = 0;\n };\n return memoized;\n}\n\n// src/createSelectorCreator.ts\nfunction createSelectorCreator(memoizeOrOptions, ...memoizeOptionsFromArgs) {\n const createSelectorCreatorOptions = typeof memoizeOrOptions === \"function\" ? {\n memoize: memoizeOrOptions,\n memoizeOptions: memoizeOptionsFromArgs\n } : memoizeOrOptions;\n const createSelector2 = (...createSelectorArgs) => {\n let recomputations = 0;\n let dependencyRecomputations = 0;\n let lastResult;\n let directlyPassedOptions = {};\n let resultFunc = createSelectorArgs.pop();\n if (typeof resultFunc === \"object\") {\n directlyPassedOptions = resultFunc;\n resultFunc = createSelectorArgs.pop();\n }\n assertIsFunction(\n resultFunc,\n `createSelector expects an output function after the inputs, but received: [${typeof resultFunc}]`\n );\n const combinedOptions = {\n ...createSelectorCreatorOptions,\n ...directlyPassedOptions\n };\n const {\n memoize,\n memoizeOptions = [],\n argsMemoize = weakMapMemoize,\n argsMemoizeOptions = [],\n devModeChecks = {}\n } = combinedOptions;\n const finalMemoizeOptions = ensureIsArray(memoizeOptions);\n const finalArgsMemoizeOptions = ensureIsArray(argsMemoizeOptions);\n const dependencies = getDependencies(createSelectorArgs);\n const memoizedResultFunc = memoize(function recomputationWrapper() {\n recomputations++;\n return resultFunc.apply(\n null,\n arguments\n );\n }, ...finalMemoizeOptions);\n let firstRun = true;\n const selector = argsMemoize(function dependenciesChecker() {\n dependencyRecomputations++;\n const inputSelectorResults = collectInputSelectorResults(\n dependencies,\n arguments\n );\n lastResult = memoizedResultFunc.apply(null, inputSelectorResults);\n if (process.env.NODE_ENV !== \"production\") {\n const { identityFunctionCheck, inputStabilityCheck } = getDevModeChecksExecutionInfo(firstRun, devModeChecks);\n if (identityFunctionCheck.shouldRun) {\n identityFunctionCheck.run(\n resultFunc,\n inputSelectorResults,\n lastResult\n );\n }\n if (inputStabilityCheck.shouldRun) {\n const inputSelectorResultsCopy = collectInputSelectorResults(\n dependencies,\n arguments\n );\n inputStabilityCheck.run(\n { inputSelectorResults, inputSelectorResultsCopy },\n { memoize, memoizeOptions: finalMemoizeOptions },\n arguments\n );\n }\n if (firstRun)\n firstRun = false;\n }\n return lastResult;\n }, ...finalArgsMemoizeOptions);\n return Object.assign(selector, {\n resultFunc,\n memoizedResultFunc,\n dependencies,\n dependencyRecomputations: () => dependencyRecomputations,\n resetDependencyRecomputations: () => {\n dependencyRecomputations = 0;\n },\n lastResult: () => lastResult,\n recomputations: () => recomputations,\n resetRecomputations: () => {\n recomputations = 0;\n },\n memoize,\n argsMemoize\n });\n };\n Object.assign(createSelector2, {\n withTypes: () => createSelector2\n });\n return createSelector2;\n}\nvar createSelector = /* @__PURE__ */ createSelectorCreator(weakMapMemoize);\n\n// src/createStructuredSelector.ts\nvar createStructuredSelector = Object.assign(\n (inputSelectorsObject, selectorCreator = createSelector) => {\n assertIsObject(\n inputSelectorsObject,\n `createStructuredSelector expects first argument to be an object where each property is a selector, instead received a ${typeof inputSelectorsObject}`\n );\n const inputSelectorKeys = Object.keys(inputSelectorsObject);\n const dependencies = inputSelectorKeys.map(\n (key) => inputSelectorsObject[key]\n );\n const structuredSelector = selectorCreator(\n dependencies,\n (...inputSelectorResults) => {\n return inputSelectorResults.reduce((composition, value, index) => {\n composition[inputSelectorKeys[index]] = value;\n return composition;\n }, {});\n }\n );\n return structuredSelector;\n },\n { withTypes: () => createStructuredSelector }\n);\nexport {\n createSelector,\n createSelectorCreator,\n createStructuredSelector,\n lruMemoize,\n referenceEqualityCheck,\n setGlobalDevModeChecks,\n autotrackMemoize as unstable_autotrackMemoize,\n weakMapMemoize\n};\n//# sourceMappingURL=reselect.mjs.map","import _formatErrorMessage from \"../formatErrorMessage.js\";\nimport { lruMemoize, createSelectorCreator } from 'reselect';\n\n/* eslint-disable no-underscore-dangle */ // __cacheKey__\n\nconst reselectCreateSelector = createSelectorCreator({\n memoize: lruMemoize,\n memoizeOptions: {\n maxSize: 1,\n equalityCheck: Object.is\n }\n});\n/**\n * Creates a selector function that can be used to derive values from the store's state.\n * The selector can take up to three additional arguments that can be used in the selector logic.\n * This function accepts up to six functions and combines them into a single selector function.\n * The last parameter is the combiner function that combines the results of the previous selectors.\n *\n * @example\n * const selector = createSelector(\n * (state) => state.disabled\n * );\n *\n * @example\n * const selector = createSelector(\n * (state) => state.disabled,\n * (state) => state.open,\n * (disabled, open) => ({ disabled, open })\n * );\n *\n */\n/* eslint-disable id-denylist */\nexport const createSelector = (a, b, c, d, e, f, ...other) => {\n if (other.length > 0) {\n throw new Error(process.env.NODE_ENV !== \"production\" ? 'Unsupported number of selectors' : _formatErrorMessage(1));\n }\n let selector;\n if (a && b && c && d && e && f) {\n selector = (state, a1, a2, a3) => {\n const va = a(state, a1, a2, a3);\n const vb = b(state, a1, a2, a3);\n const vc = c(state, a1, a2, a3);\n const vd = d(state, a1, a2, a3);\n const ve = e(state, a1, a2, a3);\n return f(va, vb, vc, vd, ve, a1, a2, a3);\n };\n } else if (a && b && c && d && e) {\n selector = (state, a1, a2, a3) => {\n const va = a(state, a1, a2, a3);\n const vb = b(state, a1, a2, a3);\n const vc = c(state, a1, a2, a3);\n const vd = d(state, a1, a2, a3);\n return e(va, vb, vc, vd, a1, a2, a3);\n };\n } else if (a && b && c && d) {\n selector = (state, a1, a2, a3) => {\n const va = a(state, a1, a2, a3);\n const vb = b(state, a1, a2, a3);\n const vc = c(state, a1, a2, a3);\n return d(va, vb, vc, a1, a2, a3);\n };\n } else if (a && b && c) {\n selector = (state, a1, a2, a3) => {\n const va = a(state, a1, a2, a3);\n const vb = b(state, a1, a2, a3);\n return c(va, vb, a1, a2, a3);\n };\n } else if (a && b) {\n selector = (state, a1, a2, a3) => {\n const va = a(state, a1, a2, a3);\n return b(va, a1, a2, a3);\n };\n } else if (a) {\n selector = a;\n } else {\n throw /* minify-error-disabled */new Error('Missing arguments');\n }\n return selector;\n};\n/* eslint-enable id-denylist */\n\nexport const createSelectorMemoized = (...selectors) => {\n const cache = new WeakMap();\n let nextCacheId = 1;\n const combiner = selectors[selectors.length - 1];\n const nSelectors = selectors.length - 1 || 1;\n // (s1, s2, ..., sN, a1, a2, a3) => { ... }\n const argsLength = combiner.length - nSelectors;\n if (argsLength > 3) {\n throw new Error(process.env.NODE_ENV !== \"production\" ? 'Unsupported number of arguments' : _formatErrorMessage(2));\n }\n const selector = (state, a1, a2, a3) => {\n let cacheKey = state.__cacheKey__;\n if (!cacheKey) {\n cacheKey = {\n id: nextCacheId\n };\n state.__cacheKey__ = cacheKey;\n nextCacheId += 1;\n }\n let fn = cache.get(cacheKey);\n if (!fn) {\n let reselectArgs = selectors;\n const selectorArgs = [undefined, undefined, undefined];\n switch (argsLength) {\n case 0:\n break;\n case 1:\n {\n reselectArgs = [...selectors.slice(0, -1), () => selectorArgs[0], combiner];\n break;\n }\n case 2:\n {\n reselectArgs = [...selectors.slice(0, -1), () => selectorArgs[0], () => selectorArgs[1], combiner];\n break;\n }\n case 3:\n {\n reselectArgs = [...selectors.slice(0, -1), () => selectorArgs[0], () => selectorArgs[1], () => selectorArgs[2], combiner];\n break;\n }\n default:\n throw new Error(process.env.NODE_ENV !== \"production\" ? 'Unsupported number of arguments' : _formatErrorMessage(2));\n }\n fn = reselectCreateSelector(...reselectArgs);\n fn.selectorArgs = selectorArgs;\n cache.set(cacheKey, fn);\n }\n fn.selectorArgs[0] = a1;\n fn.selectorArgs[1] = a2;\n fn.selectorArgs[2] = a3;\n\n // prettier-ignore\n switch (argsLength) {\n case 0:\n return fn(state);\n case 1:\n return fn(state, a1);\n case 2:\n return fn(state, a1, a2);\n case 3:\n return fn(state, a1, a2, a3);\n default:\n throw /* minify-error-disabled */new Error('unreachable');\n }\n };\n return selector;\n};","/**\n * @license React\n * use-sync-external-store-shim.production.js\n *\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\"use strict\";\nvar React = require(\"react\");\nfunction is(x, y) {\n return (x === y && (0 !== x || 1 / x === 1 / y)) || (x !== x && y !== y);\n}\nvar objectIs = \"function\" === typeof Object.is ? Object.is : is,\n useState = React.useState,\n useEffect = React.useEffect,\n useLayoutEffect = React.useLayoutEffect,\n useDebugValue = React.useDebugValue;\nfunction useSyncExternalStore$2(subscribe, getSnapshot) {\n var value = getSnapshot(),\n _useState = useState({ inst: { value: value, getSnapshot: getSnapshot } }),\n inst = _useState[0].inst,\n forceUpdate = _useState[1];\n useLayoutEffect(\n function () {\n inst.value = value;\n inst.getSnapshot = getSnapshot;\n checkIfSnapshotChanged(inst) && forceUpdate({ inst: inst });\n },\n [subscribe, value, getSnapshot]\n );\n useEffect(\n function () {\n checkIfSnapshotChanged(inst) && forceUpdate({ inst: inst });\n return subscribe(function () {\n checkIfSnapshotChanged(inst) && forceUpdate({ inst: inst });\n });\n },\n [subscribe]\n );\n useDebugValue(value);\n return value;\n}\nfunction checkIfSnapshotChanged(inst) {\n var latestGetSnapshot = inst.getSnapshot;\n inst = inst.value;\n try {\n var nextValue = latestGetSnapshot();\n return !objectIs(inst, nextValue);\n } catch (error) {\n return !0;\n }\n}\nfunction useSyncExternalStore$1(subscribe, getSnapshot) {\n return getSnapshot();\n}\nvar shim =\n \"undefined\" === typeof window ||\n \"undefined\" === typeof window.document ||\n \"undefined\" === typeof window.document.createElement\n ? useSyncExternalStore$1\n : useSyncExternalStore$2;\nexports.useSyncExternalStore =\n void 0 !== React.useSyncExternalStore ? React.useSyncExternalStore : shim;\n","/**\n * @license React\n * use-sync-external-store-shim.development.js\n *\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\"use strict\";\n\"production\" !== process.env.NODE_ENV &&\n (function () {\n function is(x, y) {\n return (x === y && (0 !== x || 1 / x === 1 / y)) || (x !== x && y !== y);\n }\n function useSyncExternalStore$2(subscribe, getSnapshot) {\n didWarnOld18Alpha ||\n void 0 === React.startTransition ||\n ((didWarnOld18Alpha = !0),\n console.error(\n \"You are using an outdated, pre-release alpha of React 18 that does not support useSyncExternalStore. The use-sync-external-store shim will not work correctly. Upgrade to a newer pre-release.\"\n ));\n var value = getSnapshot();\n if (!didWarnUncachedGetSnapshot) {\n var cachedValue = getSnapshot();\n objectIs(value, cachedValue) ||\n (console.error(\n \"The result of getSnapshot should be cached to avoid an infinite loop\"\n ),\n (didWarnUncachedGetSnapshot = !0));\n }\n cachedValue = useState({\n inst: { value: value, getSnapshot: getSnapshot }\n });\n var inst = cachedValue[0].inst,\n forceUpdate = cachedValue[1];\n useLayoutEffect(\n function () {\n inst.value = value;\n inst.getSnapshot = getSnapshot;\n checkIfSnapshotChanged(inst) && forceUpdate({ inst: inst });\n },\n [subscribe, value, getSnapshot]\n );\n useEffect(\n function () {\n checkIfSnapshotChanged(inst) && forceUpdate({ inst: inst });\n return subscribe(function () {\n checkIfSnapshotChanged(inst) && forceUpdate({ inst: inst });\n });\n },\n [subscribe]\n );\n useDebugValue(value);\n return value;\n }\n function checkIfSnapshotChanged(inst) {\n var latestGetSnapshot = inst.getSnapshot;\n inst = inst.value;\n try {\n var nextValue = latestGetSnapshot();\n return !objectIs(inst, nextValue);\n } catch (error) {\n return !0;\n }\n }\n function useSyncExternalStore$1(subscribe, getSnapshot) {\n return getSnapshot();\n }\n \"undefined\" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ &&\n \"function\" ===\n typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart &&\n __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(Error());\n var React = require(\"react\"),\n objectIs = \"function\" === typeof Object.is ? Object.is : is,\n useState = React.useState,\n useEffect = React.useEffect,\n useLayoutEffect = React.useLayoutEffect,\n useDebugValue = React.useDebugValue,\n didWarnOld18Alpha = !1,\n didWarnUncachedGetSnapshot = !1,\n shim =\n \"undefined\" === typeof window ||\n \"undefined\" === typeof window.document ||\n \"undefined\" === typeof window.document.createElement\n ? useSyncExternalStore$1\n : useSyncExternalStore$2;\n exports.useSyncExternalStore =\n void 0 !== React.useSyncExternalStore ? React.useSyncExternalStore : shim;\n \"undefined\" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ &&\n \"function\" ===\n typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop &&\n __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(Error());\n })();\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('../cjs/use-sync-external-store-shim.production.js');\n} else {\n module.exports = require('../cjs/use-sync-external-store-shim.development.js');\n}\n","/**\n * @license React\n * use-sync-external-store-shim/with-selector.production.js\n *\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\"use strict\";\nvar React = require(\"react\"),\n shim = require(\"use-sync-external-store/shim\");\nfunction is(x, y) {\n return (x === y && (0 !== x || 1 / x === 1 / y)) || (x !== x && y !== y);\n}\nvar objectIs = \"function\" === typeof Object.is ? Object.is : is,\n useSyncExternalStore = shim.useSyncExternalStore,\n useRef = React.useRef,\n useEffect = React.useEffect,\n useMemo = React.useMemo,\n useDebugValue = React.useDebugValue;\nexports.useSyncExternalStoreWithSelector = function (\n subscribe,\n getSnapshot,\n getServerSnapshot,\n selector,\n isEqual\n) {\n var instRef = useRef(null);\n if (null === instRef.current) {\n var inst = { hasValue: !1, value: null };\n instRef.current = inst;\n } else inst = instRef.current;\n instRef = useMemo(\n function () {\n function memoizedSelector(nextSnapshot) {\n if (!hasMemo) {\n hasMemo = !0;\n memoizedSnapshot = nextSnapshot;\n nextSnapshot = selector(nextSnapshot);\n if (void 0 !== isEqual && inst.hasValue) {\n var currentSelection = inst.value;\n if (isEqual(currentSelection, nextSnapshot))\n return (memoizedSelection = currentSelection);\n }\n return (memoizedSelection = nextSnapshot);\n }\n currentSelection = memoizedSelection;\n if (objectIs(memoizedSnapshot, nextSnapshot)) return currentSelection;\n var nextSelection = selector(nextSnapshot);\n if (void 0 !== isEqual && isEqual(currentSelection, nextSelection))\n return (memoizedSnapshot = nextSnapshot), currentSelection;\n memoizedSnapshot = nextSnapshot;\n return (memoizedSelection = nextSelection);\n }\n var hasMemo = !1,\n memoizedSnapshot,\n memoizedSelection,\n maybeGetServerSnapshot =\n void 0 === getServerSnapshot ? null : getServerSnapshot;\n return [\n function () {\n return memoizedSelector(getSnapshot());\n },\n null === maybeGetServerSnapshot\n ? void 0\n : function () {\n return memoizedSelector(maybeGetServerSnapshot());\n }\n ];\n },\n [getSnapshot, getServerSnapshot, selector, isEqual]\n );\n var value = useSyncExternalStore(subscribe, instRef[0], instRef[1]);\n useEffect(\n function () {\n inst.hasValue = !0;\n inst.value = value;\n },\n [value]\n );\n useDebugValue(value);\n return value;\n};\n","/**\n * @license React\n * use-sync-external-store-shim/with-selector.development.js\n *\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\"use strict\";\n\"production\" !== process.env.NODE_ENV &&\n (function () {\n function is(x, y) {\n return (x === y && (0 !== x || 1 / x === 1 / y)) || (x !== x && y !== y);\n }\n \"undefined\" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ &&\n \"function\" ===\n typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart &&\n __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(Error());\n var React = require(\"react\"),\n shim = require(\"use-sync-external-store/shim\"),\n objectIs = \"function\" === typeof Object.is ? Object.is : is,\n useSyncExternalStore = shim.useSyncExternalStore,\n useRef = React.useRef,\n useEffect = React.useEffect,\n useMemo = React.useMemo,\n useDebugValue = React.useDebugValue;\n exports.useSyncExternalStoreWithSelector = function (\n subscribe,\n getSnapshot,\n getServerSnapshot,\n selector,\n isEqual\n ) {\n var instRef = useRef(null);\n if (null === instRef.current) {\n var inst = { hasValue: !1, value: null };\n instRef.current = inst;\n } else inst = instRef.current;\n instRef = useMemo(\n function () {\n function memoizedSelector(nextSnapshot) {\n if (!hasMemo) {\n hasMemo = !0;\n memoizedSnapshot = nextSnapshot;\n nextSnapshot = selector(nextSnapshot);\n if (void 0 !== isEqual && inst.hasValue) {\n var currentSelection = inst.value;\n if (isEqual(currentSelection, nextSnapshot))\n return (memoizedSelection = currentSelection);\n }\n return (memoizedSelection = nextSnapshot);\n }\n currentSelection = memoizedSelection;\n if (objectIs(memoizedSnapshot, nextSnapshot))\n return currentSelection;\n var nextSelection = selector(nextSnapshot);\n if (void 0 !== isEqual && isEqual(currentSelection, nextSelection))\n return (memoizedSnapshot = nextSnapshot), currentSelection;\n memoizedSnapshot = nextSnapshot;\n return (memoizedSelection = nextSelection);\n }\n var hasMemo = !1,\n memoizedSnapshot,\n memoizedSelection,\n maybeGetServerSnapshot =\n void 0 === getServerSnapshot ? null : getServerSnapshot;\n return [\n function () {\n return memoizedSelector(getSnapshot());\n },\n null === maybeGetServerSnapshot\n ? void 0\n : function () {\n return memoizedSelector(maybeGetServerSnapshot());\n }\n ];\n },\n [getSnapshot, getServerSnapshot, selector, isEqual]\n );\n var value = useSyncExternalStore(subscribe, instRef[0], instRef[1]);\n useEffect(\n function () {\n inst.hasValue = !0;\n inst.value = value;\n },\n [value]\n );\n useDebugValue(value);\n return value;\n };\n \"undefined\" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ &&\n \"function\" ===\n typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop &&\n __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(Error());\n })();\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('../cjs/use-sync-external-store-shim/with-selector.production.js');\n} else {\n module.exports = require('../cjs/use-sync-external-store-shim/with-selector.development.js');\n}\n","import * as React from 'react';\nimport { useRefWithInit } from \"./useRefWithInit.js\";\nconst hooks = [];\nlet currentInstance = undefined;\nexport function getInstance() {\n return currentInstance;\n}\nexport function setInstance(instance) {\n currentInstance = instance;\n}\nexport function register(hook) {\n hooks.push(hook);\n}\nexport function fastComponent(fn) {\n const FastComponent = (props, forwardedRef) => {\n const instance = useRefWithInit(createInstance).current;\n let result;\n try {\n currentInstance = instance;\n for (const hook of hooks) {\n hook.before(instance);\n }\n result = fn(props, forwardedRef);\n for (const hook of hooks) {\n hook.after(instance);\n }\n instance.didInitialize = true;\n } finally {\n currentInstance = undefined;\n }\n return result;\n };\n FastComponent.displayName = fn.displayName || fn.name;\n return FastComponent;\n}\nexport function fastComponentRef(fn) {\n return /*#__PURE__*/React.forwardRef(fastComponent(fn));\n}\nfunction createInstance() {\n return {\n didInitialize: false\n };\n}","import * as React from 'react';\n/* We need to import the shim because React 17 does not support the `useSyncExternalStore` API.\n * More info: https://github.com/mui/mui-x/issues/18303#issuecomment-2958392341 */\nimport { useSyncExternalStore } from 'use-sync-external-store/shim';\nimport { useSyncExternalStoreWithSelector } from 'use-sync-external-store/shim/with-selector';\nimport { isReactVersionAtLeast } from \"../reactVersion.js\";\nimport { register, getInstance } from \"../fastHooks.js\";\n/* Some tests fail in R18 with the raw useSyncExternalStore. It may be possible to make it work\n * but for now we only enable it for R19+. */\nconst canUseRawUseSyncExternalStore = isReactVersionAtLeast(19);\nconst useStoreImplementation = canUseRawUseSyncExternalStore ? useStoreFast : useStoreLegacy;\nexport function useStore(store, selector, a1, a2, a3) {\n return useStoreImplementation(store, selector, a1, a2, a3);\n}\nfunction useStoreR19(store, selector, a1, a2, a3) {\n const getSelection = React.useCallback(() => selector(store.getSnapshot(), a1, a2, a3), [store, selector, a1, a2, a3]);\n return useSyncExternalStore(store.subscribe, getSelection, getSelection);\n}\nregister({\n before(instance) {\n instance.syncIndex = 0;\n if (!instance.didInitialize) {\n instance.syncTick = 1;\n instance.syncHooks = [];\n instance.didChangeStore = true;\n instance.getSnapshot = () => {\n let didChange = false;\n for (let i = 0; i < instance.syncHooks.length; i += 1) {\n const hook = instance.syncHooks[i];\n const value = hook.selector(hook.store.state, hook.a1, hook.a2, hook.a3);\n if (hook.didChange || !Object.is(hook.value, value)) {\n didChange = true;\n hook.value = value;\n hook.didChange = false;\n }\n }\n if (didChange) {\n instance.syncTick += 1;\n }\n return instance.syncTick;\n };\n }\n },\n after(instance) {\n if (instance.syncHooks.length > 0) {\n if (instance.didChangeStore) {\n instance.didChangeStore = false;\n instance.subscribe = onStoreChange => {\n const stores = new Set();\n for (const hook of instance.syncHooks) {\n stores.add(hook.store);\n }\n const unsubscribes = [];\n for (const store of stores) {\n unsubscribes.push(store.subscribe(onStoreChange));\n }\n return () => {\n for (const unsubscribe of unsubscribes) {\n unsubscribe();\n }\n };\n };\n }\n // eslint-disable-next-line react-hooks/rules-of-hooks\n useSyncExternalStore(instance.subscribe, instance.getSnapshot, instance.getSnapshot);\n }\n }\n});\nfunction useStoreFast(store, selector, a1, a2, a3) {\n const instance = getInstance();\n if (!instance) {\n // eslint-disable-next-line react-hooks/rules-of-hooks\n return useStoreR19(store, selector, a1, a2, a3);\n }\n const index = instance.syncIndex;\n instance.syncIndex += 1;\n let hook;\n if (!instance.didInitialize) {\n hook = {\n store,\n selector,\n a1,\n a2,\n a3,\n value: selector(store.getSnapshot(), a1, a2, a3),\n didChange: false\n };\n instance.syncHooks.push(hook);\n } else {\n hook = instance.syncHooks[index];\n if (hook.store !== store || hook.selector !== selector || !Object.is(hook.a1, a1) || !Object.is(hook.a2, a2) || !Object.is(hook.a3, a3)) {\n if (hook.store !== store) {\n instance.didChangeStore = true;\n }\n hook.store = store;\n hook.selector = selector;\n hook.a1 = a1;\n hook.a2 = a2;\n hook.a3 = a3;\n hook.didChange = true;\n }\n }\n return hook.value;\n}\nfunction useStoreLegacy(store, selector, a1, a2, a3) {\n return useSyncExternalStoreWithSelector(store.subscribe, store.getSnapshot, store.getSnapshot, state => selector(state, a1, a2, a3));\n}","import { useStore } from \"./useStore.js\";\n/**\n * A data store implementation that allows subscribing to state changes and updating the state.\n * It uses an observer pattern to notify subscribers when the state changes.\n */\nexport class Store {\n /**\n * The current state of the store.\n * This property is updated immediately when the state changes as a result of calling {@link setState}, {@link update}, or {@link set}.\n * To subscribe to state changes, use the {@link useState} method. The value returned by {@link useState} is updated after the component renders (similarly to React's useState).\n * The values can be used directly (to avoid subscribing to the store) in effects or event handlers.\n *\n * Do not modify properties in state directly. Instead, use the provided methods to ensure proper state management and listener notification.\n */\n\n // Internal state to handle recursive `setState()` calls\n\n constructor(state) {\n this.state = state;\n this.listeners = new Set();\n this.updateTick = 0;\n }\n\n /**\n * Registers a listener that will be called whenever the store's state changes.\n *\n * @param fn The listener function to be called on state changes.\n * @returns A function to unsubscribe the listener.\n */\n subscribe = fn => {\n this.listeners.add(fn);\n return () => {\n this.listeners.delete(fn);\n };\n };\n\n /**\n * Returns the current state of the store.\n */\n getSnapshot = () => {\n return this.state;\n };\n\n /**\n * Updates the entire store's state and notifies all registered listeners.\n *\n * @param newState The new state to set for the store.\n */\n setState(newState) {\n if (this.state === newState) {\n return;\n }\n this.state = newState;\n this.updateTick += 1;\n const currentTick = this.updateTick;\n for (const listener of this.listeners) {\n if (currentTick !== this.updateTick) {\n // If the tick has changed, a recursive `setState` call has been made,\n // and it has already notified all listeners.\n return;\n }\n listener(newState);\n }\n }\n\n /**\n * Merges the provided changes into the current state and notifies listeners if there are changes.\n *\n * @param changes An object containing the changes to apply to the current state.\n */\n update(changes) {\n for (const key in changes) {\n if (!Object.is(this.state[key], changes[key])) {\n this.setState({\n ...this.state,\n ...changes\n });\n return;\n }\n }\n }\n\n /**\n * Sets a specific key in the store's state to a new value and notifies listeners if the value has changed.\n *\n * @param key The key in the store's state to update.\n * @param value The new value to set for the specified key.\n */\n set(key, value) {\n if (!Object.is(this.state[key], value)) {\n this.setState({\n ...this.state,\n [key]: value\n });\n }\n }\n\n /**\n * Gives the state a new reference and updates all registered listeners.\n */\n notifyAll() {\n const newState = {\n ...this.state\n };\n this.setState(newState);\n }\n use(selector, a1, a2, a3) {\n // eslint-disable-next-line react-hooks/rules-of-hooks\n return useStore(this, selector, a1, a2, a3);\n }\n}","/* False positives - ESLint thinks we're calling a hook from a class component. */\n/* eslint-disable react-hooks/rules-of-hooks */\n'use client';\n\nimport * as React from 'react';\nimport { Store } from \"./Store.js\";\nimport { useStore } from \"./useStore.js\";\nimport { useStableCallback } from \"../useStableCallback.js\";\nimport { useIsoLayoutEffect } from \"../useIsoLayoutEffect.js\";\nimport { NOOP } from \"../empty.js\";\n\n/**\n * A Store that supports controlled state keys, non-reactive values and provides utility methods for React.\n */\nexport class ReactStore extends Store {\n /**\n * Creates a new ReactStore instance.\n *\n * @param state Initial state of the store.\n * @param context Non-reactive context values.\n * @param selectors Optional selectors for use with `useState`.\n */\n constructor(state, context = {}, selectors) {\n super(state);\n this.context = context;\n this.selectors = selectors;\n }\n\n /**\n * Non-reactive values such as refs, callbacks, etc.\n */\n\n /**\n * Synchronizes a single external value into the store.\n *\n * Note that the while the value in `state` is updated immediately, the value returned\n * by `useState` is updated before the next render (similarly to React's `useState`).\n */\n useSyncedValue(key, value) {\n React.useDebugValue(key);\n useIsoLayoutEffect(() => {\n if (this.state[key] !== value) {\n this.set(key, value);\n }\n }, [key, value]);\n }\n\n /**\n * Synchronizes a single external value into the store and\n * cleans it up (sets to `undefined`) on unmount.\n *\n * Note that the while the value in `state` is updated immediately, the value returned\n * by `useState` is updated before the next render (similarly to React's `useState`).\n */\n useSyncedValueWithCleanup(key, value) {\n // eslint-disable-next-line consistent-this\n const store = this;\n useIsoLayoutEffect(() => {\n if (store.state[key] !== value) {\n store.set(key, value);\n }\n return () => {\n store.set(key, undefined);\n };\n }, [store, key, value]);\n }\n\n /**\n * Synchronizes multiple external values into the store.\n *\n * Note that the while the values in `state` are updated immediately, the values returned\n * by `useState` are updated before the next render (similarly to React's `useState`).\n */\n useSyncedValues(statePart) {\n // eslint-disable-next-line consistent-this\n const store = this;\n if (process.env.NODE_ENV !== 'production') {\n // Check that an object with the same shape is passed on every render\n React.useDebugValue(statePart, p => Object.keys(p));\n const keys = React.useRef(Object.keys(statePart)).current;\n const nextKeys = Object.keys(statePart);\n if (keys.length !== nextKeys.length || keys.some((key, index) => key !== nextKeys[index])) {\n console.error('ReactStore.useSyncedValues expects the same prop keys on every render. Keys should be stable.');\n }\n }\n const dependencies = Object.values(statePart);\n useIsoLayoutEffect(() => {\n store.update(statePart);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [store, ...dependencies]);\n }\n\n /**\n * Registers a controllable prop pair (`controlled`, `defaultValue`) for a specific key. If `controlled`\n * is non-undefined, the store's state at `key` is updated to match `controlled`.\n */\n useControlledProp(key, controlled) {\n React.useDebugValue(key);\n const isControlled = controlled !== undefined;\n useIsoLayoutEffect(() => {\n if (isControlled && !Object.is(this.state[key], controlled)) {\n // Set the internal state to match the controlled value.\n super.setState({\n ...this.state,\n [key]: controlled\n });\n }\n }, [key, controlled, isControlled]);\n if (process.env.NODE_ENV !== 'production') {\n // eslint-disable-next-line\n const cache = this.controlledValues ??= new Map();\n if (!cache.has(key)) {\n cache.set(key, isControlled);\n }\n const previouslyControlled = cache.get(key);\n if (previouslyControlled !== undefined && previouslyControlled !== isControlled) {\n console.error(`A component is changing the ${isControlled ? '' : 'un'}controlled state of ${key.toString()} to be ${isControlled ? 'un' : ''}controlled. Elements should not switch from uncontrolled to controlled (or vice versa).`);\n }\n }\n }\n\n /** Gets the current value from the store using a selector with the provided key.\n *\n * @param key Key of the selector to use.\n */\n\n select(key, a1, a2, a3) {\n const selector = this.selectors[key];\n return selector(this.state, a1, a2, a3);\n }\n\n /**\n * Returns a value from the store's state using a selector function.\n * Used to subscribe to specific parts of the state.\n * This methods causes a rerender whenever the selected state changes.\n *\n * @param key Key of the selector to use.\n */\n\n useState(key, a1, a2, a3) {\n React.useDebugValue(key);\n return useStore(this, this.selectors[key], a1, a2, a3);\n }\n\n /**\n * Wraps a function with `useStableCallback` to ensure it has a stable reference\n * and assigns it to the context.\n *\n * @param key Key of the event callback. Must be a function in the context.\n * @param fn Function to assign.\n */\n useContextCallback(key, fn) {\n React.useDebugValue(key);\n const stableFunction = useStableCallback(fn ?? NOOP);\n this.context[key] = stableFunction;\n }\n\n /**\n * Returns a stable setter function for a specific key in the store's state.\n * It's commonly used to pass as a ref callback to React elements.\n *\n * @param key Key of the state to set.\n */\n useStateSetter(key) {\n const ref = React.useRef(undefined);\n if (ref.current === undefined) {\n ref.current = value => {\n this.set(key, value);\n };\n }\n return ref.current;\n }\n\n /**\n * Observes changes derived from the store's selectors and calls the listener when the selected value changes.\n *\n * @param key Key of the selector to observe.\n * @param listener Listener function called when the selector result changes.\n */\n\n observe(selector, listener) {\n let selectFn;\n if (typeof selector === 'function') {\n selectFn = selector;\n } else {\n selectFn = this.selectors[selector];\n }\n let prevValue = selectFn(this.state);\n listener(prevValue, prevValue, this);\n return this.subscribe(nextState => {\n const nextValue = selectFn(nextState);\n if (!Object.is(prevValue, nextValue)) {\n const oldValue = prevValue;\n prevValue = nextValue;\n listener(nextValue, oldValue, this);\n }\n });\n }\n}","import { createSelector, ReactStore } from '@base-ui/utils/store';\nimport { createEventEmitter } from \"../utils/createEventEmitter.js\";\nimport { isClickLikeEvent } from \"../utils.js\";\nconst selectors = {\n open: createSelector(state => state.open),\n domReferenceElement: createSelector(state => state.domReferenceElement),\n referenceElement: createSelector(state => state.positionReference ?? state.referenceElement),\n floatingElement: createSelector(state => state.floatingElement),\n floatingId: createSelector(state => state.floatingId)\n};\nexport class FloatingRootStore extends ReactStore {\n constructor(options) {\n const {\n nested,\n noEmit,\n onOpenChange,\n triggerElements,\n ...initialState\n } = options;\n super({\n ...initialState,\n positionReference: initialState.referenceElement,\n domReferenceElement: initialState.referenceElement\n }, {\n onOpenChange,\n dataRef: {\n current: {}\n },\n events: createEventEmitter(),\n nested,\n noEmit,\n triggerElements\n }, selectors);\n }\n\n /**\n * Emits the `openchange` event through the internal event emitter and calls the `onOpenChange` handler with the provided arguments.\n *\n * @param newOpen The new open state.\n * @param eventDetails Details about the event that triggered the open state change.\n */\n setOpen = (newOpen, eventDetails) => {\n if (!newOpen || !this.state.open ||\n // Prevent a pending hover-open from overwriting a click-open event, while allowing\n // click events to upgrade a hover-open.\n isClickLikeEvent(eventDetails.event)) {\n this.context.dataRef.current.openEvent = newOpen ? eventDetails.event : undefined;\n }\n if (!this.context.noEmit) {\n const details = {\n open: newOpen,\n reason: eventDetails.reason,\n nativeEvent: eventDetails.event,\n nested: this.context.nested,\n triggerElement: eventDetails.trigger\n };\n this.context.events.emit('openchange', details);\n }\n this.context.onOpenChange?.(newOpen, eventDetails);\n };\n}","/**\n * Data structure to keep track of popup trigger elements by their IDs.\n * Uses both a set of Elements and a map of IDs to Elements for efficient lookups.\n */\nexport class PopupTriggerMap {\n constructor() {\n this.elementsSet = new Set();\n this.idMap = new Map();\n }\n\n /**\n * Adds a trigger element with the given ID.\n *\n * Note: The provided element is assumed to not be registered under multiple IDs.\n */\n add(id, element) {\n const existingElement = this.idMap.get(id);\n if (existingElement === element) {\n return;\n }\n if (existingElement !== undefined) {\n // We assume that the same element won't be registered under multiple ids.\n // This is safe considering how useTriggerRegistration is implemented.\n this.elementsSet.delete(existingElement);\n }\n this.elementsSet.add(element);\n this.idMap.set(id, element);\n if (process.env.NODE_ENV !== 'production') {\n if (this.elementsSet.size !== this.idMap.size) {\n throw new Error('Base UI: A trigger element cannot be registered under multiple IDs in PopupTriggerMap.');\n }\n }\n }\n\n /**\n * Removes the trigger element with the given ID.\n */\n delete(id) {\n const element = this.idMap.get(id);\n if (element) {\n this.elementsSet.delete(element);\n this.idMap.delete(id);\n }\n }\n\n /**\n * Whether the given element is registered as a trigger.\n */\n hasElement(element) {\n return this.elementsSet.has(element);\n }\n\n /**\n * Whether there is a registered trigger element matching the given predicate.\n */\n hasMatchingElement(predicate) {\n for (const element of this.elementsSet) {\n if (predicate(element)) {\n return true;\n }\n }\n return false;\n }\n\n /**\n * Returns the trigger element associated with the given ID, or undefined if no such element exists.\n */\n getById(id) {\n return this.idMap.get(id);\n }\n\n /**\n * Returns an iterable of all registered trigger entries, where each entry is a tuple of [id, element].\n */\n entries() {\n return this.idMap.entries();\n }\n\n /**\n * Returns an iterable of all registered trigger elements.\n */\n elements() {\n return this.elementsSet.values();\n }\n\n /**\n * Returns the number of registered trigger elements.\n */\n get size() {\n return this.idMap.size;\n }\n}","import * as React from 'react';\nimport { ACTIVE_KEY, FOCUSABLE_ATTRIBUTE, SELECTED_KEY } from \"../utils/constants.js\";\n/**\n * Merges an array of interaction hooks' props into prop getters, allowing\n * event handler functions to be composed together without overwriting one\n * another.\n * @see https://floating-ui.com/docs/useInteractions\n */\nexport function useInteractions(propsList = []) {\n const referenceDeps = propsList.map(key => key?.reference);\n const floatingDeps = propsList.map(key => key?.floating);\n const itemDeps = propsList.map(key => key?.item);\n const triggerDeps = propsList.map(key => key?.trigger);\n const getReferenceProps = React.useCallback(userProps => mergeProps(userProps, propsList, 'reference'),\n // eslint-disable-next-line react-hooks/exhaustive-deps\n referenceDeps);\n const getFloatingProps = React.useCallback(userProps => mergeProps(userProps, propsList, 'floating'),\n // eslint-disable-next-line react-hooks/exhaustive-deps\n floatingDeps);\n const getItemProps = React.useCallback(userProps => mergeProps(userProps, propsList, 'item'),\n // eslint-disable-next-line react-hooks/exhaustive-deps\n itemDeps);\n const getTriggerProps = React.useCallback(userProps => mergeProps(userProps, propsList, 'trigger'),\n // eslint-disable-next-line react-hooks/exhaustive-deps\n triggerDeps);\n return React.useMemo(() => ({\n getReferenceProps,\n getFloatingProps,\n getItemProps,\n getTriggerProps\n }), [getReferenceProps, getFloatingProps, getItemProps, getTriggerProps]);\n}\n\n/* eslint-disable guard-for-in */\n\nfunction mergeProps(userProps, propsList, elementKey) {\n const eventHandlers = new Map();\n const isItem = elementKey === 'item';\n const outputProps = {};\n if (elementKey === 'floating') {\n outputProps.tabIndex = -1;\n outputProps[FOCUSABLE_ATTRIBUTE] = '';\n }\n for (const key in userProps) {\n if (isItem && userProps) {\n if (key === ACTIVE_KEY || key === SELECTED_KEY) {\n continue;\n }\n }\n outputProps[key] = userProps[key];\n }\n for (let i = 0; i < propsList.length; i += 1) {\n let props;\n const propsOrGetProps = propsList[i]?.[elementKey];\n if (typeof propsOrGetProps === 'function') {\n props = userProps ? propsOrGetProps(userProps) : null;\n } else {\n props = propsOrGetProps;\n }\n if (!props) {\n continue;\n }\n mutablyMergeProps(outputProps, props, isItem, eventHandlers);\n }\n mutablyMergeProps(outputProps, userProps, isItem, eventHandlers);\n return outputProps;\n}\nfunction mutablyMergeProps(outputProps, props, isItem, eventHandlers) {\n for (const key in props) {\n const value = props[key];\n if (isItem && (key === ACTIVE_KEY || key === SELECTED_KEY)) {\n continue;\n }\n if (!key.startsWith('on')) {\n outputProps[key] = value;\n } else {\n if (!eventHandlers.has(key)) {\n eventHandlers.set(key, []);\n }\n if (typeof value === 'function') {\n eventHandlers.get(key)?.push(value);\n outputProps[key] = (...args) => {\n return eventHandlers.get(key)?.map(fn => fn(...args)).find(val => val !== undefined);\n };\n }\n }\n }\n}","import { TransitionStatusDataAttributes } from \"./stateAttributesMapping.js\";\nexport let CommonPopupDataAttributes = function (CommonPopupDataAttributes) {\n /**\n * Present when the popup is open.\n */\n CommonPopupDataAttributes[\"open\"] = \"data-open\";\n /**\n * Present when the popup is closed.\n */\n CommonPopupDataAttributes[\"closed\"] = \"data-closed\";\n /**\n * Present when the popup is animating in.\n */\n CommonPopupDataAttributes[CommonPopupDataAttributes[\"startingStyle\"] = TransitionStatusDataAttributes.startingStyle] = \"startingStyle\";\n /**\n * Present when the popup is animating out.\n */\n CommonPopupDataAttributes[CommonPopupDataAttributes[\"endingStyle\"] = TransitionStatusDataAttributes.endingStyle] = \"endingStyle\";\n /**\n * Present when the anchor is hidden.\n */\n CommonPopupDataAttributes[\"anchorHidden\"] = \"data-anchor-hidden\";\n /**\n * Indicates which side the popup is positioned relative to the trigger.\n * @type { 'top' | 'bottom' | 'left' | 'right' | 'inline-end' | 'inline-start'}\n */\n CommonPopupDataAttributes[\"side\"] = \"data-side\";\n /**\n * Indicates how the popup is aligned relative to specified side.\n * @type {'start' | 'center' | 'end'}\n */\n CommonPopupDataAttributes[\"align\"] = \"data-align\";\n return CommonPopupDataAttributes;\n}({});\nexport let CommonTriggerDataAttributes = /*#__PURE__*/function (CommonTriggerDataAttributes) {\n /**\n * Present when the popup is open.\n */\n CommonTriggerDataAttributes[\"popupOpen\"] = \"data-popup-open\";\n /**\n * Present when a pressable trigger is pressed.\n */\n CommonTriggerDataAttributes[\"pressed\"] = \"data-pressed\";\n return CommonTriggerDataAttributes;\n}({});\nconst TRIGGER_HOOK = {\n [CommonTriggerDataAttributes.popupOpen]: ''\n};\nconst PRESSABLE_TRIGGER_HOOK = {\n [CommonTriggerDataAttributes.popupOpen]: '',\n [CommonTriggerDataAttributes.pressed]: ''\n};\nconst POPUP_OPEN_HOOK = {\n [CommonPopupDataAttributes.open]: ''\n};\nconst POPUP_CLOSED_HOOK = {\n [CommonPopupDataAttributes.closed]: ''\n};\nconst ANCHOR_HIDDEN_HOOK = {\n [CommonPopupDataAttributes.anchorHidden]: ''\n};\nexport const triggerOpenStateMapping = {\n open(value) {\n if (value) {\n return TRIGGER_HOOK;\n }\n return null;\n }\n};\nexport const pressableTriggerOpenStateMapping = {\n open(value) {\n if (value) {\n return PRESSABLE_TRIGGER_HOOK;\n }\n return null;\n }\n};\nexport const popupStateMapping = {\n open(value) {\n if (value) {\n return POPUP_OPEN_HOOK;\n }\n return POPUP_CLOSED_HOOK;\n },\n anchorHidden(value) {\n if (value) {\n return ANCHOR_HIDDEN_HOOK;\n }\n return null;\n }\n};"],"names":["element","isContentEditable","getCandidates","hasTabIndex","getTabIndex","getSortOrderTabIndex","sortOrderedTabbables","isInput","isHiddenInput","isDetailsWithSummary","getCheckedRadio","isTabbableRadio","queryRadios","isRadio","isNonTabbableRadio","isNodeAttached","isZeroArea","isHidden","isDisabledFromFieldset","isNodeMatchingSelectorFocusable","isNodeMatchingSelectorTabbable","isShadowRootTabbable","tabbable","focusable","isTabbable","activeElement","ownerDocument","event","contains","React","FocusGuard","useIsoLayoutEffect","isSafari","_jsx","visuallyHidden","EMPTY_OBJECT","useId","useStableCallback","isNode","useRenderElement","ReactDOM","FloatingPortal","_jsxs","createChangeEventDetails","REASONS.focusOut","useRefWithInit","useTimeout","_a","isReactEvent","REASONS.escapeKey","Timeout","isWebKit","isEventTargetWithin","getTarget","isElement","isShadowRoot","isLastTraversableNode","getParentNode","isRootElement","isHTMLElement","getComputedStyle","REASONS.outsidePress","REASONS.triggerPress","createSelector","_formatErrorMessage","require$$0","shim","shimModule","require$$1","withSelectorModule","isReactVersionAtLeast","useSyncExternalStore","useSyncExternalStoreWithSelector","selectors","NOOP","isClickLikeEvent","FOCUSABLE_ATTRIBUTE","ACTIVE_KEY","SELECTED_KEY","CommonPopupDataAttributes","TransitionStatusDataAttributes","CommonTriggerDataAttributes"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26]}
|