@fluentui/react-menu 9.0.0-nightly.b5b7401007.0 → 9.0.0-rc.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (474) hide show
  1. package/CHANGELOG.json +520 -34
  2. package/CHANGELOG.md +120 -22
  3. package/Spec.md +21 -16
  4. package/dist/react-menu.d.ts +141 -71
  5. package/lib/Menu.js.map +1 -1
  6. package/lib/MenuDivider.js.map +1 -1
  7. package/lib/MenuGroup.js.map +1 -1
  8. package/lib/MenuGroupHeader.js.map +1 -1
  9. package/lib/MenuItem.js.map +1 -1
  10. package/lib/MenuItemCheckbox.js.map +1 -1
  11. package/lib/MenuItemRadio.js.map +1 -1
  12. package/lib/MenuList.js.map +1 -1
  13. package/lib/MenuPopover.js.map +1 -1
  14. package/lib/MenuSplitGroup.d.ts +1 -0
  15. package/lib/MenuSplitGroup.js +2 -0
  16. package/lib/MenuSplitGroup.js.map +1 -0
  17. package/lib/MenuTrigger.js.map +1 -1
  18. package/lib/components/Menu/Menu.js +7 -7
  19. package/lib/components/Menu/Menu.js.map +1 -1
  20. package/lib/components/Menu/Menu.types.d.ts +1 -1
  21. package/lib/components/Menu/Menu.types.js.map +1 -1
  22. package/lib/components/Menu/index.js.map +1 -1
  23. package/lib/components/Menu/renderMenu.d.ts +1 -1
  24. package/lib/components/Menu/renderMenu.js +1 -1
  25. package/lib/components/Menu/renderMenu.js.map +1 -1
  26. package/lib/components/Menu/useMenu.d.ts +2 -2
  27. package/lib/components/Menu/useMenu.js +119 -128
  28. package/lib/components/Menu/useMenu.js.map +1 -1
  29. package/lib/components/Menu/useMenuContextValues.d.ts +1 -1
  30. package/lib/components/Menu/useMenuContextValues.js +35 -33
  31. package/lib/components/Menu/useMenuContextValues.js.map +1 -1
  32. package/lib/components/MenuDivider/MenuDivider.d.ts +1 -1
  33. package/lib/components/MenuDivider/MenuDivider.js +8 -8
  34. package/lib/components/MenuDivider/MenuDivider.js.map +1 -1
  35. package/lib/components/MenuDivider/MenuDivider.types.d.ts +2 -2
  36. package/lib/components/MenuDivider/MenuDivider.types.js.map +1 -1
  37. package/lib/components/MenuDivider/index.js.map +1 -1
  38. package/lib/components/MenuDivider/renderMenuDivider.d.ts +1 -1
  39. package/lib/components/MenuDivider/renderMenuDivider.js +7 -7
  40. package/lib/components/MenuDivider/renderMenuDivider.js.map +1 -1
  41. package/lib/components/MenuDivider/useMenuDivider.d.ts +1 -1
  42. package/lib/components/MenuDivider/useMenuDivider.js +9 -7
  43. package/lib/components/MenuDivider/useMenuDivider.js.map +1 -1
  44. package/lib/components/MenuDivider/useMenuDividerStyles.d.ts +2 -1
  45. package/lib/components/MenuDivider/useMenuDividerStyles.js +7 -5
  46. package/lib/components/MenuDivider/useMenuDividerStyles.js.map +1 -1
  47. package/lib/components/MenuGroup/MenuGroup.d.ts +1 -1
  48. package/lib/components/MenuGroup/MenuGroup.js +10 -8
  49. package/lib/components/MenuGroup/MenuGroup.js.map +1 -1
  50. package/lib/components/MenuGroup/MenuGroup.types.d.ts +3 -3
  51. package/lib/components/MenuGroup/MenuGroup.types.js.map +1 -1
  52. package/lib/components/MenuGroup/index.d.ts +1 -0
  53. package/lib/components/MenuGroup/index.js +1 -0
  54. package/lib/components/MenuGroup/index.js.map +1 -1
  55. package/lib/components/MenuGroup/renderMenuGroup.d.ts +1 -1
  56. package/lib/components/MenuGroup/renderMenuGroup.js +7 -7
  57. package/lib/components/MenuGroup/renderMenuGroup.js.map +1 -1
  58. package/lib/components/MenuGroup/useMenuGroup.d.ts +1 -1
  59. package/lib/components/MenuGroup/useMenuGroup.js +10 -7
  60. package/lib/components/MenuGroup/useMenuGroup.js.map +1 -1
  61. package/lib/components/MenuGroup/useMenuGroupContextValues.d.ts +1 -1
  62. package/lib/components/MenuGroup/useMenuGroupContextValues.js +8 -8
  63. package/lib/components/MenuGroup/useMenuGroupContextValues.js.map +1 -1
  64. package/lib/components/MenuGroup/useMenuGroupStyles.d.ts +3 -0
  65. package/lib/components/MenuGroup/useMenuGroupStyles.js +7 -0
  66. package/lib/components/MenuGroup/useMenuGroupStyles.js.map +1 -0
  67. package/lib/components/MenuGroupHeader/MenuGroupHeader.d.ts +1 -1
  68. package/lib/components/MenuGroupHeader/MenuGroupHeader.js +8 -8
  69. package/lib/components/MenuGroupHeader/MenuGroupHeader.js.map +1 -1
  70. package/lib/components/MenuGroupHeader/MenuGroupHeader.types.d.ts +2 -2
  71. package/lib/components/MenuGroupHeader/MenuGroupHeader.types.js.map +1 -1
  72. package/lib/components/MenuGroupHeader/index.js.map +1 -1
  73. package/lib/components/MenuGroupHeader/renderMenuGroupHeader.d.ts +1 -1
  74. package/lib/components/MenuGroupHeader/renderMenuGroupHeader.js +7 -7
  75. package/lib/components/MenuGroupHeader/renderMenuGroupHeader.js.map +1 -1
  76. package/lib/components/MenuGroupHeader/useMenuGroupHeader.d.ts +1 -1
  77. package/lib/components/MenuGroupHeader/useMenuGroupHeader.js +13 -8
  78. package/lib/components/MenuGroupHeader/useMenuGroupHeader.js.map +1 -1
  79. package/lib/components/MenuGroupHeader/useMenuGroupHeaderStyles.d.ts +2 -1
  80. package/lib/components/MenuGroupHeader/useMenuGroupHeaderStyles.js +7 -5
  81. package/lib/components/MenuGroupHeader/useMenuGroupHeaderStyles.js.map +1 -1
  82. package/lib/components/MenuItem/MenuItem.d.ts +1 -1
  83. package/lib/components/MenuItem/MenuItem.js +8 -10
  84. package/lib/components/MenuItem/MenuItem.js.map +1 -1
  85. package/lib/components/MenuItem/MenuItem.types.d.ts +7 -7
  86. package/lib/components/MenuItem/MenuItem.types.js.map +1 -1
  87. package/lib/components/MenuItem/index.js.map +1 -1
  88. package/lib/components/MenuItem/renderMenuItem.d.ts +1 -1
  89. package/lib/components/MenuItem/renderMenuItem.js +12 -8
  90. package/lib/components/MenuItem/renderMenuItem.js.map +1 -1
  91. package/lib/components/MenuItem/useCharacterSearch.js +7 -7
  92. package/lib/components/MenuItem/useCharacterSearch.js.map +1 -1
  93. package/lib/components/MenuItem/useMenuItem.d.ts +2 -6
  94. package/lib/components/MenuItem/useMenuItem.js +37 -44
  95. package/lib/components/MenuItem/useMenuItem.js.map +1 -1
  96. package/lib/components/MenuItem/useMenuItemStyles.d.ts +2 -1
  97. package/lib/components/MenuItem/useMenuItemStyles.js +31 -27
  98. package/lib/components/MenuItem/useMenuItemStyles.js.map +1 -1
  99. package/lib/components/MenuItemCheckbox/MenuItemCheckbox.d.ts +1 -1
  100. package/lib/components/MenuItemCheckbox/MenuItemCheckbox.js +8 -8
  101. package/lib/components/MenuItemCheckbox/MenuItemCheckbox.js.map +1 -1
  102. package/lib/components/MenuItemCheckbox/MenuItemCheckbox.types.js.map +1 -1
  103. package/lib/components/MenuItemCheckbox/index.d.ts +1 -0
  104. package/lib/components/MenuItemCheckbox/index.js +1 -0
  105. package/lib/components/MenuItemCheckbox/index.js.map +1 -1
  106. package/lib/components/MenuItemCheckbox/renderMenuItemCheckbox.d.ts +1 -1
  107. package/lib/components/MenuItemCheckbox/renderMenuItemCheckbox.js +11 -8
  108. package/lib/components/MenuItemCheckbox/renderMenuItemCheckbox.js.map +1 -1
  109. package/lib/components/MenuItemCheckbox/useMenuItemCheckbox.d.ts +1 -1
  110. package/lib/components/MenuItemCheckbox/useMenuItemCheckbox.js +14 -15
  111. package/lib/components/MenuItemCheckbox/useMenuItemCheckbox.js.map +1 -1
  112. package/lib/components/MenuItemCheckbox/useMenuItemCheckboxStyles.d.ts +2 -1
  113. package/lib/components/MenuItemCheckbox/useMenuItemCheckboxStyles.js +8 -5
  114. package/lib/components/MenuItemCheckbox/useMenuItemCheckboxStyles.js.map +1 -1
  115. package/lib/components/MenuItemRadio/MenuItemRadio.d.ts +1 -1
  116. package/lib/components/MenuItemRadio/MenuItemRadio.js +8 -8
  117. package/lib/components/MenuItemRadio/MenuItemRadio.js.map +1 -1
  118. package/lib/components/MenuItemRadio/MenuItemRadio.types.js.map +1 -1
  119. package/lib/components/MenuItemRadio/index.d.ts +1 -0
  120. package/lib/components/MenuItemRadio/index.js +1 -0
  121. package/lib/components/MenuItemRadio/index.js.map +1 -1
  122. package/lib/components/MenuItemRadio/renderMenuItemRadio.d.ts +1 -1
  123. package/lib/components/MenuItemRadio/renderMenuItemRadio.js +11 -8
  124. package/lib/components/MenuItemRadio/renderMenuItemRadio.js.map +1 -1
  125. package/lib/components/MenuItemRadio/useMenuItemRadio.d.ts +1 -1
  126. package/lib/components/MenuItemRadio/useMenuItemRadio.js +14 -14
  127. package/lib/components/MenuItemRadio/useMenuItemRadio.js.map +1 -1
  128. package/lib/components/MenuItemRadio/useMenuItemRadioStyles.d.ts +2 -1
  129. package/lib/components/MenuItemRadio/useMenuItemRadioStyles.js +8 -5
  130. package/lib/components/MenuItemRadio/useMenuItemRadioStyles.js.map +1 -1
  131. package/lib/components/MenuList/MenuList.d.ts +1 -1
  132. package/lib/components/MenuList/MenuList.js +10 -10
  133. package/lib/components/MenuList/MenuList.js.map +1 -1
  134. package/lib/components/MenuList/MenuList.types.d.ts +12 -10
  135. package/lib/components/MenuList/MenuList.types.js.map +1 -1
  136. package/lib/components/MenuList/index.d.ts +1 -1
  137. package/lib/components/MenuList/index.js +0 -1
  138. package/lib/components/MenuList/index.js.map +1 -1
  139. package/lib/components/MenuList/renderMenuList.d.ts +1 -1
  140. package/lib/components/MenuList/renderMenuList.js +7 -7
  141. package/lib/components/MenuList/renderMenuList.js.map +1 -1
  142. package/lib/components/MenuList/useMenuList.d.ts +1 -1
  143. package/lib/components/MenuList/useMenuList.js +70 -87
  144. package/lib/components/MenuList/useMenuList.js.map +1 -1
  145. package/lib/components/MenuList/useMenuListContextValues.d.ts +1 -1
  146. package/lib/components/MenuList/useMenuListContextValues.js +19 -17
  147. package/lib/components/MenuList/useMenuListContextValues.js.map +1 -1
  148. package/lib/components/MenuList/useMenuListStyles.d.ts +2 -1
  149. package/lib/components/MenuList/useMenuListStyles.js +9 -7
  150. package/lib/components/MenuList/useMenuListStyles.js.map +1 -1
  151. package/lib/components/MenuPopover/MenuPopover.js +7 -7
  152. package/lib/components/MenuPopover/MenuPopover.js.map +1 -1
  153. package/lib/components/MenuPopover/MenuPopover.types.d.ts +2 -2
  154. package/lib/components/MenuPopover/MenuPopover.types.js.map +1 -1
  155. package/lib/components/MenuPopover/index.js.map +1 -1
  156. package/lib/components/MenuPopover/renderMenuPopover.d.ts +1 -1
  157. package/lib/components/MenuPopover/renderMenuPopover.js +9 -7
  158. package/lib/components/MenuPopover/renderMenuPopover.js.map +1 -1
  159. package/lib/components/MenuPopover/useMenuPopover.d.ts +3 -3
  160. package/lib/components/MenuPopover/useMenuPopover.js +35 -41
  161. package/lib/components/MenuPopover/useMenuPopover.js.map +1 -1
  162. package/lib/components/MenuPopover/useMenuPopoverStyles.d.ts +2 -1
  163. package/lib/components/MenuPopover/useMenuPopoverStyles.js +13 -8
  164. package/lib/components/MenuPopover/useMenuPopoverStyles.js.map +1 -1
  165. package/lib/components/MenuSplitGroup/MenuSplitGroup.d.ts +6 -0
  166. package/lib/components/MenuSplitGroup/MenuSplitGroup.js +15 -0
  167. package/lib/components/MenuSplitGroup/MenuSplitGroup.js.map +1 -0
  168. package/lib/components/MenuSplitGroup/MenuSplitGroup.types.d.ts +14 -0
  169. package/lib/components/MenuSplitGroup/MenuSplitGroup.types.js +2 -0
  170. package/lib/components/MenuSplitGroup/MenuSplitGroup.types.js.map +1 -0
  171. package/lib/components/MenuSplitGroup/index.d.ts +5 -0
  172. package/lib/components/MenuSplitGroup/index.js +6 -0
  173. package/lib/components/MenuSplitGroup/index.js.map +1 -0
  174. package/lib/components/MenuSplitGroup/renderMenuSplitGroup.d.ts +5 -0
  175. package/lib/components/MenuSplitGroup/renderMenuSplitGroup.js +15 -0
  176. package/lib/components/MenuSplitGroup/renderMenuSplitGroup.js.map +1 -0
  177. package/lib/components/MenuSplitGroup/useMenuSplitGroup.d.ts +12 -0
  178. package/lib/components/MenuSplitGroup/useMenuSplitGroup.js +67 -0
  179. package/lib/components/MenuSplitGroup/useMenuSplitGroup.js.map +1 -0
  180. package/lib/components/MenuSplitGroup/useMenuSplitGroupStyles.d.ts +6 -0
  181. package/lib/components/MenuSplitGroup/useMenuSplitGroupStyles.js +35 -0
  182. package/lib/components/MenuSplitGroup/useMenuSplitGroupStyles.js.map +1 -0
  183. package/lib/components/MenuTrigger/MenuTrigger.d.ts +2 -1
  184. package/lib/components/MenuTrigger/MenuTrigger.js +6 -5
  185. package/lib/components/MenuTrigger/MenuTrigger.js.map +1 -1
  186. package/lib/components/MenuTrigger/MenuTrigger.types.d.ts +7 -3
  187. package/lib/components/MenuTrigger/MenuTrigger.types.js.map +1 -1
  188. package/lib/components/MenuTrigger/index.js.map +1 -1
  189. package/lib/components/MenuTrigger/renderMenuTrigger.d.ts +1 -1
  190. package/lib/components/MenuTrigger/renderMenuTrigger.js +2 -2
  191. package/lib/components/MenuTrigger/renderMenuTrigger.js.map +1 -1
  192. package/lib/components/MenuTrigger/useMenuTrigger.d.ts +2 -2
  193. package/lib/components/MenuTrigger/useMenuTrigger.js +167 -5
  194. package/lib/components/MenuTrigger/useMenuTrigger.js.map +1 -1
  195. package/lib/components/index.js.map +1 -1
  196. package/lib/contexts/menuContext.d.ts +1 -1
  197. package/lib/contexts/menuContext.js +5 -11
  198. package/lib/contexts/menuContext.js.map +1 -1
  199. package/lib/contexts/menuGroupContext.d.ts +1 -1
  200. package/lib/contexts/menuGroupContext.js +3 -5
  201. package/lib/contexts/menuGroupContext.js.map +1 -1
  202. package/lib/contexts/menuListContext.d.ts +1 -1
  203. package/lib/contexts/menuListContext.js +7 -17
  204. package/lib/contexts/menuListContext.js.map +1 -1
  205. package/lib/contexts/menuTriggerContext.d.ts +1 -1
  206. package/lib/contexts/menuTriggerContext.js +4 -6
  207. package/lib/contexts/menuTriggerContext.js.map +1 -1
  208. package/lib/index.d.ts +11 -10
  209. package/lib/index.js +11 -10
  210. package/lib/index.js.map +1 -1
  211. package/lib/selectable/index.js.map +1 -1
  212. package/lib/selectable/types.js.map +1 -1
  213. package/lib/selectable/useCheckmarkStyles.d.ts +2 -2
  214. package/lib/selectable/useCheckmarkStyles.js +4 -4
  215. package/lib/selectable/useCheckmarkStyles.js.map +1 -1
  216. package/lib/utils/index.js.map +1 -1
  217. package/lib/utils/useIsSubmenu.js +3 -5
  218. package/lib/utils/useIsSubmenu.js.map +1 -1
  219. package/lib/utils/useOnMenuEnter.js +16 -14
  220. package/lib/utils/useOnMenuEnter.js.map +1 -1
  221. package/lib-commonjs/Menu.js +1 -1
  222. package/lib-commonjs/Menu.js.map +1 -1
  223. package/lib-commonjs/MenuDivider.js +1 -1
  224. package/lib-commonjs/MenuDivider.js.map +1 -1
  225. package/lib-commonjs/MenuGroup.js +1 -1
  226. package/lib-commonjs/MenuGroup.js.map +1 -1
  227. package/lib-commonjs/MenuGroupHeader.js +1 -1
  228. package/lib-commonjs/MenuGroupHeader.js.map +1 -1
  229. package/lib-commonjs/MenuItem.js +1 -1
  230. package/lib-commonjs/MenuItem.js.map +1 -1
  231. package/lib-commonjs/MenuItemCheckbox.js +1 -1
  232. package/lib-commonjs/MenuItemCheckbox.js.map +1 -1
  233. package/lib-commonjs/MenuItemRadio.js +1 -1
  234. package/lib-commonjs/MenuItemRadio.js.map +1 -1
  235. package/lib-commonjs/MenuList.js +1 -1
  236. package/lib-commonjs/MenuList.js.map +1 -1
  237. package/lib-commonjs/MenuPopover.js +1 -1
  238. package/lib-commonjs/MenuPopover.js.map +1 -1
  239. package/lib-commonjs/MenuSplitGroup.d.ts +1 -0
  240. package/lib-commonjs/MenuSplitGroup.js +10 -0
  241. package/lib-commonjs/MenuSplitGroup.js.map +1 -0
  242. package/lib-commonjs/MenuTrigger.js +1 -1
  243. package/lib-commonjs/MenuTrigger.js.map +1 -1
  244. package/lib-commonjs/components/Menu/Menu.js +7 -7
  245. package/lib-commonjs/components/Menu/Menu.js.map +1 -1
  246. package/lib-commonjs/components/Menu/Menu.types.d.ts +1 -1
  247. package/lib-commonjs/components/Menu/Menu.types.js.map +1 -1
  248. package/lib-commonjs/components/Menu/index.js +1 -1
  249. package/lib-commonjs/components/Menu/index.js.map +1 -1
  250. package/lib-commonjs/components/Menu/renderMenu.d.ts +1 -1
  251. package/lib-commonjs/components/Menu/renderMenu.js +5 -5
  252. package/lib-commonjs/components/Menu/renderMenu.js.map +1 -1
  253. package/lib-commonjs/components/Menu/useMenu.d.ts +2 -2
  254. package/lib-commonjs/components/Menu/useMenu.js +130 -141
  255. package/lib-commonjs/components/Menu/useMenu.js.map +1 -1
  256. package/lib-commonjs/components/Menu/useMenuContextValues.d.ts +1 -1
  257. package/lib-commonjs/components/Menu/useMenuContextValues.js +37 -35
  258. package/lib-commonjs/components/Menu/useMenuContextValues.js.map +1 -1
  259. package/lib-commonjs/components/MenuDivider/MenuDivider.d.ts +1 -1
  260. package/lib-commonjs/components/MenuDivider/MenuDivider.js +9 -9
  261. package/lib-commonjs/components/MenuDivider/MenuDivider.js.map +1 -1
  262. package/lib-commonjs/components/MenuDivider/MenuDivider.types.d.ts +2 -2
  263. package/lib-commonjs/components/MenuDivider/MenuDivider.types.js.map +1 -1
  264. package/lib-commonjs/components/MenuDivider/index.js +1 -1
  265. package/lib-commonjs/components/MenuDivider/index.js.map +1 -1
  266. package/lib-commonjs/components/MenuDivider/renderMenuDivider.d.ts +1 -1
  267. package/lib-commonjs/components/MenuDivider/renderMenuDivider.js +11 -12
  268. package/lib-commonjs/components/MenuDivider/renderMenuDivider.js.map +1 -1
  269. package/lib-commonjs/components/MenuDivider/useMenuDivider.d.ts +1 -1
  270. package/lib-commonjs/components/MenuDivider/useMenuDivider.js +12 -11
  271. package/lib-commonjs/components/MenuDivider/useMenuDivider.js.map +1 -1
  272. package/lib-commonjs/components/MenuDivider/useMenuDividerStyles.d.ts +2 -1
  273. package/lib-commonjs/components/MenuDivider/useMenuDividerStyles.js +11 -7
  274. package/lib-commonjs/components/MenuDivider/useMenuDividerStyles.js.map +1 -1
  275. package/lib-commonjs/components/MenuGroup/MenuGroup.d.ts +1 -1
  276. package/lib-commonjs/components/MenuGroup/MenuGroup.js +12 -9
  277. package/lib-commonjs/components/MenuGroup/MenuGroup.js.map +1 -1
  278. package/lib-commonjs/components/MenuGroup/MenuGroup.types.d.ts +3 -3
  279. package/lib-commonjs/components/MenuGroup/MenuGroup.types.js.map +1 -1
  280. package/lib-commonjs/components/MenuGroup/index.d.ts +1 -0
  281. package/lib-commonjs/components/MenuGroup/index.js +3 -1
  282. package/lib-commonjs/components/MenuGroup/index.js.map +1 -1
  283. package/lib-commonjs/components/MenuGroup/renderMenuGroup.d.ts +1 -1
  284. package/lib-commonjs/components/MenuGroup/renderMenuGroup.js +12 -13
  285. package/lib-commonjs/components/MenuGroup/renderMenuGroup.js.map +1 -1
  286. package/lib-commonjs/components/MenuGroup/useMenuGroup.d.ts +1 -1
  287. package/lib-commonjs/components/MenuGroup/useMenuGroup.js +13 -11
  288. package/lib-commonjs/components/MenuGroup/useMenuGroup.js.map +1 -1
  289. package/lib-commonjs/components/MenuGroup/useMenuGroupContextValues.d.ts +1 -1
  290. package/lib-commonjs/components/MenuGroup/useMenuGroupContextValues.js +11 -11
  291. package/lib-commonjs/components/MenuGroup/useMenuGroupContextValues.js.map +1 -1
  292. package/lib-commonjs/components/MenuGroup/useMenuGroupStyles.d.ts +3 -0
  293. package/lib-commonjs/components/MenuGroup/useMenuGroupStyles.js +18 -0
  294. package/lib-commonjs/components/MenuGroup/useMenuGroupStyles.js.map +1 -0
  295. package/lib-commonjs/components/MenuGroupHeader/MenuGroupHeader.d.ts +1 -1
  296. package/lib-commonjs/components/MenuGroupHeader/MenuGroupHeader.js +9 -9
  297. package/lib-commonjs/components/MenuGroupHeader/MenuGroupHeader.js.map +1 -1
  298. package/lib-commonjs/components/MenuGroupHeader/MenuGroupHeader.types.d.ts +2 -2
  299. package/lib-commonjs/components/MenuGroupHeader/MenuGroupHeader.types.js.map +1 -1
  300. package/lib-commonjs/components/MenuGroupHeader/index.js +1 -1
  301. package/lib-commonjs/components/MenuGroupHeader/index.js.map +1 -1
  302. package/lib-commonjs/components/MenuGroupHeader/renderMenuGroupHeader.d.ts +1 -1
  303. package/lib-commonjs/components/MenuGroupHeader/renderMenuGroupHeader.js +11 -12
  304. package/lib-commonjs/components/MenuGroupHeader/renderMenuGroupHeader.js.map +1 -1
  305. package/lib-commonjs/components/MenuGroupHeader/useMenuGroupHeader.d.ts +1 -1
  306. package/lib-commonjs/components/MenuGroupHeader/useMenuGroupHeader.js +16 -12
  307. package/lib-commonjs/components/MenuGroupHeader/useMenuGroupHeader.js.map +1 -1
  308. package/lib-commonjs/components/MenuGroupHeader/useMenuGroupHeaderStyles.d.ts +2 -1
  309. package/lib-commonjs/components/MenuGroupHeader/useMenuGroupHeaderStyles.js +11 -7
  310. package/lib-commonjs/components/MenuGroupHeader/useMenuGroupHeaderStyles.js.map +1 -1
  311. package/lib-commonjs/components/MenuItem/MenuItem.d.ts +1 -1
  312. package/lib-commonjs/components/MenuItem/MenuItem.js +9 -12
  313. package/lib-commonjs/components/MenuItem/MenuItem.js.map +1 -1
  314. package/lib-commonjs/components/MenuItem/MenuItem.types.d.ts +7 -7
  315. package/lib-commonjs/components/MenuItem/MenuItem.types.js.map +1 -1
  316. package/lib-commonjs/components/MenuItem/index.js +1 -1
  317. package/lib-commonjs/components/MenuItem/index.js.map +1 -1
  318. package/lib-commonjs/components/MenuItem/renderMenuItem.d.ts +1 -1
  319. package/lib-commonjs/components/MenuItem/renderMenuItem.js +16 -14
  320. package/lib-commonjs/components/MenuItem/renderMenuItem.js.map +1 -1
  321. package/lib-commonjs/components/MenuItem/useCharacterSearch.js +7 -7
  322. package/lib-commonjs/components/MenuItem/useCharacterSearch.js.map +1 -1
  323. package/lib-commonjs/components/MenuItem/useMenuItem.d.ts +2 -6
  324. package/lib-commonjs/components/MenuItem/useMenuItem.js +45 -53
  325. package/lib-commonjs/components/MenuItem/useMenuItem.js.map +1 -1
  326. package/lib-commonjs/components/MenuItem/useMenuItemStyles.d.ts +2 -1
  327. package/lib-commonjs/components/MenuItem/useMenuItemStyles.js +40 -33
  328. package/lib-commonjs/components/MenuItem/useMenuItemStyles.js.map +1 -1
  329. package/lib-commonjs/components/MenuItemCheckbox/MenuItemCheckbox.d.ts +1 -1
  330. package/lib-commonjs/components/MenuItemCheckbox/MenuItemCheckbox.js +9 -9
  331. package/lib-commonjs/components/MenuItemCheckbox/MenuItemCheckbox.js.map +1 -1
  332. package/lib-commonjs/components/MenuItemCheckbox/MenuItemCheckbox.types.js.map +1 -1
  333. package/lib-commonjs/components/MenuItemCheckbox/index.d.ts +1 -0
  334. package/lib-commonjs/components/MenuItemCheckbox/index.js +3 -1
  335. package/lib-commonjs/components/MenuItemCheckbox/index.js.map +1 -1
  336. package/lib-commonjs/components/MenuItemCheckbox/renderMenuItemCheckbox.d.ts +1 -1
  337. package/lib-commonjs/components/MenuItemCheckbox/renderMenuItemCheckbox.js +15 -14
  338. package/lib-commonjs/components/MenuItemCheckbox/renderMenuItemCheckbox.js.map +1 -1
  339. package/lib-commonjs/components/MenuItemCheckbox/useMenuItemCheckbox.d.ts +1 -1
  340. package/lib-commonjs/components/MenuItemCheckbox/useMenuItemCheckbox.js +19 -21
  341. package/lib-commonjs/components/MenuItemCheckbox/useMenuItemCheckbox.js.map +1 -1
  342. package/lib-commonjs/components/MenuItemCheckbox/useMenuItemCheckboxStyles.d.ts +2 -1
  343. package/lib-commonjs/components/MenuItemCheckbox/useMenuItemCheckboxStyles.js +12 -7
  344. package/lib-commonjs/components/MenuItemCheckbox/useMenuItemCheckboxStyles.js.map +1 -1
  345. package/lib-commonjs/components/MenuItemRadio/MenuItemRadio.d.ts +1 -1
  346. package/lib-commonjs/components/MenuItemRadio/MenuItemRadio.js +9 -9
  347. package/lib-commonjs/components/MenuItemRadio/MenuItemRadio.js.map +1 -1
  348. package/lib-commonjs/components/MenuItemRadio/MenuItemRadio.types.js.map +1 -1
  349. package/lib-commonjs/components/MenuItemRadio/index.d.ts +1 -0
  350. package/lib-commonjs/components/MenuItemRadio/index.js +3 -1
  351. package/lib-commonjs/components/MenuItemRadio/index.js.map +1 -1
  352. package/lib-commonjs/components/MenuItemRadio/renderMenuItemRadio.d.ts +1 -1
  353. package/lib-commonjs/components/MenuItemRadio/renderMenuItemRadio.js +15 -14
  354. package/lib-commonjs/components/MenuItemRadio/renderMenuItemRadio.js.map +1 -1
  355. package/lib-commonjs/components/MenuItemRadio/useMenuItemRadio.d.ts +1 -1
  356. package/lib-commonjs/components/MenuItemRadio/useMenuItemRadio.js +19 -20
  357. package/lib-commonjs/components/MenuItemRadio/useMenuItemRadio.js.map +1 -1
  358. package/lib-commonjs/components/MenuItemRadio/useMenuItemRadioStyles.d.ts +2 -1
  359. package/lib-commonjs/components/MenuItemRadio/useMenuItemRadioStyles.js +12 -7
  360. package/lib-commonjs/components/MenuItemRadio/useMenuItemRadioStyles.js.map +1 -1
  361. package/lib-commonjs/components/MenuList/MenuList.d.ts +1 -1
  362. package/lib-commonjs/components/MenuList/MenuList.js +11 -11
  363. package/lib-commonjs/components/MenuList/MenuList.js.map +1 -1
  364. package/lib-commonjs/components/MenuList/MenuList.types.d.ts +12 -10
  365. package/lib-commonjs/components/MenuList/MenuList.types.js.map +1 -1
  366. package/lib-commonjs/components/MenuList/index.d.ts +1 -1
  367. package/lib-commonjs/components/MenuList/index.js +1 -3
  368. package/lib-commonjs/components/MenuList/index.js.map +1 -1
  369. package/lib-commonjs/components/MenuList/renderMenuList.d.ts +1 -1
  370. package/lib-commonjs/components/MenuList/renderMenuList.js +12 -13
  371. package/lib-commonjs/components/MenuList/renderMenuList.js.map +1 -1
  372. package/lib-commonjs/components/MenuList/useMenuList.d.ts +1 -1
  373. package/lib-commonjs/components/MenuList/useMenuList.js +77 -95
  374. package/lib-commonjs/components/MenuList/useMenuList.js.map +1 -1
  375. package/lib-commonjs/components/MenuList/useMenuListContextValues.d.ts +1 -1
  376. package/lib-commonjs/components/MenuList/useMenuListContextValues.js +21 -19
  377. package/lib-commonjs/components/MenuList/useMenuListContextValues.js.map +1 -1
  378. package/lib-commonjs/components/MenuList/useMenuListStyles.d.ts +2 -1
  379. package/lib-commonjs/components/MenuList/useMenuListStyles.js +12 -9
  380. package/lib-commonjs/components/MenuList/useMenuListStyles.js.map +1 -1
  381. package/lib-commonjs/components/MenuPopover/MenuPopover.js +8 -8
  382. package/lib-commonjs/components/MenuPopover/MenuPopover.js.map +1 -1
  383. package/lib-commonjs/components/MenuPopover/MenuPopover.types.d.ts +2 -2
  384. package/lib-commonjs/components/MenuPopover/MenuPopover.types.js.map +1 -1
  385. package/lib-commonjs/components/MenuPopover/index.js +1 -1
  386. package/lib-commonjs/components/MenuPopover/index.js.map +1 -1
  387. package/lib-commonjs/components/MenuPopover/renderMenuPopover.d.ts +1 -1
  388. package/lib-commonjs/components/MenuPopover/renderMenuPopover.js +14 -13
  389. package/lib-commonjs/components/MenuPopover/renderMenuPopover.js.map +1 -1
  390. package/lib-commonjs/components/MenuPopover/useMenuPopover.d.ts +3 -3
  391. package/lib-commonjs/components/MenuPopover/useMenuPopover.js +43 -50
  392. package/lib-commonjs/components/MenuPopover/useMenuPopover.js.map +1 -1
  393. package/lib-commonjs/components/MenuPopover/useMenuPopoverStyles.d.ts +2 -1
  394. package/lib-commonjs/components/MenuPopover/useMenuPopoverStyles.js +17 -10
  395. package/lib-commonjs/components/MenuPopover/useMenuPopoverStyles.js.map +1 -1
  396. package/lib-commonjs/components/MenuSplitGroup/MenuSplitGroup.d.ts +6 -0
  397. package/lib-commonjs/components/MenuSplitGroup/MenuSplitGroup.js +26 -0
  398. package/lib-commonjs/components/MenuSplitGroup/MenuSplitGroup.js.map +1 -0
  399. package/lib-commonjs/components/MenuSplitGroup/MenuSplitGroup.types.d.ts +14 -0
  400. package/lib-commonjs/components/MenuSplitGroup/MenuSplitGroup.types.js +6 -0
  401. package/lib-commonjs/components/MenuSplitGroup/MenuSplitGroup.types.js.map +1 -0
  402. package/lib-commonjs/components/MenuSplitGroup/index.d.ts +5 -0
  403. package/lib-commonjs/components/MenuSplitGroup/index.js +18 -0
  404. package/lib-commonjs/components/MenuSplitGroup/index.js.map +1 -0
  405. package/lib-commonjs/components/MenuSplitGroup/renderMenuSplitGroup.d.ts +5 -0
  406. package/lib-commonjs/components/MenuSplitGroup/renderMenuSplitGroup.js +26 -0
  407. package/lib-commonjs/components/MenuSplitGroup/renderMenuSplitGroup.js.map +1 -0
  408. package/lib-commonjs/components/MenuSplitGroup/useMenuSplitGroup.d.ts +12 -0
  409. package/lib-commonjs/components/MenuSplitGroup/useMenuSplitGroup.js +81 -0
  410. package/lib-commonjs/components/MenuSplitGroup/useMenuSplitGroup.js.map +1 -0
  411. package/lib-commonjs/components/MenuSplitGroup/useMenuSplitGroupStyles.d.ts +6 -0
  412. package/lib-commonjs/components/MenuSplitGroup/useMenuSplitGroupStyles.js +47 -0
  413. package/lib-commonjs/components/MenuSplitGroup/useMenuSplitGroupStyles.js.map +1 -0
  414. package/lib-commonjs/components/MenuTrigger/MenuTrigger.d.ts +2 -1
  415. package/lib-commonjs/components/MenuTrigger/MenuTrigger.js +6 -5
  416. package/lib-commonjs/components/MenuTrigger/MenuTrigger.js.map +1 -1
  417. package/lib-commonjs/components/MenuTrigger/MenuTrigger.types.d.ts +7 -3
  418. package/lib-commonjs/components/MenuTrigger/MenuTrigger.types.js.map +1 -1
  419. package/lib-commonjs/components/MenuTrigger/index.js +1 -1
  420. package/lib-commonjs/components/MenuTrigger/index.js.map +1 -1
  421. package/lib-commonjs/components/MenuTrigger/renderMenuTrigger.d.ts +1 -1
  422. package/lib-commonjs/components/MenuTrigger/renderMenuTrigger.js +6 -6
  423. package/lib-commonjs/components/MenuTrigger/renderMenuTrigger.js.map +1 -1
  424. package/lib-commonjs/components/MenuTrigger/useMenuTrigger.d.ts +2 -2
  425. package/lib-commonjs/components/MenuTrigger/useMenuTrigger.js +175 -7
  426. package/lib-commonjs/components/MenuTrigger/useMenuTrigger.js.map +1 -1
  427. package/lib-commonjs/components/index.js +1 -1
  428. package/lib-commonjs/components/index.js.map +1 -1
  429. package/lib-commonjs/contexts/menuContext.d.ts +1 -1
  430. package/lib-commonjs/contexts/menuContext.js +6 -12
  431. package/lib-commonjs/contexts/menuContext.js.map +1 -1
  432. package/lib-commonjs/contexts/menuGroupContext.d.ts +1 -1
  433. package/lib-commonjs/contexts/menuGroupContext.js +5 -7
  434. package/lib-commonjs/contexts/menuGroupContext.js.map +1 -1
  435. package/lib-commonjs/contexts/menuListContext.d.ts +1 -1
  436. package/lib-commonjs/contexts/menuListContext.js +8 -18
  437. package/lib-commonjs/contexts/menuListContext.js.map +1 -1
  438. package/lib-commonjs/contexts/menuTriggerContext.d.ts +1 -1
  439. package/lib-commonjs/contexts/menuTriggerContext.js +6 -8
  440. package/lib-commonjs/contexts/menuTriggerContext.js.map +1 -1
  441. package/lib-commonjs/index.d.ts +11 -10
  442. package/lib-commonjs/index.js +17 -15
  443. package/lib-commonjs/index.js.map +1 -1
  444. package/lib-commonjs/selectable/index.js +1 -1
  445. package/lib-commonjs/selectable/index.js.map +1 -1
  446. package/lib-commonjs/selectable/types.js.map +1 -1
  447. package/lib-commonjs/selectable/useCheckmarkStyles.d.ts +2 -2
  448. package/lib-commonjs/selectable/useCheckmarkStyles.js +7 -7
  449. package/lib-commonjs/selectable/useCheckmarkStyles.js.map +1 -1
  450. package/lib-commonjs/utils/index.js +1 -1
  451. package/lib-commonjs/utils/index.js.map +1 -1
  452. package/lib-commonjs/utils/useIsSubmenu.js +5 -7
  453. package/lib-commonjs/utils/useIsSubmenu.js.map +1 -1
  454. package/lib-commonjs/utils/useOnMenuEnter.js +18 -16
  455. package/lib-commonjs/utils/useOnMenuEnter.js.map +1 -1
  456. package/package.json +15 -17
  457. package/lib/common/isConformant.d.ts +0 -4
  458. package/lib/common/isConformant.js +0 -12
  459. package/lib/common/isConformant.js.map +0 -1
  460. package/lib/common/mockUseMenuContext.d.ts +0 -7
  461. package/lib/common/mockUseMenuContext.js +0 -36
  462. package/lib/common/mockUseMenuContext.js.map +0 -1
  463. package/lib/components/MenuTrigger/useTriggerElement.d.ts +0 -5
  464. package/lib/components/MenuTrigger/useTriggerElement.js +0 -179
  465. package/lib/components/MenuTrigger/useTriggerElement.js.map +0 -1
  466. package/lib-commonjs/common/isConformant.d.ts +0 -4
  467. package/lib-commonjs/common/isConformant.js +0 -23
  468. package/lib-commonjs/common/isConformant.js.map +0 -1
  469. package/lib-commonjs/common/mockUseMenuContext.d.ts +0 -7
  470. package/lib-commonjs/common/mockUseMenuContext.js +0 -47
  471. package/lib-commonjs/common/mockUseMenuContext.js.map +0 -1
  472. package/lib-commonjs/components/MenuTrigger/useTriggerElement.d.ts +0 -5
  473. package/lib-commonjs/components/MenuTrigger/useTriggerElement.js +0 -195
  474. package/lib-commonjs/components/MenuTrigger/useTriggerElement.js.map +0 -1
