@fluentui/react-menu 9.0.0-nightly.46b9ea7036.0 → 9.0.0-rc.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (414) hide show
  1. package/CHANGELOG.json +451 -34
  2. package/CHANGELOG.md +102 -22
  3. package/Spec.md +21 -16
  4. package/dist/react-menu.d.ts +140 -71
  5. package/lib/MenuSplitGroup.d.ts +1 -0
  6. package/lib/MenuSplitGroup.js +2 -0
  7. package/lib/MenuSplitGroup.js.map +1 -0
  8. package/lib/components/Menu/Menu.js +7 -7
  9. package/lib/components/Menu/Menu.js.map +1 -1
  10. package/lib/components/Menu/Menu.types.d.ts +1 -1
  11. package/lib/components/Menu/renderMenu.d.ts +1 -1
  12. package/lib/components/Menu/renderMenu.js +1 -1
  13. package/lib/components/Menu/renderMenu.js.map +1 -1
  14. package/lib/components/Menu/useMenu.d.ts +2 -2
  15. package/lib/components/Menu/useMenu.js +119 -128
  16. package/lib/components/Menu/useMenu.js.map +1 -1
  17. package/lib/components/Menu/useMenuContextValues.d.ts +1 -1
  18. package/lib/components/Menu/useMenuContextValues.js +35 -33
  19. package/lib/components/Menu/useMenuContextValues.js.map +1 -1
  20. package/lib/components/MenuDivider/MenuDivider.d.ts +1 -1
  21. package/lib/components/MenuDivider/MenuDivider.js +8 -8
  22. package/lib/components/MenuDivider/MenuDivider.js.map +1 -1
  23. package/lib/components/MenuDivider/MenuDivider.types.d.ts +2 -2
  24. package/lib/components/MenuDivider/renderMenuDivider.d.ts +1 -1
  25. package/lib/components/MenuDivider/renderMenuDivider.js +7 -7
  26. package/lib/components/MenuDivider/renderMenuDivider.js.map +1 -1
  27. package/lib/components/MenuDivider/useMenuDivider.d.ts +1 -1
  28. package/lib/components/MenuDivider/useMenuDivider.js +9 -7
  29. package/lib/components/MenuDivider/useMenuDivider.js.map +1 -1
  30. package/lib/components/MenuDivider/useMenuDividerStyles.d.ts +2 -1
  31. package/lib/components/MenuDivider/useMenuDividerStyles.js +7 -5
  32. package/lib/components/MenuDivider/useMenuDividerStyles.js.map +1 -1
  33. package/lib/components/MenuGroup/MenuGroup.d.ts +1 -1
  34. package/lib/components/MenuGroup/MenuGroup.js +10 -8
  35. package/lib/components/MenuGroup/MenuGroup.js.map +1 -1
  36. package/lib/components/MenuGroup/MenuGroup.types.d.ts +3 -3
  37. package/lib/components/MenuGroup/index.d.ts +1 -0
  38. package/lib/components/MenuGroup/index.js +1 -0
  39. package/lib/components/MenuGroup/index.js.map +1 -1
  40. package/lib/components/MenuGroup/renderMenuGroup.d.ts +1 -1
  41. package/lib/components/MenuGroup/renderMenuGroup.js +7 -7
  42. package/lib/components/MenuGroup/renderMenuGroup.js.map +1 -1
  43. package/lib/components/MenuGroup/useMenuGroup.d.ts +1 -1
  44. package/lib/components/MenuGroup/useMenuGroup.js +10 -7
  45. package/lib/components/MenuGroup/useMenuGroup.js.map +1 -1
  46. package/lib/components/MenuGroup/useMenuGroupContextValues.d.ts +1 -1
  47. package/lib/components/MenuGroup/useMenuGroupContextValues.js +8 -8
  48. package/lib/components/MenuGroup/useMenuGroupContextValues.js.map +1 -1
  49. package/lib/components/MenuGroup/useMenuGroupStyles.d.ts +3 -0
  50. package/lib/components/MenuGroup/useMenuGroupStyles.js +7 -0
  51. package/lib/components/MenuGroup/useMenuGroupStyles.js.map +1 -0
  52. package/lib/components/MenuGroupHeader/MenuGroupHeader.d.ts +1 -1
  53. package/lib/components/MenuGroupHeader/MenuGroupHeader.js +8 -8
  54. package/lib/components/MenuGroupHeader/MenuGroupHeader.js.map +1 -1
  55. package/lib/components/MenuGroupHeader/MenuGroupHeader.types.d.ts +2 -2
  56. package/lib/components/MenuGroupHeader/renderMenuGroupHeader.d.ts +1 -1
  57. package/lib/components/MenuGroupHeader/renderMenuGroupHeader.js +7 -7
  58. package/lib/components/MenuGroupHeader/renderMenuGroupHeader.js.map +1 -1
  59. package/lib/components/MenuGroupHeader/useMenuGroupHeader.d.ts +1 -1
  60. package/lib/components/MenuGroupHeader/useMenuGroupHeader.js +13 -8
  61. package/lib/components/MenuGroupHeader/useMenuGroupHeader.js.map +1 -1
  62. package/lib/components/MenuGroupHeader/useMenuGroupHeaderStyles.d.ts +2 -1
  63. package/lib/components/MenuGroupHeader/useMenuGroupHeaderStyles.js +7 -5
  64. package/lib/components/MenuGroupHeader/useMenuGroupHeaderStyles.js.map +1 -1
  65. package/lib/components/MenuItem/MenuItem.d.ts +1 -1
  66. package/lib/components/MenuItem/MenuItem.js +8 -10
  67. package/lib/components/MenuItem/MenuItem.js.map +1 -1
  68. package/lib/components/MenuItem/MenuItem.types.d.ts +7 -7
  69. package/lib/components/MenuItem/renderMenuItem.d.ts +1 -1
  70. package/lib/components/MenuItem/renderMenuItem.js +12 -8
  71. package/lib/components/MenuItem/renderMenuItem.js.map +1 -1
  72. package/lib/components/MenuItem/useCharacterSearch.js +7 -7
  73. package/lib/components/MenuItem/useCharacterSearch.js.map +1 -1
  74. package/lib/components/MenuItem/useMenuItem.d.ts +2 -6
  75. package/lib/components/MenuItem/useMenuItem.js +35 -45
  76. package/lib/components/MenuItem/useMenuItem.js.map +1 -1
  77. package/lib/components/MenuItem/useMenuItemStyles.d.ts +2 -1
  78. package/lib/components/MenuItem/useMenuItemStyles.js +31 -27
  79. package/lib/components/MenuItem/useMenuItemStyles.js.map +1 -1
  80. package/lib/components/MenuItemCheckbox/MenuItemCheckbox.d.ts +1 -1
  81. package/lib/components/MenuItemCheckbox/MenuItemCheckbox.js +8 -8
  82. package/lib/components/MenuItemCheckbox/MenuItemCheckbox.js.map +1 -1
  83. package/lib/components/MenuItemCheckbox/index.d.ts +1 -0
  84. package/lib/components/MenuItemCheckbox/index.js +1 -0
  85. package/lib/components/MenuItemCheckbox/index.js.map +1 -1
  86. package/lib/components/MenuItemCheckbox/renderMenuItemCheckbox.d.ts +1 -1
  87. package/lib/components/MenuItemCheckbox/renderMenuItemCheckbox.js +11 -8
  88. package/lib/components/MenuItemCheckbox/renderMenuItemCheckbox.js.map +1 -1
  89. package/lib/components/MenuItemCheckbox/useMenuItemCheckbox.d.ts +1 -1
  90. package/lib/components/MenuItemCheckbox/useMenuItemCheckbox.js +14 -15
  91. package/lib/components/MenuItemCheckbox/useMenuItemCheckbox.js.map +1 -1
  92. package/lib/components/MenuItemCheckbox/useMenuItemCheckboxStyles.d.ts +2 -1
  93. package/lib/components/MenuItemCheckbox/useMenuItemCheckboxStyles.js +8 -5
  94. package/lib/components/MenuItemCheckbox/useMenuItemCheckboxStyles.js.map +1 -1
  95. package/lib/components/MenuItemRadio/MenuItemRadio.d.ts +1 -1
  96. package/lib/components/MenuItemRadio/MenuItemRadio.js +8 -8
  97. package/lib/components/MenuItemRadio/MenuItemRadio.js.map +1 -1
  98. package/lib/components/MenuItemRadio/index.d.ts +1 -0
  99. package/lib/components/MenuItemRadio/index.js +1 -0
  100. package/lib/components/MenuItemRadio/index.js.map +1 -1
  101. package/lib/components/MenuItemRadio/renderMenuItemRadio.d.ts +1 -1
  102. package/lib/components/MenuItemRadio/renderMenuItemRadio.js +11 -8
  103. package/lib/components/MenuItemRadio/renderMenuItemRadio.js.map +1 -1
  104. package/lib/components/MenuItemRadio/useMenuItemRadio.d.ts +1 -1
  105. package/lib/components/MenuItemRadio/useMenuItemRadio.js +14 -14
  106. package/lib/components/MenuItemRadio/useMenuItemRadio.js.map +1 -1
  107. package/lib/components/MenuItemRadio/useMenuItemRadioStyles.d.ts +2 -1
  108. package/lib/components/MenuItemRadio/useMenuItemRadioStyles.js +8 -5
  109. package/lib/components/MenuItemRadio/useMenuItemRadioStyles.js.map +1 -1
  110. package/lib/components/MenuList/MenuList.d.ts +1 -1
  111. package/lib/components/MenuList/MenuList.js +10 -10
  112. package/lib/components/MenuList/MenuList.js.map +1 -1
  113. package/lib/components/MenuList/MenuList.types.d.ts +12 -10
  114. package/lib/components/MenuList/index.d.ts +1 -1
  115. package/lib/components/MenuList/index.js +0 -1
  116. package/lib/components/MenuList/index.js.map +1 -1
  117. package/lib/components/MenuList/renderMenuList.d.ts +1 -1
  118. package/lib/components/MenuList/renderMenuList.js +7 -7
  119. package/lib/components/MenuList/renderMenuList.js.map +1 -1
  120. package/lib/components/MenuList/useMenuList.d.ts +1 -1
  121. package/lib/components/MenuList/useMenuList.js +70 -87
  122. package/lib/components/MenuList/useMenuList.js.map +1 -1
  123. package/lib/components/MenuList/useMenuListContextValues.d.ts +1 -1
  124. package/lib/components/MenuList/useMenuListContextValues.js +19 -17
  125. package/lib/components/MenuList/useMenuListContextValues.js.map +1 -1
  126. package/lib/components/MenuList/useMenuListStyles.d.ts +2 -1
  127. package/lib/components/MenuList/useMenuListStyles.js +9 -7
  128. package/lib/components/MenuList/useMenuListStyles.js.map +1 -1
  129. package/lib/components/MenuPopover/MenuPopover.js +7 -7
  130. package/lib/components/MenuPopover/MenuPopover.js.map +1 -1
  131. package/lib/components/MenuPopover/MenuPopover.types.d.ts +2 -2
  132. package/lib/components/MenuPopover/renderMenuPopover.d.ts +1 -1
  133. package/lib/components/MenuPopover/renderMenuPopover.js +9 -7
  134. package/lib/components/MenuPopover/renderMenuPopover.js.map +1 -1
  135. package/lib/components/MenuPopover/useMenuPopover.d.ts +3 -3
  136. package/lib/components/MenuPopover/useMenuPopover.js +35 -41
  137. package/lib/components/MenuPopover/useMenuPopover.js.map +1 -1
  138. package/lib/components/MenuPopover/useMenuPopoverStyles.d.ts +2 -1
  139. package/lib/components/MenuPopover/useMenuPopoverStyles.js +13 -8
  140. package/lib/components/MenuPopover/useMenuPopoverStyles.js.map +1 -1
  141. package/lib/components/MenuSplitGroup/MenuSplitGroup.d.ts +6 -0
  142. package/lib/components/MenuSplitGroup/MenuSplitGroup.js +15 -0
  143. package/lib/components/MenuSplitGroup/MenuSplitGroup.js.map +1 -0
  144. package/lib/components/MenuSplitGroup/MenuSplitGroup.types.d.ts +14 -0
  145. package/lib/components/MenuSplitGroup/MenuSplitGroup.types.js +2 -0
  146. package/lib/components/MenuSplitGroup/MenuSplitGroup.types.js.map +1 -0
  147. package/lib/components/MenuSplitGroup/index.d.ts +5 -0
  148. package/lib/components/MenuSplitGroup/index.js +6 -0
  149. package/lib/components/MenuSplitGroup/index.js.map +1 -0
  150. package/lib/components/MenuSplitGroup/renderMenuSplitGroup.d.ts +5 -0
  151. package/lib/components/MenuSplitGroup/renderMenuSplitGroup.js +15 -0
  152. package/lib/components/MenuSplitGroup/renderMenuSplitGroup.js.map +1 -0
  153. package/lib/components/MenuSplitGroup/useMenuSplitGroup.d.ts +12 -0
  154. package/lib/components/MenuSplitGroup/useMenuSplitGroup.js +67 -0
  155. package/lib/components/MenuSplitGroup/useMenuSplitGroup.js.map +1 -0
  156. package/lib/components/MenuSplitGroup/useMenuSplitGroupStyles.d.ts +6 -0
  157. package/lib/components/MenuSplitGroup/useMenuSplitGroupStyles.js +35 -0
  158. package/lib/components/MenuSplitGroup/useMenuSplitGroupStyles.js.map +1 -0
  159. package/lib/components/MenuTrigger/MenuTrigger.d.ts +2 -1
  160. package/lib/components/MenuTrigger/MenuTrigger.js +6 -5
  161. package/lib/components/MenuTrigger/MenuTrigger.js.map +1 -1
  162. package/lib/components/MenuTrigger/MenuTrigger.types.d.ts +6 -3
  163. package/lib/components/MenuTrigger/renderMenuTrigger.d.ts +1 -1
  164. package/lib/components/MenuTrigger/renderMenuTrigger.js +1 -1
  165. package/lib/components/MenuTrigger/renderMenuTrigger.js.map +1 -1
  166. package/lib/components/MenuTrigger/useMenuTrigger.d.ts +2 -2
  167. package/lib/components/MenuTrigger/useMenuTrigger.js +166 -5
  168. package/lib/components/MenuTrigger/useMenuTrigger.js.map +1 -1
  169. package/lib/contexts/menuContext.d.ts +1 -1
  170. package/lib/contexts/menuContext.js +5 -11
  171. package/lib/contexts/menuContext.js.map +1 -1
  172. package/lib/contexts/menuGroupContext.d.ts +1 -1
  173. package/lib/contexts/menuGroupContext.js +3 -5
  174. package/lib/contexts/menuGroupContext.js.map +1 -1
  175. package/lib/contexts/menuListContext.d.ts +1 -1
  176. package/lib/contexts/menuListContext.js +7 -17
  177. package/lib/contexts/menuListContext.js.map +1 -1
  178. package/lib/contexts/menuTriggerContext.d.ts +1 -1
  179. package/lib/contexts/menuTriggerContext.js +3 -5
  180. package/lib/contexts/menuTriggerContext.js.map +1 -1
  181. package/lib/index.d.ts +11 -10
  182. package/lib/index.js +11 -10
  183. package/lib/index.js.map +1 -1
  184. package/lib/selectable/useCheckmarkStyles.d.ts +2 -2
  185. package/lib/selectable/useCheckmarkStyles.js +4 -4
  186. package/lib/selectable/useCheckmarkStyles.js.map +1 -1
  187. package/lib/utils/useIsSubmenu.js +3 -5
  188. package/lib/utils/useIsSubmenu.js.map +1 -1
  189. package/lib/utils/useOnMenuEnter.js +16 -14
  190. package/lib/utils/useOnMenuEnter.js.map +1 -1
  191. package/lib-commonjs/Menu.js +1 -1
  192. package/lib-commonjs/MenuDivider.js +1 -1
  193. package/lib-commonjs/MenuGroup.js +1 -1
  194. package/lib-commonjs/MenuGroupHeader.js +1 -1
  195. package/lib-commonjs/MenuItem.js +1 -1
  196. package/lib-commonjs/MenuItemCheckbox.js +1 -1
  197. package/lib-commonjs/MenuItemRadio.js +1 -1
  198. package/lib-commonjs/MenuList.js +1 -1
  199. package/lib-commonjs/MenuPopover.js +1 -1
  200. package/lib-commonjs/MenuSplitGroup.d.ts +1 -0
  201. package/lib-commonjs/MenuSplitGroup.js +10 -0
  202. package/lib-commonjs/MenuSplitGroup.js.map +1 -0
  203. package/lib-commonjs/MenuTrigger.js +1 -1
  204. package/lib-commonjs/components/Menu/Menu.js +7 -7
  205. package/lib-commonjs/components/Menu/Menu.js.map +1 -1
  206. package/lib-commonjs/components/Menu/Menu.types.d.ts +1 -1
  207. package/lib-commonjs/components/Menu/index.js +1 -1
  208. package/lib-commonjs/components/Menu/renderMenu.d.ts +1 -1
  209. package/lib-commonjs/components/Menu/renderMenu.js +5 -5
  210. package/lib-commonjs/components/Menu/renderMenu.js.map +1 -1
  211. package/lib-commonjs/components/Menu/useMenu.d.ts +2 -2
  212. package/lib-commonjs/components/Menu/useMenu.js +130 -141
  213. package/lib-commonjs/components/Menu/useMenu.js.map +1 -1
  214. package/lib-commonjs/components/Menu/useMenuContextValues.d.ts +1 -1
  215. package/lib-commonjs/components/Menu/useMenuContextValues.js +37 -35
  216. package/lib-commonjs/components/Menu/useMenuContextValues.js.map +1 -1
  217. package/lib-commonjs/components/MenuDivider/MenuDivider.d.ts +1 -1
  218. package/lib-commonjs/components/MenuDivider/MenuDivider.js +9 -9
  219. package/lib-commonjs/components/MenuDivider/MenuDivider.js.map +1 -1
  220. package/lib-commonjs/components/MenuDivider/MenuDivider.types.d.ts +2 -2
  221. package/lib-commonjs/components/MenuDivider/index.js +1 -1
  222. package/lib-commonjs/components/MenuDivider/renderMenuDivider.d.ts +1 -1
  223. package/lib-commonjs/components/MenuDivider/renderMenuDivider.js +11 -12
  224. package/lib-commonjs/components/MenuDivider/renderMenuDivider.js.map +1 -1
  225. package/lib-commonjs/components/MenuDivider/useMenuDivider.d.ts +1 -1
  226. package/lib-commonjs/components/MenuDivider/useMenuDivider.js +12 -11
  227. package/lib-commonjs/components/MenuDivider/useMenuDivider.js.map +1 -1
  228. package/lib-commonjs/components/MenuDivider/useMenuDividerStyles.d.ts +2 -1
  229. package/lib-commonjs/components/MenuDivider/useMenuDividerStyles.js +11 -7
  230. package/lib-commonjs/components/MenuDivider/useMenuDividerStyles.js.map +1 -1
  231. package/lib-commonjs/components/MenuGroup/MenuGroup.d.ts +1 -1
  232. package/lib-commonjs/components/MenuGroup/MenuGroup.js +12 -9
  233. package/lib-commonjs/components/MenuGroup/MenuGroup.js.map +1 -1
  234. package/lib-commonjs/components/MenuGroup/MenuGroup.types.d.ts +3 -3
  235. package/lib-commonjs/components/MenuGroup/index.d.ts +1 -0
  236. package/lib-commonjs/components/MenuGroup/index.js +3 -1
  237. package/lib-commonjs/components/MenuGroup/index.js.map +1 -1
  238. package/lib-commonjs/components/MenuGroup/renderMenuGroup.d.ts +1 -1
  239. package/lib-commonjs/components/MenuGroup/renderMenuGroup.js +12 -13
  240. package/lib-commonjs/components/MenuGroup/renderMenuGroup.js.map +1 -1
  241. package/lib-commonjs/components/MenuGroup/useMenuGroup.d.ts +1 -1
  242. package/lib-commonjs/components/MenuGroup/useMenuGroup.js +13 -11
  243. package/lib-commonjs/components/MenuGroup/useMenuGroup.js.map +1 -1
  244. package/lib-commonjs/components/MenuGroup/useMenuGroupContextValues.d.ts +1 -1
  245. package/lib-commonjs/components/MenuGroup/useMenuGroupContextValues.js +11 -11
  246. package/lib-commonjs/components/MenuGroup/useMenuGroupContextValues.js.map +1 -1
  247. package/lib-commonjs/components/MenuGroup/useMenuGroupStyles.d.ts +3 -0
  248. package/lib-commonjs/components/MenuGroup/useMenuGroupStyles.js +18 -0
  249. package/lib-commonjs/components/MenuGroup/useMenuGroupStyles.js.map +1 -0
  250. package/lib-commonjs/components/MenuGroupHeader/MenuGroupHeader.d.ts +1 -1
  251. package/lib-commonjs/components/MenuGroupHeader/MenuGroupHeader.js +9 -9
  252. package/lib-commonjs/components/MenuGroupHeader/MenuGroupHeader.js.map +1 -1
  253. package/lib-commonjs/components/MenuGroupHeader/MenuGroupHeader.types.d.ts +2 -2
  254. package/lib-commonjs/components/MenuGroupHeader/index.js +1 -1
  255. package/lib-commonjs/components/MenuGroupHeader/renderMenuGroupHeader.d.ts +1 -1
  256. package/lib-commonjs/components/MenuGroupHeader/renderMenuGroupHeader.js +11 -12
  257. package/lib-commonjs/components/MenuGroupHeader/renderMenuGroupHeader.js.map +1 -1
  258. package/lib-commonjs/components/MenuGroupHeader/useMenuGroupHeader.d.ts +1 -1
  259. package/lib-commonjs/components/MenuGroupHeader/useMenuGroupHeader.js +16 -12
  260. package/lib-commonjs/components/MenuGroupHeader/useMenuGroupHeader.js.map +1 -1
  261. package/lib-commonjs/components/MenuGroupHeader/useMenuGroupHeaderStyles.d.ts +2 -1
  262. package/lib-commonjs/components/MenuGroupHeader/useMenuGroupHeaderStyles.js +11 -7
  263. package/lib-commonjs/components/MenuGroupHeader/useMenuGroupHeaderStyles.js.map +1 -1
  264. package/lib-commonjs/components/MenuItem/MenuItem.d.ts +1 -1
  265. package/lib-commonjs/components/MenuItem/MenuItem.js +9 -12
  266. package/lib-commonjs/components/MenuItem/MenuItem.js.map +1 -1
  267. package/lib-commonjs/components/MenuItem/MenuItem.types.d.ts +7 -7
  268. package/lib-commonjs/components/MenuItem/index.js +1 -1
  269. package/lib-commonjs/components/MenuItem/renderMenuItem.d.ts +1 -1
  270. package/lib-commonjs/components/MenuItem/renderMenuItem.js +16 -14
  271. package/lib-commonjs/components/MenuItem/renderMenuItem.js.map +1 -1
  272. package/lib-commonjs/components/MenuItem/useCharacterSearch.js +7 -7
  273. package/lib-commonjs/components/MenuItem/useCharacterSearch.js.map +1 -1
  274. package/lib-commonjs/components/MenuItem/useMenuItem.d.ts +2 -6
  275. package/lib-commonjs/components/MenuItem/useMenuItem.js +42 -53
  276. package/lib-commonjs/components/MenuItem/useMenuItem.js.map +1 -1
  277. package/lib-commonjs/components/MenuItem/useMenuItemStyles.d.ts +2 -1
  278. package/lib-commonjs/components/MenuItem/useMenuItemStyles.js +40 -33
  279. package/lib-commonjs/components/MenuItem/useMenuItemStyles.js.map +1 -1
  280. package/lib-commonjs/components/MenuItemCheckbox/MenuItemCheckbox.d.ts +1 -1
  281. package/lib-commonjs/components/MenuItemCheckbox/MenuItemCheckbox.js +9 -9
  282. package/lib-commonjs/components/MenuItemCheckbox/MenuItemCheckbox.js.map +1 -1
  283. package/lib-commonjs/components/MenuItemCheckbox/index.d.ts +1 -0
  284. package/lib-commonjs/components/MenuItemCheckbox/index.js +3 -1
  285. package/lib-commonjs/components/MenuItemCheckbox/index.js.map +1 -1
  286. package/lib-commonjs/components/MenuItemCheckbox/renderMenuItemCheckbox.d.ts +1 -1
  287. package/lib-commonjs/components/MenuItemCheckbox/renderMenuItemCheckbox.js +15 -14
  288. package/lib-commonjs/components/MenuItemCheckbox/renderMenuItemCheckbox.js.map +1 -1
  289. package/lib-commonjs/components/MenuItemCheckbox/useMenuItemCheckbox.d.ts +1 -1
  290. package/lib-commonjs/components/MenuItemCheckbox/useMenuItemCheckbox.js +19 -21
  291. package/lib-commonjs/components/MenuItemCheckbox/useMenuItemCheckbox.js.map +1 -1
  292. package/lib-commonjs/components/MenuItemCheckbox/useMenuItemCheckboxStyles.d.ts +2 -1
  293. package/lib-commonjs/components/MenuItemCheckbox/useMenuItemCheckboxStyles.js +12 -7
  294. package/lib-commonjs/components/MenuItemCheckbox/useMenuItemCheckboxStyles.js.map +1 -1
  295. package/lib-commonjs/components/MenuItemRadio/MenuItemRadio.d.ts +1 -1
  296. package/lib-commonjs/components/MenuItemRadio/MenuItemRadio.js +9 -9
  297. package/lib-commonjs/components/MenuItemRadio/MenuItemRadio.js.map +1 -1
  298. package/lib-commonjs/components/MenuItemRadio/index.d.ts +1 -0
  299. package/lib-commonjs/components/MenuItemRadio/index.js +3 -1
  300. package/lib-commonjs/components/MenuItemRadio/index.js.map +1 -1
  301. package/lib-commonjs/components/MenuItemRadio/renderMenuItemRadio.d.ts +1 -1
  302. package/lib-commonjs/components/MenuItemRadio/renderMenuItemRadio.js +15 -14
  303. package/lib-commonjs/components/MenuItemRadio/renderMenuItemRadio.js.map +1 -1
  304. package/lib-commonjs/components/MenuItemRadio/useMenuItemRadio.d.ts +1 -1
  305. package/lib-commonjs/components/MenuItemRadio/useMenuItemRadio.js +19 -20
  306. package/lib-commonjs/components/MenuItemRadio/useMenuItemRadio.js.map +1 -1
  307. package/lib-commonjs/components/MenuItemRadio/useMenuItemRadioStyles.d.ts +2 -1
  308. package/lib-commonjs/components/MenuItemRadio/useMenuItemRadioStyles.js +12 -7
  309. package/lib-commonjs/components/MenuItemRadio/useMenuItemRadioStyles.js.map +1 -1
  310. package/lib-commonjs/components/MenuList/MenuList.d.ts +1 -1
  311. package/lib-commonjs/components/MenuList/MenuList.js +11 -11
  312. package/lib-commonjs/components/MenuList/MenuList.js.map +1 -1
  313. package/lib-commonjs/components/MenuList/MenuList.types.d.ts +12 -10
  314. package/lib-commonjs/components/MenuList/index.d.ts +1 -1
  315. package/lib-commonjs/components/MenuList/index.js +1 -3
  316. package/lib-commonjs/components/MenuList/index.js.map +1 -1
  317. package/lib-commonjs/components/MenuList/renderMenuList.d.ts +1 -1
  318. package/lib-commonjs/components/MenuList/renderMenuList.js +12 -13
  319. package/lib-commonjs/components/MenuList/renderMenuList.js.map +1 -1
  320. package/lib-commonjs/components/MenuList/useMenuList.d.ts +1 -1
  321. package/lib-commonjs/components/MenuList/useMenuList.js +77 -95
  322. package/lib-commonjs/components/MenuList/useMenuList.js.map +1 -1
  323. package/lib-commonjs/components/MenuList/useMenuListContextValues.d.ts +1 -1
  324. package/lib-commonjs/components/MenuList/useMenuListContextValues.js +21 -19
  325. package/lib-commonjs/components/MenuList/useMenuListContextValues.js.map +1 -1
  326. package/lib-commonjs/components/MenuList/useMenuListStyles.d.ts +2 -1
  327. package/lib-commonjs/components/MenuList/useMenuListStyles.js +12 -9
  328. package/lib-commonjs/components/MenuList/useMenuListStyles.js.map +1 -1
  329. package/lib-commonjs/components/MenuPopover/MenuPopover.js +8 -8
  330. package/lib-commonjs/components/MenuPopover/MenuPopover.js.map +1 -1
  331. package/lib-commonjs/components/MenuPopover/MenuPopover.types.d.ts +2 -2
  332. package/lib-commonjs/components/MenuPopover/index.js +1 -1
  333. package/lib-commonjs/components/MenuPopover/renderMenuPopover.d.ts +1 -1
  334. package/lib-commonjs/components/MenuPopover/renderMenuPopover.js +14 -13
  335. package/lib-commonjs/components/MenuPopover/renderMenuPopover.js.map +1 -1
  336. package/lib-commonjs/components/MenuPopover/useMenuPopover.d.ts +3 -3
  337. package/lib-commonjs/components/MenuPopover/useMenuPopover.js +43 -50
  338. package/lib-commonjs/components/MenuPopover/useMenuPopover.js.map +1 -1
  339. package/lib-commonjs/components/MenuPopover/useMenuPopoverStyles.d.ts +2 -1
  340. package/lib-commonjs/components/MenuPopover/useMenuPopoverStyles.js +17 -10
  341. package/lib-commonjs/components/MenuPopover/useMenuPopoverStyles.js.map +1 -1
  342. package/lib-commonjs/components/MenuSplitGroup/MenuSplitGroup.d.ts +6 -0
  343. package/lib-commonjs/components/MenuSplitGroup/MenuSplitGroup.js +26 -0
  344. package/lib-commonjs/components/MenuSplitGroup/MenuSplitGroup.js.map +1 -0
  345. package/lib-commonjs/components/MenuSplitGroup/MenuSplitGroup.types.d.ts +14 -0
  346. package/lib-commonjs/components/MenuSplitGroup/MenuSplitGroup.types.js +6 -0
  347. package/lib-commonjs/components/MenuSplitGroup/MenuSplitGroup.types.js.map +1 -0
  348. package/lib-commonjs/components/MenuSplitGroup/index.d.ts +5 -0
  349. package/lib-commonjs/components/MenuSplitGroup/index.js +18 -0
  350. package/lib-commonjs/components/MenuSplitGroup/index.js.map +1 -0
  351. package/lib-commonjs/components/MenuSplitGroup/renderMenuSplitGroup.d.ts +5 -0
  352. package/lib-commonjs/components/MenuSplitGroup/renderMenuSplitGroup.js +26 -0
  353. package/lib-commonjs/components/MenuSplitGroup/renderMenuSplitGroup.js.map +1 -0
  354. package/lib-commonjs/components/MenuSplitGroup/useMenuSplitGroup.d.ts +12 -0
  355. package/lib-commonjs/components/MenuSplitGroup/useMenuSplitGroup.js +81 -0
  356. package/lib-commonjs/components/MenuSplitGroup/useMenuSplitGroup.js.map +1 -0
  357. package/lib-commonjs/components/MenuSplitGroup/useMenuSplitGroupStyles.d.ts +6 -0
  358. package/lib-commonjs/components/MenuSplitGroup/useMenuSplitGroupStyles.js +47 -0
  359. package/lib-commonjs/components/MenuSplitGroup/useMenuSplitGroupStyles.js.map +1 -0
  360. package/lib-commonjs/components/MenuTrigger/MenuTrigger.d.ts +2 -1
  361. package/lib-commonjs/components/MenuTrigger/MenuTrigger.js +6 -5
  362. package/lib-commonjs/components/MenuTrigger/MenuTrigger.js.map +1 -1
  363. package/lib-commonjs/components/MenuTrigger/MenuTrigger.types.d.ts +6 -3
  364. package/lib-commonjs/components/MenuTrigger/index.js +1 -1
  365. package/lib-commonjs/components/MenuTrigger/renderMenuTrigger.d.ts +1 -1
  366. package/lib-commonjs/components/MenuTrigger/renderMenuTrigger.js +5 -5
  367. package/lib-commonjs/components/MenuTrigger/renderMenuTrigger.js.map +1 -1
  368. package/lib-commonjs/components/MenuTrigger/useMenuTrigger.d.ts +2 -2
  369. package/lib-commonjs/components/MenuTrigger/useMenuTrigger.js +174 -7
  370. package/lib-commonjs/components/MenuTrigger/useMenuTrigger.js.map +1 -1
  371. package/lib-commonjs/components/index.js +1 -1
  372. package/lib-commonjs/contexts/menuContext.d.ts +1 -1
  373. package/lib-commonjs/contexts/menuContext.js +6 -12
  374. package/lib-commonjs/contexts/menuContext.js.map +1 -1
  375. package/lib-commonjs/contexts/menuGroupContext.d.ts +1 -1
  376. package/lib-commonjs/contexts/menuGroupContext.js +5 -7
  377. package/lib-commonjs/contexts/menuGroupContext.js.map +1 -1
  378. package/lib-commonjs/contexts/menuListContext.d.ts +1 -1
  379. package/lib-commonjs/contexts/menuListContext.js +8 -18
  380. package/lib-commonjs/contexts/menuListContext.js.map +1 -1
  381. package/lib-commonjs/contexts/menuTriggerContext.d.ts +1 -1
  382. package/lib-commonjs/contexts/menuTriggerContext.js +5 -7
  383. package/lib-commonjs/contexts/menuTriggerContext.js.map +1 -1
  384. package/lib-commonjs/index.d.ts +11 -10
  385. package/lib-commonjs/index.js +17 -15
  386. package/lib-commonjs/index.js.map +1 -1
  387. package/lib-commonjs/selectable/index.js +1 -1
  388. package/lib-commonjs/selectable/useCheckmarkStyles.d.ts +2 -2
  389. package/lib-commonjs/selectable/useCheckmarkStyles.js +7 -7
  390. package/lib-commonjs/selectable/useCheckmarkStyles.js.map +1 -1
  391. package/lib-commonjs/utils/index.js +1 -1
  392. package/lib-commonjs/utils/useIsSubmenu.js +5 -7
  393. package/lib-commonjs/utils/useIsSubmenu.js.map +1 -1
  394. package/lib-commonjs/utils/useOnMenuEnter.js +18 -16
  395. package/lib-commonjs/utils/useOnMenuEnter.js.map +1 -1
  396. package/package.json +15 -17
  397. package/lib/common/isConformant.d.ts +0 -4
  398. package/lib/common/isConformant.js +0 -12
  399. package/lib/common/isConformant.js.map +0 -1
  400. package/lib/common/mockUseMenuContext.d.ts +0 -7
  401. package/lib/common/mockUseMenuContext.js +0 -36
  402. package/lib/common/mockUseMenuContext.js.map +0 -1
  403. package/lib/components/MenuTrigger/useTriggerElement.d.ts +0 -5
  404. package/lib/components/MenuTrigger/useTriggerElement.js +0 -179
  405. package/lib/components/MenuTrigger/useTriggerElement.js.map +0 -1
  406. package/lib-commonjs/common/isConformant.d.ts +0 -4
  407. package/lib-commonjs/common/isConformant.js +0 -23
  408. package/lib-commonjs/common/isConformant.js.map +0 -1
  409. package/lib-commonjs/common/mockUseMenuContext.d.ts +0 -7
  410. package/lib-commonjs/common/mockUseMenuContext.js +0 -47
  411. package/lib-commonjs/common/mockUseMenuContext.js.map +0 -1
  412. package/lib-commonjs/components/MenuTrigger/useTriggerElement.d.ts +0 -5
  413. package/lib-commonjs/components/MenuTrigger/useTriggerElement.js +0 -195
  414. package/lib-commonjs/components/MenuTrigger/useTriggerElement.js.map +0 -1
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
 
