@fluentui-react-native/menu 0.15.5 → 0.16.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (54) hide show
  1. package/CHANGELOG.json +52 -1
  2. package/CHANGELOG.md +27 -2
  3. package/lib/Menu/Menu.types.d.ts +4 -0
  4. package/lib/Menu/Menu.types.d.ts.map +1 -1
  5. package/lib/MenuItem/MenuItem.types.d.ts +4 -0
  6. package/lib/MenuItem/MenuItem.types.d.ts.map +1 -1
  7. package/lib/MenuItem/MenuItemTokens.win32.d.ts.map +1 -1
  8. package/lib/MenuItem/MenuItemTokens.win32.js +4 -0
  9. package/lib/MenuItem/MenuItemTokens.win32.js.map +1 -1
  10. package/lib/MenuItem/useMenuItem.d.ts.map +1 -1
  11. package/lib/MenuItem/useMenuItem.js +8 -4
  12. package/lib/MenuItem/useMenuItem.js.map +1 -1
  13. package/lib/MenuItemCheckbox/MenuItemCheckboxTokens.win32.d.ts.map +1 -1
  14. package/lib/MenuItemCheckbox/MenuItemCheckboxTokens.win32.js +8 -0
  15. package/lib/MenuItemCheckbox/MenuItemCheckboxTokens.win32.js.map +1 -1
  16. package/lib/MenuItemCheckbox/useMenuItemCheckbox.js +1 -1
  17. package/lib/MenuItemCheckbox/useMenuItemCheckbox.js.map +1 -1
  18. package/lib/MenuItemRadio/useMenuItemRadio.d.ts.map +1 -1
  19. package/lib/MenuItemRadio/useMenuItemRadio.js +14 -6
  20. package/lib/MenuItemRadio/useMenuItemRadio.js.map +1 -1
  21. package/lib/MenuPopover/useMenuPopover.d.ts.map +1 -1
  22. package/lib/MenuPopover/useMenuPopover.js +6 -1
  23. package/lib/MenuPopover/useMenuPopover.js.map +1 -1
  24. package/lib-commonjs/Menu/Menu.types.d.ts +4 -0
  25. package/lib-commonjs/Menu/Menu.types.d.ts.map +1 -1
  26. package/lib-commonjs/MenuItem/MenuItem.types.d.ts +4 -0
  27. package/lib-commonjs/MenuItem/MenuItem.types.d.ts.map +1 -1
  28. package/lib-commonjs/MenuItem/MenuItemTokens.win32.d.ts.map +1 -1
  29. package/lib-commonjs/MenuItem/MenuItemTokens.win32.js +4 -0
  30. package/lib-commonjs/MenuItem/MenuItemTokens.win32.js.map +1 -1
  31. package/lib-commonjs/MenuItem/useMenuItem.d.ts.map +1 -1
  32. package/lib-commonjs/MenuItem/useMenuItem.js +8 -4
  33. package/lib-commonjs/MenuItem/useMenuItem.js.map +1 -1
  34. package/lib-commonjs/MenuItemCheckbox/MenuItemCheckboxTokens.win32.d.ts.map +1 -1
  35. package/lib-commonjs/MenuItemCheckbox/MenuItemCheckboxTokens.win32.js +8 -0
  36. package/lib-commonjs/MenuItemCheckbox/MenuItemCheckboxTokens.win32.js.map +1 -1
  37. package/lib-commonjs/MenuItemCheckbox/useMenuItemCheckbox.js +1 -1
  38. package/lib-commonjs/MenuItemCheckbox/useMenuItemCheckbox.js.map +1 -1
  39. package/lib-commonjs/MenuItemRadio/useMenuItemRadio.d.ts.map +1 -1
  40. package/lib-commonjs/MenuItemRadio/useMenuItemRadio.js +14 -6
  41. package/lib-commonjs/MenuItemRadio/useMenuItemRadio.js.map +1 -1
  42. package/lib-commonjs/MenuPopover/useMenuPopover.d.ts.map +1 -1
  43. package/lib-commonjs/MenuPopover/useMenuPopover.js +6 -1
  44. package/lib-commonjs/MenuPopover/useMenuPopover.js.map +1 -1
  45. package/package.json +1 -1
  46. package/src/Menu/Menu.types.ts +5 -0
  47. package/src/MenuItem/MenuItem.types.ts +5 -0
  48. package/src/MenuItem/MenuItemTokens.win32.ts +4 -0
  49. package/src/MenuItem/useMenuItem.ts +8 -4
  50. package/src/MenuItemCheckbox/MenuItemCheckboxTokens.win32.ts +8 -0
  51. package/src/MenuItemCheckbox/useMenuItemCheckbox.ts +1 -1
  52. package/src/MenuItemRadio/useMenuItemRadio.ts +14 -6
  53. package/src/MenuPopover/useMenuPopover.ts +7 -1
  54. package/src/__tests__/__snapshots__/Menu.test.tsx.snap +7 -0
package/CHANGELOG.json CHANGED
@@ -2,7 +2,58 @@
2
2
  "name": "@fluentui-react-native/menu",
