@fluentui-react-native/menu 1.4.11 → 1.4.13
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 +55 -1
- package/CHANGELOG.md +22 -2
- package/lib/Menu/Menu.d.ts.map +1 -1
- package/lib/Menu/Menu.js +1 -1
- package/lib/Menu/Menu.js.map +1 -1
- package/lib/Menu/useMenu.js +9 -4
- package/lib/Menu/useMenu.js.map +1 -1
- package/lib/context/menuContext.js +1 -1
- package/lib/context/menuContext.js.map +1 -1
- package/lib-commonjs/Menu/Menu.d.ts.map +1 -1
- package/lib-commonjs/Menu/Menu.js +1 -1
- package/lib-commonjs/Menu/Menu.js.map +1 -1
- package/lib-commonjs/Menu/useMenu.js +9 -4
- package/lib-commonjs/Menu/useMenu.js.map +1 -1
- package/lib-commonjs/context/menuContext.js +1 -1
- package/lib-commonjs/context/menuContext.js.map +1 -1
- package/package.json +6 -6
- package/src/Menu/Menu.tsx +3 -1
- package/src/Menu/useMenu.ts +8 -4
- package/src/__tests__/__snapshots__/Menu.test.tsx.snap +539 -2338
- package/src/context/menuContext.ts +1 -1
package/CHANGELOG.json
CHANGED
|
@@ -2,7 +2,61 @@
|
|
|
2
2
|
"name": "@fluentui-react-native/menu",
|
|
3
3
|
"entries": [
|
|
4
4
|
{
|
|
5
|
-
"date": "
|
|
5
|
+
"date": "Tue, 28 Feb 2023 21:31:00 GMT",
|
|
6
|
+
"tag": "@fluentui-react-native/menu_v1.4.13",
|
|
7
|
+
"version": "1.4.13",
|
|
8
|
+
"comments": {
|
|
9
|
+
"patch": [
|
|
10
|
+
{
|
|
11
|
+
"author": "beachball",
|
|
12
|
+
"package": "@fluentui-react-native/menu",
|
|
13
|
+
"comment": "Bump @fluentui-react-native/callout to v0.23.4",
|
|
14
|
+
"commit": "593573fd9af7744bf4c0e843f36f3bbaea888106"
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
"author": "beachball",
|
|
18
|
+
"package": "@fluentui-react-native/menu",
|
|
19
|
+
"comment": "Bump @fluentui-react-native/focus-zone to v0.11.33",
|
|
20
|
+
"commit": "593573fd9af7744bf4c0e843f36f3bbaea888106"
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
"author": "beachball",
|
|
24
|
+
"package": "@fluentui-react-native/menu",
|
|
25
|
+
"comment": "Bump @fluentui-react-native/interactive-hooks to v0.22.21",
|
|
26
|
+
"commit": "593573fd9af7744bf4c0e843f36f3bbaea888106"
|
|
27
|
+
},
|
|
28
|
+
{
|
|
29
|
+
"author": "beachball",
|
|
30
|
+
"package": "@fluentui-react-native/menu",
|
|
31
|
+
"comment": "Bump @fluentui-react-native/text to v0.19.23",
|
|
32
|
+
"commit": "593573fd9af7744bf4c0e843f36f3bbaea888106"
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
"author": "beachball",
|
|
36
|
+
"package": "@fluentui-react-native/menu",
|
|
37
|
+
"comment": "Bump @fluentui-react-native/button to v0.32.36",
|
|
38
|
+
"commit": "593573fd9af7744bf4c0e843f36f3bbaea888106"
|
|
39
|
+
}
|
|
40
|
+
]
|
|
41
|
+
}
|
|
42
|
+
},
|
|
43
|
+
{
|
|
44
|
+
"date": "Sat, 25 Feb 2023 01:17:04 GMT",
|
|
45
|
+
"tag": "@fluentui-react-native/menu_v1.4.12",
|
|
46
|
+
"version": "1.4.12",
|
|
47
|
+
"comments": {
|
|
48
|
+
"patch": [
|
|
49
|
+
{
|
|
50
|
+
"author": "ruaraki@microsoft.com",
|
|
51
|
+
"package": "@fluentui-react-native/menu",
|
|
52
|
+
"commit": "276aac8c5e989c0d7af12391950bdacd7a38d509",
|
|
53
|
+
"comment": "Only open menu when shouldFocusOnContainer is defined"
|
|
54
|
+
}
|
|
55
|
+
]
|
|
56
|
+
}
|
|
57
|
+
},
|
|
58
|
+
{
|
|
59
|
+
"date": "Fri, 24 Feb 2023 23:53:36 GMT",
|
|
6
60
|
"tag": "@fluentui-react-native/menu_v1.4.11",
|
|
7
61
|
"version": "1.4.11",
|
|
8
62
|
"comments": {
|
package/CHANGELOG.md
CHANGED
|
@@ -1,12 +1,32 @@
|
|
|
1
1
|
# Change Log - @fluentui-react-native/menu
|
|
2
2
|
|
|
3
|
-
This log was last generated on
|
|
3
|
+
This log was last generated on Tue, 28 Feb 2023 21:31:00 GMT and should not be manually modified.
|
|
4
4
|
|
|
5
5
|
<!-- Start content -->
|
|
6
6
|
|
|
7
|
+
## 1.4.13
|
|
8
|
+
|
|
9
|
+
Tue, 28 Feb 2023 21:31:00 GMT
|
|
10
|
+
|
|
11
|
+
### Patches
|
|
12
|
+
|
|
13
|
+
- Bump @fluentui-react-native/callout to v0.23.4
|
|
14
|
+
- Bump @fluentui-react-native/focus-zone to v0.11.33
|
|
15
|
+
- Bump @fluentui-react-native/interactive-hooks to v0.22.21
|
|
16
|
+
- Bump @fluentui-react-native/text to v0.19.23
|
|
17
|
+
- Bump @fluentui-react-native/button to v0.32.36
|
|
18
|
+
|
|
19
|
+
## 1.4.12
|
|
20
|
+
|
|
21
|
+
Sat, 25 Feb 2023 01:17:04 GMT
|
|
22
|
+
|
|
23
|
+
### Patches
|
|
24
|
+
|
|
25
|
+
- Only open menu when shouldFocusOnContainer is defined (ruaraki@microsoft.com)
|
|
26
|
+
|
|
7
27
|
## 1.4.11
|
|
8
28
|
|
|
9
|
-
Fri, 24 Feb 2023 23:
|
|
29
|
+
Fri, 24 Feb 2023 23:53:36 GMT
|
|
10
30
|
|
|
11
31
|
### Patches
|
|
12
32
|
|
package/lib/Menu/Menu.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Menu.d.ts","sourceRoot":"","sources":["../../src/Menu/Menu.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAM9C,eAAO,MAAM,IAAI,
|
|
1
|
+
{"version":3,"file":"Menu.d.ts","sourceRoot":"","sources":["../../src/Menu/Menu.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAM9C,eAAO,MAAM,IAAI,0EA0Bf,CAAC;AAGH,eAAe,IAAI,CAAC"}
|
package/lib/Menu/Menu.js
CHANGED
|
@@ -19,7 +19,7 @@ export var Menu = stagedComponent(function (props) {
|
|
|
19
19
|
var menuPopover = childrenArray[1];
|
|
20
20
|
return (React.createElement(MenuProvider, { value: contextValue },
|
|
21
21
|
menuTrigger,
|
|
22
|
-
state.open && menuPopover));
|
|
22
|
+
state.open && state.shouldFocusOnContainer !== undefined && menuPopover));
|
|
23
23
|
};
|
|
24
24
|
});
|
|
25
25
|
Menu.displayName = menuName;
|
package/lib/Menu/Menu.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Menu.js","sourceRoot":"","sources":["../../src/Menu/Menu.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AAGnE,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAEtD,MAAM,CAAC,IAAM,IAAI,GAAG,eAAe,CAAC,UAAC,KAAgB;IACnD,IAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;IAC7B,IAAM,YAAY,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;IAEhD,OAAO,UAAC,KAAgB,EAAE,QAAyB;QACjD,IAAM,aAAa,GAAG,KAAK,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;QAED,IAAM,WAAW,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC;QACrC,IAAM,WAAW,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC;QAErC,OAAO,CACL,oBAAC,YAAY,IAAC,KAAK,EAAE,YAAY;YAC9B,WAAW;
|
|
1
|
+
{"version":3,"file":"Menu.js","sourceRoot":"","sources":["../../src/Menu/Menu.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AAGnE,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAEtD,MAAM,CAAC,IAAM,IAAI,GAAG,eAAe,CAAC,UAAC,KAAgB;IACnD,IAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;IAC7B,IAAM,YAAY,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;IAEhD,OAAO,UAAC,KAAgB,EAAE,QAAyB;QACjD,IAAM,aAAa,GAAG,KAAK,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;QAED,IAAM,WAAW,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC;QACrC,IAAM,WAAW,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC;QAErC,OAAO,CACL,oBAAC,YAAY,IAAC,KAAK,EAAE,YAAY;YAC9B,WAAW;YAGX,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,sBAAsB,KAAK,SAAS,IAAI,WAAW,CAC3D,CAChB,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC;AACH,IAAI,CAAC,WAAW,GAAG,QAAQ,CAAC;AAE5B,eAAe,IAAI,CAAC"}
|
package/lib/Menu/useMenu.js
CHANGED
|
@@ -31,18 +31,23 @@ var useMenuOpenState = function (isControlled, props, parentSetOpen) {
|
|
|
31
31
|
var defaultOpen = props.defaultOpen, onOpenChange = props.onOpenChange, open = props.open;
|
|
32
32
|
var initialState = typeof defaultOpen !== 'undefined' ? defaultOpen : !!open;
|
|
33
33
|
var _a = React.useState(initialState), openInternal = _a[0], setOpenInternal = _a[1];
|
|
34
|
-
var _b = React.useState(
|
|
34
|
+
var _b = React.useState(undefined), shouldFocusOnContainer = _b[0], setShouldFocusOnContainer = _b[1];
|
|
35
35
|
var state = isControlled ? open : openInternal;
|
|
36
36
|
var setOpen = React.useCallback(function (e, isOpen, bubble) {
|
|
37
37
|
var openPrev = state;
|
|
38
38
|
if (!isControlled && (!isOpen || lastCloseTimestamp + delayOpen <= Date.now())) {
|
|
39
39
|
setOpenInternal(isOpen);
|
|
40
40
|
}
|
|
41
|
-
if (isOpen
|
|
42
|
-
|
|
41
|
+
if (isOpen) {
|
|
42
|
+
if (Platform.OS === 'win32' && isMouseEvent(e)) {
|
|
43
|
+
setShouldFocusOnContainer(true);
|
|
44
|
+
}
|
|
45
|
+
else {
|
|
46
|
+
setShouldFocusOnContainer(false);
|
|
47
|
+
}
|
|
43
48
|
}
|
|
44
49
|
if (!isOpen) {
|
|
45
|
-
setShouldFocusOnContainer(
|
|
50
|
+
setShouldFocusOnContainer(undefined);
|
|
46
51
|
lastCloseTimestamp = Date.now();
|
|
47
52
|
}
|
|
48
53
|
if (onOpenChange && openPrev !== isOpen) {
|
package/lib/Menu/useMenu.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useMenu.js","sourceRoot":"","sources":["../../src/Menu/useMenu.ts"],"names":[],"mappings":";AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAGxC,OAAO,EAAE,YAAY,EAAE,MAAM,0CAA0C,CAAC;AAGxE,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAExD,0DAA0D;AAC1D,sDAAsD;AACtD,wDAAwD;AACxD,iBAAiB;AACjB,IAAM,SAAS,GAAG,GAAG,CAAC;AACtB,IAAI,kBAAkB,GAAG,CAAC,CAAC,CAAC;AAE5B,MAAM,CAAC,IAAM,OAAO,GAAG,UAAC,KAAgB;IACtC,IAAM,UAAU,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;IAClC,IAAM,OAAO,GAAG,cAAc,EAAE,CAAC;IACjC,IAAM,SAAS,GAAG,OAAO,CAAC,UAAU,KAAK,IAAI,CAAC;IAC9C,IAAM,gBAAgB,GAAG,OAAO,KAAK,CAAC,IAAI,KAAK,WAAW,CAAC;IACrD,IAAA,KAA0C,gBAAgB,CAAC,gBAAgB,EAAE,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC,EAAnG,IAAI,QAAA,EAAE,sBAAsB,QAAA,EAAE,OAAO,QAA8D,CAAC;IAErG,IAAA,KAA6B,mBAAmB,CAAC,KAAK,CAAC,EAAtD,OAAO,QAAA,EAAE,eAAe,QAA8B,CAAC;IAE9D,mDAAmD;IACnD,oEAAoE;IACpE,mDAAmD;IACnD,IAAM,WAAW,GAAG,SAAS,CAAC;IAE9B,0DAA0D;IAC1D,wDAAwD;IACxD,oDAAoD;IACpD,sDAAsD;IACtD,IAAM,0BAA0B,GAAG,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC,CAAC,SAAS,CAAC;IAExF,2BACE,WAAW,aAAA,IACR,KAAK,KACR,IAAI,MAAA,EACJ,OAAO,SAAA,EACP,sBAAsB,wBAAA,EACtB,OAAO,SAAA,EACP,eAAe,iBAAA,EACf,UAAU,YAAA,EACV,SAAS,WAAA,EACT,YAAY,EAAE,gBAAgB,EAC9B,0BAA0B,4BAAA,IAC1B;AACJ,CAAC,CAAC;AAEF,IAAM,gBAAgB,GAAG,UACvB,YAAqB,EACrB,KAAgB,EAChB,aAA+E;IAEvE,IAAA,WAAW,GAAyB,KAAK,YAA9B,EAAE,YAAY,GAAW,KAAK,aAAhB,EAAE,IAAI,GAAK,KAAK,KAAV,CAAW;IAClD,IAAM,YAAY,GAAG,OAAO,WAAW,KAAK,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACzE,IAAA,KAAkC,KAAK,CAAC,QAAQ,CAAU,YAAY,CAAC,EAAtE,YAAY,QAAA,EAAE,eAAe,QAAyC,CAAC;IACxE,IAAA,KAAsD,KAAK,CAAC,QAAQ,
|
|
1
|
+
{"version":3,"file":"useMenu.js","sourceRoot":"","sources":["../../src/Menu/useMenu.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,7 +9,7 @@ export var MenuContext = React.createContext({
|
|
|
9
9
|
open: false,
|
|
10
10
|
onCheckedChange: function () { return false; },
|
|
11
11
|
setOpen: function () { return false; },
|
|
12
|
-
shouldFocusOnContainer:
|
|
12
|
+
shouldFocusOnContainer: undefined,
|
|
13
13
|
triggerRef: null,
|
|
14
14
|
hasMaxHeight: false,
|
|
15
15
|
hasMaxWidth: false,
|
|
@@ -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,IAAM,WAAW,GAAG,KAAK,CAAC,aAAa,CAAmB;IAC/D,YAAY,EAAE,KAAK;IACnB,OAAO,EAAE,EAAE;IACX,cAAc,EAAE,EAAE;IAClB,aAAa,EAAE,KAAK;IACpB,WAAW,EAAE,KAAK;IAClB,SAAS,EAAE,KAAK;IAChB,IAAI,EAAE,KAAK;IACX,eAAe,EAAE,cAAM,OAAA,KAAK,EAAL,CAAK;IAC5B,OAAO,EAAE,cAAM,OAAA,KAAK,EAAL,CAAK;IACpB,sBAAsB,EAAE,
|
|
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,IAAM,WAAW,GAAG,KAAK,CAAC,aAAa,CAAmB;IAC/D,YAAY,EAAE,KAAK;IACnB,OAAO,EAAE,EAAE;IACX,cAAc,EAAE,EAAE;IAClB,aAAa,EAAE,KAAK;IACpB,WAAW,EAAE,KAAK;IAClB,SAAS,EAAE,KAAK;IAChB,IAAI,EAAE,KAAK;IACX,eAAe,EAAE,cAAM,OAAA,KAAK,EAAL,CAAK;IAC5B,OAAO,EAAE,cAAM,OAAA,KAAK,EAAL,CAAK;IACpB,sBAAsB,EAAE,SAAS;IACjC,UAAU,EAAE,IAAI;IAChB,YAAY,EAAE,KAAK;IACnB,WAAW,EAAE,KAAK;CACnB,CAAC,CAAC;AAEH,MAAM,CAAC,IAAM,YAAY,GAAG,WAAW,CAAC,QAAQ,CAAC;AACjD,MAAM,CAAC,IAAM,cAAc,GAAG,cAAM,OAAA,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC,EAA7B,CAA6B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Menu.d.ts","sourceRoot":"","sources":["../../src/Menu/Menu.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAM9C,eAAO,MAAM,IAAI,
|
|
1
|
+
{"version":3,"file":"Menu.d.ts","sourceRoot":"","sources":["../../src/Menu/Menu.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAM9C,eAAO,MAAM,IAAI,0EA0Bf,CAAC;AAGH,eAAe,IAAI,CAAC"}
|
|
@@ -23,7 +23,7 @@ exports.Menu = (0, framework_1.stagedComponent)(function (props) {
|
|
|
23
23
|
var menuPopover = childrenArray[1];
|
|
24
24
|
return (react_1.default.createElement(menuContext_1.MenuProvider, { value: contextValue },
|
|
25
25
|
menuTrigger,
|
|
26
|
-
state.open && menuPopover));
|
|
26
|
+
state.open && state.shouldFocusOnContainer !== undefined && menuPopover));
|
|
27
27
|
};
|
|
28
28
|
});
|
|
29
29
|
exports.Menu.displayName = Menu_types_1.menuName;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Menu.js","sourceRoot":"","sources":["../../src/Menu/Menu.tsx"],"names":[],"mappings":";;;;AAAA,wDAA0B;AAE1B,8DAAmE;AAGnE,2CAAwC;AACxC,qCAAoC;AACpC,6DAA4D;AAC5D,sDAAsD;AAEzC,QAAA,IAAI,GAAG,IAAA,2BAAe,EAAC,UAAC,KAAgB;IACnD,IAAM,KAAK,GAAG,IAAA,iBAAO,EAAC,KAAK,CAAC,CAAC;IAC7B,IAAM,YAAY,GAAG,IAAA,yCAAmB,EAAC,KAAK,CAAC,CAAC;IAEhD,OAAO,UAAC,KAAgB,EAAE,QAAyB;QACjD,IAAM,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;QAED,IAAM,WAAW,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC;QACrC,IAAM,WAAW,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC;QAErC,OAAO,CACL,8BAAC,0BAAY,IAAC,KAAK,EAAE,YAAY;YAC9B,WAAW;
|
|
1
|
+
{"version":3,"file":"Menu.js","sourceRoot":"","sources":["../../src/Menu/Menu.tsx"],"names":[],"mappings":";;;;AAAA,wDAA0B;AAE1B,8DAAmE;AAGnE,2CAAwC;AACxC,qCAAoC;AACpC,6DAA4D;AAC5D,sDAAsD;AAEzC,QAAA,IAAI,GAAG,IAAA,2BAAe,EAAC,UAAC,KAAgB;IACnD,IAAM,KAAK,GAAG,IAAA,iBAAO,EAAC,KAAK,CAAC,CAAC;IAC7B,IAAM,YAAY,GAAG,IAAA,yCAAmB,EAAC,KAAK,CAAC,CAAC;IAEhD,OAAO,UAAC,KAAgB,EAAE,QAAyB;QACjD,IAAM,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;QAED,IAAM,WAAW,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC;QACrC,IAAM,WAAW,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC;QAErC,OAAO,CACL,8BAAC,0BAAY,IAAC,KAAK,EAAE,YAAY;YAC9B,WAAW;YAGX,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,sBAAsB,KAAK,SAAS,IAAI,WAAW,CAC3D,CAChB,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC;AACH,YAAI,CAAC,WAAW,GAAG,qBAAQ,CAAC;AAE5B,kBAAe,YAAI,CAAC"}
|
|
@@ -35,18 +35,23 @@ var useMenuOpenState = function (isControlled, props, parentSetOpen) {
|
|
|
35
35
|
var defaultOpen = props.defaultOpen, onOpenChange = props.onOpenChange, open = props.open;
|
|
36
36
|
var initialState = typeof defaultOpen !== 'undefined' ? defaultOpen : !!open;
|
|
37
37
|
var _a = react_1.default.useState(initialState), openInternal = _a[0], setOpenInternal = _a[1];
|
|
38
|
-
var _b = react_1.default.useState(
|
|
38
|
+
var _b = react_1.default.useState(undefined), shouldFocusOnContainer = _b[0], setShouldFocusOnContainer = _b[1];
|
|
39
39
|
var state = isControlled ? open : openInternal;
|
|
40
40
|
var setOpen = react_1.default.useCallback(function (e, isOpen, bubble) {
|
|
41
41
|
var openPrev = state;
|
|
42
42
|
if (!isControlled && (!isOpen || lastCloseTimestamp + delayOpen <= Date.now())) {
|
|
43
43
|
setOpenInternal(isOpen);
|
|
44
44
|
}
|
|
45
|
-
if (isOpen
|
|
46
|
-
|
|
45
|
+
if (isOpen) {
|
|
46
|
+
if (react_native_1.Platform.OS === 'win32' && (0, interactive_hooks_1.isMouseEvent)(e)) {
|
|
47
|
+
setShouldFocusOnContainer(true);
|
|
48
|
+
}
|
|
49
|
+
else {
|
|
50
|
+
setShouldFocusOnContainer(false);
|
|
51
|
+
}
|
|
47
52
|
}
|
|
48
53
|
if (!isOpen) {
|
|
49
|
-
setShouldFocusOnContainer(
|
|
54
|
+
setShouldFocusOnContainer(undefined);
|
|
50
55
|
lastCloseTimestamp = Date.now();
|
|
51
56
|
}
|
|
52
57
|
if (onOpenChange && openPrev !== isOpen) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useMenu.js","sourceRoot":"","sources":["../../src/Menu/useMenu.ts"],"names":[],"mappings":";;;;AAAA,wDAA0B;AAC1B,6CAAwC;AAGxC,8EAAwE;AAGxE,sDAAwD;AAExD,0DAA0D;AAC1D,sDAAsD;AACtD,wDAAwD;AACxD,iBAAiB;AACjB,IAAM,SAAS,GAAG,GAAG,CAAC;AACtB,IAAI,kBAAkB,GAAG,CAAC,CAAC,CAAC;AAErB,IAAM,OAAO,GAAG,UAAC,KAAgB;IACtC,IAAM,UAAU,GAAG,eAAK,CAAC,MAAM,EAAE,CAAC;IAClC,IAAM,OAAO,GAAG,IAAA,4BAAc,GAAE,CAAC;IACjC,IAAM,SAAS,GAAG,OAAO,CAAC,UAAU,KAAK,IAAI,CAAC;IAC9C,IAAM,gBAAgB,GAAG,OAAO,KAAK,CAAC,IAAI,KAAK,WAAW,CAAC;IACrD,IAAA,KAA0C,gBAAgB,CAAC,gBAAgB,EAAE,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC,EAAnG,IAAI,QAAA,EAAE,sBAAsB,QAAA,EAAE,OAAO,QAA8D,CAAC;IAErG,IAAA,KAA6B,mBAAmB,CAAC,KAAK,CAAC,EAAtD,OAAO,QAAA,EAAE,eAAe,QAA8B,CAAC;IAE9D,mDAAmD;IACnD,oEAAoE;IACpE,mDAAmD;IACnD,IAAM,WAAW,GAAG,SAAS,CAAC;IAE9B,0DAA0D;IAC1D,wDAAwD;IACxD,oDAAoD;IACpD,sDAAsD;IACtD,IAAM,0BAA0B,GAAG,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC,CAAC,SAAS,CAAC;IAExF,2CACE,WAAW,aAAA,IACR,KAAK,KACR,IAAI,MAAA,EACJ,OAAO,SAAA,EACP,sBAAsB,wBAAA,EACtB,OAAO,SAAA,EACP,eAAe,iBAAA,EACf,UAAU,YAAA,EACV,SAAS,WAAA,EACT,YAAY,EAAE,gBAAgB,EAC9B,0BAA0B,4BAAA,IAC1B;AACJ,CAAC,CAAC;AAjCW,QAAA,OAAO,WAiClB;AAEF,IAAM,gBAAgB,GAAG,UACvB,YAAqB,EACrB,KAAgB,EAChB,aAA+E;IAEvE,IAAA,WAAW,GAAyB,KAAK,YAA9B,EAAE,YAAY,GAAW,KAAK,aAAhB,EAAE,IAAI,GAAK,KAAK,KAAV,CAAW;IAClD,IAAM,YAAY,GAAG,OAAO,WAAW,KAAK,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACzE,IAAA,KAAkC,eAAK,CAAC,QAAQ,CAAU,YAAY,CAAC,EAAtE,YAAY,QAAA,EAAE,eAAe,QAAyC,CAAC;IACxE,IAAA,KAAsD,eAAK,CAAC,QAAQ,
|
|
1
|
+
{"version":3,"file":"useMenu.js","sourceRoot":"","sources":["../../src/Menu/useMenu.ts"],"names":[],"mappings":"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"}
|
|
@@ -13,7 +13,7 @@ exports.MenuContext = React.createContext({
|
|
|
13
13
|
open: false,
|
|
14
14
|
onCheckedChange: function () { return false; },
|
|
15
15
|
setOpen: function () { return false; },
|
|
16
|
-
shouldFocusOnContainer:
|
|
16
|
+
shouldFocusOnContainer: undefined,
|
|
17
17
|
triggerRef: null,
|
|
18
18
|
hasMaxHeight: false,
|
|
19
19
|
hasMaxWidth: false,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"menuContext.js","sourceRoot":"","sources":["../../src/context/menuContext.ts"],"names":[],"mappings":";;;;AAAA,mDAA+B;AAclB,QAAA,WAAW,GAAG,KAAK,CAAC,aAAa,CAAmB;IAC/D,YAAY,EAAE,KAAK;IACnB,OAAO,EAAE,EAAE;IACX,cAAc,EAAE,EAAE;IAClB,aAAa,EAAE,KAAK;IACpB,WAAW,EAAE,KAAK;IAClB,SAAS,EAAE,KAAK;IAChB,IAAI,EAAE,KAAK;IACX,eAAe,EAAE,cAAM,OAAA,KAAK,EAAL,CAAK;IAC5B,OAAO,EAAE,cAAM,OAAA,KAAK,EAAL,CAAK;IACpB,sBAAsB,EAAE,
|
|
1
|
+
{"version":3,"file":"menuContext.js","sourceRoot":"","sources":["../../src/context/menuContext.ts"],"names":[],"mappings":";;;;AAAA,mDAA+B;AAclB,QAAA,WAAW,GAAG,KAAK,CAAC,aAAa,CAAmB;IAC/D,YAAY,EAAE,KAAK;IACnB,OAAO,EAAE,EAAE;IACX,cAAc,EAAE,EAAE;IAClB,aAAa,EAAE,KAAK;IACpB,WAAW,EAAE,KAAK;IAClB,SAAS,EAAE,KAAK;IAChB,IAAI,EAAE,KAAK;IACX,eAAe,EAAE,cAAM,OAAA,KAAK,EAAL,CAAK;IAC5B,OAAO,EAAE,cAAM,OAAA,KAAK,EAAL,CAAK;IACpB,sBAAsB,EAAE,SAAS;IACjC,UAAU,EAAE,IAAI;IAChB,YAAY,EAAE,KAAK;IACnB,WAAW,EAAE,KAAK;CACnB,CAAC,CAAC;AAEU,QAAA,YAAY,GAAG,mBAAW,CAAC,QAAQ,CAAC;AAC1C,IAAM,cAAc,GAAG,cAAM,OAAA,KAAK,CAAC,UAAU,CAAC,mBAAW,CAAC,EAA7B,CAA6B,CAAC;AAArD,QAAA,cAAc,kBAAuC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@fluentui-react-native/menu",
|
|
3
|
-
"version": "1.4.
|
|
3
|
+
"version": "1.4.13",
|
|
4
4
|
"description": "A cross-platform Menu component using the Fluent Design System",
|
|
5
5
|
"main": "lib-commonjs/index.js",
|
|
6
6
|
"module": "lib/index.js",
|
|
@@ -23,18 +23,18 @@
|
|
|
23
23
|
},
|
|
24
24
|
"dependencies": {
|
|
25
25
|
"@fluentui-react-native/adapters": ">=0.10.2 <1.0.0",
|
|
26
|
-
"@fluentui-react-native/callout": ">=0.23.
|
|
27
|
-
"@fluentui-react-native/focus-zone": ">=0.11.
|
|
26
|
+
"@fluentui-react-native/callout": ">=0.23.4 <1.0.0",
|
|
27
|
+
"@fluentui-react-native/focus-zone": ">=0.11.33 <1.0.0",
|
|
28
28
|
"@fluentui-react-native/framework": "0.9.3",
|
|
29
|
-
"@fluentui-react-native/interactive-hooks": ">=0.22.
|
|
30
|
-
"@fluentui-react-native/text": ">=0.19.
|
|
29
|
+
"@fluentui-react-native/interactive-hooks": ">=0.22.21 <1.0.0",
|
|
30
|
+
"@fluentui-react-native/text": ">=0.19.23 <1.0.0",
|
|
31
31
|
"@fluentui-react-native/theme-tokens": ">=0.24.3 <1.0.0",
|
|
32
32
|
"@fluentui-react-native/tokens": ">=0.20.10 <1.0.0",
|
|
33
33
|
"@fluentui-react-native/use-styling": ">=0.9.4 <1.0.0",
|
|
34
34
|
"tslib": "^2.3.1"
|
|
35
35
|
},
|
|
36
36
|
"devDependencies": {
|
|
37
|
-
"@fluentui-react-native/button": ">=0.32.
|
|
37
|
+
"@fluentui-react-native/button": ">=0.32.36 <1.0.0",
|
|
38
38
|
"@fluentui-react-native/eslint-config-rules": "^0.1.1",
|
|
39
39
|
"@fluentui-react-native/scripts": "^0.1.1",
|
|
40
40
|
"@fluentui-react-native/test-tools": ">=0.1.1 <1.0.0",
|
package/src/Menu/Menu.tsx
CHANGED
|
@@ -28,7 +28,9 @@ export const Menu = stagedComponent((props: MenuProps) => {
|
|
|
28
28
|
return (
|
|
29
29
|
<MenuProvider value={contextValue}>
|
|
30
30
|
{menuTrigger}
|
|
31
|
-
{
|
|
31
|
+
{/* GH#2661: Make sure that shouldFocusOnContainer is defined before initializing
|
|
32
|
+
the popover so that focus is put in the correct place */}
|
|
33
|
+
{state.open && state.shouldFocusOnContainer !== undefined && menuPopover}
|
|
32
34
|
</MenuProvider>
|
|
33
35
|
);
|
|
34
36
|
};
|
package/src/Menu/useMenu.ts
CHANGED
|
@@ -57,7 +57,7 @@ const useMenuOpenState = (
|
|
|
57
57
|
const { defaultOpen, onOpenChange, open } = props;
|
|
58
58
|
const initialState = typeof defaultOpen !== 'undefined' ? defaultOpen : !!open;
|
|
59
59
|
const [openInternal, setOpenInternal] = React.useState<boolean>(initialState);
|
|
60
|
-
const [shouldFocusOnContainer, setShouldFocusOnContainer] = React.useState<boolean>(
|
|
60
|
+
const [shouldFocusOnContainer, setShouldFocusOnContainer] = React.useState<boolean | undefined>(undefined);
|
|
61
61
|
|
|
62
62
|
const state = isControlled ? open : openInternal;
|
|
63
63
|
|
|
@@ -68,12 +68,16 @@ const useMenuOpenState = (
|
|
|
68
68
|
setOpenInternal(isOpen);
|
|
69
69
|
}
|
|
70
70
|
|
|
71
|
-
if (isOpen
|
|
72
|
-
|
|
71
|
+
if (isOpen) {
|
|
72
|
+
if (Platform.OS === ('win32' as any) && isMouseEvent(e)) {
|
|
73
|
+
setShouldFocusOnContainer(true);
|
|
74
|
+
} else {
|
|
75
|
+
setShouldFocusOnContainer(false);
|
|
76
|
+
}
|
|
73
77
|
}
|
|
74
78
|
|
|
75
79
|
if (!isOpen) {
|
|
76
|
-
setShouldFocusOnContainer(
|
|
80
|
+
setShouldFocusOnContainer(undefined);
|
|
77
81
|
lastCloseTimestamp = Date.now();
|
|
78
82
|
}
|
|
79
83
|
|