7
- var tslib_1 = /*#__PURE__*/require("tslib");
7
+ const tslib_1 = /*#__PURE__*/require("tslib");
8
8
 
9
9
  tslib_1.__exportStar(require("./components/MenuDivider/index"), exports);
10
10
  //# sourceMappingURL=MenuDivider.js.map
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
 
7
- var tslib_1 = /*#__PURE__*/require("tslib");
7
+ const tslib_1 = /*#__PURE__*/require("tslib");
8
8
 
9
9
  tslib_1.__exportStar(require("./components/MenuGroup/index"), exports);
10
10
  //# sourceMappingURL=MenuGroup.js.map
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
 
7
- var tslib_1 = /*#__PURE__*/require("tslib");
7
+ const tslib_1 = /*#__PURE__*/require("tslib");
8
8
 
9
9
  tslib_1.__exportStar(require("./components/MenuGroupHeader/index"), exports);
10
10
  //# sourceMappingURL=MenuGroupHeader.js.map
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
 
7
- var tslib_1 = /*#__PURE__*/require("tslib");
7
+ const tslib_1 = /*#__PURE__*/require("tslib");
8
8
 
9
9
  tslib_1.__exportStar(require("./components/MenuItem/index"), exports);
10
10
  //# sourceMappingURL=MenuItem.js.map
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
 
