@fluentui/react-menu 0.0.0-nightly-20230222-0421.1 → 0.0.0-nightly-20230223-2115.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (308) hide show
  1. package/.swcrc +33 -0
  2. package/CHANGELOG.json +38 -23
  3. package/CHANGELOG.md +23 -14
  4. package/lib/Menu.js.map +1 -1
  5. package/lib/MenuDivider.js.map +1 -1
  6. package/lib/MenuGroup.js.map +1 -1
  7. package/lib/MenuGroupHeader.js.map +1 -1
  8. package/lib/MenuItem.js.map +1 -1
  9. package/lib/MenuItemCheckbox.js.map +1 -1
  10. package/lib/MenuItemRadio.js.map +1 -1
  11. package/lib/MenuList.js.map +1 -1
  12. package/lib/MenuPopover.js.map +1 -1
  13. package/lib/MenuSplitGroup.js.map +1 -1
  14. package/lib/MenuTrigger.js.map +1 -1
  15. package/lib/components/Menu/Menu.js +1 -0
  16. package/lib/components/Menu/Menu.js.map +1 -1
  17. package/lib/components/Menu/Menu.types.js +1 -1
  18. package/lib/components/Menu/Menu.types.js.map +1 -1
  19. package/lib/components/Menu/index.js.map +1 -1
  20. package/lib/components/Menu/renderMenu.js.map +1 -1
  21. package/lib/components/Menu/useMenu.js +14 -12
  22. package/lib/components/Menu/useMenu.js.map +1 -1
  23. package/lib/components/Menu/useMenuContextValues.js.map +1 -1
  24. package/lib/components/MenuDivider/MenuDivider.js.map +1 -1
  25. package/lib/components/MenuDivider/MenuDivider.types.js.map +1 -1
  26. package/lib/components/MenuDivider/index.js.map +1 -1
  27. package/lib/components/MenuDivider/renderMenuDivider.js +2 -3
  28. package/lib/components/MenuDivider/renderMenuDivider.js.map +1 -1
  29. package/lib/components/MenuDivider/useMenuDivider.js +1 -0
  30. package/lib/components/MenuDivider/useMenuDivider.js.map +1 -1
  31. package/lib/components/MenuDivider/useMenuDividerStyles.js.map +1 -1
  32. package/lib/components/MenuGroup/MenuGroup.js.map +1 -1
  33. package/lib/components/MenuGroup/MenuGroup.types.js.map +1 -1
  34. package/lib/components/MenuGroup/index.js.map +1 -1
  35. package/lib/components/MenuGroup/renderMenuGroup.js +2 -3
  36. package/lib/components/MenuGroup/renderMenuGroup.js.map +1 -1
  37. package/lib/components/MenuGroup/useMenuGroup.js +1 -0
  38. package/lib/components/MenuGroup/useMenuGroup.js.map +1 -1
  39. package/lib/components/MenuGroup/useMenuGroupContextValues.js.map +1 -1
  40. package/lib/components/MenuGroup/useMenuGroupStyles.js.map +1 -1
  41. package/lib/components/MenuGroupHeader/MenuGroupHeader.js.map +1 -1
  42. package/lib/components/MenuGroupHeader/MenuGroupHeader.types.js.map +1 -1
  43. package/lib/components/MenuGroupHeader/index.js.map +1 -1
  44. package/lib/components/MenuGroupHeader/renderMenuGroupHeader.js +2 -3
  45. package/lib/components/MenuGroupHeader/renderMenuGroupHeader.js.map +1 -1
  46. package/lib/components/MenuGroupHeader/useMenuGroupHeader.js +1 -0
  47. package/lib/components/MenuGroupHeader/useMenuGroupHeader.js.map +1 -1
  48. package/lib/components/MenuGroupHeader/useMenuGroupHeaderStyles.js.map +1 -1
  49. package/lib/components/MenuItem/MenuItem.js.map +1 -1
  50. package/lib/components/MenuItem/MenuItem.types.js.map +1 -1
  51. package/lib/components/MenuItem/index.js.map +1 -1
  52. package/lib/components/MenuItem/renderMenuItem.js +2 -13
  53. package/lib/components/MenuItem/renderMenuItem.js.map +1 -1
  54. package/lib/components/MenuItem/useCharacterSearch.js +3 -2
  55. package/lib/components/MenuItem/useCharacterSearch.js.map +1 -1
  56. package/lib/components/MenuItem/useMenuItem.js +7 -7
  57. package/lib/components/MenuItem/useMenuItem.js.map +1 -1
  58. package/lib/components/MenuItem/useMenuItemStyles.js.map +1 -1
  59. package/lib/components/MenuItemCheckbox/MenuItemCheckbox.js.map +1 -1
  60. package/lib/components/MenuItemCheckbox/MenuItemCheckbox.types.js.map +1 -1
  61. package/lib/components/MenuItemCheckbox/index.js.map +1 -1
  62. package/lib/components/MenuItemCheckbox/renderMenuItemCheckbox.js +2 -11
  63. package/lib/components/MenuItemCheckbox/renderMenuItemCheckbox.js.map +1 -1
  64. package/lib/components/MenuItemCheckbox/useMenuItemCheckbox.js +4 -4
  65. package/lib/components/MenuItemCheckbox/useMenuItemCheckbox.js.map +1 -1
  66. package/lib/components/MenuItemCheckbox/useMenuItemCheckboxStyles.js.map +1 -1
  67. package/lib/components/MenuItemRadio/MenuItemRadio.js.map +1 -1
  68. package/lib/components/MenuItemRadio/MenuItemRadio.types.js.map +1 -1
  69. package/lib/components/MenuItemRadio/index.js.map +1 -1
  70. package/lib/components/MenuItemRadio/renderMenuItemRadio.js +2 -11
  71. package/lib/components/MenuItemRadio/renderMenuItemRadio.js.map +1 -1
  72. package/lib/components/MenuItemRadio/useMenuItemRadio.js +4 -4
  73. package/lib/components/MenuItemRadio/useMenuItemRadio.js.map +1 -1
  74. package/lib/components/MenuItemRadio/useMenuItemRadioStyles.js.map +1 -1
  75. package/lib/components/MenuList/MenuList.js.map +1 -1
  76. package/lib/components/MenuList/MenuList.types.js +1 -1
  77. package/lib/components/MenuList/MenuList.types.js.map +1 -1
  78. package/lib/components/MenuList/index.js.map +1 -1
  79. package/lib/components/MenuList/renderMenuList.js +2 -3
  80. package/lib/components/MenuList/renderMenuList.js.map +1 -1
  81. package/lib/components/MenuList/useMenuList.js +4 -5
  82. package/lib/components/MenuList/useMenuList.js.map +1 -1
  83. package/lib/components/MenuList/useMenuListContextValues.js.map +1 -1
  84. package/lib/components/MenuList/useMenuListStyles.js.map +1 -1
  85. package/lib/components/MenuPopover/MenuPopover.js.map +1 -1
  86. package/lib/components/MenuPopover/MenuPopover.types.js.map +1 -1
  87. package/lib/components/MenuPopover/index.js.map +1 -1
  88. package/lib/components/MenuPopover/renderMenuPopover.js +3 -6
  89. package/lib/components/MenuPopover/renderMenuPopover.js.map +1 -1
  90. package/lib/components/MenuPopover/useMenuPopover.js +3 -4
  91. package/lib/components/MenuPopover/useMenuPopover.js.map +1 -1
  92. package/lib/components/MenuPopover/useMenuPopoverStyles.js.map +1 -1
  93. package/lib/components/MenuSplitGroup/MenuSplitGroup.js.map +1 -1
  94. package/lib/components/MenuSplitGroup/MenuSplitGroup.types.js.map +1 -1
  95. package/lib/components/MenuSplitGroup/index.js.map +1 -1
  96. package/lib/components/MenuSplitGroup/renderMenuSplitGroup.js +2 -3
  97. package/lib/components/MenuSplitGroup/renderMenuSplitGroup.js.map +1 -1
  98. package/lib/components/MenuSplitGroup/useMenuSplitGroup.js +2 -2
  99. package/lib/components/MenuSplitGroup/useMenuSplitGroup.js.map +1 -1
  100. package/lib/components/MenuSplitGroup/useMenuSplitGroupStyles.js.map +1 -1
  101. package/lib/components/MenuTrigger/MenuTrigger.js +1 -0
  102. package/lib/components/MenuTrigger/MenuTrigger.js.map +1 -1
  103. package/lib/components/MenuTrigger/MenuTrigger.types.js +1 -1
  104. package/lib/components/MenuTrigger/MenuTrigger.types.js.map +1 -1
  105. package/lib/components/MenuTrigger/index.js.map +1 -1
  106. package/lib/components/MenuTrigger/renderMenuTrigger.js.map +1 -1
  107. package/lib/components/MenuTrigger/useMenuTrigger.js.map +1 -1
  108. package/lib/components/index.js.map +1 -1
  109. package/lib/contexts/menuContext.js +5 -1
  110. package/lib/contexts/menuContext.js.map +1 -1
  111. package/lib/contexts/menuGroupContext.js +1 -4
  112. package/lib/contexts/menuGroupContext.js.map +1 -1
  113. package/lib/contexts/menuListContext.js +5 -1
  114. package/lib/contexts/menuListContext.js.map +1 -1
  115. package/lib/contexts/menuTriggerContext.js +1 -4
  116. package/lib/contexts/menuTriggerContext.js.map +1 -1
  117. package/lib/index.js.map +1 -1
  118. package/lib/selectable/index.js.map +1 -1
  119. package/lib/selectable/types.js +1 -1
  120. package/lib/selectable/types.js.map +1 -1
  121. package/lib/selectable/useCheckmarkStyles.js.map +1 -1
  122. package/lib/utils/index.js.map +1 -1
  123. package/lib/utils/useIsSubmenu.js.map +1 -1
  124. package/lib/utils/useOnMenuEnter.js +1 -2
  125. package/lib/utils/useOnMenuEnter.js.map +1 -1
  126. package/lib-commonjs/Menu.js +5 -4
  127. package/lib-commonjs/Menu.js.map +1 -1
  128. package/lib-commonjs/MenuDivider.js +5 -4
  129. package/lib-commonjs/MenuDivider.js.map +1 -1
  130. package/lib-commonjs/MenuGroup.js +5 -4
  131. package/lib-commonjs/MenuGroup.js.map +1 -1
  132. package/lib-commonjs/MenuGroupHeader.js +5 -4
  133. package/lib-commonjs/MenuGroupHeader.js.map +1 -1
  134. package/lib-commonjs/MenuItem.js +5 -4
  135. package/lib-commonjs/MenuItem.js.map +1 -1
  136. package/lib-commonjs/MenuItemCheckbox.js +5 -4
  137. package/lib-commonjs/MenuItemCheckbox.js.map +1 -1
  138. package/lib-commonjs/MenuItemRadio.js +5 -4
  139. package/lib-commonjs/MenuItemRadio.js.map +1 -1
  140. package/lib-commonjs/MenuList.js +5 -4
  141. package/lib-commonjs/MenuList.js.map +1 -1
  142. package/lib-commonjs/MenuPopover.js +5 -4
  143. package/lib-commonjs/MenuPopover.js.map +1 -1
  144. package/lib-commonjs/MenuSplitGroup.js +5 -4
  145. package/lib-commonjs/MenuSplitGroup.js.map +1 -1
  146. package/lib-commonjs/MenuTrigger.js +5 -4
  147. package/lib-commonjs/MenuTrigger.js.map +1 -1
  148. package/lib-commonjs/components/Menu/Menu.js +16 -15
  149. package/lib-commonjs/components/Menu/Menu.js.map +1 -1
  150. package/lib-commonjs/components/Menu/Menu.types.js +5 -2
  151. package/lib-commonjs/components/Menu/Menu.types.js.map +1 -1
  152. package/lib-commonjs/components/Menu/index.js +9 -8
  153. package/lib-commonjs/components/Menu/index.js.map +1 -1
  154. package/lib-commonjs/components/Menu/renderMenu.js +14 -14
  155. package/lib-commonjs/components/Menu/renderMenu.js.map +1 -1
  156. package/lib-commonjs/components/Menu/useMenu.js +249 -252
  157. package/lib-commonjs/components/Menu/useMenu.js.map +1 -1
  158. package/lib-commonjs/components/Menu/useMenuContextValues.js +28 -41
  159. package/lib-commonjs/components/Menu/useMenuContextValues.js.map +1 -1
  160. package/lib-commonjs/components/MenuDivider/MenuDivider.js +16 -15
  161. package/lib-commonjs/components/MenuDivider/MenuDivider.js.map +1 -1
  162. package/lib-commonjs/components/MenuDivider/MenuDivider.types.js +3 -2
  163. package/lib-commonjs/components/MenuDivider/MenuDivider.types.js.map +1 -1
  164. package/lib-commonjs/components/MenuDivider/index.js +9 -8
  165. package/lib-commonjs/components/MenuDivider/index.js.map +1 -1
  166. package/lib-commonjs/components/MenuDivider/renderMenuDivider.js +15 -19
  167. package/lib-commonjs/components/MenuDivider/renderMenuDivider.js.map +1 -1
  168. package/lib-commonjs/components/MenuDivider/useMenuDivider.js +22 -21
  169. package/lib-commonjs/components/MenuDivider/useMenuDivider.js.map +1 -1
  170. package/lib-commonjs/components/MenuDivider/useMenuDividerStyles.js +47 -25
  171. package/lib-commonjs/components/MenuDivider/useMenuDividerStyles.js.map +1 -1
  172. package/lib-commonjs/components/MenuGroup/MenuGroup.js +18 -17
  173. package/lib-commonjs/components/MenuGroup/MenuGroup.js.map +1 -1
  174. package/lib-commonjs/components/MenuGroup/MenuGroup.types.js +3 -2
  175. package/lib-commonjs/components/MenuGroup/MenuGroup.types.js.map +1 -1
  176. package/lib-commonjs/components/MenuGroup/index.js +10 -9
  177. package/lib-commonjs/components/MenuGroup/index.js.map +1 -1
  178. package/lib-commonjs/components/MenuGroup/renderMenuGroup.js +18 -22
  179. package/lib-commonjs/components/MenuGroup/renderMenuGroup.js.map +1 -1
  180. package/lib-commonjs/components/MenuGroup/useMenuGroup.js +23 -22
  181. package/lib-commonjs/components/MenuGroup/useMenuGroup.js.map +1 -1
  182. package/lib-commonjs/components/MenuGroup/useMenuGroupContextValues.js +18 -15
  183. package/lib-commonjs/components/MenuGroup/useMenuGroupContextValues.js.map +1 -1
  184. package/lib-commonjs/components/MenuGroup/useMenuGroupStyles.js +19 -11
  185. package/lib-commonjs/components/MenuGroup/useMenuGroupStyles.js.map +1 -1
  186. package/lib-commonjs/components/MenuGroupHeader/MenuGroupHeader.js +16 -15
  187. package/lib-commonjs/components/MenuGroupHeader/MenuGroupHeader.js.map +1 -1
  188. package/lib-commonjs/components/MenuGroupHeader/MenuGroupHeader.types.js +3 -2
  189. package/lib-commonjs/components/MenuGroupHeader/MenuGroupHeader.types.js.map +1 -1
  190. package/lib-commonjs/components/MenuGroupHeader/index.js +9 -8
  191. package/lib-commonjs/components/MenuGroupHeader/index.js.map +1 -1
  192. package/lib-commonjs/components/MenuGroupHeader/renderMenuGroupHeader.js +15 -19
  193. package/lib-commonjs/components/MenuGroupHeader/renderMenuGroupHeader.js.map +1 -1
  194. package/lib-commonjs/components/MenuGroupHeader/useMenuGroupHeader.js +22 -23
  195. package/lib-commonjs/components/MenuGroupHeader/useMenuGroupHeader.js.map +1 -1
  196. package/lib-commonjs/components/MenuGroupHeader/useMenuGroupHeaderStyles.js +47 -25
  197. package/lib-commonjs/components/MenuGroupHeader/useMenuGroupHeaderStyles.js.map +1 -1
  198. package/lib-commonjs/components/MenuItem/MenuItem.js +16 -15
  199. package/lib-commonjs/components/MenuItem/MenuItem.js.map +1 -1
  200. package/lib-commonjs/components/MenuItem/MenuItem.types.js +3 -2
  201. package/lib-commonjs/components/MenuItem/MenuItem.types.js.map +1 -1
  202. package/lib-commonjs/components/MenuItem/index.js +9 -8
  203. package/lib-commonjs/components/MenuItem/index.js.map +1 -1
  204. package/lib-commonjs/components/MenuItem/renderMenuItem.js +15 -28
  205. package/lib-commonjs/components/MenuItem/renderMenuItem.js.map +1 -1
  206. package/lib-commonjs/components/MenuItem/useCharacterSearch.js +24 -22
  207. package/lib-commonjs/components/MenuItem/useCharacterSearch.js.map +1 -1
  208. package/lib-commonjs/components/MenuItem/useMenuItem.js +97 -104
  209. package/lib-commonjs/components/MenuItem/useMenuItem.js.map +1 -1
  210. package/lib-commonjs/components/MenuItem/useMenuItemStyles.js +282 -134
  211. package/lib-commonjs/components/MenuItem/useMenuItemStyles.js.map +1 -1
  212. package/lib-commonjs/components/MenuItemCheckbox/MenuItemCheckbox.js +16 -15
  213. package/lib-commonjs/components/MenuItemCheckbox/MenuItemCheckbox.js.map +1 -1
  214. package/lib-commonjs/components/MenuItemCheckbox/MenuItemCheckbox.types.js +3 -2
  215. package/lib-commonjs/components/MenuItemCheckbox/MenuItemCheckbox.types.js.map +1 -1
  216. package/lib-commonjs/components/MenuItemCheckbox/index.js +9 -8
  217. package/lib-commonjs/components/MenuItemCheckbox/index.js.map +1 -1
  218. package/lib-commonjs/components/MenuItemCheckbox/renderMenuItemCheckbox.js +15 -24
  219. package/lib-commonjs/components/MenuItemCheckbox/renderMenuItemCheckbox.js.map +1 -1
  220. package/lib-commonjs/components/MenuItemCheckbox/useMenuItemCheckbox.js +44 -45
  221. package/lib-commonjs/components/MenuItemCheckbox/useMenuItemCheckbox.js.map +1 -1
  222. package/lib-commonjs/components/MenuItemCheckbox/useMenuItemCheckboxStyles.js +38 -30
  223. package/lib-commonjs/components/MenuItemCheckbox/useMenuItemCheckboxStyles.js.map +1 -1
  224. package/lib-commonjs/components/MenuItemRadio/MenuItemRadio.js +16 -15
  225. package/lib-commonjs/components/MenuItemRadio/MenuItemRadio.js.map +1 -1
  226. package/lib-commonjs/components/MenuItemRadio/MenuItemRadio.types.js +3 -2
  227. package/lib-commonjs/components/MenuItemRadio/MenuItemRadio.types.js.map +1 -1
  228. package/lib-commonjs/components/MenuItemRadio/index.js +9 -8
  229. package/lib-commonjs/components/MenuItemRadio/index.js.map +1 -1
  230. package/lib-commonjs/components/MenuItemRadio/renderMenuItemRadio.js +15 -27
  231. package/lib-commonjs/components/MenuItemRadio/renderMenuItemRadio.js.map +1 -1
  232. package/lib-commonjs/components/MenuItemRadio/useMenuItemRadio.js +42 -45
  233. package/lib-commonjs/components/MenuItemRadio/useMenuItemRadio.js.map +1 -1
  234. package/lib-commonjs/components/MenuItemRadio/useMenuItemRadioStyles.js +38 -30
  235. package/lib-commonjs/components/MenuItemRadio/useMenuItemRadioStyles.js.map +1 -1
  236. package/lib-commonjs/components/MenuList/MenuList.js +18 -17
  237. package/lib-commonjs/components/MenuList/MenuList.js.map +1 -1
  238. package/lib-commonjs/components/MenuList/MenuList.types.js +5 -2
  239. package/lib-commonjs/components/MenuList/MenuList.types.js.map +1 -1
  240. package/lib-commonjs/components/MenuList/index.js +10 -9
  241. package/lib-commonjs/components/MenuList/index.js.map +1 -1
  242. package/lib-commonjs/components/MenuList/renderMenuList.js +18 -21
  243. package/lib-commonjs/components/MenuList/renderMenuList.js.map +1 -1
  244. package/lib-commonjs/components/MenuList/useMenuList.js +141 -137
  245. package/lib-commonjs/components/MenuList/useMenuList.js.map +1 -1
  246. package/lib-commonjs/components/MenuList/useMenuListContextValues.js +20 -25
  247. package/lib-commonjs/components/MenuList/useMenuListContextValues.js.map +1 -1
  248. package/lib-commonjs/components/MenuList/useMenuListStyles.js +33 -23
  249. package/lib-commonjs/components/MenuList/useMenuListStyles.js.map +1 -1
  250. package/lib-commonjs/components/MenuPopover/MenuPopover.js +16 -15
  251. package/lib-commonjs/components/MenuPopover/MenuPopover.js.map +1 -1
  252. package/lib-commonjs/components/MenuPopover/MenuPopover.types.js +3 -2
  253. package/lib-commonjs/components/MenuPopover/MenuPopover.types.js.map +1 -1
  254. package/lib-commonjs/components/MenuPopover/index.js +9 -8
  255. package/lib-commonjs/components/MenuPopover/index.js.map +1 -1
  256. package/lib-commonjs/components/MenuPopover/renderMenuPopover.js +19 -24
  257. package/lib-commonjs/components/MenuPopover/renderMenuPopover.js.map +1 -1
  258. package/lib-commonjs/components/MenuPopover/useMenuPopover.js +99 -108
  259. package/lib-commonjs/components/MenuPopover/useMenuPopover.js.map +1 -1
  260. package/lib-commonjs/components/MenuPopover/useMenuPopoverStyles.js +121 -50
  261. package/lib-commonjs/components/MenuPopover/useMenuPopoverStyles.js.map +1 -1
  262. package/lib-commonjs/components/MenuSplitGroup/MenuSplitGroup.js +16 -15
  263. package/lib-commonjs/components/MenuSplitGroup/MenuSplitGroup.js.map +1 -1
  264. package/lib-commonjs/components/MenuSplitGroup/MenuSplitGroup.types.js +3 -2
  265. package/lib-commonjs/components/MenuSplitGroup/MenuSplitGroup.types.js.map +1 -1
  266. package/lib-commonjs/components/MenuSplitGroup/index.js +9 -8
  267. package/lib-commonjs/components/MenuSplitGroup/index.js.map +1 -1
  268. package/lib-commonjs/components/MenuSplitGroup/renderMenuSplitGroup.js +15 -18
  269. package/lib-commonjs/components/MenuSplitGroup/renderMenuSplitGroup.js.map +1 -1
  270. package/lib-commonjs/components/MenuSplitGroup/useMenuSplitGroup.js +58 -64
  271. package/lib-commonjs/components/MenuSplitGroup/useMenuSplitGroup.js.map +1 -1
  272. package/lib-commonjs/components/MenuSplitGroup/useMenuSplitGroupStyles.js +61 -32
  273. package/lib-commonjs/components/MenuSplitGroup/useMenuSplitGroupStyles.js.map +1 -1
  274. package/lib-commonjs/components/MenuTrigger/MenuTrigger.js +15 -15
  275. package/lib-commonjs/components/MenuTrigger/MenuTrigger.js.map +1 -1
  276. package/lib-commonjs/components/MenuTrigger/MenuTrigger.types.js +5 -2
  277. package/lib-commonjs/components/MenuTrigger/MenuTrigger.types.js.map +1 -1
  278. package/lib-commonjs/components/MenuTrigger/index.js +8 -7
  279. package/lib-commonjs/components/MenuTrigger/index.js.map +1 -1
  280. package/lib-commonjs/components/MenuTrigger/renderMenuTrigger.js +14 -16
  281. package/lib-commonjs/components/MenuTrigger/renderMenuTrigger.js.map +1 -1
  282. package/lib-commonjs/components/MenuTrigger/useMenuTrigger.js +163 -170
  283. package/lib-commonjs/components/MenuTrigger/useMenuTrigger.js.map +1 -1
  284. package/lib-commonjs/components/index.js +6 -5
  285. package/lib-commonjs/components/index.js.map +1 -1
  286. package/lib-commonjs/contexts/menuContext.js +40 -26
  287. package/lib-commonjs/contexts/menuContext.js.map +1 -1
  288. package/lib-commonjs/contexts/menuGroupContext.js +18 -12
  289. package/lib-commonjs/contexts/menuGroupContext.js.map +1 -1
  290. package/lib-commonjs/contexts/menuListContext.js +28 -14
  291. package/lib-commonjs/contexts/menuListContext.js.map +1 -1
  292. package/lib-commonjs/contexts/menuTriggerContext.js +17 -12
  293. package/lib-commonjs/contexts/menuTriggerContext.js.map +1 -1
  294. package/lib-commonjs/index.js +91 -399
  295. package/lib-commonjs/index.js.map +1 -1
  296. package/lib-commonjs/selectable/index.js +6 -5
  297. package/lib-commonjs/selectable/index.js.map +1 -1
  298. package/lib-commonjs/selectable/types.js +5 -2
  299. package/lib-commonjs/selectable/types.js.map +1 -1
  300. package/lib-commonjs/selectable/useCheckmarkStyles.js +28 -26
  301. package/lib-commonjs/selectable/useCheckmarkStyles.js.map +1 -1
  302. package/lib-commonjs/utils/index.js +5 -4
  303. package/lib-commonjs/utils/index.js.map +1 -1
  304. package/lib-commonjs/utils/useIsSubmenu.js +13 -19
  305. package/lib-commonjs/utils/useIsSubmenu.js.map +1 -1
  306. package/lib-commonjs/utils/useOnMenuEnter.js +56 -68
  307. package/lib-commonjs/utils/useOnMenuEnter.js.map +1 -1
  308. package/package.json +13 -13