@@ -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 {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/Menu/useMenu.tsx"],"names":[],"mappings":"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","sourceRoot":""}
1
+ {"version":3,"sources":["components/Menu/useMenu.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport { usePopperMouseTarget, usePopper, resolvePositioningShorthand } from '@fluentui/react-positioning';\nimport { useControllableState, useId, useOnClickOutside, useEventCallback } from '@fluentui/react-utilities';\nimport { 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';\nimport type { MenuOpenChangeData, MenuOpenEvents, MenuProps, MenuState } from './Menu.types';\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 */\nexport const useMenu_unstable = (props: MenuProps): MenuState => {\n const triggerId = useId('menu');\n const isSubmenu = useIsSubmenu();\n const [contextTarget, setContextTarget] = usePopperMouseTarget();\n\n const popperState = {\n position: isSubmenu ? ('after' as const) : ('below' as const),\n align: isSubmenu ? ('top' as const) : ('start' as const),\n target: props.openOnContext ? contextTarget : undefined,\n ...resolvePositioningShorthand(props.positioning),\n };\n\n const children = React.Children.toArray(props.children) as React.ReactElement[];\n\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\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\n let menuTrigger: React.ReactElement | undefined = undefined;\n let menuPopover: React.ReactElement | undefined = 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 } = usePopper(popperState);\n\n const initialState = {\n hoverDelay: 500,\n triggerId,\n isSubmenu: !!isSubmenu,\n openOnHover: !!isSubmenu,\n contextTarget,\n setContextTarget,\n ...props,\n menuTrigger,\n menuPopover,\n triggerRef,\n menuPopoverRef,\n components: {},\n } as const;\n\n // TODO Better way to narrow types ?\n\n const [open, setOpen] = useMenuOpenState(initialState);\n const [checkedValues, onCheckedValueChange] = useMenuSelectableState(initialState);\n\n return {\n ...initialState,\n open,\n setOpen,\n checkedValues,\n onCheckedValueChange,\n };\n};\n\n/**\n * Adds appropriate state values and handlers for selectable items\n * i.e checkboxes and radios\n */\nconst useMenuSelectableState = (\n state: Pick<MenuProps, 'checkedValues' | 'defaultCheckedValues' | 'onCheckedValueChange'>,\n) => {\n const [checkedValues, setCheckedValues] = useControllableState({\n state: state.checkedValues,\n defaultState: state.defaultCheckedValues,\n initialState: {},\n });\n const { onCheckedValueChange: onCheckedValueChangeOriginal } = state;\n const onCheckedValueChange: MenuState['onCheckedValueChange'] = useEventCallback((e, { name, checkedItems }) => {\n if (onCheckedValueChangeOriginal) {\n onCheckedValueChangeOriginal(e, { name, checkedItems });\n }\n\n setCheckedValues(s => {\n return s ? { ...s, [name]: checkedItems } : { [name]: checkedItems };\n });\n });\n\n return [checkedValues, onCheckedValueChange] as const;\n};\n\nconst useMenuOpenState = (\n state: Pick<MenuState, 'onOpenChange' | 'setContextTarget' | 'triggerRef' | 'menuPopoverRef' | 'isSubmenu'> &\n Pick<MenuProps, 'open' | 'defaultOpen'>,\n) => {\n const { targetDocument } = useFluent();\n const parentSetOpen = useMenuContext_unstable(context => context.setOpen);\n const onOpenChange: MenuState['onOpenChange'] = useEventCallback((e, data) => state.onOpenChange?.(e, data));\n\n const shouldHandleKeyboardRef = React.useRef(false);\n const shouldHandleTabRef = React.useRef(false);\n const pressedShiftRef = React.useRef(false);\n const setOpenTimeout = React.useRef(0);\n const enteringTriggerRef = React.useRef(false);\n\n const [open, setOpenState] = useControllableState({\n state: state.open,\n defaultState: state.defaultOpen,\n initialState: false,\n });\n\n const trySetOpen = useEventCallback((e: MenuOpenEvents, data: MenuOpenChangeData) => {\n const event = e instanceof CustomEvent && e.type === MENU_ENTER_EVENT ? e.detail.nativeEvent : e;\n onOpenChange?.(event, { ...data });\n if (data.open && e.type === 'contextmenu') {\n state.setContextTarget(e as React.MouseEvent);\n }\n\n if (!data.open) {\n state.setContextTarget(undefined);\n }\n\n if (data.keyboard) {\n shouldHandleKeyboardRef.current = true;\n shouldHandleTabRef.current = (e as React.KeyboardEvent).key === 'Tab';\n pressedShiftRef.current = (e as React.KeyboardEvent).shiftKey;\n }\n\n if (data.bubble) {\n parentSetOpen(e, { ...data });\n }\n\n setOpenState(data.open);\n });\n\n const setOpen = useEventCallback((e: MenuOpenEvents, data: MenuOpenChangeData) => {\n clearTimeout(setOpenTimeout.current);\n if (!(e instanceof Event) && e.persist) {\n // < React 17 still uses pooled synthetic events\n e.persist();\n }\n\n if (e.type === 'mouseleave' || e.type === 'mouseenter' || e.type === 'mousemove' || e.type === MENU_ENTER_EVENT) {\n if (state.triggerRef.current?.contains(e.target as HTMLElement)) {\n enteringTriggerRef.current = e.type === 'mouseenter' || e.type === 'mousemove';\n }\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\n useOnClickOutside({\n contains: elementContains,\n disabled: !open,\n element: targetDocument,\n refs: [state.menuPopoverRef, state.triggerRef],\n callback: e => setOpen(e, { open: false }),\n });\n useOnMenuMouseEnter({\n element: targetDocument,\n callback: e => {\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(e, { open: false });\n }\n },\n disabled: !open,\n refs: [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\n // Manage focus for open state\n const { findFirstFocusable, findNextFocusable, findPrevFocusable } = useFocusFinders();\n const focusFirst = React.useCallback(() => {\n const firstFocusable = findFirstFocusable(state.menuPopoverRef.current);\n firstFocusable?.focus();\n }, [findFirstFocusable, state.menuPopoverRef]);\n\n const focusAfterMenuTrigger = React.useCallback(() => {\n const nextFocusable = findNextFocusable(state.triggerRef.current);\n nextFocusable?.focus();\n }, [findNextFocusable, state.triggerRef]);\n\n const focusBeforeMenuTrigger = React.useCallback(() => {\n const prevFocusable = findPrevFocusable(state.triggerRef.current);\n prevFocusable?.focus();\n }, [findPrevFocusable, state.triggerRef]);\n\n React.useEffect(() => {\n if (open) {\n focusFirst();\n }\n }, [open, focusFirst]);\n\n React.useEffect(() => {\n if (open) {\n focusFirst();\n }\n\n if (shouldHandleKeyboardRef.current && !open) {\n if (shouldHandleTabRef.current && !state.isSubmenu) {\n pressedShiftRef.current ? focusBeforeMenuTrigger() : focusAfterMenuTrigger();\n } else {\n state.triggerRef.current?.focus();\n }\n }\n\n shouldHandleKeyboardRef.current = false;\n shouldHandleTabRef.current = false;\n pressedShiftRef.current = false;\n }, [state.triggerRef, state.isSubmenu, open, focusFirst, focusAfterMenuTrigger, focusBeforeMenuTrigger]);\n\n return [open ?? false, setOpen] as const;\n};\n"],"sourceRoot":"../src/"}
@@ -1,2 +1,2 @@
1
1
  import type { MenuContextValues, MenuState } from './Menu.types';
2
- export declare function useMenuContextValues(state: MenuState): MenuContextValues;
2
+ export declare function useMenuContextValues_unstable(state: MenuState): MenuContextValues;
@@ -3,46 +3,48 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.useMenuContextValues = void 0;
6
+ exports.useMenuContextValues_unstable = void 0;
7
7
 
8
- function useMenuContextValues(state) {
9
- var open = state.open,
10
- setOpen = state.setOpen,
11
- onCheckedValueChange = state.onCheckedValueChange,
12
- checkedValues = state.checkedValues,
13
- defaultCheckedValues = state.defaultCheckedValues,
14
- openOnHover = state.openOnHover,
15
- openOnContext = state.openOnContext,
16
- triggerRef = state.triggerRef,
17
- triggerId = state.triggerId,
18
- menuPopoverRef = state.menuPopoverRef,
19
- isSubmenu = state.isSubmenu,
20
- hasCheckmarks = state.hasCheckmarks,
21
- hasIcons = state.hasIcons,
22
- persistOnItemClick = state.persistOnItemClick,
23
- inline = state.inline; // This context is created with "@fluentui/react-context-selector", these is no sense to memoize it
8
+ function useMenuContextValues_unstable(state) {
9
+ const {
10
+ open,
11
+ setOpen,
12
+ onCheckedValueChange,
13
+ checkedValues,
14
+ defaultCheckedValues,
15
+ openOnHover,
16
+ openOnContext,
17
+ triggerRef,
18
+ triggerId,
19
+ menuPopoverRef,
20
+ isSubmenu,
21
+ hasCheckmarks,
22
+ hasIcons,
23
+ persistOnItemClick,
24
+ inline
25
+ } = state; // This context is created with "@fluentui/react-context-selector", these is no sense to memoize it
24
26
 
25
- var menu = {
26
- open: open,
27
- setOpen: setOpen,
28
- onCheckedValueChange: onCheckedValueChange,
29
- checkedValues: checkedValues,
30
- defaultCheckedValues: defaultCheckedValues,
31
- triggerRef: triggerRef,
32
- openOnHover: openOnHover,
33
- openOnContext: openOnContext,
34
- triggerId: triggerId,
35
- menuPopoverRef: menuPopoverRef,
36
- isSubmenu: isSubmenu,
37
- hasCheckmarks: hasCheckmarks,
38
- hasIcons: hasIcons,
39
- persistOnItemClick: persistOnItemClick,
40
- inline: inline
27
+ const menu = {
28
+ open,
29
+ setOpen,
30
+ onCheckedValueChange,
31
+ checkedValues,
32
+ defaultCheckedValues,
33
+ triggerRef,
34
+ openOnHover,
35
+ openOnContext,
36
+ triggerId,
37
+ menuPopoverRef,
38
+ isSubmenu,
39
+ hasCheckmarks,
40
+ hasIcons,
41
+ persistOnItemClick,
42
+ inline
41
43
  };
42
44
  return {
43
- menu: menu
45
+ menu
44
46
  };
45
47
  }
46
48
 
47
- exports.useMenuContextValues = useMenuContextValues;
49
+ exports.useMenuContextValues_unstable = useMenuContextValues_unstable;
48
50
  //# sourceMappingURL=useMenuContextValues.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/Menu/useMenuContextValues.ts"],"names":[],"mappings":";;;;;;;AAEA,SAAgB,oBAAhB,CAAqC,KAArC,EAAqD;AAEjD,MAAA,IAAI,GAeF,KAAK,CAfH,IAAJ;AAAA,MACA,OAAO,GAcL,KAAK,CAdA,OADP;AAAA,MAEA,oBAAoB,GAalB,KAAK,CAba,oBAFpB;AAAA,MAGA,aAAa,GAYX,KAAK,CAZM,aAHb;AAAA,MAIA,oBAAoB,GAWlB,KAAK,CAXa,oBAJpB;AAAA,MAKA,WAAW,GAUT,KAAK,CAVI,WALX;AAAA,MAMA,aAAa,GASX,KAAK,CATM,aANb;AAAA,MAOA,UAAU,GAQR,KAAK,CARG,UAPV;AAAA,MAQA,SAAS,GAOP,KAAK,CAPE,SART;AAAA,MASA,cAAc,GAMZ,KAAK,CANO,cATd;AAAA,MAUA,SAAS,GAKP,KAAK,CALE,SAVT;AAAA,MAWA,aAAa,GAIX,KAAK,CAJM,aAXb;AAAA,MAYA,QAAQ,GAGN,KAAK,CAHC,QAZR;AAAA,MAaA,kBAAkB,GAEhB,KAAK,CAFW,kBAblB;AAAA,MAcA,MAAM,GACJ,KAAK,CADD,MAdN,CAFiD,CAmBnD;;AACA,MAAM,IAAI,GAAG;AACX,IAAA,IAAI,EAAA,IADO;AAEX,IAAA,OAAO,EAAA,OAFI;AAGX,IAAA,oBAAoB,EAAA,oBAHT;AAIX,IAAA,aAAa,EAAA,aAJF;AAKX,IAAA,oBAAoB,EAAA,oBALT;AAMX,IAAA,UAAU,EAAA,UANC;AAOX,IAAA,WAAW,EAAA,WAPA;AAQX,IAAA,aAAa,EAAA,aARF;AASX,IAAA,SAAS,EAAA,SATE;AAUX,IAAA,cAAc,EAAA,cAVH;AAWX,IAAA,SAAS,EAAA,SAXE;AAYX,IAAA,aAAa,EAAA,aAZF;AAaX,IAAA,QAAQ,EAAA,QAbG;AAcX,IAAA,kBAAkB,EAAA,kBAdP;AAeX,IAAA,MAAM,EAAA;AAfK,GAAb;AAkBA,SAAO;AAAE,IAAA,IAAI,EAAA;AAAN,GAAP;AACD;;AAvCD,OAAA,CAAA,oBAAA,GAAA,oBAAA","sourceRoot":""}
1
+ {"version":3,"sources":["components/Menu/useMenuContextValues.ts"],"names":[],"mappings":";;;;;;;AAEA,SAAgB,6BAAhB,CAA8C,KAA9C,EAA8D;AAC5D,QAAM;AACJ,IAAA,IADI;AAEJ,IAAA,OAFI;AAGJ,IAAA,oBAHI;AAIJ,IAAA,aAJI;AAKJ,IAAA,oBALI;AAMJ,IAAA,WANI;AAOJ,IAAA,aAPI;AAQJ,IAAA,UARI;AASJ,IAAA,SATI;AAUJ,IAAA,cAVI;AAWJ,IAAA,SAXI;AAYJ,IAAA,aAZI;AAaJ,IAAA,QAbI;AAcJ,IAAA,kBAdI;AAeJ,IAAA;AAfI,MAgBF,KAhBJ,CAD4D,CAmB5D;;AACA,QAAM,IAAI,GAAG;AACX,IAAA,IADW;AAEX,IAAA,OAFW;AAGX,IAAA,oBAHW;AAIX,IAAA,aAJW;AAKX,IAAA,oBALW;AAMX,IAAA,UANW;AAOX,IAAA,WAPW;AAQX,IAAA,aARW;AASX,IAAA,SATW;AAUX,IAAA,cAVW;AAWX,IAAA,SAXW;AAYX,IAAA,aAZW;AAaX,IAAA,QAbW;AAcX,IAAA,kBAdW;AAeX,IAAA;AAfW,GAAb;AAkBA,SAAO;AAAE,IAAA;AAAF,GAAP;AACD;;AAvCD,OAAA,CAAA,6BAAA,GAAA,6BAAA","sourcesContent":["import type { MenuContextValues, MenuState } from './Menu.types';\n\nexport function useMenuContextValues_unstable(state: MenuState): MenuContextValues {\n const {\n open,\n setOpen,\n onCheckedValueChange,\n checkedValues,\n defaultCheckedValues,\n openOnHover,\n openOnContext,\n triggerRef,\n triggerId,\n menuPopoverRef,\n isSubmenu,\n hasCheckmarks,\n hasIcons,\n persistOnItemClick,\n inline,\n } = state;\n\n // This context is created with \"@fluentui/react-context-selector\", these is no sense to memoize it\n const menu = {\n open,\n setOpen,\n onCheckedValueChange,\n checkedValues,\n defaultCheckedValues,\n triggerRef,\n openOnHover,\n openOnContext,\n triggerId,\n menuPopoverRef,\n isSubmenu,\n hasCheckmarks,\n hasIcons,\n persistOnItemClick,\n inline,\n };\n\n return { menu };\n}\n"],"sourceRoot":"../src/"}
@@ -1,6 +1,6 @@
1
1
  import type { MenuDividerProps } from './MenuDivider.types';
2
2
  import type { ForwardRefComponent } from '@fluentui/react-utilities';
3
3
  /**
4
- * Define a styled MenuDivider, using the `useMenuDivider` hook.
4
+ * Define a styled MenuDivider, using the `useMenuDivider_unstable` hook.
5
5
  */
6
6
  export declare const MenuDivider: ForwardRefComponent<MenuDividerProps>;
@@ -5,22 +5,22 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.MenuDivider = void 0;
7
7
 
8
- var React = /*#__PURE__*/require("react");
8
+ const React = /*#__PURE__*/require("react");
9
9
 
10
- var useMenuDivider_1 = /*#__PURE__*/require("./useMenuDivider");
10
+ const useMenuDivider_1 = /*#__PURE__*/require("./useMenuDivider");
11
11
 
12
- var useMenuDividerStyles_1 = /*#__PURE__*/require("./useMenuDividerStyles");
12
+ const useMenuDividerStyles_1 = /*#__PURE__*/require("./useMenuDividerStyles");
13
13
 
14
- var renderMenuDivider_1 = /*#__PURE__*/require("./renderMenuDivider");
14
+ const renderMenuDivider_1 = /*#__PURE__*/require("./renderMenuDivider");
15
15
  /**
16
- * Define a styled MenuDivider, using the `useMenuDivider` hook.
16
+ * Define a styled MenuDivider, using the `useMenuDivider_unstable` hook.
17
17
  */
18
18
 
19
19
 
20
- exports.MenuDivider = /*#__PURE__*/React.forwardRef(function (props, ref) {
21
- var state = useMenuDivider_1.useMenuDivider(props, ref);
22
- useMenuDividerStyles_1.useMenuDividerStyles(state);
23
- return renderMenuDivider_1.renderMenuDivider(state);
20
+ exports.MenuDivider = /*#__PURE__*/React.forwardRef((props, ref) => {
21
+ const state = useMenuDivider_1.useMenuDivider_unstable(props, ref);
22
+ useMenuDividerStyles_1.useMenuDividerStyles_unstable(state);
23
+ return renderMenuDivider_1.renderMenuDivider_unstable(state);
24
24
  });
25
25
  exports.MenuDivider.displayName = 'MenuDivider';
26
26
  //# sourceMappingURL=MenuDivider.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/MenuDivider/MenuDivider.tsx"],"names":[],"mappings":";;;;;;;AAAA,IAAA,KAAA,gBAAA,OAAA,CAAA,OAAA,CAAA;;AACA,IAAA,gBAAA,gBAAA,OAAA,CAAA,kBAAA,CAAA;;AACA,IAAA,sBAAA,gBAAA,OAAA,CAAA,wBAAA,CAAA;;AACA,IAAA,mBAAA,gBAAA,OAAA,CAAA,qBAAA,CAAA;AAIA;;AAEG;;;AACU,OAAA,CAAA,WAAA,gBAAqD,KAAK,CAAC,UAAN,CAAiB,UAAC,KAAD,EAAQ,GAAR,EAAW;AAC5F,MAAM,KAAK,GAAG,gBAAA,CAAA,cAAA,CAAe,KAAf,EAAsB,GAAtB,CAAd;AACA,EAAA,sBAAA,CAAA,oBAAA,CAAqB,KAArB;AAEA,SAAO,mBAAA,CAAA,iBAAA,CAAkB,KAAlB,CAAP;AACD,CALiE,CAArD;AAOb,OAAA,CAAA,WAAA,CAAY,WAAZ,GAA0B,aAA1B","sourceRoot":""}
1
+ {"version":3,"sources":["components/MenuDivider/MenuDivider.tsx"],"names":[],"mappings":";;;;;;;AAAA,MAAA,KAAA,gBAAA,OAAA,CAAA,OAAA,CAAA;;AACA,MAAA,gBAAA,gBAAA,OAAA,CAAA,kBAAA,CAAA;;AACA,MAAA,sBAAA,gBAAA,OAAA,CAAA,wBAAA,CAAA;;AACA,MAAA,mBAAA,gBAAA,OAAA,CAAA,qBAAA,CAAA;AAIA;;AAEG;;;AACU,OAAA,CAAA,WAAA,gBAAqD,KAAK,CAAC,UAAN,CAAiB,CAAC,KAAD,EAAQ,GAAR,KAAe;AAChG,QAAM,KAAK,GAAG,gBAAA,CAAA,uBAAA,CAAwB,KAAxB,EAA+B,GAA/B,CAAd;AACA,EAAA,sBAAA,CAAA,6BAAA,CAA8B,KAA9B;AAEA,SAAO,mBAAA,CAAA,0BAAA,CAA2B,KAA3B,CAAP;AACD,CALiE,CAArD;AAOb,OAAA,CAAA,WAAA,CAAY,WAAZ,GAA0B,aAA1B","sourcesContent":["import * as React from 'react';\nimport { useMenuDivider_unstable } from './useMenuDivider';\nimport { useMenuDividerStyles_unstable } from './useMenuDividerStyles';\nimport { renderMenuDivider_unstable } from './renderMenuDivider';\nimport type { MenuDividerProps } from './MenuDivider.types';\nimport type { ForwardRefComponent } from '@fluentui/react-utilities';\n\n/**\n * Define a styled MenuDivider, using the `useMenuDivider_unstable` hook.\n */\nexport const MenuDivider: ForwardRefComponent<MenuDividerProps> = React.forwardRef((props, ref) => {\n const state = useMenuDivider_unstable(props, ref);\n useMenuDividerStyles_unstable(state);\n\n return renderMenuDivider_unstable(state);\n});\n\nMenuDivider.displayName = 'MenuDivider';\n"],"sourceRoot":"../src/"}
@@ -1,6 +1,6 @@
1
- import { ComponentProps, ComponentState, IntrinsicShorthandProps } from '@fluentui/react-utilities';
1
+ import type { ComponentProps, ComponentState, Slot } from '@fluentui/react-utilities';
2
2
  export declare type MenuDividerSlots = {
3
- root: IntrinsicShorthandProps<'div'>;
3
+ root: Slot<'div'>;
4
4
  };
5
5
  export declare type MenuDividerProps = ComponentProps<MenuDividerSlots>;
6
6
  export declare type MenuDividerState = ComponentState<MenuDividerSlots>;
@@ -1 +1 @@
1
- {"version":3,"sources":[],"names":[],"mappings":"","sourceRoot":""}
1
+ {"version":3,"sources":[],"names":[],"mappings":"","sourceRoot":"../src/"}
@@ -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("./MenuDivider.types"), exports);
10
10
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/MenuDivider/index.ts"],"names":[],"mappings":";;;;;;;;AAAA,OAAA,CAAA,YAAA,CAAA,OAAA,CAAA,qBAAA,CAAA,EAAA,OAAA;;AACA,OAAA,CAAA,YAAA,CAAA,OAAA,CAAA,eAAA,CAAA,EAAA,OAAA;;AACA,OAAA,CAAA,YAAA,CAAA,OAAA,CAAA,qBAAA,CAAA,EAAA,OAAA;;AACA,OAAA,CAAA,YAAA,CAAA,OAAA,CAAA,kBAAA,CAAA,EAAA,OAAA;;AACA,OAAA,CAAA,YAAA,CAAA,OAAA,CAAA,wBAAA,CAAA,EAAA,OAAA","sourceRoot":""}
1
+ {"version":3,"sources":["components/MenuDivider/index.ts"],"names":[],"mappings":";;;;;;;;AAAA,OAAA,CAAA,YAAA,CAAA,OAAA,CAAA,qBAAA,CAAA,EAAA,OAAA;;AACA,OAAA,CAAA,YAAA,CAAA,OAAA,CAAA,eAAA,CAAA,EAAA,OAAA;;AACA,OAAA,CAAA,YAAA,CAAA,OAAA,CAAA,qBAAA,CAAA,EAAA,OAAA;;AACA,OAAA,CAAA,YAAA,CAAA,OAAA,CAAA,kBAAA,CAAA,EAAA,OAAA;;AACA,OAAA,CAAA,YAAA,CAAA,OAAA,CAAA,wBAAA,CAAA,EAAA,OAAA","sourcesContent":["export * from './MenuDivider.types';\nexport * from './MenuDivider';\nexport * from './renderMenuDivider';\nexport * from './useMenuDivider';\nexport * from './useMenuDividerStyles';\n"],"sourceRoot":"../src/"}
@@ -3,4 +3,4 @@ import { MenuDividerState } from './MenuDivider.types';
3
3
  * Redefine the render function to add slots. Reuse the menudivider structure but add
4
4
  * slots to children.
5
5
  */
6
- export declare const renderMenuDivider: (state: MenuDividerState) => JSX.Element;
6
+ export declare const renderMenuDivider_unstable: (state: MenuDividerState) => JSX.Element;