7
- var tslib_1 = /*#__PURE__*/require("tslib");
7
+ const tslib_1 = /*#__PURE__*/require("tslib");
8
8
 
9
9
  tslib_1.__exportStar(require("./components/MenuItemCheckbox/index"), exports);
10
10
  //# sourceMappingURL=MenuItemCheckbox.js.map
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
 
7
- var tslib_1 = /*#__PURE__*/require("tslib");
7
+ const tslib_1 = /*#__PURE__*/require("tslib");
8
8
 
9
9
  tslib_1.__exportStar(require("./components/MenuItemRadio/index"), exports);
10
10
  //# sourceMappingURL=MenuItemRadio.js.map
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
 
7
- var tslib_1 = /*#__PURE__*/require("tslib");
7
+ const tslib_1 = /*#__PURE__*/require("tslib");
8
8
 
9
9
  tslib_1.__exportStar(require("./components/MenuList/index"), exports);
10
10
  //# sourceMappingURL=MenuList.js.map
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
 
7
- var tslib_1 = /*#__PURE__*/require("tslib");
7
+ const tslib_1 = /*#__PURE__*/require("tslib");
8
8
 
9
9
  tslib_1.__exportStar(require("./components/MenuPopover/index"), exports);
10
10
  //# sourceMappingURL=MenuPopover.js.map
