@fluentui-react-native/menu 1.14.22 → 1.14.24
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 +65 -0
- package/CHANGELOG.md +17 -1
- 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 +45 -26
- package/.eslintrc.js +0 -3
|
@@ -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
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useMenu.android.js","sourceRoot":"","sources":["../../src/Menu/useMenu.android.ts"],"names":[],"mappings":";;;;AAAA,
|
|
1
|
+
{"version":3,"file":"useMenu.android.js","sourceRoot":"","sources":["../../src/Menu/useMenu.android.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,44 +1,56 @@
|
|
|
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.__importDefault(require("react"));
|
|
6
|
+
const react_native_1 = require("react-native");
|
|
7
|
+
const interactive_hooks_1 = require("@fluentui-react-native/interactive-hooks");
|
|
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
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
13
|
+
const delayOpen = 150;
|
|
14
|
+
const useMenu = (props) => {
|
|
15
|
+
const triggerRef = react_1.default.useRef();
|
|
16
|
+
const context = (0, menuContext_1.useMenuContext)();
|
|
17
|
+
const isSubmenu = context.triggerRef !== null;
|
|
18
|
+
const isOpenControlled = typeof props.open !== 'undefined';
|
|
19
|
+
const [open, shouldFocusOnContainer, setOpen] = useMenuOpenState(isOpenControlled, props, context.setOpen);
|
|
20
|
+
const [checked, onCheckedChange] = useMenuCheckedState(props);
|
|
21
21
|
// Default behavior for submenu is to open on hover
|
|
22
22
|
// the ...props line below will override this behavior for a submenu
|
|
23
23
|
// or apply openOnHover if passed into a root Menu.
|
|
24
|
-
|
|
24
|
+
const openOnHover = isSubmenu;
|
|
25
25
|
// We need to be able to cancel the timer that gets set on
|
|
26
26
|
// hover out of the parent popover if the parent popover
|
|
27
27
|
// is also set to open/close on hover out. Otherwise
|
|
28
28
|
// the parent menu will close when the timeout passes.
|
|
29
|
-
|
|
30
|
-
return
|
|
29
|
+
const parentPopoverHoverOutTimer = isSubmenu ? context.popoverHoverOutTimer : undefined;
|
|
30
|
+
return {
|
|
31
|
+
openOnHover,
|
|
32
|
+
...props,
|
|
33
|
+
open,
|
|
34
|
+
setOpen,
|
|
35
|
+
shouldFocusOnContainer,
|
|
36
|
+
checked,
|
|
37
|
+
onCheckedChange,
|
|
38
|
+
triggerRef,
|
|
39
|
+
isSubmenu,
|
|
40
|
+
isControlled: isOpenControlled,
|
|
41
|
+
parentPopoverHoverOutTimer,
|
|
42
|
+
};
|
|
31
43
|
};
|
|
32
44
|
exports.useMenu = useMenu;
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
45
|
+
const useMenuOpenState = (isControlled, props, parentSetOpen) => {
|
|
46
|
+
const { defaultOpen, onOpenChange, open } = props;
|
|
47
|
+
const initialState = typeof defaultOpen !== 'undefined' ? defaultOpen : !!open;
|
|
48
|
+
const [openInternal, setOpenInternal] = react_1.default.useState(initialState);
|
|
49
|
+
const [shouldFocusOnContainer, setShouldFocusOnContainer] = react_1.default.useState(undefined);
|
|
50
|
+
const state = isControlled ? open : openInternal;
|
|
51
|
+
const lastCloseTimestampRef = react_1.default.useRef(-1);
|
|
52
|
+
const setOpen = react_1.default.useCallback((e, isOpen, bubble) => {
|
|
53
|
+
const openPrev = state;
|
|
42
54
|
if (!isControlled && (!isOpen || lastCloseTimestampRef.current + delayOpen <= Date.now())) {
|
|
43
55
|
setOpenInternal(isOpen);
|
|
44
56
|
}
|
|
@@ -63,17 +75,16 @@ var useMenuOpenState = function (isControlled, props, parentSetOpen) {
|
|
|
63
75
|
}, [isControlled, state, onOpenChange, setOpenInternal, parentSetOpen]);
|
|
64
76
|
return [state, shouldFocusOnContainer, setOpen];
|
|
65
77
|
};
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
var onCheckedChange = react_1.default.useCallback(function (e, checked) {
|
|
78
|
+
const useMenuCheckedState = (props) => {
|
|
79
|
+
const { checked, defaultChecked, onCheckedChange: onCheckedChangeOriginal } = props;
|
|
80
|
+
const [checkedInternal, setCheckedInternal] = react_1.default.useState(defaultChecked ?? checked ?? []);
|
|
81
|
+
const isControlled = typeof checked !== 'undefined';
|
|
82
|
+
const state = isControlled ? checked : checkedInternal;
|
|
83
|
+
const onCheckedChange = react_1.default.useCallback((e, checked) => {
|
|
73
84
|
if (!isControlled) {
|
|
74
85
|
setCheckedInternal(checked);
|
|
75
86
|
}
|
|
76
|
-
onCheckedChangeOriginal
|
|
87
|
+
onCheckedChangeOriginal?.(e, checked);
|
|
77
88
|
}, [isControlled, setCheckedInternal, onCheckedChangeOriginal]);
|
|
78
89
|
return [state, onCheckedChange];
|
|
79
90
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useMenu.js","sourceRoot":"","sources":["../../src/Menu/useMenu.ts"],"names":[],"mappings":";;;;AAAA,
|
|
1
|
+
{"version":3,"file":"useMenu.js","sourceRoot":"","sources":["../../src/Menu/useMenu.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.useMenuContextValue = void 0;
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
return
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const react_1 = tslib_1.__importDefault(require("react"));
|
|
6
|
+
const useMenuContextValue = (state) => {
|
|
7
|
+
const [triggerHoverOutTimer, setTriggerHoverOutTimer] = react_1.default.useState();
|
|
8
|
+
const [popoverHoverOutTimer, setPopoverHoverOutTimer] = react_1.default.useState();
|
|
9
|
+
return { ...state, popoverHoverOutTimer, triggerHoverOutTimer, setPopoverHoverOutTimer, setTriggerHoverOutTimer };
|
|
10
10
|
};
|
|
11
11
|
exports.useMenuContextValue = useMenuContextValue;
|
|
12
12
|
//# sourceMappingURL=useMenuContextValue.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useMenuContextValue.js","sourceRoot":"","sources":["../../src/Menu/useMenuContextValue.ts"],"names":[],"mappings":";;;;AAAA,
|
|
1
|
+
{"version":3,"file":"useMenuContextValue.js","sourceRoot":"","sources":["../../src/Menu/useMenuContextValue.ts"],"names":[],"mappings":";;;;AAAA,0DAA0B;AAKnB,MAAM,mBAAmB,GAAG,CAAC,KAAgB,EAAoB,EAAE;IACxE,MAAM,CAAC,oBAAoB,EAAE,uBAAuB,CAAC,GAAG,eAAK,CAAC,QAAQ,EAA8B,CAAC;IACrG,MAAM,CAAC,oBAAoB,EAAE,uBAAuB,CAAC,GAAG,eAAK,CAAC,QAAQ,EAAkB,CAAC;IACzF,OAAO,EAAE,GAAG,KAAK,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,uBAAuB,EAAE,uBAAuB,EAAE,CAAC;AACpH,CAAC,CAAC;AAJW,QAAA,mBAAmB,uBAI9B"}
|
|
@@ -1,20 +1,20 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.MenuCallout = void 0;
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
exports.MenuCallout = (0, framework_1.stagedComponent)(
|
|
13
|
-
|
|
14
|
-
return
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
return (react_1.default.createElement(react_native_1.Modal,
|
|
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 framework_1 = require("@fluentui-react-native/framework");
|
|
8
|
+
const framework_2 = require("@fluentui-react-native/framework");
|
|
9
|
+
const MenuCallout_types_1 = require("./MenuCallout.types");
|
|
10
|
+
const context_1 = require("../context");
|
|
11
|
+
const AnimatedScrollView = react_native_1.Animated.createAnimatedComponent(react_native_1.ScrollView);
|
|
12
|
+
exports.MenuCallout = (0, framework_1.stagedComponent)((props) => {
|
|
13
|
+
const context = (0, context_1.useMenuContext)();
|
|
14
|
+
return (_rest, children) => {
|
|
15
|
+
const mergedProps = (0, framework_2.mergeProps)(props, _rest);
|
|
16
|
+
const tokens = props.tokens;
|
|
17
|
+
return (react_1.default.createElement(react_native_1.Modal, { ...mergedProps, visible: context.open, onRequestClose: context.onRequestClose, supportedOrientations: ['portrait', 'portrait-upside-down', 'landscape', 'landscape-left', 'landscape-right'], transparent: true },
|
|
18
18
|
react_1.default.createElement(react_native_1.TouchableWithoutFeedback, { onPress: context.onRequestClose, accessible: false },
|
|
19
19
|
react_1.default.createElement(react_native_1.View, { style: [react_native_1.StyleSheet.absoluteFill] },
|
|
20
20
|
react_1.default.createElement(react_native_1.Animated.View, { onLayout: context.onMenuLayout, style: [
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MenuCallout.android.js","sourceRoot":"","sources":["../../src/MenuCallout/MenuCallout.android.tsx"],"names":[],"mappings":";;;;AAAA,
|
|
1
|
+
{"version":3,"file":"MenuCallout.android.js","sourceRoot":"","sources":["../../src/MenuCallout/MenuCallout.android.tsx"],"names":[],"mappings":";;;;AAAA,0DAA0B;AAC1B,+CAAuG;AAEvG,gEAAmE;AACnE,gEAA8D;AAG9D,2DAAsD;AACtD,wCAA4C;AAE5C,MAAM,kBAAkB,GAAG,uBAAQ,CAAC,uBAAuB,CAAC,yBAAU,CAAC,CAAC;AAE3D,QAAA,WAAW,GAAG,IAAA,2BAAe,EAAC,CAAC,KAAuB,EAAE,EAAE;IACrE,MAAM,OAAO,GAAG,IAAA,wBAAc,GAAE,CAAC;IAEjC,OAAO,CAAC,KAAuB,EAAE,QAAyB,EAAE,EAAE;QAC5D,MAAM,WAAW,GAAG,IAAA,sBAAU,EAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QAC7C,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;QAE5B,OAAO,CACL,8BAAC,oBAAK,OACA,WAAW,EACf,OAAO,EAAE,OAAO,CAAC,IAAI,EACrB,cAAc,EAAE,OAAO,CAAC,cAAc,EACtC,qBAAqB,EAAE,CAAC,UAAU,EAAE,sBAAsB,EAAE,WAAW,EAAE,gBAAgB,EAAE,iBAAiB,CAAC,EAC7G,WAAW;YAEX,8BAAC,uCAAwB,IAAC,OAAO,EAAE,OAAO,CAAC,cAAc,EAAE,UAAU,EAAE,KAAK;gBAC1E,8BAAC,mBAAI,IAAC,KAAK,EAAE,CAAC,yBAAU,CAAC,YAAY,CAAC;oBACpC,8BAAC,uBAAQ,CAAC,IAAI,IACZ,QAAQ,EAAE,OAAO,CAAC,YAAY,EAC9B,KAAK,EAAE;4BACL,OAAO,CAAC,wBAAwB;4BAChC;gCACE,SAAS,EAAE,WAAW,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS;gCAC3E,QAAQ,EAAE,MAAM,CAAC,QAAQ;gCACzB,QAAQ,EAAE,UAAU;gCACpB,YAAY,EAAE,MAAM,CAAC,YAAY;gCACjC,SAAS,EAAE,MAAM,CAAC,SAAS;gCAC3B,QAAQ,EAAE,QAAQ;6BACnB;yBACF,IAEA,OAAO,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,IAAI,MAAM,CAAC,SAAS;wBAC3D,OAAO,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,IAAI,WAAW,CAAC,SAAS,CAAC,CAAC,CAAC,CAChE,8BAAC,kBAAkB,IAAC,KAAK,EAAE,CAAC,OAAO,CAAC,gBAAgB,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAG,QAAQ,CAAsB,CAC3G,CAAC,CAAC,CAAC,CACF,8BAAC,uBAAQ,CAAC,IAAI,IAAC,KAAK,EAAE,CAAC,OAAO,CAAC,gBAAgB,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAG,QAAQ,CAAiB,CACjG,CACa,CACX,CACkB,CACrB,CACT,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,mBAAW,CAAC,WAAW,GAAG,mCAAe,CAAC;AAE1C,kBAAe,mBAAW,CAAC"}
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.MenuCallout = void 0;
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
exports.MenuCallout = (0, framework_1.stagedComponent)(
|
|
11
|
-
return
|
|
12
|
-
|
|
13
|
-
return react_1.default.createElement(callout_1.Callout,
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const react_1 = tslib_1.__importDefault(require("react"));
|
|
6
|
+
const callout_1 = require("@fluentui-react-native/callout");
|
|
7
|
+
const framework_1 = require("@fluentui-react-native/framework");
|
|
8
|
+
const framework_2 = require("@fluentui-react-native/framework");
|
|
9
|
+
const MenuCallout_types_1 = require("./MenuCallout.types");
|
|
10
|
+
exports.MenuCallout = (0, framework_1.stagedComponent)((props) => {
|
|
11
|
+
return (_rest, children) => {
|
|
12
|
+
const mergedProps = (0, framework_2.mergeProps)(props, _rest);
|
|
13
|
+
return react_1.default.createElement(callout_1.Callout, { ...mergedProps }, children);
|
|
14
14
|
};
|
|
15
15
|
});
|
|
16
16
|
exports.MenuCallout.displayName = MenuCallout_types_1.menuCalloutName;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MenuCallout.js","sourceRoot":"","sources":["../../src/MenuCallout/MenuCallout.tsx"],"names":[],"mappings":";;;;AAAA,
|
|
1
|
+
{"version":3,"file":"MenuCallout.js","sourceRoot":"","sources":["../../src/MenuCallout/MenuCallout.tsx"],"names":[],"mappings":";;;;AAAA,0DAA0B;AAE1B,4DAAyD;AACzD,gEAAmE;AACnE,gEAA8D;AAG9D,2DAAsD;AAEzC,QAAA,WAAW,GAAG,IAAA,2BAAe,EAAC,CAAC,KAAuB,EAAE,EAAE;IACrE,OAAO,CAAC,KAAuB,EAAE,QAAyB,EAAE,EAAE;QAC5D,MAAM,WAAW,GAAG,IAAA,sBAAU,EAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QAE7C,OAAO,8BAAC,iBAAO,OAAK,WAAW,IAAG,QAAQ,CAAW,CAAC;IACxD,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,mBAAW,CAAC,WAAW,GAAG,mCAAe,CAAC;AAE1C,kBAAe,mBAAW,CAAC"}
|
|
@@ -1,19 +1,23 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.MenuDivider = void 0;
|
|
4
|
-
var tslib_1 = require("tslib");
|
|
5
4
|
/** @jsxRuntime classic */
|
|
6
5
|
/** @jsx withSlots */
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
exports.MenuDivider = (0, framework_1.compose)(
|
|
6
|
+
const react_native_1 = require("react-native");
|
|
7
|
+
const framework_1 = require("@fluentui-react-native/framework");
|
|
8
|
+
const MenuDivider_styling_1 = require("./MenuDivider.styling");
|
|
9
|
+
const MenuDivider_types_1 = require("./MenuDivider.types");
|
|
10
|
+
exports.MenuDivider = (0, framework_1.compose)({
|
|
11
|
+
displayName: MenuDivider_types_1.menuDividerName,
|
|
12
|
+
...MenuDivider_styling_1.stylingSettings,
|
|
13
|
+
slots: {
|
|
12
14
|
root: react_native_1.View,
|
|
13
|
-
},
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
15
|
+
},
|
|
16
|
+
useRender: (userProps, useSlots) => {
|
|
17
|
+
const Slots = useSlots(userProps);
|
|
18
|
+
return (final) => {
|
|
19
|
+
return (0, framework_1.withSlots)(Slots.root, { ...final });
|
|
17
20
|
};
|
|
18
|
-
}
|
|
21
|
+
},
|
|
22
|
+
});
|
|
19
23
|
//# sourceMappingURL=MenuDivider.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MenuDivider.js","sourceRoot":"","sources":["../../src/MenuDivider/MenuDivider.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"MenuDivider.js","sourceRoot":"","sources":["../../src/MenuDivider/MenuDivider.tsx"],"names":[],"mappings":";;;AAAA,0BAA0B;AAC1B,qBAAqB;AACrB,+CAAoC;AAGpC,gEAAsE;AAEtE,+DAAwD;AAExD,2DAAsD;AAEzC,QAAA,WAAW,GAAG,IAAA,mBAAO,EAAkB;IAClD,WAAW,EAAE,mCAAe;IAC5B,GAAG,qCAAe;IAClB,KAAK,EAAE;QACL,IAAI,EAAE,mBAAI;KACX;IACD,SAAS,EAAE,CAAC,SAA2B,EAAE,QAAmC,EAAE,EAAE;QAC9E,MAAM,KAAK,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC;QAElC,OAAO,CAAC,KAAuB,EAAE,EAAE;YACjC,OAAO,2BAAC,KAAK,CAAC,IAAI,OAAK,KAAK,GAAI,CAAC;QACnC,CAAC,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"}
|