@fluentui-react-native/menu 1.14.23 → 1.14.25
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.json +42 -1
- package/CHANGELOG.md +10 -2
- package/eslint.config.js +3 -0
- package/lib/Menu/Menu.js +5 -5
- package/lib/Menu/Menu.js.map +1 -1
- package/lib/Menu/Menu.types.js +1 -1
- package/lib/Menu/Menu.types.js.map +1 -1
- package/lib/Menu/renderMenu.android.js +5 -5
- package/lib/Menu/renderMenu.android.js.map +1 -1
- package/lib/Menu/renderMenu.js +3 -3
- package/lib/Menu/renderMenu.js.map +1 -1
- package/lib/Menu/useMenu.android.js +86 -61
- package/lib/Menu/useMenu.android.js.map +1 -1
- package/lib/Menu/useMenu.js +39 -29
- package/lib/Menu/useMenu.js.map +1 -1
- package/lib/Menu/useMenuContextValue.js +4 -5
- package/lib/Menu/useMenuContextValue.js.map +1 -1
- package/lib/MenuCallout/MenuCallout.android.js +7 -8
- package/lib/MenuCallout/MenuCallout.android.js.map +1 -1
- package/lib/MenuCallout/MenuCallout.js +4 -5
- package/lib/MenuCallout/MenuCallout.js.map +1 -1
- package/lib/MenuCallout/MenuCallout.types.js +1 -1
- package/lib/MenuCallout/MenuCallout.types.js.map +1 -1
- package/lib/MenuDivider/MenuDivider.js +11 -7
- package/lib/MenuDivider/MenuDivider.js.map +1 -1
- package/lib/MenuDivider/MenuDivider.styling.js +12 -5
- package/lib/MenuDivider/MenuDivider.styling.js.map +1 -1
- package/lib/MenuDivider/MenuDivider.types.js +2 -2
- package/lib/MenuDivider/MenuDivider.types.js.map +1 -1
- package/lib/MenuDivider/MenuDividerTokens.android.js +2 -2
- package/lib/MenuDivider/MenuDividerTokens.android.js.map +1 -1
- package/lib/MenuDivider/MenuDividerTokens.js +2 -2
- package/lib/MenuDivider/MenuDividerTokens.js.map +1 -1
- package/lib/MenuDivider/MenuDividerTokens.macos.js +2 -2
- package/lib/MenuDivider/MenuDividerTokens.macos.js.map +1 -1
- package/lib/MenuDivider/MenuDividerTokens.win32.js +2 -2
- package/lib/MenuDivider/MenuDividerTokens.win32.js.map +1 -1
- package/lib/MenuGroup/MenuGroup.js +25 -30
- package/lib/MenuGroup/MenuGroup.js.map +1 -1
- package/lib/MenuGroup/MenuGroup.types.js +1 -1
- package/lib/MenuGroup/MenuGroup.types.js.map +1 -1
- package/lib/MenuGroupHeader/MenuGroupHeader.js +12 -8
- package/lib/MenuGroupHeader/MenuGroupHeader.js.map +1 -1
- package/lib/MenuGroupHeader/MenuGroupHeader.styling.js +6 -4
- package/lib/MenuGroupHeader/MenuGroupHeader.styling.js.map +1 -1
- package/lib/MenuGroupHeader/MenuGroupHeader.types.js +1 -1
- package/lib/MenuGroupHeader/MenuGroupHeader.types.js.map +1 -1
- package/lib/MenuGroupHeader/MenuGroupHeaderTokens.js +2 -2
- package/lib/MenuGroupHeader/MenuGroupHeaderTokens.js.map +1 -1
- package/lib/MenuGroupHeader/MenuGroupHeaderTokens.macos.js +2 -2
- package/lib/MenuGroupHeader/MenuGroupHeaderTokens.macos.js.map +1 -1
- package/lib/MenuItem/MenuItem.js +31 -21
- package/lib/MenuItem/MenuItem.js.map +1 -1
- package/lib/MenuItem/MenuItem.styling.js +27 -18
- package/lib/MenuItem/MenuItem.styling.js.map +1 -1
- package/lib/MenuItem/MenuItem.types.js +1 -1
- package/lib/MenuItem/MenuItem.types.js.map +1 -1
- package/lib/MenuItem/MenuItemTokens.android.js +2 -2
- package/lib/MenuItem/MenuItemTokens.android.js.map +1 -1
- package/lib/MenuItem/MenuItemTokens.js +2 -2
- package/lib/MenuItem/MenuItemTokens.js.map +1 -1
- package/lib/MenuItem/MenuItemTokens.macos.js +2 -2
- package/lib/MenuItem/MenuItemTokens.macos.js.map +1 -1
- package/lib/MenuItem/MenuItemTokens.win32.js +2 -2
- package/lib/MenuItem/MenuItemTokens.win32.js.map +1 -1
- package/lib/MenuItem/useMenuItem.js +57 -41
- package/lib/MenuItem/useMenuItem.js.map +1 -1
- package/lib/MenuItemCheckbox/MenuItemCheckbox.js +34 -16
- package/lib/MenuItemCheckbox/MenuItemCheckbox.js.map +1 -1
- package/lib/MenuItemCheckbox/MenuItemCheckbox.styling.js +54 -27
- package/lib/MenuItemCheckbox/MenuItemCheckbox.styling.js.map +1 -1
- package/lib/MenuItemCheckbox/MenuItemCheckbox.types.js +1 -1
- package/lib/MenuItemCheckbox/MenuItemCheckbox.types.js.map +1 -1
- package/lib/MenuItemCheckbox/MenuItemCheckboxTokens.android.js +2 -2
- package/lib/MenuItemCheckbox/MenuItemCheckboxTokens.android.js.map +1 -1
- package/lib/MenuItemCheckbox/MenuItemCheckboxTokens.js +2 -2
- package/lib/MenuItemCheckbox/MenuItemCheckboxTokens.js.map +1 -1
- package/lib/MenuItemCheckbox/MenuItemCheckboxTokens.macos.js +2 -2
- package/lib/MenuItemCheckbox/MenuItemCheckboxTokens.macos.js.map +1 -1
- package/lib/MenuItemCheckbox/MenuItemCheckboxTokens.win32.js +2 -2
- package/lib/MenuItemCheckbox/MenuItemCheckboxTokens.win32.js.map +1 -1
- package/lib/MenuItemCheckbox/useMenuItemCheckbox.js +60 -40
- package/lib/MenuItemCheckbox/useMenuItemCheckbox.js.map +1 -1
- package/lib/MenuItemRadio/MenuItemRadio.js +23 -16
- package/lib/MenuItemRadio/MenuItemRadio.js.map +1 -1
- package/lib/MenuItemRadio/MenuItemRadio.styling.android.js +29 -18
- package/lib/MenuItemRadio/MenuItemRadio.styling.android.js.map +1 -1
- package/lib/MenuItemRadio/MenuItemRadio.styling.js +33 -18
- package/lib/MenuItemRadio/MenuItemRadio.styling.js.map +1 -1
- package/lib/MenuItemRadio/MenuItemRadio.types.js +1 -1
- package/lib/MenuItemRadio/MenuItemRadio.types.js.map +1 -1
- package/lib/MenuItemRadio/MenuItemRadioTokens.android.js +2 -2
- package/lib/MenuItemRadio/MenuItemRadioTokens.android.js.map +1 -1
- package/lib/MenuItemRadio/MenuItemRadioTokens.js +2 -2
- package/lib/MenuItemRadio/MenuItemRadioTokens.js.map +1 -1
- package/lib/MenuItemRadio/MenuItemRadioTokens.macos.js +2 -2
- package/lib/MenuItemRadio/MenuItemRadioTokens.macos.js.map +1 -1
- package/lib/MenuItemRadio/useMenuItemRadio.js +11 -11
- package/lib/MenuItemRadio/useMenuItemRadio.js.map +1 -1
- package/lib/MenuList/MenuList.js +46 -39
- package/lib/MenuList/MenuList.js.map +1 -1
- package/lib/MenuList/MenuList.styling.js +10 -6
- package/lib/MenuList/MenuList.styling.js.map +1 -1
- package/lib/MenuList/MenuList.types.js +1 -1
- package/lib/MenuList/MenuList.types.js.map +1 -1
- package/lib/MenuList/MenuListTokens.android.js +2 -2
- package/lib/MenuList/MenuListTokens.android.js.map +1 -1
- package/lib/MenuList/MenuListTokens.js +2 -2
- package/lib/MenuList/MenuListTokens.js.map +1 -1
- package/lib/MenuList/MenuListTokens.macos.js +2 -2
- package/lib/MenuList/MenuListTokens.macos.js.map +1 -1
- package/lib/MenuList/MenuListTokens.win32.js +2 -2
- package/lib/MenuList/MenuListTokens.win32.js.map +1 -1
- package/lib/MenuList/useMenuList.js +63 -69
- package/lib/MenuList/useMenuList.js.map +1 -1
- package/lib/MenuList/useMenuListContextValue.js +2 -3
- package/lib/MenuList/useMenuListContextValue.js.map +1 -1
- package/lib/MenuPopover/MenuPopover.d.ts +1 -1
- package/lib/MenuPopover/MenuPopover.js +29 -27
- package/lib/MenuPopover/MenuPopover.js.map +1 -1
- package/lib/MenuPopover/MenuPopover.types.js +1 -1
- package/lib/MenuPopover/MenuPopover.types.js.map +1 -1
- package/lib/MenuPopover/MenuPopoverTokens.android.js +2 -2
- package/lib/MenuPopover/MenuPopoverTokens.android.js.map +1 -1
- package/lib/MenuPopover/MenuPopoverTokens.d.ts +1 -1
- package/lib/MenuPopover/MenuPopoverTokens.js +1 -1
- package/lib/MenuPopover/MenuPopoverTokens.js.map +1 -1
- package/lib/MenuPopover/MenuPopoverTokens.macos.d.ts +1 -1
- package/lib/MenuPopover/MenuPopoverTokens.macos.js +2 -2
- package/lib/MenuPopover/MenuPopoverTokens.macos.js.map +1 -1
- package/lib/MenuPopover/useMenuPopover.js +33 -35
- package/lib/MenuPopover/useMenuPopover.js.map +1 -1
- package/lib/MenuTrigger/MenuTrigger.js +6 -4
- package/lib/MenuTrigger/MenuTrigger.js.map +1 -1
- package/lib/MenuTrigger/MenuTrigger.types.js +1 -1
- package/lib/MenuTrigger/MenuTrigger.types.js.map +1 -1
- package/lib/MenuTrigger/useMenuTrigger.js +29 -30
- package/lib/MenuTrigger/useMenuTrigger.js.map +1 -1
- package/lib/MenuTrigger/useMergeRefs.js +6 -10
- package/lib/MenuTrigger/useMergeRefs.js.map +1 -1
- package/lib/__tests__/Menu.test.js +21 -21
- package/lib/__tests__/Menu.test.js.map +1 -1
- package/lib/consts.js +1 -1
- package/lib/consts.js.map +1 -1
- package/lib/context/menuContext.js +5 -5
- package/lib/context/menuContext.js.map +1 -1
- package/lib/context/menuListContext.js +9 -9
- package/lib/context/menuListContext.js.map +1 -1
- package/lib/context/menuTriggerContext.js +3 -3
- package/lib/context/menuTriggerContext.js.map +1 -1
- package/lib-commonjs/Menu/Menu.js +12 -12
- package/lib-commonjs/Menu/Menu.js.map +1 -1
- package/lib-commonjs/Menu/renderMenu.android.js +9 -9
- package/lib-commonjs/Menu/renderMenu.android.js.map +1 -1
- package/lib-commonjs/Menu/renderMenu.js +6 -6
- package/lib-commonjs/Menu/renderMenu.js.map +1 -1
- package/lib-commonjs/Menu/useMenu.android.js +91 -65
- package/lib-commonjs/Menu/useMenu.android.js.map +1 -1
- package/lib-commonjs/Menu/useMenu.js +44 -33
- package/lib-commonjs/Menu/useMenu.js.map +1 -1
- package/lib-commonjs/Menu/useMenuContextValue.js +6 -6
- package/lib-commonjs/Menu/useMenuContextValue.js.map +1 -1
- package/lib-commonjs/MenuCallout/MenuCallout.android.js +14 -14
- package/lib-commonjs/MenuCallout/MenuCallout.android.js.map +1 -1
- package/lib-commonjs/MenuCallout/MenuCallout.js +10 -10
- package/lib-commonjs/MenuCallout/MenuCallout.js.map +1 -1
- package/lib-commonjs/MenuDivider/MenuDivider.js +15 -11
- package/lib-commonjs/MenuDivider/MenuDivider.js.map +1 -1
- package/lib-commonjs/MenuDivider/MenuDivider.styling.js +15 -8
- package/lib-commonjs/MenuDivider/MenuDivider.styling.js.map +1 -1
- package/lib-commonjs/MenuDivider/MenuDividerTokens.android.js +3 -3
- package/lib-commonjs/MenuDivider/MenuDividerTokens.android.js.map +1 -1
- package/lib-commonjs/MenuDivider/MenuDividerTokens.js +3 -3
- package/lib-commonjs/MenuDivider/MenuDividerTokens.js.map +1 -1
- package/lib-commonjs/MenuDivider/MenuDividerTokens.macos.js +3 -3
- package/lib-commonjs/MenuDivider/MenuDividerTokens.macos.js.map +1 -1
- package/lib-commonjs/MenuDivider/MenuDividerTokens.win32.js +3 -3
- package/lib-commonjs/MenuDivider/MenuDividerTokens.win32.js.map +1 -1
- package/lib-commonjs/MenuGroup/MenuGroup.js +30 -34
- package/lib-commonjs/MenuGroup/MenuGroup.js.map +1 -1
- package/lib-commonjs/MenuGroupHeader/MenuGroupHeader.js +16 -12
- package/lib-commonjs/MenuGroupHeader/MenuGroupHeader.js.map +1 -1
- package/lib-commonjs/MenuGroupHeader/MenuGroupHeader.styling.js +9 -7
- package/lib-commonjs/MenuGroupHeader/MenuGroupHeader.styling.js.map +1 -1
- package/lib-commonjs/MenuGroupHeader/MenuGroupHeaderTokens.js +3 -3
- package/lib-commonjs/MenuGroupHeader/MenuGroupHeaderTokens.js.map +1 -1
- package/lib-commonjs/MenuGroupHeader/MenuGroupHeaderTokens.macos.js +3 -3
- package/lib-commonjs/MenuGroupHeader/MenuGroupHeaderTokens.macos.js.map +1 -1
- package/lib-commonjs/MenuItem/MenuItem.js +37 -27
- package/lib-commonjs/MenuItem/MenuItem.js.map +1 -1
- package/lib-commonjs/MenuItem/MenuItem.styling.js +30 -21
- package/lib-commonjs/MenuItem/MenuItem.styling.js.map +1 -1
- package/lib-commonjs/MenuItem/MenuItemTokens.android.js +3 -3
- package/lib-commonjs/MenuItem/MenuItemTokens.android.js.map +1 -1
- package/lib-commonjs/MenuItem/MenuItemTokens.js +3 -3
- package/lib-commonjs/MenuItem/MenuItemTokens.js.map +1 -1
- package/lib-commonjs/MenuItem/MenuItemTokens.macos.js +3 -3
- package/lib-commonjs/MenuItem/MenuItemTokens.macos.js.map +1 -1
- package/lib-commonjs/MenuItem/MenuItemTokens.win32.js +3 -3
- package/lib-commonjs/MenuItem/MenuItemTokens.win32.js.map +1 -1
- package/lib-commonjs/MenuItem/useMenuItem.js +65 -48
- package/lib-commonjs/MenuItem/useMenuItem.js.map +1 -1
- package/lib-commonjs/MenuItemCheckbox/MenuItemCheckbox.js +43 -25
- package/lib-commonjs/MenuItemCheckbox/MenuItemCheckbox.js.map +1 -1
- package/lib-commonjs/MenuItemCheckbox/MenuItemCheckbox.styling.js +57 -30
- package/lib-commonjs/MenuItemCheckbox/MenuItemCheckbox.styling.js.map +1 -1
- package/lib-commonjs/MenuItemCheckbox/MenuItemCheckboxTokens.android.js +3 -3
- package/lib-commonjs/MenuItemCheckbox/MenuItemCheckboxTokens.android.js.map +1 -1
- package/lib-commonjs/MenuItemCheckbox/MenuItemCheckboxTokens.js +3 -3
- package/lib-commonjs/MenuItemCheckbox/MenuItemCheckboxTokens.js.map +1 -1
- package/lib-commonjs/MenuItemCheckbox/MenuItemCheckboxTokens.macos.js +3 -3
- package/lib-commonjs/MenuItemCheckbox/MenuItemCheckboxTokens.macos.js.map +1 -1
- package/lib-commonjs/MenuItemCheckbox/MenuItemCheckboxTokens.win32.js +3 -3
- package/lib-commonjs/MenuItemCheckbox/MenuItemCheckboxTokens.win32.js.map +1 -1
- package/lib-commonjs/MenuItemCheckbox/useMenuItemCheckbox.js +69 -48
- package/lib-commonjs/MenuItemCheckbox/useMenuItemCheckbox.js.map +1 -1
- package/lib-commonjs/MenuItemRadio/MenuItemRadio.js +32 -25
- package/lib-commonjs/MenuItemRadio/MenuItemRadio.js.map +1 -1
- package/lib-commonjs/MenuItemRadio/MenuItemRadio.styling.android.js +32 -21
- package/lib-commonjs/MenuItemRadio/MenuItemRadio.styling.android.js.map +1 -1
- package/lib-commonjs/MenuItemRadio/MenuItemRadio.styling.js +36 -21
- package/lib-commonjs/MenuItemRadio/MenuItemRadio.styling.js.map +1 -1
- package/lib-commonjs/MenuItemRadio/MenuItemRadioTokens.android.js +3 -3
- package/lib-commonjs/MenuItemRadio/MenuItemRadioTokens.android.js.map +1 -1
- package/lib-commonjs/MenuItemRadio/MenuItemRadioTokens.js +3 -3
- package/lib-commonjs/MenuItemRadio/MenuItemRadioTokens.js.map +1 -1
- package/lib-commonjs/MenuItemRadio/MenuItemRadioTokens.macos.js +3 -3
- package/lib-commonjs/MenuItemRadio/MenuItemRadioTokens.macos.js.map +1 -1
- package/lib-commonjs/MenuItemRadio/useMenuItemRadio.js +16 -16
- package/lib-commonjs/MenuItemRadio/useMenuItemRadio.js.map +1 -1
- package/lib-commonjs/MenuList/MenuList.js +56 -48
- package/lib-commonjs/MenuList/MenuList.js.map +1 -1
- package/lib-commonjs/MenuList/MenuList.styling.js +13 -9
- package/lib-commonjs/MenuList/MenuList.styling.js.map +1 -1
- package/lib-commonjs/MenuList/MenuListTokens.android.js +3 -3
- package/lib-commonjs/MenuList/MenuListTokens.android.js.map +1 -1
- package/lib-commonjs/MenuList/MenuListTokens.js +3 -3
- package/lib-commonjs/MenuList/MenuListTokens.js.map +1 -1
- package/lib-commonjs/MenuList/MenuListTokens.macos.js +3 -3
- package/lib-commonjs/MenuList/MenuListTokens.macos.js.map +1 -1
- package/lib-commonjs/MenuList/MenuListTokens.win32.js +3 -3
- package/lib-commonjs/MenuList/MenuListTokens.win32.js.map +1 -1
- package/lib-commonjs/MenuList/useMenuList.js +68 -73
- package/lib-commonjs/MenuList/useMenuList.js.map +1 -1
- package/lib-commonjs/MenuList/useMenuListContextValue.js +2 -3
- package/lib-commonjs/MenuList/useMenuListContextValue.js.map +1 -1
- package/lib-commonjs/MenuPopover/MenuPopover.d.ts +1 -1
- package/lib-commonjs/MenuPopover/MenuPopover.js +38 -35
- package/lib-commonjs/MenuPopover/MenuPopover.js.map +1 -1
- package/lib-commonjs/MenuPopover/MenuPopoverTokens.android.js +6 -6
- package/lib-commonjs/MenuPopover/MenuPopoverTokens.android.js.map +1 -1
- package/lib-commonjs/MenuPopover/MenuPopoverTokens.d.ts +1 -1
- package/lib-commonjs/MenuPopover/MenuPopoverTokens.js +3 -3
- package/lib-commonjs/MenuPopover/MenuPopoverTokens.js.map +1 -1
- package/lib-commonjs/MenuPopover/MenuPopoverTokens.macos.d.ts +1 -1
- package/lib-commonjs/MenuPopover/MenuPopoverTokens.macos.js +5 -5
- package/lib-commonjs/MenuPopover/MenuPopoverTokens.macos.js.map +1 -1
- package/lib-commonjs/MenuPopover/useMenuPopover.js +37 -39
- package/lib-commonjs/MenuPopover/useMenuPopover.js.map +1 -1
- package/lib-commonjs/MenuTrigger/MenuTrigger.js +11 -8
- package/lib-commonjs/MenuTrigger/MenuTrigger.js.map +1 -1
- package/lib-commonjs/MenuTrigger/useMenuTrigger.js +35 -35
- package/lib-commonjs/MenuTrigger/useMenuTrigger.js.map +1 -1
- package/lib-commonjs/MenuTrigger/useMergeRefs.js +8 -11
- package/lib-commonjs/MenuTrigger/useMergeRefs.js.map +1 -1
- package/lib-commonjs/__tests__/Menu.test.js +35 -35
- package/lib-commonjs/__tests__/Menu.test.js.map +1 -1
- package/lib-commonjs/consts.js +1 -1
- package/lib-commonjs/consts.js.map +1 -1
- package/lib-commonjs/context/menuContext.js +5 -5
- package/lib-commonjs/context/menuContext.js.map +1 -1
- package/lib-commonjs/context/menuListContext.js +9 -9
- package/lib-commonjs/context/menuListContext.js.map +1 -1
- package/lib-commonjs/context/menuTriggerContext.js +3 -3
- package/lib-commonjs/context/menuTriggerContext.js.map +1 -1
- package/package.json +26 -14
- package/.eslintrc.js +0 -3
|
@@ -11,9 +11,9 @@ import { MenuItemRadio } from '../MenuItemRadio/MenuItemRadio';
|
|
|
11
11
|
import { MenuList } from '../MenuList/MenuList';
|
|
12
12
|
import MenuPopover from '../MenuPopover/MenuPopover';
|
|
13
13
|
import MenuTrigger from '../MenuTrigger/MenuTrigger';
|
|
14
|
-
describe('Menu component tests',
|
|
15
|
-
it('Menu default',
|
|
16
|
-
|
|
14
|
+
describe('Menu component tests', () => {
|
|
15
|
+
it('Menu default', () => {
|
|
16
|
+
const tree = renderer
|
|
17
17
|
.create(React.createElement(Menu, null,
|
|
18
18
|
React.createElement(MenuTrigger, null,
|
|
19
19
|
React.createElement(Button, null, "Default")),
|
|
@@ -23,8 +23,8 @@ describe('Menu component tests', function () {
|
|
|
23
23
|
.toJSON();
|
|
24
24
|
expect(tree).toMatchSnapshot();
|
|
25
25
|
});
|
|
26
|
-
it('Menu open',
|
|
27
|
-
|
|
26
|
+
it('Menu open', () => {
|
|
27
|
+
const tree = renderer
|
|
28
28
|
.create(React.createElement(Menu, { open: true },
|
|
29
29
|
React.createElement(MenuTrigger, null,
|
|
30
30
|
React.createElement(Button, null, "Open")),
|
|
@@ -34,8 +34,8 @@ describe('Menu component tests', function () {
|
|
|
34
34
|
.toJSON();
|
|
35
35
|
expect(tree).toMatchSnapshot();
|
|
36
36
|
});
|
|
37
|
-
it('Menu defaultOpen',
|
|
38
|
-
|
|
37
|
+
it('Menu defaultOpen', () => {
|
|
38
|
+
const tree = renderer
|
|
39
39
|
.create(React.createElement(Menu, { defaultOpen: true },
|
|
40
40
|
React.createElement(MenuTrigger, null,
|
|
41
41
|
React.createElement(Button, null, "Open")),
|
|
@@ -46,8 +46,8 @@ describe('Menu component tests', function () {
|
|
|
46
46
|
.toJSON();
|
|
47
47
|
expect(tree).toMatchSnapshot();
|
|
48
48
|
});
|
|
49
|
-
it('Menu open checkbox and divider',
|
|
50
|
-
|
|
49
|
+
it('Menu open checkbox and divider', () => {
|
|
50
|
+
const tree = renderer
|
|
51
51
|
.create(React.createElement(Menu, { open: true },
|
|
52
52
|
React.createElement(MenuTrigger, null,
|
|
53
53
|
React.createElement(Button, null, "Open")),
|
|
@@ -59,8 +59,8 @@ describe('Menu component tests', function () {
|
|
|
59
59
|
.toJSON();
|
|
60
60
|
expect(tree).toMatchSnapshot();
|
|
61
61
|
});
|
|
62
|
-
it('Menu open radio',
|
|
63
|
-
|
|
62
|
+
it('Menu open radio', () => {
|
|
63
|
+
const tree = renderer
|
|
64
64
|
.create(React.createElement(Menu, { open: true },
|
|
65
65
|
React.createElement(MenuTrigger, null,
|
|
66
66
|
React.createElement(Button, null, "Open")),
|
|
@@ -71,8 +71,8 @@ describe('Menu component tests', function () {
|
|
|
71
71
|
.toJSON();
|
|
72
72
|
expect(tree).toMatchSnapshot();
|
|
73
73
|
});
|
|
74
|
-
it('Menu open checkbox defaultChecked',
|
|
75
|
-
|
|
74
|
+
it('Menu open checkbox defaultChecked', () => {
|
|
75
|
+
const tree = renderer
|
|
76
76
|
.create(React.createElement(Menu, { open: true, defaultChecked: ['Option 1'] },
|
|
77
77
|
React.createElement(MenuTrigger, null,
|
|
78
78
|
React.createElement(Button, null, "Open")),
|
|
@@ -84,8 +84,8 @@ describe('Menu component tests', function () {
|
|
|
84
84
|
.toJSON();
|
|
85
85
|
expect(tree).toMatchSnapshot();
|
|
86
86
|
});
|
|
87
|
-
it('Menu open checkbox checked',
|
|
88
|
-
|
|
87
|
+
it('Menu open checkbox checked', () => {
|
|
88
|
+
const tree = renderer
|
|
89
89
|
.create(React.createElement(Menu, { open: true, checked: ['Option 1'] },
|
|
90
90
|
React.createElement(MenuTrigger, null,
|
|
91
91
|
React.createElement(Button, null, "Open")),
|
|
@@ -97,8 +97,8 @@ describe('Menu component tests', function () {
|
|
|
97
97
|
.toJSON();
|
|
98
98
|
expect(tree).toMatchSnapshot();
|
|
99
99
|
});
|
|
100
|
-
it('Menu submenu',
|
|
101
|
-
|
|
100
|
+
it('Menu submenu', () => {
|
|
101
|
+
const tree = renderer
|
|
102
102
|
.create(React.createElement(Menu, { open: true },
|
|
103
103
|
React.createElement(MenuTrigger, null,
|
|
104
104
|
React.createElement(Button, null, "Default")),
|
|
@@ -116,8 +116,8 @@ describe('Menu component tests', function () {
|
|
|
116
116
|
});
|
|
117
117
|
// Note the capital T the "Tip" (in the snapshot)
|
|
118
118
|
// It is intentional as it matches the same prop in NetUI
|
|
119
|
-
it('Menu alwaysShowToolTip',
|
|
120
|
-
|
|
119
|
+
it('Menu alwaysShowToolTip', () => {
|
|
120
|
+
const tree = renderer
|
|
121
121
|
.create(React.createElement(Menu, null,
|
|
122
122
|
React.createElement(MenuTrigger, null,
|
|
123
123
|
React.createElement(Button, { tooltip: "A Tooltip" }, "Button")),
|
|
@@ -131,8 +131,8 @@ describe('Menu component tests', function () {
|
|
|
131
131
|
expect(tree).toMatchSnapshot();
|
|
132
132
|
});
|
|
133
133
|
});
|
|
134
|
-
it('Menu open menu group and menu header',
|
|
135
|
-
|
|
134
|
+
it('Menu open menu group and menu header', () => {
|
|
135
|
+
const tree = renderer
|
|
136
136
|
.create(React.createElement(Menu, { open: true },
|
|
137
137
|
React.createElement(MenuTrigger, null,
|
|
138
138
|
React.createElement(Button, null, "Open")),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Menu.test.js","sourceRoot":"","sources":["../../src/__tests__/Menu.test.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,QAAQ,IAAI,MAAM,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,KAAK,QAAQ,MAAM,qBAAqB,CAAC;AAEhD,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AACpC,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,sCAAsC,CAAC;AACxE,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAC/D,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,WAAW,MAAM,4BAA4B,CAAC;AACrD,OAAO,WAAW,MAAM,4BAA4B,CAAC;AAErD,QAAQ,CAAC,sBAAsB,EAAE;
|
|
1
|
+
{"version":3,"file":"Menu.test.js","sourceRoot":"","sources":["../../src/__tests__/Menu.test.tsx"],"names":[],"mappings":"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"}
|
package/lib/consts.js
CHANGED
package/lib/consts.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"consts.js","sourceRoot":"","sources":["../src/consts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAExC,MAAM,CAAC,
|
|
1
|
+
{"version":3,"file":"consts.js","sourceRoot":"","sources":["../src/consts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAExC,MAAM,CAAC,MAAM,iBAAiB,GAAG,QAAQ,CAAC,MAAM,CAAC;IAC/C,KAAK,EAAE,GAAG;IACV,OAAO,EAAE,GAAG,EAAE,QAAQ;CACvB,CAAC,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
export
|
|
2
|
+
export const MenuContext = React.createContext({
|
|
3
3
|
isControlled: false,
|
|
4
4
|
checked: [],
|
|
5
5
|
defaultChecked: [],
|
|
@@ -8,13 +8,13 @@ export var MenuContext = React.createContext({
|
|
|
8
8
|
hasTooltips: false,
|
|
9
9
|
isSubmenu: false,
|
|
10
10
|
open: false,
|
|
11
|
-
onCheckedChange:
|
|
12
|
-
setOpen:
|
|
11
|
+
onCheckedChange: () => false,
|
|
12
|
+
setOpen: () => false,
|
|
13
13
|
shouldFocusOnContainer: undefined,
|
|
14
14
|
triggerRef: null,
|
|
15
15
|
hasMaxHeight: false,
|
|
16
16
|
hasMaxWidth: false,
|
|
17
17
|
});
|
|
18
|
-
export
|
|
19
|
-
export
|
|
18
|
+
export const MenuProvider = MenuContext.Provider;
|
|
19
|
+
export const useMenuContext = () => React.useContext(MenuContext);
|
|
20
20
|
//# sourceMappingURL=menuContext.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"menuContext.js","sourceRoot":"","sources":["../../src/context/menuContext.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAc/B,MAAM,CAAC,
|
|
1
|
+
{"version":3,"file":"menuContext.js","sourceRoot":"","sources":["../../src/context/menuContext.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAc/B,MAAM,CAAC,MAAM,WAAW,GAAG,KAAK,CAAC,aAAa,CAAmB;IAC/D,YAAY,EAAE,KAAK;IACnB,OAAO,EAAE,EAAE;IACX,cAAc,EAAE,EAAE;IAClB,aAAa,EAAE,KAAK;IACpB,QAAQ,EAAE,KAAK;IACf,WAAW,EAAE,KAAK;IAClB,SAAS,EAAE,KAAK;IAChB,IAAI,EAAE,KAAK;IACX,eAAe,EAAE,GAAG,EAAE,CAAC,KAAK;IAC5B,OAAO,EAAE,GAAG,EAAE,CAAC,KAAK;IACpB,sBAAsB,EAAE,SAAS;IACjC,UAAU,EAAE,IAAI;IAChB,YAAY,EAAE,KAAK;IACnB,WAAW,EAAE,KAAK;CACnB,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,YAAY,GAAG,WAAW,CAAC,QAAQ,CAAC;AACjD,MAAM,CAAC,MAAM,cAAc,GAAG,GAAG,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC"}
|
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
export
|
|
2
|
+
export const MenuListContext = React.createContext({
|
|
3
3
|
isCheckedControlled: false,
|
|
4
4
|
checked: {},
|
|
5
5
|
hasCheckmarks: false,
|
|
6
6
|
hasIcons: false,
|
|
7
7
|
hasTooltips: false,
|
|
8
|
-
onCheckedChange:
|
|
9
|
-
onArrowClose:
|
|
10
|
-
addRadioItem:
|
|
11
|
-
removeRadioItem:
|
|
12
|
-
trackMenuItem:
|
|
13
|
-
untrackMenuItem:
|
|
8
|
+
onCheckedChange: () => false,
|
|
9
|
+
onArrowClose: () => false,
|
|
10
|
+
addRadioItem: () => false,
|
|
11
|
+
removeRadioItem: () => false,
|
|
12
|
+
trackMenuItem: () => false,
|
|
13
|
+
untrackMenuItem: () => false,
|
|
14
14
|
});
|
|
15
|
-
export
|
|
16
|
-
export
|
|
15
|
+
export const MenuListProvider = MenuListContext.Provider;
|
|
16
|
+
export const useMenuListContext = () => React.useContext(MenuListContext);
|
|
17
17
|
//# sourceMappingURL=menuListContext.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"menuListContext.js","sourceRoot":"","sources":["../../src/context/menuListContext.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAa/B,MAAM,CAAC,
|
|
1
|
+
{"version":3,"file":"menuListContext.js","sourceRoot":"","sources":["../../src/context/menuListContext.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAa/B,MAAM,CAAC,MAAM,eAAe,GAAG,KAAK,CAAC,aAAa,CAAuB;IACvE,mBAAmB,EAAE,KAAK;IAC1B,OAAO,EAAE,EAAE;IACX,aAAa,EAAE,KAAK;IACpB,QAAQ,EAAE,KAAK;IACf,WAAW,EAAE,KAAK;IAClB,eAAe,EAAE,GAAG,EAAE,CAAC,KAAK;IAC5B,YAAY,EAAE,GAAG,EAAE,CAAC,KAAK;IACzB,YAAY,EAAE,GAAG,EAAE,CAAC,KAAK;IACzB,eAAe,EAAE,GAAG,EAAE,CAAC,KAAK;IAC5B,aAAa,EAAE,GAAG,EAAE,CAAC,KAAK;IAC1B,eAAe,EAAE,GAAG,EAAE,CAAC,KAAK;CAC7B,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,gBAAgB,GAAG,eAAe,CAAC,QAAQ,CAAC;AACzD,MAAM,CAAC,MAAM,kBAAkB,GAAG,GAAG,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC"}
|
|
@@ -3,7 +3,7 @@ import React from 'react';
|
|
|
3
3
|
* This context keeps track of whether a trigger component is for a submenu.
|
|
4
4
|
* This allows the trigger to show a submenu indicator.
|
|
5
5
|
*/
|
|
6
|
-
export
|
|
7
|
-
export
|
|
8
|
-
export
|
|
6
|
+
export const MenuTriggerContext = React.createContext(false);
|
|
7
|
+
export const MenuTriggerProvider = MenuTriggerContext.Provider;
|
|
8
|
+
export const useMenuTriggerContext = () => React.useContext(MenuTriggerContext);
|
|
9
9
|
//# sourceMappingURL=menuTriggerContext.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"menuTriggerContext.js","sourceRoot":"","sources":["../../src/context/menuTriggerContext.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B;;;GAGG;AACH,MAAM,CAAC,
|
|
1
|
+
{"version":3,"file":"menuTriggerContext.js","sourceRoot":"","sources":["../../src/context/menuTriggerContext.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B;;;GAGG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,KAAK,CAAC,aAAa,CAAU,KAAK,CAAC,CAAC;AAEtE,MAAM,CAAC,MAAM,mBAAmB,GAAG,kBAAkB,CAAC,QAAQ,CAAC;AAC/D,MAAM,CAAC,MAAM,qBAAqB,GAAG,GAAG,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,kBAAkB,CAAC,CAAC"}
|
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.Menu = void 0;
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
exports.Menu = (0, framework_1.stagedComponent)(
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
return
|
|
15
|
-
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const react_1 = tslib_1.__importDefault(require("react"));
|
|
6
|
+
const framework_1 = require("@fluentui-react-native/framework");
|
|
7
|
+
const Menu_types_1 = require("./Menu.types");
|
|
8
|
+
const renderMenu_1 = require("./renderMenu");
|
|
9
|
+
const useMenu_1 = require("./useMenu");
|
|
10
|
+
const useMenuContextValue_1 = require("./useMenuContextValue");
|
|
11
|
+
exports.Menu = (0, framework_1.stagedComponent)((props) => {
|
|
12
|
+
const state = (0, useMenu_1.useMenu)(props);
|
|
13
|
+
const contextValue = (0, useMenuContextValue_1.useMenuContextValue)(state);
|
|
14
|
+
return (_rest, children) => {
|
|
15
|
+
const childrenArray = react_1.default.Children.toArray(children);
|
|
16
16
|
if (__DEV__) {
|
|
17
17
|
if (childrenArray.length !== 2) {
|
|
18
18
|
// eslint-disable-next-line no-console
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Menu.js","sourceRoot":"","sources":["../../src/Menu/Menu.tsx"],"names":[],"mappings":";;;;AAAA,
|
|
1
|
+
{"version":3,"file":"Menu.js","sourceRoot":"","sources":["../../src/Menu/Menu.tsx"],"names":[],"mappings":";;;;AAAA,0DAA0B;AAE1B,gEAAmE;AAGnE,6CAAwC;AACxC,6CAA+C;AAC/C,uCAAoC;AACpC,+DAA4D;AAE/C,QAAA,IAAI,GAAG,IAAA,2BAAe,EAAC,CAAC,KAAgB,EAAE,EAAE;IACvD,MAAM,KAAK,GAAG,IAAA,iBAAO,EAAC,KAAK,CAAC,CAAC;IAC7B,MAAM,YAAY,GAAG,IAAA,yCAAmB,EAAC,KAAK,CAAC,CAAC;IAEhD,OAAO,CAAC,KAAgB,EAAE,QAAyB,EAAE,EAAE;QACrD,MAAM,aAAa,GAAG,eAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAyB,CAAC;QAE/E,IAAI,OAAO,EAAE;YACX,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE;gBAC9B,sCAAsC;gBACtC,OAAO,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC;aAChD;SACF;QACD,OAAO,IAAA,4BAAe,EAAC,aAAa,EAAE,YAAY,EAAE,KAAK,CAAC,CAAC;IAC7D,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,YAAI,CAAC,WAAW,GAAG,qBAAQ,CAAC;AAE5B,kBAAe,YAAI,CAAC"}
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.renderFinalMenu = void 0;
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const react_1 = tslib_1.__importDefault(require("react"));
|
|
6
|
+
const react_native_1 = require("react-native");
|
|
7
|
+
const context_1 = require("../context");
|
|
8
|
+
const renderFinalMenu = (childrenArray, contextValue, state) => {
|
|
9
|
+
const menuTrigger = childrenArray[0];
|
|
10
|
+
const menuPopover = childrenArray[1];
|
|
11
11
|
return (react_1.default.createElement(context_1.MenuProvider, { value: contextValue },
|
|
12
|
-
react_1.default.createElement(react_native_1.View, { onLayout:
|
|
13
|
-
|
|
12
|
+
react_1.default.createElement(react_native_1.View, { onLayout: (event) => {
|
|
13
|
+
const { width } = event.nativeEvent.layout;
|
|
14
14
|
state.setAnchorWidth(width);
|
|
15
15
|
} }, menuTrigger),
|
|
16
16
|
react_1.default.createElement(react_native_1.View, { ref: state._container, collapsable: false, testID: state.testID }, state.open && menuPopover)));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"renderMenu.android.js","sourceRoot":"","sources":["../../src/Menu/renderMenu.android.tsx"],"names":[],"mappings":";;;;AAAA,
|
|
1
|
+
{"version":3,"file":"renderMenu.android.js","sourceRoot":"","sources":["../../src/Menu/renderMenu.android.tsx"],"names":[],"mappings":";;;;AAAA,0DAA0B;AAC1B,+CAAoC;AAIpC,wCAA0C;AAEnC,MAAM,eAAe,GAAG,CAAC,aAAmC,EAAE,YAA8B,EAAE,KAAgB,EAAE,EAAE;IACvH,MAAM,WAAW,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC;IACrC,MAAM,WAAW,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC;IACrC,OAAO,CACL,8BAAC,sBAAY,IAAC,KAAK,EAAE,YAAY;QAC/B,8BAAC,mBAAI,IACH,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE;gBAClB,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC;gBAC3C,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;YAC9B,CAAC,IAEA,WAAW,CACP;QACP,8BAAC,mBAAI,IAAC,GAAG,EAAE,KAAK,CAAC,UAAU,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,IAClE,KAAK,CAAC,IAAI,IAAI,WAAW,CACrB,CACM,CAChB,CAAC;AACJ,CAAC,CAAC;AAlBW,QAAA,eAAe,mBAkB1B"}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.renderFinalMenu = void 0;
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const react_1 = tslib_1.__importDefault(require("react"));
|
|
6
|
+
const context_1 = require("../context");
|
|
7
|
+
const renderFinalMenu = (childrenArray, contextValue, state) => {
|
|
8
|
+
const menuTrigger = childrenArray[0];
|
|
9
|
+
const menuPopover = childrenArray[1];
|
|
10
10
|
return (react_1.default.createElement(context_1.MenuProvider, { value: contextValue },
|
|
11
11
|
menuTrigger,
|
|
12
12
|
state.open && state.shouldFocusOnContainer !== undefined && menuPopover));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"renderMenu.js","sourceRoot":"","sources":["../../src/Menu/renderMenu.tsx"],"names":[],"mappings":";;;;AAAA,
|
|
1
|
+
{"version":3,"file":"renderMenu.js","sourceRoot":"","sources":["../../src/Menu/renderMenu.tsx"],"names":[],"mappings":";;;;AAAA,0DAA0B;AAI1B,wCAA0C;AAEnC,MAAM,eAAe,GAAG,CAAC,aAAmC,EAAE,YAA8B,EAAE,KAAgB,EAAE,EAAE;IACvH,MAAM,WAAW,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC;IACrC,MAAM,WAAW,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC;IACrC,OAAO,CACL,8BAAC,sBAAY,IAAC,KAAK,EAAE,YAAY;QAC9B,WAAW;QAGX,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,sBAAsB,KAAK,SAAS,IAAI,WAAW,CAC3D,CAChB,CAAC;AACJ,CAAC,CAAC;AAXW,QAAA,eAAe,mBAW1B"}
|
|
@@ -1,63 +1,63 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.useMenu = void 0;
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const react_1 = tslib_1.__importStar(require("react"));
|
|
6
|
+
const react_native_1 = require("react-native");
|
|
7
|
+
const Menu_types_1 = require("./Menu.types");
|
|
8
|
+
const menuContext_1 = require("../context/menuContext");
|
|
9
9
|
// Due to how events get fired we get double notifications
|
|
10
10
|
// for the same event causing us to immediately reopen
|
|
11
11
|
// a menu when we close it. Adding in a delay to prevent
|
|
12
12
|
// this behavior.
|
|
13
13
|
// This are use when show() function is called to show the Menu
|
|
14
|
-
|
|
14
|
+
const delayOpen = 150;
|
|
15
15
|
/**
|
|
16
16
|
* Values related to Screen Width and Animation Easing
|
|
17
17
|
*/
|
|
18
18
|
// Animated easing value for Menu transitions(close and open)
|
|
19
|
-
|
|
19
|
+
const EASING = react_native_1.Easing.bezier(0.4, 0, 0.2, 1);
|
|
20
20
|
// Screen indent is the fixed value according to Android guidelines which depicts the minimum distance from screen edge Menu should have
|
|
21
|
-
|
|
22
|
-
|
|
21
|
+
const SCREEN_INDENT = 16;
|
|
22
|
+
const useMenu = (props) => {
|
|
23
23
|
/**
|
|
24
24
|
* State , Ref and Context Values for Menu Container and Anchor
|
|
25
25
|
*/
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
26
|
+
const triggerRef = react_1.default.useRef();
|
|
27
|
+
const context = (0, menuContext_1.useMenuContext)();
|
|
28
|
+
const isSubmenu = context.triggerRef !== null;
|
|
29
|
+
const isOpenControlled = typeof props.open !== 'undefined';
|
|
30
|
+
const _container = (0, react_1.useRef)(null);
|
|
31
|
+
const [menuState, setMenuState] = react_1.default.useState(Menu_types_1.AndroidMenuStates.Hidden);
|
|
32
32
|
/**
|
|
33
33
|
* Call for useMenuCheckedState for identifying if any MenuItemCheckbox is checked or not
|
|
34
34
|
*/
|
|
35
|
-
|
|
35
|
+
const [checked, onCheckedChange] = useMenuCheckedState(props);
|
|
36
36
|
/**
|
|
37
37
|
* State Variables related to Height,Width and Position of the Menu Popover
|
|
38
38
|
*/
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
39
|
+
const [maxMenuHeight] = (0, react_1.useState)(250);
|
|
40
|
+
const [anchorWidth, setAnchorWidth] = react_1.default.useState(0);
|
|
41
|
+
const [left, setLeft] = react_1.default.useState(0);
|
|
42
|
+
const [menuHeight, setMenuHeight] = react_1.default.useState(0);
|
|
43
|
+
const [menuWidth, setMenuWidth] = react_1.default.useState(0);
|
|
44
|
+
const [top, setTop] = react_1.default.useState(0);
|
|
45
45
|
/**
|
|
46
46
|
* Animation value for the Menu popover show,hide and opacity values
|
|
47
47
|
*/
|
|
48
|
-
|
|
49
|
-
|
|
48
|
+
const [menuSizeAnimation, setMenuSizeAnimation] = react_1.default.useState(new react_native_1.Animated.ValueXY({ x: 0, y: 0 }));
|
|
49
|
+
const [opacityAnimation, setOpacityAnimation] = react_1.default.useState(new react_native_1.Animated.Value(0));
|
|
50
50
|
/**
|
|
51
51
|
* RTL for the MenuItem needs to taken care as well.
|
|
52
52
|
*/
|
|
53
|
-
|
|
53
|
+
const { isRTL } = react_native_1.I18nManager;
|
|
54
54
|
/**
|
|
55
55
|
* Calcualations related to Menu Popver position and dimensions
|
|
56
56
|
*/
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
57
|
+
const dimensions = react_native_1.Dimensions.get('screen');
|
|
58
|
+
const { width: windowWidth } = dimensions;
|
|
59
|
+
const windowHeight = dimensions.height - (react_native_1.StatusBar.currentHeight || 0);
|
|
60
|
+
const menuSize = {
|
|
61
61
|
width: menuSizeAnimation.x,
|
|
62
62
|
height: menuSizeAnimation.y,
|
|
63
63
|
};
|
|
@@ -68,9 +68,8 @@ var useMenu = function (props) {
|
|
|
68
68
|
* show function handles the opening of the Menu , it calcuates the position of the Anchor in the screen.
|
|
69
69
|
* It also sets the Anchor width and change the state of the Popover
|
|
70
70
|
*/
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
(_a = _container.current) === null || _a === void 0 ? void 0 : _a.measureInWindow(function (left, top, buttonWidth, buttonHeight) {
|
|
71
|
+
const show = react_1.default.useCallback(() => {
|
|
72
|
+
_container.current?.measureInWindow((left, top, buttonWidth, buttonHeight) => {
|
|
74
73
|
setAnchorWidth(buttonWidth);
|
|
75
74
|
setLeft(left);
|
|
76
75
|
setMenuState(Menu_types_1.AndroidMenuStates.Shown);
|
|
@@ -80,13 +79,13 @@ var useMenu = function (props) {
|
|
|
80
79
|
/**
|
|
81
80
|
* hide function handles the hiding of the Menu when user clicks on the scrim outside Menu or MenuItems such as (MenuItemRadio, MenuItem)
|
|
82
81
|
*/
|
|
83
|
-
|
|
82
|
+
const hide = react_1.default.useCallback(() => {
|
|
84
83
|
react_native_1.Animated.timing(opacityAnimation, {
|
|
85
84
|
toValue: 0,
|
|
86
85
|
duration: 250,
|
|
87
86
|
easing: EASING,
|
|
88
87
|
useNativeDriver: false,
|
|
89
|
-
}).start(
|
|
88
|
+
}).start(() => {
|
|
90
89
|
// Reset state
|
|
91
90
|
setMenuState(Menu_types_1.AndroidMenuStates.Hidden);
|
|
92
91
|
setMenuSizeAnimation(new react_native_1.Animated.ValueXY({ x: 0, y: 0 }));
|
|
@@ -94,11 +93,11 @@ var useMenu = function (props) {
|
|
|
94
93
|
});
|
|
95
94
|
}, [opacityAnimation]);
|
|
96
95
|
// Hook to maintain the state of the Menu for non controlled and controlled components.
|
|
97
|
-
|
|
96
|
+
const [open, shouldFocusOnContainer, setOpen] = useMenuOpenState(isOpenControlled, props, context.setOpen, hide, show);
|
|
98
97
|
/**
|
|
99
98
|
* Checks the value of the open props and show the menu accordingly
|
|
100
99
|
*/
|
|
101
|
-
(0, react_1.useEffect)(
|
|
100
|
+
(0, react_1.useEffect)(() => {
|
|
102
101
|
if (props.open) {
|
|
103
102
|
show();
|
|
104
103
|
}
|
|
@@ -106,11 +105,11 @@ var useMenu = function (props) {
|
|
|
106
105
|
/**
|
|
107
106
|
* onMenuLayout handles the start of the Animation when anchor is clicked
|
|
108
107
|
*/
|
|
109
|
-
|
|
108
|
+
const onMenuLayout = react_1.default.useCallback((e) => {
|
|
110
109
|
if (menuState === Menu_types_1.AndroidMenuStates.Animating) {
|
|
111
110
|
return;
|
|
112
111
|
}
|
|
113
|
-
|
|
112
|
+
const { width, height } = e.nativeEvent.layout;
|
|
114
113
|
setMenuHeight(height);
|
|
115
114
|
setMenuWidth(width);
|
|
116
115
|
setMenuState(Menu_types_1.AndroidMenuStates.Animating);
|
|
@@ -132,12 +131,12 @@ var useMenu = function (props) {
|
|
|
132
131
|
/**
|
|
133
132
|
* onRequestClose handles the closing of the Menu when the MenuItem or scrim or outside is clicked
|
|
134
133
|
*/
|
|
135
|
-
|
|
134
|
+
const onRequestClose = (e) => {
|
|
136
135
|
setOpen(e, false, false);
|
|
137
136
|
};
|
|
138
137
|
// Adjust position of menu
|
|
139
|
-
|
|
140
|
-
(0, react_1.useMemo)(
|
|
138
|
+
const transforms = [];
|
|
139
|
+
(0, react_1.useMemo)(() => {
|
|
141
140
|
/**
|
|
142
141
|
* If the Menu width and SCREEN_INDENT cross the screen width then the Menu will be adjusted to the oppostion left side of the screen
|
|
143
142
|
*/
|
|
@@ -183,24 +182,52 @@ var useMenu = function (props) {
|
|
|
183
182
|
/**
|
|
184
183
|
* Styles to be applied on the Modal Popover Animated.View
|
|
185
184
|
*/
|
|
186
|
-
|
|
187
|
-
return
|
|
185
|
+
const shadowMenuContainerStyle = (0, react_1.useMemo)(() => {
|
|
186
|
+
return {
|
|
187
|
+
opacity: opacityAnimation,
|
|
188
|
+
transform: transforms,
|
|
189
|
+
top,
|
|
190
|
+
// Switch left to right for rtl devices
|
|
191
|
+
...(isRTL ? { right: left } : { left }),
|
|
192
|
+
};
|
|
188
193
|
}, [isRTL, left, opacityAnimation, top, transforms]);
|
|
189
194
|
/**
|
|
190
195
|
* handles the state when menu is opening or closing with Animation
|
|
191
196
|
*/
|
|
192
|
-
|
|
193
|
-
|
|
197
|
+
const animationStarted = menuState === Menu_types_1.AndroidMenuStates.Animating;
|
|
198
|
+
const { testID } = props;
|
|
194
199
|
// Default behavior for submenu is to open on hover
|
|
195
200
|
// the ...props line below will override this behavior for a submenu
|
|
196
201
|
// or apply openOnHover if passed into a root Menu.
|
|
197
|
-
|
|
202
|
+
const openOnHover = isSubmenu;
|
|
198
203
|
// We need to be able to cancel the timer that gets set on
|
|
199
204
|
// hover out of the parent popover if the parent popover
|
|
200
205
|
// is also set to open/close on hover out. Otherwise
|
|
201
206
|
// the parent menu will close when the timeout passes.
|
|
202
|
-
|
|
203
|
-
return
|
|
207
|
+
const parentPopoverHoverOutTimer = isSubmenu ? context.popoverHoverOutTimer : undefined;
|
|
208
|
+
return {
|
|
209
|
+
openOnHover,
|
|
210
|
+
...props,
|
|
211
|
+
open,
|
|
212
|
+
setOpen,
|
|
213
|
+
shouldFocusOnContainer,
|
|
214
|
+
triggerRef,
|
|
215
|
+
isSubmenu,
|
|
216
|
+
isControlled: isOpenControlled,
|
|
217
|
+
parentPopoverHoverOutTimer,
|
|
218
|
+
setAnchorWidth,
|
|
219
|
+
shadowMenuContainerStyle,
|
|
220
|
+
_container,
|
|
221
|
+
onRequestClose,
|
|
222
|
+
onMenuLayout,
|
|
223
|
+
checked,
|
|
224
|
+
onCheckedChange,
|
|
225
|
+
menuHeight,
|
|
226
|
+
maxMenuHeight,
|
|
227
|
+
animationStarted,
|
|
228
|
+
menuSize,
|
|
229
|
+
testID,
|
|
230
|
+
};
|
|
204
231
|
};
|
|
205
232
|
exports.useMenu = useMenu;
|
|
206
233
|
/**
|
|
@@ -208,18 +235,18 @@ exports.useMenu = useMenu;
|
|
|
208
235
|
* It also takes care of Controlled Menu component by checking open variable
|
|
209
236
|
*
|
|
210
237
|
*/
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
238
|
+
const useMenuOpenState = (isControlled, props, parentSetOpen, hide, show) => {
|
|
239
|
+
const { defaultOpen, onOpenChange, open } = props;
|
|
240
|
+
const initialState = typeof defaultOpen !== 'undefined' ? defaultOpen : !!open;
|
|
241
|
+
const [openInternal, setOpenInternal] = react_1.default.useState(initialState);
|
|
242
|
+
const [shouldFocusOnContainer, setShouldFocusOnContainer] = react_1.default.useState(undefined);
|
|
243
|
+
const state = isControlled ? open : openInternal;
|
|
244
|
+
const lastCloseTimestampRef = react_1.default.useRef(-1);
|
|
218
245
|
/**
|
|
219
246
|
* setOpen handles the open of the Menu and setting focus on the Popover container
|
|
220
247
|
*/
|
|
221
|
-
|
|
222
|
-
|
|
248
|
+
const setOpen = react_1.default.useCallback((e, isOpen, bubble) => {
|
|
249
|
+
const openPrev = state;
|
|
223
250
|
if (!isControlled && (!isOpen || lastCloseTimestampRef.current + delayOpen <= Date.now())) {
|
|
224
251
|
setOpenInternal(isOpen);
|
|
225
252
|
}
|
|
@@ -244,17 +271,16 @@ var useMenuOpenState = function (isControlled, props, parentSetOpen, hide, show)
|
|
|
244
271
|
/**
|
|
245
272
|
* Call for useMenuCheckedState for identifying if any MenuItemCheckbox is checked or not
|
|
246
273
|
*/
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
var onCheckedChange = react_1.default.useCallback(function (e, checked) {
|
|
274
|
+
const useMenuCheckedState = (props) => {
|
|
275
|
+
const { checked, defaultChecked, onCheckedChange: onCheckedChangeOriginal } = props;
|
|
276
|
+
const [checkedInternal, setCheckedInternal] = react_1.default.useState(defaultChecked ?? checked ?? []);
|
|
277
|
+
const isControlled = typeof checked !== 'undefined';
|
|
278
|
+
const state = isControlled ? checked : checkedInternal;
|
|
279
|
+
const onCheckedChange = react_1.default.useCallback((e, checked) => {
|
|
254
280
|
if (!isControlled) {
|
|
255
281
|
setCheckedInternal(checked);
|
|
256
282
|
}
|
|
257
|
-
onCheckedChangeOriginal
|
|
283
|
+
onCheckedChangeOriginal?.(e, checked);
|
|
258
284
|
}, [isControlled, setCheckedInternal, onCheckedChangeOriginal]);
|
|
259
285
|
return [state, onCheckedChange];
|
|
260
286
|
};
|