@@ -0,0 +1 @@
1
+ export * from './components/MenuSplitGroup/index';
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+
7
+ const tslib_1 = /*#__PURE__*/require("tslib");
8
+
9
+ tslib_1.__exportStar(require("./components/MenuSplitGroup/index"), exports);
10
+ //# sourceMappingURL=MenuSplitGroup.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/MenuSplitGroup.ts"],"names":[],"mappings":";;;;;;;;AAAA,OAAA,CAAA,YAAA,CAAA,OAAA,CAAA,mCAAA,CAAA,EAAA,OAAA","sourceRoot":""}
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
 
7
- var tslib_1 = /*#__PURE__*/require("tslib");
7
+ const tslib_1 = /*#__PURE__*/require("tslib");
8
8
 
9
9
  tslib_1.__exportStar(require("./components/MenuTrigger/index"), exports);
10
10
  //# sourceMappingURL=MenuTrigger.js.map
@@ -5,20 +5,20 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.Menu = void 0;
7
7
 
8
- var useMenu_1 = /*#__PURE__*/require("./useMenu");
8
+ const useMenu_1 = /*#__PURE__*/require("./useMenu");
9
9
 
10
- var useMenuContextValues_1 = /*#__PURE__*/require("./useMenuContextValues");
10
+ const useMenuContextValues_1 = /*#__PURE__*/require("./useMenuContextValues");
11
11
 
