@fluentui/react-menu 0.0.0-nightly-20230526-0415.1 → 0.0.0-nightly-20230530-0415.1

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 (254) hide show
  1. package/CHANGELOG.json +25 -25
  2. package/CHANGELOG.md +15 -15
  3. package/lib/Menu.js +1 -0
  4. package/lib/Menu.js.map +1 -1
  5. package/lib/MenuDivider.js +1 -0
  6. package/lib/MenuDivider.js.map +1 -1
  7. package/lib/MenuGroup.js +1 -0
  8. package/lib/MenuGroup.js.map +1 -1
  9. package/lib/MenuGroupHeader.js +1 -0
  10. package/lib/MenuGroupHeader.js.map +1 -1
  11. package/lib/MenuItem.js +1 -0
  12. package/lib/MenuItem.js.map +1 -1
  13. package/lib/MenuItemCheckbox.js +1 -0
  14. package/lib/MenuItemCheckbox.js.map +1 -1
  15. package/lib/MenuItemRadio.js +1 -0
  16. package/lib/MenuItemRadio.js.map +1 -1
  17. package/lib/MenuList.js +1 -0
  18. package/lib/MenuList.js.map +1 -1
  19. package/lib/MenuPopover.js +1 -0
  20. package/lib/MenuPopover.js.map +1 -1
  21. package/lib/MenuSplitGroup.js +1 -0
  22. package/lib/MenuSplitGroup.js.map +1 -1
  23. package/lib/MenuTrigger.js +1 -0
  24. package/lib/MenuTrigger.js.map +1 -1
  25. package/lib/components/Menu/Menu.js +5 -5
  26. package/lib/components/Menu/Menu.js.map +1 -1
  27. package/lib/components/Menu/Menu.types.js +1 -0
  28. package/lib/components/Menu/Menu.types.js.map +1 -1
  29. package/lib/components/Menu/index.js +1 -0
  30. package/lib/components/Menu/index.js.map +1 -1
  31. package/lib/components/Menu/renderMenu.js +5 -5
  32. package/lib/components/Menu/renderMenu.js.map +1 -1
  33. package/lib/components/Menu/useMenu.js +243 -235
  34. package/lib/components/Menu/useMenu.js.map +1 -1
  35. package/lib/components/Menu/useMenuContextValues.js +23 -38
  36. package/lib/components/Menu/useMenuContextValues.js.map +1 -1
  37. package/lib/components/MenuDivider/MenuDivider.js +6 -6
  38. package/lib/components/MenuDivider/MenuDivider.js.map +1 -1
  39. package/lib/components/MenuDivider/MenuDivider.types.js +2 -1
  40. package/lib/components/MenuDivider/MenuDivider.types.js.map +1 -1
  41. package/lib/components/MenuDivider/index.js +1 -0
  42. package/lib/components/MenuDivider/index.js.map +1 -1
  43. package/lib/components/MenuDivider/renderMenuDivider.js +5 -8
  44. package/lib/components/MenuDivider/renderMenuDivider.js.map +1 -1
  45. package/lib/components/MenuDivider/useMenuDivider.js +13 -13
  46. package/lib/components/MenuDivider/useMenuDivider.js.map +1 -1
  47. package/lib/components/MenuDivider/useMenuDividerStyles.styles.js.map +1 -1
  48. package/lib/components/MenuGroup/MenuGroup.js +7 -7
  49. package/lib/components/MenuGroup/MenuGroup.js.map +1 -1
  50. package/lib/components/MenuGroup/MenuGroup.types.js +2 -1
  51. package/lib/components/MenuGroup/MenuGroup.types.js.map +1 -1
  52. package/lib/components/MenuGroup/index.js +1 -0
  53. package/lib/components/MenuGroup/index.js.map +1 -1
  54. package/lib/components/MenuGroup/renderMenuGroup.js +7 -10
  55. package/lib/components/MenuGroup/renderMenuGroup.js.map +1 -1
  56. package/lib/components/MenuGroup/useMenuGroup.js +15 -15
  57. package/lib/components/MenuGroup/useMenuGroup.js.map +1 -1
  58. package/lib/components/MenuGroup/useMenuGroupContextValues.js +10 -9
  59. package/lib/components/MenuGroup/useMenuGroupContextValues.js.map +1 -1
  60. package/lib/components/MenuGroupHeader/MenuGroupHeader.js +6 -6
  61. package/lib/components/MenuGroupHeader/MenuGroupHeader.js.map +1 -1
  62. package/lib/components/MenuGroupHeader/MenuGroupHeader.types.js +2 -1
  63. package/lib/components/MenuGroupHeader/MenuGroupHeader.types.js.map +1 -1
  64. package/lib/components/MenuGroupHeader/index.js +1 -0
  65. package/lib/components/MenuGroupHeader/index.js.map +1 -1
  66. package/lib/components/MenuGroupHeader/renderMenuGroupHeader.js +5 -8
  67. package/lib/components/MenuGroupHeader/renderMenuGroupHeader.js.map +1 -1
  68. package/lib/components/MenuGroupHeader/useMenuGroupHeader.js +13 -15
  69. package/lib/components/MenuGroupHeader/useMenuGroupHeader.js.map +1 -1
  70. package/lib/components/MenuGroupHeader/useMenuGroupHeaderStyles.styles.js.map +1 -1
  71. package/lib/components/MenuItem/MenuItem.js +6 -6
  72. package/lib/components/MenuItem/MenuItem.js.map +1 -1
  73. package/lib/components/MenuItem/MenuItem.types.js +2 -1
  74. package/lib/components/MenuItem/MenuItem.types.js.map +1 -1
  75. package/lib/components/MenuItem/index.js +1 -0
  76. package/lib/components/MenuItem/index.js.map +1 -1
  77. package/lib/components/MenuItem/renderMenuItem.js +5 -8
  78. package/lib/components/MenuItem/renderMenuItem.js.map +1 -1
  79. package/lib/components/MenuItem/useCharacterSearch.js +15 -16
  80. package/lib/components/MenuItem/useCharacterSearch.js.map +1 -1
  81. package/lib/components/MenuItem/useMenuItem.js +80 -87
  82. package/lib/components/MenuItem/useMenuItem.js.map +1 -1
  83. package/lib/components/MenuItem/useMenuItemStyles.styles.js.map +1 -1
  84. package/lib/components/MenuItemCheckbox/MenuItemCheckbox.js +6 -6
  85. package/lib/components/MenuItemCheckbox/MenuItemCheckbox.js.map +1 -1
  86. package/lib/components/MenuItemCheckbox/MenuItemCheckbox.types.js +2 -1
  87. package/lib/components/MenuItemCheckbox/MenuItemCheckbox.types.js.map +1 -1
  88. package/lib/components/MenuItemCheckbox/index.js +1 -0
  89. package/lib/components/MenuItemCheckbox/index.js.map +1 -1
  90. package/lib/components/MenuItemCheckbox/renderMenuItemCheckbox.js +5 -8
  91. package/lib/components/MenuItemCheckbox/renderMenuItemCheckbox.js.map +1 -1
  92. package/lib/components/MenuItemCheckbox/useMenuItemCheckbox.js +32 -35
  93. package/lib/components/MenuItemCheckbox/useMenuItemCheckbox.js.map +1 -1
  94. package/lib/components/MenuItemRadio/MenuItemRadio.js +6 -6
  95. package/lib/components/MenuItemRadio/MenuItemRadio.js.map +1 -1
  96. package/lib/components/MenuItemRadio/MenuItemRadio.types.js +2 -1
  97. package/lib/components/MenuItemRadio/MenuItemRadio.types.js.map +1 -1
  98. package/lib/components/MenuItemRadio/index.js +1 -0
  99. package/lib/components/MenuItemRadio/index.js.map +1 -1
  100. package/lib/components/MenuItemRadio/renderMenuItemRadio.js +5 -8
  101. package/lib/components/MenuItemRadio/renderMenuItemRadio.js.map +1 -1
  102. package/lib/components/MenuItemRadio/useMenuItemRadio.js +30 -33
  103. package/lib/components/MenuItemRadio/useMenuItemRadio.js.map +1 -1
  104. package/lib/components/MenuList/MenuList.js +7 -7
  105. package/lib/components/MenuList/MenuList.js.map +1 -1
  106. package/lib/components/MenuList/MenuList.types.js +1 -0
  107. package/lib/components/MenuList/MenuList.types.js.map +1 -1
  108. package/lib/components/MenuList/index.js +1 -0
  109. package/lib/components/MenuList/index.js.map +1 -1
  110. package/lib/components/MenuList/renderMenuList.js +7 -10
  111. package/lib/components/MenuList/renderMenuList.js.map +1 -1
  112. package/lib/components/MenuList/useMenuList.js +131 -125
  113. package/lib/components/MenuList/useMenuList.js.map +1 -1
  114. package/lib/components/MenuList/useMenuListContextValues.js +14 -20
  115. package/lib/components/MenuList/useMenuListContextValues.js.map +1 -1
  116. package/lib/components/MenuList/useMenuListStyles.styles.js.map +1 -1
  117. package/lib/components/MenuPopover/MenuPopover.js +6 -6
  118. package/lib/components/MenuPopover/MenuPopover.js.map +1 -1
  119. package/lib/components/MenuPopover/MenuPopover.types.js +2 -1
  120. package/lib/components/MenuPopover/MenuPopover.types.js.map +1 -1
  121. package/lib/components/MenuPopover/index.js +1 -0
  122. package/lib/components/MenuPopover/index.js.map +1 -1
  123. package/lib/components/MenuPopover/renderMenuPopover.js +10 -13
  124. package/lib/components/MenuPopover/renderMenuPopover.js.map +1 -1
  125. package/lib/components/MenuPopover/useMenuPopover.js +88 -90
  126. package/lib/components/MenuPopover/useMenuPopover.js.map +1 -1
  127. package/lib/components/MenuPopover/useMenuPopoverStyles.styles.js.map +1 -1
  128. package/lib/components/MenuSplitGroup/MenuSplitGroup.js +6 -6
  129. package/lib/components/MenuSplitGroup/MenuSplitGroup.js.map +1 -1
  130. package/lib/components/MenuSplitGroup/MenuSplitGroup.types.js +2 -1
  131. package/lib/components/MenuSplitGroup/MenuSplitGroup.types.js.map +1 -1
  132. package/lib/components/MenuSplitGroup/index.js +1 -0
  133. package/lib/components/MenuSplitGroup/index.js.map +1 -1
  134. package/lib/components/MenuSplitGroup/renderMenuSplitGroup.js +5 -8
  135. package/lib/components/MenuSplitGroup/renderMenuSplitGroup.js.map +1 -1
  136. package/lib/components/MenuSplitGroup/useMenuSplitGroup.js +46 -46
  137. package/lib/components/MenuSplitGroup/useMenuSplitGroup.js.map +1 -1
  138. package/lib/components/MenuSplitGroup/useMenuSplitGroupStyles.styles.js.map +1 -1
  139. package/lib/components/MenuTrigger/MenuTrigger.js +4 -4
  140. package/lib/components/MenuTrigger/MenuTrigger.js.map +1 -1
  141. package/lib/components/MenuTrigger/MenuTrigger.types.js +1 -0
  142. package/lib/components/MenuTrigger/MenuTrigger.types.js.map +1 -1
  143. package/lib/components/MenuTrigger/index.js +1 -0
  144. package/lib/components/MenuTrigger/index.js.map +1 -1
  145. package/lib/components/MenuTrigger/renderMenuTrigger.js +5 -5
  146. package/lib/components/MenuTrigger/renderMenuTrigger.js.map +1 -1
  147. package/lib/components/index.js +1 -0
  148. package/lib/components/index.js.map +1 -1
  149. package/lib/contexts/menuContext.js +22 -21
  150. package/lib/contexts/menuContext.js.map +1 -1
  151. package/lib/contexts/menuGroupContext.js +4 -3
  152. package/lib/contexts/menuGroupContext.js.map +1 -1
  153. package/lib/contexts/menuListContext.js +9 -8
  154. package/lib/contexts/menuListContext.js.map +1 -1
  155. package/lib/contexts/menuTriggerContext.js +3 -3
  156. package/lib/contexts/menuTriggerContext.js.map +1 -1
  157. package/lib/index.js +1 -0
  158. package/lib/index.js.map +1 -1
  159. package/lib/selectable/index.js +1 -0
  160. package/lib/selectable/index.js.map +1 -1
  161. package/lib/selectable/types.js +1 -0
  162. package/lib/selectable/types.js.map +1 -1
  163. package/lib/selectable/useCheckmarkStyles.styles.js.map +1 -1
  164. package/lib/utils/index.js +1 -0
  165. package/lib/utils/index.js.map +1 -1
  166. package/lib/utils/useIsSubmenu.js +5 -5
  167. package/lib/utils/useIsSubmenu.js.map +1 -1
  168. package/lib/utils/useOnMenuEnter.js +40 -43
  169. package/lib/utils/useOnMenuEnter.js.map +1 -1
  170. package/lib-commonjs/Menu.js.map +1 -1
  171. package/lib-commonjs/MenuDivider.js.map +1 -1
  172. package/lib-commonjs/MenuGroup.js.map +1 -1
  173. package/lib-commonjs/MenuGroupHeader.js.map +1 -1
  174. package/lib-commonjs/MenuItem.js.map +1 -1
  175. package/lib-commonjs/MenuItemCheckbox.js.map +1 -1
  176. package/lib-commonjs/MenuItemRadio.js.map +1 -1
  177. package/lib-commonjs/MenuList.js.map +1 -1
  178. package/lib-commonjs/MenuPopover.js.map +1 -1
  179. package/lib-commonjs/MenuSplitGroup.js.map +1 -1
  180. package/lib-commonjs/MenuTrigger.js.map +1 -1
  181. package/lib-commonjs/components/Menu/Menu.js.map +1 -1
  182. package/lib-commonjs/components/Menu/Menu.types.js.map +1 -1
  183. package/lib-commonjs/components/Menu/index.js.map +1 -1
  184. package/lib-commonjs/components/Menu/renderMenu.js.map +1 -1
  185. package/lib-commonjs/components/Menu/useMenu.js +1 -2
  186. package/lib-commonjs/components/Menu/useMenu.js.map +1 -1
  187. package/lib-commonjs/components/Menu/useMenuContextValues.js.map +1 -1
  188. package/lib-commonjs/components/MenuDivider/MenuDivider.js.map +1 -1
  189. package/lib-commonjs/components/MenuDivider/MenuDivider.types.js.map +1 -1
  190. package/lib-commonjs/components/MenuDivider/index.js.map +1 -1
  191. package/lib-commonjs/components/MenuDivider/renderMenuDivider.js.map +1 -1
  192. package/lib-commonjs/components/MenuDivider/useMenuDivider.js.map +1 -1
  193. package/lib-commonjs/components/MenuGroup/MenuGroup.js.map +1 -1
  194. package/lib-commonjs/components/MenuGroup/MenuGroup.types.js.map +1 -1
  195. package/lib-commonjs/components/MenuGroup/index.js.map +1 -1
  196. package/lib-commonjs/components/MenuGroup/renderMenuGroup.js.map +1 -1
  197. package/lib-commonjs/components/MenuGroup/useMenuGroup.js.map +1 -1
  198. package/lib-commonjs/components/MenuGroup/useMenuGroupContextValues.js.map +1 -1
  199. package/lib-commonjs/components/MenuGroupHeader/MenuGroupHeader.js.map +1 -1
  200. package/lib-commonjs/components/MenuGroupHeader/MenuGroupHeader.types.js.map +1 -1
  201. package/lib-commonjs/components/MenuGroupHeader/index.js.map +1 -1
  202. package/lib-commonjs/components/MenuGroupHeader/renderMenuGroupHeader.js.map +1 -1
  203. package/lib-commonjs/components/MenuGroupHeader/useMenuGroupHeader.js.map +1 -1
  204. package/lib-commonjs/components/MenuItem/MenuItem.js.map +1 -1
  205. package/lib-commonjs/components/MenuItem/MenuItem.types.js.map +1 -1
  206. package/lib-commonjs/components/MenuItem/index.js.map +1 -1
  207. package/lib-commonjs/components/MenuItem/renderMenuItem.js.map +1 -1
  208. package/lib-commonjs/components/MenuItem/useCharacterSearch.js.map +1 -1
  209. package/lib-commonjs/components/MenuItem/useMenuItem.js +2 -2
  210. package/lib-commonjs/components/MenuItem/useMenuItem.js.map +1 -1
  211. package/lib-commonjs/components/MenuItemCheckbox/MenuItemCheckbox.js.map +1 -1
  212. package/lib-commonjs/components/MenuItemCheckbox/MenuItemCheckbox.types.js.map +1 -1
  213. package/lib-commonjs/components/MenuItemCheckbox/index.js.map +1 -1
  214. package/lib-commonjs/components/MenuItemCheckbox/renderMenuItemCheckbox.js.map +1 -1
  215. package/lib-commonjs/components/MenuItemCheckbox/useMenuItemCheckbox.js.map +1 -1
  216. package/lib-commonjs/components/MenuItemRadio/MenuItemRadio.js.map +1 -1
  217. package/lib-commonjs/components/MenuItemRadio/MenuItemRadio.types.js.map +1 -1
  218. package/lib-commonjs/components/MenuItemRadio/index.js.map +1 -1
  219. package/lib-commonjs/components/MenuItemRadio/renderMenuItemRadio.js.map +1 -1
  220. package/lib-commonjs/components/MenuItemRadio/useMenuItemRadio.js.map +1 -1
  221. package/lib-commonjs/components/MenuList/MenuList.js.map +1 -1
  222. package/lib-commonjs/components/MenuList/MenuList.types.js.map +1 -1
  223. package/lib-commonjs/components/MenuList/index.js.map +1 -1
  224. package/lib-commonjs/components/MenuList/renderMenuList.js.map +1 -1
  225. package/lib-commonjs/components/MenuList/useMenuList.js.map +1 -1
  226. package/lib-commonjs/components/MenuList/useMenuListContextValues.js.map +1 -1
  227. package/lib-commonjs/components/MenuPopover/MenuPopover.js.map +1 -1
  228. package/lib-commonjs/components/MenuPopover/MenuPopover.types.js.map +1 -1
  229. package/lib-commonjs/components/MenuPopover/index.js.map +1 -1
  230. package/lib-commonjs/components/MenuPopover/renderMenuPopover.js.map +1 -1
  231. package/lib-commonjs/components/MenuPopover/useMenuPopover.js.map +1 -1
  232. package/lib-commonjs/components/MenuSplitGroup/MenuSplitGroup.js.map +1 -1
  233. package/lib-commonjs/components/MenuSplitGroup/MenuSplitGroup.types.js.map +1 -1
  234. package/lib-commonjs/components/MenuSplitGroup/index.js.map +1 -1
  235. package/lib-commonjs/components/MenuSplitGroup/renderMenuSplitGroup.js.map +1 -1
  236. package/lib-commonjs/components/MenuSplitGroup/useMenuSplitGroup.js.map +1 -1
  237. package/lib-commonjs/components/MenuTrigger/MenuTrigger.js.map +1 -1
  238. package/lib-commonjs/components/MenuTrigger/MenuTrigger.types.js.map +1 -1
  239. package/lib-commonjs/components/MenuTrigger/index.js.map +1 -1
  240. package/lib-commonjs/components/MenuTrigger/renderMenuTrigger.js.map +1 -1
  241. package/lib-commonjs/components/index.js.map +1 -1
  242. package/lib-commonjs/contexts/menuContext.js +1 -1
  243. package/lib-commonjs/contexts/menuContext.js.map +1 -1
  244. package/lib-commonjs/contexts/menuGroupContext.js.map +1 -1
  245. package/lib-commonjs/contexts/menuListContext.js +1 -1
  246. package/lib-commonjs/contexts/menuListContext.js.map +1 -1
  247. package/lib-commonjs/contexts/menuTriggerContext.js.map +1 -1
  248. package/lib-commonjs/index.js.map +1 -1
  249. package/lib-commonjs/selectable/index.js.map +1 -1
  250. package/lib-commonjs/selectable/types.js.map +1 -1
  251. package/lib-commonjs/utils/index.js.map +1 -1
  252. package/lib-commonjs/utils/useIsSubmenu.js.map +1 -1
  253. package/lib-commonjs/utils/useOnMenuEnter.js.map +1 -1
  254. package/package.json +12 -12
