@fluentui/react-menu 9.0.0-beta.1 → 9.0.0-beta.5
Sign up to get free protection for your applications and to get access to all the features.
- package/CHANGELOG.json +307 -1
- package/CHANGELOG.md +74 -2
- package/dist/react-menu.d.ts +34 -7
- package/lib/components/Menu/Menu.js +3 -3
- package/lib/components/Menu/Menu.js.map +1 -1
- package/lib/components/Menu/Menu.types.d.ts +2 -1
- package/lib/components/Menu/renderMenu.js +1 -1
- package/lib/components/Menu/renderMenu.js.map +1 -1
- package/lib/components/Menu/useMenu.js +95 -112
- package/lib/components/Menu/useMenu.js.map +1 -1
- package/lib/components/Menu/useMenuContextValues.js +34 -32
- package/lib/components/Menu/useMenuContextValues.js.map +1 -1
- package/lib/components/MenuDivider/MenuDivider.js +2 -2
- package/lib/components/MenuDivider/MenuDivider.js.map +1 -1
- package/lib/components/MenuDivider/renderMenuDivider.js +6 -7
- package/lib/components/MenuDivider/renderMenuDivider.js.map +1 -1
- package/lib/components/MenuDivider/useMenuDivider.js +6 -7
- package/lib/components/MenuDivider/useMenuDivider.js.map +1 -1
- package/lib/components/MenuDivider/useMenuDividerStyles.d.ts +1 -0
- package/lib/components/MenuDivider/useMenuDividerStyles.js +5 -4
- package/lib/components/MenuDivider/useMenuDividerStyles.js.map +1 -1
- package/lib/components/MenuGroup/MenuGroup.js +5 -3
- package/lib/components/MenuGroup/MenuGroup.js.map +1 -1
- package/lib/components/MenuGroup/index.d.ts +1 -0
- package/lib/components/MenuGroup/index.js +1 -0
- package/lib/components/MenuGroup/index.js.map +1 -1
- package/lib/components/MenuGroup/renderMenuGroup.js +6 -7
- package/lib/components/MenuGroup/renderMenuGroup.js.map +1 -1
- package/lib/components/MenuGroup/useMenuGroup.js +6 -6
- package/lib/components/MenuGroup/useMenuGroup.js.map +1 -1
- package/lib/components/MenuGroup/useMenuGroupContextValues.js +7 -7
- package/lib/components/MenuGroup/useMenuGroupContextValues.js.map +1 -1
- package/lib/components/MenuGroup/useMenuGroupStyles.d.ts +3 -0
- package/lib/components/MenuGroup/useMenuGroupStyles.js +7 -0
- package/lib/components/MenuGroup/useMenuGroupStyles.js.map +1 -0
- package/lib/components/MenuGroupHeader/MenuGroupHeader.js +2 -2
- package/lib/components/MenuGroupHeader/MenuGroupHeader.js.map +1 -1
- package/lib/components/MenuGroupHeader/renderMenuGroupHeader.js +6 -7
- package/lib/components/MenuGroupHeader/renderMenuGroupHeader.js.map +1 -1
- package/lib/components/MenuGroupHeader/useMenuGroupHeader.js +8 -6
- package/lib/components/MenuGroupHeader/useMenuGroupHeader.js.map +1 -1
- package/lib/components/MenuGroupHeader/useMenuGroupHeaderStyles.d.ts +1 -0
- package/lib/components/MenuGroupHeader/useMenuGroupHeaderStyles.js +5 -4
- package/lib/components/MenuGroupHeader/useMenuGroupHeaderStyles.js.map +1 -1
- package/lib/components/MenuItem/MenuItem.js +2 -2
- package/lib/components/MenuItem/MenuItem.js.map +1 -1
- package/lib/components/MenuItem/renderMenuItem.js +6 -7
- package/lib/components/MenuItem/renderMenuItem.js.map +1 -1
- package/lib/components/MenuItem/useCharacterSearch.js +6 -6
- package/lib/components/MenuItem/useCharacterSearch.js.map +1 -1
- package/lib/components/MenuItem/useMenuItem.js +31 -36
- package/lib/components/MenuItem/useMenuItem.js.map +1 -1
- package/lib/components/MenuItem/useMenuItemStyles.d.ts +1 -0
- package/lib/components/MenuItem/useMenuItemStyles.js +5 -4
- package/lib/components/MenuItem/useMenuItemStyles.js.map +1 -1
- package/lib/components/MenuItemCheckbox/MenuItemCheckbox.js +4 -4
- package/lib/components/MenuItemCheckbox/MenuItemCheckbox.js.map +1 -1
- package/lib/components/MenuItemCheckbox/index.d.ts +1 -0
- package/lib/components/MenuItemCheckbox/index.js +1 -0
- package/lib/components/MenuItemCheckbox/index.js.map +1 -1
- package/lib/components/MenuItemCheckbox/renderMenuItemCheckbox.js +6 -7
- package/lib/components/MenuItemCheckbox/renderMenuItemCheckbox.js.map +1 -1
- package/lib/components/MenuItemCheckbox/useMenuItemCheckbox.js +12 -13
- package/lib/components/MenuItemCheckbox/useMenuItemCheckbox.js.map +1 -1
- package/lib/components/MenuItemCheckbox/useMenuItemCheckboxStyles.d.ts +2 -1
- package/lib/components/MenuItemCheckbox/useMenuItemCheckboxStyles.js +4 -1
- package/lib/components/MenuItemCheckbox/useMenuItemCheckboxStyles.js.map +1 -1
- package/lib/components/MenuItemRadio/MenuItemRadio.js +2 -2
- package/lib/components/MenuItemRadio/MenuItemRadio.js.map +1 -1
- package/lib/components/MenuItemRadio/index.d.ts +1 -0
- package/lib/components/MenuItemRadio/index.js +1 -0
- package/lib/components/MenuItemRadio/index.js.map +1 -1
- package/lib/components/MenuItemRadio/renderMenuItemRadio.js +6 -7
- package/lib/components/MenuItemRadio/renderMenuItemRadio.js.map +1 -1
- package/lib/components/MenuItemRadio/useMenuItemRadio.js +12 -12
- package/lib/components/MenuItemRadio/useMenuItemRadio.js.map +1 -1
- package/lib/components/MenuItemRadio/useMenuItemRadioStyles.d.ts +1 -0
- package/lib/components/MenuItemRadio/useMenuItemRadioStyles.js +4 -1
- package/lib/components/MenuItemRadio/useMenuItemRadioStyles.js.map +1 -1
- package/lib/components/MenuList/MenuList.js +3 -3
- package/lib/components/MenuList/MenuList.js.map +1 -1
- package/lib/components/MenuList/MenuList.types.d.ts +8 -6
- package/lib/components/MenuList/renderMenuList.js +6 -7
- package/lib/components/MenuList/renderMenuList.js.map +1 -1
- package/lib/components/MenuList/useMenuList.js +66 -86
- package/lib/components/MenuList/useMenuList.js.map +1 -1
- package/lib/components/MenuList/useMenuListContextValues.js +18 -16
- package/lib/components/MenuList/useMenuListContextValues.js.map +1 -1
- package/lib/components/MenuList/useMenuListStyles.d.ts +1 -0
- package/lib/components/MenuList/useMenuListStyles.js +5 -4
- package/lib/components/MenuList/useMenuListStyles.js.map +1 -1
- package/lib/components/MenuPopover/MenuPopover.js +2 -2
- package/lib/components/MenuPopover/MenuPopover.js.map +1 -1
- package/lib/components/MenuPopover/renderMenuPopover.js +7 -7
- package/lib/components/MenuPopover/renderMenuPopover.js.map +1 -1
- package/lib/components/MenuPopover/useMenuPopover.js +29 -38
- package/lib/components/MenuPopover/useMenuPopover.js.map +1 -1
- package/lib/components/MenuPopover/useMenuPopoverStyles.d.ts +1 -0
- package/lib/components/MenuPopover/useMenuPopoverStyles.js +7 -6
- package/lib/components/MenuPopover/useMenuPopoverStyles.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/renderMenuTrigger.js +1 -1
- package/lib/components/MenuTrigger/renderMenuTrigger.js.map +1 -1
- package/lib/components/MenuTrigger/useMenuTrigger.js +3 -4
- package/lib/components/MenuTrigger/useMenuTrigger.js.map +1 -1
- package/lib/components/MenuTrigger/useTriggerElement.js +51 -65
- package/lib/components/MenuTrigger/useTriggerElement.js.map +1 -1
- package/lib/contexts/menuContext.js +5 -11
- package/lib/contexts/menuContext.js.map +1 -1
- package/lib/contexts/menuGroupContext.js +3 -5
- package/lib/contexts/menuGroupContext.js.map +1 -1
- package/lib/contexts/menuListContext.js +7 -17
- package/lib/contexts/menuListContext.js.map +1 -1
- package/lib/contexts/menuTriggerContext.js +3 -5
- package/lib/contexts/menuTriggerContext.js.map +1 -1
- package/lib/selectable/useCheckmarkStyles.js +3 -3
- package/lib/selectable/useCheckmarkStyles.js.map +1 -1
- package/lib/utils/useIsSubmenu.js +2 -4
- package/lib/utils/useIsSubmenu.js.map +1 -1
- package/lib/utils/useOnMenuEnter.js +16 -14
- package/lib/utils/useOnMenuEnter.js.map +1 -1
- package/lib-commonjs/Menu.js +1 -1
- package/lib-commonjs/MenuDivider.js +1 -1
- package/lib-commonjs/MenuGroup.js +1 -1
- package/lib-commonjs/MenuGroupHeader.js +1 -1
- package/lib-commonjs/MenuItem.js +1 -1
- package/lib-commonjs/MenuItemCheckbox.js +1 -1
- package/lib-commonjs/MenuItemRadio.js +1 -1
- package/lib-commonjs/MenuList.js +1 -1
- package/lib-commonjs/MenuPopover.js +1 -1
- package/lib-commonjs/MenuTrigger.js +1 -1
- package/lib-commonjs/components/Menu/Menu.js +6 -6
- package/lib-commonjs/components/Menu/Menu.js.map +1 -1
- package/lib-commonjs/components/Menu/Menu.types.d.ts +2 -1
- package/lib-commonjs/components/Menu/index.js +1 -1
- package/lib-commonjs/components/Menu/renderMenu.js +3 -3
- package/lib-commonjs/components/Menu/renderMenu.js.map +1 -1
- package/lib-commonjs/components/Menu/useMenu.js +104 -122
- package/lib-commonjs/components/Menu/useMenu.js.map +1 -1
- package/lib-commonjs/components/Menu/useMenuContextValues.js +34 -32
- package/lib-commonjs/components/Menu/useMenuContextValues.js.map +1 -1
- package/lib-commonjs/components/MenuDivider/MenuDivider.js +6 -6
- package/lib-commonjs/components/MenuDivider/MenuDivider.js.map +1 -1
- package/lib-commonjs/components/MenuDivider/index.js +1 -1
- package/lib-commonjs/components/MenuDivider/renderMenuDivider.js +8 -10
- package/lib-commonjs/components/MenuDivider/renderMenuDivider.js.map +1 -1
- package/lib-commonjs/components/MenuDivider/useMenuDivider.js +7 -9
- package/lib-commonjs/components/MenuDivider/useMenuDivider.js.map +1 -1
- package/lib-commonjs/components/MenuDivider/useMenuDividerStyles.d.ts +1 -0
- package/lib-commonjs/components/MenuDivider/useMenuDividerStyles.js +8 -6
- package/lib-commonjs/components/MenuDivider/useMenuDividerStyles.js.map +1 -1
- package/lib-commonjs/components/MenuGroup/MenuGroup.js +10 -7
- package/lib-commonjs/components/MenuGroup/MenuGroup.js.map +1 -1
- package/lib-commonjs/components/MenuGroup/index.d.ts +1 -0
- package/lib-commonjs/components/MenuGroup/index.js +3 -1
- package/lib-commonjs/components/MenuGroup/index.js.map +1 -1
- package/lib-commonjs/components/MenuGroup/renderMenuGroup.js +9 -11
- package/lib-commonjs/components/MenuGroup/renderMenuGroup.js.map +1 -1
- package/lib-commonjs/components/MenuGroup/useMenuGroup.js +7 -8
- package/lib-commonjs/components/MenuGroup/useMenuGroup.js.map +1 -1
- package/lib-commonjs/components/MenuGroup/useMenuGroupContextValues.js +8 -8
- package/lib-commonjs/components/MenuGroup/useMenuGroupContextValues.js.map +1 -1
- package/lib-commonjs/components/MenuGroup/useMenuGroupStyles.d.ts +3 -0
- package/lib-commonjs/components/MenuGroup/useMenuGroupStyles.js +18 -0
- package/lib-commonjs/components/MenuGroup/useMenuGroupStyles.js.map +1 -0
- package/lib-commonjs/components/MenuGroupHeader/MenuGroupHeader.js +6 -6
- package/lib-commonjs/components/MenuGroupHeader/MenuGroupHeader.js.map +1 -1
- package/lib-commonjs/components/MenuGroupHeader/index.js +1 -1
- package/lib-commonjs/components/MenuGroupHeader/renderMenuGroupHeader.js +8 -10
- package/lib-commonjs/components/MenuGroupHeader/renderMenuGroupHeader.js.map +1 -1
- package/lib-commonjs/components/MenuGroupHeader/useMenuGroupHeader.js +10 -9
- package/lib-commonjs/components/MenuGroupHeader/useMenuGroupHeader.js.map +1 -1
- package/lib-commonjs/components/MenuGroupHeader/useMenuGroupHeaderStyles.d.ts +1 -0
- package/lib-commonjs/components/MenuGroupHeader/useMenuGroupHeaderStyles.js +8 -6
- package/lib-commonjs/components/MenuGroupHeader/useMenuGroupHeaderStyles.js.map +1 -1
- package/lib-commonjs/components/MenuItem/MenuItem.js +7 -7
- package/lib-commonjs/components/MenuItem/MenuItem.js.map +1 -1
- package/lib-commonjs/components/MenuItem/index.js +1 -1
- package/lib-commonjs/components/MenuItem/renderMenuItem.js +9 -11
- package/lib-commonjs/components/MenuItem/renderMenuItem.js.map +1 -1
- package/lib-commonjs/components/MenuItem/useCharacterSearch.js +7 -7
- package/lib-commonjs/components/MenuItem/useCharacterSearch.js.map +1 -1
- package/lib-commonjs/components/MenuItem/useMenuItem.js +38 -44
- package/lib-commonjs/components/MenuItem/useMenuItem.js.map +1 -1
- package/lib-commonjs/components/MenuItem/useMenuItemStyles.d.ts +1 -0
- package/lib-commonjs/components/MenuItem/useMenuItemStyles.js +9 -7
- package/lib-commonjs/components/MenuItem/useMenuItemStyles.js.map +1 -1
- package/lib-commonjs/components/MenuItemCheckbox/MenuItemCheckbox.js +7 -7
- package/lib-commonjs/components/MenuItemCheckbox/MenuItemCheckbox.js.map +1 -1
- package/lib-commonjs/components/MenuItemCheckbox/index.d.ts +1 -0
- package/lib-commonjs/components/MenuItemCheckbox/index.js +3 -1
- package/lib-commonjs/components/MenuItemCheckbox/index.js.map +1 -1
- package/lib-commonjs/components/MenuItemCheckbox/renderMenuItemCheckbox.js +9 -11
- package/lib-commonjs/components/MenuItemCheckbox/renderMenuItemCheckbox.js.map +1 -1
- package/lib-commonjs/components/MenuItemCheckbox/useMenuItemCheckbox.js +17 -19
- package/lib-commonjs/components/MenuItemCheckbox/useMenuItemCheckbox.js.map +1 -1
- package/lib-commonjs/components/MenuItemCheckbox/useMenuItemCheckboxStyles.d.ts +2 -1
- package/lib-commonjs/components/MenuItemCheckbox/useMenuItemCheckboxStyles.js +10 -5
- package/lib-commonjs/components/MenuItemCheckbox/useMenuItemCheckboxStyles.js.map +1 -1
- package/lib-commonjs/components/MenuItemRadio/MenuItemRadio.js +6 -6
- package/lib-commonjs/components/MenuItemRadio/MenuItemRadio.js.map +1 -1
- package/lib-commonjs/components/MenuItemRadio/index.d.ts +1 -0
- package/lib-commonjs/components/MenuItemRadio/index.js +3 -1
- package/lib-commonjs/components/MenuItemRadio/index.js.map +1 -1
- package/lib-commonjs/components/MenuItemRadio/renderMenuItemRadio.js +9 -11
- package/lib-commonjs/components/MenuItemRadio/renderMenuItemRadio.js.map +1 -1
- package/lib-commonjs/components/MenuItemRadio/useMenuItemRadio.js +17 -18
- package/lib-commonjs/components/MenuItemRadio/useMenuItemRadio.js.map +1 -1
- package/lib-commonjs/components/MenuItemRadio/useMenuItemRadioStyles.d.ts +1 -0
- package/lib-commonjs/components/MenuItemRadio/useMenuItemRadioStyles.js +9 -4
- package/lib-commonjs/components/MenuItemRadio/useMenuItemRadioStyles.js.map +1 -1
- package/lib-commonjs/components/MenuList/MenuList.js +8 -8
- package/lib-commonjs/components/MenuList/MenuList.js.map +1 -1
- package/lib-commonjs/components/MenuList/MenuList.types.d.ts +8 -6
- package/lib-commonjs/components/MenuList/index.js +1 -1
- package/lib-commonjs/components/MenuList/renderMenuList.js +9 -11
- package/lib-commonjs/components/MenuList/renderMenuList.js.map +1 -1
- package/lib-commonjs/components/MenuList/useMenuList.js +72 -93
- package/lib-commonjs/components/MenuList/useMenuList.js.map +1 -1
- package/lib-commonjs/components/MenuList/useMenuListContextValues.js +18 -16
- package/lib-commonjs/components/MenuList/useMenuListContextValues.js.map +1 -1
- package/lib-commonjs/components/MenuList/useMenuListStyles.d.ts +1 -0
- package/lib-commonjs/components/MenuList/useMenuListStyles.js +8 -6
- package/lib-commonjs/components/MenuList/useMenuListStyles.js.map +1 -1
- package/lib-commonjs/components/MenuPopover/MenuPopover.js +6 -6
- package/lib-commonjs/components/MenuPopover/MenuPopover.js.map +1 -1
- package/lib-commonjs/components/MenuPopover/index.js +1 -1
- package/lib-commonjs/components/MenuPopover/renderMenuPopover.js +10 -11
- package/lib-commonjs/components/MenuPopover/renderMenuPopover.js.map +1 -1
- package/lib-commonjs/components/MenuPopover/useMenuPopover.js +36 -46
- package/lib-commonjs/components/MenuPopover/useMenuPopover.js.map +1 -1
- package/lib-commonjs/components/MenuPopover/useMenuPopoverStyles.d.ts +1 -0
- package/lib-commonjs/components/MenuPopover/useMenuPopoverStyles.js +10 -8
- package/lib-commonjs/components/MenuPopover/useMenuPopoverStyles.js.map +1 -1
- package/lib-commonjs/components/MenuTrigger/MenuTrigger.js +4 -4
- package/lib-commonjs/components/MenuTrigger/MenuTrigger.js.map +1 -1
- package/lib-commonjs/components/MenuTrigger/index.js +1 -1
- package/lib-commonjs/components/MenuTrigger/renderMenuTrigger.js +3 -3
- package/lib-commonjs/components/MenuTrigger/renderMenuTrigger.js.map +1 -1
- package/lib-commonjs/components/MenuTrigger/useMenuTrigger.js +4 -6
- package/lib-commonjs/components/MenuTrigger/useMenuTrigger.js.map +1 -1
- package/lib-commonjs/components/MenuTrigger/useTriggerElement.js +58 -73
- package/lib-commonjs/components/MenuTrigger/useTriggerElement.js.map +1 -1
- package/lib-commonjs/components/index.js +1 -1
- package/lib-commonjs/contexts/menuContext.js +4 -10
- package/lib-commonjs/contexts/menuContext.js.map +1 -1
- package/lib-commonjs/contexts/menuGroupContext.js +3 -5
- package/lib-commonjs/contexts/menuGroupContext.js.map +1 -1
- package/lib-commonjs/contexts/menuListContext.js +6 -16
- package/lib-commonjs/contexts/menuListContext.js.map +1 -1
- package/lib-commonjs/contexts/menuTriggerContext.js +3 -5
- package/lib-commonjs/contexts/menuTriggerContext.js.map +1 -1
- package/lib-commonjs/index.js +1 -1
- package/lib-commonjs/selectable/index.js +1 -1
- package/lib-commonjs/selectable/useCheckmarkStyles.js +4 -4
- package/lib-commonjs/selectable/useCheckmarkStyles.js.map +1 -1
- package/lib-commonjs/utils/index.js +1 -1
- package/lib-commonjs/utils/useIsSubmenu.js +5 -7
- package/lib-commonjs/utils/useIsSubmenu.js.map +1 -1
- package/lib-commonjs/utils/useOnMenuEnter.js +18 -16
- package/lib-commonjs/utils/useOnMenuEnter.js.map +1 -1
- package/package.json +15 -15
- package/lib/common/isConformant.d.ts +0 -4
- package/lib/common/isConformant.js +0 -12
- package/lib/common/isConformant.js.map +0 -1
- package/lib/common/mockUseMenuContext.d.ts +0 -7
- package/lib/common/mockUseMenuContext.js +0 -36
- package/lib/common/mockUseMenuContext.js.map +0 -1
- package/lib/utils/DefaultIcons.d.ts +0 -7
- package/lib/utils/DefaultIcons.js +0 -88
- package/lib/utils/DefaultIcons.js.map +0 -1
- package/lib-commonjs/common/isConformant.d.ts +0 -4
- package/lib-commonjs/common/isConformant.js +0 -23
- package/lib-commonjs/common/isConformant.js.map +0 -1
- package/lib-commonjs/common/mockUseMenuContext.d.ts +0 -7
- package/lib-commonjs/common/mockUseMenuContext.js +0 -47
- package/lib-commonjs/common/mockUseMenuContext.js.map +0 -1
- package/lib-commonjs/utils/DefaultIcons.d.ts +0 -7
- package/lib-commonjs/utils/DefaultIcons.js +0 -100
- package/lib-commonjs/utils/DefaultIcons.js.map +0 -1
@@ -1,6 +1,9 @@
|
|
1
|
+
import { mergeClasses } from '@fluentui/react-make-styles';
|
1
2
|
import { useCheckmarkStyles } from '../../selectable/index';
|
2
3
|
import { useMenuItemStyles } from '../MenuItem/useMenuItemStyles';
|
3
|
-
export
|
4
|
+
export const menuItemCheckboxClassName = 'fui-MenuItemCheckbox';
|
5
|
+
export const useMenuItemCheckboxStyles = state => {
|
6
|
+
state.root.className = mergeClasses(menuItemCheckboxClassName, state.root.className);
|
4
7
|
useMenuItemStyles(state);
|
5
8
|
useCheckmarkStyles(state);
|
6
9
|
};
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["../../../src/components/MenuItemCheckbox/useMenuItemCheckboxStyles.ts"],"names":[],"mappings":"AAAA,SAAS,kBAAT,QAAmC,wBAAnC;AACA,SAAS,iBAAT,QAAkC,+BAAlC;AAGA,OAAO,
|
1
|
+
{"version":3,"sources":["../../../src/components/MenuItemCheckbox/useMenuItemCheckboxStyles.ts"],"names":[],"mappings":"AAAA,SAAS,YAAT,QAA6B,6BAA7B;AACA,SAAS,kBAAT,QAAmC,wBAAnC;AACA,SAAS,iBAAT,QAAkC,+BAAlC;AAGA,OAAO,MAAM,yBAAyB,GAAG,sBAAlC;AAEP,OAAO,MAAM,yBAAyB,GAAI,KAAD,IAAiC;AACxE,EAAA,KAAK,CAAC,IAAN,CAAW,SAAX,GAAuB,YAAY,CAAC,yBAAD,EAA4B,KAAK,CAAC,IAAN,CAAW,SAAvC,CAAnC;AAEA,EAAA,iBAAiB,CAAC,KAAD,CAAjB;AACA,EAAA,kBAAkB,CAAC,KAAD,CAAlB;AACD,CALM","sourceRoot":""}
|
@@ -6,8 +6,8 @@ import { useMenuItemRadioStyles } from './useMenuItemRadioStyles';
|
|
6
6
|
* Define a styled MenuItemRadio, using the `useMenuItemRadio` hook.
|
7
7
|
*/
|
8
8
|
|
9
|
-
export
|
10
|
-
|
9
|
+
export const MenuItemRadio = /*#__PURE__*/React.forwardRef((props, ref) => {
|
10
|
+
const state = useMenuItemRadio(props, ref);
|
11
11
|
useMenuItemRadioStyles(state);
|
12
12
|
return renderMenuItemRadio(state);
|
13
13
|
});
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["../../../src/components/MenuItemRadio/MenuItemRadio.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAZ,MAAuB,OAAvB;AACA,SAAS,gBAAT,QAAiC,oBAAjC;AACA,SAAS,mBAAT,QAAoC,uBAApC;AACA,SAAS,sBAAT,QAAuC,0BAAvC;AAIA;;AAEG;;AACH,OAAO,
|
1
|
+
{"version":3,"sources":["../../../src/components/MenuItemRadio/MenuItemRadio.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAZ,MAAuB,OAAvB;AACA,SAAS,gBAAT,QAAiC,oBAAjC;AACA,SAAS,mBAAT,QAAoC,uBAApC;AACA,SAAS,sBAAT,QAAuC,0BAAvC;AAIA;;AAEG;;AACH,OAAO,MAAM,aAAa,gBAA4C,KAAK,CAAC,UAAN,CAAiB,CAAC,KAAD,EAAQ,GAAR,KAAe;AACpG,QAAM,KAAK,GAAG,gBAAgB,CAAC,KAAD,EAAQ,GAAR,CAA9B;AACA,EAAA,sBAAsB,CAAC,KAAD,CAAtB;AAEA,SAAO,mBAAmB,CAAC,KAAD,CAA1B;AACD,CALqE,CAA/D;AAOP,aAAa,CAAC,WAAd,GAA4B,eAA5B","sourceRoot":""}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/MenuItemRadio/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAC;AACtC,cAAc,iBAAiB,CAAC;AAChC,cAAc,uBAAuB,CAAC;AACtC,cAAc,oBAAoB,CAAC"}
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/MenuItemRadio/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAC;AACtC,cAAc,iBAAiB,CAAC;AAChC,cAAc,uBAAuB,CAAC;AACtC,cAAc,oBAAoB,CAAC;AACnC,cAAc,0BAA0B,CAAC"}
|
@@ -1,4 +1,3 @@
|
|
1
|
-
import { __assign } from "tslib";
|
2
1
|
import * as React from 'react';
|
3
2
|
import { getSlots } from '@fluentui/react-utilities';
|
4
3
|
import { menuItemSlots } from '../MenuItem/index';
|
@@ -7,11 +6,11 @@ import { menuItemSlots } from '../MenuItem/index';
|
|
7
6
|
* slots to children.
|
8
7
|
*/
|
9
8
|
|
10
|
-
export
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
return /*#__PURE__*/React.createElement(slots.root,
|
9
|
+
export const renderMenuItemRadio = state => {
|
10
|
+
const {
|
11
|
+
slots,
|
12
|
+
slotProps
|
13
|
+
} = getSlots(state, menuItemSlots);
|
14
|
+
return /*#__PURE__*/React.createElement(slots.root, Object.assign({}, slotProps.root), /*#__PURE__*/React.createElement(slots.checkmark, Object.assign({}, slotProps.checkmark)), /*#__PURE__*/React.createElement(slots.icon, Object.assign({}, slotProps.icon)), /*#__PURE__*/React.createElement(slots.content, Object.assign({}, slotProps.content)), /*#__PURE__*/React.createElement(slots.secondaryContent, Object.assign({}, slotProps.secondaryContent)));
|
16
15
|
};
|
17
16
|
//# sourceMappingURL=renderMenuItemRadio.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["../../../src/components/MenuItemRadio/renderMenuItemRadio.tsx"],"names":[],"mappings":"
|
1
|
+
{"version":3,"sources":["../../../src/components/MenuItemRadio/renderMenuItemRadio.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAZ,MAAuB,OAAvB;AACA,SAAS,QAAT,QAAyB,2BAAzB;AACA,SAAS,aAAT,QAA8B,mBAA9B;AAIA;;;AAGG;;AACH,OAAO,MAAM,mBAAmB,GAAI,KAAD,IAA8B;AAC/D,QAAM;AAAE,IAAA,KAAF;AAAS,IAAA;AAAT,MAAuB,QAAQ,CAAgB,KAAhB,EAAuB,aAAvB,CAArC;AAEA,sBACE,KAAA,CAAA,aAAA,CAAC,KAAK,CAAC,IAAP,EAAW,MAAA,CAAA,MAAA,CAAA,EAAA,EAAK,SAAS,CAAC,IAAf,CAAX,eACE,KAAA,CAAA,aAAA,CAAC,KAAK,CAAC,SAAP,EAAgB,MAAA,CAAA,MAAA,CAAA,EAAA,EAAK,SAAS,CAAC,SAAf,CAAhB,CADF,eAEE,KAAA,CAAA,aAAA,CAAC,KAAK,CAAC,IAAP,EAAW,MAAA,CAAA,MAAA,CAAA,EAAA,EAAK,SAAS,CAAC,IAAf,CAAX,CAFF,eAGE,KAAA,CAAA,aAAA,CAAC,KAAK,CAAC,OAAP,EAAc,MAAA,CAAA,MAAA,CAAA,EAAA,EAAK,SAAS,CAAC,OAAf,CAAd,CAHF,eAIE,KAAA,CAAA,aAAA,CAAC,KAAK,CAAC,gBAAP,EAAuB,MAAA,CAAA,MAAA,CAAA,EAAA,EAAK,SAAS,CAAC,gBAAf,CAAvB,CAJF,CADF;AAQD,CAXM","sourceRoot":""}
|
@@ -1,4 +1,3 @@
|
|
1
|
-
import { __assign } from "tslib";
|
2
1
|
import * as React from 'react';
|
3
2
|
import { resolveShorthand } from '@fluentui/react-utilities';
|
4
3
|
import { Checkmark16Filled } from '@fluentui/react-icons';
|
@@ -8,32 +7,33 @@ import { useMenuItem } from '../MenuItem/useMenuItem';
|
|
8
7
|
* Given user props, returns state and render function for a MenuItemRadio.
|
9
8
|
*/
|
10
9
|
|
11
|
-
export
|
12
|
-
|
10
|
+
export const useMenuItemRadio = (props, ref) => {
|
11
|
+
const radioProps = {
|
13
12
|
role: 'menuitemradio'
|
14
13
|
};
|
15
|
-
|
14
|
+
const state = useMenuItem({ ...radioProps,
|
15
|
+
...props,
|
16
16
|
checkmark: resolveShorthand(props.checkmark, {
|
17
17
|
defaultProps: {
|
18
18
|
children: /*#__PURE__*/React.createElement(Checkmark16Filled, null)
|
19
19
|
},
|
20
20
|
required: true
|
21
21
|
})
|
22
|
-
}
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
22
|
+
}, ref);
|
23
|
+
const selectRadio = useMenuListContext(context => context.selectRadio);
|
24
|
+
const {
|
25
|
+
onClick: onClickOriginal
|
26
|
+
} = state.root;
|
27
|
+
const checked = useMenuListContext(context => {
|
28
28
|
var _a;
|
29
29
|
|
30
|
-
|
30
|
+
const checkedItems = ((_a = context.checkedValues) === null || _a === void 0 ? void 0 : _a[state.name]) || [];
|
31
31
|
return checkedItems.indexOf(state.value) !== -1;
|
32
32
|
});
|
33
33
|
state.checked = checked;
|
34
34
|
state.root['aria-checked'] = state.checked; // MenuItem state already transforms keyDown to click events
|
35
35
|
|
36
|
-
state.root.onClick =
|
36
|
+
state.root.onClick = e => {
|
37
37
|
if (state.disabled) {
|
38
38
|
e.preventDefault();
|
39
39
|
e.stopPropagation();
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["../../../src/components/MenuItemRadio/useMenuItemRadio.tsx"],"names":[],"mappings":"
|
1
|
+
{"version":3,"sources":["../../../src/components/MenuItemRadio/useMenuItemRadio.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAZ,MAAuB,OAAvB;AACA,SAAS,gBAAT,QAAiC,2BAAjC;AACA,SAAS,iBAAT,QAAkC,uBAAlC;AACA,SAAS,kBAAT,QAAmC,gCAAnC;AACA,SAAS,WAAT,QAA4B,yBAA5B;AAGA;;AAEG;;AACH,OAAO,MAAM,gBAAgB,GAAG,CAAC,KAAD,EAA4B,GAA5B,KAA+E;AAC7G,QAAM,UAAU,GAAG;AACjB,IAAA,IAAI,EAAE;AADW,GAAnB;AAIA,QAAM,KAAK,GAAG,WAAW,CACvB,EACE,GAAG,UADL;AAEE,OAAG,KAFL;AAGE,IAAA,SAAS,EAAE,gBAAgB,CAAC,KAAK,CAAC,SAAP,EAAkB;AAC3C,MAAA,YAAY,EAAE;AAAE,QAAA,QAAQ,eAAE,KAAA,CAAA,aAAA,CAAC,iBAAD,EAAkB,IAAlB;AAAZ,OAD6B;AAE3C,MAAA,QAAQ,EAAE;AAFiC,KAAlB;AAH7B,GADuB,EASvB,GATuB,CAAzB;AAYA,QAAM,WAAW,GAAG,kBAAkB,CAAC,OAAO,IAAI,OAAO,CAAC,WAApB,CAAtC;AACA,QAAM;AAAE,IAAA,OAAO,EAAE;AAAX,MAA+B,KAAK,CAAC,IAA3C;AACA,QAAM,OAAO,GAAG,kBAAkB,CAAC,OAAO,IAAG;;;AAC3C,UAAM,YAAY,GAAG,CAAA,CAAA,EAAA,GAAA,OAAO,CAAC,aAAR,MAAqB,IAArB,IAAqB,EAAA,KAAA,KAAA,CAArB,GAAqB,KAAA,CAArB,GAAqB,EAAA,CAAG,KAAK,CAAC,IAAT,CAArB,KAAuC,EAA5D;AACA,WAAO,YAAY,CAAC,OAAb,CAAqB,KAAK,CAAC,KAA3B,MAAsC,CAAC,CAA9C;AACD,GAHiC,CAAlC;AAKA,EAAA,KAAK,CAAC,OAAN,GAAgB,OAAhB;AACA,EAAA,KAAK,CAAC,IAAN,CAAW,cAAX,IAA6B,KAAK,CAAC,OAAnC,CAzB6G,CA2B7G;;AACA,EAAA,KAAK,CAAC,IAAN,CAAW,OAAX,GAAqB,CAAC,IAAG;AACvB,QAAI,KAAK,CAAC,QAAV,EAAoB;AAClB,MAAA,CAAC,CAAC,cAAF;AACA,MAAA,CAAC,CAAC,eAAF;AACA;AACD;;AAED,IAAA,WAAW,KAAA,IAAX,IAAA,WAAW,KAAA,KAAA,CAAX,GAAW,KAAA,CAAX,GAAA,WAAW,CAAG,CAAH,EAAM,KAAK,CAAC,IAAZ,EAAkB,KAAK,CAAC,KAAxB,EAA+B,KAAK,CAAC,OAArC,CAAX;AACA,IAAA,eAAe,KAAA,IAAf,IAAA,eAAe,KAAA,KAAA,CAAf,GAAe,KAAA,CAAf,GAAA,eAAe,CAAG,CAAH,CAAf;AACD,GATD;;AAWA,SAAO,KAAP;AACD,CAxCM","sourceRoot":""}
|
@@ -1,6 +1,9 @@
|
|
1
|
+
import { mergeClasses } from '@fluentui/react-make-styles';
|
1
2
|
import { useCheckmarkStyles } from '../../selectable/index';
|
2
3
|
import { useMenuItemStyles } from '../MenuItem/useMenuItemStyles';
|
3
|
-
export
|
4
|
+
export const menuItemRadioClassName = 'fui-MenuItemRadio';
|
5
|
+
export const useMenuItemRadioStyles = state => {
|
6
|
+
state.root.className = mergeClasses(menuItemRadioClassName, state.root.className);
|
4
7
|
useMenuItemStyles(state);
|
5
8
|
useCheckmarkStyles(state);
|
6
9
|
};
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["../../../src/components/MenuItemRadio/useMenuItemRadioStyles.ts"],"names":[],"mappings":"AAAA,SAAS,kBAAT,QAAmC,wBAAnC;AACA,SAAS,iBAAT,QAAkC,+BAAlC;AAGA,OAAO,
|
1
|
+
{"version":3,"sources":["../../../src/components/MenuItemRadio/useMenuItemRadioStyles.ts"],"names":[],"mappings":"AAAA,SAAS,YAAT,QAA6B,6BAA7B;AACA,SAAS,kBAAT,QAAmC,wBAAnC;AACA,SAAS,iBAAT,QAAkC,+BAAlC;AAGA,OAAO,MAAM,sBAAsB,GAAG,mBAA/B;AAEP,OAAO,MAAM,sBAAsB,GAAI,KAAD,IAA8B;AAClE,EAAA,KAAK,CAAC,IAAN,CAAW,SAAX,GAAuB,YAAY,CAAC,sBAAD,EAAyB,KAAK,CAAC,IAAN,CAAW,SAApC,CAAnC;AAEA,EAAA,iBAAiB,CAAC,KAAD,CAAjB;AACA,EAAA,kBAAkB,CAAC,KAAD,CAAlB;AACD,CALM","sourceRoot":""}
|
@@ -7,9 +7,9 @@ import { useMenuListStyles } from './useMenuListStyles';
|
|
7
7
|
* Define a styled MenuList, using the `useMenuList` hook.
|
8
8
|
*/
|
9
9
|
|
10
|
-
export
|
11
|
-
|
12
|
-
|
10
|
+
export const MenuList = /*#__PURE__*/React.forwardRef((props, ref) => {
|
11
|
+
const state = useMenuList(props, ref);
|
12
|
+
const contextValues = useMenuListContextValues(state);
|
13
13
|
useMenuListStyles(state);
|
14
14
|
return renderMenuList(state, contextValues);
|
15
15
|
});
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["../../../src/components/MenuList/MenuList.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAZ,MAAuB,OAAvB;AACA,SAAS,WAAT,QAA4B,eAA5B;AACA,SAAS,cAAT,QAA+B,kBAA/B;AACA,SAAS,wBAAT,QAAyC,4BAAzC;AACA,SAAS,iBAAT,QAAkC,qBAAlC;AAIA;;AAEG;;AACH,OAAO,
|
1
|
+
{"version":3,"sources":["../../../src/components/MenuList/MenuList.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAZ,MAAuB,OAAvB;AACA,SAAS,WAAT,QAA4B,eAA5B;AACA,SAAS,cAAT,QAA+B,kBAA/B;AACA,SAAS,wBAAT,QAAyC,4BAAzC;AACA,SAAS,iBAAT,QAAkC,qBAAlC;AAIA;;AAEG;;AACH,OAAO,MAAM,QAAQ,gBAAuC,KAAK,CAAC,UAAN,CAAiB,CAAC,KAAD,EAAQ,GAAR,KAAe;AAC1F,QAAM,KAAK,GAAG,WAAW,CAAC,KAAD,EAAQ,GAAR,CAAzB;AACA,QAAM,aAAa,GAAG,wBAAwB,CAAC,KAAD,CAA9C;AACA,EAAA,iBAAiB,CAAC,KAAD,CAAjB;AAEA,SAAO,cAAc,CAAC,KAAD,EAAQ,aAAR,CAArB;AACD,CAN2D,CAArD;AAQP,QAAQ,CAAC,WAAT,GAAuB,UAAvB","sourceRoot":""}
|
@@ -2,6 +2,13 @@ import * as React from 'react';
|
|
2
2
|
import { ComponentProps, ComponentState, IntrinsicShorthandProps } from '@fluentui/react-utilities';
|
3
3
|
import { MenuListContextValue } from '../../contexts/menuListContext';
|
4
4
|
import { SelectableHandler } from '../../selectable/index';
|
5
|
+
export declare type MenuCheckedValueChangeEvent = React.MouseEvent | React.KeyboardEvent;
|
6
|
+
export declare type MenuCheckedValueChangeData = {
|
7
|
+
/** The name of the value */
|
8
|
+
name: string;
|
9
|
+
/** The items for this value that are checked */
|
10
|
+
checkedItems: string[];
|
11
|
+
};
|
5
12
|
export declare type MenuListCommons = {
|
6
13
|
/**
|
7
14
|
* Callback when checked items change for value with a name
|
@@ -9,12 +16,7 @@ export declare type MenuListCommons = {
|
|
9
16
|
* @param event - React's original SyntheticEvent
|
10
17
|
* @param data - A data object with relevant information
|
11
18
|
*/
|
12
|
-
onCheckedValueChange?: (e:
|
13
|
-
/** The name of the value */
|
14
|
-
name: string;
|
15
|
-
/** The items for this value that are checked */
|
16
|
-
checkedItems: string[];
|
17
|
-
}) => void;
|
19
|
+
onCheckedValueChange?: (e: MenuCheckedValueChangeEvent, data: MenuCheckedValueChangeData) => void;
|
18
20
|
/**
|
19
21
|
* Map of all checked values
|
20
22
|
*/
|
@@ -1,4 +1,3 @@
|
|
1
|
-
import { __assign } from "tslib";
|
2
1
|
import * as React from 'react';
|
3
2
|
import { getSlots } from '@fluentui/react-utilities';
|
4
3
|
import { MenuListProvider } from '../../contexts/menuListContext';
|
@@ -6,13 +5,13 @@ import { MenuListProvider } from '../../contexts/menuListContext';
|
|
6
5
|
* Function that renders the final JSX of the component
|
7
6
|
*/
|
8
7
|
|
9
|
-
export
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
8
|
+
export const renderMenuList = (state, contextValues) => {
|
9
|
+
const {
|
10
|
+
slots,
|
11
|
+
slotProps
|
12
|
+
} = getSlots(state);
|
14
13
|
return /*#__PURE__*/React.createElement(MenuListProvider, {
|
15
14
|
value: contextValues.menuList
|
16
|
-
}, /*#__PURE__*/React.createElement(slots.root,
|
15
|
+
}, /*#__PURE__*/React.createElement(slots.root, Object.assign({}, slotProps.root)));
|
17
16
|
};
|
18
17
|
//# sourceMappingURL=renderMenuList.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["../../../src/components/MenuList/renderMenuList.tsx"],"names":[],"mappings":"
|
1
|
+
{"version":3,"sources":["../../../src/components/MenuList/renderMenuList.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAZ,MAAuB,OAAvB;AACA,SAAS,QAAT,QAAyB,2BAAzB;AAEA,SAAS,gBAAT,QAAiC,gCAAjC;AAEA;;AAEG;;AACH,OAAO,MAAM,cAAc,GAAG,CAAC,KAAD,EAAuB,aAAvB,KAA+D;AAC3F,QAAM;AAAE,IAAA,KAAF;AAAS,IAAA;AAAT,MAAuB,QAAQ,CAAgB,KAAhB,CAArC;AAEA,sBACE,KAAA,CAAA,aAAA,CAAC,gBAAD,EAAiB;AAAC,IAAA,KAAK,EAAE,aAAa,CAAC;AAAtB,GAAjB,eACE,KAAA,CAAA,aAAA,CAAC,KAAK,CAAC,IAAP,EAAW,MAAA,CAAA,MAAA,CAAA,EAAA,EAAK,SAAS,CAAC,IAAf,CAAX,CADF,CADF;AAKD,CARM","sourceRoot":""}
|
@@ -1,4 +1,3 @@
|
|
1
|
-
import { __assign, __spreadArrays } from "tslib";
|
2
1
|
import * as React from 'react';
|
3
2
|
import { useMergedRefs, useEventCallback, useControllableState, getNativeElementProps } from '@fluentui/react-utilities';
|
4
3
|
import { useArrowNavigationGroup, useFocusFinders } from '@fluentui/react-tabster';
|
@@ -9,13 +8,15 @@ import { MenuContext } from '../../contexts/menuContext';
|
|
9
8
|
* Returns the props and state required to render the component
|
10
9
|
*/
|
11
10
|
|
12
|
-
export
|
13
|
-
|
11
|
+
export const useMenuList = (props, ref) => {
|
12
|
+
const focusAttributes = useArrowNavigationGroup({
|
14
13
|
circular: true
|
15
14
|
});
|
16
|
-
|
17
|
-
|
18
|
-
|
15
|
+
const {
|
16
|
+
findAllFocusable
|
17
|
+
} = useFocusFinders();
|
18
|
+
const menuContext = useMenuContextSelectors();
|
19
|
+
const hasMenuContext = useHasParentContext(MenuContext);
|
19
20
|
|
20
21
|
if (usingPropsAndMenuContext(props, menuContext, hasMenuContext)) {
|
21
22
|
// TODO throw warnings in development safely
|
@@ -23,44 +24,44 @@ export var useMenuList = function (props, ref) {
|
|
23
24
|
console.warn('You are using both MenuList and Menu props, we recommend you to use Menu props when available');
|
24
25
|
}
|
25
26
|
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
root: getNativeElementProps('div', __assign(__assign({
|
27
|
+
const innerRef = React.useRef(null);
|
28
|
+
const initialState = {
|
29
|
+
root: getNativeElementProps('div', {
|
30
30
|
ref: useMergedRefs(ref, innerRef),
|
31
31
|
role: 'menu',
|
32
|
-
'aria-labelledby': menuContext.triggerId
|
33
|
-
|
32
|
+
'aria-labelledby': menuContext.triggerId,
|
33
|
+
...focusAttributes,
|
34
|
+
...props
|
35
|
+
}),
|
34
36
|
hasIcons: menuContext.hasIcons,
|
35
|
-
hasCheckmarks: menuContext.hasCheckmarks
|
36
|
-
|
37
|
-
|
38
|
-
|
37
|
+
hasCheckmarks: menuContext.hasCheckmarks,
|
38
|
+
...(hasMenuContext && menuContext),
|
39
|
+
...props
|
40
|
+
};
|
41
|
+
const setFocusByFirstCharacter = React.useCallback((e, itemEl) => {
|
39
42
|
// TODO use some kind of children registration to reduce dependency on DOM roles
|
40
|
-
|
43
|
+
const acceptedRoles = ['menuitem', 'menuitemcheckbox', 'menuitemradio'];
|
41
44
|
|
42
45
|
if (!innerRef.current) {
|
43
46
|
return;
|
44
47
|
}
|
45
48
|
|
46
|
-
|
47
|
-
|
48
|
-
});
|
49
|
-
var startIndex = menuItems.indexOf(itemEl) + 1;
|
49
|
+
const menuItems = findAllFocusable(innerRef.current, el => el.hasAttribute('role') && acceptedRoles.indexOf(el.getAttribute('role')) !== -1);
|
50
|
+
let startIndex = menuItems.indexOf(itemEl) + 1;
|
50
51
|
|
51
52
|
if (startIndex === menuItems.length) {
|
52
53
|
startIndex = 0;
|
53
54
|
}
|
54
55
|
|
55
|
-
|
56
|
+
const firstChars = menuItems.map(menuItem => {
|
56
57
|
var _a;
|
57
58
|
|
58
59
|
return (_a = menuItem.textContent) === null || _a === void 0 ? void 0 : _a.charAt(0).toLowerCase();
|
59
60
|
});
|
60
|
-
|
61
|
+
const char = e.key.toLowerCase();
|
61
62
|
|
62
|
-
|
63
|
-
for (
|
63
|
+
const getIndexFirstChars = (start, firstChar) => {
|
64
|
+
for (let i = start; i < firstChars.length; i++) {
|
64
65
|
if (char === firstChars[i]) {
|
65
66
|
return i;
|
66
67
|
}
|
@@ -70,7 +71,7 @@ export var useMenuList = function (props, ref) {
|
|
70
71
|
}; // Check remaining slots in the menu
|
71
72
|
|
72
73
|
|
73
|
-
|
74
|
+
let index = getIndexFirstChars(startIndex, char); // If not found in remaining slots, check from beginning
|
74
75
|
|
75
76
|
if (index === -1) {
|
76
77
|
index = getIndexFirstChars(0, char);
|
@@ -81,20 +82,17 @@ export var useMenuList = function (props, ref) {
|
|
81
82
|
menuItems[index].focus();
|
82
83
|
}
|
83
84
|
}, [findAllFocusable]);
|
84
|
-
|
85
|
-
var _a = useControllableState({
|
85
|
+
const [checkedValues, setCheckedValues] = useControllableState({
|
86
86
|
state: initialState.checkedValues,
|
87
87
|
defaultState: initialState.defaultCheckedValues,
|
88
88
|
initialState: {}
|
89
|
-
})
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
var newCheckedItems = __spreadArrays(checkedItems);
|
89
|
+
});
|
90
|
+
const {
|
91
|
+
onCheckedValueChange
|
92
|
+
} = initialState;
|
93
|
+
const toggleCheckbox = useEventCallback((e, name, value, checked) => {
|
94
|
+
const checkedItems = (checkedValues === null || checkedValues === void 0 ? void 0 : checkedValues[name]) || [];
|
95
|
+
const newCheckedItems = [...checkedItems];
|
98
96
|
|
99
97
|
if (checked) {
|
100
98
|
newCheckedItems.splice(newCheckedItems.indexOf(value), 1);
|
@@ -103,67 +101,49 @@ export var useMenuList = function (props, ref) {
|
|
103
101
|
}
|
104
102
|
|
105
103
|
onCheckedValueChange === null || onCheckedValueChange === void 0 ? void 0 : onCheckedValueChange(e, {
|
106
|
-
name
|
104
|
+
name,
|
107
105
|
checkedItems: newCheckedItems
|
108
106
|
});
|
109
|
-
setCheckedValues(
|
110
|
-
|
111
|
-
|
112
|
-
return __assign(__assign({}, s), (_a = {}, _a[name] = newCheckedItems, _a));
|
113
|
-
});
|
107
|
+
setCheckedValues(s => ({ ...s,
|
108
|
+
[name]: newCheckedItems
|
109
|
+
}));
|
114
110
|
});
|
115
|
-
|
116
|
-
|
117
|
-
setCheckedValues(
|
118
|
-
|
119
|
-
|
120
|
-
return __assign(__assign({}, s), (_a = {}, _a[name] = newCheckedItems, _a));
|
121
|
-
});
|
111
|
+
const selectRadio = useEventCallback((e, name, value) => {
|
112
|
+
const newCheckedItems = [value];
|
113
|
+
setCheckedValues(s => ({ ...s,
|
114
|
+
[name]: newCheckedItems
|
115
|
+
}));
|
122
116
|
onCheckedValueChange === null || onCheckedValueChange === void 0 ? void 0 : onCheckedValueChange(e, {
|
123
|
-
name
|
117
|
+
name,
|
124
118
|
checkedItems: newCheckedItems
|
125
119
|
});
|
126
120
|
});
|
127
|
-
|
128
|
-
|
129
|
-
|
130
|
-
|
131
|
-
toggleCheckbox: toggleCheckbox,
|
121
|
+
const state = { ...initialState,
|
122
|
+
setFocusByFirstCharacter,
|
123
|
+
selectRadio,
|
124
|
+
toggleCheckbox,
|
132
125
|
checkedValues: checkedValues !== null && checkedValues !== void 0 ? checkedValues : {}
|
133
|
-
}
|
134
|
-
|
126
|
+
};
|
135
127
|
return state;
|
136
128
|
};
|
137
129
|
/**
|
138
130
|
* Adds some sugar to fetching multiple context selector values
|
139
131
|
*/
|
140
132
|
|
141
|
-
|
142
|
-
|
143
|
-
|
144
|
-
|
145
|
-
|
146
|
-
|
147
|
-
|
148
|
-
var defaultCheckedValues = useMenuContext(function (context) {
|
149
|
-
return context.defaultCheckedValues;
|
150
|
-
});
|
151
|
-
var triggerId = useMenuContext(function (context) {
|
152
|
-
return context.triggerId;
|
153
|
-
});
|
154
|
-
var hasIcons = useMenuContext(function (context) {
|
155
|
-
return context.hasIcons;
|
156
|
-
});
|
157
|
-
var hasCheckmarks = useMenuContext(function (context) {
|
158
|
-
return context.hasCheckmarks;
|
159
|
-
});
|
133
|
+
const useMenuContextSelectors = () => {
|
134
|
+
const checkedValues = useMenuContext(context => context.checkedValues);
|
135
|
+
const onCheckedValueChange = useMenuContext(context => context.onCheckedValueChange);
|
136
|
+
const defaultCheckedValues = useMenuContext(context => context.defaultCheckedValues);
|
137
|
+
const triggerId = useMenuContext(context => context.triggerId);
|
138
|
+
const hasIcons = useMenuContext(context => context.hasIcons);
|
139
|
+
const hasCheckmarks = useMenuContext(context => context.hasCheckmarks);
|
160
140
|
return {
|
161
|
-
checkedValues
|
162
|
-
onCheckedValueChange
|
163
|
-
defaultCheckedValues
|
164
|
-
triggerId
|
165
|
-
hasIcons
|
166
|
-
hasCheckmarks
|
141
|
+
checkedValues,
|
142
|
+
onCheckedValueChange,
|
143
|
+
defaultCheckedValues,
|
144
|
+
triggerId,
|
145
|
+
hasIcons,
|
146
|
+
hasCheckmarks
|
167
147
|
};
|
168
148
|
};
|
169
149
|
/**
|
@@ -171,10 +151,10 @@ var useMenuContextSelectors = function () {
|
|
171
151
|
*/
|
172
152
|
|
173
153
|
|
174
|
-
|
175
|
-
|
154
|
+
const usingPropsAndMenuContext = (props, contextValue, hasMenuContext) => {
|
155
|
+
let isUsingPropsAndContext = false;
|
176
156
|
|
177
|
-
for (
|
157
|
+
for (const val in contextValue) {
|
178
158
|
if (props[val]) {
|
179
159
|
isUsingPropsAndContext = true;
|
180
160
|
}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["../../../src/components/MenuList/useMenuList.ts"],"names":[],"mappings":"
|
1
|
+
{"version":3,"sources":["../../../src/components/MenuList/useMenuList.ts"],"names":[],"mappings":"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","sourceRoot":""}
|
@@ -1,23 +1,25 @@
|
|
1
1
|
export function useMenuListContextValues(state) {
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
2
|
+
const {
|
3
|
+
onCheckedValueChange,
|
4
|
+
checkedValues,
|
5
|
+
toggleCheckbox,
|
6
|
+
selectRadio,
|
7
|
+
setFocusByFirstCharacter,
|
8
|
+
hasIcons,
|
9
|
+
hasCheckmarks
|
10
|
+
} = state; // This context is created with "@fluentui/react-context-selector", these is no sense to memoize it
|
9
11
|
|
10
|
-
|
11
|
-
onCheckedValueChange
|
12
|
-
checkedValues
|
13
|
-
toggleCheckbox
|
14
|
-
selectRadio
|
15
|
-
setFocusByFirstCharacter
|
16
|
-
hasIcons
|
17
|
-
hasCheckmarks
|
12
|
+
const menuList = {
|
13
|
+
onCheckedValueChange,
|
14
|
+
checkedValues,
|
15
|
+
toggleCheckbox,
|
16
|
+
selectRadio,
|
17
|
+
setFocusByFirstCharacter,
|
18
|
+
hasIcons,
|
19
|
+
hasCheckmarks
|
18
20
|
};
|
19
21
|
return {
|
20
|
-
menuList
|
22
|
+
menuList
|
21
23
|
};
|
22
24
|
}
|
23
25
|
//# sourceMappingURL=useMenuListContextValues.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["../../../src/components/MenuList/useMenuListContextValues.ts"],"names":[],"mappings":"AAEA,OAAM,SAAU,wBAAV,CAAmC,KAAnC,EAAuD;
|
1
|
+
{"version":3,"sources":["../../../src/components/MenuList/useMenuListContextValues.ts"],"names":[],"mappings":"AAEA,OAAM,SAAU,wBAAV,CAAmC,KAAnC,EAAuD;AAC3D,QAAM;AACJ,IAAA,oBADI;AAEJ,IAAA,aAFI;AAGJ,IAAA,cAHI;AAIJ,IAAA,WAJI;AAKJ,IAAA,wBALI;AAMJ,IAAA,QANI;AAOJ,IAAA;AAPI,MAQF,KARJ,CAD2D,CAW3D;;AACA,QAAM,QAAQ,GAAG;AACf,IAAA,oBADe;AAEf,IAAA,aAFe;AAGf,IAAA,cAHe;AAIf,IAAA,WAJe;AAKf,IAAA,wBALe;AAMf,IAAA,QANe;AAOf,IAAA;AAPe,GAAjB;AAUA,SAAO;AAAE,IAAA;AAAF,GAAP;AACD","sourceRoot":""}
|
@@ -1,6 +1,7 @@
|
|
1
1
|
import { mergeClasses, __styles } from '@fluentui/react-make-styles';
|
2
|
+
export const menuListClassName = 'fui-MenuList';
|
2
3
|
|
3
|
-
|
4
|
+
const useStyles = /*#__PURE__*/__styles({
|
4
5
|
"root": {
|
5
6
|
"mc9l5x": "f22iagw",
|
6
7
|
"Beiy3e4": "f1vx9l62",
|
@@ -14,9 +15,9 @@ var useStyles = /*#__PURE__*/__styles({
|
|
14
15
|
*/
|
15
16
|
|
16
17
|
|
17
|
-
export
|
18
|
-
|
19
|
-
state.root.className = mergeClasses(styles.root, state.root.className);
|
18
|
+
export const useMenuListStyles = state => {
|
19
|
+
const styles = useStyles();
|
20
|
+
state.root.className = mergeClasses(menuListClassName, styles.root, state.root.className);
|
20
21
|
return state;
|
21
22
|
};
|
22
23
|
//# sourceMappingURL=useMenuListStyles.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["../../../src/components/MenuList/useMenuListStyles.ts"],"names":[],"mappings":"AAAA,SAAS,YAAT,kBAAyC,6BAAzC
|
1
|
+
{"version":3,"sources":["../../../src/components/MenuList/useMenuListStyles.ts"],"names":[],"mappings":"AAAA,SAAS,YAAT,kBAAyC,6BAAzC;AAGA,OAAO,MAAM,iBAAiB,GAAG,cAA1B;;AAEP,MAAM,SAAS,gBAAG;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAAlB;AAQA;;AAEG;;;AACH,OAAO,MAAM,iBAAiB,GAAI,KAAD,IAAwC;AACvE,QAAM,MAAM,GAAG,SAAS,EAAxB;AACA,EAAA,KAAK,CAAC,IAAN,CAAW,SAAX,GAAuB,YAAY,CAAC,iBAAD,EAAoB,MAAM,CAAC,IAA3B,EAAiC,KAAK,CAAC,IAAN,CAAW,SAA5C,CAAnC;AACA,SAAO,KAAP;AACD,CAJM","sourceRoot":""}
|
@@ -6,8 +6,8 @@ import { renderMenuPopover } from './renderMenuPopover';
|
|
6
6
|
* Popover intended to wrap `MenuList` and adds styling and interaction support specific to menus
|
7
7
|
*/
|
8
8
|
|
9
|
-
export
|
10
|
-
|
9
|
+
export const MenuPopover = /*#__PURE__*/React.forwardRef((props, ref) => {
|
10
|
+
const state = useMenuPopover(props, ref);
|
11
11
|
useMenuPopoverStyles(state);
|
12
12
|
return renderMenuPopover(state);
|
13
13
|
});
|