3
3
  "entries": [
4
4
  {
5
- "date": "Thu, 23 Jun 2022 22:10:10 GMT",
5
+ "date": "Mon, 27 Jun 2022 15:59:42 GMT",
6
+ "tag": "@fluentui-react-native/menu_v0.16.0",
7
+ "version": "0.16.0",
8
+ "comments": {
9
+ "minor": [
10
+ {
11
+ "author": "ruaraki@microsoft.com",
12
+ "package": "@fluentui-react-native/menu",
13
+ "commit": "2ade5cd87fd447075f875e144b631f38424c925e",
14
+ "comment": "Implement persisting behavior"
15
+ }
16
+ ]
17
+ }
18
+ },
19
+ {
20
+ "date": "Fri, 24 Jun 2022 23:12:59 GMT",
21
+ "tag": "@fluentui-react-native/menu_v0.15.7",
22
+ "version": "0.15.7",
23
+ "comments": {
24
+ "patch": [
25
+ {
26
+ "author": "ruaraki@microsoft.com",
27
+ "package": "@fluentui-react-native/menu",
28
+ "commit": "5f0322361e9fab11c378620cbc021162bcca1d1a",
29
+ "comment": "Focus visuals should show as soon as component is hovered"
30
+ }
31
+ ]
32
+ }
33
+ },
34
+ {
35
+ "date": "Fri, 24 Jun 2022 22:38:56 GMT",
36
+ "tag": "@fluentui-react-native/menu_v0.15.6",
37
+ "version": "0.15.6",
38
+ "comments": {
39
+ "patch": [
40
+ {
41
+ "author": "ruaraki@microsoft.com",
42
+ "package": "@fluentui-react-native/menu",
43
+ "commit": "03b76df2f66ffdee8f3560c601cf798586444fc5",
44
+ "comment": "Fix container being tab stop"
45
+ },
46
+ {
47
+ "author": "ruaraki@microsoft.com",
48
+ "package": "@fluentui-react-native/menu",
49
+ "commit": "143106ff88f12c3ad92412d554aaf055e0bab2ed",
50
+ "comment": "Minor Menu bug fixes"
51
+ }
52
+ ]
53
+ }
54
+ },
55
+ {
56
+ "date": "Thu, 23 Jun 2022 22:10:22 GMT",
6
57
  "tag": "@fluentui-react-native/menu_v0.15.5",
7
58
  "version": "0.15.5",
8
59
  "comments": {
package/CHANGELOG.md CHANGED
@@ -1,12 +1,37 @@
1
1
  # Change Log - @fluentui-react-native/menu
2
2
 
3
- This log was last generated on Thu, 23 Jun 2022 22:10:10 GMT and should not be manually modified.
3
+ This log was last generated on Mon, 27 Jun 2022 15:59:42 GMT and should not be manually modified.
4
4
 
5
5
  <!-- Start content -->
6
6
 
7
+ ## 0.16.0
8
+
9
+ Mon, 27 Jun 2022 15:59:42 GMT
10
+
11
+ ### Minor changes
12
+
13
+ - Implement persisting behavior (ruaraki@microsoft.com)
14
+
15
+ ## 0.15.7
16
+
17
+ Fri, 24 Jun 2022 23:12:59 GMT
18
+
19
+ ### Patches
20
+
21
+ - Focus visuals should show as soon as component is hovered (ruaraki@microsoft.com)
22
+
23
+ ## 0.15.6
24
+
25
+ Fri, 24 Jun 2022 22:38:56 GMT
26
+
27
+ ### Patches
28
+
29
+ - Fix container being tab stop (ruaraki@microsoft.com)
30
+ - Minor Menu bug fixes (ruaraki@microsoft.com)
31
+
7
32
  ## 0.15.5
8
33
 
9
- Thu, 23 Jun 2022 22:10:10 GMT
34
+ Thu, 23 Jun 2022 22:10:22 GMT
10
35
 
11
36
  ### Patches
12
37
 
@@ -21,6 +21,10 @@ export interface MenuProps extends MenuListProps {
21
21
  */
22
22
  onOpenChange?: (e: InteractionEvent, isOpen: boolean) => void;
23
23
  openOnHover?: boolean;
24
+ /**
25
+ * Do not dismiss the menu when a menu item is clicked
26
+ */
27
+ persistOnItemClick?: boolean;
24
28
  }
25
29
  export interface MenuState extends MenuProps {
26
30
  isControlled: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"Menu.types.d.ts","sourceRoot":"","sources":["../../src/Menu/Menu.types.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,0CAA0C,CAAC;AAC5E,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAEhE,eAAO,MAAM,QAAQ,SAAS,CAAC;AAE/B,MAAM,WAAW,SAAU,SAAQ,aAAa;IAC9C;;OAEG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;IAEf;;OAEG;IACH,YAAY,CAAC,EAAE,CAAC,CAAC,EAAE,gBAAgB,EAAE,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;IAK9D,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,MAAM,WAAW,SAAU,SAAQ,SAAS;IAC1C,YAAY,EAAE,OAAO,CAAC;IACtB,SAAS,EAAE,OAAO,CAAC;IACnB,0BAA0B,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC;IAC5C,OAAO,EAAE,CAAC,CAAC,EAAE,gBAAgB,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IAC1E,sBAAsB,EAAE,OAAO,CAAC;IAChC,UAAU,EAAE,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;CAC9C"}
1
+ {"version":3,"file":"Menu.types.d.ts","sourceRoot":"","sources":["../../src/Menu/Menu.types.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,0CAA0C,CAAC;AAC5E,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAEhE,eAAO,MAAM,QAAQ,SAAS,CAAC;AAE/B,MAAM,WAAW,SAAU,SAAQ,aAAa;IAC9C;;OAEG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;IAEf;;OAEG;IACH,YAAY,CAAC,EAAE,CAAC,CAAC,EAAE,gBAAgB,EAAE,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;IAK9D,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB;;OAEG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B;AAED,MAAM,WAAW,SAAU,SAAQ,SAAS;IAC1C,YAAY,EAAE,OAAO,CAAC;IACtB,SAAS,EAAE,OAAO,CAAC;IACnB,0BAA0B,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC;IAC5C,OAAO,EAAE,CAAC,CAAC,EAAE,gBAAgB,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IAC1E,sBAAsB,EAAE,OAAO,CAAC;IAChC,UAAU,EAAE,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;CAC9C"}
@@ -40,6 +40,10 @@ export interface MenuItemProps extends Omit<IWithPressableOptions<ViewProps>, 'o
40
40
  * A callback to call on button click event
41
41
  */
42
42
  onClick?: (e: InteractionEvent) => void;
43
+ /**
44
+ * Do not dismiss the menu when a menu item is clicked
45
+ */
46
+ persistOnClick?: boolean;
43
47
  }
44
48
  export interface MenuItemState extends IPressableHooks<MenuItemProps & React.ComponentPropsWithRef<any>> {
45
49
  hasCheckmarks?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"MenuItem.types.d.ts","sourceRoot":"","sources":["../../src/MenuItem/MenuItem.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAClE,OAAO,EAAE,SAAS,EAAE,MAAM,0CAA0C,CAAC;AACrE,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,0CAA0C,CAAC;AAChI,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAEtG,eAAO,MAAM,YAAY,aAAa,CAAC;AAEvC,MAAM,WAAW,cAAe,SAAQ,YAAY,EAAE,UAAU,EAAE,aAAa,EAAE,YAAY;IAC3F;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;OAEG;IACH,uBAAuB,CAAC,EAAE,MAAM,CAAC;IAEjC;;OAEG;IACH,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAE9B;;OAEG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB,OAAO,CAAC,EAAE,cAAc,CAAC;CAC1B;AAED,MAAM,WAAW,aAAc,SAAQ,IAAI,CAAC,qBAAqB,CAAC,SAAS,CAAC,EAAE,SAAS,CAAC;IACtF;;OAEG;IACH,YAAY,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;IAE3C;;OAEG;IACH,OAAO,CAAC,EAAE,CAAC,CAAC,EAAE,gBAAgB,KAAK,IAAI,CAAC;CACzC;AAED,MAAM,WAAW,aAAc,SAAQ,eAAe,CAAC,aAAa,GAAG,KAAK,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAC;IACtG,aAAa,CAAC,EAAE,OAAO,CAAC;IAExB;;OAEG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,KAAK,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;IACrC,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB,SAAS,CAAC,EAAE,KAAK,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;IAC3C,gBAAgB,CAAC,EAAE,QAAQ,CAAC;CAC7B;AAED,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,aAAa,CAAC;IACrB,MAAM,EAAE,cAAc,CAAC;IACvB,SAAS,EAAE,iBAAiB,CAAC;CAC9B"}
1
+ {"version":3,"file":"MenuItem.types.d.ts","sourceRoot":"","sources":["../../src/MenuItem/MenuItem.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAClE,OAAO,EAAE,SAAS,EAAE,MAAM,0CAA0C,CAAC;AACrE,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,0CAA0C,CAAC;AAChI,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAEtG,eAAO,MAAM,YAAY,aAAa,CAAC;AAEvC,MAAM,WAAW,cAAe,SAAQ,YAAY,EAAE,UAAU,EAAE,aAAa,EAAE,YAAY;IAC3F;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;OAEG;IACH,uBAAuB,CAAC,EAAE,MAAM,CAAC;IAEjC;;OAEG;IACH,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAE9B;;OAEG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB,OAAO,CAAC,EAAE,cAAc,CAAC;CAC1B;AAED,MAAM,WAAW,aAAc,SAAQ,IAAI,CAAC,qBAAqB,CAAC,SAAS,CAAC,EAAE,SAAS,CAAC;IACtF;;OAEG;IACH,YAAY,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;IAE3C;;OAEG;IACH,OAAO,CAAC,EAAE,CAAC,CAAC,EAAE,gBAAgB,KAAK,IAAI,CAAC;IAExC;;OAEG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED,MAAM,WAAW,aAAc,SAAQ,eAAe,CAAC,aAAa,GAAG,KAAK,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAC;IACtG,aAAa,CAAC,EAAE,OAAO,CAAC;IAExB;;OAEG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,KAAK,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;IACrC,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB,SAAS,CAAC,EAAE,KAAK,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;IAC3C,gBAAgB,CAAC,EAAE,QAAQ,CAAC;CAC7B;AAED,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,aAAa,CAAC;IACrB,MAAM,EAAE,cAAc,CAAC;IACvB,SAAS,EAAE,iBAAiB,CAAC;CAC9B"}
@@ -1 +1 @@
1
- {"version":3,"file":"MenuItemTokens.win32.d.ts","sourceRoot":"","sources":["../../src/MenuItem/MenuItemTokens.win32.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,KAAK,EAAE,MAAM,kCAAkC,CAAC;AAE1E,OAAO,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AACnE,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,eAAO,MAAM,qBAAqB,EAAE,aAAa,CAAC,cAAc,EAAE,KAAK,CA4BrE,CAAC"}
1
+ {"version":3,"file":"MenuItemTokens.win32.d.ts","sourceRoot":"","sources":["../../src/MenuItem/MenuItemTokens.win32.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,KAAK,EAAE,MAAM,kCAAkC,CAAC;AAE1E,OAAO,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AACnE,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,eAAO,MAAM,qBAAqB,EAAE,aAAa,CAAC,cAAc,EAAE,KAAK,CAgCrE,CAAC"}
@@ -27,5 +27,9 @@ export var defaultMenuItemTokens = function (t) { return ({
27
27
  backgroundColor: t.colors.neutralBackground1,
28
28
  color: t.colors.neutralForegroundDisabled,
29
29
  },
30
+ focused: {
31
+ backgroundColor: t.colors.neutralBackground1Hover,
32
+ color: t.colors.neutralForeground1Hover,
33
+ },
30
34
  }); };
31
35
  //# sourceMappingURL=MenuItemTokens.win32.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"MenuItemTokens.win32.js","sourceRoot":"","sources":["../../src/MenuItem/MenuItemTokens.win32.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AAInE,MAAM,CAAC,IAAM,qBAAqB,GAAyC,UAAC,CAAQ,IAAqB,OAAA,CAAC;IACxG,eAAe,EAAE,CAAC,CAAC,MAAM,CAAC,kBAAkB;IAC5C,YAAY,EAAE,YAAY,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI;IAC7C,aAAa,EAAE,EAAE;IACjB,uBAAuB,EAAE,YAAY,CAAC,OAAO,CAAC,GAAG;IACjD,oBAAoB,EAAE,EAAE;IACxB,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,kBAAkB;IAClC,UAAU,EAAE,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,OAAO;IACzC,QAAQ,EAAE,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;IACrC,UAAU,EAAE,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,OAA0B;IAC/D,GAAG,EAAE,YAAY,CAAC,OAAO,CAAC,EAAE;IAC5B,SAAS,EAAE,EAAE;IACb,QAAQ,EAAE,GAAG;IACb,QAAQ,EAAE,GAAG;IACb,OAAO,EAAE,YAAY,CAAC,OAAO,CAAC,EAAE;IAChC,iBAAiB,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC;IACzC,OAAO,EAAE;QACP,eAAe,EAAE,CAAC,CAAC,MAAM,CAAC,uBAAuB;QACjD,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,uBAAuB;KACxC;IACD,OAAO,EAAE;QACP,eAAe,EAAE,CAAC,CAAC,MAAM,CAAC,yBAAyB;QACnD,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,yBAAyB;KAC1C;IACD,QAAQ,EAAE;QACR,eAAe,EAAE,CAAC,CAAC,MAAM,CAAC,kBAAkB;QAC5C,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,yBAAyB;KAC1C;CACF,CAAC,EA5BuG,CA4BvG,CAAC"}
1
+ {"version":3,"file":"MenuItemTokens.win32.js","sourceRoot":"","sources":["../../src/MenuItem/MenuItemTokens.win32.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AAInE,MAAM,CAAC,IAAM,qBAAqB,GAAyC,UAAC,CAAQ,IAAqB,OAAA,CAAC;IACxG,eAAe,EAAE,CAAC,CAAC,MAAM,CAAC,kBAAkB;IAC5C,YAAY,EAAE,YAAY,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI;IAC7C,aAAa,EAAE,EAAE;IACjB,uBAAuB,EAAE,YAAY,CAAC,OAAO,CAAC,GAAG;IACjD,oBAAoB,EAAE,EAAE;IACxB,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,kBAAkB;IAClC,UAAU,EAAE,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,OAAO;IACzC,QAAQ,EAAE,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;IACrC,UAAU,EAAE,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,OAA0B;IAC/D,GAAG,EAAE,YAAY,CAAC,OAAO,CAAC,EAAE;IAC5B,SAAS,EAAE,EAAE;IACb,QAAQ,EAAE,GAAG;IACb,QAAQ,EAAE,GAAG;IACb,OAAO,EAAE,YAAY,CAAC,OAAO,CAAC,EAAE;IAChC,iBAAiB,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC;IACzC,OAAO,EAAE;QACP,eAAe,EAAE,CAAC,CAAC,MAAM,CAAC,uBAAuB;QACjD,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,uBAAuB;KACxC;IACD,OAAO,EAAE;QACP,eAAe,EAAE,CAAC,CAAC,MAAM,CAAC,yBAAyB;QACnD,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,yBAAyB;KAC1C;IACD,QAAQ,EAAE;QACR,eAAe,EAAE,CAAC,CAAC,MAAM,CAAC,kBAAkB;QAC5C,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,yBAAyB;KAC1C;IACD,OAAO,EAAE;QACP,eAAe,EAAE,CAAC,CAAC,MAAM,CAAC,uBAAuB;QACjD,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,uBAAuB;KACxC;CACF,CAAC,EAhCuG,CAgCvG,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"useMenuItem.d.ts","sourceRoot":"","sources":["../../src/MenuItem/useMenuItem.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAgBhE,eAAO,MAAM,WAAW,UAAW,aAAa,KAAG,aA8ElD,CAAC;AAUF,eAAO,MAAM,mBAAmB,YAAa,OAAO,gBAAgB,MAAM,gBAAgB,CAAC,GAAG,CAAC,SAQ9F,CAAC"}
1
+ {"version":3,"file":"useMenuItem.d.ts","sourceRoot":"","sources":["../../src/MenuItem/useMenuItem.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAgBhE,eAAO,MAAM,WAAW,UAAW,aAAa,KAAG,aAkFlD,CAAC;AAUF,eAAO,MAAM,mBAAmB,YAAa,OAAO,gBAAgB,MAAM,gBAAgB,CAAC,GAAG,CAAC,SAQ9F,CAAC"}
@@ -11,11 +11,13 @@ var submenuTriggerKeys = __spreadArray(__spreadArray([], triggerKeys, true), ['A
11
11
  export var useMenuItem = function (props) {
12
12
  // attach the pressable state handlers
13
13
  var defaultComponentRef = React.useRef(null);
14
- var onClick = props.onClick, accessibilityState = props.accessibilityState, _a = props.componentRef, componentRef = _a === void 0 ? defaultComponentRef : _a, disabled = props.disabled, rest = __rest(props, ["onClick", "accessibilityState", "componentRef", "disabled"]);
14
+ var onClick = props.onClick, accessibilityState = props.accessibilityState, _a = props.componentRef, componentRef = _a === void 0 ? defaultComponentRef : _a, disabled = props.disabled, persistOnClick = props.persistOnClick, rest = __rest(props, ["onClick", "accessibilityState", "componentRef", "disabled", "persistOnClick"]);
15
15
  var isTrigger = useMenuTriggerContext();
16
16
  var isSubmenu = useMenuContext().isSubmenu;
17
17
  var hasSubmenu = isSubmenu && isTrigger;
18
18
  var isInSubmenu = isSubmenu && !isTrigger;
19
+ var shouldPersist = useMenuContext().persistOnItemClick;
20
+ shouldPersist = persistOnClick !== null && persistOnClick !== void 0 ? persistOnClick : shouldPersist;
19
21
  var setOpen = useMenuContext().setOpen;
20
22
  var onInvoke = React.useCallback(function (e) {
21
23
  if (disabled) {
@@ -37,9 +39,11 @@ export var useMenuItem = function (props) {
37
39
  var isArrowClose = isKeyPressEvent(e) &&
38
40
  isInSubmenu &&
39
41
  ((isRtl && e.nativeEvent.key === 'ArrowRight') || (!isRtl && e.nativeEvent.key === 'ArrowLeft'));
40
- setOpen(e, false /*isOpen*/, !isArrowClose /*bubble*/);
42
+ if (isArrowClose || !shouldPersist) {
43
+ setOpen(e, false /*isOpen*/, !isArrowClose /*bubble*/);
44
+ }
41
45
  }
42
- }, [disabled, hasSubmenu, isInSubmenu, onClick, setOpen]);
46
+ }, [disabled, hasSubmenu, isInSubmenu, onClick, setOpen, shouldPersist]);
43
47
  var pressable = useAsPressable(__assign(__assign({}, rest), { disabled: disabled, onPress: onInvoke }));
44
48
  var itemRef = useViewCommandFocus(componentRef);
45
49
  var keys = isSubmenu ? submenuTriggerKeys : triggerKeys;
@@ -68,7 +72,7 @@ function getAccessibilityStateWorker(disabled, accessibilityState) {
68
72
  return { disabled: disabled };
69
73
  }
70
74
  export var useHoverFocusEffect = function (hovered, componentRef) {
71
- React.useEffect(function () {
75
+ React.useLayoutEffect(function () {
72
76
  var _a, _b;
73
77
  if (hovered) {
74
78
  (_a = componentRef === null || componentRef === void 0 ? void 0 : componentRef.current) === null || _a === void 0 ? void 0 : _a.focus();
@@ -1 +1 @@
1
- {"version":3,"file":"useMenuItem.js","sourceRoot":"","sources":["../../src/MenuItem/useMenuItem.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useMenuItem.js","sourceRoot":"","sources":["../../src/MenuItem/useMenuItem.ts"],"names":[],"mappings":";AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAsB,WAAW,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAEzE,OAAO,EAAE,OAAO,EAAE,MAAM,kCAAkC,CAAC;AAC3D,OAAO,EAEL,eAAe,EACf,cAAc,EACd,eAAe,EACf,mBAAmB,GACpB,MAAM,0CAA0C,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AAEtE,IAAM,WAAW,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;AACnC,IAAM,kBAAkB,mCAAO,WAAW,UAAE,WAAW,EAAE,YAAY,SAAC,CAAC;AAEvE,MAAM,CAAC,IAAM,WAAW,GAAG,UAAC,KAAoB;IAC9C,sCAAsC;IACtC,IAAM,mBAAmB,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACvC,IAAA,OAAO,GAAgG,KAAK,QAArG,EAAE,kBAAkB,GAA4E,KAAK,mBAAjF,EAAE,KAA0E,KAAK,aAA7C,EAAlC,YAAY,mBAAG,mBAAmB,KAAA,EAAE,QAAQ,GAA8B,KAAK,SAAnC,EAAE,cAAc,GAAc,KAAK,eAAnB,EAAK,IAAI,UAAK,KAAK,EAA9G,+EAAsG,CAAF,CAAW;IACrH,IAAM,SAAS,GAAG,qBAAqB,EAAE,CAAC;IAC1C,IAAM,SAAS,GAAG,cAAc,EAAE,CAAC,SAAS,CAAC;IAC7C,IAAM,UAAU,GAAG,SAAS,IAAI,SAAS,CAAC;IAC1C,IAAM,WAAW,GAAG,SAAS,IAAI,CAAC,SAAS,CAAC;IAC5C,IAAI,aAAa,GAAG,cAAc,EAAE,CAAC,kBAAkB,CAAC;IACxD,aAAa,GAAG,cAAc,aAAd,cAAc,cAAd,cAAc,GAAI,aAAa,CAAC;IAEhD,IAAM,OAAO,GAAG,cAAc,EAAE,CAAC,OAAO,CAAC;IAEzC,IAAM,QAAQ,GAAG,KAAK,CAAC,WAAW,CAChC,UAAC,CAAmB;QAClB,IAAI,QAAQ,EAAE;YACZ,OAAO;SACR;QAED,IAAM,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC;QAChC,IACE,eAAe,CAAC,CAAC,CAAC;YAClB,UAAU;YACV,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,WAAW,CAAC,GAAG,KAAK,YAAY,CAAC,IAAI,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,WAAW,CAAC,GAAG,KAAK,WAAW,CAAC,CAAC,EAChG;YACA,OAAO;SACR;QACD,IACE,eAAe,CAAC,CAAC,CAAC;YAClB,WAAW;YACX,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,WAAW,CAAC,GAAG,KAAK,WAAW,CAAC,IAAI,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,WAAW,CAAC,GAAG,KAAK,YAAY,CAAC,CAAC,EAChG;YACA,OAAO;SACR;QAED,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAG,CAAC,CAAC,CAAC;QACb,IAAI,CAAC,UAAU,EAAE;YACf,IAAM,YAAY,GAChB,eAAe,CAAC,CAAC,CAAC;gBAClB,WAAW;gBACX,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,WAAW,CAAC,GAAG,KAAK,YAAY,CAAC,IAAI,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,WAAW,CAAC,GAAG,KAAK,WAAW,CAAC,CAAC,CAAC;YAEnG,IAAI,YAAY,IAAI,CAAC,aAAa,EAAE;gBAClC,OAAO,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,EAAE,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;aACxD;SACF;IACH,CAAC,EACD,CAAC,QAAQ,EAAE,UAAU,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,EAAE,aAAa,CAAC,CACrE,CAAC;IAEF,IAAM,SAAS,GAAG,cAAc,uBAAM,IAAI,KAAE,QAAQ,UAAA,EAAE,OAAO,EAAE,QAAQ,IAAG,CAAC;IAC3E,IAAM,OAAO,GAAG,mBAAmB,CAAC,YAAY,CAAC,CAAC;IAClD,IAAM,IAAI,GAAG,SAAS,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,WAAW,CAAC;IAE1D,iGAAiG;IACjG,IAAM,cAAc,GAAG,eAAe,8BAAC,QAAQ,GAAK,IAAI,SAAC,CAAC;IAC1D,IAAM,aAAa,GAAG,kBAAkB,EAAE,CAAC,aAAa,CAAC;IAEzD,mBAAmB,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IAE3D,OAAO;QACL,KAAK,iCACA,SAAS,CAAC,KAAK,KAClB,UAAU,EAAE,IAAI,EAChB,iBAAiB,EAAE,UAAU,EAC7B,kBAAkB,EAAE,KAAK,CAAC,kBAAkB,IAAI,QAAQ,EACxD,kBAAkB,EAAE,qBAAqB,CAAC,QAAQ,EAAE,kBAAkB,CAAC,EACvE,eAAe,EAAE,QAAQ,CAAC,MAAM,CAAC;gBAC/B,KAAK,EAAE,KAAK;gBACZ,OAAO,EAAE,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,EAAE,QAAQ;aAC5C,CAAC,EACF,SAAS,EAAE,QAAQ,CAAC,MAAM,CAAC;gBACzB,KAAK,EAAE,CAAC,QAAQ;gBAChB,OAAO,EAAE,IAAI,EAAE,QAAQ;aACxB,CAAC,EACF,GAAG,EAAE,OAAO,KACT,cAAc,CAClB;QACD,KAAK,EAAE,SAAS,CAAC,KAAK;QACtB,UAAU,YAAA;QACV,aAAa,eAAA;KACd,CAAC;AACJ,CAAC,CAAC;AAEF,IAAM,qBAAqB,GAAG,OAAO,CAAC,2BAA2B,CAAC,CAAC;AACnE,SAAS,2BAA2B,CAAC,QAAiB,EAAE,kBAAuC;IAC7F,IAAI,kBAAkB,EAAE;QACtB,kBAAS,QAAQ,UAAA,IAAK,kBAAkB,EAAG;KAC5C;IACD,OAAO,EAAE,QAAQ,UAAA,EAAE,CAAC;AACtB,CAAC;AAED,MAAM,CAAC,IAAM,mBAAmB,GAAG,UAAC,OAAgB,EAAE,YAAyC;IAC7F,KAAK,CAAC,eAAe,CAAC;;QACpB,IAAI,OAAO,EAAE;YACX,MAAA,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,OAAO,0CAAE,KAAK,EAAE,CAAC;SAChC;aAAM;YACL,MAAA,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,OAAO,0CAAE,IAAI,EAAE,CAAC;SAC/B;IACH,CAAC,EAAE,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC;AAC9B,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"MenuItemCheckboxTokens.win32.d.ts","sourceRoot":"","sources":["../../src/MenuItemCheckbox/MenuItemCheckboxTokens.win32.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,KAAK,EAAE,MAAM,kCAAkC,CAAC;AAE1E,OAAO,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AACnE,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAElE,eAAO,MAAM,6BAA6B,EAAE,aAAa,CAAC,sBAAsB,EAAE,KAAK,CA4CrF,CAAC"}
1
+ {"version":3,"file":"MenuItemCheckboxTokens.win32.d.ts","sourceRoot":"","sources":["../../src/MenuItemCheckbox/MenuItemCheckboxTokens.win32.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,KAAK,EAAE,MAAM,kCAAkC,CAAC;AAE1E,OAAO,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AACnE,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAElE,eAAO,MAAM,6BAA6B,EAAE,aAAa,CAAC,sBAAsB,EAAE,KAAK,CAoDrF,CAAC"}
@@ -39,6 +39,14 @@ export var defaultMenuItemCheckboxTokens = function (t) { return ({
39
39
  checkmarkVisibility: 1,
40
40
  },
41
41
  },
42
+ focused: {
43
+ backgroundColor: t.colors.neutralBackground1Hover,
44
+ color: t.colors.neutralForeground1Hover,
45
+ checked: {
46
+ checkmarkColor: t.colors.neutralForeground1Hover,
47
+ checkmarkVisibility: 1,
48
+ },
49
+ },
42
50
  checked: {
43
51
  checkmarkColor: t.colors.neutralForeground1,
44
52
  checkmarkVisibility: 1,
@@ -1 +1 @@
1
- {"version":3,"file":"MenuItemCheckboxTokens.win32.js","sourceRoot":"","sources":["../../src/MenuItemCheckbox/MenuItemCheckboxTokens.win32.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AAInE,MAAM,CAAC,IAAM,6BAA6B,GAAiD,UAAC,CAAQ,IAA6B,OAAA,CAAC;IAChI,eAAe,EAAE,CAAC,CAAC,MAAM,CAAC,kBAAkB;IAC5C,YAAY,EAAE,YAAY,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI;IAC7C,gBAAgB,EAAE,YAAY,CAAC,OAAO,CAAC,GAAG;IAC1C,aAAa,EAAE,EAAE;IACjB,mBAAmB,EAAE,CAAC;IACtB,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,kBAAkB;IAClC,UAAU,EAAE,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,OAAO;IACzC,QAAQ,EAAE,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;IACrC,UAAU,EAAE,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,OAA0B;IAC/D,GAAG,EAAE,YAAY,CAAC,OAAO,CAAC,EAAE;IAC5B,SAAS,EAAE,EAAE;IACb,QAAQ,EAAE,GAAG;IACb,QAAQ,EAAE,GAAG;IACb,OAAO,EAAE,YAAY,CAAC,OAAO,CAAC,EAAE;IAChC,iBAAiB,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC;IACzC,OAAO,EAAE;QACP,eAAe,EAAE,CAAC,CAAC,MAAM,CAAC,uBAAuB;QACjD,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,uBAAuB;QACvC,OAAO,EAAE;YACP,cAAc,EAAE,CAAC,CAAC,MAAM,CAAC,uBAAuB;YAChD,mBAAmB,EAAE,CAAC;SACvB;KACF;IACD,OAAO,EAAE;QACP,eAAe,EAAE,CAAC,CAAC,MAAM,CAAC,yBAAyB;QACnD,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,yBAAyB;QACzC,OAAO,EAAE;YACP,cAAc,EAAE,CAAC,CAAC,MAAM,CAAC,yBAAyB;YAClD,mBAAmB,EAAE,CAAC;SACvB;KACF;IACD,QAAQ,EAAE;QACR,eAAe,EAAE,CAAC,CAAC,MAAM,CAAC,kBAAkB;QAC5C,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,yBAAyB;QACzC,OAAO,EAAE;YACP,cAAc,EAAE,CAAC,CAAC,MAAM,CAAC,yBAAyB;YAClD,mBAAmB,EAAE,CAAC;SACvB;KACF;IACD,OAAO,EAAE;QACP,cAAc,EAAE,CAAC,CAAC,MAAM,CAAC,kBAAkB;QAC3C,mBAAmB,EAAE,CAAC;KACvB;CACF,CAAC,EA5C+H,CA4C/H,CAAC"}
1
+ {"version":3,"file":"MenuItemCheckboxTokens.win32.js","sourceRoot":"","sources":["../../src/MenuItemCheckbox/MenuItemCheckboxTokens.win32.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AAInE,MAAM,CAAC,IAAM,6BAA6B,GAAiD,UAAC,CAAQ,IAA6B,OAAA,CAAC;IAChI,eAAe,EAAE,CAAC,CAAC,MAAM,CAAC,kBAAkB;IAC5C,YAAY,EAAE,YAAY,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI;IAC7C,gBAAgB,EAAE,YAAY,CAAC,OAAO,CAAC,GAAG;IAC1C,aAAa,EAAE,EAAE;IACjB,mBAAmB,EAAE,CAAC;IACtB,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,kBAAkB;IAClC,UAAU,EAAE,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,OAAO;IACzC,QAAQ,EAAE,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;IACrC,UAAU,EAAE,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,OAA0B;IAC/D,GAAG,EAAE,YAAY,CAAC,OAAO,CAAC,EAAE;IAC5B,SAAS,EAAE,EAAE;IACb,QAAQ,EAAE,GAAG;IACb,QAAQ,EAAE,GAAG;IACb,OAAO,EAAE,YAAY,CAAC,OAAO,CAAC,EAAE;IAChC,iBAAiB,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC;IACzC,OAAO,EAAE;QACP,eAAe,EAAE,CAAC,CAAC,MAAM,CAAC,uBAAuB;QACjD,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,uBAAuB;QACvC,OAAO,EAAE;YACP,cAAc,EAAE,CAAC,CAAC,MAAM,CAAC,uBAAuB;YAChD,mBAAmB,EAAE,CAAC;SACvB;KACF;IACD,OAAO,EAAE;QACP,eAAe,EAAE,CAAC,CAAC,MAAM,CAAC,yBAAyB;QACnD,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,yBAAyB;QACzC,OAAO,EAAE;YACP,cAAc,EAAE,CAAC,CAAC,MAAM,CAAC,yBAAyB;YAClD,mBAAmB,EAAE,CAAC;SACvB;KACF;IACD,QAAQ,EAAE;QACR,eAAe,EAAE,CAAC,CAAC,MAAM,CAAC,kBAAkB;QAC5C,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,yBAAyB;QACzC,OAAO,EAAE;YACP,cAAc,EAAE,CAAC,CAAC,MAAM,CAAC,yBAAyB;YAClD,mBAAmB,EAAE,CAAC;SACvB;KACF;IACD,OAAO,EAAE;QACP,eAAe,EAAE,CAAC,CAAC,MAAM,CAAC,uBAAuB;QACjD,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,uBAAuB;QACvC,OAAO,EAAE;YACP,cAAc,EAAE,CAAC,CAAC,MAAM,CAAC,uBAAuB;YAChD,mBAAmB,EAAE,CAAC;SACvB;KACF;IACD,OAAO,EAAE;QACP,cAAc,EAAE,CAAC,CAAC,MAAM,CAAC,kBAAkB;QAC3C,mBAAmB,EAAE,CAAC;KACvB;CACF,CAAC,EApD+H,CAoD/H,CAAC"}
@@ -44,7 +44,7 @@ export var useMenuCheckboxInteraction = function (props, toggleCallback) {
44
44
  var toggleCheckedWithFocus = useOnPressWithFocus(componentRef, toggleCallback);
45
45
  var pressable = useAsPressable(__assign(__assign({}, rest), { disabled: disabled, onPress: toggleCheckedWithFocus }));
46
46
  var buttonRef = useViewCommandFocus(componentRef);
47
- var onKeyProps = useKeyProps(toggleCallback, ' ');
47
+ var onKeyProps = useKeyProps(toggleCallback, ' ', 'Enter');
48
48
  var accessibilityActionsProp = accessibilityActions
49
49
  ? __spreadArray(__spreadArray([], defaultAccessibilityActions, true), accessibilityActions, true) : defaultAccessibilityActions;
50
50
  var onAccessibilityActionProp = React.useCallback(function (event) {
@@ -1 +1 @@
1
- {"version":3,"file":"useMenuItemCheckbox.js","sourceRoot":"","sources":["../../src/MenuItemCheckbox/useMenuItemCheckbox.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useMenuItemCheckbox.js","sourceRoot":"","sources":["../../src/MenuItemCheckbox/useMenuItemCheckbox.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"useMenuItemRadio.d.ts","sourceRoot":"","sources":["../../src/MenuItemRadio/useMenuItemRadio.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,4CAA4C,CAAC;AAG1G,eAAO,MAAM,gBAAgB,UAAW,qBAAqB,KAAG,qBAwB/D,CAAC"}
1
+ {"version":3,"file":"useMenuItemRadio.d.ts","sourceRoot":"","sources":["../../src/MenuItemRadio/useMenuItemRadio.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,4CAA4C,CAAC;AAI1G,eAAO,MAAM,gBAAgB,UAAW,qBAAqB,KAAG,qBA+B/D,CAAC"}
@@ -1,20 +1,28 @@
1
1
  import * as React from 'react';
2
2
  import { useMenuListContext } from '../context/menuListContext';
3
3
  import { useMenuCheckboxInteraction } from '../MenuItemCheckbox/useMenuItemCheckbox';
4
+ import { useMenuContext } from '../context/menuContext';
4
5
  export var useMenuItemRadio = function (props) {
5
- var disabled = props.disabled, name = props.name;
6
- var context = useMenuListContext();
7
- var selectRadio = context.selectRadio;
6
+ var disabled = props.disabled, name = props.name, persistOnClick = props.persistOnClick;
7
+ var context = useMenuContext();
8
+ var listContext = useMenuListContext();
9
+ var selectRadio = listContext.selectRadio;
10
+ var setOpen = context.setOpen;
11
+ var shouldPersist = context.persistOnItemClick;
12
+ shouldPersist = persistOnClick !== null && persistOnClick !== void 0 ? persistOnClick : shouldPersist;
8
13
  var toggleChecked = React.useCallback(function (e) {
9
14
  if (!disabled) {
10
15
  selectRadio(e, name);
16
+ if (!shouldPersist) {
17
+ setOpen(e, false /*isOpen*/, true /*bubble*/);
18
+ }
11
19
  }
12
- }, [disabled, name, selectRadio]);
20
+ }, [disabled, name, selectRadio, setOpen, shouldPersist]);
13
21
  // Explicitly only run on mount and unmount
14
22
  React.useEffect(function () {
15
- context.addRadioItem(name);
23
+ listContext.addRadioItem(name);
16
24
  return function () {
17
- context.removeRadioItem(name);
25
+ listContext.removeRadioItem(name);
18
26
  };
19
27
  }, []); // eslint-disable-line react-hooks/exhaustive-deps
20
28
  return useMenuCheckboxInteraction(props, toggleChecked);
@@ -1 +1 @@
1
- {"version":3,"file":"useMenuItemRadio.js","sourceRoot":"","sources":["../../src/MenuItemRadio/useMenuItemRadio.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAEhE,OAAO,EAAE,0BAA0B,EAAE,MAAM,yCAAyC,CAAC;AAErF,MAAM,CAAC,IAAM,gBAAgB,GAAG,UAAC,KAA4B;IACnD,IAAA,QAAQ,GAAW,KAAK,SAAhB,EAAE,IAAI,GAAK,KAAK,KAAV,CAAW;IACjC,IAAM,OAAO,GAAG,kBAAkB,EAAE,CAAC;IACrC,IAAM,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;IAExC,IAAM,aAAa,GAAG,KAAK,CAAC,WAAW,CACrC,UAAC,CAAmB;QAClB,IAAI,CAAC,QAAQ,EAAE;YACb,WAAW,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;SACtB;IACH,CAAC,EACD,CAAC,QAAQ,EAAE,IAAI,EAAE,WAAW,CAAC,CAC9B,CAAC;IAEF,2CAA2C;IAC3C,KAAK,CAAC,SAAS,CAAC;QACd,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QAE3B,OAAO;YACL,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;QAChC,CAAC,CAAC;IACJ,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,kDAAkD;IAE1D,OAAO,0BAA0B,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;AAC1D,CAAC,CAAC"}
1
+ {"version":3,"file":"useMenuItemRadio.js","sourceRoot":"","sources":["../../src/MenuItemRadio/useMenuItemRadio.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAEhE,OAAO,EAAE,0BAA0B,EAAE,MAAM,yCAAyC,CAAC;AACrF,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAExD,MAAM,CAAC,IAAM,gBAAgB,GAAG,UAAC,KAA4B;IACnD,IAAA,QAAQ,GAA2B,KAAK,SAAhC,EAAE,IAAI,GAAqB,KAAK,KAA1B,EAAE,cAAc,GAAK,KAAK,eAAV,CAAW;IACjD,IAAM,OAAO,GAAG,cAAc,EAAE,CAAC;IACjC,IAAM,WAAW,GAAG,kBAAkB,EAAE,CAAC;IACzC,IAAM,WAAW,GAAG,WAAW,CAAC,WAAW,CAAC;IAC5C,IAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAChC,IAAI,aAAa,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAC/C,aAAa,GAAG,cAAc,aAAd,cAAc,cAAd,cAAc,GAAI,aAAa,CAAC;IAEhD,IAAM,aAAa,GAAG,KAAK,CAAC,WAAW,CACrC,UAAC,CAAmB;QAClB,IAAI,CAAC,QAAQ,EAAE;YACb,WAAW,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;YACrB,IAAI,CAAC,aAAa,EAAE;gBAClB,OAAO,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;aAC/C;SACF;IACH,CAAC,EACD,CAAC,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,aAAa,CAAC,CACtD,CAAC;IAEF,2CAA2C;IAC3C,KAAK,CAAC,SAAS,CAAC;QACd,WAAW,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QAE/B,OAAO;YACL,WAAW,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;QACpC,CAAC,CAAC;IACJ,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,kDAAkD;IAE1D,OAAO,0BAA0B,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;AAC1D,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"useMenuPopover.d.ts","sourceRoot":"","sources":["../../src/MenuPopover/useMenuPopover.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAKzE,eAAO,MAAM,cAAc,WAAY,gBAAgB,KAAG,gBA0DzD,CAAC"}
1
+ {"version":3,"file":"useMenuPopover.d.ts","sourceRoot":"","sources":["../../src/MenuPopover/useMenuPopover.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAKzE,eAAO,MAAM,cAAc,WAAY,gBAAgB,KAAG,gBAgEzD,CAAC"}
@@ -28,6 +28,10 @@ export var useMenuPopover = function (_props) {
28
28
  }, 500);
29
29
  setPopoverHoverOutTimer(timer);
30
30
  }, [openOnHover, setOpen, setPopoverHoverOutTimer]);
31
+ var _a = React.useState(shouldFocusOnContainer), canFocusOnPopover = _a[0], setCanFocusOnPopover = _a[1];
32
+ var onBlur = React.useCallback(function () {
33
+ setCanFocusOnPopover(false);
34
+ }, [setCanFocusOnPopover]);
31
35
  return {
32
36
  props: {
33
37
  accessibilityRole: accessibilityRole,
@@ -42,7 +46,8 @@ export var useMenuPopover = function (_props) {
42
46
  onMouseEnter: onMouseEnter,
43
47
  onMouseLeave: isCloseOnHoverOutEnabled && onMouseLeave,
44
48
  accessible: shouldFocusOnContainer,
45
- focusable: shouldFocusOnContainer,
49
+ focusable: canFocusOnPopover,
50
+ onBlur: onBlur,
46
51
  },
47
52
  };
48
53
  };
@@ -1 +1 @@
1
- {"version":3,"file":"useMenuPopover.js","sourceRoot":"","sources":["../../src/MenuPopover/useMenuPopover.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useMenuPopover.js","sourceRoot":"","sources":["../../src/MenuPopover/useMenuPopover.ts"],"names":[],"mappings":"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"}
@@ -21,6 +21,10 @@ export interface MenuProps extends MenuListProps {
21
21
  */
22
22
  onOpenChange?: (e: InteractionEvent, isOpen: boolean) => void;
23
23
  openOnHover?: boolean;
24
+ /**
25
+ * Do not dismiss the menu when a menu item is clicked
26
+ */
27
+ persistOnItemClick?: boolean;
24
28
  }
25
29
  export interface MenuState extends MenuProps {
26
30
  isControlled: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"Menu.types.d.ts","sourceRoot":"","sources":["../../src/Menu/Menu.types.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,0CAA0C,CAAC;AAC5E,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAEhE,eAAO,MAAM,QAAQ,SAAS,CAAC;AAE/B,MAAM,WAAW,SAAU,SAAQ,aAAa;IAC9C;;OAEG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;IAEf;;OAEG;IACH,YAAY,CAAC,EAAE,CAAC,CAAC,EAAE,gBAAgB,EAAE,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;IAK9D,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,MAAM,WAAW,SAAU,SAAQ,SAAS;IAC1C,YAAY,EAAE,OAAO,CAAC;IACtB,SAAS,EAAE,OAAO,CAAC;IACnB,0BAA0B,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC;IAC5C,OAAO,EAAE,CAAC,CAAC,EAAE,gBAAgB,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IAC1E,sBAAsB,EAAE,OAAO,CAAC;IAChC,UAAU,EAAE,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;CAC9C"}
1
+ {"version":3,"file":"Menu.types.d.ts","sourceRoot":"","sources":["../../src/Menu/Menu.types.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,0CAA0C,CAAC;AAC5E,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAEhE,eAAO,MAAM,QAAQ,SAAS,CAAC;AAE/B,MAAM,WAAW,SAAU,SAAQ,aAAa;IAC9C;;OAEG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;IAEf;;OAEG;IACH,YAAY,CAAC,EAAE,CAAC,CAAC,EAAE,gBAAgB,EAAE,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;IAK9D,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB;;OAEG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B;AAED,MAAM,WAAW,SAAU,SAAQ,SAAS;IAC1C,YAAY,EAAE,OAAO,CAAC;IACtB,SAAS,EAAE,OAAO,CAAC;IACnB,0BAA0B,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC;IAC5C,OAAO,EAAE,CAAC,CAAC,EAAE,gBAAgB,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IAC1E,sBAAsB,EAAE,OAAO,CAAC;IAChC,UAAU,EAAE,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;CAC9C"}
@@ -40,6 +40,10 @@ export interface MenuItemProps extends Omit<IWithPressableOptions<ViewProps>, 'o
40
40
  * A callback to call on button click event
41
41
  */
42
42
  onClick?: (e: InteractionEvent) => void;
43
+ /**
44
+ * Do not dismiss the menu when a menu item is clicked
45
+ */
46
+ persistOnClick?: boolean;
43
47
  }
44
48
  export interface MenuItemState extends IPressableHooks<MenuItemProps & React.ComponentPropsWithRef<any>> {
45
49
  hasCheckmarks?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"MenuItem.types.d.ts","sourceRoot":"","sources":["../../src/MenuItem/MenuItem.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAClE,OAAO,EAAE,SAAS,EAAE,MAAM,0CAA0C,CAAC;AACrE,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,0CAA0C,CAAC;AAChI,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAEtG,eAAO,MAAM,YAAY,aAAa,CAAC;AAEvC,MAAM,WAAW,cAAe,SAAQ,YAAY,EAAE,UAAU,EAAE,aAAa,EAAE,YAAY;IAC3F;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;OAEG;IACH,uBAAuB,CAAC,EAAE,MAAM,CAAC;IAEjC;;OAEG;IACH,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAE9B;;OAEG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB,OAAO,CAAC,EAAE,cAAc,CAAC;CAC1B;AAED,MAAM,WAAW,aAAc,SAAQ,IAAI,CAAC,qBAAqB,CAAC,SAAS,CAAC,EAAE,SAAS,CAAC;IACtF;;OAEG;IACH,YAAY,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;IAE3C;;OAEG;IACH,OAAO,CAAC,EAAE,CAAC,CAAC,EAAE,gBAAgB,KAAK,IAAI,CAAC;CACzC;AAED,MAAM,WAAW,aAAc,SAAQ,eAAe,CAAC,aAAa,GAAG,KAAK,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAC;IACtG,aAAa,CAAC,EAAE,OAAO,CAAC;IAExB;;OAEG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,KAAK,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;IACrC,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB,SAAS,CAAC,EAAE,KAAK,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;IAC3C,gBAAgB,CAAC,EAAE,QAAQ,CAAC;CAC7B;AAED,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,aAAa,CAAC;IACrB,MAAM,EAAE,cAAc,CAAC;IACvB,SAAS,EAAE,iBAAiB,CAAC;CAC9B"}
1
+ {"version":3,"file":"MenuItem.types.d.ts","sourceRoot":"","sources":["../../src/MenuItem/MenuItem.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAClE,OAAO,EAAE,SAAS,EAAE,MAAM,0CAA0C,CAAC;AACrE,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,0CAA0C,CAAC;AAChI,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAEtG,eAAO,MAAM,YAAY,aAAa,CAAC;AAEvC,MAAM,WAAW,cAAe,SAAQ,YAAY,EAAE,UAAU,EAAE,aAAa,EAAE,YAAY;IAC3F;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;OAEG;IACH,uBAAuB,CAAC,EAAE,MAAM,CAAC;IAEjC;;OAEG;IACH,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAE9B;;OAEG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB,OAAO,CAAC,EAAE,cAAc,CAAC;CAC1B;AAED,MAAM,WAAW,aAAc,SAAQ,IAAI,CAAC,qBAAqB,CAAC,SAAS,CAAC,EAAE,SAAS,CAAC;IACtF;;OAEG;IACH,YAAY,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;IAE3C;;OAEG;IACH,OAAO,CAAC,EAAE,CAAC,CAAC,EAAE,gBAAgB,KAAK,IAAI,CAAC;IAExC;;OAEG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED,MAAM,WAAW,aAAc,SAAQ,eAAe,CAAC,aAAa,GAAG,KAAK,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAC;IACtG,aAAa,CAAC,EAAE,OAAO,CAAC;IAExB;;OAEG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,KAAK,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;IACrC,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB,SAAS,CAAC,EAAE,KAAK,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;IAC3C,gBAAgB,CAAC,EAAE,QAAQ,CAAC;CAC7B;AAED,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,aAAa,CAAC;IACrB,MAAM,EAAE,cAAc,CAAC;IACvB,SAAS,EAAE,iBAAiB,CAAC;CAC9B"}
@@ -1 +1 @@
1
- {"version":3,"file":"MenuItemTokens.win32.d.ts","sourceRoot":"","sources":["../../src/MenuItem/MenuItemTokens.win32.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,KAAK,EAAE,MAAM,kCAAkC,CAAC;AAE1E,OAAO,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AACnE,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,eAAO,MAAM,qBAAqB,EAAE,aAAa,CAAC,cAAc,EAAE,KAAK,CA4BrE,CAAC"}
1
+ {"version":3,"file":"MenuItemTokens.win32.d.ts","sourceRoot":"","sources":["../../src/MenuItem/MenuItemTokens.win32.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,KAAK,EAAE,MAAM,kCAAkC,CAAC;AAE1E,OAAO,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AACnE,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,eAAO,MAAM,qBAAqB,EAAE,aAAa,CAAC,cAAc,EAAE,KAAK,CAgCrE,CAAC"}
@@ -30,6 +30,10 @@ var defaultMenuItemTokens = function (t) { return ({
30
30
  backgroundColor: t.colors.neutralBackground1,
31
31
  color: t.colors.neutralForegroundDisabled,
32
32
  },
33
+ focused: {
34
+ backgroundColor: t.colors.neutralBackground1Hover,
35
+ color: t.colors.neutralForeground1Hover,
36
+ },
33
37
  }); };
34
38
  exports.defaultMenuItemTokens = defaultMenuItemTokens;
35
39
  //# sourceMappingURL=MenuItemTokens.win32.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"MenuItemTokens.win32.js","sourceRoot":"","sources":["../../src/MenuItem/MenuItemTokens.win32.ts"],"names":[],"mappings":";;;AACA,oEAAmE;AAI5D,IAAM,qBAAqB,GAAyC,UAAC,CAAQ,IAAqB,OAAA,CAAC;IACxG,eAAe,EAAE,CAAC,CAAC,MAAM,CAAC,kBAAkB;IAC5C,YAAY,EAAE,2BAAY,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI;IAC7C,aAAa,EAAE,EAAE;IACjB,uBAAuB,EAAE,2BAAY,CAAC,OAAO,CAAC,GAAG;IACjD,oBAAoB,EAAE,EAAE;IACxB,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,kBAAkB;IAClC,UAAU,EAAE,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,OAAO;IACzC,QAAQ,EAAE,2BAAY,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;IACrC,UAAU,EAAE,2BAAY,CAAC,IAAI,CAAC,MAAM,CAAC,OAA0B;IAC/D,GAAG,EAAE,2BAAY,CAAC,OAAO,CAAC,EAAE;IAC5B,SAAS,EAAE,EAAE;IACb,QAAQ,EAAE,GAAG;IACb,QAAQ,EAAE,GAAG;IACb,OAAO,EAAE,2BAAY,CAAC,OAAO,CAAC,EAAE;IAChC,iBAAiB,EAAE,2BAAY,CAAC,OAAO,CAAC,CAAC;IACzC,OAAO,EAAE;QACP,eAAe,EAAE,CAAC,CAAC,MAAM,CAAC,uBAAuB;QACjD,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,uBAAuB;KACxC;IACD,OAAO,EAAE;QACP,eAAe,EAAE,CAAC,CAAC,MAAM,CAAC,yBAAyB;QACnD,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,yBAAyB;KAC1C;IACD,QAAQ,EAAE;QACR,eAAe,EAAE,CAAC,CAAC,MAAM,CAAC,kBAAkB;QAC5C,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,yBAAyB;KAC1C;CACF,CAAC,EA5BuG,CA4BvG,CAAC;AA5BU,QAAA,qBAAqB,yBA4B/B"}
1
+ {"version":3,"file":"MenuItemTokens.win32.js","sourceRoot":"","sources":["../../src/MenuItem/MenuItemTokens.win32.ts"],"names":[],"mappings":";;;AACA,oEAAmE;AAI5D,IAAM,qBAAqB,GAAyC,UAAC,CAAQ,IAAqB,OAAA,CAAC;IACxG,eAAe,EAAE,CAAC,CAAC,MAAM,CAAC,kBAAkB;IAC5C,YAAY,EAAE,2BAAY,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI;IAC7C,aAAa,EAAE,EAAE;IACjB,uBAAuB,EAAE,2BAAY,CAAC,OAAO,CAAC,GAAG;IACjD,oBAAoB,EAAE,EAAE;IACxB,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,kBAAkB;IAClC,UAAU,EAAE,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,OAAO;IACzC,QAAQ,EAAE,2BAAY,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;IACrC,UAAU,EAAE,2BAAY,CAAC,IAAI,CAAC,MAAM,CAAC,OAA0B;IAC/D,GAAG,EAAE,2BAAY,CAAC,OAAO,CAAC,EAAE;IAC5B,SAAS,EAAE,EAAE;IACb,QAAQ,EAAE,GAAG;IACb,QAAQ,EAAE,GAAG;IACb,OAAO,EAAE,2BAAY,CAAC,OAAO,CAAC,EAAE;IAChC,iBAAiB,EAAE,2BAAY,CAAC,OAAO,CAAC,CAAC;IACzC,OAAO,EAAE;QACP,eAAe,EAAE,CAAC,CAAC,MAAM,CAAC,uBAAuB;QACjD,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,uBAAuB;KACxC;IACD,OAAO,EAAE;QACP,eAAe,EAAE,CAAC,CAAC,MAAM,CAAC,yBAAyB;QACnD,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,yBAAyB;KAC1C;IACD,QAAQ,EAAE;QACR,eAAe,EAAE,CAAC,CAAC,MAAM,CAAC,kBAAkB;QAC5C,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,yBAAyB;KAC1C;IACD,OAAO,EAAE;QACP,eAAe,EAAE,CAAC,CAAC,MAAM,CAAC,uBAAuB;QACjD,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,uBAAuB;KACxC;CACF,CAAC,EAhCuG,CAgCvG,CAAC;AAhCU,QAAA,qBAAqB,yBAgC/B"}
@@ -1 +1 @@
1
- {"version":3,"file":"useMenuItem.d.ts","sourceRoot":"","sources":["../../src/MenuItem/useMenuItem.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAgBhE,eAAO,MAAM,WAAW,UAAW,aAAa,KAAG,aA8ElD,CAAC;AAUF,eAAO,MAAM,mBAAmB,YAAa,OAAO,gBAAgB,MAAM,gBAAgB,CAAC,GAAG,CAAC,SAQ9F,CAAC"}
1
+ {"version":3,"file":"useMenuItem.d.ts","sourceRoot":"","sources":["../../src/MenuItem/useMenuItem.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAgBhE,eAAO,MAAM,WAAW,UAAW,aAAa,KAAG,aAkFlD,CAAC;AAUF,eAAO,MAAM,mBAAmB,YAAa,OAAO,gBAAgB,MAAM,gBAAgB,CAAC,GAAG,CAAC,SAQ9F,CAAC"}
@@ -14,11 +14,13 @@ var submenuTriggerKeys = (0, tslib_1.__spreadArray)((0, tslib_1.__spreadArray)([
14
14
  var useMenuItem = function (props) {
15
15
  // attach the pressable state handlers
16
16
  var defaultComponentRef = React.useRef(null);
17
- var onClick = props.onClick, accessibilityState = props.accessibilityState, _a = props.componentRef, componentRef = _a === void 0 ? defaultComponentRef : _a, disabled = props.disabled, rest = (0, tslib_1.__rest)(props, ["onClick", "accessibilityState", "componentRef", "disabled"]);
17
+ var onClick = props.onClick, accessibilityState = props.accessibilityState, _a = props.componentRef, componentRef = _a === void 0 ? defaultComponentRef : _a, disabled = props.disabled, persistOnClick = props.persistOnClick, rest = (0, tslib_1.__rest)(props, ["onClick", "accessibilityState", "componentRef", "disabled", "persistOnClick"]);
18
18
  var isTrigger = (0, menuTriggerContext_1.useMenuTriggerContext)();
19
19
  var isSubmenu = (0, menuContext_1.useMenuContext)().isSubmenu;
20
20
  var hasSubmenu = isSubmenu && isTrigger;
21
21
  var isInSubmenu = isSubmenu && !isTrigger;
22
+ var shouldPersist = (0, menuContext_1.useMenuContext)().persistOnItemClick;
23
+ shouldPersist = persistOnClick !== null && persistOnClick !== void 0 ? persistOnClick : shouldPersist;
22
24
  var setOpen = (0, menuContext_1.useMenuContext)().setOpen;
23
25
  var onInvoke = React.useCallback(function (e) {
24
26
  if (disabled) {
@@ -40,9 +42,11 @@ var useMenuItem = function (props) {
40
42
  var isArrowClose = (0, interactive_hooks_1.isKeyPressEvent)(e) &&
41
43
  isInSubmenu &&
42
44
  ((isRtl && e.nativeEvent.key === 'ArrowRight') || (!isRtl && e.nativeEvent.key === 'ArrowLeft'));
43
- setOpen(e, false /*isOpen*/, !isArrowClose /*bubble*/);
45
+ if (isArrowClose || !shouldPersist) {
46
+ setOpen(e, false /*isOpen*/, !isArrowClose /*bubble*/);
47
+ }
44
48
  }
45
- }, [disabled, hasSubmenu, isInSubmenu, onClick, setOpen]);
49
+ }, [disabled, hasSubmenu, isInSubmenu, onClick, setOpen, shouldPersist]);
46
50
  var pressable = (0, interactive_hooks_1.useAsPressable)((0, tslib_1.__assign)((0, tslib_1.__assign)({}, rest), { disabled: disabled, onPress: onInvoke }));
47
51
  var itemRef = (0, interactive_hooks_1.useViewCommandFocus)(componentRef);
48
52
  var keys = isSubmenu ? submenuTriggerKeys : triggerKeys;
@@ -72,7 +76,7 @@ function getAccessibilityStateWorker(disabled, accessibilityState) {
72
76
  return { disabled: disabled };
73
77
  }
74
78
  var useHoverFocusEffect = function (hovered, componentRef) {
75
- React.useEffect(function () {
79
+ React.useLayoutEffect(function () {
76
80
  var _a, _b;
77
81
  if (hovered) {
78
82
  (_a = componentRef === null || componentRef === void 0 ? void 0 : componentRef.current) === null || _a === void 0 ? void 0 : _a.focus();
@@ -1 +1 @@
1
- {"version":3,"file":"useMenuItem.js","sourceRoot":"","sources":["../../src/MenuItem/useMenuItem.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useMenuItem.js","sourceRoot":"","sources":["../../src/MenuItem/useMenuItem.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"MenuItemCheckboxTokens.win32.d.ts","sourceRoot":"","sources":["../../src/MenuItemCheckbox/MenuItemCheckboxTokens.win32.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,KAAK,EAAE,MAAM,kCAAkC,CAAC;AAE1E,OAAO,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AACnE,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAElE,eAAO,MAAM,6BAA6B,EAAE,aAAa,CAAC,sBAAsB,EAAE,KAAK,CA4CrF,CAAC"}
1
+ {"version":3,"file":"MenuItemCheckboxTokens.win32.d.ts","sourceRoot":"","sources":["../../src/MenuItemCheckbox/MenuItemCheckboxTokens.win32.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,KAAK,EAAE,MAAM,kCAAkC,CAAC;AAE1E,OAAO,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AACnE,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAElE,eAAO,MAAM,6BAA6B,EAAE,aAAa,CAAC,sBAAsB,EAAE,KAAK,CAoDrF,CAAC"}
@@ -42,6 +42,14 @@ var defaultMenuItemCheckboxTokens = function (t) { return ({
42
42
  checkmarkVisibility: 1,
43
43
  },
44
44
  },
45
+ focused: {
46
+ backgroundColor: t.colors.neutralBackground1Hover,
47
+ color: t.colors.neutralForeground1Hover,
48
+ checked: {
49
+ checkmarkColor: t.colors.neutralForeground1Hover,
50
+ checkmarkVisibility: 1,
51
+ },
52
+ },
45
53
  checked: {
46
54
  checkmarkColor: t.colors.neutralForeground1,
47
55
  checkmarkVisibility: 1,
@@ -1 +1 @@
1
- {"version":3,"file":"MenuItemCheckboxTokens.win32.js","sourceRoot":"","sources":["../../src/MenuItemCheckbox/MenuItemCheckboxTokens.win32.ts"],"names":[],"mappings":";;;AACA,oEAAmE;AAI5D,IAAM,6BAA6B,GAAiD,UAAC,CAAQ,IAA6B,OAAA,CAAC;IAChI,eAAe,EAAE,CAAC,CAAC,MAAM,CAAC,kBAAkB;IAC5C,YAAY,EAAE,2BAAY,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI;IAC7C,gBAAgB,EAAE,2BAAY,CAAC,OAAO,CAAC,GAAG;IAC1C,aAAa,EAAE,EAAE;IACjB,mBAAmB,EAAE,CAAC;IACtB,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,kBAAkB;IAClC,UAAU,EAAE,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,OAAO;IACzC,QAAQ,EAAE,2BAAY,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;IACrC,UAAU,EAAE,2BAAY,CAAC,IAAI,CAAC,MAAM,CAAC,OAA0B;IAC/D,GAAG,EAAE,2BAAY,CAAC,OAAO,CAAC,EAAE;IAC5B,SAAS,EAAE,EAAE;IACb,QAAQ,EAAE,GAAG;IACb,QAAQ,EAAE,GAAG;IACb,OAAO,EAAE,2BAAY,CAAC,OAAO,CAAC,EAAE;IAChC,iBAAiB,EAAE,2BAAY,CAAC,OAAO,CAAC,CAAC;IACzC,OAAO,EAAE;QACP,eAAe,EAAE,CAAC,CAAC,MAAM,CAAC,uBAAuB;QACjD,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,uBAAuB;QACvC,OAAO,EAAE;YACP,cAAc,EAAE,CAAC,CAAC,MAAM,CAAC,uBAAuB;YAChD,mBAAmB,EAAE,CAAC;SACvB;KACF;IACD,OAAO,EAAE;QACP,eAAe,EAAE,CAAC,CAAC,MAAM,CAAC,yBAAyB;QACnD,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,yBAAyB;QACzC,OAAO,EAAE;YACP,cAAc,EAAE,CAAC,CAAC,MAAM,CAAC,yBAAyB;YAClD,mBAAmB,EAAE,CAAC;SACvB;KACF;IACD,QAAQ,EAAE;QACR,eAAe,EAAE,CAAC,CAAC,MAAM,CAAC,kBAAkB;QAC5C,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,yBAAyB;QACzC,OAAO,EAAE;YACP,cAAc,EAAE,CAAC,CAAC,MAAM,CAAC,yBAAyB;YAClD,mBAAmB,EAAE,CAAC;SACvB;KACF;IACD,OAAO,EAAE;QACP,cAAc,EAAE,CAAC,CAAC,MAAM,CAAC,kBAAkB;QAC3C,mBAAmB,EAAE,CAAC;KACvB;CACF,CAAC,EA5C+H,CA4C/H,CAAC;AA5CU,QAAA,6BAA6B,iCA4CvC"}
1
+ {"version":3,"file":"MenuItemCheckboxTokens.win32.js","sourceRoot":"","sources":["../../src/MenuItemCheckbox/MenuItemCheckboxTokens.win32.ts"],"names":[],"mappings":";;;AACA,oEAAmE;AAI5D,IAAM,6BAA6B,GAAiD,UAAC,CAAQ,IAA6B,OAAA,CAAC;IAChI,eAAe,EAAE,CAAC,CAAC,MAAM,CAAC,kBAAkB;IAC5C,YAAY,EAAE,2BAAY,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI;IAC7C,gBAAgB,EAAE,2BAAY,CAAC,OAAO,CAAC,GAAG;IAC1C,aAAa,EAAE,EAAE;IACjB,mBAAmB,EAAE,CAAC;IACtB,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,kBAAkB;IAClC,UAAU,EAAE,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,OAAO;IACzC,QAAQ,EAAE,2BAAY,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;IACrC,UAAU,EAAE,2BAAY,CAAC,IAAI,CAAC,MAAM,CAAC,OAA0B;IAC/D,GAAG,EAAE,2BAAY,CAAC,OAAO,CAAC,EAAE;IAC5B,SAAS,EAAE,EAAE;IACb,QAAQ,EAAE,GAAG;IACb,QAAQ,EAAE,GAAG;IACb,OAAO,EAAE,2BAAY,CAAC,OAAO,CAAC,EAAE;IAChC,iBAAiB,EAAE,2BAAY,CAAC,OAAO,CAAC,CAAC;IACzC,OAAO,EAAE;QACP,eAAe,EAAE,CAAC,CAAC,MAAM,CAAC,uBAAuB;QACjD,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,uBAAuB;QACvC,OAAO,EAAE;YACP,cAAc,EAAE,CAAC,CAAC,MAAM,CAAC,uBAAuB;YAChD,mBAAmB,EAAE,CAAC;SACvB;KACF;IACD,OAAO,EAAE;QACP,eAAe,EAAE,CAAC,CAAC,MAAM,CAAC,yBAAyB;QACnD,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,yBAAyB;QACzC,OAAO,EAAE;YACP,cAAc,EAAE,CAAC,CAAC,MAAM,CAAC,yBAAyB;YAClD,mBAAmB,EAAE,CAAC;SACvB;KACF;IACD,QAAQ,EAAE;QACR,eAAe,EAAE,CAAC,CAAC,MAAM,CAAC,kBAAkB;QAC5C,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,yBAAyB;QACzC,OAAO,EAAE;YACP,cAAc,EAAE,CAAC,CAAC,MAAM,CAAC,yBAAyB;YAClD,mBAAmB,EAAE,CAAC;SACvB;KACF;IACD,OAAO,EAAE;QACP,eAAe,EAAE,CAAC,CAAC,MAAM,CAAC,uBAAuB;QACjD,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,uBAAuB;QACvC,OAAO,EAAE;YACP,cAAc,EAAE,CAAC,CAAC,MAAM,CAAC,uBAAuB;YAChD,mBAAmB,EAAE,CAAC;SACvB;KACF;IACD,OAAO,EAAE;QACP,cAAc,EAAE,CAAC,CAAC,MAAM,CAAC,kBAAkB;QAC3C,mBAAmB,EAAE,CAAC;KACvB;CACF,CAAC,EApD+H,CAoD/H,CAAC;AApDU,QAAA,6BAA6B,iCAoDvC"}
@@ -48,7 +48,7 @@ var useMenuCheckboxInteraction = function (props, toggleCallback) {
48
48
  var toggleCheckedWithFocus = (0, interactive_hooks_1.useOnPressWithFocus)(componentRef, toggleCallback);
49
49
  var pressable = (0, interactive_hooks_1.useAsPressable)((0, tslib_1.__assign)((0, tslib_1.__assign)({}, rest), { disabled: disabled, onPress: toggleCheckedWithFocus }));
50
50
  var buttonRef = (0, interactive_hooks_1.useViewCommandFocus)(componentRef);
51
- var onKeyProps = (0, interactive_hooks_1.useKeyProps)(toggleCallback, ' ');
51
+ var onKeyProps = (0, interactive_hooks_1.useKeyProps)(toggleCallback, ' ', 'Enter');
52
52
  var accessibilityActionsProp = accessibilityActions
53
53
  ? (0, tslib_1.__spreadArray)((0, tslib_1.__spreadArray)([], defaultAccessibilityActions, true), accessibilityActions, true) : defaultAccessibilityActions;
54
54
  var onAccessibilityActionProp = React.useCallback(function (event) {
@@ -1 +1 @@
1
- {"version":3,"file":"useMenuItemCheckbox.js","sourceRoot":"","sources":["../../src/MenuItemCheckbox/useMenuItemCheckbox.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useMenuItemCheckbox.js","sourceRoot":"","sources":["../../src/MenuItemCheckbox/useMenuItemCheckbox.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"useMenuItemRadio.d.ts","sourceRoot":"","sources":["../../src/MenuItemRadio/useMenuItemRadio.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,4CAA4C,CAAC;AAG1G,eAAO,MAAM,gBAAgB,UAAW,qBAAqB,KAAG,qBAwB/D,CAAC"}
1
+ {"version":3,"file":"useMenuItemRadio.d.ts","sourceRoot":"","sources":["../../src/MenuItemRadio/useMenuItemRadio.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,4CAA4C,CAAC;AAI1G,eAAO,MAAM,gBAAgB,UAAW,qBAAqB,KAAG,qBA+B/D,CAAC"}
@@ -5,20 +5,28 @@ var tslib_1 = require("tslib");
5
5
  var React = (0, tslib_1.__importStar)(require("react"));
6
6
  var menuListContext_1 = require("../context/menuListContext");
7
7
  var useMenuItemCheckbox_1 = require("../MenuItemCheckbox/useMenuItemCheckbox");
8
+ var menuContext_1 = require("../context/menuContext");
8
9
  var useMenuItemRadio = function (props) {
9
- var disabled = props.disabled, name = props.name;
10
- var context = (0, menuListContext_1.useMenuListContext)();
11
- var selectRadio = context.selectRadio;
10
+ var disabled = props.disabled, name = props.name, persistOnClick = props.persistOnClick;
11
+ var context = (0, menuContext_1.useMenuContext)();
12
+ var listContext = (0, menuListContext_1.useMenuListContext)();
13
+ var selectRadio = listContext.selectRadio;
14
+ var setOpen = context.setOpen;
15
+ var shouldPersist = context.persistOnItemClick;
16
+ shouldPersist = persistOnClick !== null && persistOnClick !== void 0 ? persistOnClick : shouldPersist;
12
17
  var toggleChecked = React.useCallback(function (e) {
13
18
  if (!disabled) {
14
19
  selectRadio(e, name);
20
+ if (!shouldPersist) {
21
+ setOpen(e, false /*isOpen*/, true /*bubble*/);
22
+ }
15
23
  }
16
- }, [disabled, name, selectRadio]);
24
+ }, [disabled, name, selectRadio, setOpen, shouldPersist]);
17
25
  // Explicitly only run on mount and unmount
18
26
  React.useEffect(function () {
19
- context.addRadioItem(name);
27
+ listContext.addRadioItem(name);
20
28
  return function () {
21
- context.removeRadioItem(name);
29
+ listContext.removeRadioItem(name);
22
30
  };
23
31
  }, []); // eslint-disable-line react-hooks/exhaustive-deps
24
32
  return (0, useMenuItemCheckbox_1.useMenuCheckboxInteraction)(props, toggleChecked);
@@ -1 +1 @@
1
- {"version":3,"file":"useMenuItemRadio.js","sourceRoot":"","sources":["../../src/MenuItemRadio/useMenuItemRadio.ts"],"names":[],"mappings":";;;;AAAA,wDAA+B;AAE/B,8DAAgE;AAEhE,+EAAqF;AAE9E,IAAM,gBAAgB,GAAG,UAAC,KAA4B;IACnD,IAAA,QAAQ,GAAW,KAAK,SAAhB,EAAE,IAAI,GAAK,KAAK,KAAV,CAAW;IACjC,IAAM,OAAO,GAAG,IAAA,oCAAkB,GAAE,CAAC;IACrC,IAAM,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;IAExC,IAAM,aAAa,GAAG,KAAK,CAAC,WAAW,CACrC,UAAC,CAAmB;QAClB,IAAI,CAAC,QAAQ,EAAE;YACb,WAAW,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;SACtB;IACH,CAAC,EACD,CAAC,QAAQ,EAAE,IAAI,EAAE,WAAW,CAAC,CAC9B,CAAC;IAEF,2CAA2C;IAC3C,KAAK,CAAC,SAAS,CAAC;QACd,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QAE3B,OAAO;YACL,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;QAChC,CAAC,CAAC;IACJ,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,kDAAkD;IAE1D,OAAO,IAAA,gDAA0B,EAAC,KAAK,EAAE,aAAa,CAAC,CAAC;AAC1D,CAAC,CAAC;AAxBW,QAAA,gBAAgB,oBAwB3B"}
1
+ {"version":3,"file":"useMenuItemRadio.js","sourceRoot":"","sources":["../../src/MenuItemRadio/useMenuItemRadio.ts"],"names":[],"mappings":";;;;AAAA,wDAA+B;AAE/B,8DAAgE;AAEhE,+EAAqF;AACrF,sDAAwD;AAEjD,IAAM,gBAAgB,GAAG,UAAC,KAA4B;IACnD,IAAA,QAAQ,GAA2B,KAAK,SAAhC,EAAE,IAAI,GAAqB,KAAK,KAA1B,EAAE,cAAc,GAAK,KAAK,eAAV,CAAW;IACjD,IAAM,OAAO,GAAG,IAAA,4BAAc,GAAE,CAAC;IACjC,IAAM,WAAW,GAAG,IAAA,oCAAkB,GAAE,CAAC;IACzC,IAAM,WAAW,GAAG,WAAW,CAAC,WAAW,CAAC;IAC5C,IAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAChC,IAAI,aAAa,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAC/C,aAAa,GAAG,cAAc,aAAd,cAAc,cAAd,cAAc,GAAI,aAAa,CAAC;IAEhD,IAAM,aAAa,GAAG,KAAK,CAAC,WAAW,CACrC,UAAC,CAAmB;QAClB,IAAI,CAAC,QAAQ,EAAE;YACb,WAAW,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;YACrB,IAAI,CAAC,aAAa,EAAE;gBAClB,OAAO,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;aAC/C;SACF;IACH,CAAC,EACD,CAAC,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,aAAa,CAAC,CACtD,CAAC;IAEF,2CAA2C;IAC3C,KAAK,CAAC,SAAS,CAAC;QACd,WAAW,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QAE/B,OAAO;YACL,WAAW,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;QACpC,CAAC,CAAC;IACJ,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,kDAAkD;IAE1D,OAAO,IAAA,gDAA0B,EAAC,KAAK,EAAE,aAAa,CAAC,CAAC;AAC1D,CAAC,CAAC;AA/BW,QAAA,gBAAgB,oBA+B3B"}
@@ -1 +1 @@
1
- {"version":3,"file":"useMenuPopover.d.ts","sourceRoot":"","sources":["../../src/MenuPopover/useMenuPopover.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAKzE,eAAO,MAAM,cAAc,WAAY,gBAAgB,KAAG,gBA0DzD,CAAC"}
1
+ {"version":3,"file":"useMenuPopover.d.ts","sourceRoot":"","sources":["../../src/MenuPopover/useMenuPopover.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAKzE,eAAO,MAAM,cAAc,WAAY,gBAAgB,KAAG,gBAgEzD,CAAC"}
@@ -32,6 +32,10 @@ var useMenuPopover = function (_props) {
32
32
  }, 500);
33
33
  setPopoverHoverOutTimer(timer);
34
34
  }, [openOnHover, setOpen, setPopoverHoverOutTimer]);
35
+ var _a = react_1.default.useState(shouldFocusOnContainer), canFocusOnPopover = _a[0], setCanFocusOnPopover = _a[1];
36
+ var onBlur = react_1.default.useCallback(function () {
37
+ setCanFocusOnPopover(false);
38
+ }, [setCanFocusOnPopover]);
35
39
  return {
36
40
  props: {
37
41
  accessibilityRole: accessibilityRole,
@@ -46,7 +50,8 @@ var useMenuPopover = function (_props) {
46
50
  onMouseEnter: onMouseEnter,
47
51
  onMouseLeave: consts_1.isCloseOnHoverOutEnabled && onMouseLeave,
48
52
  accessible: shouldFocusOnContainer,
49
- focusable: shouldFocusOnContainer,
53
+ focusable: canFocusOnPopover,
54
+ onBlur: onBlur,
50
55
  },
51
56
  };
52
57
  };
@@ -1 +1 @@
1
- {"version":3,"file":"useMenuPopover.js","sourceRoot":"","sources":["../../src/MenuPopover/useMenuPopover.ts"],"names":[],"mappings":";;;;AAAA,6DAA0B;AAC1B,6CAAqD;AAErD,sDAAwD;AAExD,oCAAqD;AAErD,IAAM,0BAA0B,GAAG,CAAC,yBAAyB,EAAE,8BAA8B,CAAuB,CAAC;AAE9G,IAAM,cAAc,GAAG,UAAC,MAAwB;IACrD,IAAM,OAAO,GAAG,IAAA,4BAAc,GAAE,CAAC;IAE/B,IAAA,OAAO,GAUL,OAAO,QAVF,EACP,UAAU,GASR,OAAO,WATC,EACV,YAAY,GAQV,OAAO,aARG,EACZ,SAAS,GAOP,OAAO,UAPA,EACT,WAAW,GAMT,OAAO,YANE,EACX,0BAA0B,GAKxB,OAAO,2BALiB,EAC1B,oBAAoB,GAIlB,OAAO,qBAJW,EACpB,uBAAuB,GAGrB,OAAO,wBAHc,EACvB,sBAAsB,GAEpB,OAAO,uBAFa,EACtB,oBAAoB,GAClB,OAAO,qBADW,CACV;IAEZ,IAAM,SAAS,GAAG,eAAK,CAAC,WAAW,CAAC,cAAM,OAAA,OAAO,CAAC,SAAS,EAAE,KAAK,CAAC,YAAY,CAAC,EAAtC,CAAsC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IAC7F,IAAM,gBAAgB,GAAG,YAAY,CAAC,CAAC,CAAC,0BAA0B,CAAC,CAAC,CAAC,SAAS,CAAC;IAC/E,IAAM,eAAe,GAAG,kBAAkB,CAAC,SAAS,EAAE,0BAAW,CAAC,KAAK,CAAC,CAAC;IAEzE,4EAA4E;IAC5E,8CAA8C;IAC9C,IAAM,eAAe,GAAG,uBAAQ,CAAC,EAAE,KAAM,OAAe,IAAI,uBAAQ,CAAC,EAAE,KAAK,SAAS,CAAC;IACtF,IAAM,uBAAuB,GAAG,WAAW,CAAC;IAC5C,IAAM,iBAAiB,GAAG,MAAM,CAAC;IAEjC,IAAM,YAAY,GAAG,eAAK,CAAC,WAAW,CAAC;QACrC,YAAY,CAAC,oBAAoB,CAAC,CAAC;QACnC,YAAY,CAAC,oBAAoB,CAAC,CAAC;QACnC,YAAY,CAAC,0BAA0B,CAAC,CAAC;IAC3C,CAAC,EAAE,CAAC,0BAA0B,EAAE,oBAAoB,EAAE,oBAAoB,CAAC,CAAC,CAAC;IAC7E,IAAM,YAAY,GAAG,eAAK,CAAC,WAAW,CAAC;QACrC,IAAI,CAAC,WAAW,EAAE;YAChB,OAAO;SACR;QAED,IAAM,KAAK,GAAG,UAAU,CAAC;YACvB,OAAO,CAAC,SAAS,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC;QACzC,CAAC,EAAE,GAAG,CAAC,CAAC;QACR,uBAAuB,CAAC,KAAK,CAAC,CAAC;IACjC,CAAC,EAAE,CAAC,WAAW,EAAE,OAAO,EAAE,uBAAuB,CAAC,CAAC,CAAC;IAEpD,OAAO;QACL,KAAK,EAAE;YACL,iBAAiB,mBAAA;YACjB,MAAM,EAAE,UAAU;YAClB,SAAS,WAAA;YACT,eAAe,iBAAA;YACf,gBAAgB,kBAAA;YAChB,uBAAuB,yBAAA;YACvB,eAAe,iBAAA;SAChB;QACD,SAAS,EAAE;YACT,YAAY,cAAA;YACZ,YAAY,EAAE,iCAAwB,IAAI,YAAY;YACtD,UAAU,EAAE,sBAAsB;YAClC,SAAS,EAAE,sBAAsB;SAClC;KACF,CAAC;AACJ,CAAC,CAAC;AA1DW,QAAA,cAAc,kBA0DzB;AAEF,IAAM,kBAAkB,GAAG,UAAC,SAAkB,EAAE,KAAc;IAC5D,IAAI,CAAC,SAAS,EAAE;QACd,OAAO,SAAS,CAAC;KAClB;IAED,IAAI,KAAK,EAAE;QACT,OAAO,aAAa,CAAC;KACtB;IAED,OAAO,cAAc,CAAC;AACxB,CAAC,CAAC"}
1
+ {"version":3,"file":"useMenuPopover.js","sourceRoot":"","sources":["../../src/MenuPopover/useMenuPopover.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fluentui-react-native/menu",
3
- "version": "0.15.5",
3
+ "version": "0.16.0",
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",
@@ -29,6 +29,11 @@ export interface MenuProps extends MenuListProps {
29
29
  * Opens the menu on hovering over the trigger
30
30
  */
31
31
  openOnHover?: boolean;
32
+
33
+ /**
34
+ * Do not dismiss the menu when a menu item is clicked
35
+ */
36
+ persistOnItemClick?: boolean;
32
37
  }
33
38
 
34
39
  export interface MenuState extends MenuProps {
@@ -48,6 +48,11 @@ export interface MenuItemProps extends Omit<IWithPressableOptions<ViewProps>, 'o
48
48
  * A callback to call on button click event
49
49
  */
50
50
  onClick?: (e: InteractionEvent) => void;
51
+
52
+ /**
53
+ * Do not dismiss the menu when a menu item is clicked
54
+ */
55
+ persistOnClick?: boolean;
51
56
  }
52
57
 
53
58
  export interface MenuItemState extends IPressableHooks<MenuItemProps & React.ComponentPropsWithRef<any>> {
@@ -31,4 +31,8 @@ export const defaultMenuItemTokens: TokenSettings<MenuItemTokens, Theme> = (t: T
31
31
  backgroundColor: t.colors.neutralBackground1,
32
32
  color: t.colors.neutralForegroundDisabled,
33
33
  },
34
+ focused: {
35
+ backgroundColor: t.colors.neutralBackground1Hover,
36
+ color: t.colors.neutralForeground1Hover,
37
+ },
34
38
  });
@@ -19,11 +19,13 @@ const submenuTriggerKeys = [...triggerKeys, 'ArrowLeft', 'ArrowRight'];
19
19
  export const useMenuItem = (props: MenuItemProps): MenuItemState => {
20
20
  // attach the pressable state handlers
21
21
  const defaultComponentRef = React.useRef(null);
22
- const { onClick, accessibilityState, componentRef = defaultComponentRef, disabled, ...rest } = props;
22
+ const { onClick, accessibilityState, componentRef = defaultComponentRef, disabled, persistOnClick, ...rest } = props;
23
23
  const isTrigger = useMenuTriggerContext();
24
24
  const isSubmenu = useMenuContext().isSubmenu;
25
25
  const hasSubmenu = isSubmenu && isTrigger;
26
26
  const isInSubmenu = isSubmenu && !isTrigger;
27
+ let shouldPersist = useMenuContext().persistOnItemClick;
28
+ shouldPersist = persistOnClick ?? shouldPersist;
27
29
 
28
30
  const setOpen = useMenuContext().setOpen;
29
31
 
@@ -56,10 +58,12 @@ export const useMenuItem = (props: MenuItemProps): MenuItemState => {
56
58
  isInSubmenu &&
57
59
  ((isRtl && e.nativeEvent.key === 'ArrowRight') || (!isRtl && e.nativeEvent.key === 'ArrowLeft'));
58
60
 
59
- setOpen(e, false /*isOpen*/, !isArrowClose /*bubble*/);
61
+ if (isArrowClose || !shouldPersist) {
62
+ setOpen(e, false /*isOpen*/, !isArrowClose /*bubble*/);
63
+ }
60
64
  }
61
65
  },
62
- [disabled, hasSubmenu, isInSubmenu, onClick, setOpen],
66
+ [disabled, hasSubmenu, isInSubmenu, onClick, setOpen, shouldPersist],
63
67
  );
64
68
 
65
69
  const pressable = useAsPressable({ ...rest, disabled, onPress: onInvoke });
@@ -105,7 +109,7 @@ function getAccessibilityStateWorker(disabled: boolean, accessibilityState?: Acc
105
109
  }
106
110
 
107
111
  export const useHoverFocusEffect = (hovered: boolean, componentRef: React.MutableRefObject<any>) => {
108
- React.useEffect(() => {
112
+ React.useLayoutEffect(() => {
109
113
  if (hovered) {
110
114
  componentRef?.current?.focus();
111
115
  } else {
@@ -43,6 +43,14 @@ export const defaultMenuItemCheckboxTokens: TokenSettings<MenuItemCheckboxTokens
43
43
  checkmarkVisibility: 1,
44
44
  },
45
45
  },
46
+ focused: {
47
+ backgroundColor: t.colors.neutralBackground1Hover,
48
+ color: t.colors.neutralForeground1Hover,
49
+ checked: {
50
+ checkmarkColor: t.colors.neutralForeground1Hover,
51
+ checkmarkVisibility: 1,
52
+ },
53
+ },
46
54
  checked: {
47
55
  checkmarkColor: t.colors.neutralForeground1,
48
56
  checkmarkVisibility: 1,
@@ -72,7 +72,7 @@ export const useMenuCheckboxInteraction = (
72
72
  const pressable = useAsPressable({ ...rest, disabled, onPress: toggleCheckedWithFocus });
73
73
  const buttonRef = useViewCommandFocus(componentRef);
74
74
 
75
- const onKeyProps = useKeyProps(toggleCallback, ' ');
75
+ const onKeyProps = useKeyProps(toggleCallback, ' ', 'Enter');
76
76
  const accessibilityActionsProp = accessibilityActions
77
77
  ? [...defaultAccessibilityActions, ...accessibilityActions]
78
78
  : defaultAccessibilityActions;
@@ -3,27 +3,35 @@ import { InteractionEvent } from '@fluentui-react-native/interactive-hooks';
3
3
  import { useMenuListContext } from '../context/menuListContext';
4
4
  import { MenuItemCheckboxProps, MenuItemCheckboxState } from '../MenuItemCheckbox/MenuItemCheckbox.types';
5
5
  import { useMenuCheckboxInteraction } from '../MenuItemCheckbox/useMenuItemCheckbox';
6
+ import { useMenuContext } from '../context/menuContext';
6
7
 
7
8
  export const useMenuItemRadio = (props: MenuItemCheckboxProps): MenuItemCheckboxState => {
8
- const { disabled, name } = props;
9
- const context = useMenuListContext();
10
- const selectRadio = context.selectRadio;
9
+ const { disabled, name, persistOnClick } = props;
10
+ const context = useMenuContext();
11
+ const listContext = useMenuListContext();
12
+ const selectRadio = listContext.selectRadio;
13
+ const setOpen = context.setOpen;
14
+ let shouldPersist = context.persistOnItemClick;
15
+ shouldPersist = persistOnClick ?? shouldPersist;
11
16
 
12
17
  const toggleChecked = React.useCallback(
13
18
  (e: InteractionEvent) => {
14
19
  if (!disabled) {
15
20
  selectRadio(e, name);
21
+ if (!shouldPersist) {
22
+ setOpen(e, false /*isOpen*/, true /*bubble*/);
23
+ }
16
24
  }
17
25
  },
18
- [disabled, name, selectRadio],
26
+ [disabled, name, selectRadio, setOpen, shouldPersist],
19
27
  );
20
28
 
21
29
  // Explicitly only run on mount and unmount
22
30
  React.useEffect(() => {
23
- context.addRadioItem(name);
31
+ listContext.addRadioItem(name);
24
32
 
25
33
  return () => {
26
- context.removeRadioItem(name);
34
+ listContext.removeRadioItem(name);
27
35
  };
28
36
  }, []); // eslint-disable-line react-hooks/exhaustive-deps
29
37
 
@@ -48,6 +48,11 @@ export const useMenuPopover = (_props: MenuPopoverProps): MenuPopoverState => {
48
48
  setPopoverHoverOutTimer(timer);
49
49
  }, [openOnHover, setOpen, setPopoverHoverOutTimer]);
50
50
 
51
+ const [canFocusOnPopover, setCanFocusOnPopover] = React.useState<boolean>(shouldFocusOnContainer);
52
+ const onBlur = React.useCallback(() => {
53
+ setCanFocusOnPopover(false);
54
+ }, [setCanFocusOnPopover]);
55
+
51
56
  return {
52
57
  props: {
53
58
  accessibilityRole,
@@ -62,7 +67,8 @@ export const useMenuPopover = (_props: MenuPopoverProps): MenuPopoverState => {
62
67
  onMouseEnter,
63
68
  onMouseLeave: isCloseOnHoverOutEnabled && onMouseLeave,
64
69
  accessible: shouldFocusOnContainer,
65
- focusable: shouldFocusOnContainer,
70
+ focusable: canFocusOnPopover,
71
+ onBlur,
66
72
  },
67
73
  };
68
74
  };
@@ -155,6 +155,7 @@ Array [
155
155
  <View
156
156
  accessible={false}
157
157
  focusable={false}
158
+ onBlur={[Function]}
158
159
  onMouseEnter={[Function]}
159
160
  onMouseLeave={false}
160
161
  >
@@ -375,6 +376,7 @@ Array [
375
376
  <View
376
377
  accessible={false}
377
378
  focusable={false}
379
+ onBlur={[Function]}
378
380
  onMouseEnter={[Function]}
379
381
  onMouseLeave={false}
380
382
  >
@@ -540,6 +542,7 @@ Array [
540
542
  <View
541
543
  accessible={false}
542
544
  focusable={false}
545
+ onBlur={[Function]}
543
546
  onMouseEnter={[Function]}
544
547
  onMouseLeave={false}
545
548
  >
@@ -892,6 +895,7 @@ Array [
892
895
  <View
893
896
  accessible={false}
894
897
  focusable={false}
898
+ onBlur={[Function]}
895
899
  onMouseEnter={[Function]}
896
900
  onMouseLeave={false}
897
901
  >
@@ -1243,6 +1247,7 @@ Array [
1243
1247
  <View
1244
1248
  accessible={false}
1245
1249
  focusable={false}
1250
+ onBlur={[Function]}
1246
1251
  onMouseEnter={[Function]}
1247
1252
  onMouseLeave={false}
1248
1253
  >
@@ -1594,6 +1599,7 @@ Array [
1594
1599
  <View
1595
1600
  accessible={false}
1596
1601
  focusable={false}
1602
+ onBlur={[Function]}
1597
1603
  onMouseEnter={[Function]}
1598
1604
  onMouseLeave={false}
1599
1605
  >
@@ -1933,6 +1939,7 @@ Array [
1933
1939
  <View
1934
1940
  accessible={false}
1935
1941
  focusable={false}
1942
+ onBlur={[Function]}
1936
1943
  onMouseEnter={[Function]}
1937
1944
  onMouseLeave={false}
1938
1945
  >