@fluentui/react-menu 9.25.1 → 9.74.3-experimental.esm.20260709-49ee7a20cf.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +23 -2
- package/dist/index.d.cts +1046 -0
- package/lib/Menu.js +1 -1
- package/lib/Menu.js.map +1 -1
- package/lib/MenuDivider.js +1 -1
- package/lib/MenuDivider.js.map +1 -1
- package/lib/MenuGroup.js +1 -1
- package/lib/MenuGroup.js.map +1 -1
- package/lib/MenuGroupHeader.js +1 -1
- package/lib/MenuGroupHeader.js.map +1 -1
- package/lib/MenuItem.js +1 -1
- package/lib/MenuItem.js.map +1 -1
- package/lib/MenuItemCheckbox.js +1 -1
- package/lib/MenuItemCheckbox.js.map +1 -1
- package/lib/MenuItemLink.js +1 -1
- package/lib/MenuItemLink.js.map +1 -1
- package/lib/MenuItemRadio.js +1 -1
- package/lib/MenuItemRadio.js.map +1 -1
- package/lib/MenuItemSwitch.js +1 -1
- package/lib/MenuItemSwitch.js.map +1 -1
- package/lib/MenuList.js +1 -1
- package/lib/MenuList.js.map +1 -1
- package/lib/MenuPopover.js +1 -1
- package/lib/MenuPopover.js.map +1 -1
- package/lib/MenuSplitGroup.js +1 -1
- package/lib/MenuSplitGroup.js.map +1 -1
- package/lib/MenuTrigger.js +1 -1
- package/lib/MenuTrigger.js.map +1 -1
- package/lib/components/Menu/Menu.js +3 -3
- package/lib/components/Menu/Menu.js.map +1 -1
- package/lib/components/Menu/MenuSurfaceMotion.js +3 -3
- package/lib/components/Menu/index.js +4 -4
- package/lib/components/Menu/index.js.map +1 -1
- package/lib/components/Menu/renderMenu.js +4 -4
- package/lib/components/Menu/renderMenu.js.map +1 -1
- package/lib/components/Menu/useMenu.js +10 -10
- package/lib/components/Menu/useMenu.js.map +1 -1
- package/lib/components/Menu/useMenuContextValues.js +1 -1
- package/lib/components/MenuDivider/MenuDivider.js +5 -5
- package/lib/components/MenuDivider/MenuDivider.js.map +1 -1
- package/lib/components/MenuDivider/index.js +4 -4
- package/lib/components/MenuDivider/index.js.map +1 -1
- package/lib/components/MenuDivider/renderMenuDivider.js +1 -1
- package/lib/components/MenuDivider/useMenuDivider.js +1 -1
- package/lib/components/MenuDivider/useMenuDividerStyles.styles.js +2 -2
- package/lib/components/MenuDivider/useMenuDividerStyles.styles.js.map +1 -1
- package/lib/components/MenuDivider/useMenuDividerStyles.styles.raw.js +2 -2
- package/lib/components/MenuGroup/MenuGroup.js +6 -6
- package/lib/components/MenuGroup/MenuGroup.js.map +1 -1
- package/lib/components/MenuGroup/index.js +5 -5
- package/lib/components/MenuGroup/index.js.map +1 -1
- package/lib/components/MenuGroup/renderMenuGroup.js +2 -2
- package/lib/components/MenuGroup/renderMenuGroup.js.map +1 -1
- package/lib/components/MenuGroup/useMenuGroup.js +1 -1
- package/lib/components/MenuGroup/useMenuGroupContextValues.js +1 -1
- package/lib/components/MenuGroup/useMenuGroupStyles.styles.js +1 -1
- package/lib/components/MenuGroup/useMenuGroupStyles.styles.js.map +1 -1
- package/lib/components/MenuGroup/useMenuGroupStyles.styles.raw.js +1 -1
- package/lib/components/MenuGroupHeader/MenuGroupHeader.js +5 -5
- package/lib/components/MenuGroupHeader/MenuGroupHeader.js.map +1 -1
- package/lib/components/MenuGroupHeader/index.js +4 -4
- package/lib/components/MenuGroupHeader/index.js.map +1 -1
- package/lib/components/MenuGroupHeader/renderMenuGroupHeader.js +1 -1
- package/lib/components/MenuGroupHeader/useMenuGroupHeader.js +2 -2
- package/lib/components/MenuGroupHeader/useMenuGroupHeader.js.map +1 -1
- package/lib/components/MenuGroupHeader/useMenuGroupHeaderStyles.styles.js +2 -2
- package/lib/components/MenuGroupHeader/useMenuGroupHeaderStyles.styles.js.map +1 -1
- package/lib/components/MenuGroupHeader/useMenuGroupHeaderStyles.styles.raw.js +2 -2
- package/lib/components/MenuItem/MenuItem.js +5 -5
- package/lib/components/MenuItem/MenuItem.js.map +1 -1
- package/lib/components/MenuItem/index.js +5 -5
- package/lib/components/MenuItem/index.js.map +1 -1
- package/lib/components/MenuItem/renderMenuItem.js +1 -1
- package/lib/components/MenuItem/useCharacterSearch.js +1 -1
- package/lib/components/MenuItem/useCharacterSearch.js.map +1 -1
- package/lib/components/MenuItem/useMenuItem.js +4 -4
- package/lib/components/MenuItem/useMenuItem.js.map +1 -1
- package/lib/components/MenuItem/useMenuItemBase.js +10 -10
- package/lib/components/MenuItem/useMenuItemBase.js.map +1 -1
- package/lib/components/MenuItem/useMenuItemStyles.styles.js +5 -5
- package/lib/components/MenuItem/useMenuItemStyles.styles.js.map +1 -1
- package/lib/components/MenuItem/useMenuItemStyles.styles.raw.js +5 -5
- package/lib/components/MenuItem/useMenuItemStyles.styles.raw.js.map +1 -1
- package/lib/components/MenuItemCheckbox/MenuItemCheckbox.js +5 -5
- package/lib/components/MenuItemCheckbox/MenuItemCheckbox.js.map +1 -1
- package/lib/components/MenuItemCheckbox/index.js +4 -4
- package/lib/components/MenuItemCheckbox/index.js.map +1 -1
- package/lib/components/MenuItemCheckbox/renderMenuItemCheckbox.js +1 -1
- package/lib/components/MenuItemCheckbox/useMenuItemCheckbox.js +5 -5
- package/lib/components/MenuItemCheckbox/useMenuItemCheckbox.js.map +1 -1
- package/lib/components/MenuItemCheckbox/useMenuItemCheckboxStyles.styles.js +3 -3
- package/lib/components/MenuItemCheckbox/useMenuItemCheckboxStyles.styles.js.map +1 -1
- package/lib/components/MenuItemCheckbox/useMenuItemCheckboxStyles.styles.raw.js +3 -3
- package/lib/components/MenuItemCheckbox/useMenuItemCheckboxStyles.styles.raw.js.map +1 -1
- package/lib/components/MenuItemLink/MenuItemLink.js +5 -5
- package/lib/components/MenuItemLink/MenuItemLink.js.map +1 -1
- package/lib/components/MenuItemLink/index.js +4 -4
- package/lib/components/MenuItemLink/index.js.map +1 -1
- package/lib/components/MenuItemLink/renderMenuItemLink.js +1 -1
- package/lib/components/MenuItemLink/useMenuItemLink.js +3 -3
- package/lib/components/MenuItemLink/useMenuItemLink.js.map +1 -1
- package/lib/components/MenuItemLink/useMenuItemLinkStyles.styles.js +2 -2
- package/lib/components/MenuItemLink/useMenuItemLinkStyles.styles.js.map +1 -1
- package/lib/components/MenuItemLink/useMenuItemLinkStyles.styles.raw.js +2 -2
- package/lib/components/MenuItemLink/useMenuItemLinkStyles.styles.raw.js.map +1 -1
- package/lib/components/MenuItemRadio/MenuItemRadio.js +5 -5
- package/lib/components/MenuItemRadio/MenuItemRadio.js.map +1 -1
- package/lib/components/MenuItemRadio/index.js +4 -4
- package/lib/components/MenuItemRadio/index.js.map +1 -1
- package/lib/components/MenuItemRadio/renderMenuItemRadio.js +1 -1
- package/lib/components/MenuItemRadio/useMenuItemRadio.js +5 -5
- package/lib/components/MenuItemRadio/useMenuItemRadio.js.map +1 -1
- package/lib/components/MenuItemRadio/useMenuItemRadioStyles.styles.js +3 -3
- package/lib/components/MenuItemRadio/useMenuItemRadioStyles.styles.js.map +1 -1
- package/lib/components/MenuItemRadio/useMenuItemRadioStyles.styles.raw.js +3 -3
- package/lib/components/MenuItemRadio/useMenuItemRadioStyles.styles.raw.js.map +1 -1
- package/lib/components/MenuItemSwitch/MenuItemSwitch.js +5 -5
- package/lib/components/MenuItemSwitch/MenuItemSwitch.js.map +1 -1
- package/lib/components/MenuItemSwitch/index.js +4 -4
- package/lib/components/MenuItemSwitch/index.js.map +1 -1
- package/lib/components/MenuItemSwitch/renderMenuItemSwitch.js +1 -1
- package/lib/components/MenuItemSwitch/useMenuItemSwitch.js +5 -5
- package/lib/components/MenuItemSwitch/useMenuItemSwitch.js.map +1 -1
- package/lib/components/MenuItemSwitch/useMenuItemSwitchStyles.styles.js +3 -3
- package/lib/components/MenuItemSwitch/useMenuItemSwitchStyles.styles.js.map +1 -1
- package/lib/components/MenuItemSwitch/useMenuItemSwitchStyles.styles.raw.js +3 -3
- package/lib/components/MenuItemSwitch/useMenuItemSwitchStyles.styles.raw.js.map +1 -1
- package/lib/components/MenuList/MenuList.js +6 -6
- package/lib/components/MenuList/MenuList.js.map +1 -1
- package/lib/components/MenuList/index.js +5 -5
- package/lib/components/MenuList/index.js.map +1 -1
- package/lib/components/MenuList/renderMenuList.js +2 -2
- package/lib/components/MenuList/renderMenuList.js.map +1 -1
- package/lib/components/MenuList/useMenuList.js +8 -8
- package/lib/components/MenuList/useMenuList.js.map +1 -1
- package/lib/components/MenuList/useMenuListContextValues.js +1 -1
- package/lib/components/MenuList/useMenuListStyles.styles.js +1 -1
- package/lib/components/MenuList/useMenuListStyles.styles.js.map +1 -1
- package/lib/components/MenuList/useMenuListStyles.styles.raw.js +1 -1
- package/lib/components/MenuPopover/MenuPopover.js +5 -5
- package/lib/components/MenuPopover/MenuPopover.js.map +1 -1
- package/lib/components/MenuPopover/index.js +4 -4
- package/lib/components/MenuPopover/index.js.map +1 -1
- package/lib/components/MenuPopover/renderMenuPopover.js +2 -2
- package/lib/components/MenuPopover/useMenuPopover.js +9 -9
- package/lib/components/MenuPopover/useMenuPopover.js.map +1 -1
- package/lib/components/MenuPopover/useMenuPopoverStyles.styles.js +2 -2
- package/lib/components/MenuPopover/useMenuPopoverStyles.styles.js.map +1 -1
- package/lib/components/MenuPopover/useMenuPopoverStyles.styles.raw.js +2 -2
- package/lib/components/MenuSplitGroup/MenuSplitGroup.js +6 -6
- package/lib/components/MenuSplitGroup/MenuSplitGroup.js.map +1 -1
- package/lib/components/MenuSplitGroup/index.js +4 -4
- package/lib/components/MenuSplitGroup/index.js.map +1 -1
- package/lib/components/MenuSplitGroup/renderMenuSplitGroup.js +2 -2
- package/lib/components/MenuSplitGroup/renderMenuSplitGroup.js.map +1 -1
- package/lib/components/MenuSplitGroup/useMenuSplitGroup.js +6 -6
- package/lib/components/MenuSplitGroup/useMenuSplitGroup.js.map +1 -1
- package/lib/components/MenuSplitGroup/useMenuSplitGroupContextValues.js +1 -1
- package/lib/components/MenuSplitGroup/useMenuSplitGroupStyles.styles.js +3 -3
- package/lib/components/MenuSplitGroup/useMenuSplitGroupStyles.styles.js.map +1 -1
- package/lib/components/MenuSplitGroup/useMenuSplitGroupStyles.styles.raw.js +3 -3
- package/lib/components/MenuSplitGroup/useMenuSplitGroupStyles.styles.raw.js.map +1 -1
- package/lib/components/MenuTrigger/MenuTrigger.js +2 -2
- package/lib/components/MenuTrigger/MenuTrigger.js.map +1 -1
- package/lib/components/MenuTrigger/index.js +3 -3
- package/lib/components/MenuTrigger/index.js.map +1 -1
- package/lib/components/MenuTrigger/renderMenuTrigger.js +2 -2
- package/lib/components/MenuTrigger/renderMenuTrigger.js.map +1 -1
- package/lib/components/MenuTrigger/useMenuTrigger.js +9 -9
- package/lib/components/MenuTrigger/useMenuTrigger.js.map +1 -1
- package/lib/components/index.js +2 -2
- package/lib/components/index.js.map +1 -1
- package/lib/contexts/menuContext.js +1 -1
- package/lib/contexts/menuGroupContext.js +1 -1
- package/lib/contexts/menuListContext.js +1 -1
- package/lib/contexts/menuSplitGroupContext.js +1 -1
- package/lib/contexts/menuTriggerContext.js +1 -1
- package/lib/index.js +19 -19
- package/lib/index.js.map +1 -1
- package/lib/selectable/index.js +1 -1
- package/lib/selectable/index.js.map +1 -1
- package/lib/selectable/useCheckmarkStyles.styles.js +1 -1
- package/lib/selectable/useCheckmarkStyles.styles.js.map +1 -1
- package/lib/selectable/useCheckmarkStyles.styles.raw.js +1 -1
- package/lib/utils/index.js +4 -4
- package/lib/utils/index.js.map +1 -1
- package/lib/utils/useIsSubmenu.js +3 -3
- package/lib/utils/useIsSubmenu.js.map +1 -1
- package/lib/utils/useOnMenuEnter.js +2 -2
- package/lib/utils/useOnMenuSafeZoneTimeout.js +1 -1
- package/lib/utils/useValidateNesting.js +3 -3
- package/lib/utils/useValidateNesting.js.map +1 -1
- package/lib-commonjs/{Menu.js → Menu.cjs} +1 -1
- package/lib-commonjs/{Menu.js.map → Menu.cjs.map} +1 -1
- package/lib-commonjs/{MenuDivider.js → MenuDivider.cjs} +1 -1
- package/lib-commonjs/{MenuDivider.js.map → MenuDivider.cjs.map} +1 -1
- package/lib-commonjs/{MenuGroup.js → MenuGroup.cjs} +1 -1
- package/lib-commonjs/{MenuGroup.js.map → MenuGroup.cjs.map} +1 -1
- package/lib-commonjs/{MenuGroupHeader.js → MenuGroupHeader.cjs} +1 -1
- package/lib-commonjs/{MenuGroupHeader.js.map → MenuGroupHeader.cjs.map} +1 -1
- package/lib-commonjs/{MenuItem.js → MenuItem.cjs} +1 -1
- package/lib-commonjs/{MenuItem.js.map → MenuItem.cjs.map} +1 -1
- package/lib-commonjs/{MenuItemCheckbox.js → MenuItemCheckbox.cjs} +1 -1
- package/lib-commonjs/{MenuItemCheckbox.js.map → MenuItemCheckbox.cjs.map} +1 -1
- package/lib-commonjs/{MenuItemLink.js → MenuItemLink.cjs} +1 -1
- package/lib-commonjs/{MenuItemLink.js.map → MenuItemLink.cjs.map} +1 -1
- package/lib-commonjs/{MenuItemRadio.js → MenuItemRadio.cjs} +1 -1
- package/lib-commonjs/{MenuItemRadio.js.map → MenuItemRadio.cjs.map} +1 -1
- package/lib-commonjs/{MenuItemSwitch.js → MenuItemSwitch.cjs} +1 -1
- package/lib-commonjs/{MenuItemSwitch.js.map → MenuItemSwitch.cjs.map} +1 -1
- package/lib-commonjs/{MenuList.js → MenuList.cjs} +1 -1
- package/lib-commonjs/{MenuList.js.map → MenuList.cjs.map} +1 -1
- package/lib-commonjs/{MenuPopover.js → MenuPopover.cjs} +1 -1
- package/lib-commonjs/{MenuPopover.js.map → MenuPopover.cjs.map} +1 -1
- package/lib-commonjs/{MenuSplitGroup.js → MenuSplitGroup.cjs} +1 -1
- package/lib-commonjs/{MenuSplitGroup.js.map → MenuSplitGroup.cjs.map} +1 -1
- package/lib-commonjs/{MenuTrigger.js → MenuTrigger.cjs} +1 -1
- package/lib-commonjs/{MenuTrigger.js.map → MenuTrigger.cjs.map} +1 -1
- package/lib-commonjs/components/Menu/{Menu.js → Menu.cjs} +3 -3
- package/lib-commonjs/components/Menu/{Menu.js.map → Menu.cjs.map} +1 -1
- package/lib-commonjs/components/Menu/{index.js → index.cjs} +4 -4
- package/lib-commonjs/components/Menu/{index.js.map → index.cjs.map} +1 -1
- package/lib-commonjs/components/Menu/{renderMenu.js → renderMenu.cjs} +1 -1
- package/lib-commonjs/components/Menu/{renderMenu.js.map → renderMenu.cjs.map} +1 -1
- package/lib-commonjs/components/Menu/{useMenu.js → useMenu.cjs} +9 -9
- package/lib-commonjs/components/Menu/{useMenu.js.map → useMenu.cjs.map} +1 -1
- package/lib-commonjs/components/MenuDivider/{MenuDivider.js → MenuDivider.cjs} +3 -3
- package/lib-commonjs/components/MenuDivider/{MenuDivider.js.map → MenuDivider.cjs.map} +1 -1
- package/lib-commonjs/components/MenuDivider/{index.js → index.cjs} +4 -4
- package/lib-commonjs/components/MenuDivider/{index.js.map → index.cjs.map} +1 -1
- package/lib-commonjs/components/MenuDivider/useMenuDividerStyles.styles.cjs.map +1 -0
- package/lib-commonjs/components/MenuGroup/{MenuGroup.js → MenuGroup.cjs} +4 -4
- package/lib-commonjs/components/MenuGroup/{MenuGroup.js.map → MenuGroup.cjs.map} +1 -1
- package/lib-commonjs/components/MenuGroup/{index.js → index.cjs} +5 -5
- package/lib-commonjs/components/MenuGroup/{index.js.map → index.cjs.map} +1 -1
- package/lib-commonjs/components/MenuGroup/{renderMenuGroup.js → renderMenuGroup.cjs} +1 -1
- package/lib-commonjs/components/MenuGroup/{renderMenuGroup.js.map → renderMenuGroup.cjs.map} +1 -1
- package/lib-commonjs/components/MenuGroup/useMenuGroupStyles.styles.cjs.map +1 -0
- package/lib-commonjs/components/MenuGroupHeader/{MenuGroupHeader.js → MenuGroupHeader.cjs} +3 -3
- package/lib-commonjs/components/MenuGroupHeader/{MenuGroupHeader.js.map → MenuGroupHeader.cjs.map} +1 -1
- package/lib-commonjs/components/MenuGroupHeader/{index.js → index.cjs} +4 -4
- package/lib-commonjs/components/MenuGroupHeader/{index.js.map → index.cjs.map} +1 -1
- package/lib-commonjs/components/MenuGroupHeader/{useMenuGroupHeader.js → useMenuGroupHeader.cjs} +1 -1
- package/lib-commonjs/components/MenuGroupHeader/{useMenuGroupHeader.js.map → useMenuGroupHeader.cjs.map} +1 -1
- package/lib-commonjs/components/MenuGroupHeader/useMenuGroupHeaderStyles.styles.cjs.map +1 -0
- package/lib-commonjs/components/MenuItem/{MenuItem.js → MenuItem.cjs} +3 -3
- package/lib-commonjs/components/MenuItem/{MenuItem.js.map → MenuItem.cjs.map} +1 -1
- package/lib-commonjs/components/MenuItem/{index.js → index.cjs} +5 -5
- package/lib-commonjs/components/MenuItem/{index.js.map → index.cjs.map} +1 -1
- package/lib-commonjs/components/MenuItem/{useCharacterSearch.js → useCharacterSearch.cjs} +1 -1
- package/lib-commonjs/components/MenuItem/{useCharacterSearch.js.map → useCharacterSearch.cjs.map} +1 -1
- package/lib-commonjs/components/MenuItem/{useMenuItem.js → useMenuItem.cjs} +1 -1
- package/lib-commonjs/components/MenuItem/{useMenuItem.js.map → useMenuItem.cjs.map} +1 -1
- package/lib-commonjs/components/MenuItem/{useMenuItemBase.js → useMenuItemBase.cjs} +6 -6
- package/lib-commonjs/components/MenuItem/{useMenuItemBase.js.map → useMenuItemBase.cjs.map} +1 -1
- package/lib-commonjs/components/MenuItem/{useMenuItemStyles.styles.js → useMenuItemStyles.styles.cjs} +1 -1
- package/lib-commonjs/components/MenuItem/useMenuItemStyles.styles.cjs.map +1 -0
- package/lib-commonjs/components/MenuItem/{useMenuItemStyles.styles.raw.js → useMenuItemStyles.styles.raw.cjs} +1 -1
- package/lib-commonjs/components/MenuItem/{useMenuItemStyles.styles.raw.js.map → useMenuItemStyles.styles.raw.cjs.map} +1 -1
- package/lib-commonjs/components/MenuItemCheckbox/{MenuItemCheckbox.js → MenuItemCheckbox.cjs} +3 -3
- package/lib-commonjs/components/MenuItemCheckbox/{MenuItemCheckbox.js.map → MenuItemCheckbox.cjs.map} +1 -1
- package/lib-commonjs/components/MenuItemCheckbox/{index.js → index.cjs} +4 -4
- package/lib-commonjs/components/MenuItemCheckbox/{index.js.map → index.cjs.map} +1 -1
- package/lib-commonjs/components/MenuItemCheckbox/{useMenuItemCheckbox.js → useMenuItemCheckbox.cjs} +2 -2
- package/lib-commonjs/components/MenuItemCheckbox/{useMenuItemCheckbox.js.map → useMenuItemCheckbox.cjs.map} +1 -1
- package/lib-commonjs/components/MenuItemCheckbox/{useMenuItemCheckboxStyles.styles.raw.js → useMenuItemCheckboxStyles.styles.cjs} +2 -2
- package/lib-commonjs/components/MenuItemCheckbox/useMenuItemCheckboxStyles.styles.cjs.map +1 -0
- package/lib-commonjs/components/MenuItemCheckbox/{useMenuItemCheckboxStyles.styles.js → useMenuItemCheckboxStyles.styles.raw.cjs} +2 -2
- package/lib-commonjs/components/MenuItemCheckbox/{useMenuItemCheckboxStyles.styles.raw.js.map → useMenuItemCheckboxStyles.styles.raw.cjs.map} +1 -1
- package/lib-commonjs/components/MenuItemLink/{MenuItemLink.js → MenuItemLink.cjs} +3 -3
- package/lib-commonjs/components/MenuItemLink/{MenuItemLink.js.map → MenuItemLink.cjs.map} +1 -1
- package/lib-commonjs/components/MenuItemLink/{index.js → index.cjs} +4 -4
- package/lib-commonjs/components/MenuItemLink/{index.js.map → index.cjs.map} +1 -1
- package/lib-commonjs/components/MenuItemLink/{useMenuItemLink.js → useMenuItemLink.cjs} +2 -2
- package/lib-commonjs/components/MenuItemLink/{useMenuItemLink.js.map → useMenuItemLink.cjs.map} +1 -1
- package/lib-commonjs/components/MenuItemLink/{useMenuItemLinkStyles.styles.js → useMenuItemLinkStyles.styles.cjs} +1 -1
- package/lib-commonjs/components/MenuItemLink/useMenuItemLinkStyles.styles.cjs.map +1 -0
- package/lib-commonjs/components/MenuItemLink/{useMenuItemLinkStyles.styles.raw.js → useMenuItemLinkStyles.styles.raw.cjs} +1 -1
- package/lib-commonjs/components/MenuItemLink/{useMenuItemLinkStyles.styles.raw.js.map → useMenuItemLinkStyles.styles.raw.cjs.map} +1 -1
- package/lib-commonjs/components/MenuItemRadio/{MenuItemRadio.js → MenuItemRadio.cjs} +3 -3
- package/lib-commonjs/components/MenuItemRadio/{MenuItemRadio.js.map → MenuItemRadio.cjs.map} +1 -1
- package/lib-commonjs/components/MenuItemRadio/{index.js → index.cjs} +4 -4
- package/lib-commonjs/components/MenuItemRadio/{index.js.map → index.cjs.map} +1 -1
- package/lib-commonjs/components/MenuItemRadio/{useMenuItemRadio.js → useMenuItemRadio.cjs} +2 -2
- package/lib-commonjs/components/MenuItemRadio/{useMenuItemRadio.js.map → useMenuItemRadio.cjs.map} +1 -1
- package/lib-commonjs/components/MenuItemRadio/{useMenuItemRadioStyles.styles.js → useMenuItemRadioStyles.styles.cjs} +2 -2
- package/lib-commonjs/components/MenuItemRadio/useMenuItemRadioStyles.styles.cjs.map +1 -0
- package/lib-commonjs/components/MenuItemRadio/{useMenuItemRadioStyles.styles.raw.js → useMenuItemRadioStyles.styles.raw.cjs} +2 -2
- package/lib-commonjs/components/MenuItemRadio/{useMenuItemRadioStyles.styles.raw.js.map → useMenuItemRadioStyles.styles.raw.cjs.map} +1 -1
- package/lib-commonjs/components/MenuItemSwitch/{MenuItemSwitch.js → MenuItemSwitch.cjs} +3 -3
- package/lib-commonjs/components/MenuItemSwitch/{MenuItemSwitch.js.map → MenuItemSwitch.cjs.map} +1 -1
- package/lib-commonjs/components/MenuItemSwitch/{index.js → index.cjs} +4 -4
- package/lib-commonjs/components/MenuItemSwitch/{index.js.map → index.cjs.map} +1 -1
- package/lib-commonjs/components/MenuItemSwitch/{useMenuItemSwitch.js → useMenuItemSwitch.cjs} +2 -2
- package/lib-commonjs/components/MenuItemSwitch/{useMenuItemSwitch.js.map → useMenuItemSwitch.cjs.map} +1 -1
- package/lib-commonjs/components/MenuItemSwitch/{useMenuItemSwitchStyles.styles.js → useMenuItemSwitchStyles.styles.cjs} +1 -1
- package/lib-commonjs/components/MenuItemSwitch/useMenuItemSwitchStyles.styles.cjs.map +1 -0
- package/lib-commonjs/components/MenuItemSwitch/{useMenuItemSwitchStyles.styles.raw.js → useMenuItemSwitchStyles.styles.raw.cjs} +1 -1
- package/lib-commonjs/components/MenuItemSwitch/{useMenuItemSwitchStyles.styles.raw.js.map → useMenuItemSwitchStyles.styles.raw.cjs.map} +1 -1
- package/lib-commonjs/components/MenuList/{MenuList.js → MenuList.cjs} +4 -4
- package/lib-commonjs/components/MenuList/{MenuList.js.map → MenuList.cjs.map} +1 -1
- package/lib-commonjs/components/MenuList/{index.js → index.cjs} +5 -5
- package/lib-commonjs/components/MenuList/{index.js.map → index.cjs.map} +1 -1
- package/lib-commonjs/components/MenuList/{renderMenuList.js → renderMenuList.cjs} +1 -1
- package/lib-commonjs/components/MenuList/{renderMenuList.js.map → renderMenuList.cjs.map} +1 -1
- package/lib-commonjs/components/MenuList/{useMenuList.js → useMenuList.cjs} +2 -2
- package/lib-commonjs/components/MenuList/{useMenuList.js.map → useMenuList.cjs.map} +1 -1
- package/lib-commonjs/components/MenuList/useMenuListStyles.styles.cjs.map +1 -0
- package/lib-commonjs/components/MenuPopover/{MenuPopover.js → MenuPopover.cjs} +3 -3
- package/lib-commonjs/components/MenuPopover/{MenuPopover.js.map → MenuPopover.cjs.map} +1 -1
- package/lib-commonjs/components/MenuPopover/{index.js → index.cjs} +4 -4
- package/lib-commonjs/components/MenuPopover/{index.js.map → index.cjs.map} +1 -1
- package/lib-commonjs/components/MenuPopover/{useMenuPopover.js → useMenuPopover.cjs} +3 -3
- package/lib-commonjs/components/MenuPopover/{useMenuPopover.js.map → useMenuPopover.cjs.map} +1 -1
- package/lib-commonjs/components/MenuPopover/useMenuPopoverStyles.styles.cjs.map +1 -0
- package/lib-commonjs/components/MenuSplitGroup/{MenuSplitGroup.js → MenuSplitGroup.cjs} +4 -4
- package/lib-commonjs/components/MenuSplitGroup/{MenuSplitGroup.js.map → MenuSplitGroup.cjs.map} +1 -1
- package/lib-commonjs/components/MenuSplitGroup/{index.js → index.cjs} +4 -4
- package/lib-commonjs/components/MenuSplitGroup/{index.js.map → index.cjs.map} +1 -1
- package/lib-commonjs/components/MenuSplitGroup/{renderMenuSplitGroup.js → renderMenuSplitGroup.cjs} +1 -1
- package/lib-commonjs/components/MenuSplitGroup/{renderMenuSplitGroup.js.map → renderMenuSplitGroup.cjs.map} +1 -1
- package/lib-commonjs/components/MenuSplitGroup/{useMenuSplitGroup.js → useMenuSplitGroup.cjs} +1 -1
- package/lib-commonjs/components/MenuSplitGroup/{useMenuSplitGroup.js.map → useMenuSplitGroup.cjs.map} +1 -1
- package/lib-commonjs/components/MenuSplitGroup/useMenuSplitGroupStyles.styles.cjs.map +1 -0
- package/lib-commonjs/components/MenuSplitGroup/{useMenuSplitGroupStyles.styles.raw.js → useMenuSplitGroupStyles.styles.raw.cjs} +1 -1
- package/lib-commonjs/components/MenuSplitGroup/{useMenuSplitGroupStyles.styles.raw.js.map → useMenuSplitGroupStyles.styles.raw.cjs.map} +1 -1
- package/lib-commonjs/components/MenuTrigger/{MenuTrigger.js → MenuTrigger.cjs} +2 -2
- package/lib-commonjs/components/MenuTrigger/{MenuTrigger.js.map → MenuTrigger.cjs.map} +1 -1
- package/lib-commonjs/components/MenuTrigger/{index.js → index.cjs} +3 -3
- package/lib-commonjs/components/MenuTrigger/{index.js.map → index.cjs.map} +1 -1
- package/lib-commonjs/components/MenuTrigger/{renderMenuTrigger.js → renderMenuTrigger.cjs} +1 -1
- package/lib-commonjs/components/MenuTrigger/{renderMenuTrigger.js.map → renderMenuTrigger.cjs.map} +1 -1
- package/lib-commonjs/components/MenuTrigger/{useMenuTrigger.js → useMenuTrigger.cjs} +5 -5
- package/lib-commonjs/components/MenuTrigger/{useMenuTrigger.js.map → useMenuTrigger.cjs.map} +1 -1
- package/lib-commonjs/components/{index.js → index.cjs} +2 -2
- package/lib-commonjs/components/{index.js.map → index.cjs.map} +1 -1
- package/lib-commonjs/{index.js → index.cjs} +22 -22
- package/lib-commonjs/{index.js.map → index.cjs.map} +1 -1
- package/lib-commonjs/selectable/{index.js → index.cjs} +1 -1
- package/lib-commonjs/selectable/{index.js.map → index.cjs.map} +1 -1
- package/lib-commonjs/selectable/useCheckmarkStyles.styles.cjs.map +1 -0
- package/lib-commonjs/utils/{index.js → index.cjs} +4 -4
- package/lib-commonjs/utils/{index.js.map → index.cjs.map} +1 -1
- package/lib-commonjs/utils/{useIsSubmenu.js → useIsSubmenu.cjs} +2 -2
- package/lib-commonjs/utils/{useIsSubmenu.js.map → useIsSubmenu.cjs.map} +1 -1
- package/lib-commonjs/utils/{useValidateNesting.js → useValidateNesting.cjs} +1 -1
- package/lib-commonjs/utils/{useValidateNesting.js.map → useValidateNesting.cjs.map} +1 -1
- package/package.json +26 -25
- package/lib-commonjs/components/MenuDivider/useMenuDividerStyles.styles.js.map +0 -1
- package/lib-commonjs/components/MenuGroup/useMenuGroupStyles.styles.js.map +0 -1
- package/lib-commonjs/components/MenuGroupHeader/useMenuGroupHeaderStyles.styles.js.map +0 -1
- package/lib-commonjs/components/MenuItem/useMenuItemStyles.styles.js.map +0 -1
- package/lib-commonjs/components/MenuItemCheckbox/useMenuItemCheckboxStyles.styles.js.map +0 -1
- package/lib-commonjs/components/MenuItemLink/useMenuItemLinkStyles.styles.js.map +0 -1
- package/lib-commonjs/components/MenuItemRadio/useMenuItemRadioStyles.styles.js.map +0 -1
- package/lib-commonjs/components/MenuItemSwitch/useMenuItemSwitchStyles.styles.js.map +0 -1
- package/lib-commonjs/components/MenuList/useMenuListStyles.styles.js.map +0 -1
- package/lib-commonjs/components/MenuPopover/useMenuPopoverStyles.styles.js.map +0 -1
- package/lib-commonjs/components/MenuSplitGroup/useMenuSplitGroupStyles.styles.js.map +0 -1
- package/lib-commonjs/selectable/useCheckmarkStyles.styles.js.map +0 -1
- /package/lib-commonjs/components/Menu/{Menu.types.js → Menu.types.cjs} +0 -0
- /package/lib-commonjs/components/Menu/{Menu.types.js.map → Menu.types.cjs.map} +0 -0
- /package/lib-commonjs/components/Menu/{MenuSurfaceMotion.js → MenuSurfaceMotion.cjs} +0 -0
- /package/lib-commonjs/components/Menu/{MenuSurfaceMotion.js.map → MenuSurfaceMotion.cjs.map} +0 -0
- /package/lib-commonjs/components/Menu/{useMenuContextValues.js → useMenuContextValues.cjs} +0 -0
- /package/lib-commonjs/components/Menu/{useMenuContextValues.js.map → useMenuContextValues.cjs.map} +0 -0
- /package/lib-commonjs/components/MenuDivider/{MenuDivider.types.js → MenuDivider.types.cjs} +0 -0
- /package/lib-commonjs/components/MenuDivider/{MenuDivider.types.js.map → MenuDivider.types.cjs.map} +0 -0
- /package/lib-commonjs/components/MenuDivider/{renderMenuDivider.js → renderMenuDivider.cjs} +0 -0
- /package/lib-commonjs/components/MenuDivider/{renderMenuDivider.js.map → renderMenuDivider.cjs.map} +0 -0
- /package/lib-commonjs/components/MenuDivider/{useMenuDivider.js → useMenuDivider.cjs} +0 -0
- /package/lib-commonjs/components/MenuDivider/{useMenuDivider.js.map → useMenuDivider.cjs.map} +0 -0
- /package/lib-commonjs/components/MenuDivider/{useMenuDividerStyles.styles.js → useMenuDividerStyles.styles.cjs} +0 -0
- /package/lib-commonjs/components/MenuDivider/{useMenuDividerStyles.styles.raw.js → useMenuDividerStyles.styles.raw.cjs} +0 -0
- /package/lib-commonjs/components/MenuDivider/{useMenuDividerStyles.styles.raw.js.map → useMenuDividerStyles.styles.raw.cjs.map} +0 -0
- /package/lib-commonjs/components/MenuGroup/{MenuGroup.types.js → MenuGroup.types.cjs} +0 -0
- /package/lib-commonjs/components/MenuGroup/{MenuGroup.types.js.map → MenuGroup.types.cjs.map} +0 -0
- /package/lib-commonjs/components/MenuGroup/{useMenuGroup.js → useMenuGroup.cjs} +0 -0
- /package/lib-commonjs/components/MenuGroup/{useMenuGroup.js.map → useMenuGroup.cjs.map} +0 -0
- /package/lib-commonjs/components/MenuGroup/{useMenuGroupContextValues.js → useMenuGroupContextValues.cjs} +0 -0
- /package/lib-commonjs/components/MenuGroup/{useMenuGroupContextValues.js.map → useMenuGroupContextValues.cjs.map} +0 -0
- /package/lib-commonjs/components/MenuGroup/{useMenuGroupStyles.styles.js → useMenuGroupStyles.styles.cjs} +0 -0
- /package/lib-commonjs/components/MenuGroup/{useMenuGroupStyles.styles.raw.js → useMenuGroupStyles.styles.raw.cjs} +0 -0
- /package/lib-commonjs/components/MenuGroup/{useMenuGroupStyles.styles.raw.js.map → useMenuGroupStyles.styles.raw.cjs.map} +0 -0
- /package/lib-commonjs/components/MenuGroupHeader/{MenuGroupHeader.types.js → MenuGroupHeader.types.cjs} +0 -0
- /package/lib-commonjs/components/MenuGroupHeader/{MenuGroupHeader.types.js.map → MenuGroupHeader.types.cjs.map} +0 -0
- /package/lib-commonjs/components/MenuGroupHeader/{renderMenuGroupHeader.js → renderMenuGroupHeader.cjs} +0 -0
- /package/lib-commonjs/components/MenuGroupHeader/{renderMenuGroupHeader.js.map → renderMenuGroupHeader.cjs.map} +0 -0
- /package/lib-commonjs/components/MenuGroupHeader/{useMenuGroupHeaderStyles.styles.js → useMenuGroupHeaderStyles.styles.cjs} +0 -0
- /package/lib-commonjs/components/MenuGroupHeader/{useMenuGroupHeaderStyles.styles.raw.js → useMenuGroupHeaderStyles.styles.raw.cjs} +0 -0
- /package/lib-commonjs/components/MenuGroupHeader/{useMenuGroupHeaderStyles.styles.raw.js.map → useMenuGroupHeaderStyles.styles.raw.cjs.map} +0 -0
- /package/lib-commonjs/components/MenuItem/{MenuItem.types.js → MenuItem.types.cjs} +0 -0
- /package/lib-commonjs/components/MenuItem/{MenuItem.types.js.map → MenuItem.types.cjs.map} +0 -0
- /package/lib-commonjs/components/MenuItem/{renderMenuItem.js → renderMenuItem.cjs} +0 -0
- /package/lib-commonjs/components/MenuItem/{renderMenuItem.js.map → renderMenuItem.cjs.map} +0 -0
- /package/lib-commonjs/components/MenuItemCheckbox/{MenuItemCheckbox.types.js → MenuItemCheckbox.types.cjs} +0 -0
- /package/lib-commonjs/components/MenuItemCheckbox/{MenuItemCheckbox.types.js.map → MenuItemCheckbox.types.cjs.map} +0 -0
- /package/lib-commonjs/components/MenuItemCheckbox/{renderMenuItemCheckbox.js → renderMenuItemCheckbox.cjs} +0 -0
- /package/lib-commonjs/components/MenuItemCheckbox/{renderMenuItemCheckbox.js.map → renderMenuItemCheckbox.cjs.map} +0 -0
- /package/lib-commonjs/components/MenuItemLink/{MenuItemLink.types.js → MenuItemLink.types.cjs} +0 -0
- /package/lib-commonjs/components/MenuItemLink/{MenuItemLink.types.js.map → MenuItemLink.types.cjs.map} +0 -0
- /package/lib-commonjs/components/MenuItemLink/{renderMenuItemLink.js → renderMenuItemLink.cjs} +0 -0
- /package/lib-commonjs/components/MenuItemLink/{renderMenuItemLink.js.map → renderMenuItemLink.cjs.map} +0 -0
- /package/lib-commonjs/components/MenuItemRadio/{MenuItemRadio.types.js → MenuItemRadio.types.cjs} +0 -0
- /package/lib-commonjs/components/MenuItemRadio/{MenuItemRadio.types.js.map → MenuItemRadio.types.cjs.map} +0 -0
- /package/lib-commonjs/components/MenuItemRadio/{renderMenuItemRadio.js → renderMenuItemRadio.cjs} +0 -0
- /package/lib-commonjs/components/MenuItemRadio/{renderMenuItemRadio.js.map → renderMenuItemRadio.cjs.map} +0 -0
- /package/lib-commonjs/components/MenuItemSwitch/{MenuItemSwitch.types.js → MenuItemSwitch.types.cjs} +0 -0
- /package/lib-commonjs/components/MenuItemSwitch/{MenuItemSwitch.types.js.map → MenuItemSwitch.types.cjs.map} +0 -0
- /package/lib-commonjs/components/MenuItemSwitch/{renderMenuItemSwitch.js → renderMenuItemSwitch.cjs} +0 -0
- /package/lib-commonjs/components/MenuItemSwitch/{renderMenuItemSwitch.js.map → renderMenuItemSwitch.cjs.map} +0 -0
- /package/lib-commonjs/components/MenuList/{MenuList.types.js → MenuList.types.cjs} +0 -0
- /package/lib-commonjs/components/MenuList/{MenuList.types.js.map → MenuList.types.cjs.map} +0 -0
- /package/lib-commonjs/components/MenuList/{useMenuListContextValues.js → useMenuListContextValues.cjs} +0 -0
- /package/lib-commonjs/components/MenuList/{useMenuListContextValues.js.map → useMenuListContextValues.cjs.map} +0 -0
- /package/lib-commonjs/components/MenuList/{useMenuListStyles.styles.js → useMenuListStyles.styles.cjs} +0 -0
- /package/lib-commonjs/components/MenuList/{useMenuListStyles.styles.raw.js → useMenuListStyles.styles.raw.cjs} +0 -0
- /package/lib-commonjs/components/MenuList/{useMenuListStyles.styles.raw.js.map → useMenuListStyles.styles.raw.cjs.map} +0 -0
- /package/lib-commonjs/components/MenuPopover/{MenuPopover.types.js → MenuPopover.types.cjs} +0 -0
- /package/lib-commonjs/components/MenuPopover/{MenuPopover.types.js.map → MenuPopover.types.cjs.map} +0 -0
- /package/lib-commonjs/components/MenuPopover/{renderMenuPopover.js → renderMenuPopover.cjs} +0 -0
- /package/lib-commonjs/components/MenuPopover/{renderMenuPopover.js.map → renderMenuPopover.cjs.map} +0 -0
- /package/lib-commonjs/components/MenuPopover/{useMenuPopoverStyles.styles.js → useMenuPopoverStyles.styles.cjs} +0 -0
- /package/lib-commonjs/components/MenuPopover/{useMenuPopoverStyles.styles.raw.js → useMenuPopoverStyles.styles.raw.cjs} +0 -0
- /package/lib-commonjs/components/MenuPopover/{useMenuPopoverStyles.styles.raw.js.map → useMenuPopoverStyles.styles.raw.cjs.map} +0 -0
- /package/lib-commonjs/components/MenuSplitGroup/{MenuSplitGroup.types.js → MenuSplitGroup.types.cjs} +0 -0
- /package/lib-commonjs/components/MenuSplitGroup/{MenuSplitGroup.types.js.map → MenuSplitGroup.types.cjs.map} +0 -0
- /package/lib-commonjs/components/MenuSplitGroup/{useMenuSplitGroupContextValues.js → useMenuSplitGroupContextValues.cjs} +0 -0
- /package/lib-commonjs/components/MenuSplitGroup/{useMenuSplitGroupContextValues.js.map → useMenuSplitGroupContextValues.cjs.map} +0 -0
- /package/lib-commonjs/components/MenuSplitGroup/{useMenuSplitGroupStyles.styles.js → useMenuSplitGroupStyles.styles.cjs} +0 -0
- /package/lib-commonjs/components/MenuTrigger/{MenuTrigger.types.js → MenuTrigger.types.cjs} +0 -0
- /package/lib-commonjs/components/MenuTrigger/{MenuTrigger.types.js.map → MenuTrigger.types.cjs.map} +0 -0
- /package/lib-commonjs/contexts/{menuContext.js → menuContext.cjs} +0 -0
- /package/lib-commonjs/contexts/{menuContext.js.map → menuContext.cjs.map} +0 -0
- /package/lib-commonjs/contexts/{menuGroupContext.js → menuGroupContext.cjs} +0 -0
- /package/lib-commonjs/contexts/{menuGroupContext.js.map → menuGroupContext.cjs.map} +0 -0
- /package/lib-commonjs/contexts/{menuListContext.js → menuListContext.cjs} +0 -0
- /package/lib-commonjs/contexts/{menuListContext.js.map → menuListContext.cjs.map} +0 -0
- /package/lib-commonjs/contexts/{menuSplitGroupContext.js → menuSplitGroupContext.cjs} +0 -0
- /package/lib-commonjs/contexts/{menuSplitGroupContext.js.map → menuSplitGroupContext.cjs.map} +0 -0
- /package/lib-commonjs/contexts/{menuTriggerContext.js → menuTriggerContext.cjs} +0 -0
- /package/lib-commonjs/contexts/{menuTriggerContext.js.map → menuTriggerContext.cjs.map} +0 -0
- /package/lib-commonjs/selectable/{types.js → types.cjs} +0 -0
- /package/lib-commonjs/selectable/{types.js.map → types.cjs.map} +0 -0
- /package/lib-commonjs/selectable/{useCheckmarkStyles.styles.js → useCheckmarkStyles.styles.cjs} +0 -0
- /package/lib-commonjs/selectable/{useCheckmarkStyles.styles.raw.js → useCheckmarkStyles.styles.raw.cjs} +0 -0
- /package/lib-commonjs/selectable/{useCheckmarkStyles.styles.raw.js.map → useCheckmarkStyles.styles.raw.cjs.map} +0 -0
- /package/lib-commonjs/utils/{useOnMenuEnter.js → useOnMenuEnter.cjs} +0 -0
- /package/lib-commonjs/utils/{useOnMenuEnter.js.map → useOnMenuEnter.cjs.map} +0 -0
- /package/lib-commonjs/utils/{useOnMenuSafeZoneTimeout.js → useOnMenuSafeZoneTimeout.cjs} +0 -0
- /package/lib-commonjs/utils/{useOnMenuSafeZoneTimeout.js.map → useOnMenuSafeZoneTimeout.cjs.map} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/utils/useValidateNesting.ts"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport { useFluent_unstable as useFluent } from '@fluentui/react-shared-contexts';\n\nimport type { MenuContextValue } from '../contexts/menuContext';\nimport { useMenuContext_unstable } from '../contexts/menuContext';\n\ntype NestingComponentName = 'MenuList' | 'MenuItem' | 'MenuItemCheckbox' | 'MenuItemRadio';\n\nexport const useValidateNesting = (componentName: NestingComponentName): React.RefObject<HTMLElement | null> => {\n const { targetDocument } = useFluent();\n const triggerRef = useMenuContext_unstable((context: MenuContextValue) => context.triggerRef);\n const inline = useMenuContext_unstable((context: MenuContextValue) => context.inline);\n const ref = React.useRef<HTMLElement | null>(null);\n\n if (process.env.NODE_ENV !== 'production') {\n // This check should run only in development mode\n // It's okay to disable the ESLint rule because we ar checking env variable statically (not at runtime)\n // eslint-disable-next-line react-hooks/rules-of-hooks\n React.useEffect(() => {\n let ancestor = ref.current;\n let ancestorComponentName = '';\n do {\n ancestor = ancestor?.parentElement ?? null;\n if (ancestor?.classList.contains('fui-MenuList')) {\n break;\n } else if (ancestor?.classList.contains('fui-MenuGrid')) {\n ancestorComponentName = 'MenuGrid';\n } else if (ancestor?.classList.contains('fui-MenuGridItem')) {\n ancestorComponentName = 'MenuGridItem';\n } else if (ancestor?.classList.contains('fui-MenuGridRow')) {\n ancestorComponentName = 'MenuGridRow';\n } else if (ancestor?.classList.contains('fui-MenuGridCell')) {\n ancestorComponentName = 'MenuGridCell';\n }\n if (['MenuItem', 'MenuItemCheckbox', 'MenuItemRadio'].includes(componentName)) {\n if (['MenuGrid', 'MenuGridItem', 'MenuGridRow', 'MenuGridCell'].includes(ancestorComponentName)) {\n throw new Error(\n `${componentName} is incorrectly nested within ${ancestorComponentName}. You probably want to wrap it in a MenuList instead.`,\n );\n }\n } else if (componentName === 'MenuList') {\n if (ancestorComponentName === 'MenuGridCell') {\n if (inline && getCellOfTrigger(triggerRef.current, targetDocument) === ancestor) {\n break;\n }\n throw new Error(`MenuList is incorrectly nested within MenuGridCell.`);\n } else if (['MenuGrid', 'MenuGridItem', 'MenuGridRow'].includes(ancestorComponentName)) {\n throw new Error(`MenuList is incorrectly nested within ${ancestorComponentName}.`);\n }\n }\n } while (ancestor && ancestor !== targetDocument?.body);\n }, [componentName, ref, triggerRef, inline, targetDocument]);\n }\n return ref;\n};\n\nconst getCellOfTrigger = (trigger: HTMLElement | null, targetDocument?: Document): HTMLElement | null => {\n let ancestor = trigger?.parentElement;\n while (ancestor && ancestor !== targetDocument?.body) {\n if (ancestor?.classList.contains('fui-MenuGridCell')) {\n return ancestor;\n }\n ancestor = ancestor?.parentElement ?? null;\n }\n return null;\n};\n"],"names":["React","useFluent_unstable","useFluent","useMenuContext_unstable","useValidateNesting","componentName","targetDocument","triggerRef","context","inline","ref","useRef","process","env","NODE_ENV","useEffect","ancestor","current","ancestorComponentName","parentElement","classList","contains","includes","Error","getCellOfTrigger","body","trigger"],"mappings":"AAAA;AAEA,YAAYA,WAAW,QAAQ;AAC/B,SAASC,sBAAsBC,SAAS,QAAQ,kCAAkC;AAGlF,SAASC,uBAAuB,QAAQ,
|
|
1
|
+
{"version":3,"sources":["../src/utils/useValidateNesting.ts"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport { useFluent_unstable as useFluent } from '@fluentui/react-shared-contexts';\n\nimport type { MenuContextValue } from '../contexts/menuContext';\nimport { useMenuContext_unstable } from '../contexts/menuContext';\n\ntype NestingComponentName = 'MenuList' | 'MenuItem' | 'MenuItemCheckbox' | 'MenuItemRadio';\n\nexport const useValidateNesting = (componentName: NestingComponentName): React.RefObject<HTMLElement | null> => {\n const { targetDocument } = useFluent();\n const triggerRef = useMenuContext_unstable((context: MenuContextValue) => context.triggerRef);\n const inline = useMenuContext_unstable((context: MenuContextValue) => context.inline);\n const ref = React.useRef<HTMLElement | null>(null);\n\n if (process.env.NODE_ENV !== 'production') {\n // This check should run only in development mode\n // It's okay to disable the ESLint rule because we ar checking env variable statically (not at runtime)\n // eslint-disable-next-line react-hooks/rules-of-hooks\n React.useEffect(() => {\n let ancestor = ref.current;\n let ancestorComponentName = '';\n do {\n ancestor = ancestor?.parentElement ?? null;\n if (ancestor?.classList.contains('fui-MenuList')) {\n break;\n } else if (ancestor?.classList.contains('fui-MenuGrid')) {\n ancestorComponentName = 'MenuGrid';\n } else if (ancestor?.classList.contains('fui-MenuGridItem')) {\n ancestorComponentName = 'MenuGridItem';\n } else if (ancestor?.classList.contains('fui-MenuGridRow')) {\n ancestorComponentName = 'MenuGridRow';\n } else if (ancestor?.classList.contains('fui-MenuGridCell')) {\n ancestorComponentName = 'MenuGridCell';\n }\n if (['MenuItem', 'MenuItemCheckbox', 'MenuItemRadio'].includes(componentName)) {\n if (['MenuGrid', 'MenuGridItem', 'MenuGridRow', 'MenuGridCell'].includes(ancestorComponentName)) {\n throw new Error(\n `${componentName} is incorrectly nested within ${ancestorComponentName}. You probably want to wrap it in a MenuList instead.`,\n );\n }\n } else if (componentName === 'MenuList') {\n if (ancestorComponentName === 'MenuGridCell') {\n if (inline && getCellOfTrigger(triggerRef.current, targetDocument) === ancestor) {\n break;\n }\n throw new Error(`MenuList is incorrectly nested within MenuGridCell.`);\n } else if (['MenuGrid', 'MenuGridItem', 'MenuGridRow'].includes(ancestorComponentName)) {\n throw new Error(`MenuList is incorrectly nested within ${ancestorComponentName}.`);\n }\n }\n } while (ancestor && ancestor !== targetDocument?.body);\n }, [componentName, ref, triggerRef, inline, targetDocument]);\n }\n return ref;\n};\n\nconst getCellOfTrigger = (trigger: HTMLElement | null, targetDocument?: Document): HTMLElement | null => {\n let ancestor = trigger?.parentElement;\n while (ancestor && ancestor !== targetDocument?.body) {\n if (ancestor?.classList.contains('fui-MenuGridCell')) {\n return ancestor;\n }\n ancestor = ancestor?.parentElement ?? null;\n }\n return null;\n};\n"],"names":["React","useFluent_unstable","useFluent","useMenuContext_unstable","useValidateNesting","componentName","targetDocument","triggerRef","context","inline","ref","useRef","process","env","NODE_ENV","useEffect","ancestor","current","ancestorComponentName","parentElement","classList","contains","includes","Error","getCellOfTrigger","body","trigger"],"mappings":"AAAA;AAEA,YAAYA,WAAW,QAAQ;AAC/B,SAASC,sBAAsBC,SAAS,QAAQ,kCAAkC;AAGlF,SAASC,uBAAuB,QAAQ,6BAA0B;AAIlE,OAAO,MAAMC,qBAAqB,CAACC;IACjC,MAAM,EAAEC,cAAc,EAAE,GAAGJ;IAC3B,MAAMK,aAAaJ,wBAAwB,CAACK,UAA8BA,QAAQD,UAAU;IAC5F,MAAME,SAASN,wBAAwB,CAACK,UAA8BA,QAAQC,MAAM;IACpF,MAAMC,MAAMV,MAAMW,MAAM,CAAqB;IAE7C,IAAIC,QAAQC,GAAG,CAACC,QAAQ,KAAK,cAAc;QACzC,iDAAiD;QACjD,uGAAuG;QACvG,sDAAsD;QACtDd,MAAMe,SAAS,CAAC;YACd,IAAIC,WAAWN,IAAIO,OAAO;YAC1B,IAAIC,wBAAwB;YAC5B,GAAG;oBACUF;gBAAXA,WAAWA,CAAAA,0BAAAA,qBAAAA,+BAAAA,SAAUG,aAAa,cAAvBH,qCAAAA,0BAA2B;gBACtC,IAAIA,qBAAAA,+BAAAA,SAAUI,SAAS,CAACC,QAAQ,CAAC,iBAAiB;oBAChD;gBACF,OAAO,IAAIL,qBAAAA,+BAAAA,SAAUI,SAAS,CAACC,QAAQ,CAAC,iBAAiB;oBACvDH,wBAAwB;gBAC1B,OAAO,IAAIF,qBAAAA,+BAAAA,SAAUI,SAAS,CAACC,QAAQ,CAAC,qBAAqB;oBAC3DH,wBAAwB;gBAC1B,OAAO,IAAIF,qBAAAA,+BAAAA,SAAUI,SAAS,CAACC,QAAQ,CAAC,oBAAoB;oBAC1DH,wBAAwB;gBAC1B,OAAO,IAAIF,qBAAAA,+BAAAA,SAAUI,SAAS,CAACC,QAAQ,CAAC,qBAAqB;oBAC3DH,wBAAwB;gBAC1B;gBACA,IAAI;oBAAC;oBAAY;oBAAoB;iBAAgB,CAACI,QAAQ,CAACjB,gBAAgB;oBAC7E,IAAI;wBAAC;wBAAY;wBAAgB;wBAAe;qBAAe,CAACiB,QAAQ,CAACJ,wBAAwB;wBAC/F,MAAM,IAAIK,MACR,GAAGlB,cAAc,8BAA8B,EAAEa,sBAAsB,qDAAqD,CAAC;oBAEjI;gBACF,OAAO,IAAIb,kBAAkB,YAAY;oBACvC,IAAIa,0BAA0B,gBAAgB;wBAC5C,IAAIT,UAAUe,iBAAiBjB,WAAWU,OAAO,EAAEX,oBAAoBU,UAAU;4BAC/E;wBACF;wBACA,MAAM,IAAIO,MAAM,CAAC,mDAAmD,CAAC;oBACvE,OAAO,IAAI;wBAAC;wBAAY;wBAAgB;qBAAc,CAACD,QAAQ,CAACJ,wBAAwB;wBACtF,MAAM,IAAIK,MAAM,CAAC,sCAAsC,EAAEL,sBAAsB,CAAC,CAAC;oBACnF;gBACF;YACF,QAASF,YAAYA,cAAaV,2BAAAA,qCAAAA,eAAgBmB,IAAI,EAAE;QAC1D,GAAG;YAACpB;YAAeK;YAAKH;YAAYE;YAAQH;SAAe;IAC7D;IACA,OAAOI;AACT,EAAE;AAEF,MAAMc,mBAAmB,CAACE,SAA6BpB;IACrD,IAAIU,WAAWU,oBAAAA,8BAAAA,QAASP,aAAa;IACrC,MAAOH,YAAYA,cAAaV,2BAAAA,qCAAAA,eAAgBmB,IAAI,EAAE;QACpD,IAAIT,qBAAAA,+BAAAA,SAAUI,SAAS,CAACC,QAAQ,CAAC,qBAAqB;YACpD,OAAOL;QACT;YACWA;QAAXA,WAAWA,CAAAA,0BAAAA,qBAAAA,+BAAAA,SAAUG,aAAa,cAAvBH,qCAAAA,0BAA2B;IACxC;IACA,OAAO;AACT"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/Menu.ts"],"sourcesContent":["export type {\n MenuBaseProps,\n MenuBaseState,\n MenuContextValues,\n MenuOpenChangeData,\n MenuOpenEvent,\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n MenuOpenEvents,\n MenuProps,\n MenuSlots,\n MenuState,\n} from './components/Menu/index';\nexport {\n Menu,\n renderMenu_unstable,\n useMenuContextValues_unstable,\n useMenuBase_unstable,\n useMenu_unstable,\n} from './components/Menu/index';\n"],"names":["Menu","renderMenu_unstable","useMenuContextValues_unstable","useMenuBase_unstable","useMenu_unstable"],"mappings":";;;;;;;;;;;;eAaEA,WAAI;;;eACJC,0BAAmB;;;eAEnBE,2BAAoB;;;eADpBD,oCAA6B;;;eAE7BE,uBAAgB;;;uBACX,
|
|
1
|
+
{"version":3,"sources":["../src/Menu.ts"],"sourcesContent":["export type {\n MenuBaseProps,\n MenuBaseState,\n MenuContextValues,\n MenuOpenChangeData,\n MenuOpenEvent,\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n MenuOpenEvents,\n MenuProps,\n MenuSlots,\n MenuState,\n} from './components/Menu/index';\nexport {\n Menu,\n renderMenu_unstable,\n useMenuContextValues_unstable,\n useMenuBase_unstable,\n useMenu_unstable,\n} from './components/Menu/index';\n"],"names":["Menu","renderMenu_unstable","useMenuContextValues_unstable","useMenuBase_unstable","useMenu_unstable"],"mappings":";;;;;;;;;;;;eAaEA,WAAI;;;eACJC,0BAAmB;;;eAEnBE,2BAAoB;;;eADpBD,oCAA6B;;;eAE7BE,uBAAgB;;;uBACX,6BAA0B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/MenuDivider.ts"],"sourcesContent":["export type { MenuDividerProps, MenuDividerSlots, MenuDividerState } from './components/MenuDivider/index';\nexport {\n MenuDivider,\n menuDividerClassNames,\n renderMenuDivider_unstable,\n useMenuDividerStyles_unstable,\n useMenuDivider_unstable,\n} from './components/MenuDivider/index';\n"],"names":["MenuDivider","menuDividerClassNames","renderMenuDivider_unstable","useMenuDividerStyles_unstable","useMenuDivider_unstable"],"mappings":";;;;;;;;;;;;eAEEA,kBAAW;;;eACXC,4BAAqB;;;eACrBC,iCAA0B;;;eAC1BC,oCAA6B;;;eAC7BC,8BAAuB;;;uBAClB,
|
|
1
|
+
{"version":3,"sources":["../src/MenuDivider.ts"],"sourcesContent":["export type { MenuDividerProps, MenuDividerSlots, MenuDividerState } from './components/MenuDivider/index';\nexport {\n MenuDivider,\n menuDividerClassNames,\n renderMenuDivider_unstable,\n useMenuDividerStyles_unstable,\n useMenuDivider_unstable,\n} from './components/MenuDivider/index';\n"],"names":["MenuDivider","menuDividerClassNames","renderMenuDivider_unstable","useMenuDividerStyles_unstable","useMenuDivider_unstable"],"mappings":";;;;;;;;;;;;eAEEA,kBAAW;;;eACXC,4BAAqB;;;eACrBC,iCAA0B;;;eAC1BC,oCAA6B;;;eAC7BC,8BAAuB;;;uBAClB,oCAAiC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/MenuGroup.ts"],"sourcesContent":["export type {\n MenuGroupContextValues,\n MenuGroupProps,\n MenuGroupSlots,\n MenuGroupState,\n} from './components/MenuGroup/index';\nexport {\n MenuGroup,\n menuGroupClassNames,\n renderMenuGroup_unstable,\n useMenuGroupContextValues_unstable,\n useMenuGroupStyles_unstable,\n useMenuGroup_unstable,\n} from './components/MenuGroup/index';\n"],"names":["MenuGroup","menuGroupClassNames","renderMenuGroup_unstable","useMenuGroupContextValues_unstable","useMenuGroupStyles_unstable","useMenuGroup_unstable"],"mappings":";;;;;;;;;;;;eAOEA,gBAAS;;;eACTC,0BAAmB;;;eACnBC,+BAAwB;;;eACxBC,yCAAkC;;;eAClCC,kCAA2B;;;eAC3BC,4BAAqB;;;uBAChB
|
|
1
|
+
{"version":3,"sources":["../src/MenuGroup.ts"],"sourcesContent":["export type {\n MenuGroupContextValues,\n MenuGroupProps,\n MenuGroupSlots,\n MenuGroupState,\n} from './components/MenuGroup/index';\nexport {\n MenuGroup,\n menuGroupClassNames,\n renderMenuGroup_unstable,\n useMenuGroupContextValues_unstable,\n useMenuGroupStyles_unstable,\n useMenuGroup_unstable,\n} from './components/MenuGroup/index';\n"],"names":["MenuGroup","menuGroupClassNames","renderMenuGroup_unstable","useMenuGroupContextValues_unstable","useMenuGroupStyles_unstable","useMenuGroup_unstable"],"mappings":";;;;;;;;;;;;eAOEA,gBAAS;;;eACTC,0BAAmB;;;eACnBC,+BAAwB;;;eACxBC,yCAAkC;;;eAClCC,kCAA2B;;;eAC3BC,4BAAqB;;;uBAChB,kCAA+B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/MenuGroupHeader.ts"],"sourcesContent":["export type {\n MenuGroupHeaderProps,\n MenuGroupHeaderSlots,\n MenuGroupHeaderState,\n} from './components/MenuGroupHeader/index';\nexport {\n MenuGroupHeader,\n menuGroupHeaderClassNames,\n renderMenuGroupHeader_unstable,\n useMenuGroupHeaderStyles_unstable,\n useMenuGroupHeader_unstable,\n} from './components/MenuGroupHeader/index';\n"],"names":["MenuGroupHeader","menuGroupHeaderClassNames","renderMenuGroupHeader_unstable","useMenuGroupHeaderStyles_unstable","useMenuGroupHeader_unstable"],"mappings":";;;;;;;;;;;;eAMEA,sBAAe;;;eACfC,gCAAyB;;;eACzBC,qCAA8B;;;eAC9BC,wCAAiC;;;eACjCC,kCAA2B;;;uBACtB,
|
|
1
|
+
{"version":3,"sources":["../src/MenuGroupHeader.ts"],"sourcesContent":["export type {\n MenuGroupHeaderProps,\n MenuGroupHeaderSlots,\n MenuGroupHeaderState,\n} from './components/MenuGroupHeader/index';\nexport {\n MenuGroupHeader,\n menuGroupHeaderClassNames,\n renderMenuGroupHeader_unstable,\n useMenuGroupHeaderStyles_unstable,\n useMenuGroupHeader_unstable,\n} from './components/MenuGroupHeader/index';\n"],"names":["MenuGroupHeader","menuGroupHeaderClassNames","renderMenuGroupHeader_unstable","useMenuGroupHeaderStyles_unstable","useMenuGroupHeader_unstable"],"mappings":";;;;;;;;;;;;eAMEA,sBAAe;;;eACfC,gCAAyB;;;eACzBC,qCAA8B;;;eAC9BC,wCAAiC;;;eACjCC,kCAA2B;;;uBACtB,wCAAqC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/MenuItem.ts"],"sourcesContent":["export type { MenuItemProps, MenuItemSlots, MenuItemState } from './components/MenuItem/index';\nexport {\n MenuItem,\n menuItemClassNames,\n renderMenuItem_unstable,\n useMenuItemStyles_unstable,\n useMenuItem_unstable,\n useMenuItemBase_unstable,\n} from './components/MenuItem/index';\n"],"names":["MenuItem","menuItemClassNames","renderMenuItem_unstable","useMenuItemStyles_unstable","useMenuItem_unstable","useMenuItemBase_unstable"],"mappings":";;;;;;;;;;;;eAEEA,eAAQ;;;eACRC,yBAAkB;;;eAClBC,8BAAuB;;;eAGvBG,+BAAwB;;;eAFxBF,iCAA0B;;;eAC1BC,2BAAoB;;;uBAEf,
|
|
1
|
+
{"version":3,"sources":["../src/MenuItem.ts"],"sourcesContent":["export type { MenuItemProps, MenuItemSlots, MenuItemState } from './components/MenuItem/index';\nexport {\n MenuItem,\n menuItemClassNames,\n renderMenuItem_unstable,\n useMenuItemStyles_unstable,\n useMenuItem_unstable,\n useMenuItemBase_unstable,\n} from './components/MenuItem/index';\n"],"names":["MenuItem","menuItemClassNames","renderMenuItem_unstable","useMenuItemStyles_unstable","useMenuItem_unstable","useMenuItemBase_unstable"],"mappings":";;;;;;;;;;;;eAEEA,eAAQ;;;eACRC,yBAAkB;;;eAClBC,8BAAuB;;;eAGvBG,+BAAwB;;;eAFxBF,iCAA0B;;;eAC1BC,2BAAoB;;;uBAEf,iCAA8B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/MenuItemCheckbox.ts"],"sourcesContent":["export type { MenuItemCheckboxProps, MenuItemCheckboxState } from './components/MenuItemCheckbox/index';\nexport {\n MenuItemCheckbox,\n menuItemCheckboxClassNames,\n renderMenuItemCheckbox_unstable,\n useMenuItemCheckboxStyles_unstable,\n useMenuItemCheckbox_unstable,\n useMenuItemCheckboxBase_unstable,\n} from './components/MenuItemCheckbox/index';\n"],"names":["MenuItemCheckbox","menuItemCheckboxClassNames","renderMenuItemCheckbox_unstable","useMenuItemCheckboxStyles_unstable","useMenuItemCheckbox_unstable","useMenuItemCheckboxBase_unstable"],"mappings":";;;;;;;;;;;;eAEEA,uBAAgB;;;eAChBC,iCAA0B;;;eAC1BC,sCAA+B;;;eAG/BG,uCAAgC;;;eAFhCF,yCAAkC;;;eAClCC,mCAA4B;;;uBAEvB,
|
|
1
|
+
{"version":3,"sources":["../src/MenuItemCheckbox.ts"],"sourcesContent":["export type { MenuItemCheckboxProps, MenuItemCheckboxState } from './components/MenuItemCheckbox/index';\nexport {\n MenuItemCheckbox,\n menuItemCheckboxClassNames,\n renderMenuItemCheckbox_unstable,\n useMenuItemCheckboxStyles_unstable,\n useMenuItemCheckbox_unstable,\n useMenuItemCheckboxBase_unstable,\n} from './components/MenuItemCheckbox/index';\n"],"names":["MenuItemCheckbox","menuItemCheckboxClassNames","renderMenuItemCheckbox_unstable","useMenuItemCheckboxStyles_unstable","useMenuItemCheckbox_unstable","useMenuItemCheckboxBase_unstable"],"mappings":";;;;;;;;;;;;eAEEA,uBAAgB;;;eAChBC,iCAA0B;;;eAC1BC,sCAA+B;;;eAG/BG,uCAAgC;;;eAFhCF,yCAAkC;;;eAClCC,mCAA4B;;;uBAEvB,yCAAsC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/MenuItemLink.ts"],"sourcesContent":["export type { MenuItemLinkProps, MenuItemLinkSlots, MenuItemLinkState } from './components/MenuItemLink/index';\nexport {\n MenuItemLink,\n menuItemLinkClassNames,\n renderMenuItemLink_unstable,\n useMenuItemLinkBase_unstable,\n useMenuItemLinkStyles_unstable,\n useMenuItemLink_unstable,\n} from './components/MenuItemLink/index';\n"],"names":["MenuItemLink","menuItemLinkClassNames","renderMenuItemLink_unstable","useMenuItemLinkBase_unstable","useMenuItemLinkStyles_unstable","useMenuItemLink_unstable"],"mappings":";;;;;;;;;;;;eAEEA,mBAAY;;;eACZC,6BAAsB;;;eACtBC,kCAA2B;;;eAC3BC,mCAA4B;;;eAC5BC,qCAA8B;;;eAC9BC,+BAAwB;;;uBACnB,
|
|
1
|
+
{"version":3,"sources":["../src/MenuItemLink.ts"],"sourcesContent":["export type { MenuItemLinkProps, MenuItemLinkSlots, MenuItemLinkState } from './components/MenuItemLink/index';\nexport {\n MenuItemLink,\n menuItemLinkClassNames,\n renderMenuItemLink_unstable,\n useMenuItemLinkBase_unstable,\n useMenuItemLinkStyles_unstable,\n useMenuItemLink_unstable,\n} from './components/MenuItemLink/index';\n"],"names":["MenuItemLink","menuItemLinkClassNames","renderMenuItemLink_unstable","useMenuItemLinkBase_unstable","useMenuItemLinkStyles_unstable","useMenuItemLink_unstable"],"mappings":";;;;;;;;;;;;eAEEA,mBAAY;;;eACZC,6BAAsB;;;eACtBC,kCAA2B;;;eAC3BC,mCAA4B;;;eAC5BC,qCAA8B;;;eAC9BC,+BAAwB;;;uBACnB,qCAAkC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/MenuItemRadio.ts"],"sourcesContent":["export type {\n MenuItemRadioBaseProps,\n MenuItemRadioBaseState,\n MenuItemRadioProps,\n MenuItemRadioState,\n} from './components/MenuItemRadio/index';\nexport {\n MenuItemRadio,\n menuItemRadioClassNames,\n renderMenuItemRadio_unstable,\n useMenuItemRadioBase_unstable,\n useMenuItemRadioStyles_unstable,\n useMenuItemRadio_unstable,\n} from './components/MenuItemRadio/index';\n"],"names":["MenuItemRadio","menuItemRadioClassNames","renderMenuItemRadio_unstable","useMenuItemRadioBase_unstable","useMenuItemRadioStyles_unstable","useMenuItemRadio_unstable"],"mappings":";;;;;;;;;;;;eAOEA,oBAAa;;;eACbC,8BAAuB;;;eACvBC,mCAA4B;;;eAC5BC,oCAA6B;;;eAC7BC,sCAA+B;;;eAC/BC,gCAAyB;;;uBACpB,
|
|
1
|
+
{"version":3,"sources":["../src/MenuItemRadio.ts"],"sourcesContent":["export type {\n MenuItemRadioBaseProps,\n MenuItemRadioBaseState,\n MenuItemRadioProps,\n MenuItemRadioState,\n} from './components/MenuItemRadio/index';\nexport {\n MenuItemRadio,\n menuItemRadioClassNames,\n renderMenuItemRadio_unstable,\n useMenuItemRadioBase_unstable,\n useMenuItemRadioStyles_unstable,\n useMenuItemRadio_unstable,\n} from './components/MenuItemRadio/index';\n"],"names":["MenuItemRadio","menuItemRadioClassNames","renderMenuItemRadio_unstable","useMenuItemRadioBase_unstable","useMenuItemRadioStyles_unstable","useMenuItemRadio_unstable"],"mappings":";;;;;;;;;;;;eAOEA,oBAAa;;;eACbC,8BAAuB;;;eACvBC,mCAA4B;;;eAC5BC,oCAA6B;;;eAC7BC,sCAA+B;;;eAC/BC,gCAAyB;;;uBACpB,sCAAmC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/MenuItemSwitch.ts"],"sourcesContent":["export type { MenuItemSwitchProps, MenuItemSwitchSlots, MenuItemSwitchState } from './components/MenuItemSwitch/index';\nexport {\n MenuItemSwitch,\n circleFilledClassName,\n menuItemSwitchClassNames,\n renderMenuItemSwitch_unstable,\n useMenuItemSwitchStyles_unstable,\n useMenuItemSwitch_unstable,\n useMenuItemSwitchBase_unstable,\n} from './components/MenuItemSwitch/index';\n"],"names":["MenuItemSwitch","circleFilledClassName","menuItemSwitchClassNames","renderMenuItemSwitch_unstable","useMenuItemSwitchStyles_unstable","useMenuItemSwitch_unstable","useMenuItemSwitchBase_unstable"],"mappings":";;;;;;;;;;;;eAEEA,qBAAc;;;eACdC,4BAAqB;;;eACrBC,+BAAwB;;;eACxBC,oCAA6B;;;eAG7BG,qCAA8B;;;eAF9BF,uCAAgC;;;eAChCC,iCAA0B;;;uBAErB,
|
|
1
|
+
{"version":3,"sources":["../src/MenuItemSwitch.ts"],"sourcesContent":["export type { MenuItemSwitchProps, MenuItemSwitchSlots, MenuItemSwitchState } from './components/MenuItemSwitch/index';\nexport {\n MenuItemSwitch,\n circleFilledClassName,\n menuItemSwitchClassNames,\n renderMenuItemSwitch_unstable,\n useMenuItemSwitchStyles_unstable,\n useMenuItemSwitch_unstable,\n useMenuItemSwitchBase_unstable,\n} from './components/MenuItemSwitch/index';\n"],"names":["MenuItemSwitch","circleFilledClassName","menuItemSwitchClassNames","renderMenuItemSwitch_unstable","useMenuItemSwitchStyles_unstable","useMenuItemSwitch_unstable","useMenuItemSwitchBase_unstable"],"mappings":";;;;;;;;;;;;eAEEA,qBAAc;;;eACdC,4BAAqB;;;eACrBC,+BAAwB;;;eACxBC,oCAA6B;;;eAG7BG,qCAA8B;;;eAF9BF,uCAAgC;;;eAChCC,iCAA0B;;;uBAErB,uCAAoC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/MenuList.ts"],"sourcesContent":["export type {\n MenuCheckedValueChangeData,\n MenuCheckedValueChangeEvent,\n MenuListContextValues,\n MenuListProps,\n MenuListSlots,\n MenuListState,\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n UninitializedMenuListState,\n} from './components/MenuList/index';\nexport {\n MenuList,\n menuListClassNames,\n renderMenuList_unstable,\n useMenuListBase_unstable,\n useMenuListContextValues_unstable,\n useMenuListStyles_unstable,\n useMenuList_unstable,\n} from './components/MenuList/index';\n"],"names":["MenuList","menuListClassNames","renderMenuList_unstable","useMenuListBase_unstable","useMenuListContextValues_unstable","useMenuListStyles_unstable","useMenuList_unstable"],"mappings":";;;;;;;;;;;;eAWEA,eAAQ;;;eACRC,yBAAkB;;;eAClBC,8BAAuB;;;eACvBC,+BAAwB;;;eACxBC,wCAAiC;;;eACjCC,iCAA0B;;;eAC1BC,2BAAoB;;;uBACf,
|
|
1
|
+
{"version":3,"sources":["../src/MenuList.ts"],"sourcesContent":["export type {\n MenuCheckedValueChangeData,\n MenuCheckedValueChangeEvent,\n MenuListContextValues,\n MenuListProps,\n MenuListSlots,\n MenuListState,\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n UninitializedMenuListState,\n} from './components/MenuList/index';\nexport {\n MenuList,\n menuListClassNames,\n renderMenuList_unstable,\n useMenuListBase_unstable,\n useMenuListContextValues_unstable,\n useMenuListStyles_unstable,\n useMenuList_unstable,\n} from './components/MenuList/index';\n"],"names":["MenuList","menuListClassNames","renderMenuList_unstable","useMenuListBase_unstable","useMenuListContextValues_unstable","useMenuListStyles_unstable","useMenuList_unstable"],"mappings":";;;;;;;;;;;;eAWEA,eAAQ;;;eACRC,yBAAkB;;;eAClBC,8BAAuB;;;eACvBC,+BAAwB;;;eACxBC,wCAAiC;;;eACjCC,iCAA0B;;;eAC1BC,2BAAoB;;;uBACf,iCAA8B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/MenuPopover.ts"],"sourcesContent":["export type { MenuPopoverProps, MenuPopoverSlots, MenuPopoverState } from './components/MenuPopover/index';\nexport {\n MenuPopover,\n menuPopoverClassNames,\n renderMenuPopover_unstable,\n useMenuPopoverBase_unstable,\n useMenuPopoverStyles_unstable,\n useMenuPopover_unstable,\n} from './components/MenuPopover/index';\n"],"names":["MenuPopover","menuPopoverClassNames","renderMenuPopover_unstable","useMenuPopoverBase_unstable","useMenuPopoverStyles_unstable","useMenuPopover_unstable"],"mappings":";;;;;;;;;;;;eAEEA,kBAAW;;;eACXC,4BAAqB;;;eACrBC,iCAA0B;;;eAC1BC,kCAA2B;;;eAC3BC,oCAA6B;;;eAC7BC,8BAAuB;;;uBAClB,
|
|
1
|
+
{"version":3,"sources":["../src/MenuPopover.ts"],"sourcesContent":["export type { MenuPopoverProps, MenuPopoverSlots, MenuPopoverState } from './components/MenuPopover/index';\nexport {\n MenuPopover,\n menuPopoverClassNames,\n renderMenuPopover_unstable,\n useMenuPopoverBase_unstable,\n useMenuPopoverStyles_unstable,\n useMenuPopover_unstable,\n} from './components/MenuPopover/index';\n"],"names":["MenuPopover","menuPopoverClassNames","renderMenuPopover_unstable","useMenuPopoverBase_unstable","useMenuPopoverStyles_unstable","useMenuPopover_unstable"],"mappings":";;;;;;;;;;;;eAEEA,kBAAW;;;eACXC,4BAAqB;;;eACrBC,iCAA0B;;;eAC1BC,kCAA2B;;;eAC3BC,oCAA6B;;;eAC7BC,8BAAuB;;;uBAClB,oCAAiC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/MenuSplitGroup.ts"],"sourcesContent":["export type { MenuSplitGroupProps, MenuSplitGroupSlots, MenuSplitGroupState } from './components/MenuSplitGroup/index';\nexport {\n MenuSplitGroup,\n menuSplitGroupClassNames,\n renderMenuSplitGroup_unstable,\n useMenuSplitGroupStyles_unstable,\n useMenuSplitGroup_unstable,\n} from './components/MenuSplitGroup/index';\n"],"names":["MenuSplitGroup","menuSplitGroupClassNames","renderMenuSplitGroup_unstable","useMenuSplitGroupStyles_unstable","useMenuSplitGroup_unstable"],"mappings":";;;;;;;;;;;;eAEEA,qBAAc;;;eACdC,+BAAwB;;;eACxBC,oCAA6B;;;eAC7BC,uCAAgC;;;eAChCC,iCAA0B;;;uBACrB,
|
|
1
|
+
{"version":3,"sources":["../src/MenuSplitGroup.ts"],"sourcesContent":["export type { MenuSplitGroupProps, MenuSplitGroupSlots, MenuSplitGroupState } from './components/MenuSplitGroup/index';\nexport {\n MenuSplitGroup,\n menuSplitGroupClassNames,\n renderMenuSplitGroup_unstable,\n useMenuSplitGroupStyles_unstable,\n useMenuSplitGroup_unstable,\n} from './components/MenuSplitGroup/index';\n"],"names":["MenuSplitGroup","menuSplitGroupClassNames","renderMenuSplitGroup_unstable","useMenuSplitGroupStyles_unstable","useMenuSplitGroup_unstable"],"mappings":";;;;;;;;;;;;eAEEA,qBAAc;;;eACdC,+BAAwB;;;eACxBC,oCAA6B;;;eAC7BC,uCAAgC;;;eAChCC,iCAA0B;;;uBACrB,uCAAoC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/MenuTrigger.ts"],"sourcesContent":["export type {\n MenuTriggerChildProps,\n MenuTriggerBaseProps,\n MenuTriggerProps,\n MenuTriggerState,\n} from './components/MenuTrigger/index';\nexport {\n MenuTrigger,\n renderMenuTrigger_unstable,\n useMenuTrigger_unstable,\n useMenuTriggerBase_unstable,\n} from './components/MenuTrigger/index';\n"],"names":["MenuTrigger","renderMenuTrigger_unstable","useMenuTrigger_unstable","useMenuTriggerBase_unstable"],"mappings":";;;;;;;;;;;;eAOEA,kBAAW;;;eACXC,iCAA0B;;;eAE1BE,kCAA2B;;;eAD3BD,8BAAuB;;;uBAElB,
|
|
1
|
+
{"version":3,"sources":["../src/MenuTrigger.ts"],"sourcesContent":["export type {\n MenuTriggerChildProps,\n MenuTriggerBaseProps,\n MenuTriggerProps,\n MenuTriggerState,\n} from './components/MenuTrigger/index';\nexport {\n MenuTrigger,\n renderMenuTrigger_unstable,\n useMenuTrigger_unstable,\n useMenuTriggerBase_unstable,\n} from './components/MenuTrigger/index';\n"],"names":["MenuTrigger","renderMenuTrigger_unstable","useMenuTrigger_unstable","useMenuTriggerBase_unstable"],"mappings":";;;;;;;;;;;;eAOEA,kBAAW;;;eACXC,iCAA0B;;;eAE1BE,kCAA2B;;;eAD3BD,8BAAuB;;;uBAElB,oCAAiC"}
|
|
@@ -9,9 +9,9 @@ Object.defineProperty(exports, "Menu", {
|
|
|
9
9
|
return Menu;
|
|
10
10
|
}
|
|
11
11
|
});
|
|
12
|
-
const _useMenu = require("./useMenu");
|
|
13
|
-
const _useMenuContextValues = require("./useMenuContextValues");
|
|
14
|
-
const _renderMenu = require("./renderMenu");
|
|
12
|
+
const _useMenu = require("./useMenu.cjs");
|
|
13
|
+
const _useMenuContextValues = require("./useMenuContextValues.cjs");
|
|
14
|
+
const _renderMenu = require("./renderMenu.cjs");
|
|
15
15
|
const Menu = (props)=>{
|
|
16
16
|
const state = (0, _useMenu.useMenu_unstable)(props);
|
|
17
17
|
const contextValues = (0, _useMenuContextValues.useMenuContextValues_unstable)(state);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/Menu/Menu.tsx"],"sourcesContent":["'use client';\n\nimport type * as React from 'react';\nimport { useMenu_unstable } from './useMenu';\nimport { useMenuContextValues_unstable } from './useMenuContextValues';\nimport { renderMenu_unstable } from './renderMenu';\nimport type { MenuProps } from './Menu.types';\n\n/**\n * Wrapper component that manages state for a popup MenuList and a MenuTrigger\n */\nexport const Menu: React.FC<MenuProps> = props => {\n const state = useMenu_unstable(props);\n const contextValues = useMenuContextValues_unstable(state);\n\n return renderMenu_unstable(state, contextValues);\n};\n\nMenu.displayName = 'Menu';\n"],"names":["useMenu_unstable","useMenuContextValues_unstable","renderMenu_unstable","Menu","props","state","contextValues","displayName"],"mappings":"AAAA;;;;;;;;;;;yBAGiC,
|
|
1
|
+
{"version":3,"sources":["../src/components/Menu/Menu.tsx"],"sourcesContent":["'use client';\n\nimport type * as React from 'react';\nimport { useMenu_unstable } from './useMenu';\nimport { useMenuContextValues_unstable } from './useMenuContextValues';\nimport { renderMenu_unstable } from './renderMenu';\nimport type { MenuProps } from './Menu.types';\n\n/**\n * Wrapper component that manages state for a popup MenuList and a MenuTrigger\n */\nexport const Menu: React.FC<MenuProps> = props => {\n const state = useMenu_unstable(props);\n const contextValues = useMenuContextValues_unstable(state);\n\n return renderMenu_unstable(state, contextValues);\n};\n\nMenu.displayName = 'Menu';\n"],"names":["useMenu_unstable","useMenuContextValues_unstable","renderMenu_unstable","Menu","props","state","contextValues","displayName"],"mappings":"AAAA;;;;;;;;;;;yBAGiC,eAAY;sCACC,4BAAyB;4BACnC,kBAAe;AAM5C,MAAMG,OAA4BC,CAAAA;IACvC,MAAMC,YAAQL,yBAAAA,EAAiBI;IAC/B,MAAME,oBAAgBL,mDAAAA,EAA8BI;IAEpD,WAAOH,+BAAAA,EAAoBG,OAAOC;AACpC,EAAE;AAEFH,KAAKI,WAAW,GAAG"}
|
|
@@ -25,7 +25,7 @@ _export(exports, {
|
|
|
25
25
|
return _useMenu.useMenu_unstable;
|
|
26
26
|
}
|
|
27
27
|
});
|
|
28
|
-
const _Menu = require("./Menu");
|
|
29
|
-
const _renderMenu = require("./renderMenu");
|
|
30
|
-
const _useMenu = require("./useMenu");
|
|
31
|
-
const _useMenuContextValues = require("./useMenuContextValues");
|
|
28
|
+
const _Menu = require("./Menu.cjs");
|
|
29
|
+
const _renderMenu = require("./renderMenu.cjs");
|
|
30
|
+
const _useMenu = require("./useMenu.cjs");
|
|
31
|
+
const _useMenuContextValues = require("./useMenuContextValues.cjs");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/Menu/index.ts"],"sourcesContent":["export { Menu } from './Menu';\nexport type {\n MenuBaseProps,\n MenuBaseState,\n MenuContextValues,\n MenuOpenChangeData,\n MenuOpenEvent,\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n MenuOpenEvents,\n MenuProps,\n MenuSlots,\n MenuState,\n} from './Menu.types';\nexport { renderMenu_unstable } from './renderMenu';\nexport { useMenu_unstable, useMenuBase_unstable } from './useMenu';\nexport { useMenuContextValues_unstable } from './useMenuContextValues';\n"],"names":["Menu","renderMenu_unstable","useMenu_unstable","useMenuBase_unstable","useMenuContextValues_unstable"],"mappings":";;;;;;;;;;;;eAASA,UAAI;;;eAaJC,+BAAmB;;;eACDE,6BAAoB;;;eACtCC,mDAA6B;;;eAD7BF,yBAAgB;;;sBAdJ,
|
|
1
|
+
{"version":3,"sources":["../src/components/Menu/index.ts"],"sourcesContent":["export { Menu } from './Menu';\nexport type {\n MenuBaseProps,\n MenuBaseState,\n MenuContextValues,\n MenuOpenChangeData,\n MenuOpenEvent,\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n MenuOpenEvents,\n MenuProps,\n MenuSlots,\n MenuState,\n} from './Menu.types';\nexport { renderMenu_unstable } from './renderMenu';\nexport { useMenu_unstable, useMenuBase_unstable } from './useMenu';\nexport { useMenuContextValues_unstable } from './useMenuContextValues';\n"],"names":["Menu","renderMenu_unstable","useMenu_unstable","useMenuBase_unstable","useMenuContextValues_unstable"],"mappings":";;;;;;;;;;;;eAASA,UAAI;;;eAaJC,+BAAmB;;;eACDE,6BAAoB;;;eACtCC,mDAA6B;;;eAD7BF,yBAAgB;;;sBAdJ,YAAS;4BAaM,kBAAe;yBACI,eAAY;sCACrB,4BAAyB"}
|
|
@@ -13,7 +13,7 @@ const _jsxruntime = require("@fluentui/react-jsx-runtime/jsx-runtime");
|
|
|
13
13
|
const _react = /*#__PURE__*/ _interop_require_wildcard._(require("react"));
|
|
14
14
|
const _reactmotion = require("@fluentui/react-motion");
|
|
15
15
|
const _reactutilities = require("@fluentui/react-utilities");
|
|
16
|
-
const _menuContext = require("../../contexts/menuContext");
|
|
16
|
+
const _menuContext = require("../../contexts/menuContext.cjs");
|
|
17
17
|
const renderMenu_unstable = (state, contextValues)=>{
|
|
18
18
|
(0, _reactutilities.assertSlots)(state);
|
|
19
19
|
return /*#__PURE__*/ (0, _jsxruntime.jsxs)(_menuContext.MenuProvider, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/Menu/renderMenu.tsx"],"sourcesContent":["/** @jsxRuntime automatic */\n/** @jsxImportSource @fluentui/react-jsx-runtime */\n\nimport * as React from 'react';\nimport { MotionRefForwarder } from '@fluentui/react-motion';\nimport { assertSlots } from '@fluentui/react-utilities';\nimport type { JSXElement } from '@fluentui/react-utilities';\nimport { MenuProvider } from '../../contexts/menuContext';\nimport type { InternalMenuSlots, MenuContextValues, MenuState } from './Menu.types';\n\n/**\n * Render the final JSX of Menu\n */\nexport const renderMenu_unstable = (state: MenuState, contextValues: MenuContextValues): JSXElement => {\n assertSlots<InternalMenuSlots>(state);\n\n return (\n <MenuProvider value={contextValues.menu}>\n {state.menuTrigger}\n {state.menuPopover && (\n <state.surfaceMotion>\n <MotionRefForwarder>\n {/* Casting here as content should be equivalent to <MenuPopover /> */}\n {/* FIXME: content should not be ReactNode it should be ReactElement instead. */}\n {state.menuPopover as React.ReactElement}\n </MotionRefForwarder>\n </state.surfaceMotion>\n )}\n </MenuProvider>\n );\n};\n"],"names":["React","MotionRefForwarder","assertSlots","MenuProvider","renderMenu_unstable","state","contextValues","value","menu","menuTrigger","menuPopover","surfaceMotion"],"mappings":";;;;+BAaaI;;;;;;;4BAZb,iCAAiD;iEAE1B,QAAQ;6BACI,yBAAyB;gCAChC,4BAA4B;6BAE3B,
|
|
1
|
+
{"version":3,"sources":["../src/components/Menu/renderMenu.tsx"],"sourcesContent":["/** @jsxRuntime automatic */\n/** @jsxImportSource @fluentui/react-jsx-runtime */\n\nimport * as React from 'react';\nimport { MotionRefForwarder } from '@fluentui/react-motion';\nimport { assertSlots } from '@fluentui/react-utilities';\nimport type { JSXElement } from '@fluentui/react-utilities';\nimport { MenuProvider } from '../../contexts/menuContext';\nimport type { InternalMenuSlots, MenuContextValues, MenuState } from './Menu.types';\n\n/**\n * Render the final JSX of Menu\n */\nexport const renderMenu_unstable = (state: MenuState, contextValues: MenuContextValues): JSXElement => {\n assertSlots<InternalMenuSlots>(state);\n\n return (\n <MenuProvider value={contextValues.menu}>\n {state.menuTrigger}\n {state.menuPopover && (\n <state.surfaceMotion>\n <MotionRefForwarder>\n {/* Casting here as content should be equivalent to <MenuPopover /> */}\n {/* FIXME: content should not be ReactNode it should be ReactElement instead. */}\n {state.menuPopover as React.ReactElement}\n </MotionRefForwarder>\n </state.surfaceMotion>\n )}\n </MenuProvider>\n );\n};\n"],"names":["React","MotionRefForwarder","assertSlots","MenuProvider","renderMenu_unstable","state","contextValues","value","menu","menuTrigger","menuPopover","surfaceMotion"],"mappings":";;;;+BAaaI;;;;;;;4BAZb,iCAAiD;iEAE1B,QAAQ;6BACI,yBAAyB;gCAChC,4BAA4B;6BAE3B,gCAA6B;AAMnD,4BAA4B,CAACC,OAAkBC;QACpDJ,2BAAAA,EAA+BG;IAE/B,OAAA,WAAA,OACE,gBAAA,EAACF,yBAAAA,EAAAA;QAAaI,OAAOD,cAAcE,IAAI;;YACpCH,MAAMI,WAAW;YACjBJ,MAAMK,WAAW,IAAA,WAAA,OAChB,eAAA,EAACL,MAAMM,aAAa,EAAA;0BAClB,WAAA,OAAA,eAAA,EAACV,+BAAAA,EAAAA;8BAGEI,MAAMK,WAAW;;;;;AAM9B,EAAE"}
|
|
@@ -24,10 +24,10 @@ const _reactmotion = require("@fluentui/react-motion");
|
|
|
24
24
|
const _reactutilities = require("@fluentui/react-utilities");
|
|
25
25
|
const _reactsharedcontexts = require("@fluentui/react-shared-contexts");
|
|
26
26
|
const _reacttabster = require("@fluentui/react-tabster");
|
|
27
|
-
const _menuContext = require("../../contexts/menuContext");
|
|
28
|
-
const
|
|
29
|
-
const _useMenuItemStylesstyles = require("../MenuItem/useMenuItemStyles.styles");
|
|
30
|
-
const _MenuSurfaceMotion = require("./MenuSurfaceMotion");
|
|
27
|
+
const _menuContext = require("../../contexts/menuContext.cjs");
|
|
28
|
+
const _index = require("../../utils/index.cjs");
|
|
29
|
+
const _useMenuItemStylesstyles = require("../MenuItem/useMenuItemStyles.styles.cjs");
|
|
30
|
+
const _MenuSurfaceMotion = require("./MenuSurfaceMotion.cjs");
|
|
31
31
|
// If it's not possible to position the submenu in smaller viewports, try
|
|
32
32
|
// and fallback to this order of positions
|
|
33
33
|
const submenuFallbackPositions = [
|
|
@@ -57,7 +57,7 @@ const useMenu_unstable = (props)=>{
|
|
|
57
57
|
};
|
|
58
58
|
};
|
|
59
59
|
const useMenuBase_unstable = (props)=>{
|
|
60
|
-
const isSubmenu = (0,
|
|
60
|
+
const isSubmenu = (0, _index.useIsSubmenu)();
|
|
61
61
|
const { hoverDelay = 500, inline = false, hasCheckmarks = false, hasIcons = false, closeOnScroll = false, openOnContext = false, persistOnItemClick = false, openOnHover = isSubmenu, defaultCheckedValues, mountNode = null, safeZone } = props;
|
|
62
62
|
const { targetDocument } = (0, _reactsharedcontexts.useFluent_unstable)();
|
|
63
63
|
const triggerId = (0, _reactutilities.useId)('menu');
|
|
@@ -125,7 +125,7 @@ const useMenuBase_unstable = (props)=>{
|
|
|
125
125
|
};
|
|
126
126
|
},
|
|
127
127
|
onSafeZoneTimeout: ()=>{
|
|
128
|
-
const event = new CustomEvent(
|
|
128
|
+
const event = new CustomEvent(_index.MENU_SAFEZONE_TIMEOUT_EVENT);
|
|
129
129
|
setOpen(event, {
|
|
130
130
|
open: false,
|
|
131
131
|
keyboard: false,
|
|
@@ -225,7 +225,7 @@ const useMenuOpenState = (state)=>{
|
|
|
225
225
|
initialState: false
|
|
226
226
|
});
|
|
227
227
|
const trySetOpen = (0, _reactutilities.useEventCallback)((e, data)=>{
|
|
228
|
-
const event = e instanceof CustomEvent && e.type ===
|
|
228
|
+
const event = e instanceof CustomEvent && e.type === _index.MENU_ENTER_EVENT ? e.detail.nativeEvent : e;
|
|
229
229
|
onOpenChange === null || onOpenChange === void 0 ? void 0 : onOpenChange(event, {
|
|
230
230
|
...data
|
|
231
231
|
});
|
|
@@ -249,7 +249,7 @@ const useMenuOpenState = (state)=>{
|
|
|
249
249
|
// < React 17 still uses pooled synthetic events
|
|
250
250
|
e.persist();
|
|
251
251
|
}
|
|
252
|
-
const shouldUseDelay = !data.ignoreHoverDelay && (e.type === 'mouseleave' || e.type === 'mouseover' || e.type === 'mousemove' || e.type ===
|
|
252
|
+
const shouldUseDelay = !data.ignoreHoverDelay && (e.type === 'mouseleave' || e.type === 'mouseover' || e.type === 'mousemove' || e.type === _index.MENU_ENTER_EVENT);
|
|
253
253
|
if (shouldUseDelay) {
|
|
254
254
|
var _state_triggerRef_current;
|
|
255
255
|
if ((_state_triggerRef_current = state.triggerRef.current) === null || _state_triggerRef_current === void 0 ? void 0 : _state_triggerRef_current.contains(e.target)) {
|
|
@@ -290,7 +290,7 @@ const useMenuOpenState = (state)=>{
|
|
|
290
290
|
].filter(Boolean),
|
|
291
291
|
disabled: !open || !closeOnScroll
|
|
292
292
|
});
|
|
293
|
-
(0,
|
|
293
|
+
(0, _index.useOnMenuMouseEnter)({
|
|
294
294
|
element: targetDocument,
|
|
295
295
|
callback: (event)=>{
|
|
296
296
|
// When moving from a menu directly back to its trigger, this handler can close the menu
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/Menu/useMenu.tsx"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport {\n resolvePositioningShorthand,\n usePositioningMouseTarget,\n usePositioning,\n useSafeZoneArea,\n usePositioningSlideDirection,\n type PositioningShorthandValue,\n} from '@fluentui/react-positioning';\nimport { presenceMotionSlot } from '@fluentui/react-motion';\nimport {\n useControllableState,\n useId,\n useOnClickOutside,\n useEventCallback,\n useOnScrollOutside,\n elementContains,\n useTimeout,\n useFirstMount,\n useMergedRefs,\n} from '@fluentui/react-utilities';\nimport { useFluent_unstable as useFluent } from '@fluentui/react-shared-contexts';\nimport { useFocusFinders } from '@fluentui/react-tabster';\n\nimport { useMenuContext_unstable } from '../../contexts/menuContext';\nimport { MENU_SAFEZONE_TIMEOUT_EVENT, MENU_ENTER_EVENT, useOnMenuMouseEnter, useIsSubmenu } from '../../utils';\nimport { menuItemClassNames } from '../MenuItem/useMenuItemStyles.styles';\nimport type {\n MenuBaseProps,\n MenuBaseState,\n MenuOpenChangeData,\n MenuOpenEvent,\n MenuProps,\n MenuState,\n} from './Menu.types';\nimport { MenuSurfaceMotion } from './MenuSurfaceMotion';\n\n// If it's not possible to position the submenu in smaller viewports, try\n// and fallback to this order of positions\nconst submenuFallbackPositions: PositioningShorthandValue[] = [\n 'after',\n 'after-bottom',\n 'before-top',\n 'before',\n 'before-bottom',\n 'above',\n];\n\n/**\n * Create the state required to render Menu.\n *\n * The returned state can be modified with hooks such as useMenuStyles,\n * before being passed to renderMenu_unstable.\n *\n * @param props - props from this instance of Menu\n */\nexport const useMenu_unstable = (props: MenuProps & { safeZone?: boolean | { timeout?: number } }): MenuState => {\n const { surfaceMotion, ...baseProps } = props;\n const baseState = useMenuBase_unstable(baseProps);\n\n return {\n ...baseState,\n components: {\n surfaceMotion: MenuSurfaceMotion,\n },\n surfaceMotion: presenceMotionSlot(surfaceMotion, {\n elementType: MenuSurfaceMotion,\n defaultProps: {\n visible: baseState.open,\n appear: true,\n unmountOnExit: true,\n },\n }),\n };\n};\n\n/**\n * Base hook for Menu component, produces state required to render the component.\n * It doesn't set any design-related slots specific to Menu such as `surfaceMotion`.\n *\n * @param props - props from this instance of Menu\n */\nexport const useMenuBase_unstable = (\n props: MenuBaseProps & { safeZone?: boolean | { timeout?: number } },\n): MenuBaseState => {\n const isSubmenu = useIsSubmenu();\n const {\n hoverDelay = 500,\n inline = false,\n hasCheckmarks = false,\n hasIcons = false,\n closeOnScroll = false,\n openOnContext = false,\n persistOnItemClick = false,\n openOnHover = isSubmenu,\n defaultCheckedValues,\n mountNode = null,\n safeZone,\n } = props;\n\n const { targetDocument } = useFluent();\n const triggerId = useId('menu');\n const [contextTarget, setContextTarget] = usePositioningMouseTarget();\n\n const resolvedPositioning = resolvePositioningShorthand(props.positioning);\n const handlePositionEnd = usePositioningSlideDirection({\n targetDocument,\n onPositioningEnd: resolvedPositioning.onPositioningEnd,\n });\n\n const positioningOptions = {\n position: isSubmenu ? 'after' : 'below',\n align: isSubmenu ? 'top' : 'start',\n target: props.openOnContext ? contextTarget : undefined,\n fallbackPositions: isSubmenu ? submenuFallbackPositions : undefined,\n ...resolvedPositioning,\n onPositioningEnd: handlePositionEnd,\n } as const;\n\n const children = React.Children.toArray(props.children) as React.ReactElement[];\n\n if (process.env.NODE_ENV !== 'production') {\n if (children.length === 0) {\n // eslint-disable-next-line no-console\n console.warn('Menu must contain at least one child');\n }\n\n if (children.length > 2) {\n // eslint-disable-next-line no-console\n console.warn('Menu must contain at most two children');\n }\n }\n\n let menuTrigger: React.ReactElement | undefined = undefined;\n let menuPopover: React.ReactElement | undefined = undefined;\n if (children.length === 2) {\n menuTrigger = children[0];\n menuPopover = children[1];\n } else if (children.length === 1) {\n menuPopover = children[0];\n }\n\n const { targetRef, containerRef } = usePositioning(positioningOptions);\n\n const enableSafeZone = safeZone && openOnHover;\n const safeZoneDescriptorRef = React.useRef({\n isInside: false,\n mouseCoordinates: { x: 0, y: 0 },\n });\n\n const safeZoneHandle = useSafeZoneArea({\n disabled: !enableSafeZone,\n timeout: typeof safeZone === 'object' ? safeZone.timeout : 300,\n\n onSafeZoneEnter: e => {\n setOpen(e, { open: true, keyboard: false, type: 'menuSafeZoneMouseEnter', event: e });\n safeZoneDescriptorRef.current.isInside = true;\n },\n onSafeZoneLeave: () => {\n safeZoneDescriptorRef.current.isInside = false;\n },\n onSafeZoneMove: e => {\n safeZoneDescriptorRef.current.mouseCoordinates = {\n x: e.clientX,\n y: e.clientY,\n };\n },\n onSafeZoneTimeout: () => {\n const event = new CustomEvent(MENU_SAFEZONE_TIMEOUT_EVENT);\n\n setOpen(event, { open: false, keyboard: false, type: 'menuSafeZoneTimeout', event });\n\n if (safeZoneDescriptorRef.current.isInside && targetDocument) {\n const elementsInPoint = targetDocument.elementsFromPoint(\n safeZoneDescriptorRef.current.mouseCoordinates.x,\n safeZoneDescriptorRef.current.mouseCoordinates.y,\n );\n const menuItemEl = elementsInPoint.find(el => {\n return el.classList.contains(menuItemClassNames.root);\n }) as HTMLElement | null;\n\n menuItemEl?.dispatchEvent(event);\n }\n },\n });\n\n const triggerRef = useMergedRefs(targetRef, safeZoneHandle.targetRef);\n const menuPopoverRef = useMergedRefs(containerRef, safeZoneHandle.containerRef);\n\n // TODO Better way to narrow types ?\n const [open, setOpen] = useMenuOpenState({\n hoverDelay,\n isSubmenu,\n setContextTarget,\n closeOnScroll,\n menuPopoverRef,\n triggerRef,\n open: props.open,\n defaultOpen: props.defaultOpen,\n onOpenChange: props.onOpenChange,\n openOnContext,\n });\n\n const [checkedValues, onCheckedValueChange] = useMenuSelectableState({\n checkedValues: props.checkedValues,\n defaultCheckedValues,\n onCheckedValueChange: props.onCheckedValueChange,\n });\n\n return {\n inline,\n hoverDelay,\n triggerId,\n isSubmenu,\n openOnHover,\n contextTarget,\n setContextTarget,\n hasCheckmarks,\n hasIcons,\n closeOnScroll,\n menuTrigger,\n menuPopover,\n mountNode,\n triggerRef,\n menuPopoverRef,\n openOnContext,\n open,\n setOpen,\n checkedValues,\n onCheckedValueChange,\n persistOnItemClick,\n safeZone: safeZoneHandle.elementToRender,\n };\n};\n\n/**\n * Adds appropriate state values and handlers for selectable items\n * i.e checkboxes and radios\n */\nconst useMenuSelectableState = (\n props: Pick<MenuProps, 'checkedValues' | 'defaultCheckedValues' | 'onCheckedValueChange'>,\n) => {\n const [checkedValues, setCheckedValues] = useControllableState({\n state: props.checkedValues,\n defaultState: props.defaultCheckedValues,\n initialState: {},\n });\n const onCheckedValueChange: MenuState['onCheckedValueChange'] = useEventCallback((e, { name, checkedItems }) => {\n props.onCheckedValueChange?.(e, { name, checkedItems });\n\n setCheckedValues(currentValue => ({\n ...currentValue,\n [name]: checkedItems,\n }));\n });\n\n return [checkedValues, onCheckedValueChange] as const;\n};\n\nconst useMenuOpenState = (\n state: Pick<\n MenuState,\n | 'isSubmenu'\n | 'menuPopoverRef'\n | 'setContextTarget'\n | 'triggerRef'\n | 'openOnContext'\n | 'closeOnScroll'\n | 'hoverDelay'\n > &\n Pick<MenuProps, 'open' | 'defaultOpen' | 'onOpenChange'>,\n) => {\n const { targetDocument } = useFluent();\n const parentSetOpen = useMenuContext_unstable(context => context.setOpen);\n const onOpenChange: MenuProps['onOpenChange'] = useEventCallback((e, data) => state.onOpenChange?.(e, data));\n\n const enteringTriggerRef = React.useRef(false);\n\n const [open, setOpenState] = useControllableState({\n state: state.open,\n defaultState: state.defaultOpen,\n initialState: false,\n });\n\n const trySetOpen = useEventCallback((e: MenuOpenEvent, data: MenuOpenChangeData) => {\n const event = e instanceof CustomEvent && e.type === MENU_ENTER_EVENT ? e.detail.nativeEvent : e;\n onOpenChange?.(event, { ...data });\n if (data.open && e.type === 'contextmenu') {\n state.setContextTarget(e as React.MouseEvent);\n }\n\n if (!data.open) {\n state.setContextTarget(undefined);\n }\n\n if (data.bubble) {\n parentSetOpen(e, { ...data });\n }\n\n setOpenState(data.open);\n });\n\n const [setOpenTimeout, clearOpenTimeout] = useTimeout();\n\n const setOpen = useEventCallback((e: MenuOpenEvent, data: MenuOpenChangeData & { ignoreHoverDelay?: boolean }) => {\n clearOpenTimeout();\n if (!(e instanceof Event) && e.persist) {\n // < React 17 still uses pooled synthetic events\n e.persist();\n }\n\n const shouldUseDelay =\n !data.ignoreHoverDelay &&\n (e.type === 'mouseleave' || e.type === 'mouseover' || e.type === 'mousemove' || e.type === MENU_ENTER_EVENT);\n\n if (shouldUseDelay) {\n if (state.triggerRef.current?.contains(e.target as HTMLElement)) {\n enteringTriggerRef.current = e.type === 'mouseover' || e.type === 'mousemove';\n }\n\n setOpenTimeout(() => trySetOpen(e, data), state.hoverDelay);\n } else {\n trySetOpen(e, data);\n }\n });\n\n useOnClickOutside({\n contains: elementContains,\n disabled: !open,\n element: targetDocument,\n refs: [state.menuPopoverRef, !state.openOnContext && state.triggerRef].filter(\n Boolean,\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n ) as React.MutableRefObject<HTMLElement | null>[],\n callback: event => setOpen(event, { open: false, type: 'clickOutside', event }),\n });\n\n // only close on scroll for context, or when closeOnScroll is specified\n const closeOnScroll = state.openOnContext || state.closeOnScroll;\n useOnScrollOutside({\n contains: elementContains,\n element: targetDocument,\n callback: event => setOpen(event, { open: false, type: 'scrollOutside', event }),\n refs: [state.menuPopoverRef, !state.openOnContext && state.triggerRef].filter(\n Boolean,\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n ) as React.MutableRefObject<HTMLElement | null>[],\n disabled: !open || !closeOnScroll,\n });\n\n useOnMenuMouseEnter({\n element: targetDocument,\n callback: event => {\n // When moving from a menu directly back to its trigger, this handler can close the menu\n // Explicitly check a flag to see if this situation happens\n if (!enteringTriggerRef.current) {\n setOpen(event, { open: false, type: 'menuMouseEnter', event });\n }\n },\n disabled: !open,\n refs: [state.menuPopoverRef],\n });\n\n // Manage focus for open state\n const { findFirstFocusable } = useFocusFinders();\n const focusFirst = React.useCallback(() => {\n const firstFocusable = findFirstFocusable(state.menuPopoverRef.current);\n firstFocusable?.focus();\n }, [findFirstFocusable, state.menuPopoverRef]);\n\n const firstMount = useFirstMount();\n React.useEffect(() => {\n if (open) {\n focusFirst();\n } else {\n // Skip the initial render — focus should only be restored when the menu\n // transitions from open → closed, not on mount.\n if (!firstMount) {\n if (\n // Focus landed on <body> after the popover was removed from the DOM,\n // meaning the user's focus has nowhere meaningful to go.\n targetDocument?.activeElement === targetDocument?.body ||\n // The surfaceMotion presence component delays unmounting the popover\n // (e.g. during an exit animation), so focus may still be inside the\n // popover even though `open` is already false. Proactively move it\n // to the trigger before the DOM element is eventually removed.\n state.menuPopoverRef.current?.contains(targetDocument?.activeElement ?? null)\n ) {\n // We know that React effects are sync so we focus the trigger here\n // after any event handler (event handlers will update state and re-render).\n // Since the browser only performs the default behaviour for the Tab key once\n // keyboard events have fully bubbled up the window, the browser will move\n // focus to the next tabbable element before/after the trigger if needed.\n // If the Tab key was not pressed, focus will remain on the trigger as expected.\n state.triggerRef.current?.focus();\n }\n }\n }\n // firstMount change should not re-run this effect\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [state.triggerRef, state.isSubmenu, open, focusFirst, targetDocument, state.menuPopoverRef]);\n\n return [open, setOpen] as const;\n};\n"],"names":["React","resolvePositioningShorthand","usePositioningMouseTarget","usePositioning","useSafeZoneArea","usePositioningSlideDirection","presenceMotionSlot","useControllableState","useId","useOnClickOutside","useEventCallback","useOnScrollOutside","elementContains","useTimeout","useFirstMount","useMergedRefs","useFluent_unstable","useFluent","useFocusFinders","useMenuContext_unstable","MENU_SAFEZONE_TIMEOUT_EVENT","MENU_ENTER_EVENT","useOnMenuMouseEnter","useIsSubmenu","menuItemClassNames","MenuSurfaceMotion","submenuFallbackPositions","useMenu_unstable","props","surfaceMotion","baseProps","baseState","useMenuBase_unstable","components","elementType","defaultProps","visible","open","appear","unmountOnExit","isSubmenu","hoverDelay","inline","hasCheckmarks","hasIcons","closeOnScroll","openOnContext","persistOnItemClick","openOnHover","defaultCheckedValues","mountNode","safeZone","targetDocument","triggerId","contextTarget","setContextTarget","resolvedPositioning","positioning","handlePositionEnd","onPositioningEnd","positioningOptions","position","align","target","undefined","fallbackPositions","children","Children","toArray","process","env","NODE_ENV","length","console","warn","menuTrigger","menuPopover","targetRef","containerRef","enableSafeZone","safeZoneDescriptorRef","useRef","isInside","mouseCoordinates","x","y","safeZoneHandle","disabled","timeout","onSafeZoneEnter","e","setOpen","keyboard","type","event","current","onSafeZoneLeave","onSafeZoneMove","clientX","clientY","onSafeZoneTimeout","CustomEvent","elementsInPoint","elementsFromPoint","menuItemEl","find","el","classList","contains","root","dispatchEvent","triggerRef","menuPopoverRef","useMenuOpenState","defaultOpen","onOpenChange","checkedValues","onCheckedValueChange","useMenuSelectableState","elementToRender","setCheckedValues","state","defaultState","initialState","name","checkedItems","currentValue","parentSetOpen","context","data","enteringTriggerRef","setOpenState","trySetOpen","detail","nativeEvent","bubble","setOpenTimeout","clearOpenTimeout","Event","persist","shouldUseDelay","ignoreHoverDelay","element","refs","filter","Boolean","callback","findFirstFocusable","focusFirst","useCallback","firstFocusable","focus","firstMount","useEffect","activeElement","body"],"mappings":"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"}
|
|
1
|
+
{"version":3,"sources":["../src/components/Menu/useMenu.tsx"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport {\n resolvePositioningShorthand,\n usePositioningMouseTarget,\n usePositioning,\n useSafeZoneArea,\n usePositioningSlideDirection,\n type PositioningShorthandValue,\n} from '@fluentui/react-positioning';\nimport { presenceMotionSlot } from '@fluentui/react-motion';\nimport {\n useControllableState,\n useId,\n useOnClickOutside,\n useEventCallback,\n useOnScrollOutside,\n elementContains,\n useTimeout,\n useFirstMount,\n useMergedRefs,\n} from '@fluentui/react-utilities';\nimport { useFluent_unstable as useFluent } from '@fluentui/react-shared-contexts';\nimport { useFocusFinders } from '@fluentui/react-tabster';\n\nimport { useMenuContext_unstable } from '../../contexts/menuContext';\nimport { MENU_SAFEZONE_TIMEOUT_EVENT, MENU_ENTER_EVENT, useOnMenuMouseEnter, useIsSubmenu } from '../../utils';\nimport { menuItemClassNames } from '../MenuItem/useMenuItemStyles.styles';\nimport type {\n MenuBaseProps,\n MenuBaseState,\n MenuOpenChangeData,\n MenuOpenEvent,\n MenuProps,\n MenuState,\n} from './Menu.types';\nimport { MenuSurfaceMotion } from './MenuSurfaceMotion';\n\n// If it's not possible to position the submenu in smaller viewports, try\n// and fallback to this order of positions\nconst submenuFallbackPositions: PositioningShorthandValue[] = [\n 'after',\n 'after-bottom',\n 'before-top',\n 'before',\n 'before-bottom',\n 'above',\n];\n\n/**\n * Create the state required to render Menu.\n *\n * The returned state can be modified with hooks such as useMenuStyles,\n * before being passed to renderMenu_unstable.\n *\n * @param props - props from this instance of Menu\n */\nexport const useMenu_unstable = (props: MenuProps & { safeZone?: boolean | { timeout?: number } }): MenuState => {\n const { surfaceMotion, ...baseProps } = props;\n const baseState = useMenuBase_unstable(baseProps);\n\n return {\n ...baseState,\n components: {\n surfaceMotion: MenuSurfaceMotion,\n },\n surfaceMotion: presenceMotionSlot(surfaceMotion, {\n elementType: MenuSurfaceMotion,\n defaultProps: {\n visible: baseState.open,\n appear: true,\n unmountOnExit: true,\n },\n }),\n };\n};\n\n/**\n * Base hook for Menu component, produces state required to render the component.\n * It doesn't set any design-related slots specific to Menu such as `surfaceMotion`.\n *\n * @param props - props from this instance of Menu\n */\nexport const useMenuBase_unstable = (\n props: MenuBaseProps & { safeZone?: boolean | { timeout?: number } },\n): MenuBaseState => {\n const isSubmenu = useIsSubmenu();\n const {\n hoverDelay = 500,\n inline = false,\n hasCheckmarks = false,\n hasIcons = false,\n closeOnScroll = false,\n openOnContext = false,\n persistOnItemClick = false,\n openOnHover = isSubmenu,\n defaultCheckedValues,\n mountNode = null,\n safeZone,\n } = props;\n\n const { targetDocument } = useFluent();\n const triggerId = useId('menu');\n const [contextTarget, setContextTarget] = usePositioningMouseTarget();\n\n const resolvedPositioning = resolvePositioningShorthand(props.positioning);\n const handlePositionEnd = usePositioningSlideDirection({\n targetDocument,\n onPositioningEnd: resolvedPositioning.onPositioningEnd,\n });\n\n const positioningOptions = {\n position: isSubmenu ? 'after' : 'below',\n align: isSubmenu ? 'top' : 'start',\n target: props.openOnContext ? contextTarget : undefined,\n fallbackPositions: isSubmenu ? submenuFallbackPositions : undefined,\n ...resolvedPositioning,\n onPositioningEnd: handlePositionEnd,\n } as const;\n\n const children = React.Children.toArray(props.children) as React.ReactElement[];\n\n if (process.env.NODE_ENV !== 'production') {\n if (children.length === 0) {\n // eslint-disable-next-line no-console\n console.warn('Menu must contain at least one child');\n }\n\n if (children.length > 2) {\n // eslint-disable-next-line no-console\n console.warn('Menu must contain at most two children');\n }\n }\n\n let menuTrigger: React.ReactElement | undefined = undefined;\n let menuPopover: React.ReactElement | undefined = undefined;\n if (children.length === 2) {\n menuTrigger = children[0];\n menuPopover = children[1];\n } else if (children.length === 1) {\n menuPopover = children[0];\n }\n\n const { targetRef, containerRef } = usePositioning(positioningOptions);\n\n const enableSafeZone = safeZone && openOnHover;\n const safeZoneDescriptorRef = React.useRef({\n isInside: false,\n mouseCoordinates: { x: 0, y: 0 },\n });\n\n const safeZoneHandle = useSafeZoneArea({\n disabled: !enableSafeZone,\n timeout: typeof safeZone === 'object' ? safeZone.timeout : 300,\n\n onSafeZoneEnter: e => {\n setOpen(e, { open: true, keyboard: false, type: 'menuSafeZoneMouseEnter', event: e });\n safeZoneDescriptorRef.current.isInside = true;\n },\n onSafeZoneLeave: () => {\n safeZoneDescriptorRef.current.isInside = false;\n },\n onSafeZoneMove: e => {\n safeZoneDescriptorRef.current.mouseCoordinates = {\n x: e.clientX,\n y: e.clientY,\n };\n },\n onSafeZoneTimeout: () => {\n const event = new CustomEvent(MENU_SAFEZONE_TIMEOUT_EVENT);\n\n setOpen(event, { open: false, keyboard: false, type: 'menuSafeZoneTimeout', event });\n\n if (safeZoneDescriptorRef.current.isInside && targetDocument) {\n const elementsInPoint = targetDocument.elementsFromPoint(\n safeZoneDescriptorRef.current.mouseCoordinates.x,\n safeZoneDescriptorRef.current.mouseCoordinates.y,\n );\n const menuItemEl = elementsInPoint.find(el => {\n return el.classList.contains(menuItemClassNames.root);\n }) as HTMLElement | null;\n\n menuItemEl?.dispatchEvent(event);\n }\n },\n });\n\n const triggerRef = useMergedRefs(targetRef, safeZoneHandle.targetRef);\n const menuPopoverRef = useMergedRefs(containerRef, safeZoneHandle.containerRef);\n\n // TODO Better way to narrow types ?\n const [open, setOpen] = useMenuOpenState({\n hoverDelay,\n isSubmenu,\n setContextTarget,\n closeOnScroll,\n menuPopoverRef,\n triggerRef,\n open: props.open,\n defaultOpen: props.defaultOpen,\n onOpenChange: props.onOpenChange,\n openOnContext,\n });\n\n const [checkedValues, onCheckedValueChange] = useMenuSelectableState({\n checkedValues: props.checkedValues,\n defaultCheckedValues,\n onCheckedValueChange: props.onCheckedValueChange,\n });\n\n return {\n inline,\n hoverDelay,\n triggerId,\n isSubmenu,\n openOnHover,\n contextTarget,\n setContextTarget,\n hasCheckmarks,\n hasIcons,\n closeOnScroll,\n menuTrigger,\n menuPopover,\n mountNode,\n triggerRef,\n menuPopoverRef,\n openOnContext,\n open,\n setOpen,\n checkedValues,\n onCheckedValueChange,\n persistOnItemClick,\n safeZone: safeZoneHandle.elementToRender,\n };\n};\n\n/**\n * Adds appropriate state values and handlers for selectable items\n * i.e checkboxes and radios\n */\nconst useMenuSelectableState = (\n props: Pick<MenuProps, 'checkedValues' | 'defaultCheckedValues' | 'onCheckedValueChange'>,\n) => {\n const [checkedValues, setCheckedValues] = useControllableState({\n state: props.checkedValues,\n defaultState: props.defaultCheckedValues,\n initialState: {},\n });\n const onCheckedValueChange: MenuState['onCheckedValueChange'] = useEventCallback((e, { name, checkedItems }) => {\n props.onCheckedValueChange?.(e, { name, checkedItems });\n\n setCheckedValues(currentValue => ({\n ...currentValue,\n [name]: checkedItems,\n }));\n });\n\n return [checkedValues, onCheckedValueChange] as const;\n};\n\nconst useMenuOpenState = (\n state: Pick<\n MenuState,\n | 'isSubmenu'\n | 'menuPopoverRef'\n | 'setContextTarget'\n | 'triggerRef'\n | 'openOnContext'\n | 'closeOnScroll'\n | 'hoverDelay'\n > &\n Pick<MenuProps, 'open' | 'defaultOpen' | 'onOpenChange'>,\n) => {\n const { targetDocument } = useFluent();\n const parentSetOpen = useMenuContext_unstable(context => context.setOpen);\n const onOpenChange: MenuProps['onOpenChange'] = useEventCallback((e, data) => state.onOpenChange?.(e, data));\n\n const enteringTriggerRef = React.useRef(false);\n\n const [open, setOpenState] = useControllableState({\n state: state.open,\n defaultState: state.defaultOpen,\n initialState: false,\n });\n\n const trySetOpen = useEventCallback((e: MenuOpenEvent, data: MenuOpenChangeData) => {\n const event = e instanceof CustomEvent && e.type === MENU_ENTER_EVENT ? e.detail.nativeEvent : e;\n onOpenChange?.(event, { ...data });\n if (data.open && e.type === 'contextmenu') {\n state.setContextTarget(e as React.MouseEvent);\n }\n\n if (!data.open) {\n state.setContextTarget(undefined);\n }\n\n if (data.bubble) {\n parentSetOpen(e, { ...data });\n }\n\n setOpenState(data.open);\n });\n\n const [setOpenTimeout, clearOpenTimeout] = useTimeout();\n\n const setOpen = useEventCallback((e: MenuOpenEvent, data: MenuOpenChangeData & { ignoreHoverDelay?: boolean }) => {\n clearOpenTimeout();\n if (!(e instanceof Event) && e.persist) {\n // < React 17 still uses pooled synthetic events\n e.persist();\n }\n\n const shouldUseDelay =\n !data.ignoreHoverDelay &&\n (e.type === 'mouseleave' || e.type === 'mouseover' || e.type === 'mousemove' || e.type === MENU_ENTER_EVENT);\n\n if (shouldUseDelay) {\n if (state.triggerRef.current?.contains(e.target as HTMLElement)) {\n enteringTriggerRef.current = e.type === 'mouseover' || e.type === 'mousemove';\n }\n\n setOpenTimeout(() => trySetOpen(e, data), state.hoverDelay);\n } else {\n trySetOpen(e, data);\n }\n });\n\n useOnClickOutside({\n contains: elementContains,\n disabled: !open,\n element: targetDocument,\n refs: [state.menuPopoverRef, !state.openOnContext && state.triggerRef].filter(\n Boolean,\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n ) as React.MutableRefObject<HTMLElement | null>[],\n callback: event => setOpen(event, { open: false, type: 'clickOutside', event }),\n });\n\n // only close on scroll for context, or when closeOnScroll is specified\n const closeOnScroll = state.openOnContext || state.closeOnScroll;\n useOnScrollOutside({\n contains: elementContains,\n element: targetDocument,\n callback: event => setOpen(event, { open: false, type: 'scrollOutside', event }),\n refs: [state.menuPopoverRef, !state.openOnContext && state.triggerRef].filter(\n Boolean,\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n ) as React.MutableRefObject<HTMLElement | null>[],\n disabled: !open || !closeOnScroll,\n });\n\n useOnMenuMouseEnter({\n element: targetDocument,\n callback: event => {\n // When moving from a menu directly back to its trigger, this handler can close the menu\n // Explicitly check a flag to see if this situation happens\n if (!enteringTriggerRef.current) {\n setOpen(event, { open: false, type: 'menuMouseEnter', event });\n }\n },\n disabled: !open,\n refs: [state.menuPopoverRef],\n });\n\n // Manage focus for open state\n const { findFirstFocusable } = useFocusFinders();\n const focusFirst = React.useCallback(() => {\n const firstFocusable = findFirstFocusable(state.menuPopoverRef.current);\n firstFocusable?.focus();\n }, [findFirstFocusable, state.menuPopoverRef]);\n\n const firstMount = useFirstMount();\n React.useEffect(() => {\n if (open) {\n focusFirst();\n } else {\n // Skip the initial render — focus should only be restored when the menu\n // transitions from open → closed, not on mount.\n if (!firstMount) {\n if (\n // Focus landed on <body> after the popover was removed from the DOM,\n // meaning the user's focus has nowhere meaningful to go.\n targetDocument?.activeElement === targetDocument?.body ||\n // The surfaceMotion presence component delays unmounting the popover\n // (e.g. during an exit animation), so focus may still be inside the\n // popover even though `open` is already false. Proactively move it\n // to the trigger before the DOM element is eventually removed.\n state.menuPopoverRef.current?.contains(targetDocument?.activeElement ?? null)\n ) {\n // We know that React effects are sync so we focus the trigger here\n // after any event handler (event handlers will update state and re-render).\n // Since the browser only performs the default behaviour for the Tab key once\n // keyboard events have fully bubbled up the window, the browser will move\n // focus to the next tabbable element before/after the trigger if needed.\n // If the Tab key was not pressed, focus will remain on the trigger as expected.\n state.triggerRef.current?.focus();\n }\n }\n }\n // firstMount change should not re-run this effect\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [state.triggerRef, state.isSubmenu, open, focusFirst, targetDocument, state.menuPopoverRef]);\n\n return [open, setOpen] as const;\n};\n"],"names":["React","resolvePositioningShorthand","usePositioningMouseTarget","usePositioning","useSafeZoneArea","usePositioningSlideDirection","presenceMotionSlot","useControllableState","useId","useOnClickOutside","useEventCallback","useOnScrollOutside","elementContains","useTimeout","useFirstMount","useMergedRefs","useFluent_unstable","useFluent","useFocusFinders","useMenuContext_unstable","MENU_SAFEZONE_TIMEOUT_EVENT","MENU_ENTER_EVENT","useOnMenuMouseEnter","useIsSubmenu","menuItemClassNames","MenuSurfaceMotion","submenuFallbackPositions","useMenu_unstable","props","surfaceMotion","baseProps","baseState","useMenuBase_unstable","components","elementType","defaultProps","visible","open","appear","unmountOnExit","isSubmenu","hoverDelay","inline","hasCheckmarks","hasIcons","closeOnScroll","openOnContext","persistOnItemClick","openOnHover","defaultCheckedValues","mountNode","safeZone","targetDocument","triggerId","contextTarget","setContextTarget","resolvedPositioning","positioning","handlePositionEnd","onPositioningEnd","positioningOptions","position","align","target","undefined","fallbackPositions","children","Children","toArray","process","env","NODE_ENV","length","console","warn","menuTrigger","menuPopover","targetRef","containerRef","enableSafeZone","safeZoneDescriptorRef","useRef","isInside","mouseCoordinates","x","y","safeZoneHandle","disabled","timeout","onSafeZoneEnter","e","setOpen","keyboard","type","event","current","onSafeZoneLeave","onSafeZoneMove","clientX","clientY","onSafeZoneTimeout","CustomEvent","elementsInPoint","elementsFromPoint","menuItemEl","find","el","classList","contains","root","dispatchEvent","triggerRef","menuPopoverRef","useMenuOpenState","defaultOpen","onOpenChange","checkedValues","onCheckedValueChange","useMenuSelectableState","elementToRender","setCheckedValues","state","defaultState","initialState","name","checkedItems","currentValue","parentSetOpen","context","data","enteringTriggerRef","setOpenState","trySetOpen","detail","nativeEvent","bubble","setOpenTimeout","clearOpenTimeout","Event","persist","shouldUseDelay","ignoreHoverDelay","element","refs","filter","Boolean","callback","findFirstFocusable","focusFirst","useCallback","firstFocusable","focus","firstMount","useEffect","activeElement","body"],"mappings":"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"}
|
|
@@ -11,9 +11,9 @@ Object.defineProperty(exports, "MenuDivider", {
|
|
|
11
11
|
});
|
|
12
12
|
const _interop_require_wildcard = require("@swc/helpers/_/_interop_require_wildcard");
|
|
13
13
|
const _react = /*#__PURE__*/ _interop_require_wildcard._(require("react"));
|
|
14
|
-
const _useMenuDivider = require("./useMenuDivider");
|
|
15
|
-
const _useMenuDividerStylesstyles = require("./useMenuDividerStyles.styles");
|
|
16
|
-
const _renderMenuDivider = require("./renderMenuDivider");
|
|
14
|
+
const _useMenuDivider = require("./useMenuDivider.cjs");
|
|
15
|
+
const _useMenuDividerStylesstyles = require("./useMenuDividerStyles.styles.cjs");
|
|
16
|
+
const _renderMenuDivider = require("./renderMenuDivider.cjs");
|
|
17
17
|
const _reactsharedcontexts = require("@fluentui/react-shared-contexts");
|
|
18
18
|
const MenuDivider = /*#__PURE__*/ _react.forwardRef((props, ref)=>{
|
|
19
19
|
const state = (0, _useMenuDivider.useMenuDivider_unstable)(props, ref);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/MenuDivider/MenuDivider.tsx"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport { useMenuDivider_unstable } from './useMenuDivider';\nimport { useMenuDividerStyles_unstable } from './useMenuDividerStyles.styles';\nimport { renderMenuDivider_unstable } from './renderMenuDivider';\nimport type { MenuDividerProps } from './MenuDivider.types';\nimport type { ForwardRefComponent } from '@fluentui/react-utilities';\nimport { useCustomStyleHook_unstable } from '@fluentui/react-shared-contexts';\n\n/**\n * Define a styled MenuDivider, using the `useMenuDivider_unstable` hook.\n */\nexport const MenuDivider: ForwardRefComponent<MenuDividerProps> = React.forwardRef((props, ref) => {\n const state = useMenuDivider_unstable(props, ref);\n\n useMenuDividerStyles_unstable(state);\n\n useCustomStyleHook_unstable('useMenuDividerStyles_unstable')(state);\n\n return renderMenuDivider_unstable(state);\n});\n\nMenuDivider.displayName = 'MenuDivider';\n"],"names":["React","useMenuDivider_unstable","useMenuDividerStyles_unstable","renderMenuDivider_unstable","useCustomStyleHook_unstable","MenuDivider","forwardRef","props","ref","state","displayName"],"mappings":"AAAA;;;;;;;;;;;;iEAEuB,QAAQ;gCACS,
|
|
1
|
+
{"version":3,"sources":["../src/components/MenuDivider/MenuDivider.tsx"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport { useMenuDivider_unstable } from './useMenuDivider';\nimport { useMenuDividerStyles_unstable } from './useMenuDividerStyles.styles';\nimport { renderMenuDivider_unstable } from './renderMenuDivider';\nimport type { MenuDividerProps } from './MenuDivider.types';\nimport type { ForwardRefComponent } from '@fluentui/react-utilities';\nimport { useCustomStyleHook_unstable } from '@fluentui/react-shared-contexts';\n\n/**\n * Define a styled MenuDivider, using the `useMenuDivider_unstable` hook.\n */\nexport const MenuDivider: ForwardRefComponent<MenuDividerProps> = React.forwardRef((props, ref) => {\n const state = useMenuDivider_unstable(props, ref);\n\n useMenuDividerStyles_unstable(state);\n\n useCustomStyleHook_unstable('useMenuDividerStyles_unstable')(state);\n\n return renderMenuDivider_unstable(state);\n});\n\nMenuDivider.displayName = 'MenuDivider';\n"],"names":["React","useMenuDivider_unstable","useMenuDividerStyles_unstable","renderMenuDivider_unstable","useCustomStyleHook_unstable","MenuDivider","forwardRef","props","ref","state","displayName"],"mappings":"AAAA;;;;;;;;;;;;iEAEuB,QAAQ;gCACS,sBAAmB;4CACb,mCAAgC;mCACnC,yBAAsB;qCAGrB,kCAAkC;AAKvE,MAAMK,cAAAA,WAAAA,GAAqDL,OAAMM,UAAU,CAAC,CAACC,OAAOC;IACzF,MAAMC,YAAQR,uCAAAA,EAAwBM,OAAOC;QAE7CN,yDAAAA,EAA8BO;QAE9BL,gDAAAA,EAA4B,iCAAiCK;IAE7D,WAAON,6CAAAA,EAA2BM;AACpC,GAAG;AAEHJ,YAAYK,WAAW,GAAG"}
|
|
@@ -25,7 +25,7 @@ _export(exports, {
|
|
|
25
25
|
return _useMenuDivider.useMenuDivider_unstable;
|
|
26
26
|
}
|
|
27
27
|
});
|
|
28
|
-
const _MenuDivider = require("./MenuDivider");
|
|
29
|
-
const _renderMenuDivider = require("./renderMenuDivider");
|
|
30
|
-
const _useMenuDivider = require("./useMenuDivider");
|
|
31
|
-
const _useMenuDividerStylesstyles = require("./useMenuDividerStyles.styles");
|
|
28
|
+
const _MenuDivider = require("./MenuDivider.cjs");
|
|
29
|
+
const _renderMenuDivider = require("./renderMenuDivider.cjs");
|
|
30
|
+
const _useMenuDivider = require("./useMenuDivider.cjs");
|
|
31
|
+
const _useMenuDividerStylesstyles = require("./useMenuDividerStyles.styles.cjs");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/MenuDivider/index.ts"],"sourcesContent":["export type { MenuDividerProps, MenuDividerSlots, MenuDividerState } from './MenuDivider.types';\nexport { MenuDivider } from './MenuDivider';\nexport { renderMenuDivider_unstable } from './renderMenuDivider';\nexport { useMenuDivider_unstable } from './useMenuDivider';\nexport { menuDividerClassNames, useMenuDividerStyles_unstable } from './useMenuDividerStyles.styles';\n"],"names":["MenuDivider","renderMenuDivider_unstable","useMenuDivider_unstable","menuDividerClassNames","useMenuDividerStyles_unstable"],"mappings":";;;;;;;;;;;;eACSA,wBAAW;;;eAGXG,iDAAqB;;;eAFrBF,6CAA0B;;;eAEHG,yDAA6B;;;eADpDF,uCAAuB;;;6BAFJ,
|
|
1
|
+
{"version":3,"sources":["../src/components/MenuDivider/index.ts"],"sourcesContent":["export type { MenuDividerProps, MenuDividerSlots, MenuDividerState } from './MenuDivider.types';\nexport { MenuDivider } from './MenuDivider';\nexport { renderMenuDivider_unstable } from './renderMenuDivider';\nexport { useMenuDivider_unstable } from './useMenuDivider';\nexport { menuDividerClassNames, useMenuDividerStyles_unstable } from './useMenuDividerStyles.styles';\n"],"names":["MenuDivider","renderMenuDivider_unstable","useMenuDivider_unstable","menuDividerClassNames","useMenuDividerStyles_unstable"],"mappings":";;;;;;;;;;;;eACSA,wBAAW;;;eAGXG,iDAAqB;;;eAFrBF,6CAA0B;;;eAEHG,yDAA6B;;;eADpDF,uCAAuB;;;6BAFJ,mBAAgB;mCACD,yBAAsB;gCACzB,sBAAmB;4CACU,mCAAgC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["useMenuDividerStyles.styles.js"],"sourcesContent":["'use client';\nimport { mergeClasses, makeStyles } from \"@griffel/react\";\nimport { tokens } from \"@fluentui/react-theme\";\nexport const menuDividerClassNames = {\n root: 'fui-MenuDivider'\n};\nconst useStyles = makeStyles({\n root: {\n margin: '4px -5px 4px -5px',\n width: 'auto',\n borderBottom: `${tokens.strokeWidthThin} solid ${tokens.colorNeutralStroke2}`\n }\n});\nexport const useMenuDividerStyles_unstable = (state)=>{\n const styles = useStyles();\n // eslint-disable-next-line react-hooks/immutability\n state.root.className = mergeClasses(menuDividerClassNames.root, styles.root, state.root.className);\n return state;\n};\n"],"names":["mergeClasses","__styles","tokens","menuDividerClassNames","root","useStyles","jrapky","Frg6f3","t21cq0","B6of3ja","B74szlk","a9b677","B9xav0g","oivjwe","Bn0qgzm","Bgfg5da","d","p","useMenuDividerStyles_unstable","state","styles","className"],"mappings":"AAAA,YAAY;;;;;;;;;;;;IAGCG,qBAAqB;;;iCAUQ;;;;uBAZD,gBAAgB;AAElD,8BAA8B;IACjCC,IAAI,EAAE;AACV,CAAC;AACD,MAAMC,SAAS,GAAA,WAAA,OAAGJ,eAAA,EAAA;IAAAG,IAAA,EAAA;QAAAE,MAAA,EAAA;QAAAC,MAAA,EAAA;QAAAC,MAAA,EAAA;QAAAC,OAAA,EAAA;QAAAC,OAAA,EAAA;QAAAC,MAAA,EAAA;QAAAC,OAAA,EAAA;QAAAC,MAAA,EAAA;QAAAC,OAAA,EAAA;QAAAC,OAAA,EAAA;IAAA;AAAA,GAAA;IAAAC,CAAA,EAAA;QAAA;YAAA;YAAA;gBAAAC,CAAA,EAAA,CAAA;YAAA;SAAA;QAAA;QAAA;YAAA;YAAA;gBAAAA,CAAA,EAAA,CAAA;YAAA;SAAA;KAAA;AAAA,CAMjB,CAAC;AACK,MAAMC,iCAAiCC,KAAK,IAAG;IAClD,MAAMC,MAAM,GAAGf,SAAS,CAAC,CAAC;IAC1B,oDAAA;IACAc,KAAK,CAACf,IAAI,CAACiB,SAAS,OAAGrB,mBAAY,EAACG,qBAAqB,CAACC,IAAI,EAAEgB,MAAM,CAAChB,IAAI,EAAEe,KAAK,CAACf,IAAI,CAACiB,SAAS,CAAC;IAClG,OAAOF,KAAK;AAChB,CAAC"}
|
|
@@ -11,10 +11,10 @@ Object.defineProperty(exports, "MenuGroup", {
|
|
|
11
11
|
});
|
|
12
12
|
const _interop_require_wildcard = require("@swc/helpers/_/_interop_require_wildcard");
|
|
13
13
|
const _react = /*#__PURE__*/ _interop_require_wildcard._(require("react"));
|
|
14
|
-
const _useMenuGroup = require("./useMenuGroup");
|
|
15
|
-
const _renderMenuGroup = require("./renderMenuGroup");
|
|
16
|
-
const _useMenuGroupContextValues = require("./useMenuGroupContextValues");
|
|
17
|
-
const _useMenuGroupStylesstyles = require("./useMenuGroupStyles.styles");
|
|
14
|
+
const _useMenuGroup = require("./useMenuGroup.cjs");
|
|
15
|
+
const _renderMenuGroup = require("./renderMenuGroup.cjs");
|
|
16
|
+
const _useMenuGroupContextValues = require("./useMenuGroupContextValues.cjs");
|
|
17
|
+
const _useMenuGroupStylesstyles = require("./useMenuGroupStyles.styles.cjs");
|
|
18
18
|
const _reactsharedcontexts = require("@fluentui/react-shared-contexts");
|
|
19
19
|
const MenuGroup = /*#__PURE__*/ _react.forwardRef((props, ref)=>{
|
|
20
20
|
const state = (0, _useMenuGroup.useMenuGroup_unstable)(props, ref);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/MenuGroup/MenuGroup.tsx"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport { useMenuGroup_unstable } from './useMenuGroup';\nimport { renderMenuGroup_unstable } from './renderMenuGroup';\nimport { useMenuGroupContextValues_unstable } from './useMenuGroupContextValues';\nimport type { MenuGroupProps } from './MenuGroup.types';\nimport type { ForwardRefComponent } from '@fluentui/react-utilities';\nimport { useMenuGroupStyles_unstable } from './useMenuGroupStyles.styles';\nimport { useCustomStyleHook_unstable } from '@fluentui/react-shared-contexts';\n\n/**\n * Define a styled MenuGroup, using the `useMenuGroup_unstable` hook.\n */\nexport const MenuGroup: ForwardRefComponent<MenuGroupProps> = React.forwardRef((props, ref) => {\n const state = useMenuGroup_unstable(props, ref);\n const contextValues = useMenuGroupContextValues_unstable(state);\n\n useMenuGroupStyles_unstable(state);\n\n useCustomStyleHook_unstable('useMenuGroupStyles_unstable')(state);\n\n return renderMenuGroup_unstable(state, contextValues);\n});\n\nMenuGroup.displayName = 'MenuGroup';\n"],"names":["React","useMenuGroup_unstable","renderMenuGroup_unstable","useMenuGroupContextValues_unstable","useMenuGroupStyles_unstable","useCustomStyleHook_unstable","MenuGroup","forwardRef","props","ref","state","contextValues","displayName"],"mappings":"AAAA;;;;;;;;;;;;iEAEuB,QAAQ;8BACO,
|
|
1
|
+
{"version":3,"sources":["../src/components/MenuGroup/MenuGroup.tsx"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport { useMenuGroup_unstable } from './useMenuGroup';\nimport { renderMenuGroup_unstable } from './renderMenuGroup';\nimport { useMenuGroupContextValues_unstable } from './useMenuGroupContextValues';\nimport type { MenuGroupProps } from './MenuGroup.types';\nimport type { ForwardRefComponent } from '@fluentui/react-utilities';\nimport { useMenuGroupStyles_unstable } from './useMenuGroupStyles.styles';\nimport { useCustomStyleHook_unstable } from '@fluentui/react-shared-contexts';\n\n/**\n * Define a styled MenuGroup, using the `useMenuGroup_unstable` hook.\n */\nexport const MenuGroup: ForwardRefComponent<MenuGroupProps> = React.forwardRef((props, ref) => {\n const state = useMenuGroup_unstable(props, ref);\n const contextValues = useMenuGroupContextValues_unstable(state);\n\n useMenuGroupStyles_unstable(state);\n\n useCustomStyleHook_unstable('useMenuGroupStyles_unstable')(state);\n\n return renderMenuGroup_unstable(state, contextValues);\n});\n\nMenuGroup.displayName = 'MenuGroup';\n"],"names":["React","useMenuGroup_unstable","renderMenuGroup_unstable","useMenuGroupContextValues_unstable","useMenuGroupStyles_unstable","useCustomStyleHook_unstable","MenuGroup","forwardRef","props","ref","state","contextValues","displayName"],"mappings":"AAAA;;;;;;;;;;;;iEAEuB,QAAQ;8BACO,oBAAiB;iCACd,uBAAoB;2CACV,iCAA8B;0CAGrC,iCAA8B;qCAC9B,kCAAkC;AAKvE,MAAMM,YAAAA,WAAAA,GAAiDN,OAAMO,UAAU,CAAC,CAACC,OAAOC;IACrF,MAAMC,YAAQT,mCAAAA,EAAsBO,OAAOC;IAC3C,MAAME,oBAAgBR,6DAAAA,EAAmCO;QAEzDN,qDAAAA,EAA4BM;QAE5BL,gDAAAA,EAA4B,+BAA+BK;IAE3D,WAAOR,yCAAAA,EAAyBQ,OAAOC;AACzC,GAAG;AAEHL,UAAUM,WAAW,GAAG"}
|
|
@@ -28,8 +28,8 @@ _export(exports, {
|
|
|
28
28
|
return _useMenuGroup.useMenuGroup_unstable;
|
|
29
29
|
}
|
|
30
30
|
});
|
|
31
|
-
const _MenuGroup = require("./MenuGroup");
|
|
32
|
-
const _renderMenuGroup = require("./renderMenuGroup");
|
|
33
|
-
const _useMenuGroup = require("./useMenuGroup");
|
|
34
|
-
const _useMenuGroupContextValues = require("./useMenuGroupContextValues");
|
|
35
|
-
const _useMenuGroupStylesstyles = require("./useMenuGroupStyles.styles");
|
|
31
|
+
const _MenuGroup = require("./MenuGroup.cjs");
|
|
32
|
+
const _renderMenuGroup = require("./renderMenuGroup.cjs");
|
|
33
|
+
const _useMenuGroup = require("./useMenuGroup.cjs");
|
|
34
|
+
const _useMenuGroupContextValues = require("./useMenuGroupContextValues.cjs");
|
|
35
|
+
const _useMenuGroupStylesstyles = require("./useMenuGroupStyles.styles.cjs");
|