@@ -1 +1 @@
1
- {"version":3,"mappings":";;;;;;AACA;AAIO,MAAMA,kBAAkB,GAAG,CAACC,KAAoB,EAAEC,GAAiC,KAAI;EAC5F,MAAMC,wBAAwB,GAAGC,6CAA2B,CAACC,OAAO,IAAIA,OAAO,CAACF,wBAAwB,CAAC;EAEzG,MAAM;IAAEG,SAAS,EAAEC;EAAiB,CAAE,GAAGN,KAAK,CAACO,IAAI;EAEnDP,KAAK,CAACO,IAAI,CAACF,SAAS,GAAIG,CAAqD,IAAI;;IAC/EF,iBAAiB,aAAjBA,iBAAiB,uBAAjBA,iBAAiB,CAAGE,CAAC,CAAC;IAEtB,IAAI,QAAC,CAACC,GAAG,0CAAEC,MAAM,IAAG,CAAC,EAAE;MACrB;;IAGF,IAAIT,GAAG,CAACU,OAAO,EAAE;MACfT,wBAAwB,aAAxBA,wBAAwB,uBAAxBA,wBAAwB,CAAGM,CAAC,EAAEP,GAAG,CAACU,OAAO,CAAC;;EAE9C,CAAC;EAED,OAAOX,KAAK;AACd,CAAC;AAlBYY,0BAAkB","names":["useCharacterSearch","state","ref","setFocusByFirstCharacter","menuListContext_1","context","onKeyDown","originalOnKeyDown","root","e","key","length","current","exports"],"sourceRoot":"","sources":["../../../../../../../../../packages/react-components/react-menu/src/components/MenuItem/useCharacterSearch.ts"],"sourcesContent":["import * as React from 'react';\nimport { useMenuListContext_unstable } from '../../contexts/menuListContext';\nimport type { MenuItemState } from '../../components/index';\nimport type { ARIAButtonElementIntersection } from '@fluentui/react-aria';\n\nexport const useCharacterSearch = (state: MenuItemState, ref: React.RefObject<HTMLElement>) => {\n const setFocusByFirstCharacter = useMenuListContext_unstable(context => context.setFocusByFirstCharacter);\n\n const { onKeyDown: originalOnKeyDown } = state.root;\n\n state.root.onKeyDown = (e: React.KeyboardEvent<ARIAButtonElementIntersection>) => {\n originalOnKeyDown?.(e);\n\n if (e.key?.length > 1) {\n return;\n }\n\n if (ref.current) {\n setFocusByFirstCharacter?.(e, ref.current);\n }\n };\n\n return state;\n};\n"]}
1
+ {"version":3,"sources":["../../../lib/components/MenuItem/useCharacterSearch.js"],"sourcesContent":["import * as React from 'react';\nimport { useMenuListContext_unstable } from '../../contexts/menuListContext';\nexport const useCharacterSearch = (state, ref) => {\n const setFocusByFirstCharacter = useMenuListContext_unstable(context => context.setFocusByFirstCharacter);\n const {\n onKeyDown: originalOnKeyDown\n } = state.root;\n state.root.onKeyDown = e => {\n var _e_key;\n originalOnKeyDown === null || originalOnKeyDown === void 0 ? void 0 : originalOnKeyDown(e);\n if (((_e_key = e.key) === null || _e_key === void 0 ? void 0 : _e_key.length) > 1) {\n return;\n }\n if (ref.current) {\n setFocusByFirstCharacter === null || setFocusByFirstCharacter === void 0 ? void 0 : setFocusByFirstCharacter(e, ref.current);\n }\n };\n return state;\n};\n//# sourceMappingURL=useCharacterSearch.js.map"],"names":["useCharacterSearch","state","ref","setFocusByFirstCharacter","useMenuListContext_unstable","context","onKeyDown","originalOnKeyDown","root","e","_e_key","key","length","current"],"mappings":";;;;+BAEaA;;aAAAA;;;6DAFU;iCACqB;AACrC,MAAMA,qBAAqB,CAACC,OAAOC,MAAQ;IAChD,MAAMC,2BAA2BC,IAAAA,4CAA2B,EAACC,CAAAA,UAAWA,QAAQF,wBAAwB;IACxG,MAAM,EACJG,WAAWC,kBAAiB,EAC7B,GAAGN,MAAMO,IAAI;IACdP,MAAMO,IAAI,CAACF,SAAS,GAAGG,CAAAA,IAAK;QAC1B,IAAIC;QACJH,sBAAsB,IAAI,IAAIA,sBAAsB,KAAK,IAAI,KAAK,IAAIA,kBAAkBE,EAAE;QAC1F,IAAI,AAAC,CAAA,AAACC,CAAAA,SAASD,EAAEE,GAAG,AAAD,MAAO,IAAI,IAAID,WAAW,KAAK,IAAI,KAAK,IAAIA,OAAOE,MAAM,AAAD,IAAK,GAAG;YACjF;QACF,CAAC;QACD,IAAIV,IAAIW,OAAO,EAAE;YACfV,6BAA6B,IAAI,IAAIA,6BAA6B,KAAK,IAAI,KAAK,IAAIA,yBAAyBM,GAAGP,IAAIW,OAAO,CAAC;QAC9H,CAAC;IACH;IACA,OAAOZ;AACT,GACA,8CAA8C"}
@@ -1,108 +1,101 @@
1
1
  "use strict";