12
- var renderMenu_1 = /*#__PURE__*/require("./renderMenu");
12
+ const renderMenu_1 = /*#__PURE__*/require("./renderMenu");
13
13
  /**
14
14
  * Wrapper component that manages state for a popup MenuList and a MenuTrigger
15
15
  */
16
16
 
17
17
 
18
- var Menu = function (props) {
19
- var state = useMenu_1.useMenu(props);
20
- var contextValues = useMenuContextValues_1.useMenuContextValues(state);
21
- return renderMenu_1.renderMenu(state, contextValues);
18
+ const Menu = props => {
19
+ const state = useMenu_1.useMenu_unstable(props);
20
+ const contextValues = useMenuContextValues_1.useMenuContextValues_unstable(state);
21
+ return renderMenu_1.renderMenu_unstable(state, contextValues);
22
22
  };
23
23
 
24
24
  exports.Menu = Menu;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/Menu/Menu.tsx"],"names":[],"mappings":";;;;;;;AACA,IAAA,SAAA,gBAAA,OAAA,CAAA,WAAA,CAAA;;AACA,IAAA,sBAAA,gBAAA,OAAA,CAAA,wBAAA,CAAA;;AACA,IAAA,YAAA,gBAAA,OAAA,CAAA,cAAA,CAAA;AAGA;;AAEG;;;AACI,IAAM,IAAI,GAAwB,UAAA,KAAA,EAAK;AAC5C,MAAM,KAAK,GAAG,SAAA,CAAA,OAAA,CAAQ,KAAR,CAAd;AACA,MAAM,aAAa,GAAG,sBAAA,CAAA,oBAAA,CAAqB,KAArB,CAAtB;AAEA,SAAO,YAAA,CAAA,UAAA,CAAW,KAAX,EAAkB,aAAlB,CAAP;AACD,CALM;;AAAM,OAAA,CAAA,IAAA,GAAI,IAAJ;AAOb,OAAA,CAAA,IAAA,CAAK,WAAL,GAAmB,MAAnB","sourceRoot":""}
1
+ {"version":3,"sources":["../../../src/components/Menu/Menu.tsx"],"names":[],"mappings":";;;;;;;AACA,MAAA,SAAA,gBAAA,OAAA,CAAA,WAAA,CAAA;;AACA,MAAA,sBAAA,gBAAA,OAAA,CAAA,wBAAA,CAAA;;AACA,MAAA,YAAA,gBAAA,OAAA,CAAA,cAAA,CAAA;AAGA;;AAEG;;;AACI,MAAM,IAAI,GAAwB,KAAK,IAAG;AAC/C,QAAM,KAAK,GAAG,SAAA,CAAA,gBAAA,CAAiB,KAAjB,CAAd;AACA,QAAM,aAAa,GAAG,sBAAA,CAAA,6BAAA,CAA8B,KAA9B,CAAtB;AAEA,SAAO,YAAA,CAAA,mBAAA,CAAoB,KAApB,EAA2B,aAA3B,CAAP;AACD,CALM;;AAAM,OAAA,CAAA,IAAA,GAAI,IAAJ;AAOb,OAAA,CAAA,IAAA,CAAK,WAAL,GAAmB,MAAnB","sourceRoot":""}
@@ -1,7 +1,7 @@
1
1
  import * as React from 'react';
2
2
  import { ComponentProps, ComponentState } from '@fluentui/react-utilities';
3
3
  import { usePopperMouseTarget, PositioningShorthand } from '@fluentui/react-positioning';
4
- import { MenuListCommons } from '../MenuList/index';
4
+ import { MenuListCommons } from '../MenuList/MenuList.types';
5
5
  import { MenuContextValue } from '../../contexts/menuContext';
6
6
  declare type MenuCommons = MenuListCommons & {
7
7
  /**
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
 
7
- var tslib_1 = /*#__PURE__*/require("tslib");
7
+ const tslib_1 = /*#__PURE__*/require("tslib");
8
8
 
9
9
  tslib_1.__exportStar(require("./Menu"), exports);
10
10
 
@@ -2,4 +2,4 @@ import type { MenuContextValues, MenuState } from './Menu.types';
2
2
  /**
3
3
  * Render the final JSX of Menu
4
4
  */
5
- export declare const renderMenu: (state: MenuState, contextValues: MenuContextValues) => JSX.Element;
5
+ export declare const renderMenu_unstable: (state: MenuState, contextValues: MenuContextValues) => JSX.Element;
@@ -3,21 +3,21 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.renderMenu = void 0;
6
+ exports.renderMenu_unstable = void 0;
7
7
 
8
- var React = /*#__PURE__*/require("react");
8
+ const React = /*#__PURE__*/require("react");
9
9
 
10
- var menuContext_1 = /*#__PURE__*/require("../../contexts/menuContext");
10
+ const menuContext_1 = /*#__PURE__*/require("../../contexts/menuContext");
11
11
  /**
12
12
  * Render the final JSX of Menu
13
13
  */
14
14
 
15
15
 
16
- var renderMenu = function (state, contextValues) {
16
+ const renderMenu_unstable = (state, contextValues) => {
17
17
  return React.createElement(menuContext_1.MenuProvider, {
18
18
  value: contextValues.menu
19
19
  }, state.menuTrigger, state.open && state.menuPopover);
20
20
  };
21
21
 
22
- exports.renderMenu = renderMenu;
22
+ exports.renderMenu_unstable = renderMenu_unstable;
23
23
  //# sourceMappingURL=renderMenu.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/Menu/renderMenu.tsx"],"names":[],"mappings":";;;;;;;AAAA,IAAA,KAAA,gBAAA,OAAA,CAAA,OAAA,CAAA;;AACA,IAAA,aAAA,gBAAA,OAAA,CAAA,4BAAA,CAAA;AAGA;;AAEG;;;AACI,IAAM,UAAU,GAAG,UAAC,KAAD,EAAmB,aAAnB,EAAmD;AAC3E,SACE,KAAA,CAAA,aAAA,CAAC,aAAA,CAAA,YAAD,EAAa;AAAC,IAAA,KAAK,EAAE,aAAa,CAAC;AAAtB,GAAb,EACG,KAAK,CAAC,WADT,EAEG,KAAK,CAAC,IAAN,IAAc,KAAK,CAAC,WAFvB,CADF;AAMD,CAPM;;AAAM,OAAA,CAAA,UAAA,GAAU,UAAV","sourceRoot":""}
1
+ {"version":3,"sources":["../../../src/components/Menu/renderMenu.tsx"],"names":[],"mappings":";;;;;;;AAAA,MAAA,KAAA,gBAAA,OAAA,CAAA,OAAA,CAAA;;AACA,MAAA,aAAA,gBAAA,OAAA,CAAA,4BAAA,CAAA;AAGA;;AAEG;;;AACI,MAAM,mBAAmB,GAAG,CAAC,KAAD,EAAmB,aAAnB,KAAuD;AACxF,SACE,KAAA,CAAA,aAAA,CAAC,aAAA,CAAA,YAAD,EAAa;AAAC,IAAA,KAAK,EAAE,aAAa,CAAC;AAAtB,GAAb,EACG,KAAK,CAAC,WADT,EAEG,KAAK,CAAC,IAAN,IAAc,KAAK,CAAC,WAFvB,CADF;AAMD,CAPM;;AAAM,OAAA,CAAA,mBAAA,GAAmB,mBAAnB","sourceRoot":""}
@@ -3,8 +3,8 @@ import type { MenuProps, MenuState } from './Menu.types';
3
3
  * Create the state required to render Menu.
4
4
  *
5
5
  * The returned state can be modified with hooks such as useMenuStyles,
6
- * before being passed to renderMenu.
6
+ * before being passed to renderMenu_unstable.
7
7
  *
8
8
  * @param props - props from this instance of Menu
9
9
  */
10
- export declare const useMenu: (props: MenuProps) => MenuState;
10
+ export declare const useMenu_unstable: (props: MenuProps) => MenuState;
@@ -3,170 +3,159 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.useMenu = void 0;
6
+ exports.useMenu_unstable = void 0;
7
7
 
8
- var tslib_1 = /*#__PURE__*/require("tslib");
8
+ const React = /*#__PURE__*/require("react");
9
9
 
10
- var React = /*#__PURE__*/require("react");
10
+ const react_positioning_1 = /*#__PURE__*/require("@fluentui/react-positioning");
11
11
 
12
- var react_positioning_1 = /*#__PURE__*/require("@fluentui/react-positioning");
12
+ const react_utilities_1 = /*#__PURE__*/require("@fluentui/react-utilities");
13
13
 
14
- var react_utilities_1 = /*#__PURE__*/require("@fluentui/react-utilities");
14
+ const react_shared_contexts_1 = /*#__PURE__*/require("@fluentui/react-shared-contexts");
15
15
 
16
- var react_provider_1 = /*#__PURE__*/require("@fluentui/react-provider");
16
+ const react_portal_1 = /*#__PURE__*/require("@fluentui/react-portal");
17
17
 
18
- var react_portal_1 = /*#__PURE__*/require("@fluentui/react-portal");
18
+ const react_tabster_1 = /*#__PURE__*/require("@fluentui/react-tabster");
19
19
 
20
- var react_tabster_1 = /*#__PURE__*/require("@fluentui/react-tabster");
20
+ const menuContext_1 = /*#__PURE__*/require("../../contexts/menuContext");
21
21
 
22
- var index_1 = /*#__PURE__*/require("../MenuTrigger/index");
22
+ const index_1 = /*#__PURE__*/require("../../utils/index");
23
23
 
24
- var menuContext_1 = /*#__PURE__*/require("../../contexts/menuContext");
25
-
26
- var index_2 = /*#__PURE__*/require("../../utils/index");
27
-
28
- var useIsSubmenu_1 = /*#__PURE__*/require("../../utils/useIsSubmenu");
24
+ const useIsSubmenu_1 = /*#__PURE__*/require("../../utils/useIsSubmenu");
29
25
  /**
30
26
  * Create the state required to render Menu.
31
27
  *
32
28
  * The returned state can be modified with hooks such as useMenuStyles,
33
- * before being passed to renderMenu.
29
+ * before being passed to renderMenu_unstable.
34
30
  *
35
31
  * @param props - props from this instance of Menu
36
32
  */
37
33
 
38
34
 
39
- var useMenu = function (props) {
40
- var triggerId = react_utilities_1.useId('menu');
41
- var isSubmenu = useIsSubmenu_1.useIsSubmenu();
42
-
43
- var _a = react_positioning_1.usePopperMouseTarget(),
44
- contextTarget = _a[0],
45
- setContextTarget = _a[1];
46
-
47
- var popperState = tslib_1.__assign({
35
+ const useMenu_unstable = props => {
36
+ const triggerId = react_utilities_1.useId('menu');
37
+ const isSubmenu = useIsSubmenu_1.useIsSubmenu();
38
+ const [contextTarget, setContextTarget] = react_positioning_1.usePopperMouseTarget();
39
+ const popperState = {
48
40
  position: isSubmenu ? 'after' : 'below',
49
41
  align: isSubmenu ? 'top' : 'start',
50
- target: props.openOnContext ? contextTarget : undefined
51
- }, react_positioning_1.resolvePositioningShorthand(props.positioning));
52
-
53
- var children = React.Children.toArray(props.children);
54
-
55
- if (children.length !== 2 && process.env.NODE_ENV !== 'production') {
56
- // eslint-disable-next-line no-console
57
- console.warn('Menu can only take one MenuTrigger and one MenuList as children');
58
- }
42
+ target: props.openOnContext ? contextTarget : undefined,
43
+ ...react_positioning_1.resolvePositioningShorthand(props.positioning)
44
+ };
45
+ const children = React.Children.toArray(props.children);
46
+
47
+ if (process.env.NODE_ENV !== 'production') {
48
+ if (children.length === 0) {
49
+ // eslint-disable-next-line no-console
50
+ console.warn('Menu must contain at least one child');
51
+ }
59
52
 
60
- var _b = children.reduce(function (acc, child) {
61
- if (child.type === index_1.MenuTrigger) {
62
- acc.menuTrigger = child;
63
- } else {
64
- acc.menuPopover = child;
53
+ if (children.length > 2) {
54
+ // eslint-disable-next-line no-console
55
+ console.warn('Menu must contain at most two children');
65
56
  }
57
+ }
66
58
 
67
- return acc;
68
- }, {}),
69
- menuTrigger = _b.menuTrigger,
70
- menuPopover = _b.menuPopover;
59
+ let menuTrigger = undefined;
60
+ let menuPopover = undefined;
71
61
 
72
- var _c = react_positioning_1.usePopper(popperState),
73
- triggerRef = _c.targetRef,
74
- menuPopoverRef = _c.containerRef;
62
+ if (children.length === 2) {
63
+ menuTrigger = children[0];
64
+ menuPopover = children[1];
65
+ } else if (children.length === 1) {
66
+ menuPopover = children[0];
67
+ }
75
68
 
76
- var initialState = tslib_1.__assign(tslib_1.__assign({
69
+ const {
70
+ targetRef: triggerRef,
71
+ containerRef: menuPopoverRef
72
+ } = react_positioning_1.usePopper(popperState);
73
+ const initialState = {
77
74
  hoverDelay: 500,
78
- triggerId: triggerId,
75
+ triggerId,
79
76
  isSubmenu: !!isSubmenu,
80
77
  openOnHover: !!isSubmenu,
81
- contextTarget: contextTarget,
82
- setContextTarget: setContextTarget
83
- }, props), {
84
- menuTrigger: menuTrigger,
85
- menuPopover: menuPopover,
86
- triggerRef: triggerRef,
87
- menuPopoverRef: menuPopoverRef
88
- }); // TODO Better way to narrow types ?
89
-
90
-
91
- var _d = useMenuOpenState(initialState),
92
- open = _d[0],
93
- setOpen = _d[1];
94
-
95
- var _e = useMenuSelectableState(initialState),
96
- checkedValues = _e[0],
97
- onCheckedValueChange = _e[1];
98
-
99
- return tslib_1.__assign(tslib_1.__assign({}, initialState), {
100
- open: open,
101
- setOpen: setOpen,
102
- checkedValues: checkedValues,
103
- onCheckedValueChange: onCheckedValueChange
104
- });
78
+ contextTarget,
79
+ setContextTarget,
80
+ ...props,
81
+ menuTrigger,
82
+ menuPopover,
83
+ triggerRef,
84
+ menuPopoverRef,
85
+ components: {}
86
+ }; // TODO Better way to narrow types ?
87
+
88
+ const [open, setOpen] = useMenuOpenState(initialState);
89
+ const [checkedValues, onCheckedValueChange] = useMenuSelectableState(initialState);
90
+ return { ...initialState,
91
+ open,
92
+ setOpen,
93
+ checkedValues,
94
+ onCheckedValueChange
95
+ };
105
96
  };
106
97
 
107
- exports.useMenu = useMenu;
98
+ exports.useMenu_unstable = useMenu_unstable;
108
99
  /**
109
100
  * Adds appropriate state values and handlers for selectable items
110
101
  * i.e checkboxes and radios
111
102
  */
112
103
 
113
- var useMenuSelectableState = function (state) {
114
- var _a = react_utilities_1.useControllableState({
104
+ const useMenuSelectableState = state => {
105
+ const [checkedValues, setCheckedValues] = react_utilities_1.useControllableState({
115
106
  state: state.checkedValues,
116
107
  defaultState: state.defaultCheckedValues,
117
108
  initialState: {}
118
- }),
119
- checkedValues = _a[0],
120
- setCheckedValues = _a[1];
121
-
122
- var onCheckedValueChangeOriginal = state.onCheckedValueChange;
123
- var onCheckedValueChange = react_utilities_1.useEventCallback(function (e, _a) {
124
- var name = _a.name,
125
- checkedItems = _a.checkedItems;
126
-
109
+ });
110
+ const {
111
+ onCheckedValueChange: onCheckedValueChangeOriginal
112
+ } = state;
113
+ const onCheckedValueChange = react_utilities_1.useEventCallback((e, {
114
+ name,
115
+ checkedItems
116
+ }) => {
127
117
  if (onCheckedValueChangeOriginal) {
128
118
  onCheckedValueChangeOriginal(e, {
129
- name: name,
130
- checkedItems: checkedItems
119
+ name,
120
+ checkedItems
131
121
  });
132
122
  }
133
123
 
134
- setCheckedValues(function (s) {
135
- var _a, _b;
136
-
137
- return s ? tslib_1.__assign(tslib_1.__assign({}, s), (_a = {}, _a[name] = checkedItems, _a)) : (_b = {}, _b[name] = checkedItems, _b);
124
+ setCheckedValues(s => {
125
+ return s ? { ...s,
126
+ [name]: checkedItems
127
+ } : {
128
+ [name]: checkedItems
129
+ };
138
130
  });
139
131
  });
140
132
  return [checkedValues, onCheckedValueChange];
141
133
  };
142
134
 
143
- var useMenuOpenState = function (state) {
144
- var targetDocument = react_provider_1.useFluent().targetDocument;
145
- var parentSetOpen = menuContext_1.useMenuContext(function (context) {
146
- return context.setOpen;
147
- });
148
- var onOpenChange = react_utilities_1.useEventCallback(function (e, data) {
135
+ const useMenuOpenState = state => {
136
+ const {
137
+ targetDocument
138
+ } = react_shared_contexts_1.useFluent();
139
+ const parentSetOpen = menuContext_1.useMenuContext_unstable(context => context.setOpen);
140
+ const onOpenChange = react_utilities_1.useEventCallback((e, data) => {
149
141
  var _a;
150
142
 
151
143
  return (_a = state.onOpenChange) === null || _a === void 0 ? void 0 : _a.call(state, e, data);
152
144
  });
153
- var shouldHandleKeyboardRef = React.useRef(false);
154
- var shouldHandleTabRef = React.useRef(false);
155
- var pressedShiftRef = React.useRef(false);
156
- var setOpenTimeout = React.useRef(0);
157
- var enteringTriggerRef = React.useRef(false);
158
-
159
- var _a = react_utilities_1.useControllableState({
145
+ const shouldHandleKeyboardRef = React.useRef(false);
146
+ const shouldHandleTabRef = React.useRef(false);
147
+ const pressedShiftRef = React.useRef(false);
148
+ const setOpenTimeout = React.useRef(0);
149
+ const enteringTriggerRef = React.useRef(false);
150
+ const [open, setOpenState] = react_utilities_1.useControllableState({
160
151
  state: state.open,
161
152
  defaultState: state.defaultOpen,
162
153
  initialState: false
163
- }),
164
- open = _a[0],
165
- setOpenState = _a[1];
166
-
167
- var trySetOpen = react_utilities_1.useEventCallback(function (e, data) {
168
- var event = e instanceof CustomEvent && e.type === index_2.MENU_ENTER_EVENT ? e.detail.nativeEvent : e;
169
- onOpenChange === null || onOpenChange === void 0 ? void 0 : onOpenChange(event, tslib_1.__assign({}, data));
154
+ });
155
+ const trySetOpen = react_utilities_1.useEventCallback((e, data) => {
156
+ const event = e instanceof CustomEvent && e.type === index_1.MENU_ENTER_EVENT ? e.detail.nativeEvent : e;
157
+ onOpenChange === null || onOpenChange === void 0 ? void 0 : onOpenChange(event, { ...data
158
+ });
170
159
 
171
160
  if (data.open && e.type === 'contextmenu') {
172
161
  state.setContextTarget(e);
@@ -183,12 +172,13 @@ var useMenuOpenState = function (state) {
183
172
  }
184
173
 
185
174
  if (data.bubble) {
186
- parentSetOpen(e, tslib_1.__assign({}, data));
175
+ parentSetOpen(e, { ...data
176
+ });
187
177
  }
188
178
 
189
179
  setOpenState(data.open);
190
180
  });
191
- var setOpen = react_utilities_1.useEventCallback(function (e, data) {
181
+ const setOpen = react_utilities_1.useEventCallback((e, data) => {
192
182
  var _a;
193
183
 
194
184
  clearTimeout(setOpenTimeout.current);
@@ -198,7 +188,7 @@ var useMenuOpenState = function (state) {
198
188
  e.persist();
199
189
  }
200
190
 
201
- if (e.type === 'mouseleave' || e.type === 'mouseenter' || e.type === 'mousemove' || e.type === index_2.MENU_ENTER_EVENT) {
191
+ if (e.type === 'mouseleave' || e.type === 'mouseenter' || e.type === 'mousemove' || e.type === index_1.MENU_ENTER_EVENT) {
202
192
  if ((_a = state.triggerRef.current) === null || _a === void 0 ? void 0 : _a.contains(e.target)) {
203
193
  enteringTriggerRef.current = e.type === 'mouseenter' || e.type === 'mousemove';
204
194
  } // FIXME leaking Node timeout type
@@ -206,9 +196,7 @@ var useMenuOpenState = function (state) {
206
196
  // @ts-ignore
207
197
 
208
198
 
209
- setOpenTimeout.current = setTimeout(function () {
210
- return trySetOpen(e, data);
211
- }, state.hoverDelay);
199
+ setOpenTimeout.current = setTimeout(() => trySetOpen(e, data), state.hoverDelay);
212
200
  } else {
213
201
  trySetOpen(e, data);
214
202
  }
@@ -218,15 +206,13 @@ var useMenuOpenState = function (state) {
218
206
  disabled: !open,
219
207
  element: targetDocument,
220
208
  refs: [state.menuPopoverRef, state.triggerRef],
221
- callback: function (e) {
222
- return setOpen(e, {
223
- open: false
224
- });
225
- }
209
+ callback: e => setOpen(e, {
210
+ open: false
211
+ })
226
212
  });
227
- index_2.useOnMenuMouseEnter({
213
+ index_1.useOnMenuMouseEnter({
228
214
  element: targetDocument,
229
- callback: function (e) {
215
+ callback: e => {
230
216
  // When moving from a menu directly back to its trigger, this handler can close the menu
231
217
  // Explicitly check a flag to see if this situation happens
232
218
  if (!enteringTriggerRef.current) {
@@ -240,39 +226,42 @@ var useMenuOpenState = function (state) {
240
226
  }); // Clear timeout on unmount
241
227
  // Setting state after a component unmounts can cause memory leaks
242
228
 
243
- React.useEffect(function () {
244
- return function () {
229
+ React.useEffect(() => {
230
+ return () => {
245
231
  clearTimeout(setOpenTimeout.current);
246
232
  };
247
233
  }, []); // Manage focus for open state
248
234
 
249
- var _b = react_tabster_1.useFocusFinders(),
250
- findFirstFocusable = _b.findFirstFocusable,
251
- findNextFocusable = _b.findNextFocusable,
252
- findPrevFocusable = _b.findPrevFocusable;
253
-
254
- var focusFirst = React.useCallback(function () {
255
- var firstFocusable = findFirstFocusable(state.menuPopoverRef.current);
235
+ const {
236
+ findFirstFocusable,
237
+ findNextFocusable,
238
+ findPrevFocusable
239
+ } = react_tabster_1.useFocusFinders();
240
+ const focusFirst = React.useCallback(() => {
241
+ const firstFocusable = findFirstFocusable(state.menuPopoverRef.current);
256
242
  firstFocusable === null || firstFocusable === void 0 ? void 0 : firstFocusable.focus();
257
243
  }, [findFirstFocusable, state.menuPopoverRef]);
258
- var focusAfterMenuTrigger = React.useCallback(function () {
259
- var nextFocusable = findNextFocusable(state.triggerRef.current);
244
+ const focusAfterMenuTrigger = React.useCallback(() => {
245
+ const nextFocusable = findNextFocusable(state.triggerRef.current);
260
246
  nextFocusable === null || nextFocusable === void 0 ? void 0 : nextFocusable.focus();
261
247
  }, [findNextFocusable, state.triggerRef]);
262
- var focusBeforeMenuTrigger = React.useCallback(function () {
263
- var prevFocusable = findPrevFocusable(state.triggerRef.current);
248
+ const focusBeforeMenuTrigger = React.useCallback(() => {
249
+ const prevFocusable = findPrevFocusable(state.triggerRef.current);
264
250
  prevFocusable === null || prevFocusable === void 0 ? void 0 : prevFocusable.focus();
265
251
  }, [findPrevFocusable, state.triggerRef]);
266
- React.useEffect(function () {
267
- var _a;
268
-
269
- if (!shouldHandleKeyboardRef.current) {
270
- return;
252
+ React.useEffect(() => {
253
+ if (open) {
254
+ focusFirst();
271
255
  }
256
+ }, [open, focusFirst]);
257
+ React.useEffect(() => {
258
+ var _a;
272
259
 
273
260
  if (open) {
274
261
  focusFirst();
275
- } else {
262
+ }
263
+
264
+ if (shouldHandleKeyboardRef.current && !open) {
276
265
  if (shouldHandleTabRef.current && !state.isSubmenu) {
277
266
  pressedShiftRef.current ? focusBeforeMenuTrigger() : focusAfterMenuTrigger();
278
267
  } else {