@@ -3,8 +3,7 @@ import { useEventCallback } from '@fluentui/react-utilities';
3
3
  import { elementContains } from '@fluentui/react-portal';
4
4
  /**
5
5
  * Name of the custom event
6
- */
7
- export const MENU_ENTER_EVENT = 'fuimenuenter';
6
+ */ export const MENU_ENTER_EVENT = 'fuimenuenter';
8
7
  /**
9
8
  * This hook works similarly to @see {useOnClickOutside}
10
9
  *
@@ -15,51 +14,49 @@ export const MENU_ENTER_EVENT = 'fuimenuenter';
15
14
  * We don't use the native mouseenter event because it would trigger too many times in the document
16
15
  * Instead, dispatch custom DOM event from the menu so that it can bubble
17
16
  * Each nested menu can use the listener to check if the event is from a child or parent menu
18
- */
19
- export const useOnMenuMouseEnter = options => {
20
- const {
21
- refs,
22
- callback,
23
- element,
24
- disabled
25
- } = options;
26
- // Keep mouse event here because this is essentially a custom 'mouseenter' event
27
- const listener = useEventCallback(ev => {
28
- const popoverRef = refs[0];
29
- const someMenuPopover = ev.target;
30
- var _popoverRef_current;
31
- // someMenu is a child -> will always be contained because of vParents
32
- // someMenu is a parent -> will always not be contained because no vParent
33
- // someMenu is the current popover -> it will contain itself
34
- const isOutsidePopover = !elementContains((_popoverRef_current = popoverRef.current) !== null && _popoverRef_current !== void 0 ? _popoverRef_current : null, someMenuPopover);
35
- if (isOutsidePopover && !disabled) {
36
- callback(ev);
37
- }
38
- });
39
- React.useEffect(() => {
40
- // eslint-disable-next-line eqeqeq
41
- if (element == null) {
42
- return;
43
- }
44
- if (!disabled) {
45
- element.addEventListener(MENU_ENTER_EVENT, listener);
46
- }
47
- return () => {
48
- element.removeEventListener(MENU_ENTER_EVENT, listener);
49
- };
50
- }, [listener, element, disabled]);
17
+ */ export const useOnMenuMouseEnter = (options)=>{
18
+ const { refs , callback , element , disabled } = options;
19
+ // Keep mouse event here because this is essentially a custom 'mouseenter' event
20
+ const listener = useEventCallback((ev)=>{
21
+ const popoverRef = refs[0];
22
+ const someMenuPopover = ev.target;
23
+ var _popoverRef_current;
24
+ // someMenu is a child -> will always be contained because of vParents
25
+ // someMenu is a parent -> will always not be contained because no vParent
26
+ // someMenu is the current popover -> it will contain itself
27
+ const isOutsidePopover = !elementContains((_popoverRef_current = popoverRef.current) !== null && _popoverRef_current !== void 0 ? _popoverRef_current : null, someMenuPopover);
28
+ if (isOutsidePopover && !disabled) {
29
+ callback(ev);
30
+ }
31
+ });
32
+ React.useEffect(()=>{
33
+ // eslint-disable-next-line eqeqeq
34
+ if (element == null) {
35
+ return;
36
+ }
37
+ if (!disabled) {
38
+ element.addEventListener(MENU_ENTER_EVENT, listener);
39
+ }
40
+ return ()=>{
41
+ element.removeEventListener(MENU_ENTER_EVENT, listener);
42
+ };
43
+ }, [
44
+ listener,
45
+ element,
46
+ disabled
47
+ ]);
51
48
  };
52
49
  /**
53
50
  * Dispatches the custom MouseEvent enter event. Similar to calling `el.click()`
54
51
  * @param el element for the event target
55
52
  * @param nativeEvent the native mouse event this is mapped to
56
- */
57
- export const dispatchMenuEnterEvent = (el, nativeEvent) => {
58
- el.dispatchEvent(new CustomEvent(MENU_ENTER_EVENT, {
59
- bubbles: true,
60
- detail: {
61
- nativeEvent
62
- }
63
- }));
53
+ */ export const dispatchMenuEnterEvent = (el, nativeEvent)=>{
54
+ el.dispatchEvent(new CustomEvent(MENU_ENTER_EVENT, {
55
+ bubbles: true,
56
+ detail: {
57
+ nativeEvent
58
+ }
59
+ }));
64
60
  };
61
+
65
62
  //# sourceMappingURL=useOnMenuEnter.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","useEventCallback","elementContains","MENU_ENTER_EVENT","useOnMenuMouseEnter","options","refs","callback","element","disabled","listener","ev","popoverRef","someMenuPopover","target","_popoverRef_current","isOutsidePopover","current","useEffect","addEventListener","removeEventListener","dispatchMenuEnterEvent","el","nativeEvent","dispatchEvent","CustomEvent","bubbles","detail"],"sources":["../../src/utils/useOnMenuEnter.ts"],"sourcesContent":["import * as React from 'react';\nimport { useEventCallback } from '@fluentui/react-utilities';\nimport { elementContains } from '@fluentui/react-portal';\nimport type { UseOnClickOrScrollOutsideOptions } from '@fluentui/react-utilities';\n\n/**\n * Name of the custom event\n */\nexport const MENU_ENTER_EVENT = 'fuimenuenter';\n\n/**\n * This hook works similarly to @see {useOnClickOutside}\n *\n * Problem: Trying to behave the same as system menus:\n * When the mouse leaves a stack of nested menus the stack should not dismiss.\n * However if the mouse leaves a stack of menus and enters a parent menu all its children menu should dismiss.\n *\n * We don't use the native mouseenter event because it would trigger too many times in the document\n * Instead, dispatch custom DOM event from the menu so that it can bubble\n * Each nested menu can use the listener to check if the event is from a child or parent menu\n */\nexport const useOnMenuMouseEnter = (options: UseOnClickOrScrollOutsideOptions) => {\n const { refs, callback, element, disabled } = options;\n\n // Keep mouse event here because this is essentially a custom 'mouseenter' event\n const listener = useEventCallback((ev: MouseEvent) => {\n const popoverRef = refs[0];\n const someMenuPopover = ev.target as HTMLElement;\n\n // someMenu is a child -> will always be contained because of vParents\n // someMenu is a parent -> will always not be contained because no vParent\n // someMenu is the current popover -> it will contain itself\n const isOutsidePopover = !elementContains(popoverRef.current ?? null, someMenuPopover);\n if (isOutsidePopover && !disabled) {\n callback(ev);\n }\n });\n\n React.useEffect(() => {\n // eslint-disable-next-line eqeqeq\n if (element == null) {\n return;\n }\n\n /**\n * Because `addEventListener` type override falls back to 2nd definition (evt name is unknown string literal)\n * evt is being typed as a base class of MouseEvent -> `Event`.\n * This type is used to override `listener` calls to make TS happy\n */\n\n type ListenerOverride = (evt: Event) => void;\n\n if (!disabled) {\n element.addEventListener(MENU_ENTER_EVENT, listener as ListenerOverride);\n }\n\n return () => {\n element.removeEventListener(MENU_ENTER_EVENT, listener as ListenerOverride);\n };\n }, [listener, element, disabled]);\n};\n\n/**\n * Dispatches the custom MouseEvent enter event. Similar to calling `el.click()`\n * @param el element for the event target\n * @param nativeEvent the native mouse event this is mapped to\n */\nexport const dispatchMenuEnterEvent = (el: HTMLElement, nativeEvent: MouseEvent) => {\n el.dispatchEvent(new CustomEvent(MENU_ENTER_EVENT, { bubbles: true, detail: { nativeEvent } }));\n};\n"],"mappings":"AAAA,YAAYA,KAAA,MAAW;AACvB,SAASC,gBAAgB,QAAQ;AACjC,SAASC,eAAe,QAAQ;AAGhC;;;AAGA,OAAO,MAAMC,gBAAA,GAAmB;AAEhC;;;;;;;;;;;AAWA,OAAO,MAAMC,mBAAA,GAAuBC,OAAA,IAA8C;EAChF,MAAM;IAAEC,IAAA;IAAMC,QAAA;IAAUC,OAAA;IAASC;EAAQ,CAAE,GAAGJ,OAAA;EAE9C;EACA,MAAMK,QAAA,GAAWT,gBAAA,CAAkBU,EAAA,IAAmB;IACpD,MAAMC,UAAA,GAAaN,IAAI,CAAC,EAAE;IAC1B,MAAMO,eAAA,GAAkBF,EAAA,CAAGG,MAAM;QAKSC,mBAAA;IAH1C;IACA;IACA;IACA,MAAMC,gBAAA,GAAmB,CAACd,eAAA,CAAgB,CAAAa,mBAAA,GAAAH,UAAA,CAAWK,OAAO,cAAlBF,mBAAA,cAAAA,mBAAA,GAAsB,IAAI,EAAEF,eAAA;IACtE,IAAIG,gBAAA,IAAoB,CAACP,QAAA,EAAU;MACjCF,QAAA,CAASI,EAAA;IACX;EACF;EAEAX,KAAA,CAAMkB,SAAS,CAAC,MAAM;IACpB;IACA,IAAIV,OAAA,IAAW,IAAI,EAAE;MACnB;IACF;IAUA,IAAI,CAACC,QAAA,EAAU;MACbD,OAAA,CAAQW,gBAAgB,CAAChB,gBAAA,EAAkBO,QAAA;IAC7C;IAEA,OAAO,MAAM;MACXF,OAAA,CAAQY,mBAAmB,CAACjB,gBAAA,EAAkBO,QAAA;IAChD;EACF,GAAG,CAACA,QAAA,EAAUF,OAAA,EAASC,QAAA,CAAS;AAClC;AAEA;;;;;AAKA,OAAO,MAAMY,sBAAA,GAAyBA,CAACC,EAAA,EAAiBC,WAAA,KAA4B;EAClFD,EAAA,CAAGE,aAAa,CAAC,IAAIC,WAAA,CAAYtB,gBAAA,EAAkB;IAAEuB,OAAA,EAAS,IAAI;IAAEC,MAAA,EAAQ;MAAEJ;IAAY;EAAE;AAC9F"}
1
+ {"version":3,"sources":["../../src/utils/useOnMenuEnter.ts"],"sourcesContent":["import * as React from 'react';\nimport { useEventCallback } from '@fluentui/react-utilities';\nimport { elementContains } from '@fluentui/react-portal';\nimport type { UseOnClickOrScrollOutsideOptions } from '@fluentui/react-utilities';\n\n/**\n * Name of the custom event\n */\nexport const MENU_ENTER_EVENT = 'fuimenuenter';\n\n/**\n * This hook works similarly to @see {useOnClickOutside}\n *\n * Problem: Trying to behave the same as system menus:\n * When the mouse leaves a stack of nested menus the stack should not dismiss.\n * However if the mouse leaves a stack of menus and enters a parent menu all its children menu should dismiss.\n *\n * We don't use the native mouseenter event because it would trigger too many times in the document\n * Instead, dispatch custom DOM event from the menu so that it can bubble\n * Each nested menu can use the listener to check if the event is from a child or parent menu\n */\nexport const useOnMenuMouseEnter = (options: UseOnClickOrScrollOutsideOptions) => {\n const { refs, callback, element, disabled } = options;\n\n // Keep mouse event here because this is essentially a custom 'mouseenter' event\n const listener = useEventCallback((ev: MouseEvent) => {\n const popoverRef = refs[0];\n const someMenuPopover = ev.target as HTMLElement;\n\n // someMenu is a child -> will always be contained because of vParents\n // someMenu is a parent -> will always not be contained because no vParent\n // someMenu is the current popover -> it will contain itself\n const isOutsidePopover = !elementContains(popoverRef.current ?? null, someMenuPopover);\n if (isOutsidePopover && !disabled) {\n callback(ev);\n }\n });\n\n React.useEffect(() => {\n // eslint-disable-next-line eqeqeq\n if (element == null) {\n return;\n }\n\n /**\n * Because `addEventListener` type override falls back to 2nd definition (evt name is unknown string literal)\n * evt is being typed as a base class of MouseEvent -> `Event`.\n * This type is used to override `listener` calls to make TS happy\n */\n\n type ListenerOverride = (evt: Event) => void;\n\n if (!disabled) {\n element.addEventListener(MENU_ENTER_EVENT, listener as ListenerOverride);\n }\n\n return () => {\n element.removeEventListener(MENU_ENTER_EVENT, listener as ListenerOverride);\n };\n }, [listener, element, disabled]);\n};\n\n/**\n * Dispatches the custom MouseEvent enter event. Similar to calling `el.click()`\n * @param el element for the event target\n * @param nativeEvent the native mouse event this is mapped to\n */\nexport const dispatchMenuEnterEvent = (el: HTMLElement, nativeEvent: MouseEvent) => {\n el.dispatchEvent(new CustomEvent(MENU_ENTER_EVENT, { bubbles: true, detail: { nativeEvent } }));\n};\n"],"names":["React","useEventCallback","elementContains","MENU_ENTER_EVENT","useOnMenuMouseEnter","options","refs","callback","element","disabled","listener","ev","popoverRef","someMenuPopover","target","isOutsidePopover","current","useEffect","addEventListener","removeEventListener","dispatchMenuEnterEvent","el","nativeEvent","dispatchEvent","CustomEvent","bubbles","detail"],"mappings":"AAAA,YAAYA,WAAW,QAAQ;AAC/B,SAASC,gBAAgB,QAAQ,4BAA4B;AAC7D,SAASC,eAAe,QAAQ,yBAAyB;AAGzD;;CAEC,GACD,OAAO,MAAMC,mBAAmB,eAAe;AAE/C;;;;;;;;;;CAUC,GACD,OAAO,MAAMC,sBAAsB,CAACC,UAA8C;IAChF,MAAM,EAAEC,KAAI,EAAEC,SAAQ,EAAEC,QAAO,EAAEC,SAAQ,EAAE,GAAGJ;IAE9C,gFAAgF;IAChF,MAAMK,WAAWT,iBAAiB,CAACU,KAAmB;QACpD,MAAMC,aAAaN,IAAI,CAAC,EAAE;QAC1B,MAAMO,kBAAkBF,GAAGG,MAAM;YAKSF;QAH1C,sEAAsE;QACtE,0EAA0E;QAC1E,4DAA4D;QAC5D,MAAMG,mBAAmB,CAACb,gBAAgBU,CAAAA,sBAAAA,WAAWI,OAAO,cAAlBJ,iCAAAA,sBAAsB,IAAI,EAAEC;QACtE,IAAIE,oBAAoB,CAACN,UAAU;YACjCF,SAASI;QACX,CAAC;IACH;IAEAX,MAAMiB,SAAS,CAAC,IAAM;QACpB,kCAAkC;QAClC,IAAIT,WAAW,IAAI,EAAE;YACnB;QACF,CAAC;QAUD,IAAI,CAACC,UAAU;YACbD,QAAQU,gBAAgB,CAACf,kBAAkBO;QAC7C,CAAC;QAED,OAAO,IAAM;YACXF,QAAQW,mBAAmB,CAAChB,kBAAkBO;QAChD;IACF,GAAG;QAACA;QAAUF;QAASC;KAAS;AAClC,EAAE;AAEF;;;;CAIC,GACD,OAAO,MAAMW,yBAAyB,CAACC,IAAiBC,cAA4B;IAClFD,GAAGE,aAAa,CAAC,IAAIC,YAAYrB,kBAAkB;QAAEsB,SAAS,IAAI;QAAEC,QAAQ;YAAEJ;QAAY;IAAE;AAC9F,EAAE"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../lib/Menu.js"],"sourcesContent":["export * from './components/Menu/index';\n//# sourceMappingURL=Menu.js.map"],"names":[],"mappings":";;;;;oBAAc;CACd,gCAAgC"}
1
+ {"version":3,"sources":["../lib/Menu.js"],"sourcesContent":["export * from './components/Menu/index';\n\n//# sourceMappingURL=Menu.js.map"],"names":[],"mappings":";;;;;oBAAc;CAEd,gCAAgC"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../lib/MenuDivider.js"],"sourcesContent":["export * from './components/MenuDivider/index';\n//# sourceMappingURL=MenuDivider.js.map"],"names":[],"mappings":";;;;;oBAAc;CACd,uCAAuC"}
1
+ {"version":3,"sources":["../lib/MenuDivider.js"],"sourcesContent":["export * from './components/MenuDivider/index';\n\n//# sourceMappingURL=MenuDivider.js.map"],"names":[],"mappings":";;;;;oBAAc;CAEd,uCAAuC"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../lib/MenuGroup.js"],"sourcesContent":["export * from './components/MenuGroup/index';\n//# sourceMappingURL=MenuGroup.js.map"],"names":[],"mappings":";;;;;oBAAc;CACd,qCAAqC"}
1
+ {"version":3,"sources":["../lib/MenuGroup.js"],"sourcesContent":["export * from './components/MenuGroup/index';\n\n//# sourceMappingURL=MenuGroup.js.map"],"names":[],"mappings":";;;;;oBAAc;CAEd,qCAAqC"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../lib/MenuGroupHeader.js"],"sourcesContent":["export * from './components/MenuGroupHeader/index';\n//# sourceMappingURL=MenuGroupHeader.js.map"],"names":[],"mappings":";;;;;oBAAc;CACd,2CAA2C"}
1
+ {"version":3,"sources":["../lib/MenuGroupHeader.js"],"sourcesContent":["export * from './components/MenuGroupHeader/index';\n\n//# sourceMappingURL=MenuGroupHeader.js.map"],"names":[],"mappings":";;;;;oBAAc;CAEd,2CAA2C"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../lib/MenuItem.js"],"sourcesContent":["export * from './components/MenuItem/index';\n//# sourceMappingURL=MenuItem.js.map"],"names":[],"mappings":";;;;;oBAAc;CACd,oCAAoC"}
1
+ {"version":3,"sources":["../lib/MenuItem.js"],"sourcesContent":["export * from './components/MenuItem/index';\n\n//# sourceMappingURL=MenuItem.js.map"],"names":[],"mappings":";;;;;oBAAc;CAEd,oCAAoC"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../lib/MenuItemCheckbox.js"],"sourcesContent":["export * from './components/MenuItemCheckbox/index';\n//# sourceMappingURL=MenuItemCheckbox.js.map"],"names":[],"mappings":";;;;;oBAAc;CACd,4CAA4C"}
1
+ {"version":3,"sources":["../lib/MenuItemCheckbox.js"],"sourcesContent":["export * from './components/MenuItemCheckbox/index';\n\n//# sourceMappingURL=MenuItemCheckbox.js.map"],"names":[],"mappings":";;;;;oBAAc;CAEd,4CAA4C"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../lib/MenuItemRadio.js"],"sourcesContent":["export * from './components/MenuItemRadio/index';\n//# sourceMappingURL=MenuItemRadio.js.map"],"names":[],"mappings":";;;;;oBAAc;CACd,yCAAyC"}
1
+ {"version":3,"sources":["../lib/MenuItemRadio.js"],"sourcesContent":["export * from './components/MenuItemRadio/index';\n\n//# sourceMappingURL=MenuItemRadio.js.map"],"names":[],"mappings":";;;;;oBAAc;CAEd,yCAAyC"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../lib/MenuList.js"],"sourcesContent":["export * from './components/MenuList/index';\n//# sourceMappingURL=MenuList.js.map"],"names":[],"mappings":";;;;;oBAAc;CACd,oCAAoC"}
1
+ {"version":3,"sources":["../lib/MenuList.js"],"sourcesContent":["export * from './components/MenuList/index';\n\n//# sourceMappingURL=MenuList.js.map"],"names":[],"mappings":";;;;;oBAAc;CAEd,oCAAoC"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../lib/MenuPopover.js"],"sourcesContent":["export * from './components/MenuPopover/index';\n//# sourceMappingURL=MenuPopover.js.map"],"names":[],"mappings":";;;;;oBAAc;CACd,uCAAuC"}
1
+ {"version":3,"sources":["../lib/MenuPopover.js"],"sourcesContent":["export * from './components/MenuPopover/index';\n\n//# sourceMappingURL=MenuPopover.js.map"],"names":[],"mappings":";;;;;oBAAc;CAEd,uCAAuC"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../lib/MenuSplitGroup.js"],"sourcesContent":["export * from './components/MenuSplitGroup/index';\n//# sourceMappingURL=MenuSplitGroup.js.map"],"names":[],"mappings":";;;;;oBAAc;CACd,0CAA0C"}
1
+ {"version":3,"sources":["../lib/MenuSplitGroup.js"],"sourcesContent":["export * from './components/MenuSplitGroup/index';\n\n//# sourceMappingURL=MenuSplitGroup.js.map"],"names":[],"mappings":";;;;;oBAAc;CAEd,0CAA0C"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../lib/MenuTrigger.js"],"sourcesContent":["export * from './components/MenuTrigger/index';\n//# sourceMappingURL=MenuTrigger.js.map"],"names":[],"mappings":";;;;;oBAAc;CACd,uCAAuC"}
1
+ {"version":3,"sources":["../lib/MenuTrigger.js"],"sourcesContent":["export * from './components/MenuTrigger/index';\n\n//# sourceMappingURL=MenuTrigger.js.map"],"names":[],"mappings":";;;;;oBAAc;CAEd,uCAAuC"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../lib/components/Menu/Menu.js"],"sourcesContent":["import * as React from 'react';\nimport { useMenu_unstable } from './useMenu';\nimport { useMenuContextValues_unstable } from './useMenuContextValues';\nimport { renderMenu_unstable } from './renderMenu';\n/**\n * Wrapper component that manages state for a popup MenuList and a MenuTrigger\n */\nexport const Menu = props => {\n const state = useMenu_unstable(props);\n const contextValues = useMenuContextValues_unstable(state);\n return renderMenu_unstable(state, contextValues);\n};\nMenu.displayName = 'Menu';\n//# sourceMappingURL=Menu.js.map"],"names":["Menu","props","state","useMenu_unstable","contextValues","useMenuContextValues_unstable","renderMenu_unstable","displayName"],"mappings":";;;;+BAOaA;;aAAAA;;;6DAPU;yBACU;sCACa;4BACV;AAI7B,MAAMA,OAAOC,CAAAA,QAAS;IAC3B,MAAMC,QAAQC,IAAAA,yBAAgB,EAACF;IAC/B,MAAMG,gBAAgBC,IAAAA,mDAA6B,EAACH;IACpD,OAAOI,IAAAA,+BAAmB,EAACJ,OAAOE;AACpC;AACAJ,KAAKO,WAAW,GAAG,QACnB,gCAAgC"}
1
+ {"version":3,"sources":["../../../lib/components/Menu/Menu.js"],"sourcesContent":["import * as React from 'react';\nimport { useMenu_unstable } from './useMenu';\nimport { useMenuContextValues_unstable } from './useMenuContextValues';\nimport { renderMenu_unstable } from './renderMenu';\n/**\n * Wrapper component that manages state for a popup MenuList and a MenuTrigger\n */ export const Menu = (props)=>{\n const state = useMenu_unstable(props);\n const contextValues = useMenuContextValues_unstable(state);\n return renderMenu_unstable(state, contextValues);\n};\nMenu.displayName = 'Menu';\n\n//# sourceMappingURL=Menu.js.map"],"names":["Menu","props","state","useMenu_unstable","contextValues","useMenuContextValues_unstable","renderMenu_unstable","displayName"],"mappings":";;;;+BAMiBA;;aAAAA;;;6DANM;yBACU;sCACa;4BACV;AAGzB,MAAMA,OAAO,CAACC,QAAQ;IAC7B,MAAMC,QAAQC,IAAAA,yBAAgB,EAACF;IAC/B,MAAMG,gBAAgBC,IAAAA,mDAA6B,EAACH;IACpD,OAAOI,IAAAA,+BAAmB,EAACJ,OAAOE;AACtC;AACAJ,KAAKO,WAAW,GAAG,QAEnB,gCAAgC"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../lib/components/Menu/Menu.types.js"],"sourcesContent":["import * as React from 'react';\n//# sourceMappingURL=Menu.types.js.map"],"names":[],"mappings":";;;;;6DAAuB;CACvB,sCAAsC"}
1
+ {"version":3,"sources":["../../../lib/components/Menu/Menu.types.js"],"sourcesContent":["import * as React from 'react';\n\n//# sourceMappingURL=Menu.types.js.map"],"names":[],"mappings":";;;;;6DAAuB;CAEvB,sCAAsC"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../lib/components/Menu/index.js"],"sourcesContent":["export * from './Menu';\nexport * from './Menu.types';\nexport * from './renderMenu';\nexport * from './useMenu';\nexport * from './useMenuContextValues';\n//# sourceMappingURL=index.js.map"],"names":[],"mappings":";;;;;oBAAc;oBACA;oBACA;oBACA;oBACA;CACd,iCAAiC"}
1
+ {"version":3,"sources":["../../../lib/components/Menu/index.js"],"sourcesContent":["export * from './Menu';\nexport * from './Menu.types';\nexport * from './renderMenu';\nexport * from './useMenu';\nexport * from './useMenuContextValues';\n\n//# sourceMappingURL=index.js.map"],"names":[],"mappings":";;;;;oBAAc;oBACA;oBACA;oBACA;oBACA;CAEd,iCAAiC"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../lib/components/Menu/renderMenu.js"],"sourcesContent":["import * as React from 'react';\nimport { MenuProvider } from '../../contexts/menuContext';\n/**\n * Render the final JSX of Menu\n */\nexport const renderMenu_unstable = (state, contextValues) => {\n return /*#__PURE__*/React.createElement(MenuProvider, {\n value: contextValues.menu\n }, state.menuTrigger, state.open && state.menuPopover);\n};\n//# sourceMappingURL=renderMenu.js.map"],"names":["renderMenu_unstable","state","contextValues","React","createElement","MenuProvider","value","menu","menuTrigger","open","menuPopover"],"mappings":";;;;+BAKaA;;aAAAA;;;6DALU;6BACM;AAItB,MAAMA,sBAAsB,CAACC,OAAOC,gBAAkB;IAC3D,OAAO,WAAW,GAAEC,OAAMC,aAAa,CAACC,yBAAY,EAAE;QACpDC,OAAOJ,cAAcK,IAAI;IAC3B,GAAGN,MAAMO,WAAW,EAAEP,MAAMQ,IAAI,IAAIR,MAAMS,WAAW;AACvD,GACA,sCAAsC"}
1
+ {"version":3,"sources":["../../../lib/components/Menu/renderMenu.js"],"sourcesContent":["import * as React from 'react';\nimport { MenuProvider } from '../../contexts/menuContext';\n/**\n * Render the final JSX of Menu\n */ export const renderMenu_unstable = (state, contextValues)=>{\n return /*#__PURE__*/ React.createElement(MenuProvider, {\n value: contextValues.menu\n }, state.menuTrigger, state.open && state.menuPopover);\n};\n\n//# sourceMappingURL=renderMenu.js.map"],"names":["renderMenu_unstable","state","contextValues","React","createElement","MenuProvider","value","menu","menuTrigger","open","menuPopover"],"mappings":";;;;+BAIiBA;;aAAAA;;;6DAJM;6BACM;AAGlB,MAAMA,sBAAsB,CAACC,OAAOC,gBAAgB;IAC3D,OAAO,WAAW,GAAGC,OAAMC,aAAa,CAACC,yBAAY,EAAE;QACnDC,OAAOJ,cAAcK,IAAI;IAC7B,GAAGN,MAAMO,WAAW,EAAEP,MAAMQ,IAAI,IAAIR,MAAMS,WAAW;AACzD,GAEA,sCAAsC"}
@@ -248,8 +248,7 @@ const useMenuOpenState = (state)=>{
248
248
  } else {
249
249
  if (!firstMount) {
250
250
  if ((targetDocument === null || targetDocument === void 0 ? void 0 : targetDocument.activeElement) === (targetDocument === null || targetDocument === void 0 ? void 0 : targetDocument.body)) {
251
- var // We know that React effects are sync so we focus the trigger here
252
- // after any event handler (event handlers will update state and re-render).
251
+ var // after any event handler (event handlers will update state and re-render).
253
252
  // Since the browser only performs the default behaviour for the Tab key once
254
253
  // keyboard events have fully bubbled up the window, the browser will move
255
254
  // focus to the next tabbable element before/after the trigger if needed.
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../lib/components/Menu/useMenu.js"],"sourcesContent":["import * as React from 'react';\nimport { usePositioningMouseTarget, usePositioning, resolvePositioningShorthand } from '@fluentui/react-positioning';\nimport { useControllableState, useId, useOnClickOutside, useEventCallback, useOnScrollOutside, useFirstMount } from '@fluentui/react-utilities';\nimport { useFluent_unstable as useFluent } from '@fluentui/react-shared-contexts';\nimport { elementContains } from '@fluentui/react-portal';\nimport { useFocusFinders } from '@fluentui/react-tabster';\nimport { useMenuContext_unstable } from '../../contexts/menuContext';\nimport { MENU_ENTER_EVENT, useOnMenuMouseEnter } from '../../utils/index';\nimport { useIsSubmenu } from '../../utils/useIsSubmenu';\n// If it's not possible to position the submenu in smaller viewports, try\n// and fallback to this order of positions\nconst submenuFallbackPositions = ['after', 'after-bottom', 'before-top', 'before', 'before-bottom', 'above'];\n/**\n * Create the state required to render Menu.\n *\n * The returned state can be modified with hooks such as useMenuStyles,\n * before being passed to renderMenu_unstable.\n *\n * @param props - props from this instance of Menu\n */\nexport const useMenu_unstable = props => {\n const isSubmenu = useIsSubmenu();\n const {\n hoverDelay = 500,\n inline = false,\n hasCheckmarks = false,\n hasIcons = false,\n closeOnScroll = false,\n openOnContext = false,\n persistOnItemClick = false,\n openOnHover = isSubmenu,\n defaultCheckedValues,\n mountNode = null\n } = props;\n const triggerId = useId('menu');\n const [contextTarget, setContextTarget] = usePositioningMouseTarget();\n const positioningState = {\n position: isSubmenu ? 'after' : 'below',\n align: isSubmenu ? 'top' : 'start',\n target: props.openOnContext ? contextTarget : undefined,\n fallbackPositions: isSubmenu ? submenuFallbackPositions : undefined,\n ...resolvePositioningShorthand(props.positioning)\n };\n const children = React.Children.toArray(props.children);\n if (process.env.NODE_ENV !== 'production') {\n if (children.length === 0) {\n // eslint-disable-next-line no-console\n console.warn('Menu must contain at least one child');\n }\n if (children.length > 2) {\n // eslint-disable-next-line no-console\n console.warn('Menu must contain at most two children');\n }\n }\n let menuTrigger = undefined;\n let menuPopover = undefined;\n if (children.length === 2) {\n menuTrigger = children[0];\n menuPopover = children[1];\n } else if (children.length === 1) {\n menuPopover = children[0];\n }\n const {\n targetRef: triggerRef,\n containerRef: menuPopoverRef\n } = usePositioning(positioningState);\n // TODO Better way to narrow types ?\n const [open, setOpen] = useMenuOpenState({\n hoverDelay,\n isSubmenu,\n setContextTarget,\n closeOnScroll,\n menuPopoverRef,\n triggerRef,\n open: props.open,\n defaultOpen: props.defaultOpen,\n onOpenChange: props.onOpenChange,\n openOnContext\n });\n const [checkedValues, onCheckedValueChange] = useMenuSelectableState({\n checkedValues: props.checkedValues,\n defaultCheckedValues,\n onCheckedValueChange: props.onCheckedValueChange\n });\n return {\n inline,\n hoverDelay,\n triggerId,\n isSubmenu,\n openOnHover,\n contextTarget,\n setContextTarget,\n hasCheckmarks,\n hasIcons,\n closeOnScroll,\n menuTrigger,\n menuPopover,\n mountNode,\n triggerRef,\n menuPopoverRef,\n components: {},\n openOnContext,\n open,\n setOpen,\n checkedValues,\n onCheckedValueChange,\n persistOnItemClick\n };\n};\n/**\n * Adds appropriate state values and handlers for selectable items\n * i.e checkboxes and radios\n */\nconst useMenuSelectableState = props => {\n const [checkedValues, setCheckedValues] = useControllableState({\n state: props.checkedValues,\n defaultState: props.defaultCheckedValues,\n initialState: {}\n });\n const onCheckedValueChange = useEventCallback((e, {\n name,\n checkedItems\n }) => {\n var _props_onCheckedValueChange;\n (_props_onCheckedValueChange = props.onCheckedValueChange) === null || _props_onCheckedValueChange === void 0 ? void 0 : _props_onCheckedValueChange.call(props, e, {\n name,\n checkedItems\n });\n setCheckedValues(currentValue => ({\n ...currentValue,\n [name]: checkedItems\n }));\n });\n return [checkedValues, onCheckedValueChange];\n};\nconst useMenuOpenState = state => {\n const {\n targetDocument\n } = useFluent();\n const parentSetOpen = useMenuContext_unstable(context => context.setOpen);\n const onOpenChange = useEventCallback((e, data) => {\n var _state_onOpenChange;\n return (_state_onOpenChange = state.onOpenChange) === null || _state_onOpenChange === void 0 ? void 0 : _state_onOpenChange.call(state, e, data);\n });\n const setOpenTimeout = React.useRef(0);\n const enteringTriggerRef = React.useRef(false);\n const [open, setOpenState] = useControllableState({\n state: state.open,\n defaultState: state.defaultOpen,\n initialState: false\n });\n const trySetOpen = useEventCallback((e, data) => {\n const event = e instanceof CustomEvent && e.type === MENU_ENTER_EVENT ? e.detail.nativeEvent : e;\n onOpenChange === null || onOpenChange === void 0 ? void 0 : onOpenChange(event, {\n ...data\n });\n if (data.open && e.type === 'contextmenu') {\n state.setContextTarget(e);\n }\n if (!data.open) {\n state.setContextTarget(undefined);\n }\n if (data.bubble) {\n parentSetOpen(e, {\n ...data\n });\n }\n setOpenState(data.open);\n });\n const setOpen = useEventCallback((e, data) => {\n clearTimeout(setOpenTimeout.current);\n if (!(e instanceof Event) && e.persist) {\n // < React 17 still uses pooled synthetic events\n e.persist();\n }\n if (e.type === 'mouseleave' || e.type === 'mouseenter' || e.type === 'mousemove' || e.type === MENU_ENTER_EVENT) {\n var _state_triggerRef_current;\n if ((_state_triggerRef_current = state.triggerRef.current) === null || _state_triggerRef_current === void 0 ? void 0 : _state_triggerRef_current.contains(e.target)) {\n enteringTriggerRef.current = e.type === 'mouseenter' || e.type === 'mousemove';\n }\n // FIXME leaking Node timeout type\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n setOpenTimeout.current = setTimeout(() => trySetOpen(e, data), state.hoverDelay);\n } else {\n trySetOpen(e, data);\n }\n });\n useOnClickOutside({\n contains: elementContains,\n disabled: !open,\n element: targetDocument,\n refs: [state.menuPopoverRef, !state.openOnContext && state.triggerRef].filter(Boolean),\n callback: event => setOpen(event, {\n open: false,\n type: 'clickOutside',\n event\n })\n });\n // only close on scroll for context, or when closeOnScroll is specified\n const closeOnScroll = state.openOnContext || state.closeOnScroll;\n useOnScrollOutside({\n contains: elementContains,\n element: targetDocument,\n callback: event => setOpen(event, {\n open: false,\n type: 'scrollOutside',\n event\n }),\n refs: [state.menuPopoverRef, !state.openOnContext && state.triggerRef].filter(Boolean),\n disabled: !open || !closeOnScroll\n });\n useOnMenuMouseEnter({\n element: targetDocument,\n callback: event => {\n // When moving from a menu directly back to its trigger, this handler can close the menu\n // Explicitly check a flag to see if this situation happens\n if (!enteringTriggerRef.current) {\n setOpen(event, {\n open: false,\n type: 'menuMouseEnter',\n event\n });\n }\n },\n disabled: !open,\n refs: [state.menuPopoverRef]\n });\n // Clear timeout on unmount\n // Setting state after a component unmounts can cause memory leaks\n React.useEffect(() => {\n return () => {\n clearTimeout(setOpenTimeout.current);\n };\n }, []);\n // Manage focus for open state\n const {\n findFirstFocusable\n } = useFocusFinders();\n const focusFirst = React.useCallback(() => {\n const firstFocusable = findFirstFocusable(state.menuPopoverRef.current);\n firstFocusable === null || firstFocusable === void 0 ? void 0 : firstFocusable.focus();\n }, [findFirstFocusable, state.menuPopoverRef]);\n const firstMount = useFirstMount();\n React.useEffect(() => {\n if (open) {\n focusFirst();\n } else {\n if (!firstMount) {\n if ((targetDocument === null || targetDocument === void 0 ? void 0 : targetDocument.activeElement) === (targetDocument === null || targetDocument === void 0 ? void 0 : targetDocument.body)) {\n var\n // We know that React effects are sync so we focus the trigger here\n // after any event handler (event handlers will update state and re-render).\n // Since the browser only performs the default behaviour for the Tab key once\n // keyboard events have fully bubbled up the window, the browser will move\n // focus to the next tabbable element before/after the trigger if needed.\n // If the Tab key was not pressed, focus will remain on the trigger as expected.\n _state_triggerRef_current;\n (_state_triggerRef_current = state.triggerRef.current) === null || _state_triggerRef_current === void 0 ? void 0 : _state_triggerRef_current.focus();\n }\n }\n }\n // firstMount change should not re-run this effect\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [state.triggerRef, state.isSubmenu, open, focusFirst, targetDocument, state.menuPopoverRef]);\n return [open, setOpen];\n};\n//# sourceMappingURL=useMenu.js.map"],"names":["useMenu_unstable","submenuFallbackPositions","props","isSubmenu","useIsSubmenu","hoverDelay","inline","hasCheckmarks","hasIcons","closeOnScroll","openOnContext","persistOnItemClick","openOnHover","defaultCheckedValues","mountNode","triggerId","useId","contextTarget","setContextTarget","usePositioningMouseTarget","positioningState","position","align","target","undefined","fallbackPositions","resolvePositioningShorthand","positioning","children","React","Children","toArray","process","env","NODE_ENV","length","console","warn","menuTrigger","menuPopover","targetRef","triggerRef","containerRef","menuPopoverRef","usePositioning","open","setOpen","useMenuOpenState","defaultOpen","onOpenChange","checkedValues","onCheckedValueChange","useMenuSelectableState","components","setCheckedValues","useControllableState","state","defaultState","initialState","useEventCallback","e","name","checkedItems","_props_onCheckedValueChange","call","currentValue","targetDocument","useFluent","parentSetOpen","useMenuContext_unstable","context","data","_state_onOpenChange","setOpenTimeout","useRef","enteringTriggerRef","setOpenState","trySetOpen","event","CustomEvent","type","MENU_ENTER_EVENT","detail","nativeEvent","bubble","clearTimeout","current","Event","persist","_state_triggerRef_current","contains","setTimeout","useOnClickOutside","elementContains","disabled","element","refs","filter","Boolean","callback","useOnScrollOutside","useOnMenuMouseEnter","useEffect","findFirstFocusable","useFocusFinders","focusFirst","useCallback","firstFocusable","focus","firstMount","useFirstMount","activeElement","body"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../lib/components/Menu/useMenu.js"],"sourcesContent":["import * as React from 'react';\nimport { usePositioningMouseTarget, usePositioning, resolvePositioningShorthand } from '@fluentui/react-positioning';\nimport { useControllableState, useId, useOnClickOutside, useEventCallback, useOnScrollOutside, useFirstMount } from '@fluentui/react-utilities';\nimport { useFluent_unstable as useFluent } from '@fluentui/react-shared-contexts';\nimport { elementContains } from '@fluentui/react-portal';\nimport { useFocusFinders } from '@fluentui/react-tabster';\nimport { useMenuContext_unstable } from '../../contexts/menuContext';\nimport { MENU_ENTER_EVENT, useOnMenuMouseEnter } from '../../utils/index';\nimport { useIsSubmenu } from '../../utils/useIsSubmenu';\n// If it's not possible to position the submenu in smaller viewports, try\n// and fallback to this order of positions\nconst submenuFallbackPositions = [\n 'after',\n 'after-bottom',\n 'before-top',\n 'before',\n 'before-bottom',\n 'above'\n];\n/**\n * Create the state required to render Menu.\n *\n * The returned state can be modified with hooks such as useMenuStyles,\n * before being passed to renderMenu_unstable.\n *\n * @param props - props from this instance of Menu\n */ export const useMenu_unstable = (props)=>{\n const isSubmenu = useIsSubmenu();\n const { hoverDelay =500 , inline =false , hasCheckmarks =false , hasIcons =false , closeOnScroll =false , openOnContext =false , persistOnItemClick =false , openOnHover =isSubmenu , defaultCheckedValues , mountNode =null } = props;\n const triggerId = useId('menu');\n const [contextTarget, setContextTarget] = usePositioningMouseTarget();\n const positioningState = {\n position: isSubmenu ? 'after' : 'below',\n align: isSubmenu ? 'top' : 'start',\n target: props.openOnContext ? contextTarget : undefined,\n fallbackPositions: isSubmenu ? submenuFallbackPositions : undefined,\n ...resolvePositioningShorthand(props.positioning)\n };\n const children = React.Children.toArray(props.children);\n if (process.env.NODE_ENV !== 'production') {\n if (children.length === 0) {\n // eslint-disable-next-line no-console\n console.warn('Menu must contain at least one child');\n }\n if (children.length > 2) {\n // eslint-disable-next-line no-console\n console.warn('Menu must contain at most two children');\n }\n }\n let menuTrigger = undefined;\n let menuPopover = undefined;\n if (children.length === 2) {\n menuTrigger = children[0];\n menuPopover = children[1];\n } else if (children.length === 1) {\n menuPopover = children[0];\n }\n const { targetRef: triggerRef , containerRef: menuPopoverRef } = usePositioning(positioningState);\n // TODO Better way to narrow types ?\n const [open, setOpen] = useMenuOpenState({\n hoverDelay,\n isSubmenu,\n setContextTarget,\n closeOnScroll,\n menuPopoverRef,\n triggerRef,\n open: props.open,\n defaultOpen: props.defaultOpen,\n onOpenChange: props.onOpenChange,\n openOnContext\n });\n const [checkedValues, onCheckedValueChange] = useMenuSelectableState({\n checkedValues: props.checkedValues,\n defaultCheckedValues,\n onCheckedValueChange: props.onCheckedValueChange\n });\n return {\n inline,\n hoverDelay,\n triggerId,\n isSubmenu,\n openOnHover,\n contextTarget,\n setContextTarget,\n hasCheckmarks,\n hasIcons,\n closeOnScroll,\n menuTrigger,\n menuPopover,\n mountNode,\n triggerRef,\n menuPopoverRef,\n components: {},\n openOnContext,\n open,\n setOpen,\n checkedValues,\n onCheckedValueChange,\n persistOnItemClick\n };\n};\n/**\n * Adds appropriate state values and handlers for selectable items\n * i.e checkboxes and radios\n */ const useMenuSelectableState = (props)=>{\n const [checkedValues, setCheckedValues] = useControllableState({\n state: props.checkedValues,\n defaultState: props.defaultCheckedValues,\n initialState: {}\n });\n const onCheckedValueChange = useEventCallback((e, { name , checkedItems })=>{\n var _props_onCheckedValueChange;\n (_props_onCheckedValueChange = props.onCheckedValueChange) === null || _props_onCheckedValueChange === void 0 ? void 0 : _props_onCheckedValueChange.call(props, e, {\n name,\n checkedItems\n });\n setCheckedValues((currentValue)=>({\n ...currentValue,\n [name]: checkedItems\n }));\n });\n return [\n checkedValues,\n onCheckedValueChange\n ];\n};\nconst useMenuOpenState = (state)=>{\n const { targetDocument } = useFluent();\n const parentSetOpen = useMenuContext_unstable((context)=>context.setOpen);\n const onOpenChange = useEventCallback((e, data)=>{\n var _state_onOpenChange;\n return (_state_onOpenChange = state.onOpenChange) === null || _state_onOpenChange === void 0 ? void 0 : _state_onOpenChange.call(state, e, data);\n });\n const setOpenTimeout = React.useRef(0);\n const enteringTriggerRef = React.useRef(false);\n const [open, setOpenState] = useControllableState({\n state: state.open,\n defaultState: state.defaultOpen,\n initialState: false\n });\n const trySetOpen = useEventCallback((e, data)=>{\n const event = e instanceof CustomEvent && e.type === MENU_ENTER_EVENT ? e.detail.nativeEvent : e;\n onOpenChange === null || onOpenChange === void 0 ? void 0 : onOpenChange(event, {\n ...data\n });\n if (data.open && e.type === 'contextmenu') {\n state.setContextTarget(e);\n }\n if (!data.open) {\n state.setContextTarget(undefined);\n }\n if (data.bubble) {\n parentSetOpen(e, {\n ...data\n });\n }\n setOpenState(data.open);\n });\n const setOpen = useEventCallback((e, data)=>{\n clearTimeout(setOpenTimeout.current);\n if (!(e instanceof Event) && e.persist) {\n // < React 17 still uses pooled synthetic events\n e.persist();\n }\n if (e.type === 'mouseleave' || e.type === 'mouseenter' || e.type === 'mousemove' || e.type === MENU_ENTER_EVENT) {\n var _state_triggerRef_current;\n if ((_state_triggerRef_current = state.triggerRef.current) === null || _state_triggerRef_current === void 0 ? void 0 : _state_triggerRef_current.contains(e.target)) {\n enteringTriggerRef.current = e.type === 'mouseenter' || e.type === 'mousemove';\n }\n // FIXME leaking Node timeout type\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n setOpenTimeout.current = setTimeout(()=>trySetOpen(e, data), state.hoverDelay);\n } else {\n trySetOpen(e, data);\n }\n });\n useOnClickOutside({\n contains: elementContains,\n disabled: !open,\n element: targetDocument,\n refs: [\n state.menuPopoverRef,\n !state.openOnContext && state.triggerRef\n ].filter(Boolean),\n callback: (event)=>setOpen(event, {\n open: false,\n type: 'clickOutside',\n event\n })\n });\n // only close on scroll for context, or when closeOnScroll is specified\n const closeOnScroll = state.openOnContext || state.closeOnScroll;\n useOnScrollOutside({\n contains: elementContains,\n element: targetDocument,\n callback: (event)=>setOpen(event, {\n open: false,\n type: 'scrollOutside',\n event\n }),\n refs: [\n state.menuPopoverRef,\n !state.openOnContext && state.triggerRef\n ].filter(Boolean),\n disabled: !open || !closeOnScroll\n });\n useOnMenuMouseEnter({\n element: targetDocument,\n callback: (event)=>{\n // When moving from a menu directly back to its trigger, this handler can close the menu\n // Explicitly check a flag to see if this situation happens\n if (!enteringTriggerRef.current) {\n setOpen(event, {\n open: false,\n type: 'menuMouseEnter',\n event\n });\n }\n },\n disabled: !open,\n refs: [\n state.menuPopoverRef\n ]\n });\n // Clear timeout on unmount\n // Setting state after a component unmounts can cause memory leaks\n React.useEffect(()=>{\n return ()=>{\n clearTimeout(setOpenTimeout.current);\n };\n }, []);\n // Manage focus for open state\n const { findFirstFocusable } = useFocusFinders();\n const focusFirst = React.useCallback(()=>{\n const firstFocusable = findFirstFocusable(state.menuPopoverRef.current);\n firstFocusable === null || firstFocusable === void 0 ? void 0 : firstFocusable.focus();\n }, [\n findFirstFocusable,\n state.menuPopoverRef\n ]);\n const firstMount = useFirstMount();\n React.useEffect(()=>{\n if (open) {\n focusFirst();\n } else {\n if (!firstMount) {\n if ((targetDocument === null || targetDocument === void 0 ? void 0 : targetDocument.activeElement) === (targetDocument === null || targetDocument === void 0 ? void 0 : targetDocument.body)) {\n var // We know that React effects are sync so we focus the trigger here\n // after any event handler (event handlers will update state and re-render).\n // Since the browser only performs the default behaviour for the Tab key once\n // keyboard events have fully bubbled up the window, the browser will move\n // focus to the next tabbable element before/after the trigger if needed.\n // If the Tab key was not pressed, focus will remain on the trigger as expected.\n _state_triggerRef_current;\n (_state_triggerRef_current = state.triggerRef.current) === null || _state_triggerRef_current === void 0 ? void 0 : _state_triggerRef_current.focus();\n }\n }\n }\n // firstMount change should not re-run this effect\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [\n state.triggerRef,\n state.isSubmenu,\n open,\n focusFirst,\n targetDocument,\n state.menuPopoverRef\n ]);\n return [\n open,\n setOpen\n ];\n};\n\n//# sourceMappingURL=useMenu.js.map"],"names":["useMenu_unstable","submenuFallbackPositions","props","isSubmenu","useIsSubmenu","hoverDelay","inline","hasCheckmarks","hasIcons","closeOnScroll","openOnContext","persistOnItemClick","openOnHover","defaultCheckedValues","mountNode","triggerId","useId","contextTarget","setContextTarget","usePositioningMouseTarget","positioningState","position","align","target","undefined","fallbackPositions","resolvePositioningShorthand","positioning","children","React","Children","toArray","process","env","NODE_ENV","length","console","warn","menuTrigger","menuPopover","targetRef","triggerRef","containerRef","menuPopoverRef","usePositioning","open","setOpen","useMenuOpenState","defaultOpen","onOpenChange","checkedValues","onCheckedValueChange","useMenuSelectableState","components","setCheckedValues","useControllableState","state","defaultState","initialState","useEventCallback","e","name","checkedItems","_props_onCheckedValueChange","call","currentValue","targetDocument","useFluent","parentSetOpen","useMenuContext_unstable","context","data","_state_onOpenChange","setOpenTimeout","useRef","enteringTriggerRef","setOpenState","trySetOpen","event","CustomEvent","type","MENU_ENTER_EVENT","detail","nativeEvent","bubble","clearTimeout","current","Event","persist","_state_triggerRef_current","contains","setTimeout","useOnClickOutside","elementContains","disabled","element","refs","filter","Boolean","callback","useOnScrollOutside","useOnMenuMouseEnter","useEffect","findFirstFocusable","useFocusFinders","focusFirst","useCallback","firstFocusable","focus","firstMount","useFirstMount","activeElement","body"],"mappings":";;;;+BA0BiBA;;aAAAA;;;6DA1BM;kCACgE;gCAC6B;qCACpE;6BAChB;8BACA;6BACQ;uBACc;8BACzB;AAC7B,yEAAyE;AACzE,0CAA0C;AAC1C,MAAMC,2BAA2B;IAC7B;IACA;IACA;IACA;IACA;IACA;CACH;AAQU,MAAMD,mBAAmB,CAACE,QAAQ;IACzC,MAAMC,YAAYC,IAAAA,0BAAY;IAC9B,MAAM,EAAEC,YAAY,IAAG,EAAGC,QAAQ,KAAK,CAAA,EAAGC,eAAe,KAAK,CAAA,EAAGC,UAAU,KAAK,CAAA,EAAGC,eAAe,KAAK,CAAA,EAAGC,eAAe,KAAK,CAAA,EAAGC,oBAAoB,KAAK,CAAA,EAAGC,aAAaT,UAAS,EAAGU,qBAAoB,EAAGC,WAAW,IAAI,CAAA,EAAG,GAAGZ;IAClO,MAAMa,YAAYC,IAAAA,qBAAK,EAAC;IACxB,MAAM,CAACC,eAAeC,iBAAiB,GAAGC,IAAAA,2CAAyB;IACnE,MAAMC,mBAAmB;QACrBC,UAAUlB,YAAY,UAAU,OAAO;QACvCmB,OAAOnB,YAAY,QAAQ,OAAO;QAClCoB,QAAQrB,MAAMQ,aAAa,GAAGO,gBAAgBO,SAAS;QACvDC,mBAAmBtB,YAAYF,2BAA2BuB,SAAS;QACnE,GAAGE,IAAAA,6CAA2B,EAACxB,MAAMyB,WAAW,CAAC;IACrD;IACA,MAAMC,WAAWC,OAAMC,QAAQ,CAACC,OAAO,CAAC7B,MAAM0B,QAAQ;IACtD,IAAII,QAAQC,GAAG,CAACC,QAAQ,KAAK,cAAc;QACvC,IAAIN,SAASO,MAAM,KAAK,GAAG;YACvB,sCAAsC;YACtCC,QAAQC,IAAI,CAAC;QACjB,CAAC;QACD,IAAIT,SAASO,MAAM,GAAG,GAAG;YACrB,sCAAsC;YACtCC,QAAQC,IAAI,CAAC;QACjB,CAAC;IACL,CAAC;IACD,IAAIC,cAAcd;IAClB,IAAIe,cAAcf;IAClB,IAAII,SAASO,MAAM,KAAK,GAAG;QACvBG,cAAcV,QAAQ,CAAC,EAAE;QACzBW,cAAcX,QAAQ,CAAC,EAAE;IAC7B,OAAO,IAAIA,SAASO,MAAM,KAAK,GAAG;QAC9BI,cAAcX,QAAQ,CAAC,EAAE;IAC7B,CAAC;IACD,MAAM,EAAEY,WAAWC,WAAU,EAAGC,cAAcC,eAAc,EAAG,GAAGC,IAAAA,gCAAc,EAACxB;IACjF,oCAAoC;IACpC,MAAM,CAACyB,MAAMC,QAAQ,GAAGC,iBAAiB;QACrC1C;QACAF;QACAe;QACAT;QACAkC;QACAF;QACAI,MAAM3C,MAAM2C,IAAI;QAChBG,aAAa9C,MAAM8C,WAAW;QAC9BC,cAAc/C,MAAM+C,YAAY;QAChCvC;IACJ;IACA,MAAM,CAACwC,eAAeC,qBAAqB,GAAGC,uBAAuB;QACjEF,eAAehD,MAAMgD,aAAa;QAClCrC;QACAsC,sBAAsBjD,MAAMiD,oBAAoB;IACpD;IACA,OAAO;QACH7C;QACAD;QACAU;QACAZ;QACAS;QACAK;QACAC;QACAX;QACAC;QACAC;QACA6B;QACAC;QACAzB;QACA2B;QACAE;QACAU,YAAY,CAAC;QACb3C;QACAmC;QACAC;QACAI;QACAC;QACAxC;IACJ;AACJ;AACA;;;CAGC,GAAG,MAAMyC,yBAAyB,CAAClD,QAAQ;IACxC,MAAM,CAACgD,eAAeI,iBAAiB,GAAGC,IAAAA,oCAAoB,EAAC;QAC3DC,OAAOtD,MAAMgD,aAAa;QAC1BO,cAAcvD,MAAMW,oBAAoB;QACxC6C,cAAc,CAAC;IACnB;IACA,MAAMP,uBAAuBQ,IAAAA,gCAAgB,EAAC,CAACC,GAAG,EAAEC,KAAI,EAAGC,aAAY,EAAG,GAAG;QACzE,IAAIC;QACHA,CAAAA,8BAA8B7D,MAAMiD,oBAAoB,AAAD,MAAO,IAAI,IAAIY,gCAAgC,KAAK,IAAI,KAAK,IAAIA,4BAA4BC,IAAI,CAAC9D,OAAO0D,GAAG;YAChKC;YACAC;QACJ,EAAE;QACFR,iBAAiB,CAACW,eAAgB,CAAA;gBAC1B,GAAGA,YAAY;gBACf,CAACJ,KAAK,EAAEC;YACZ,CAAA;IACR;IACA,OAAO;QACHZ;QACAC;KACH;AACL;AACA,MAAMJ,mBAAmB,CAACS,QAAQ;IAC9B,MAAM,EAAEU,eAAc,EAAG,GAAGC,IAAAA,uCAAS;IACrC,MAAMC,gBAAgBC,IAAAA,oCAAuB,EAAC,CAACC,UAAUA,QAAQxB,OAAO;IACxE,MAAMG,eAAeU,IAAAA,gCAAgB,EAAC,CAACC,GAAGW,OAAO;QAC7C,IAAIC;QACJ,OAAO,AAACA,CAAAA,sBAAsBhB,MAAMP,YAAY,AAAD,MAAO,IAAI,IAAIuB,wBAAwB,KAAK,IAAI,KAAK,IAAIA,oBAAoBR,IAAI,CAACR,OAAOI,GAAGW,KAAK;IACpJ;IACA,MAAME,iBAAiB5C,OAAM6C,MAAM,CAAC;IACpC,MAAMC,qBAAqB9C,OAAM6C,MAAM,CAAC,KAAK;IAC7C,MAAM,CAAC7B,MAAM+B,aAAa,GAAGrB,IAAAA,oCAAoB,EAAC;QAC9CC,OAAOA,MAAMX,IAAI;QACjBY,cAAcD,MAAMR,WAAW;QAC/BU,cAAc,KAAK;IACvB;IACA,MAAMmB,aAAalB,IAAAA,gCAAgB,EAAC,CAACC,GAAGW,OAAO;QAC3C,MAAMO,QAAQlB,aAAamB,eAAenB,EAAEoB,IAAI,KAAKC,uBAAgB,GAAGrB,EAAEsB,MAAM,CAACC,WAAW,GAAGvB,CAAC;QAChGX,iBAAiB,IAAI,IAAIA,iBAAiB,KAAK,IAAI,KAAK,IAAIA,aAAa6B,OAAO;YAC5E,GAAGP,IAAI;QACX,EAAE;QACF,IAAIA,KAAK1B,IAAI,IAAIe,EAAEoB,IAAI,KAAK,eAAe;YACvCxB,MAAMtC,gBAAgB,CAAC0C;QAC3B,CAAC;QACD,IAAI,CAACW,KAAK1B,IAAI,EAAE;YACZW,MAAMtC,gBAAgB,CAACM;QAC3B,CAAC;QACD,IAAI+C,KAAKa,MAAM,EAAE;YACbhB,cAAcR,GAAG;gBACb,GAAGW,IAAI;YACX;QACJ,CAAC;QACDK,aAAaL,KAAK1B,IAAI;IAC1B;IACA,MAAMC,UAAUa,IAAAA,gCAAgB,EAAC,CAACC,GAAGW,OAAO;QACxCc,aAAaZ,eAAea,OAAO;QACnC,IAAI,CAAE1B,CAAAA,aAAa2B,KAAI,KAAM3B,EAAE4B,OAAO,EAAE;YACpC,gDAAgD;YAChD5B,EAAE4B,OAAO;QACb,CAAC;QACD,IAAI5B,EAAEoB,IAAI,KAAK,gBAAgBpB,EAAEoB,IAAI,KAAK,gBAAgBpB,EAAEoB,IAAI,KAAK,eAAepB,EAAEoB,IAAI,KAAKC,uBAAgB,EAAE;YAC7G,IAAIQ;YACJ,IAAI,AAACA,CAAAA,4BAA4BjC,MAAMf,UAAU,CAAC6C,OAAO,AAAD,MAAO,IAAI,IAAIG,8BAA8B,KAAK,IAAI,KAAK,IAAIA,0BAA0BC,QAAQ,CAAC9B,EAAErC,MAAM,CAAC,EAAE;gBACjKoD,mBAAmBW,OAAO,GAAG1B,EAAEoB,IAAI,KAAK,gBAAgBpB,EAAEoB,IAAI,KAAK;YACvE,CAAC;YACD,kCAAkC;YAClC,6DAA6D;YAC7D,aAAa;YACbP,eAAea,OAAO,GAAGK,WAAW,IAAId,WAAWjB,GAAGW,OAAOf,MAAMnD,UAAU;QACjF,OAAO;YACHwE,WAAWjB,GAAGW;QAClB,CAAC;IACL;IACAqB,IAAAA,iCAAiB,EAAC;QACdF,UAAUG,4BAAe;QACzBC,UAAU,CAACjD;QACXkD,SAAS7B;QACT8B,MAAM;YACFxC,MAAMb,cAAc;YACpB,CAACa,MAAM9C,aAAa,IAAI8C,MAAMf,UAAU;SAC3C,CAACwD,MAAM,CAACC;QACTC,UAAU,CAACrB,QAAQhC,QAAQgC,OAAO;gBAC1BjC,MAAM,KAAK;gBACXmC,MAAM;gBACNF;YACJ;IACR;IACA,uEAAuE;IACvE,MAAMrE,gBAAgB+C,MAAM9C,aAAa,IAAI8C,MAAM/C,aAAa;IAChE2F,IAAAA,kCAAkB,EAAC;QACfV,UAAUG,4BAAe;QACzBE,SAAS7B;QACTiC,UAAU,CAACrB,QAAQhC,QAAQgC,OAAO;gBAC1BjC,MAAM,KAAK;gBACXmC,MAAM;gBACNF;YACJ;QACJkB,MAAM;YACFxC,MAAMb,cAAc;YACpB,CAACa,MAAM9C,aAAa,IAAI8C,MAAMf,UAAU;SAC3C,CAACwD,MAAM,CAACC;QACTJ,UAAU,CAACjD,QAAQ,CAACpC;IACxB;IACA4F,IAAAA,0BAAmB,EAAC;QAChBN,SAAS7B;QACTiC,UAAU,CAACrB,QAAQ;YACf,wFAAwF;YACxF,2DAA2D;YAC3D,IAAI,CAACH,mBAAmBW,OAAO,EAAE;gBAC7BxC,QAAQgC,OAAO;oBACXjC,MAAM,KAAK;oBACXmC,MAAM;oBACNF;gBACJ;YACJ,CAAC;QACL;QACAgB,UAAU,CAACjD;QACXmD,MAAM;YACFxC,MAAMb,cAAc;SACvB;IACL;IACA,2BAA2B;IAC3B,kEAAkE;IAClEd,OAAMyE,SAAS,CAAC,IAAI;QAChB,OAAO,IAAI;YACPjB,aAAaZ,eAAea,OAAO;QACvC;IACJ,GAAG,EAAE;IACL,8BAA8B;IAC9B,MAAM,EAAEiB,mBAAkB,EAAG,GAAGC,IAAAA,6BAAe;IAC/C,MAAMC,aAAa5E,OAAM6E,WAAW,CAAC,IAAI;QACrC,MAAMC,iBAAiBJ,mBAAmB/C,MAAMb,cAAc,CAAC2C,OAAO;QACtEqB,mBAAmB,IAAI,IAAIA,mBAAmB,KAAK,IAAI,KAAK,IAAIA,eAAeC,KAAK,EAAE;IAC1F,GAAG;QACCL;QACA/C,MAAMb,cAAc;KACvB;IACD,MAAMkE,aAAaC,IAAAA,6BAAa;IAChCjF,OAAMyE,SAAS,CAAC,IAAI;QAChB,IAAIzD,MAAM;YACN4D;QACJ,OAAO;YACH,IAAI,CAACI,YAAY;gBACb,IAAI,AAAC3C,CAAAA,mBAAmB,IAAI,IAAIA,mBAAmB,KAAK,IAAI,KAAK,IAAIA,eAAe6C,aAAa,AAAD,MAAQ7C,CAAAA,mBAAmB,IAAI,IAAIA,mBAAmB,KAAK,IAAI,KAAK,IAAIA,eAAe8C,IAAI,AAAD,GAAI;oBAC1L,IACA,4EAA4E;oBAC5E,6EAA6E;oBAC7E,0EAA0E;oBAC1E,yEAAyE;oBACzE,gFAAgF;oBAChFvB;oBACCA,CAAAA,4BAA4BjC,MAAMf,UAAU,CAAC6C,OAAO,AAAD,MAAO,IAAI,IAAIG,8BAA8B,KAAK,IAAI,KAAK,IAAIA,0BAA0BmB,KAAK,EAAE;gBACxJ,CAAC;YACL,CAAC;QACL,CAAC;IACL,kDAAkD;IAClD,uDAAuD;IACvD,GAAG;QACCpD,MAAMf,UAAU;QAChBe,MAAMrD,SAAS;QACf0C;QACA4D;QACAvC;QACAV,MAAMb,cAAc;KACvB;IACD,OAAO;QACHE;QACAC;KACH;AACL,GAEA,mCAAmC"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../lib/components/Menu/useMenuContextValues.js"],"sourcesContent":["export function useMenuContextValues_unstable(state) {\n const {\n checkedValues,\n hasCheckmarks,\n hasIcons,\n inline,\n isSubmenu,\n menuPopoverRef,\n mountNode,\n onCheckedValueChange,\n open,\n openOnContext,\n openOnHover,\n persistOnItemClick,\n setOpen,\n triggerId,\n triggerRef\n } = state;\n // This context is created with \"@fluentui/react-context-selector\", these is no sense to memoize it\n const menu = {\n checkedValues,\n hasCheckmarks,\n hasIcons,\n inline,\n isSubmenu,\n menuPopoverRef,\n mountNode,\n onCheckedValueChange,\n open,\n openOnContext,\n openOnHover,\n persistOnItemClick,\n setOpen,\n triggerId,\n triggerRef\n };\n return {\n menu\n };\n}\n//# sourceMappingURL=useMenuContextValues.js.map"],"names":["useMenuContextValues_unstable","state","checkedValues","hasCheckmarks","hasIcons","inline","isSubmenu","menuPopoverRef","mountNode","onCheckedValueChange","open","openOnContext","openOnHover","persistOnItemClick","setOpen","triggerId","triggerRef","menu"],"mappings":";;;;+BAAgBA;;aAAAA;;AAAT,SAASA,8BAA8BC,KAAK,EAAE;IACnD,MAAM,EACJC,cAAa,EACbC,cAAa,EACbC,SAAQ,EACRC,OAAM,EACNC,UAAS,EACTC,eAAc,EACdC,UAAS,EACTC,qBAAoB,EACpBC,KAAI,EACJC,cAAa,EACbC,YAAW,EACXC,mBAAkB,EAClBC,QAAO,EACPC,UAAS,EACTC,WAAU,EACX,GAAGf;IACJ,mGAAmG;IACnG,MAAMgB,OAAO;QACXf;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;IACF;IACA,OAAO;QACLC;IACF;AACF,EACA,gDAAgD"}
1
+ {"version":3,"sources":["../../../lib/components/Menu/useMenuContextValues.js"],"sourcesContent":["export function useMenuContextValues_unstable(state) {\n const { checkedValues , hasCheckmarks , hasIcons , inline , isSubmenu , menuPopoverRef , mountNode , onCheckedValueChange , open , openOnContext , openOnHover , persistOnItemClick , setOpen , triggerId , triggerRef } = state;\n // This context is created with \"@fluentui/react-context-selector\", these is no sense to memoize it\n const menu = {\n checkedValues,\n hasCheckmarks,\n hasIcons,\n inline,\n isSubmenu,\n menuPopoverRef,\n mountNode,\n onCheckedValueChange,\n open,\n openOnContext,\n openOnHover,\n persistOnItemClick,\n setOpen,\n triggerId,\n triggerRef\n };\n return {\n menu\n };\n}\n\n//# sourceMappingURL=useMenuContextValues.js.map"],"names":["useMenuContextValues_unstable","state","checkedValues","hasCheckmarks","hasIcons","inline","isSubmenu","menuPopoverRef","mountNode","onCheckedValueChange","open","openOnContext","openOnHover","persistOnItemClick","setOpen","triggerId","triggerRef","menu"],"mappings":";;;;+BAAgBA;;aAAAA;;AAAT,SAASA,8BAA8BC,KAAK,EAAE;IACjD,MAAM,EAAEC,cAAa,EAAGC,cAAa,EAAGC,SAAQ,EAAGC,OAAM,EAAGC,UAAS,EAAGC,eAAc,EAAGC,UAAS,EAAGC,qBAAoB,EAAGC,KAAI,EAAGC,cAAa,EAAGC,YAAW,EAAGC,mBAAkB,EAAGC,QAAO,EAAGC,UAAS,EAAGC,WAAU,EAAG,GAAGf;IAC5N,mGAAmG;IACnG,MAAMgB,OAAO;QACTf;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;IACJ;IACA,OAAO;QACHC;IACJ;AACJ,EAEA,gDAAgD"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../lib/components/MenuDivider/MenuDivider.js"],"sourcesContent":["import * as React from 'react';\nimport { useMenuDivider_unstable } from './useMenuDivider';\nimport { useMenuDividerStyles_unstable } from './useMenuDividerStyles.styles';\nimport { renderMenuDivider_unstable } from './renderMenuDivider';\nimport { useCustomStyleHook_unstable } from '@fluentui/react-shared-contexts';\n/**\n * Define a styled MenuDivider, using the `useMenuDivider_unstable` hook.\n */\nexport const MenuDivider = /*#__PURE__*/React.forwardRef((props, ref) => {\n const state = useMenuDivider_unstable(props, ref);\n useMenuDividerStyles_unstable(state);\n useCustomStyleHook_unstable('useMenuDividerStyles_unstable')(state);\n return renderMenuDivider_unstable(state);\n});\nMenuDivider.displayName = 'MenuDivider';\n//# sourceMappingURL=MenuDivider.js.map"],"names":["MenuDivider","React","forwardRef","props","ref","state","useMenuDivider_unstable","useMenuDividerStyles_unstable","useCustomStyleHook_unstable","renderMenuDivider_unstable","displayName"],"mappings":";;;;+BAQaA;;aAAAA;;;6DARU;gCACiB;4CACM;mCACH;qCACC;AAIrC,MAAMA,cAAc,WAAW,GAAEC,OAAMC,UAAU,CAAC,CAACC,OAAOC,MAAQ;IACvE,MAAMC,QAAQC,IAAAA,uCAAuB,EAACH,OAAOC;IAC7CG,IAAAA,yDAA6B,EAACF;IAC9BG,IAAAA,gDAA2B,EAAC,iCAAiCH;IAC7D,OAAOI,IAAAA,6CAA0B,EAACJ;AACpC;AACAL,YAAYU,WAAW,GAAG,eAC1B,uCAAuC"}
1
+ {"version":3,"sources":["../../../lib/components/MenuDivider/MenuDivider.js"],"sourcesContent":["import * as React from 'react';\nimport { useMenuDivider_unstable } from './useMenuDivider';\nimport { useMenuDividerStyles_unstable } from './useMenuDividerStyles.styles';\nimport { renderMenuDivider_unstable } from './renderMenuDivider';\nimport { useCustomStyleHook_unstable } from '@fluentui/react-shared-contexts';\n/**\n * Define a styled MenuDivider, using the `useMenuDivider_unstable` hook.\n */ export const MenuDivider = /*#__PURE__*/ React.forwardRef((props, ref)=>{\n const state = useMenuDivider_unstable(props, ref);\n useMenuDividerStyles_unstable(state);\n useCustomStyleHook_unstable('useMenuDividerStyles_unstable')(state);\n return renderMenuDivider_unstable(state);\n});\nMenuDivider.displayName = 'MenuDivider';\n\n//# sourceMappingURL=MenuDivider.js.map"],"names":["MenuDivider","React","forwardRef","props","ref","state","useMenuDivider_unstable","useMenuDividerStyles_unstable","useCustomStyleHook_unstable","renderMenuDivider_unstable","displayName"],"mappings":";;;;+BAOiBA;;aAAAA;;;6DAPM;gCACiB;4CACM;mCACH;qCACC;AAGjC,MAAMA,cAAc,WAAW,GAAGC,OAAMC,UAAU,CAAC,CAACC,OAAOC,MAAM;IACxE,MAAMC,QAAQC,IAAAA,uCAAuB,EAACH,OAAOC;IAC7CG,IAAAA,yDAA6B,EAACF;IAC9BG,IAAAA,gDAA2B,EAAC,iCAAiCH;IAC7D,OAAOI,IAAAA,6CAA0B,EAACJ;AACtC;AACAL,YAAYU,WAAW,GAAG,eAE1B,uCAAuC"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../lib/components/MenuDivider/MenuDivider.types.js"],"sourcesContent":["export {};\n//# sourceMappingURL=MenuDivider.types.js.map"],"names":[],"mappings":";;;;CACA,6CAA6C"}
1
+ {"version":3,"sources":["../../../lib/components/MenuDivider/MenuDivider.types.js"],"sourcesContent":["export { };\n\n//# sourceMappingURL=MenuDivider.types.js.map"],"names":[],"mappings":";;;;CAEA,6CAA6C"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../lib/components/MenuDivider/index.js"],"sourcesContent":["export * from './MenuDivider.types';\nexport * from './MenuDivider';\nexport * from './renderMenuDivider';\nexport * from './useMenuDivider';\nexport * from './useMenuDividerStyles.styles';\n//# sourceMappingURL=index.js.map"],"names":[],"mappings":";;;;;oBAAc;oBACA;oBACA;oBACA;oBACA;CACd,iCAAiC"}
1
+ {"version":3,"sources":["../../../lib/components/MenuDivider/index.js"],"sourcesContent":["export * from './MenuDivider.types';\nexport * from './MenuDivider';\nexport * from './renderMenuDivider';\nexport * from './useMenuDivider';\nexport * from './useMenuDividerStyles.styles';\n\n//# sourceMappingURL=index.js.map"],"names":[],"mappings":";;;;;oBAAc;oBACA;oBACA;oBACA;oBACA;CAEd,iCAAiC"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../lib/components/MenuDivider/renderMenuDivider.js"],"sourcesContent":["/** @jsxRuntime classic */ /** @jsx createElement */import { createElement } from '@fluentui/react-jsx-runtime';\nimport { getSlotsNext } from '@fluentui/react-utilities';\n/**\n * Redefine the render function to add slots. Reuse the menudivider structure but add\n * slots to children.\n */\nexport const renderMenuDivider_unstable = state => {\n const {\n slots,\n slotProps\n } = getSlotsNext(state);\n return /*#__PURE__*/createElement(slots.root, slotProps.root);\n};\n//# sourceMappingURL=renderMenuDivider.js.map"],"names":["renderMenuDivider_unstable","state","slots","slotProps","getSlotsNext","createElement","root"],"mappings":"AAAA,wBAAwB,GAAG,uBAAuB;;;;+BAMrCA;;aAAAA;;iCANqE;gCACrD;AAKtB,MAAMA,6BAA6BC,CAAAA,QAAS;IACjD,MAAM,EACJC,MAAK,EACLC,UAAS,EACV,GAAGC,IAAAA,4BAAY,EAACH;IACjB,OAAO,WAAW,GAAEI,IAAAA,8BAAa,EAACH,MAAMI,IAAI,EAAEH,UAAUG,IAAI;AAC9D,GACA,6CAA6C"}
1
+ {"version":3,"sources":["../../../lib/components/MenuDivider/renderMenuDivider.js"],"sourcesContent":["/** @jsxRuntime classic */ /** @jsx createElement */ import { createElement } from '@fluentui/react-jsx-runtime';\nimport { getSlotsNext } from '@fluentui/react-utilities';\n/**\n * Redefine the render function to add slots. Reuse the menudivider structure but add\n * slots to children.\n */ export const renderMenuDivider_unstable = (state)=>{\n const { slots , slotProps } = getSlotsNext(state);\n return /*#__PURE__*/ createElement(slots.root, slotProps.root);\n};\n\n//# sourceMappingURL=renderMenuDivider.js.map"],"names":["renderMenuDivider_unstable","state","slots","slotProps","getSlotsNext","createElement","root"],"mappings":"AAAA,wBAAwB,GAAG,uBAAuB;;;;+BAKjCA;;aAAAA;;iCALkE;gCACtD;AAIlB,MAAMA,6BAA6B,CAACC,QAAQ;IACnD,MAAM,EAAEC,MAAK,EAAGC,UAAS,EAAG,GAAGC,IAAAA,4BAAY,EAACH;IAC5C,OAAO,WAAW,GAAGI,IAAAA,8BAAa,EAACH,MAAMI,IAAI,EAAEH,UAAUG,IAAI;AACjE,GAEA,6CAA6C"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../lib/components/MenuDivider/useMenuDivider.js"],"sourcesContent":["import { getNativeElementProps } from '@fluentui/react-utilities';\nimport * as React from 'react';\n/**\n * Given user props, returns state and render function for a MenuDivider.\n */\nexport const useMenuDivider_unstable = (props, ref) => {\n return {\n components: {\n root: 'div'\n },\n root: getNativeElementProps('div', {\n role: 'presentation',\n 'aria-hidden': true,\n ...props,\n ref\n })\n };\n};\n//# sourceMappingURL=useMenuDivider.js.map"],"names":["useMenuDivider_unstable","props","ref","components","root","getNativeElementProps","role"],"mappings":";;;;+BAKaA;;aAAAA;;;gCALyB;6DACf;AAIhB,MAAMA,0BAA0B,CAACC,OAAOC,MAAQ;IACrD,OAAO;QACLC,YAAY;YACVC,MAAM;QACR;QACAA,MAAMC,IAAAA,qCAAqB,EAAC,OAAO;YACjCC,MAAM;YACN,eAAe,IAAI;YACnB,GAAGL,KAAK;YACRC;QACF;IACF;AACF,GACA,0CAA0C"}
1
+ {"version":3,"sources":["../../../lib/components/MenuDivider/useMenuDivider.js"],"sourcesContent":["import { getNativeElementProps } from '@fluentui/react-utilities';\nimport * as React from 'react';\n/**\n * Given user props, returns state and render function for a MenuDivider.\n */ export const useMenuDivider_unstable = (props, ref)=>{\n return {\n components: {\n root: 'div'\n },\n root: getNativeElementProps('div', {\n role: 'presentation',\n 'aria-hidden': true,\n ...props,\n ref\n })\n };\n};\n\n//# sourceMappingURL=useMenuDivider.js.map"],"names":["useMenuDivider_unstable","props","ref","components","root","getNativeElementProps","role"],"mappings":";;;;+BAIiBA;;aAAAA;;;gCAJqB;6DACf;AAGZ,MAAMA,0BAA0B,CAACC,OAAOC,MAAM;IACrD,OAAO;QACHC,YAAY;YACRC,MAAM;QACV;QACAA,MAAMC,IAAAA,qCAAqB,EAAC,OAAO;YAC/BC,MAAM;YACN,eAAe,IAAI;YACnB,GAAGL,KAAK;YACRC;QACJ;IACJ;AACJ,GAEA,0CAA0C"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../lib/components/MenuGroup/MenuGroup.js"],"sourcesContent":["import * as React from 'react';\nimport { useMenuGroup_unstable } from './useMenuGroup';\nimport { renderMenuGroup_unstable } from './renderMenuGroup';\nimport { useMenuGroupContextValues_unstable } from './useMenuGroupContextValues';\nimport { useMenuGroupStyles_unstable } from './useMenuGroupStyles.styles';\nimport { useCustomStyleHook_unstable } from '@fluentui/react-shared-contexts';\n/**\n * Define a styled MenuGroup, using the `useMenuGroup_unstable` hook.\n */\nexport const MenuGroup = /*#__PURE__*/React.forwardRef((props, ref) => {\n const state = useMenuGroup_unstable(props, ref);\n const contextValues = useMenuGroupContextValues_unstable(state);\n useMenuGroupStyles_unstable(state);\n useCustomStyleHook_unstable('useMenuGroupStyles_unstable')(state);\n return renderMenuGroup_unstable(state, contextValues);\n});\nMenuGroup.displayName = 'MenuGroup';\n//# sourceMappingURL=MenuGroup.js.map"],"names":["MenuGroup","React","forwardRef","props","ref","state","useMenuGroup_unstable","contextValues","useMenuGroupContextValues_unstable","useMenuGroupStyles_unstable","useCustomStyleHook_unstable","renderMenuGroup_unstable","displayName"],"mappings":";;;;+BASaA;;aAAAA;;;6DATU;8BACe;iCACG;2CACU;0CACP;qCACA;AAIrC,MAAMA,YAAY,WAAW,GAAEC,OAAMC,UAAU,CAAC,CAACC,OAAOC,MAAQ;IACrE,MAAMC,QAAQC,IAAAA,mCAAqB,EAACH,OAAOC;IAC3C,MAAMG,gBAAgBC,IAAAA,6DAAkC,EAACH;IACzDI,IAAAA,qDAA2B,EAACJ;IAC5BK,IAAAA,gDAA2B,EAAC,+BAA+BL;IAC3D,OAAOM,IAAAA,yCAAwB,EAACN,OAAOE;AACzC;AACAP,UAAUY,WAAW,GAAG,aACxB,qCAAqC"}
1
+ {"version":3,"sources":["../../../lib/components/MenuGroup/MenuGroup.js"],"sourcesContent":["import * as React from 'react';\nimport { useMenuGroup_unstable } from './useMenuGroup';\nimport { renderMenuGroup_unstable } from './renderMenuGroup';\nimport { useMenuGroupContextValues_unstable } from './useMenuGroupContextValues';\nimport { useMenuGroupStyles_unstable } from './useMenuGroupStyles.styles';\nimport { useCustomStyleHook_unstable } from '@fluentui/react-shared-contexts';\n/**\n * Define a styled MenuGroup, using the `useMenuGroup_unstable` hook.\n */ export const MenuGroup = /*#__PURE__*/ React.forwardRef((props, ref)=>{\n const state = useMenuGroup_unstable(props, ref);\n const contextValues = useMenuGroupContextValues_unstable(state);\n useMenuGroupStyles_unstable(state);\n useCustomStyleHook_unstable('useMenuGroupStyles_unstable')(state);\n return renderMenuGroup_unstable(state, contextValues);\n});\nMenuGroup.displayName = 'MenuGroup';\n\n//# sourceMappingURL=MenuGroup.js.map"],"names":["MenuGroup","React","forwardRef","props","ref","state","useMenuGroup_unstable","contextValues","useMenuGroupContextValues_unstable","useMenuGroupStyles_unstable","useCustomStyleHook_unstable","renderMenuGroup_unstable","displayName"],"mappings":";;;;+BAQiBA;;aAAAA;;;6DARM;8BACe;iCACG;2CACU;0CACP;qCACA;AAGjC,MAAMA,YAAY,WAAW,GAAGC,OAAMC,UAAU,CAAC,CAACC,OAAOC,MAAM;IACtE,MAAMC,QAAQC,IAAAA,mCAAqB,EAACH,OAAOC;IAC3C,MAAMG,gBAAgBC,IAAAA,6DAAkC,EAACH;IACzDI,IAAAA,qDAA2B,EAACJ;IAC5BK,IAAAA,gDAA2B,EAAC,+BAA+BL;IAC3D,OAAOM,IAAAA,yCAAwB,EAACN,OAAOE;AAC3C;AACAP,UAAUY,WAAW,GAAG,aAExB,qCAAqC"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../lib/components/MenuGroup/MenuGroup.types.js"],"sourcesContent":["export {};\n//# sourceMappingURL=MenuGroup.types.js.map"],"names":[],"mappings":";;;;CACA,2CAA2C"}
1
+ {"version":3,"sources":["../../../lib/components/MenuGroup/MenuGroup.types.js"],"sourcesContent":["export { };\n\n//# sourceMappingURL=MenuGroup.types.js.map"],"names":[],"mappings":";;;;CAEA,2CAA2C"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../lib/components/MenuGroup/index.js"],"sourcesContent":["export * from './MenuGroup.types';\nexport * from './MenuGroup';\nexport * from './renderMenuGroup';\nexport * from './useMenuGroup';\nexport * from './useMenuGroupContextValues';\nexport * from './useMenuGroupStyles.styles';\n//# sourceMappingURL=index.js.map"],"names":[],"mappings":";;;;;oBAAc;oBACA;oBACA;oBACA;oBACA;oBACA;CACd,iCAAiC"}
1
+ {"version":3,"sources":["../../../lib/components/MenuGroup/index.js"],"sourcesContent":["export * from './MenuGroup.types';\nexport * from './MenuGroup';\nexport * from './renderMenuGroup';\nexport * from './useMenuGroup';\nexport * from './useMenuGroupContextValues';\nexport * from './useMenuGroupStyles.styles';\n\n//# sourceMappingURL=index.js.map"],"names":[],"mappings":";;;;;oBAAc;oBACA;oBACA;oBACA;oBACA;oBACA;CAEd,iCAAiC"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../lib/components/MenuGroup/renderMenuGroup.js"],"sourcesContent":["/** @jsxRuntime classic */ /** @jsx createElement */import { createElement } from '@fluentui/react-jsx-runtime';\nimport { getSlotsNext } from '@fluentui/react-utilities';\nimport { MenuGroupContextProvider } from '../../contexts/menuGroupContext';\n/**\n * Redefine the render function to add slots. Reuse the menugroup structure but add\n * slots to children.\n */\nexport const renderMenuGroup_unstable = (state, contextValues) => {\n const {\n slots,\n slotProps\n } = getSlotsNext(state);\n return /*#__PURE__*/createElement(MenuGroupContextProvider, {\n value: contextValues.menuGroup\n }, /*#__PURE__*/createElement(slots.root, slotProps.root));\n};\n//# sourceMappingURL=renderMenuGroup.js.map"],"names":["renderMenuGroup_unstable","state","contextValues","slots","slotProps","getSlotsNext","createElement","MenuGroupContextProvider","value","menuGroup","root"],"mappings":"AAAA,wBAAwB,GAAG,uBAAuB;;;;+BAOrCA;;aAAAA;;iCAPqE;gCACrD;kCACY;AAKlC,MAAMA,2BAA2B,CAACC,OAAOC,gBAAkB;IAChE,MAAM,EACJC,MAAK,EACLC,UAAS,EACV,GAAGC,IAAAA,4BAAY,EAACJ;IACjB,OAAO,WAAW,GAAEK,IAAAA,8BAAa,EAACC,0CAAwB,EAAE;QAC1DC,OAAON,cAAcO,SAAS;IAChC,GAAG,WAAW,GAAEH,IAAAA,8BAAa,EAACH,MAAMO,IAAI,EAAEN,UAAUM,IAAI;AAC1D,GACA,2CAA2C"}
1
+ {"version":3,"sources":["../../../lib/components/MenuGroup/renderMenuGroup.js"],"sourcesContent":["/** @jsxRuntime classic */ /** @jsx createElement */ import { createElement } from '@fluentui/react-jsx-runtime';\nimport { getSlotsNext } from '@fluentui/react-utilities';\nimport { MenuGroupContextProvider } from '../../contexts/menuGroupContext';\n/**\n * Redefine the render function to add slots. Reuse the menugroup structure but add\n * slots to children.\n */ export const renderMenuGroup_unstable = (state, contextValues)=>{\n const { slots , slotProps } = getSlotsNext(state);\n return /*#__PURE__*/ createElement(MenuGroupContextProvider, {\n value: contextValues.menuGroup\n }, /*#__PURE__*/ createElement(slots.root, slotProps.root));\n};\n\n//# sourceMappingURL=renderMenuGroup.js.map"],"names":["renderMenuGroup_unstable","state","contextValues","slots","slotProps","getSlotsNext","createElement","MenuGroupContextProvider","value","menuGroup","root"],"mappings":"AAAA,wBAAwB,GAAG,uBAAuB;;;;+BAMjCA;;aAAAA;;iCANkE;gCACtD;kCACY;AAI9B,MAAMA,2BAA2B,CAACC,OAAOC,gBAAgB;IAChE,MAAM,EAAEC,MAAK,EAAGC,UAAS,EAAG,GAAGC,IAAAA,4BAAY,EAACJ;IAC5C,OAAO,WAAW,GAAGK,IAAAA,8BAAa,EAACC,0CAAwB,EAAE;QACzDC,OAAON,cAAcO,SAAS;IAClC,GAAG,WAAW,GAAGH,IAAAA,8BAAa,EAACH,MAAMO,IAAI,EAAEN,UAAUM,IAAI;AAC7D,GAEA,2CAA2C"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../lib/components/MenuGroup/useMenuGroup.js"],"sourcesContent":["import * as React from 'react';\nimport { getNativeElementProps, useId } from '@fluentui/react-utilities';\n/**\n * Given user props, returns state and render function for a MenuGroup.\n */\nexport function useMenuGroup_unstable(props, ref) {\n const headerId = useId('menu-group');\n return {\n components: {\n root: 'div'\n },\n root: getNativeElementProps('div', {\n ref,\n 'aria-labelledby': headerId,\n role: 'group',\n ...props\n }),\n headerId\n };\n}\n//# sourceMappingURL=useMenuGroup.js.map"],"names":["useMenuGroup_unstable","props","ref","headerId","useId","components","root","getNativeElementProps","role"],"mappings":";;;;+BAKgBA;;aAAAA;;;6DALO;gCACsB;AAItC,SAASA,sBAAsBC,KAAK,EAAEC,GAAG,EAAE;IAChD,MAAMC,WAAWC,IAAAA,qBAAK,EAAC;IACvB,OAAO;QACLC,YAAY;YACVC,MAAM;QACR;QACAA,MAAMC,IAAAA,qCAAqB,EAAC,OAAO;YACjCL;YACA,mBAAmBC;YACnBK,MAAM;YACN,GAAGP,KAAK;QACV;QACAE;IACF;AACF,EACA,wCAAwC"}
1
+ {"version":3,"sources":["../../../lib/components/MenuGroup/useMenuGroup.js"],"sourcesContent":["import * as React from 'react';\nimport { getNativeElementProps, useId } from '@fluentui/react-utilities';\n/**\n * Given user props, returns state and render function for a MenuGroup.\n */ export function useMenuGroup_unstable(props, ref) {\n const headerId = useId('menu-group');\n return {\n components: {\n root: 'div'\n },\n root: getNativeElementProps('div', {\n ref,\n 'aria-labelledby': headerId,\n role: 'group',\n ...props\n }),\n headerId\n };\n}\n\n//# sourceMappingURL=useMenuGroup.js.map"],"names":["useMenuGroup_unstable","props","ref","headerId","useId","components","root","getNativeElementProps","role"],"mappings":";;;;+BAIoBA;;aAAAA;;;6DAJG;gCACsB;AAGlC,SAASA,sBAAsBC,KAAK,EAAEC,GAAG,EAAE;IAClD,MAAMC,WAAWC,IAAAA,qBAAK,EAAC;IACvB,OAAO;QACHC,YAAY;YACRC,MAAM;QACV;QACAA,MAAMC,IAAAA,qCAAqB,EAAC,OAAO;YAC/BL;YACA,mBAAmBC;YACnBK,MAAM;YACN,GAAGP,KAAK;QACZ;QACAE;IACJ;AACJ,EAEA,wCAAwC"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../lib/components/MenuGroup/useMenuGroupContextValues.js"],"sourcesContent":["import * as React from 'react';\nexport function useMenuGroupContextValues_unstable(state) {\n const {\n headerId\n } = state;\n const menuGroup = React.useMemo(() => ({\n headerId\n }), [headerId]);\n return {\n menuGroup\n };\n}\n//# sourceMappingURL=useMenuGroupContextValues.js.map"],"names":["useMenuGroupContextValues_unstable","state","headerId","menuGroup","React","useMemo"],"mappings":";;;;+BACgBA;;aAAAA;;;6DADO;AAChB,SAASA,mCAAmCC,KAAK,EAAE;IACxD,MAAM,EACJC,SAAQ,EACT,GAAGD;IACJ,MAAME,YAAYC,OAAMC,OAAO,CAAC,IAAO,CAAA;YACrCH;QACF,CAAA,GAAI;QAACA;KAAS;IACd,OAAO;QACLC;IACF;AACF,EACA,qDAAqD"}
1
+ {"version":3,"sources":["../../../lib/components/MenuGroup/useMenuGroupContextValues.js"],"sourcesContent":["import * as React from 'react';\nexport function useMenuGroupContextValues_unstable(state) {\n const { headerId } = state;\n const menuGroup = React.useMemo(()=>({\n headerId\n }), [\n headerId\n ]);\n return {\n menuGroup\n };\n}\n\n//# sourceMappingURL=useMenuGroupContextValues.js.map"],"names":["useMenuGroupContextValues_unstable","state","headerId","menuGroup","React","useMemo"],"mappings":";;;;+BACgBA;;aAAAA;;;6DADO;AAChB,SAASA,mCAAmCC,KAAK,EAAE;IACtD,MAAM,EAAEC,SAAQ,EAAG,GAAGD;IACtB,MAAME,YAAYC,OAAMC,OAAO,CAAC,IAAK,CAAA;YAC7BH;QACJ,CAAA,GAAI;QACJA;KACH;IACD,OAAO;QACHC;IACJ;AACJ,EAEA,qDAAqD"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../lib/components/MenuGroupHeader/MenuGroupHeader.js"],"sourcesContent":["import * as React from 'react';\nimport { useMenuGroupHeader_unstable } from './useMenuGroupHeader';\nimport { useMenuGroupHeaderStyles_unstable } from './useMenuGroupHeaderStyles.styles';\nimport { renderMenuGroupHeader_unstable } from './renderMenuGroupHeader';\nimport { useCustomStyleHook_unstable } from '@fluentui/react-shared-contexts';\n/**\n * Define a styled MenuGroupHeader, using the `useMenuGroupHeader_unstable` hook.\n */\nexport const MenuGroupHeader = /*#__PURE__*/React.forwardRef((props, ref) => {\n const state = useMenuGroupHeader_unstable(props, ref);\n useMenuGroupHeaderStyles_unstable(state);\n useCustomStyleHook_unstable('useMenuGroupHeaderStyles_unstable')(state);\n return renderMenuGroupHeader_unstable(state);\n});\nMenuGroupHeader.displayName = 'MenuGroupHeader';\n//# sourceMappingURL=MenuGroupHeader.js.map"],"names":["MenuGroupHeader","React","forwardRef","props","ref","state","useMenuGroupHeader_unstable","useMenuGroupHeaderStyles_unstable","useCustomStyleHook_unstable","renderMenuGroupHeader_unstable","displayName"],"mappings":";;;;+BAQaA;;aAAAA;;;6DARU;oCACqB;gDACM;uCACH;qCACH;AAIrC,MAAMA,kBAAkB,WAAW,GAAEC,OAAMC,UAAU,CAAC,CAACC,OAAOC,MAAQ;IAC3E,MAAMC,QAAQC,IAAAA,+CAA2B,EAACH,OAAOC;IACjDG,IAAAA,iEAAiC,EAACF;IAClCG,IAAAA,gDAA2B,EAAC,qCAAqCH;IACjE,OAAOI,IAAAA,qDAA8B,EAACJ;AACxC;AACAL,gBAAgBU,WAAW,GAAG,mBAC9B,2CAA2C"}
1
+ {"version":3,"sources":["../../../lib/components/MenuGroupHeader/MenuGroupHeader.js"],"sourcesContent":["import * as React from 'react';\nimport { useMenuGroupHeader_unstable } from './useMenuGroupHeader';\nimport { useMenuGroupHeaderStyles_unstable } from './useMenuGroupHeaderStyles.styles';\nimport { renderMenuGroupHeader_unstable } from './renderMenuGroupHeader';\nimport { useCustomStyleHook_unstable } from '@fluentui/react-shared-contexts';\n/**\n * Define a styled MenuGroupHeader, using the `useMenuGroupHeader_unstable` hook.\n */ export const MenuGroupHeader = /*#__PURE__*/ React.forwardRef((props, ref)=>{\n const state = useMenuGroupHeader_unstable(props, ref);\n useMenuGroupHeaderStyles_unstable(state);\n useCustomStyleHook_unstable('useMenuGroupHeaderStyles_unstable')(state);\n return renderMenuGroupHeader_unstable(state);\n});\nMenuGroupHeader.displayName = 'MenuGroupHeader';\n\n//# sourceMappingURL=MenuGroupHeader.js.map"],"names":["MenuGroupHeader","React","forwardRef","props","ref","state","useMenuGroupHeader_unstable","useMenuGroupHeaderStyles_unstable","useCustomStyleHook_unstable","renderMenuGroupHeader_unstable","displayName"],"mappings":";;;;+BAOiBA;;aAAAA;;;6DAPM;oCACqB;gDACM;uCACH;qCACH;AAGjC,MAAMA,kBAAkB,WAAW,GAAGC,OAAMC,UAAU,CAAC,CAACC,OAAOC,MAAM;IAC5E,MAAMC,QAAQC,IAAAA,+CAA2B,EAACH,OAAOC;IACjDG,IAAAA,iEAAiC,EAACF;IAClCG,IAAAA,gDAA2B,EAAC,qCAAqCH;IACjE,OAAOI,IAAAA,qDAA8B,EAACJ;AAC1C;AACAL,gBAAgBU,WAAW,GAAG,mBAE9B,2CAA2C"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../lib/components/MenuGroupHeader/MenuGroupHeader.types.js"],"sourcesContent":["export {};\n//# sourceMappingURL=MenuGroupHeader.types.js.map"],"names":[],"mappings":";;;;CACA,iDAAiD"}
1
+ {"version":3,"sources":["../../../lib/components/MenuGroupHeader/MenuGroupHeader.types.js"],"sourcesContent":["export { };\n\n//# sourceMappingURL=MenuGroupHeader.types.js.map"],"names":[],"mappings":";;;;CAEA,iDAAiD"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../lib/components/MenuGroupHeader/index.js"],"sourcesContent":["export * from './MenuGroupHeader.types';\nexport * from './MenuGroupHeader';\nexport * from './renderMenuGroupHeader';\nexport * from './useMenuGroupHeader';\nexport * from './useMenuGroupHeaderStyles.styles';\n//# sourceMappingURL=index.js.map"],"names":[],"mappings":";;;;;oBAAc;oBACA;oBACA;oBACA;oBACA;CACd,iCAAiC"}
1
+ {"version":3,"sources":["../../../lib/components/MenuGroupHeader/index.js"],"sourcesContent":["export * from './MenuGroupHeader.types';\nexport * from './MenuGroupHeader';\nexport * from './renderMenuGroupHeader';\nexport * from './useMenuGroupHeader';\nexport * from './useMenuGroupHeaderStyles.styles';\n\n//# sourceMappingURL=index.js.map"],"names":[],"mappings":";;;;;oBAAc;oBACA;oBACA;oBACA;oBACA;CAEd,iCAAiC"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../lib/components/MenuGroupHeader/renderMenuGroupHeader.js"],"sourcesContent":["/** @jsxRuntime classic */ /** @jsx createElement */import { createElement } from '@fluentui/react-jsx-runtime';\nimport { getSlotsNext } from '@fluentui/react-utilities';\n/**\n * Redefine the render function to add slots. Reuse the menugroupheader structure but add\n * slots to children.\n */\nexport const renderMenuGroupHeader_unstable = state => {\n const {\n slots,\n slotProps\n } = getSlotsNext(state);\n return /*#__PURE__*/createElement(slots.root, slotProps.root);\n};\n//# sourceMappingURL=renderMenuGroupHeader.js.map"],"names":["renderMenuGroupHeader_unstable","state","slots","slotProps","getSlotsNext","createElement","root"],"mappings":"AAAA,wBAAwB,GAAG,uBAAuB;;;;+BAMrCA;;aAAAA;;iCANqE;gCACrD;AAKtB,MAAMA,iCAAiCC,CAAAA,QAAS;IACrD,MAAM,EACJC,MAAK,EACLC,UAAS,EACV,GAAGC,IAAAA,4BAAY,EAACH;IACjB,OAAO,WAAW,GAAEI,IAAAA,8BAAa,EAACH,MAAMI,IAAI,EAAEH,UAAUG,IAAI;AAC9D,GACA,iDAAiD"}
1
+ {"version":3,"sources":["../../../lib/components/MenuGroupHeader/renderMenuGroupHeader.js"],"sourcesContent":["/** @jsxRuntime classic */ /** @jsx createElement */ import { createElement } from '@fluentui/react-jsx-runtime';\nimport { getSlotsNext } from '@fluentui/react-utilities';\n/**\n * Redefine the render function to add slots. Reuse the menugroupheader structure but add\n * slots to children.\n */ export const renderMenuGroupHeader_unstable = (state)=>{\n const { slots , slotProps } = getSlotsNext(state);\n return /*#__PURE__*/ createElement(slots.root, slotProps.root);\n};\n\n//# sourceMappingURL=renderMenuGroupHeader.js.map"],"names":["renderMenuGroupHeader_unstable","state","slots","slotProps","getSlotsNext","createElement","root"],"mappings":"AAAA,wBAAwB,GAAG,uBAAuB;;;;+BAKjCA;;aAAAA;;iCALkE;gCACtD;AAIlB,MAAMA,iCAAiC,CAACC,QAAQ;IACvD,MAAM,EAAEC,MAAK,EAAGC,UAAS,EAAG,GAAGC,IAAAA,4BAAY,EAACH;IAC5C,OAAO,WAAW,GAAGI,IAAAA,8BAAa,EAACH,MAAMI,IAAI,EAAEH,UAAUG,IAAI;AACjE,GAEA,iDAAiD"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../lib/components/MenuGroupHeader/useMenuGroupHeader.js"],"sourcesContent":["import * as React from 'react';\nimport { useMenuGroupContext_unstable } from '../../contexts/menuGroupContext';\nimport { getNativeElementProps } from '@fluentui/react-utilities';\n/**\n * Given user props, returns state and render function for a MenuGroupHeader.\n */\nexport function useMenuGroupHeader_unstable(props, ref) {\n const {\n headerId: id\n } = useMenuGroupContext_unstable();\n return {\n components: {\n root: 'div'\n },\n root: getNativeElementProps('div', {\n ref,\n id,\n ...props\n })\n };\n}\n//# sourceMappingURL=useMenuGroupHeader.js.map"],"names":["useMenuGroupHeader_unstable","props","ref","headerId","id","useMenuGroupContext_unstable","components","root","getNativeElementProps"],"mappings":";;;;+BAMgBA;;aAAAA;;;6DANO;kCACsB;gCACP;AAI/B,SAASA,4BAA4BC,KAAK,EAAEC,GAAG,EAAE;IACtD,MAAM,EACJC,UAAUC,GAAE,EACb,GAAGC,IAAAA,8CAA4B;IAChC,OAAO;QACLC,YAAY;YACVC,MAAM;QACR;QACAA,MAAMC,IAAAA,qCAAqB,EAAC,OAAO;YACjCN;YACAE;YACA,GAAGH,KAAK;QACV;IACF;AACF,EACA,8CAA8C"}
1
+ {"version":3,"sources":["../../../lib/components/MenuGroupHeader/useMenuGroupHeader.js"],"sourcesContent":["import * as React from 'react';\nimport { useMenuGroupContext_unstable } from '../../contexts/menuGroupContext';\nimport { getNativeElementProps } from '@fluentui/react-utilities';\n/**\n * Given user props, returns state and render function for a MenuGroupHeader.\n */ export function useMenuGroupHeader_unstable(props, ref) {\n const { headerId: id } = useMenuGroupContext_unstable();\n return {\n components: {\n root: 'div'\n },\n root: getNativeElementProps('div', {\n ref,\n id,\n ...props\n })\n };\n}\n\n//# sourceMappingURL=useMenuGroupHeader.js.map"],"names":["useMenuGroupHeader_unstable","props","ref","headerId","id","useMenuGroupContext_unstable","components","root","getNativeElementProps"],"mappings":";;;;+BAKoBA;;aAAAA;;;6DALG;kCACsB;gCACP;AAG3B,SAASA,4BAA4BC,KAAK,EAAEC,GAAG,EAAE;IACxD,MAAM,EAAEC,UAAUC,GAAE,EAAG,GAAGC,IAAAA,8CAA4B;IACtD,OAAO;QACHC,YAAY;YACRC,MAAM;QACV;QACAA,MAAMC,IAAAA,qCAAqB,EAAC,OAAO;YAC/BN;YACAE;YACA,GAAGH,KAAK;QACZ;IACJ;AACJ,EAEA,8CAA8C"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../lib/components/MenuItem/MenuItem.js"],"sourcesContent":["import * as React from 'react';\nimport { useMenuItem_unstable } from './useMenuItem';\nimport { renderMenuItem_unstable } from './renderMenuItem';\nimport { useMenuItemStyles_unstable } from './useMenuItemStyles.styles';\nimport { useCustomStyleHook_unstable } from '@fluentui/react-shared-contexts';\n/**\n * Define a styled MenuItem, using the `useMenuItem_unstable` and `useMenuItemStyles_unstable` hook.\n */\nexport const MenuItem = /*#__PURE__*/React.forwardRef((props, ref) => {\n const state = useMenuItem_unstable(props, ref);\n useMenuItemStyles_unstable(state);\n useCustomStyleHook_unstable('useMenuItemStyles_unstable')(state);\n return renderMenuItem_unstable(state);\n});\nMenuItem.displayName = 'MenuItem';\n//# sourceMappingURL=MenuItem.js.map"],"names":["MenuItem","React","forwardRef","props","ref","state","useMenuItem_unstable","useMenuItemStyles_unstable","useCustomStyleHook_unstable","renderMenuItem_unstable","displayName"],"mappings":";;;;+BAQaA;;aAAAA;;;6DARU;6BACc;gCACG;yCACG;qCACC;AAIrC,MAAMA,WAAW,WAAW,GAAEC,OAAMC,UAAU,CAAC,CAACC,OAAOC,MAAQ;IACpE,MAAMC,QAAQC,IAAAA,iCAAoB,EAACH,OAAOC;IAC1CG,IAAAA,mDAA0B,EAACF;IAC3BG,IAAAA,gDAA2B,EAAC,8BAA8BH;IAC1D,OAAOI,IAAAA,uCAAuB,EAACJ;AACjC;AACAL,SAASU,WAAW,GAAG,YACvB,oCAAoC"}
1
+ {"version":3,"sources":["../../../lib/components/MenuItem/MenuItem.js"],"sourcesContent":["import * as React from 'react';\nimport { useMenuItem_unstable } from './useMenuItem';\nimport { renderMenuItem_unstable } from './renderMenuItem';\nimport { useMenuItemStyles_unstable } from './useMenuItemStyles.styles';\nimport { useCustomStyleHook_unstable } from '@fluentui/react-shared-contexts';\n/**\n * Define a styled MenuItem, using the `useMenuItem_unstable` and `useMenuItemStyles_unstable` hook.\n */ export const MenuItem = /*#__PURE__*/ React.forwardRef((props, ref)=>{\n const state = useMenuItem_unstable(props, ref);\n useMenuItemStyles_unstable(state);\n useCustomStyleHook_unstable('useMenuItemStyles_unstable')(state);\n return renderMenuItem_unstable(state);\n});\nMenuItem.displayName = 'MenuItem';\n\n//# sourceMappingURL=MenuItem.js.map"],"names":["MenuItem","React","forwardRef","props","ref","state","useMenuItem_unstable","useMenuItemStyles_unstable","useCustomStyleHook_unstable","renderMenuItem_unstable","displayName"],"mappings":";;;;+BAOiBA;;aAAAA;;;6DAPM;6BACc;gCACG;yCACG;qCACC;AAGjC,MAAMA,WAAW,WAAW,GAAGC,OAAMC,UAAU,CAAC,CAACC,OAAOC,MAAM;IACrE,MAAMC,QAAQC,IAAAA,iCAAoB,EAACH,OAAOC;IAC1CG,IAAAA,mDAA0B,EAACF;IAC3BG,IAAAA,gDAA2B,EAAC,8BAA8BH;IAC1D,OAAOI,IAAAA,uCAAuB,EAACJ;AACnC;AACAL,SAASU,WAAW,GAAG,YAEvB,oCAAoC"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../lib/components/MenuItem/MenuItem.types.js"],"sourcesContent":["export {};\n//# sourceMappingURL=MenuItem.types.js.map"],"names":[],"mappings":";;;;CACA,0CAA0C"}
1
+ {"version":3,"sources":["../../../lib/components/MenuItem/MenuItem.types.js"],"sourcesContent":["export { };\n\n//# sourceMappingURL=MenuItem.types.js.map"],"names":[],"mappings":";;;;CAEA,0CAA0C"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../lib/components/MenuItem/index.js"],"sourcesContent":["export * from './MenuItem';\nexport * from './MenuItem.types';\nexport * from './renderMenuItem';\nexport * from './useMenuItem';\nexport * from './useMenuItemStyles.styles';\n//# sourceMappingURL=index.js.map"],"names":[],"mappings":";;;;;oBAAc;oBACA;oBACA;oBACA;oBACA;CACd,iCAAiC"}
1
+ {"version":3,"sources":["../../../lib/components/MenuItem/index.js"],"sourcesContent":["export * from './MenuItem';\nexport * from './MenuItem.types';\nexport * from './renderMenuItem';\nexport * from './useMenuItem';\nexport * from './useMenuItemStyles.styles';\n\n//# sourceMappingURL=index.js.map"],"names":[],"mappings":";;;;;oBAAc;oBACA;oBACA;oBACA;oBACA;CAEd,iCAAiC"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../lib/components/MenuItem/renderMenuItem.js"],"sourcesContent":["/** @jsxRuntime classic */ /** @jsx createElement */import { createElement } from '@fluentui/react-jsx-runtime';\nimport { getSlotsNext } from '@fluentui/react-utilities';\n/**\n * Function that renders the final JSX of the component\n */\nexport const renderMenuItem_unstable = state => {\n const {\n slots,\n slotProps\n } = getSlotsNext(state);\n return /*#__PURE__*/createElement(slots.root, slotProps.root, slots.checkmark && /*#__PURE__*/createElement(slots.checkmark, slotProps.checkmark), slots.icon && /*#__PURE__*/createElement(slots.icon, slotProps.icon), slots.content && /*#__PURE__*/createElement(slots.content, slotProps.content), slots.secondaryContent && /*#__PURE__*/createElement(slots.secondaryContent, slotProps.secondaryContent), slots.submenuIndicator && /*#__PURE__*/createElement(slots.submenuIndicator, slotProps.submenuIndicator));\n};\n//# sourceMappingURL=renderMenuItem.js.map"],"names":["renderMenuItem_unstable","state","slots","slotProps","getSlotsNext","createElement","root","checkmark","icon","content","secondaryContent","submenuIndicator"],"mappings":"AAAA,wBAAwB,GAAG,uBAAuB;;;;+BAKrCA;;aAAAA;;iCALqE;gCACrD;AAItB,MAAMA,0BAA0BC,CAAAA,QAAS;IAC9C,MAAM,EACJC,MAAK,EACLC,UAAS,EACV,GAAGC,IAAAA,4BAAY,EAACH;IACjB,OAAO,WAAW,GAAEI,IAAAA,8BAAa,EAACH,MAAMI,IAAI,EAAEH,UAAUG,IAAI,EAAEJ,MAAMK,SAAS,IAAI,WAAW,GAAEF,IAAAA,8BAAa,EAACH,MAAMK,SAAS,EAAEJ,UAAUI,SAAS,GAAGL,MAAMM,IAAI,IAAI,WAAW,GAAEH,IAAAA,8BAAa,EAACH,MAAMM,IAAI,EAAEL,UAAUK,IAAI,GAAGN,MAAMO,OAAO,IAAI,WAAW,GAAEJ,IAAAA,8BAAa,EAACH,MAAMO,OAAO,EAAEN,UAAUM,OAAO,GAAGP,MAAMQ,gBAAgB,IAAI,WAAW,GAAEL,IAAAA,8BAAa,EAACH,MAAMQ,gBAAgB,EAAEP,UAAUO,gBAAgB,GAAGR,MAAMS,gBAAgB,IAAI,WAAW,GAAEN,IAAAA,8BAAa,EAACH,MAAMS,gBAAgB,EAAER,UAAUQ,gBAAgB;AAC3f,GACA,0CAA0C"}
1
+ {"version":3,"sources":["../../../lib/components/MenuItem/renderMenuItem.js"],"sourcesContent":["/** @jsxRuntime classic */ /** @jsx createElement */ import { createElement } from '@fluentui/react-jsx-runtime';\nimport { getSlotsNext } from '@fluentui/react-utilities';\n/**\n * Function that renders the final JSX of the component\n */ export const renderMenuItem_unstable = (state)=>{\n const { slots , slotProps } = getSlotsNext(state);\n return /*#__PURE__*/ createElement(slots.root, slotProps.root, slots.checkmark && /*#__PURE__*/ createElement(slots.checkmark, slotProps.checkmark), slots.icon && /*#__PURE__*/ createElement(slots.icon, slotProps.icon), slots.content && /*#__PURE__*/ createElement(slots.content, slotProps.content), slots.secondaryContent && /*#__PURE__*/ createElement(slots.secondaryContent, slotProps.secondaryContent), slots.submenuIndicator && /*#__PURE__*/ createElement(slots.submenuIndicator, slotProps.submenuIndicator));\n};\n\n//# sourceMappingURL=renderMenuItem.js.map"],"names":["renderMenuItem_unstable","state","slots","slotProps","getSlotsNext","createElement","root","checkmark","icon","content","secondaryContent","submenuIndicator"],"mappings":"AAAA,wBAAwB,GAAG,uBAAuB;;;;+BAIjCA;;aAAAA;;iCAJkE;gCACtD;AAGlB,MAAMA,0BAA0B,CAACC,QAAQ;IAChD,MAAM,EAAEC,MAAK,EAAGC,UAAS,EAAG,GAAGC,IAAAA,4BAAY,EAACH;IAC5C,OAAO,WAAW,GAAGI,IAAAA,8BAAa,EAACH,MAAMI,IAAI,EAAEH,UAAUG,IAAI,EAAEJ,MAAMK,SAAS,IAAI,WAAW,GAAGF,IAAAA,8BAAa,EAACH,MAAMK,SAAS,EAAEJ,UAAUI,SAAS,GAAGL,MAAMM,IAAI,IAAI,WAAW,GAAGH,IAAAA,8BAAa,EAACH,MAAMM,IAAI,EAAEL,UAAUK,IAAI,GAAGN,MAAMO,OAAO,IAAI,WAAW,GAAGJ,IAAAA,8BAAa,EAACH,MAAMO,OAAO,EAAEN,UAAUM,OAAO,GAAGP,MAAMQ,gBAAgB,IAAI,WAAW,GAAGL,IAAAA,8BAAa,EAACH,MAAMQ,gBAAgB,EAAEP,UAAUO,gBAAgB,GAAGR,MAAMS,gBAAgB,IAAI,WAAW,GAAGN,IAAAA,8BAAa,EAACH,MAAMS,gBAAgB,EAAER,UAAUQ,gBAAgB;AACngB,GAEA,0CAA0C"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../lib/components/MenuItem/useCharacterSearch.js"],"sourcesContent":["import * as React from 'react';\nimport { useMenuListContext_unstable } from '../../contexts/menuListContext';\nexport const useCharacterSearch = (state, ref) => {\n const setFocusByFirstCharacter = useMenuListContext_unstable(context => context.setFocusByFirstCharacter);\n const {\n onKeyDown: originalOnKeyDown\n } = state.root;\n state.root.onKeyDown = e => {\n var _e_key;\n originalOnKeyDown === null || originalOnKeyDown === void 0 ? void 0 : originalOnKeyDown(e);\n if (((_e_key = e.key) === null || _e_key === void 0 ? void 0 : _e_key.length) > 1) {\n return;\n }\n if (ref.current) {\n setFocusByFirstCharacter === null || setFocusByFirstCharacter === void 0 ? void 0 : setFocusByFirstCharacter(e, ref.current);\n }\n };\n return state;\n};\n//# sourceMappingURL=useCharacterSearch.js.map"],"names":["useCharacterSearch","state","ref","setFocusByFirstCharacter","useMenuListContext_unstable","context","onKeyDown","originalOnKeyDown","root","e","_e_key","key","length","current"],"mappings":";;;;+BAEaA;;aAAAA;;;6DAFU;iCACqB;AACrC,MAAMA,qBAAqB,CAACC,OAAOC,MAAQ;IAChD,MAAMC,2BAA2BC,IAAAA,4CAA2B,EAACC,CAAAA,UAAWA,QAAQF,wBAAwB;IACxG,MAAM,EACJG,WAAWC,kBAAiB,EAC7B,GAAGN,MAAMO,IAAI;IACdP,MAAMO,IAAI,CAACF,SAAS,GAAGG,CAAAA,IAAK;QAC1B,IAAIC;QACJH,sBAAsB,IAAI,IAAIA,sBAAsB,KAAK,IAAI,KAAK,IAAIA,kBAAkBE,EAAE;QAC1F,IAAI,AAAC,CAAA,AAACC,CAAAA,SAASD,EAAEE,GAAG,AAAD,MAAO,IAAI,IAAID,WAAW,KAAK,IAAI,KAAK,IAAIA,OAAOE,MAAM,AAAD,IAAK,GAAG;YACjF;QACF,CAAC;QACD,IAAIV,IAAIW,OAAO,EAAE;YACfV,6BAA6B,IAAI,IAAIA,6BAA6B,KAAK,IAAI,KAAK,IAAIA,yBAAyBM,GAAGP,IAAIW,OAAO,CAAC;QAC9H,CAAC;IACH;IACA,OAAOZ;AACT,GACA,8CAA8C"}
1
+ {"version":3,"sources":["../../../lib/components/MenuItem/useCharacterSearch.js"],"sourcesContent":["import * as React from 'react';\nimport { useMenuListContext_unstable } from '../../contexts/menuListContext';\nexport const useCharacterSearch = (state, ref)=>{\n const setFocusByFirstCharacter = useMenuListContext_unstable((context)=>context.setFocusByFirstCharacter);\n const { onKeyDown: originalOnKeyDown } = state.root;\n state.root.onKeyDown = (e)=>{\n var _e_key;\n originalOnKeyDown === null || originalOnKeyDown === void 0 ? void 0 : originalOnKeyDown(e);\n if (((_e_key = e.key) === null || _e_key === void 0 ? void 0 : _e_key.length) > 1) {\n return;\n }\n if (ref.current) {\n setFocusByFirstCharacter === null || setFocusByFirstCharacter === void 0 ? void 0 : setFocusByFirstCharacter(e, ref.current);\n }\n };\n return state;\n};\n\n//# sourceMappingURL=useCharacterSearch.js.map"],"names":["useCharacterSearch","state","ref","setFocusByFirstCharacter","useMenuListContext_unstable","context","onKeyDown","originalOnKeyDown","root","e","_e_key","key","length","current"],"mappings":";;;;+BAEaA;;aAAAA;;;6DAFU;iCACqB;AACrC,MAAMA,qBAAqB,CAACC,OAAOC,MAAM;IAC5C,MAAMC,2BAA2BC,IAAAA,4CAA2B,EAAC,CAACC,UAAUA,QAAQF,wBAAwB;IACxG,MAAM,EAAEG,WAAWC,kBAAiB,EAAG,GAAGN,MAAMO,IAAI;IACpDP,MAAMO,IAAI,CAACF,SAAS,GAAG,CAACG,IAAI;QACxB,IAAIC;QACJH,sBAAsB,IAAI,IAAIA,sBAAsB,KAAK,IAAI,KAAK,IAAIA,kBAAkBE,EAAE;QAC1F,IAAI,AAAC,CAAA,AAACC,CAAAA,SAASD,EAAEE,GAAG,AAAD,MAAO,IAAI,IAAID,WAAW,KAAK,IAAI,KAAK,IAAIA,OAAOE,MAAM,AAAD,IAAK,GAAG;YAC/E;QACJ,CAAC;QACD,IAAIV,IAAIW,OAAO,EAAE;YACbV,6BAA6B,IAAI,IAAIA,6BAA6B,KAAK,IAAI,KAAK,IAAIA,yBAAyBM,GAAGP,IAAIW,OAAO,CAAC;QAChI,CAAC;IACL;IACA,OAAOZ;AACX,GAEA,8CAA8C"}
@@ -17,8 +17,8 @@ const _menuListContext = require("../../contexts/menuListContext");
17
17
  const _menuContext = require("../../contexts/menuContext");
18
18
  const _reactAria = require("@fluentui/react-aria");
19
19
  const _keyboardKeys = require("@fluentui/keyboard-keys");
20
- const ChevronRightIcon = /*#__PURE__*/ (0, _reactIcons.bundleIcon)(_reactIcons.ChevronRightFilled, _reactIcons.ChevronRightRegular);
21
- const ChevronLeftIcon = /*#__PURE__*/ (0, _reactIcons.bundleIcon)(_reactIcons.ChevronLeftFilled, _reactIcons.ChevronLeftRegular);
20
+ const ChevronRightIcon = (0, _reactIcons.bundleIcon)(_reactIcons.ChevronRightFilled, _reactIcons.ChevronRightRegular);
21
+ const ChevronLeftIcon = (0, _reactIcons.bundleIcon)(_reactIcons.ChevronLeftFilled, _reactIcons.ChevronLeftRegular);
22
22
  const useMenuItem_unstable = (props, ref)=>{
23
23
  const isSubmenuTrigger = (0, _menuTriggerContext.useMenuTriggerContext_unstable)();
24
24
  const persistOnClickContext = (0, _menuContext.useMenuContext_unstable)((context)=>context.persistOnItemClick);