2
-
3
2
  Object.defineProperty(exports, "__esModule", {
4
- value: true
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "useMenuItem_unstable", {
6
+ enumerable: true,
7
+ get: ()=>useMenuItem_unstable
5
8
  });
6
- exports.useMenuItem_unstable = void 0;
7
- const React = /*#__PURE__*/require("react");
8
- const react_utilities_1 = /*#__PURE__*/require("@fluentui/react-utilities");
9
- const react_shared_contexts_1 = /*#__PURE__*/require("@fluentui/react-shared-contexts");
10
- const useCharacterSearch_1 = /*#__PURE__*/require("./useCharacterSearch");
11
- const menuTriggerContext_1 = /*#__PURE__*/require("../../contexts/menuTriggerContext");
12
- const react_icons_1 = /*#__PURE__*/require("@fluentui/react-icons");
13
- const menuListContext_1 = /*#__PURE__*/require("../../contexts/menuListContext");
14
- const menuContext_1 = /*#__PURE__*/require("../../contexts/menuContext");
15
- const react_aria_1 = /*#__PURE__*/require("@fluentui/react-aria");
16
- const keyboard_keys_1 = /*#__PURE__*/require("@fluentui/keyboard-keys");
17
- const ChevronRightIcon = /*#__PURE__*/react_icons_1.bundleIcon(react_icons_1.ChevronRightFilled, react_icons_1.ChevronRightRegular);
18
- const ChevronLeftIcon = /*#__PURE__*/react_icons_1.bundleIcon(react_icons_1.ChevronLeftFilled, react_icons_1.ChevronLeftRegular);
19
- /**
20
- * Returns the props and state required to render the component
21
- */
22
- const useMenuItem_unstable = (props, ref) => {
23
- const isSubmenuTrigger = menuTriggerContext_1.useMenuTriggerContext_unstable();
24
- const persistOnClickContext = menuContext_1.useMenuContext_unstable(context => context.persistOnItemClick);
25
- const {
26
- as = 'div',
27
- disabled = false,
28
- hasSubmenu = isSubmenuTrigger,
29
- persistOnClick = persistOnClickContext
30
- } = props;
31
- const hasIcons = menuListContext_1.useMenuListContext_unstable(context => context.hasIcons);
32
- const hasCheckmarks = menuListContext_1.useMenuListContext_unstable(context => context.hasCheckmarks);
33
- const setOpen = menuContext_1.useMenuContext_unstable(context => context.setOpen);
34
- const {
35
- dir
36
- } = react_shared_contexts_1.useFluent_unstable();
37
- const innerRef = React.useRef(null);
38
- const dismissedWithKeyboardRef = React.useRef(false);
39
- const state = {
40
- hasSubmenu,
41
- disabled,
42
- persistOnClick,
43
- components: {
44
- root: 'div',
45
- icon: 'span',
46
- checkmark: 'span',
47
- submenuIndicator: 'span',
48
- content: 'span',
49
- secondaryContent: 'span'
50
- },
51
- root: react_utilities_1.getNativeElementProps(as, react_aria_1.useARIAButtonProps(as, {
52
- role: 'menuitem',
53
- ...props,
54
- disabled: false,
55
- disabledFocusable: disabled,
56
- ref: react_utilities_1.useMergedRefs(ref, innerRef),
57
- onKeyDown: react_utilities_1.useEventCallback(event => {
58
- var _a;
59
- (_a = props.onKeyDown) === null || _a === void 0 ? void 0 : _a.call(props, event);
60
- if (!event.isDefaultPrevented() && (event.key === keyboard_keys_1.Space || event.key === keyboard_keys_1.Enter)) {
61
- dismissedWithKeyboardRef.current = true;
62
- }
63
- }),
64
- onMouseEnter: react_utilities_1.useEventCallback(event => {
65
- var _a, _b;
66
- (_a = innerRef.current) === null || _a === void 0 ? void 0 : _a.focus();
67
- (_b = props.onMouseEnter) === null || _b === void 0 ? void 0 : _b.call(props, event);
68
- }),
69
- onClick: react_utilities_1.useEventCallback(event => {
70
- var _a;
71
- if (!hasSubmenu && !persistOnClick) {
72
- setOpen(event, {
73
- open: false,
74
- keyboard: dismissedWithKeyboardRef.current,
75
- bubble: true,
76
- type: 'menuItemClick',
77
- event
78
- });
79
- dismissedWithKeyboardRef.current = false;
80
- }
81
- (_a = props.onClick) === null || _a === void 0 ? void 0 : _a.call(props, event);
82
- })
83
- })),
84
- icon: react_utilities_1.resolveShorthand(props.icon, {
85
- required: hasIcons
86
- }),
87
- checkmark: react_utilities_1.resolveShorthand(props.checkmark, {
88
- required: hasCheckmarks
89
- }),
90
- submenuIndicator: react_utilities_1.resolveShorthand(props.submenuIndicator, {
91
- required: hasSubmenu,
92
- defaultProps: {
93
- children: dir === 'ltr' ? React.createElement(ChevronRightIcon, null) : React.createElement(ChevronLeftIcon, null)
94
- }
95
- }),
96
- content: react_utilities_1.resolveShorthand(props.content, {
97
- required: !!props.children,
98
- defaultProps: {
99
- children: props.children
100
- }
101
- }),
102
- secondaryContent: react_utilities_1.resolveShorthand(props.secondaryContent)
103
- };
104
- useCharacterSearch_1.useCharacterSearch(state, innerRef);
105
- return state;
106
- };
107
- exports.useMenuItem_unstable = useMenuItem_unstable;
9
+ const _interopRequireWildcard = require("@swc/helpers/lib/_interop_require_wildcard.js").default;
10
+ const _react = /*#__PURE__*/ _interopRequireWildcard(require("react"));
11
+ const _reactUtilities = require("@fluentui/react-utilities");
12
+ const _reactSharedContexts = require("@fluentui/react-shared-contexts");
13
+ const _useCharacterSearch = require("./useCharacterSearch");
14
+ const _menuTriggerContext = require("../../contexts/menuTriggerContext");
15
+ const _reactIcons = require("@fluentui/react-icons");
16
+ const _menuListContext = require("../../contexts/menuListContext");
17
+ const _menuContext = require("../../contexts/menuContext");
18
+ const _reactAria = require("@fluentui/react-aria");
19
+ const _keyboardKeys = require("@fluentui/keyboard-keys");
20
+ const ChevronRightIcon = /*#__PURE__*/ (0, _reactIcons.bundleIcon)(_reactIcons.ChevronRightFilled, _reactIcons.ChevronRightRegular);
21
+ const ChevronLeftIcon = /*#__PURE__*/ (0, _reactIcons.bundleIcon)(_reactIcons.ChevronLeftFilled, _reactIcons.ChevronLeftRegular);
22
+ const useMenuItem_unstable = (props, ref)=>{
23
+ const isSubmenuTrigger = (0, _menuTriggerContext.useMenuTriggerContext_unstable)();
24
+ const persistOnClickContext = (0, _menuContext.useMenuContext_unstable)((context)=>context.persistOnItemClick);
25
+ const { as ='div' , disabled =false , hasSubmenu =isSubmenuTrigger , persistOnClick =persistOnClickContext } = props;
26
+ const hasIcons = (0, _menuListContext.useMenuListContext_unstable)((context)=>context.hasIcons);
27
+ const hasCheckmarks = (0, _menuListContext.useMenuListContext_unstable)((context)=>context.hasCheckmarks);
28
+ const setOpen = (0, _menuContext.useMenuContext_unstable)((context)=>context.setOpen);
29
+ const { dir } = (0, _reactSharedContexts.useFluent_unstable)();
30
+ const innerRef = _react.useRef(null);
31
+ const dismissedWithKeyboardRef = _react.useRef(false);
32
+ const state = {
33
+ hasSubmenu,
34
+ disabled,
35
+ persistOnClick,
36
+ components: {
37
+ root: 'div',
38
+ icon: 'span',
39
+ checkmark: 'span',
40
+ submenuIndicator: 'span',
41
+ content: 'span',
42
+ secondaryContent: 'span'
43
+ },
44
+ root: (0, _reactUtilities.getNativeElementProps)(as, (0, _reactAria.useARIAButtonProps)(as, {
45
+ role: 'menuitem',
46
+ ...props,
47
+ disabled: false,
48
+ disabledFocusable: disabled,
49
+ ref: (0, _reactUtilities.useMergedRefs)(ref, innerRef),
50
+ onKeyDown: (0, _reactUtilities.useEventCallback)((event)=>{
51
+ var _props_onKeyDown;
52
+ (_props_onKeyDown = props.onKeyDown) === null || _props_onKeyDown === void 0 ? void 0 : _props_onKeyDown.call(props, event);
53
+ if (!event.isDefaultPrevented() && (event.key === _keyboardKeys.Space || event.key === _keyboardKeys.Enter)) {
54
+ dismissedWithKeyboardRef.current = true;
55
+ }
56
+ }),
57
+ onMouseEnter: (0, _reactUtilities.useEventCallback)((event)=>{
58
+ var _innerRef_current, _props_onMouseEnter;
59
+ (_innerRef_current = innerRef.current) === null || _innerRef_current === void 0 ? void 0 : _innerRef_current.focus();
60
+ (_props_onMouseEnter = props.onMouseEnter) === null || _props_onMouseEnter === void 0 ? void 0 : _props_onMouseEnter.call(props, event);
61
+ }),
62
+ onClick: (0, _reactUtilities.useEventCallback)((event)=>{
63
+ var _props_onClick;
64
+ if (!hasSubmenu && !persistOnClick) {
65
+ setOpen(event, {
66
+ open: false,
67
+ keyboard: dismissedWithKeyboardRef.current,
68
+ bubble: true,
69
+ type: 'menuItemClick',
70
+ event
71
+ });
72
+ dismissedWithKeyboardRef.current = false;
73
+ }
74
+ (_props_onClick = props.onClick) === null || _props_onClick === void 0 ? void 0 : _props_onClick.call(props, event);
75
+ })
76
+ })),
77
+ icon: (0, _reactUtilities.resolveShorthand)(props.icon, {
78
+ required: hasIcons
79
+ }),
80
+ checkmark: (0, _reactUtilities.resolveShorthand)(props.checkmark, {
81
+ required: hasCheckmarks
82
+ }),
83
+ submenuIndicator: (0, _reactUtilities.resolveShorthand)(props.submenuIndicator, {
84
+ required: hasSubmenu,
85
+ defaultProps: {
86
+ children: dir === 'ltr' ? /*#__PURE__*/ _react.createElement(ChevronRightIcon, null) : /*#__PURE__*/ _react.createElement(ChevronLeftIcon, null)
87
+ }
88
+ }),
89
+ content: (0, _reactUtilities.resolveShorthand)(props.content, {
90
+ required: !!props.children,
91
+ defaultProps: {
92
+ children: props.children
93
+ }
94
+ }),
95
+ secondaryContent: (0, _reactUtilities.resolveShorthand)(props.secondaryContent)
96
+ };
97
+ (0, _useCharacterSearch.useCharacterSearch)(state, innerRef);
98
+ return state;
99
+ }; //# sourceMappingURL=useMenuItem.js.map
100
+
108
101
  //# sourceMappingURL=useMenuItem.js.map
@@ -1 +1 @@
1
- {"version":3,"mappings":";;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AAOA;AACA;AAEA;AACA;AAEA,MAAMA,gBAAgB,gBAAGC,wBAAU,CAACA,gCAAkB,EAAEA,iCAAmB,CAAC;AAC5E,MAAMC,eAAe,gBAAGD,wBAAU,CAACA,+BAAiB,EAAEA,gCAAkB,CAAC;AAEzE;;;AAGO,MAAME,oBAAoB,GAAG,CAACC,KAAoB,EAAEC,GAAwC,KAAmB;EACpH,MAAMC,gBAAgB,GAAGC,mDAA8B,EAAE;EACzD,MAAMC,qBAAqB,GAAGC,qCAAuB,CAACC,OAAO,IAAIA,OAAO,CAACC,kBAAkB,CAAC;EAC5F,MAAM;IAAEC,EAAE,GAAG,KAAK;IAAEC,QAAQ,GAAG,KAAK;IAAEC,UAAU,GAAGR,gBAAgB;IAAES,cAAc,GAAGP;EAAqB,CAAE,GAAGJ,KAAK;EACrH,MAAMY,QAAQ,GAAGC,6CAA2B,CAACP,OAAO,IAAIA,OAAO,CAACM,QAAQ,CAAC;EACzE,MAAME,aAAa,GAAGD,6CAA2B,CAACP,OAAO,IAAIA,OAAO,CAACQ,aAAa,CAAC;EACnF,MAAMC,OAAO,GAAGV,qCAAuB,CAACC,OAAO,IAAIA,OAAO,CAACS,OAAO,CAAC;EAEnE,MAAM;IAAEC;EAAG,CAAE,GAAGC,0CAAS,EAAE;EAC3B,MAAMC,QAAQ,GAAGC,KAAK,CAACC,MAAM,CAAuC,IAAI,CAAC;EACzE,MAAMC,wBAAwB,GAAGF,KAAK,CAACC,MAAM,CAAC,KAAK,CAAC;EAEpD,MAAME,KAAK,GAAkB;IAC3BZ,UAAU;IACVD,QAAQ;IACRE,cAAc;IACdY,UAAU,EAAE;MACVC,IAAI,EAAE,KAAK;MACXC,IAAI,EAAE,MAAM;MACZC,SAAS,EAAE,MAAM;MACjBC,gBAAgB,EAAE,MAAM;MACxBC,OAAO,EAAE,MAAM;MACfC,gBAAgB,EAAE;KACnB;IACDL,IAAI,EAAEM,uCAAqB,CACzBtB,EAAE,EACFuB,+BAAkB,CAACvB,EAAE,EAAE;MACrBwB,IAAI,EAAE,UAAU;MAChB,GAAGhC,KAAK;MACRS,QAAQ,EAAE,KAAK;MACfwB,iBAAiB,EAAExB,QAAQ;MAC3BR,GAAG,EAAE6B,+BAAa,CAAC7B,GAAG,EAAEiB,QAAQ,CAAoD;MACpFgB,SAAS,EAAEJ,kCAAgB,CAACK,KAAK,IAAG;;QAClC,WAAK,CAACD,SAAS,+CAAflC,KAAK,EAAamC,KAAK,CAAC;QACxB,IAAI,CAACA,KAAK,CAACC,kBAAkB,EAAE,KAAKD,KAAK,CAACE,GAAG,KAAKC,qBAAK,IAAIH,KAAK,CAACE,GAAG,KAAKC,qBAAK,CAAC,EAAE;UAC/EjB,wBAAwB,CAACkB,OAAO,GAAG,IAAI;;MAE3C,CAAC,CAAC;MACFC,YAAY,EAAEV,kCAAgB,CAACK,KAAK,IAAG;;QACrC,cAAQ,CAACI,OAAO,0CAAEE,KAAK,EAAE;QAEzB,WAAK,CAACD,YAAY,+CAAlBxC,KAAK,EAAgBmC,KAAK,CAAC;MAC7B,CAAC,CAAC;MACFO,OAAO,EAAEZ,kCAAgB,CAACK,KAAK,IAAG;;QAChC,IAAI,CAACzB,UAAU,IAAI,CAACC,cAAc,EAAE;UAClCI,OAAO,CAACoB,KAAK,EAAE;YACbQ,IAAI,EAAE,KAAK;YACXC,QAAQ,EAAEvB,wBAAwB,CAACkB,OAAO;YAC1CM,MAAM,EAAE,IAAI;YACZC,IAAI,EAAE,eAAe;YACrBX;WACD,CAAC;UACFd,wBAAwB,CAACkB,OAAO,GAAG,KAAK;;QAG1C,WAAK,CAACG,OAAO,+CAAb1C,KAAK,EAAWmC,KAAK,CAAC;MACxB,CAAC;KACF,CAAC,CACH;IACDV,IAAI,EAAEK,kCAAgB,CAAC9B,KAAK,CAACyB,IAAI,EAAE;MAAEsB,QAAQ,EAAEnC;IAAQ,CAAE,CAAC;IAC1Dc,SAAS,EAAEI,kCAAgB,CAAC9B,KAAK,CAAC0B,SAAS,EAAE;MAAEqB,QAAQ,EAAEjC;IAAa,CAAE,CAAC;IACzEa,gBAAgB,EAAEG,kCAAgB,CAAC9B,KAAK,CAAC2B,gBAAgB,EAAE;MACzDoB,QAAQ,EAAErC,UAAU;MACpBsC,YAAY,EAAE;QACZC,QAAQ,EAAEjC,GAAG,KAAK,KAAK,GAAGG,oBAACvB,gBAAgB,OAAG,GAAGuB,oBAACrB,eAAe;;KAEpE,CAAC;IACF8B,OAAO,EAAEE,kCAAgB,CAAC9B,KAAK,CAAC4B,OAAO,EAAE;MACvCmB,QAAQ,EAAE,CAAC,CAAC/C,KAAK,CAACiD,QAAQ;MAC1BD,YAAY,EAAE;QAAEC,QAAQ,EAAEjD,KAAK,CAACiD;MAAQ;KACzC,CAAC;IACFpB,gBAAgB,EAAEC,kCAAgB,CAAC9B,KAAK,CAAC6B,gBAAgB;GAC1D;EACDqB,uCAAkB,CAAC5B,KAAK,EAAEJ,QAAQ,CAAC;EACnC,OAAOI,KAAK;AACd,CAAC;AA3EY6B,4BAAoB","names":["ChevronRightIcon","react_icons_1","ChevronLeftIcon","useMenuItem_unstable","props","ref","isSubmenuTrigger","menuTriggerContext_1","persistOnClickContext","menuContext_1","context","persistOnItemClick","as","disabled","hasSubmenu","persistOnClick","hasIcons","menuListContext_1","hasCheckmarks","setOpen","dir","react_shared_contexts_1","innerRef","React","useRef","dismissedWithKeyboardRef","state","components","root","icon","checkmark","submenuIndicator","content","secondaryContent","react_utilities_1","react_aria_1","role","disabledFocusable","onKeyDown","event","isDefaultPrevented","key","keyboard_keys_1","current","onMouseEnter","focus","onClick","open","keyboard","bubble","type","required","defaultProps","children","useCharacterSearch_1","exports"],"sourceRoot":"","sources":["../../../../../../../../../packages/react-components/react-menu/src/components/MenuItem/useMenuItem.tsx"],"sourcesContent":["import * as React from 'react';\nimport { useEventCallback, resolveShorthand, useMergedRefs, getNativeElementProps } from '@fluentui/react-utilities';\nimport { useFluent_unstable as useFluent } from '@fluentui/react-shared-contexts';\nimport { useCharacterSearch } from './useCharacterSearch';\nimport { useMenuTriggerContext_unstable } from '../../contexts/menuTriggerContext';\nimport {\n ChevronRightFilled,\n ChevronRightRegular,\n ChevronLeftFilled,\n ChevronLeftRegular,\n bundleIcon,\n} from '@fluentui/react-icons';\nimport { useMenuListContext_unstable } from '../../contexts/menuListContext';\nimport { useMenuContext_unstable } from '../../contexts/menuContext';\nimport type { MenuItemProps, MenuItemState } from './MenuItem.types';\nimport { ARIAButtonElement, ARIAButtonElementIntersection, useARIAButtonProps } from '@fluentui/react-aria';\nimport { Enter, Space } from '@fluentui/keyboard-keys';\n\nconst ChevronRightIcon = bundleIcon(ChevronRightFilled, ChevronRightRegular);\nconst ChevronLeftIcon = bundleIcon(ChevronLeftFilled, ChevronLeftRegular);\n\n/**\n * Returns the props and state required to render the component\n */\nexport const useMenuItem_unstable = (props: MenuItemProps, ref: React.Ref<ARIAButtonElement<'div'>>): MenuItemState => {\n const isSubmenuTrigger = useMenuTriggerContext_unstable();\n const persistOnClickContext = useMenuContext_unstable(context => context.persistOnItemClick);\n const { as = 'div', disabled = false, hasSubmenu = isSubmenuTrigger, persistOnClick = persistOnClickContext } = props;\n const hasIcons = useMenuListContext_unstable(context => context.hasIcons);\n const hasCheckmarks = useMenuListContext_unstable(context => context.hasCheckmarks);\n const setOpen = useMenuContext_unstable(context => context.setOpen);\n\n const { dir } = useFluent();\n const innerRef = React.useRef<ARIAButtonElementIntersection<'div'>>(null);\n const dismissedWithKeyboardRef = React.useRef(false);\n\n const state: MenuItemState = {\n hasSubmenu,\n disabled,\n persistOnClick,\n components: {\n root: 'div',\n icon: 'span',\n checkmark: 'span',\n submenuIndicator: 'span',\n content: 'span',\n secondaryContent: 'span',\n },\n root: getNativeElementProps(\n as,\n useARIAButtonProps(as, {\n role: 'menuitem',\n ...props,\n disabled: false,\n disabledFocusable: disabled,\n ref: useMergedRefs(ref, innerRef) as React.Ref<ARIAButtonElementIntersection<'div'>>,\n onKeyDown: useEventCallback(event => {\n props.onKeyDown?.(event);\n if (!event.isDefaultPrevented() && (event.key === Space || event.key === Enter)) {\n dismissedWithKeyboardRef.current = true;\n }\n }),\n onMouseEnter: useEventCallback(event => {\n innerRef.current?.focus();\n\n props.onMouseEnter?.(event);\n }),\n onClick: useEventCallback(event => {\n if (!hasSubmenu && !persistOnClick) {\n setOpen(event, {\n open: false,\n keyboard: dismissedWithKeyboardRef.current,\n bubble: true,\n type: 'menuItemClick',\n event,\n });\n dismissedWithKeyboardRef.current = false;\n }\n\n props.onClick?.(event);\n }),\n }),\n ),\n icon: resolveShorthand(props.icon, { required: hasIcons }),\n checkmark: resolveShorthand(props.checkmark, { required: hasCheckmarks }),\n submenuIndicator: resolveShorthand(props.submenuIndicator, {\n required: hasSubmenu,\n defaultProps: {\n children: dir === 'ltr' ? <ChevronRightIcon /> : <ChevronLeftIcon />,\n },\n }),\n content: resolveShorthand(props.content, {\n required: !!props.children,\n defaultProps: { children: props.children },\n }),\n secondaryContent: resolveShorthand(props.secondaryContent),\n };\n useCharacterSearch(state, innerRef);\n return state;\n};\n"]}
1
+ {"version":3,"sources":["../../../lib/components/MenuItem/useMenuItem.js"],"sourcesContent":["import * as React from 'react';\nimport { useEventCallback, resolveShorthand, useMergedRefs, getNativeElementProps } from '@fluentui/react-utilities';\nimport { useFluent_unstable as useFluent } from '@fluentui/react-shared-contexts';\nimport { useCharacterSearch } from './useCharacterSearch';\nimport { useMenuTriggerContext_unstable } from '../../contexts/menuTriggerContext';\nimport { ChevronRightFilled, ChevronRightRegular, ChevronLeftFilled, ChevronLeftRegular, bundleIcon } from '@fluentui/react-icons';\nimport { useMenuListContext_unstable } from '../../contexts/menuListContext';\nimport { useMenuContext_unstable } from '../../contexts/menuContext';\nimport { useARIAButtonProps } from '@fluentui/react-aria';\nimport { Enter, Space } from '@fluentui/keyboard-keys';\nconst ChevronRightIcon = /*#__PURE__*/bundleIcon(ChevronRightFilled, ChevronRightRegular);\nconst ChevronLeftIcon = /*#__PURE__*/bundleIcon(ChevronLeftFilled, ChevronLeftRegular);\n/**\n * Returns the props and state required to render the component\n */\nexport const useMenuItem_unstable = (props, ref) => {\n const isSubmenuTrigger = useMenuTriggerContext_unstable();\n const persistOnClickContext = useMenuContext_unstable(context => context.persistOnItemClick);\n const {\n as = 'div',\n disabled = false,\n hasSubmenu = isSubmenuTrigger,\n persistOnClick = persistOnClickContext\n } = props;\n const hasIcons = useMenuListContext_unstable(context => context.hasIcons);\n const hasCheckmarks = useMenuListContext_unstable(context => context.hasCheckmarks);\n const setOpen = useMenuContext_unstable(context => context.setOpen);\n const {\n dir\n } = useFluent();\n const innerRef = React.useRef(null);\n const dismissedWithKeyboardRef = React.useRef(false);\n const state = {\n hasSubmenu,\n disabled,\n persistOnClick,\n components: {\n root: 'div',\n icon: 'span',\n checkmark: 'span',\n submenuIndicator: 'span',\n content: 'span',\n secondaryContent: 'span'\n },\n root: getNativeElementProps(as, useARIAButtonProps(as, {\n role: 'menuitem',\n ...props,\n disabled: false,\n disabledFocusable: disabled,\n ref: useMergedRefs(ref, innerRef),\n onKeyDown: useEventCallback(event => {\n var _props_onKeyDown;\n (_props_onKeyDown = props.onKeyDown) === null || _props_onKeyDown === void 0 ? void 0 : _props_onKeyDown.call(props, event);\n if (!event.isDefaultPrevented() && (event.key === Space || event.key === Enter)) {\n dismissedWithKeyboardRef.current = true;\n }\n }),\n onMouseEnter: useEventCallback(event => {\n var _innerRef_current, _props_onMouseEnter;\n (_innerRef_current = innerRef.current) === null || _innerRef_current === void 0 ? void 0 : _innerRef_current.focus();\n (_props_onMouseEnter = props.onMouseEnter) === null || _props_onMouseEnter === void 0 ? void 0 : _props_onMouseEnter.call(props, event);\n }),\n onClick: useEventCallback(event => {\n var _props_onClick;\n if (!hasSubmenu && !persistOnClick) {\n setOpen(event, {\n open: false,\n keyboard: dismissedWithKeyboardRef.current,\n bubble: true,\n type: 'menuItemClick',\n event\n });\n dismissedWithKeyboardRef.current = false;\n }\n (_props_onClick = props.onClick) === null || _props_onClick === void 0 ? void 0 : _props_onClick.call(props, event);\n })\n })),\n icon: resolveShorthand(props.icon, {\n required: hasIcons\n }),\n checkmark: resolveShorthand(props.checkmark, {\n required: hasCheckmarks\n }),\n submenuIndicator: resolveShorthand(props.submenuIndicator, {\n required: hasSubmenu,\n defaultProps: {\n children: dir === 'ltr' ? /*#__PURE__*/React.createElement(ChevronRightIcon, null) : /*#__PURE__*/React.createElement(ChevronLeftIcon, null)\n }\n }),\n content: resolveShorthand(props.content, {\n required: !!props.children,\n defaultProps: {\n children: props.children\n }\n }),\n secondaryContent: resolveShorthand(props.secondaryContent)\n };\n useCharacterSearch(state, innerRef);\n return state;\n};\n//# sourceMappingURL=useMenuItem.js.map"],"names":["useMenuItem_unstable","ChevronRightIcon","bundleIcon","ChevronRightFilled","ChevronRightRegular","ChevronLeftIcon","ChevronLeftFilled","ChevronLeftRegular","props","ref","isSubmenuTrigger","useMenuTriggerContext_unstable","persistOnClickContext","useMenuContext_unstable","context","persistOnItemClick","as","disabled","hasSubmenu","persistOnClick","hasIcons","useMenuListContext_unstable","hasCheckmarks","setOpen","dir","useFluent","innerRef","React","useRef","dismissedWithKeyboardRef","state","components","root","icon","checkmark","submenuIndicator","content","secondaryContent","getNativeElementProps","useARIAButtonProps","role","disabledFocusable","useMergedRefs","onKeyDown","useEventCallback","event","_props_onKeyDown","call","isDefaultPrevented","key","Space","Enter","current","onMouseEnter","_innerRef_current","_props_onMouseEnter","focus","onClick","_props_onClick","open","keyboard","bubble","type","resolveShorthand","required","defaultProps","children","createElement","useCharacterSearch"],"mappings":";;;;+BAeaA;;aAAAA;;;6DAfU;gCACkE;qCACzC;oCACb;oCACY;4BAC4D;iCAC/D;6BACJ;2BACL;8BACN;AAC7B,MAAMC,mBAAmB,WAAW,GAAEC,IAAAA,sBAAU,EAACC,8BAAkB,EAAEC,+BAAmB;AACxF,MAAMC,kBAAkB,WAAW,GAAEH,IAAAA,sBAAU,EAACI,6BAAiB,EAAEC,8BAAkB;AAI9E,MAAMP,uBAAuB,CAACQ,OAAOC,MAAQ;IAClD,MAAMC,mBAAmBC,IAAAA,kDAA8B;IACvD,MAAMC,wBAAwBC,IAAAA,oCAAuB,EAACC,CAAAA,UAAWA,QAAQC,kBAAkB;IAC3F,MAAM,EACJC,IAAK,MAAK,EACVC,UAAW,KAAK,CAAA,EAChBC,YAAaR,iBAAgB,EAC7BS,gBAAiBP,sBAAqB,EACvC,GAAGJ;IACJ,MAAMY,WAAWC,IAAAA,4CAA2B,EAACP,CAAAA,UAAWA,QAAQM,QAAQ;IACxE,MAAME,gBAAgBD,IAAAA,4CAA2B,EAACP,CAAAA,UAAWA,QAAQQ,aAAa;IAClF,MAAMC,UAAUV,IAAAA,oCAAuB,EAACC,CAAAA,UAAWA,QAAQS,OAAO;IAClE,MAAM,EACJC,IAAG,EACJ,GAAGC,IAAAA,uCAAS;IACb,MAAMC,WAAWC,OAAMC,MAAM,CAAC,IAAI;IAClC,MAAMC,2BAA2BF,OAAMC,MAAM,CAAC,KAAK;IACnD,MAAME,QAAQ;QACZZ;QACAD;QACAE;QACAY,YAAY;YACVC,MAAM;YACNC,MAAM;YACNC,WAAW;YACXC,kBAAkB;YAClBC,SAAS;YACTC,kBAAkB;QACpB;QACAL,MAAMM,IAAAA,qCAAqB,EAACtB,IAAIuB,IAAAA,6BAAkB,EAACvB,IAAI;YACrDwB,MAAM;YACN,GAAGhC,KAAK;YACRS,UAAU,KAAK;YACfwB,mBAAmBxB;YACnBR,KAAKiC,IAAAA,6BAAa,EAACjC,KAAKiB;YACxBiB,WAAWC,IAAAA,gCAAgB,EAACC,CAAAA,QAAS;gBACnC,IAAIC;gBACHA,CAAAA,mBAAmBtC,MAAMmC,SAAS,AAAD,MAAO,IAAI,IAAIG,qBAAqB,KAAK,IAAI,KAAK,IAAIA,iBAAiBC,IAAI,CAACvC,OAAOqC,MAAM;gBAC3H,IAAI,CAACA,MAAMG,kBAAkB,MAAOH,CAAAA,MAAMI,GAAG,KAAKC,mBAAK,IAAIL,MAAMI,GAAG,KAAKE,mBAAK,AAAD,GAAI;oBAC/EtB,yBAAyBuB,OAAO,GAAG,IAAI;gBACzC,CAAC;YACH;YACAC,cAAcT,IAAAA,gCAAgB,EAACC,CAAAA,QAAS;gBACtC,IAAIS,mBAAmBC;gBACtBD,CAAAA,oBAAoB5B,SAAS0B,OAAO,AAAD,MAAO,IAAI,IAAIE,sBAAsB,KAAK,IAAI,KAAK,IAAIA,kBAAkBE,KAAK,EAAE;gBACnHD,CAAAA,sBAAsB/C,MAAM6C,YAAY,AAAD,MAAO,IAAI,IAAIE,wBAAwB,KAAK,IAAI,KAAK,IAAIA,oBAAoBR,IAAI,CAACvC,OAAOqC,MAAM;YACzI;YACAY,SAASb,IAAAA,gCAAgB,EAACC,CAAAA,QAAS;gBACjC,IAAIa;gBACJ,IAAI,CAACxC,cAAc,CAACC,gBAAgB;oBAClCI,QAAQsB,OAAO;wBACbc,MAAM,KAAK;wBACXC,UAAU/B,yBAAyBuB,OAAO;wBAC1CS,QAAQ,IAAI;wBACZC,MAAM;wBACNjB;oBACF;oBACAhB,yBAAyBuB,OAAO,GAAG,KAAK;gBAC1C,CAAC;gBACAM,CAAAA,iBAAiBlD,MAAMiD,OAAO,AAAD,MAAO,IAAI,IAAIC,mBAAmB,KAAK,IAAI,KAAK,IAAIA,eAAeX,IAAI,CAACvC,OAAOqC,MAAM;YACrH;QACF;QACAZ,MAAM8B,IAAAA,gCAAgB,EAACvD,MAAMyB,IAAI,EAAE;YACjC+B,UAAU5C;QACZ;QACAc,WAAW6B,IAAAA,gCAAgB,EAACvD,MAAM0B,SAAS,EAAE;YAC3C8B,UAAU1C;QACZ;QACAa,kBAAkB4B,IAAAA,gCAAgB,EAACvD,MAAM2B,gBAAgB,EAAE;YACzD6B,UAAU9C;YACV+C,cAAc;gBACZC,UAAU1C,QAAQ,QAAQ,WAAW,GAAEG,OAAMwC,aAAa,CAAClE,kBAAkB,IAAI,IAAI,WAAW,GAAE0B,OAAMwC,aAAa,CAAC9D,iBAAiB,IAAI,CAAC;YAC9I;QACF;QACA+B,SAAS2B,IAAAA,gCAAgB,EAACvD,MAAM4B,OAAO,EAAE;YACvC4B,UAAU,CAAC,CAACxD,MAAM0D,QAAQ;YAC1BD,cAAc;gBACZC,UAAU1D,MAAM0D,QAAQ;YAC1B;QACF;QACA7B,kBAAkB0B,IAAAA,gCAAgB,EAACvD,MAAM6B,gBAAgB;IAC3D;IACA+B,IAAAA,sCAAkB,EAACtC,OAAOJ;IAC1B,OAAOI;AACT,GACA,uCAAuC"}