@fluentui/react-menu 9.0.0-nightly.f81b28ceb3.1 → 9.0.0-rc.11

Sign up to get free protection for your applications and to get access to all the features.
Files changed (518) hide show
  1. package/CHANGELOG.json +1053 -27
  2. package/CHANGELOG.md +371 -137
  3. package/Spec.md +21 -16
  4. package/dist/{react-menu.d.ts → index.d.ts} +249 -170
  5. package/{lib → dist}/tsdoc-metadata.json +0 -0
  6. package/lib/Menu.js.map +1 -1
  7. package/lib/MenuDivider.js.map +1 -1
  8. package/lib/MenuGroup.js.map +1 -1
  9. package/lib/MenuGroupHeader.js.map +1 -1
  10. package/lib/MenuItem.js.map +1 -1
  11. package/lib/MenuItemCheckbox.js.map +1 -1
  12. package/lib/MenuItemRadio.js.map +1 -1
  13. package/lib/MenuList.js.map +1 -1
  14. package/lib/MenuPopover.js.map +1 -1
  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.js.map +1 -1
  21. package/lib/components/Menu/index.js.map +1 -1
  22. package/lib/components/Menu/renderMenu.js +1 -1
  23. package/lib/components/Menu/renderMenu.js.map +1 -1
  24. package/lib/components/Menu/useMenu.js +121 -130
  25. package/lib/components/Menu/useMenu.js.map +1 -1
  26. package/lib/components/Menu/useMenuContextValues.js +35 -33
  27. package/lib/components/Menu/useMenuContextValues.js.map +1 -1
  28. package/lib/components/MenuDivider/MenuDivider.js +8 -8
  29. package/lib/components/MenuDivider/MenuDivider.js.map +1 -1
  30. package/lib/components/MenuDivider/MenuDivider.types.js.map +1 -1
  31. package/lib/components/MenuDivider/index.js.map +1 -1
  32. package/lib/components/MenuDivider/renderMenuDivider.js +7 -7
  33. package/lib/components/MenuDivider/renderMenuDivider.js.map +1 -1
  34. package/lib/components/MenuDivider/useMenuDivider.js +9 -7
  35. package/lib/components/MenuDivider/useMenuDivider.js.map +1 -1
  36. package/lib/components/MenuDivider/useMenuDividerStyles.js +9 -5
  37. package/lib/components/MenuDivider/useMenuDividerStyles.js.map +1 -1
  38. package/lib/components/MenuGroup/MenuGroup.js +10 -8
  39. package/lib/components/MenuGroup/MenuGroup.js.map +1 -1
  40. package/lib/components/MenuGroup/MenuGroup.types.js.map +1 -1
  41. package/lib/components/MenuGroup/index.js +1 -0
  42. package/lib/components/MenuGroup/index.js.map +1 -1
  43. package/lib/components/MenuGroup/renderMenuGroup.js +7 -7
  44. package/lib/components/MenuGroup/renderMenuGroup.js.map +1 -1
  45. package/lib/components/MenuGroup/useMenuGroup.js +10 -7
  46. package/lib/components/MenuGroup/useMenuGroup.js.map +1 -1
  47. package/lib/components/MenuGroup/useMenuGroupContextValues.js +8 -8
  48. package/lib/components/MenuGroup/useMenuGroupContextValues.js.map +1 -1
  49. package/lib/components/MenuGroup/useMenuGroupStyles.js +9 -0
  50. package/lib/components/MenuGroup/useMenuGroupStyles.js.map +1 -0
  51. package/lib/components/MenuGroupHeader/MenuGroupHeader.js +8 -8
  52. package/lib/components/MenuGroupHeader/MenuGroupHeader.js.map +1 -1
  53. package/lib/components/MenuGroupHeader/MenuGroupHeader.types.js.map +1 -1
  54. package/lib/components/MenuGroupHeader/index.js.map +1 -1
  55. package/lib/components/MenuGroupHeader/renderMenuGroupHeader.js +7 -7
  56. package/lib/components/MenuGroupHeader/renderMenuGroupHeader.js.map +1 -1
  57. package/lib/components/MenuGroupHeader/useMenuGroupHeader.js +13 -8
  58. package/lib/components/MenuGroupHeader/useMenuGroupHeader.js.map +1 -1
  59. package/lib/components/MenuGroupHeader/useMenuGroupHeaderStyles.js +9 -5
  60. package/lib/components/MenuGroupHeader/useMenuGroupHeaderStyles.js.map +1 -1
  61. package/lib/components/MenuItem/MenuItem.js +8 -10
  62. package/lib/components/MenuItem/MenuItem.js.map +1 -1
  63. package/lib/components/MenuItem/MenuItem.types.js.map +1 -1
  64. package/lib/components/MenuItem/index.js.map +1 -1
  65. package/lib/components/MenuItem/renderMenuItem.js +12 -8
  66. package/lib/components/MenuItem/renderMenuItem.js.map +1 -1
  67. package/lib/components/MenuItem/useCharacterSearch.js +7 -7
  68. package/lib/components/MenuItem/useCharacterSearch.js.map +1 -1
  69. package/lib/components/MenuItem/useMenuItem.js +37 -44
  70. package/lib/components/MenuItem/useMenuItem.js.map +1 -1
  71. package/lib/components/MenuItem/useMenuItemStyles.js +56 -17
  72. package/lib/components/MenuItem/useMenuItemStyles.js.map +1 -1
  73. package/lib/components/MenuItemCheckbox/MenuItemCheckbox.js +8 -8
  74. package/lib/components/MenuItemCheckbox/MenuItemCheckbox.js.map +1 -1
  75. package/lib/components/MenuItemCheckbox/MenuItemCheckbox.types.js.map +1 -1
  76. package/lib/components/MenuItemCheckbox/index.js +1 -0
  77. package/lib/components/MenuItemCheckbox/index.js.map +1 -1
  78. package/lib/components/MenuItemCheckbox/renderMenuItemCheckbox.js +11 -8
  79. package/lib/components/MenuItemCheckbox/renderMenuItemCheckbox.js.map +1 -1
  80. package/lib/components/MenuItemCheckbox/useMenuItemCheckbox.js +14 -15
  81. package/lib/components/MenuItemCheckbox/useMenuItemCheckbox.js.map +1 -1
  82. package/lib/components/MenuItemCheckbox/useMenuItemCheckboxStyles.js +31 -5
  83. package/lib/components/MenuItemCheckbox/useMenuItemCheckboxStyles.js.map +1 -1
  84. package/lib/components/MenuItemRadio/MenuItemRadio.js +8 -8
  85. package/lib/components/MenuItemRadio/MenuItemRadio.js.map +1 -1
  86. package/lib/components/MenuItemRadio/MenuItemRadio.types.js.map +1 -1
  87. package/lib/components/MenuItemRadio/index.js +1 -0
  88. package/lib/components/MenuItemRadio/index.js.map +1 -1
  89. package/lib/components/MenuItemRadio/renderMenuItemRadio.js +11 -8
  90. package/lib/components/MenuItemRadio/renderMenuItemRadio.js.map +1 -1
  91. package/lib/components/MenuItemRadio/useMenuItemRadio.js +14 -14
  92. package/lib/components/MenuItemRadio/useMenuItemRadio.js.map +1 -1
  93. package/lib/components/MenuItemRadio/useMenuItemRadioStyles.js +31 -5
  94. package/lib/components/MenuItemRadio/useMenuItemRadioStyles.js.map +1 -1
  95. package/lib/components/MenuList/MenuList.js +10 -10
  96. package/lib/components/MenuList/MenuList.js.map +1 -1
  97. package/lib/components/MenuList/MenuList.types.js.map +1 -1
  98. package/lib/components/MenuList/index.js.map +1 -1
  99. package/lib/components/MenuList/renderMenuList.js +7 -7
  100. package/lib/components/MenuList/renderMenuList.js.map +1 -1
  101. package/lib/components/MenuList/useMenuList.js +71 -88
  102. package/lib/components/MenuList/useMenuList.js.map +1 -1
  103. package/lib/components/MenuList/useMenuListContextValues.js +19 -17
  104. package/lib/components/MenuList/useMenuListContextValues.js.map +1 -1
  105. package/lib/components/MenuList/useMenuListStyles.js +11 -7
  106. package/lib/components/MenuList/useMenuListStyles.js.map +1 -1
  107. package/lib/components/MenuPopover/MenuPopover.js +7 -7
  108. package/lib/components/MenuPopover/MenuPopover.js.map +1 -1
  109. package/lib/components/MenuPopover/MenuPopover.types.js.map +1 -1
  110. package/lib/components/MenuPopover/index.js.map +1 -1
  111. package/lib/components/MenuPopover/renderMenuPopover.js +9 -7
  112. package/lib/components/MenuPopover/renderMenuPopover.js.map +1 -1
  113. package/lib/components/MenuPopover/useMenuPopover.js +35 -41
  114. package/lib/components/MenuPopover/useMenuPopover.js.map +1 -1
  115. package/lib/components/MenuPopover/useMenuPopoverStyles.js +15 -8
  116. package/lib/components/MenuPopover/useMenuPopoverStyles.js.map +1 -1
  117. package/lib/components/MenuSplitGroup/MenuSplitGroup.js +15 -0
  118. package/lib/components/MenuSplitGroup/MenuSplitGroup.js.map +1 -0
  119. package/lib/components/MenuSplitGroup/MenuSplitGroup.types.js +2 -0
  120. package/lib/components/MenuSplitGroup/MenuSplitGroup.types.js.map +1 -0
  121. package/lib/components/MenuSplitGroup/index.js +6 -0
  122. package/lib/components/MenuSplitGroup/index.js.map +1 -0
  123. package/lib/components/MenuSplitGroup/renderMenuSplitGroup.js +15 -0
  124. package/lib/components/MenuSplitGroup/renderMenuSplitGroup.js.map +1 -0
  125. package/lib/components/MenuSplitGroup/useMenuSplitGroup.js +67 -0
  126. package/lib/components/MenuSplitGroup/useMenuSplitGroup.js.map +1 -0
  127. package/lib/components/MenuSplitGroup/useMenuSplitGroupStyles.js +37 -0
  128. package/lib/components/MenuSplitGroup/useMenuSplitGroupStyles.js.map +1 -0
  129. package/lib/components/MenuTrigger/MenuTrigger.js +6 -5
  130. package/lib/components/MenuTrigger/MenuTrigger.js.map +1 -1
  131. package/lib/components/MenuTrigger/MenuTrigger.types.js.map +1 -1
  132. package/lib/components/MenuTrigger/index.js.map +1 -1
  133. package/lib/components/MenuTrigger/renderMenuTrigger.js +2 -2
  134. package/lib/components/MenuTrigger/renderMenuTrigger.js.map +1 -1
  135. package/lib/components/MenuTrigger/useMenuTrigger.js +167 -5
  136. package/lib/components/MenuTrigger/useMenuTrigger.js.map +1 -1
  137. package/lib/components/index.js.map +1 -1
  138. package/lib/contexts/menuContext.js +5 -11
  139. package/lib/contexts/menuContext.js.map +1 -1
  140. package/lib/contexts/menuGroupContext.js +3 -5
  141. package/lib/contexts/menuGroupContext.js.map +1 -1
  142. package/lib/contexts/menuListContext.js +7 -17
  143. package/lib/contexts/menuListContext.js.map +1 -1
  144. package/lib/contexts/menuTriggerContext.js +4 -6
  145. package/lib/contexts/menuTriggerContext.js.map +1 -1
  146. package/lib/index.js +16 -15
  147. package/lib/index.js.map +1 -1
  148. package/lib/selectable/index.js.map +1 -1
  149. package/lib/selectable/types.js.map +1 -1
  150. package/lib/selectable/useCheckmarkStyles.js +4 -4
  151. package/lib/selectable/useCheckmarkStyles.js.map +1 -1
  152. package/lib/utils/index.js.map +1 -1
  153. package/lib/utils/useIsSubmenu.js +3 -5
  154. package/lib/utils/useIsSubmenu.js.map +1 -1
  155. package/lib/utils/useOnMenuEnter.js +16 -14
  156. package/lib/utils/useOnMenuEnter.js.map +1 -1
  157. package/lib-commonjs/Menu.js +1 -1
  158. package/lib-commonjs/Menu.js.map +1 -1
  159. package/lib-commonjs/MenuDivider.js +1 -1
  160. package/lib-commonjs/MenuDivider.js.map +1 -1
  161. package/lib-commonjs/MenuGroup.js +1 -1
  162. package/lib-commonjs/MenuGroup.js.map +1 -1
  163. package/lib-commonjs/MenuGroupHeader.js +1 -1
  164. package/lib-commonjs/MenuGroupHeader.js.map +1 -1
  165. package/lib-commonjs/MenuItem.js +1 -1
  166. package/lib-commonjs/MenuItem.js.map +1 -1
  167. package/lib-commonjs/MenuItemCheckbox.js +1 -1
  168. package/lib-commonjs/MenuItemCheckbox.js.map +1 -1
  169. package/lib-commonjs/MenuItemRadio.js +1 -1
  170. package/lib-commonjs/MenuItemRadio.js.map +1 -1
  171. package/lib-commonjs/MenuList.js +1 -1
  172. package/lib-commonjs/MenuList.js.map +1 -1
  173. package/lib-commonjs/MenuPopover.js +1 -1
  174. package/lib-commonjs/MenuPopover.js.map +1 -1
  175. package/lib-commonjs/MenuSplitGroup.js +10 -0
  176. package/lib-commonjs/MenuSplitGroup.js.map +1 -0
  177. package/lib-commonjs/MenuTrigger.js +1 -1
  178. package/lib-commonjs/MenuTrigger.js.map +1 -1
  179. package/lib-commonjs/components/Menu/Menu.js +7 -7
  180. package/lib-commonjs/components/Menu/Menu.js.map +1 -1
  181. package/lib-commonjs/components/Menu/Menu.types.js.map +1 -1
  182. package/lib-commonjs/components/Menu/index.js +1 -1
  183. package/lib-commonjs/components/Menu/index.js.map +1 -1
  184. package/lib-commonjs/components/Menu/renderMenu.js +5 -5
  185. package/lib-commonjs/components/Menu/renderMenu.js.map +1 -1
  186. package/lib-commonjs/components/Menu/useMenu.js +131 -142
  187. package/lib-commonjs/components/Menu/useMenu.js.map +1 -1
  188. package/lib-commonjs/components/Menu/useMenuContextValues.js +37 -35
  189. package/lib-commonjs/components/Menu/useMenuContextValues.js.map +1 -1
  190. package/lib-commonjs/components/MenuDivider/MenuDivider.js +9 -9
  191. package/lib-commonjs/components/MenuDivider/MenuDivider.js.map +1 -1
  192. package/lib-commonjs/components/MenuDivider/MenuDivider.types.js.map +1 -1
  193. package/lib-commonjs/components/MenuDivider/index.js +1 -1
  194. package/lib-commonjs/components/MenuDivider/index.js.map +1 -1
  195. package/lib-commonjs/components/MenuDivider/renderMenuDivider.js +11 -12
  196. package/lib-commonjs/components/MenuDivider/renderMenuDivider.js.map +1 -1
  197. package/lib-commonjs/components/MenuDivider/useMenuDivider.js +12 -11
  198. package/lib-commonjs/components/MenuDivider/useMenuDivider.js.map +1 -1
  199. package/lib-commonjs/components/MenuDivider/useMenuDividerStyles.js +13 -7
  200. package/lib-commonjs/components/MenuDivider/useMenuDividerStyles.js.map +1 -1
  201. package/lib-commonjs/components/MenuGroup/MenuGroup.js +12 -9
  202. package/lib-commonjs/components/MenuGroup/MenuGroup.js.map +1 -1
  203. package/lib-commonjs/components/MenuGroup/MenuGroup.types.js.map +1 -1
  204. package/lib-commonjs/components/MenuGroup/index.js +3 -1
  205. package/lib-commonjs/components/MenuGroup/index.js.map +1 -1
  206. package/lib-commonjs/components/MenuGroup/renderMenuGroup.js +12 -13
  207. package/lib-commonjs/components/MenuGroup/renderMenuGroup.js.map +1 -1
  208. package/lib-commonjs/components/MenuGroup/useMenuGroup.js +13 -11
  209. package/lib-commonjs/components/MenuGroup/useMenuGroup.js.map +1 -1
  210. package/lib-commonjs/components/MenuGroup/useMenuGroupContextValues.js +11 -11
  211. package/lib-commonjs/components/MenuGroup/useMenuGroupContextValues.js.map +1 -1
  212. package/lib-commonjs/components/MenuGroup/useMenuGroupStyles.js +20 -0
  213. package/lib-commonjs/components/MenuGroup/useMenuGroupStyles.js.map +1 -0
  214. package/lib-commonjs/components/MenuGroupHeader/MenuGroupHeader.js +9 -9
  215. package/lib-commonjs/components/MenuGroupHeader/MenuGroupHeader.js.map +1 -1
  216. package/lib-commonjs/components/MenuGroupHeader/MenuGroupHeader.types.js.map +1 -1
  217. package/lib-commonjs/components/MenuGroupHeader/index.js +1 -1
  218. package/lib-commonjs/components/MenuGroupHeader/index.js.map +1 -1
  219. package/lib-commonjs/components/MenuGroupHeader/renderMenuGroupHeader.js +11 -12
  220. package/lib-commonjs/components/MenuGroupHeader/renderMenuGroupHeader.js.map +1 -1
  221. package/lib-commonjs/components/MenuGroupHeader/useMenuGroupHeader.js +16 -12
  222. package/lib-commonjs/components/MenuGroupHeader/useMenuGroupHeader.js.map +1 -1
  223. package/lib-commonjs/components/MenuGroupHeader/useMenuGroupHeaderStyles.js +13 -7
  224. package/lib-commonjs/components/MenuGroupHeader/useMenuGroupHeaderStyles.js.map +1 -1
  225. package/lib-commonjs/components/MenuItem/MenuItem.js +9 -12
  226. package/lib-commonjs/components/MenuItem/MenuItem.js.map +1 -1
  227. package/lib-commonjs/components/MenuItem/MenuItem.types.js.map +1 -1
  228. package/lib-commonjs/components/MenuItem/index.js +1 -1
  229. package/lib-commonjs/components/MenuItem/index.js.map +1 -1
  230. package/lib-commonjs/components/MenuItem/renderMenuItem.js +16 -14
  231. package/lib-commonjs/components/MenuItem/renderMenuItem.js.map +1 -1
  232. package/lib-commonjs/components/MenuItem/useCharacterSearch.js +7 -7
  233. package/lib-commonjs/components/MenuItem/useCharacterSearch.js.map +1 -1
  234. package/lib-commonjs/components/MenuItem/useMenuItem.js +45 -53
  235. package/lib-commonjs/components/MenuItem/useMenuItem.js.map +1 -1
  236. package/lib-commonjs/components/MenuItem/useMenuItemStyles.js +63 -20
  237. package/lib-commonjs/components/MenuItem/useMenuItemStyles.js.map +1 -1
  238. package/lib-commonjs/components/MenuItemCheckbox/MenuItemCheckbox.js +9 -9
  239. package/lib-commonjs/components/MenuItemCheckbox/MenuItemCheckbox.js.map +1 -1
  240. package/lib-commonjs/components/MenuItemCheckbox/MenuItemCheckbox.types.js.map +1 -1
  241. package/lib-commonjs/components/MenuItemCheckbox/index.js +3 -1
  242. package/lib-commonjs/components/MenuItemCheckbox/index.js.map +1 -1
  243. package/lib-commonjs/components/MenuItemCheckbox/renderMenuItemCheckbox.js +15 -14
  244. package/lib-commonjs/components/MenuItemCheckbox/renderMenuItemCheckbox.js.map +1 -1
  245. package/lib-commonjs/components/MenuItemCheckbox/useMenuItemCheckbox.js +19 -21
  246. package/lib-commonjs/components/MenuItemCheckbox/useMenuItemCheckbox.js.map +1 -1
  247. package/lib-commonjs/components/MenuItemCheckbox/useMenuItemCheckboxStyles.js +35 -7
  248. package/lib-commonjs/components/MenuItemCheckbox/useMenuItemCheckboxStyles.js.map +1 -1
  249. package/lib-commonjs/components/MenuItemRadio/MenuItemRadio.js +9 -9
  250. package/lib-commonjs/components/MenuItemRadio/MenuItemRadio.js.map +1 -1
  251. package/lib-commonjs/components/MenuItemRadio/MenuItemRadio.types.js.map +1 -1
  252. package/lib-commonjs/components/MenuItemRadio/index.js +3 -1
  253. package/lib-commonjs/components/MenuItemRadio/index.js.map +1 -1
  254. package/lib-commonjs/components/MenuItemRadio/renderMenuItemRadio.js +15 -14
  255. package/lib-commonjs/components/MenuItemRadio/renderMenuItemRadio.js.map +1 -1
  256. package/lib-commonjs/components/MenuItemRadio/useMenuItemRadio.js +19 -20
  257. package/lib-commonjs/components/MenuItemRadio/useMenuItemRadio.js.map +1 -1
  258. package/lib-commonjs/components/MenuItemRadio/useMenuItemRadioStyles.js +35 -7
  259. package/lib-commonjs/components/MenuItemRadio/useMenuItemRadioStyles.js.map +1 -1
  260. package/lib-commonjs/components/MenuList/MenuList.js +11 -11
  261. package/lib-commonjs/components/MenuList/MenuList.js.map +1 -1
  262. package/lib-commonjs/components/MenuList/MenuList.types.js.map +1 -1
  263. package/lib-commonjs/components/MenuList/index.js +1 -1
  264. package/lib-commonjs/components/MenuList/index.js.map +1 -1
  265. package/lib-commonjs/components/MenuList/renderMenuList.js +12 -13
  266. package/lib-commonjs/components/MenuList/renderMenuList.js.map +1 -1
  267. package/lib-commonjs/components/MenuList/useMenuList.js +78 -96
  268. package/lib-commonjs/components/MenuList/useMenuList.js.map +1 -1
  269. package/lib-commonjs/components/MenuList/useMenuListContextValues.js +21 -19
  270. package/lib-commonjs/components/MenuList/useMenuListContextValues.js.map +1 -1
  271. package/lib-commonjs/components/MenuList/useMenuListStyles.js +14 -9
  272. package/lib-commonjs/components/MenuList/useMenuListStyles.js.map +1 -1
  273. package/lib-commonjs/components/MenuPopover/MenuPopover.js +8 -8
  274. package/lib-commonjs/components/MenuPopover/MenuPopover.js.map +1 -1
  275. package/lib-commonjs/components/MenuPopover/MenuPopover.types.js.map +1 -1
  276. package/lib-commonjs/components/MenuPopover/index.js +1 -1
  277. package/lib-commonjs/components/MenuPopover/index.js.map +1 -1
  278. package/lib-commonjs/components/MenuPopover/renderMenuPopover.js +14 -13
  279. package/lib-commonjs/components/MenuPopover/renderMenuPopover.js.map +1 -1
  280. package/lib-commonjs/components/MenuPopover/useMenuPopover.js +43 -50
  281. package/lib-commonjs/components/MenuPopover/useMenuPopover.js.map +1 -1
  282. package/lib-commonjs/components/MenuPopover/useMenuPopoverStyles.js +19 -10
  283. package/lib-commonjs/components/MenuPopover/useMenuPopoverStyles.js.map +1 -1
  284. package/lib-commonjs/components/MenuSplitGroup/MenuSplitGroup.js +26 -0
  285. package/lib-commonjs/components/MenuSplitGroup/MenuSplitGroup.js.map +1 -0
  286. package/lib-commonjs/components/MenuSplitGroup/MenuSplitGroup.types.js +6 -0
  287. package/lib-commonjs/components/MenuSplitGroup/MenuSplitGroup.types.js.map +1 -0
  288. package/lib-commonjs/components/MenuSplitGroup/index.js +18 -0
  289. package/lib-commonjs/components/MenuSplitGroup/index.js.map +1 -0
  290. package/lib-commonjs/components/MenuSplitGroup/renderMenuSplitGroup.js +26 -0
  291. package/lib-commonjs/components/MenuSplitGroup/renderMenuSplitGroup.js.map +1 -0
  292. package/lib-commonjs/components/MenuSplitGroup/useMenuSplitGroup.js +81 -0
  293. package/lib-commonjs/components/MenuSplitGroup/useMenuSplitGroup.js.map +1 -0
  294. package/lib-commonjs/components/MenuSplitGroup/useMenuSplitGroupStyles.js +49 -0
  295. package/lib-commonjs/components/MenuSplitGroup/useMenuSplitGroupStyles.js.map +1 -0
  296. package/lib-commonjs/components/MenuTrigger/MenuTrigger.js +6 -5
  297. package/lib-commonjs/components/MenuTrigger/MenuTrigger.js.map +1 -1
  298. package/lib-commonjs/components/MenuTrigger/MenuTrigger.types.js.map +1 -1
  299. package/lib-commonjs/components/MenuTrigger/index.js +1 -1
  300. package/lib-commonjs/components/MenuTrigger/index.js.map +1 -1
  301. package/lib-commonjs/components/MenuTrigger/renderMenuTrigger.js +6 -6
  302. package/lib-commonjs/components/MenuTrigger/renderMenuTrigger.js.map +1 -1
  303. package/lib-commonjs/components/MenuTrigger/useMenuTrigger.js +175 -7
  304. package/lib-commonjs/components/MenuTrigger/useMenuTrigger.js.map +1 -1
  305. package/lib-commonjs/components/index.js +1 -1
  306. package/lib-commonjs/components/index.js.map +1 -1
  307. package/lib-commonjs/contexts/menuContext.js +6 -12
  308. package/lib-commonjs/contexts/menuContext.js.map +1 -1
  309. package/lib-commonjs/contexts/menuGroupContext.js +5 -7
  310. package/lib-commonjs/contexts/menuGroupContext.js.map +1 -1
  311. package/lib-commonjs/contexts/menuListContext.js +8 -18
  312. package/lib-commonjs/contexts/menuListContext.js.map +1 -1
  313. package/lib-commonjs/contexts/menuTriggerContext.js +6 -8
  314. package/lib-commonjs/contexts/menuTriggerContext.js.map +1 -1
  315. package/lib-commonjs/index.js +412 -16
  316. package/lib-commonjs/index.js.map +1 -1
  317. package/lib-commonjs/selectable/index.js +1 -1
  318. package/lib-commonjs/selectable/index.js.map +1 -1
  319. package/lib-commonjs/selectable/types.js.map +1 -1
  320. package/lib-commonjs/selectable/useCheckmarkStyles.js +7 -7
  321. package/lib-commonjs/selectable/useCheckmarkStyles.js.map +1 -1
  322. package/lib-commonjs/utils/index.js +1 -1
  323. package/lib-commonjs/utils/index.js.map +1 -1
  324. package/lib-commonjs/utils/useIsSubmenu.js +5 -7
  325. package/lib-commonjs/utils/useIsSubmenu.js.map +1 -1
  326. package/lib-commonjs/utils/useOnMenuEnter.js +18 -16
  327. package/lib-commonjs/utils/useOnMenuEnter.js.map +1 -1
  328. package/package.json +25 -29
  329. package/lib/Menu.d.ts +0 -1
  330. package/lib/MenuDivider.d.ts +0 -1
  331. package/lib/MenuGroup.d.ts +0 -1
  332. package/lib/MenuGroupHeader.d.ts +0 -1
  333. package/lib/MenuItem.d.ts +0 -1
  334. package/lib/MenuItemCheckbox.d.ts +0 -1
  335. package/lib/MenuItemRadio.d.ts +0 -1
  336. package/lib/MenuList.d.ts +0 -1
  337. package/lib/MenuPopover.d.ts +0 -1
  338. package/lib/MenuTrigger.d.ts +0 -1
  339. package/lib/common/isConformant.d.ts +0 -4
  340. package/lib/common/isConformant.js +0 -12
  341. package/lib/common/isConformant.js.map +0 -1
  342. package/lib/common/mockUseMenuContext.d.ts +0 -7
  343. package/lib/common/mockUseMenuContext.js +0 -36
  344. package/lib/common/mockUseMenuContext.js.map +0 -1
  345. package/lib/components/Menu/Menu.d.ts +0 -6
  346. package/lib/components/Menu/Menu.types.d.ts +0 -112
  347. package/lib/components/Menu/index.d.ts +0 -5
  348. package/lib/components/Menu/renderMenu.d.ts +0 -5
  349. package/lib/components/Menu/useMenu.d.ts +0 -10
  350. package/lib/components/Menu/useMenuContextValues.d.ts +0 -2
  351. package/lib/components/MenuDivider/MenuDivider.d.ts +0 -6
  352. package/lib/components/MenuDivider/MenuDivider.types.d.ts +0 -6
  353. package/lib/components/MenuDivider/index.d.ts +0 -5
  354. package/lib/components/MenuDivider/renderMenuDivider.d.ts +0 -6
  355. package/lib/components/MenuDivider/useMenuDivider.d.ts +0 -6
  356. package/lib/components/MenuDivider/useMenuDividerStyles.d.ts +0 -2
  357. package/lib/components/MenuGroup/MenuGroup.d.ts +0 -6
  358. package/lib/components/MenuGroup/MenuGroup.types.d.ts +0 -15
  359. package/lib/components/MenuGroup/index.d.ts +0 -5
  360. package/lib/components/MenuGroup/renderMenuGroup.d.ts +0 -6
  361. package/lib/components/MenuGroup/useMenuGroup.d.ts +0 -6
  362. package/lib/components/MenuGroup/useMenuGroupContextValues.d.ts +0 -2
  363. package/lib/components/MenuGroupHeader/MenuGroupHeader.d.ts +0 -6
  364. package/lib/components/MenuGroupHeader/MenuGroupHeader.types.d.ts +0 -6
  365. package/lib/components/MenuGroupHeader/index.d.ts +0 -5
  366. package/lib/components/MenuGroupHeader/renderMenuGroupHeader.d.ts +0 -6
  367. package/lib/components/MenuGroupHeader/useMenuGroupHeader.d.ts +0 -6
  368. package/lib/components/MenuGroupHeader/useMenuGroupHeaderStyles.d.ts +0 -2
  369. package/lib/components/MenuItem/MenuItem.d.ts +0 -6
  370. package/lib/components/MenuItem/MenuItem.types.d.ts +0 -43
  371. package/lib/components/MenuItem/index.d.ts +0 -5
  372. package/lib/components/MenuItem/renderMenuItem.d.ts +0 -5
  373. package/lib/components/MenuItem/useCharacterSearch.d.ts +0 -3
  374. package/lib/components/MenuItem/useMenuItem.d.ts +0 -10
  375. package/lib/components/MenuItem/useMenuItemStyles.d.ts +0 -3
  376. package/lib/components/MenuItemCheckbox/MenuItemCheckbox.d.ts +0 -6
  377. package/lib/components/MenuItemCheckbox/MenuItemCheckbox.types.d.ts +0 -4
  378. package/lib/components/MenuItemCheckbox/index.d.ts +0 -4
  379. package/lib/components/MenuItemCheckbox/renderMenuItemCheckbox.d.ts +0 -3
  380. package/lib/components/MenuItemCheckbox/useMenuItemCheckbox.d.ts +0 -4
  381. package/lib/components/MenuItemCheckbox/useMenuItemCheckboxStyles.d.ts +0 -2
  382. package/lib/components/MenuItemRadio/MenuItemRadio.d.ts +0 -6
  383. package/lib/components/MenuItemRadio/MenuItemRadio.types.d.ts +0 -4
  384. package/lib/components/MenuItemRadio/index.d.ts +0 -4
  385. package/lib/components/MenuItemRadio/renderMenuItemRadio.d.ts +0 -6
  386. package/lib/components/MenuItemRadio/useMenuItemRadio.d.ts +0 -6
  387. package/lib/components/MenuItemRadio/useMenuItemRadioStyles.d.ts +0 -2
  388. package/lib/components/MenuList/MenuList.d.ts +0 -6
  389. package/lib/components/MenuList/MenuList.types.d.ts +0 -53
  390. package/lib/components/MenuList/index.d.ts +0 -6
  391. package/lib/components/MenuList/renderMenuList.d.ts +0 -5
  392. package/lib/components/MenuList/useMenuList.d.ts +0 -6
  393. package/lib/components/MenuList/useMenuListContextValues.d.ts +0 -2
  394. package/lib/components/MenuList/useMenuListStyles.d.ts +0 -5
  395. package/lib/components/MenuPopover/MenuPopover.d.ts +0 -6
  396. package/lib/components/MenuPopover/MenuPopover.types.d.ts +0 -18
  397. package/lib/components/MenuPopover/index.d.ts +0 -5
  398. package/lib/components/MenuPopover/renderMenuPopover.d.ts +0 -5
  399. package/lib/components/MenuPopover/useMenuPopover.d.ts +0 -12
  400. package/lib/components/MenuPopover/useMenuPopoverStyles.d.ts +0 -5
  401. package/lib/components/MenuTrigger/MenuTrigger.d.ts +0 -7
  402. package/lib/components/MenuTrigger/MenuTrigger.types.d.ts +0 -16
  403. package/lib/components/MenuTrigger/index.d.ts +0 -4
  404. package/lib/components/MenuTrigger/renderMenuTrigger.d.ts +0 -7
  405. package/lib/components/MenuTrigger/useMenuTrigger.d.ts +0 -8
  406. package/lib/components/MenuTrigger/useTriggerElement.d.ts +0 -5
  407. package/lib/components/MenuTrigger/useTriggerElement.js +0 -179
  408. package/lib/components/MenuTrigger/useTriggerElement.js.map +0 -1
  409. package/lib/components/index.d.ts +0 -2
  410. package/lib/contexts/menuContext.d.ts +0 -16
  411. package/lib/contexts/menuGroupContext.d.ts +0 -13
  412. package/lib/contexts/menuListContext.d.ts +0 -15
  413. package/lib/contexts/menuTriggerContext.d.ts +0 -3
  414. package/lib/index.d.ts +0 -15
  415. package/lib/selectable/index.d.ts +0 -2
  416. package/lib/selectable/types.d.ts +0 -34
  417. package/lib/selectable/useCheckmarkStyles.d.ts +0 -8
  418. package/lib/utils/DefaultIcons.d.ts +0 -7
  419. package/lib/utils/DefaultIcons.js +0 -88
  420. package/lib/utils/DefaultIcons.js.map +0 -1
  421. package/lib/utils/index.d.ts +0 -1
  422. package/lib/utils/useIsSubmenu.d.ts +0 -9
  423. package/lib/utils/useOnMenuEnter.d.ts +0 -23
  424. package/lib-commonjs/Menu.d.ts +0 -1
  425. package/lib-commonjs/MenuDivider.d.ts +0 -1
  426. package/lib-commonjs/MenuGroup.d.ts +0 -1
  427. package/lib-commonjs/MenuGroupHeader.d.ts +0 -1
  428. package/lib-commonjs/MenuItem.d.ts +0 -1
  429. package/lib-commonjs/MenuItemCheckbox.d.ts +0 -1
  430. package/lib-commonjs/MenuItemRadio.d.ts +0 -1
  431. package/lib-commonjs/MenuList.d.ts +0 -1
  432. package/lib-commonjs/MenuPopover.d.ts +0 -1
  433. package/lib-commonjs/MenuTrigger.d.ts +0 -1
  434. package/lib-commonjs/common/isConformant.d.ts +0 -4
  435. package/lib-commonjs/common/isConformant.js +0 -23
  436. package/lib-commonjs/common/isConformant.js.map +0 -1
  437. package/lib-commonjs/common/mockUseMenuContext.d.ts +0 -7
  438. package/lib-commonjs/common/mockUseMenuContext.js +0 -47
  439. package/lib-commonjs/common/mockUseMenuContext.js.map +0 -1
  440. package/lib-commonjs/components/Menu/Menu.d.ts +0 -6
  441. package/lib-commonjs/components/Menu/Menu.types.d.ts +0 -112
  442. package/lib-commonjs/components/Menu/index.d.ts +0 -5
  443. package/lib-commonjs/components/Menu/renderMenu.d.ts +0 -5
  444. package/lib-commonjs/components/Menu/useMenu.d.ts +0 -10
  445. package/lib-commonjs/components/Menu/useMenuContextValues.d.ts +0 -2
  446. package/lib-commonjs/components/MenuDivider/MenuDivider.d.ts +0 -6
  447. package/lib-commonjs/components/MenuDivider/MenuDivider.types.d.ts +0 -6
  448. package/lib-commonjs/components/MenuDivider/index.d.ts +0 -5
  449. package/lib-commonjs/components/MenuDivider/renderMenuDivider.d.ts +0 -6
  450. package/lib-commonjs/components/MenuDivider/useMenuDivider.d.ts +0 -6
  451. package/lib-commonjs/components/MenuDivider/useMenuDividerStyles.d.ts +0 -2
  452. package/lib-commonjs/components/MenuGroup/MenuGroup.d.ts +0 -6
  453. package/lib-commonjs/components/MenuGroup/MenuGroup.types.d.ts +0 -15
  454. package/lib-commonjs/components/MenuGroup/index.d.ts +0 -5
  455. package/lib-commonjs/components/MenuGroup/renderMenuGroup.d.ts +0 -6
  456. package/lib-commonjs/components/MenuGroup/useMenuGroup.d.ts +0 -6
  457. package/lib-commonjs/components/MenuGroup/useMenuGroupContextValues.d.ts +0 -2
  458. package/lib-commonjs/components/MenuGroupHeader/MenuGroupHeader.d.ts +0 -6
  459. package/lib-commonjs/components/MenuGroupHeader/MenuGroupHeader.types.d.ts +0 -6
  460. package/lib-commonjs/components/MenuGroupHeader/index.d.ts +0 -5
  461. package/lib-commonjs/components/MenuGroupHeader/renderMenuGroupHeader.d.ts +0 -6
  462. package/lib-commonjs/components/MenuGroupHeader/useMenuGroupHeader.d.ts +0 -6
  463. package/lib-commonjs/components/MenuGroupHeader/useMenuGroupHeaderStyles.d.ts +0 -2
  464. package/lib-commonjs/components/MenuItem/MenuItem.d.ts +0 -6
  465. package/lib-commonjs/components/MenuItem/MenuItem.types.d.ts +0 -43
  466. package/lib-commonjs/components/MenuItem/index.d.ts +0 -5
  467. package/lib-commonjs/components/MenuItem/renderMenuItem.d.ts +0 -5
  468. package/lib-commonjs/components/MenuItem/useCharacterSearch.d.ts +0 -3
  469. package/lib-commonjs/components/MenuItem/useMenuItem.d.ts +0 -10
  470. package/lib-commonjs/components/MenuItem/useMenuItemStyles.d.ts +0 -3
  471. package/lib-commonjs/components/MenuItemCheckbox/MenuItemCheckbox.d.ts +0 -6
  472. package/lib-commonjs/components/MenuItemCheckbox/MenuItemCheckbox.types.d.ts +0 -4
  473. package/lib-commonjs/components/MenuItemCheckbox/index.d.ts +0 -4
  474. package/lib-commonjs/components/MenuItemCheckbox/renderMenuItemCheckbox.d.ts +0 -3
  475. package/lib-commonjs/components/MenuItemCheckbox/useMenuItemCheckbox.d.ts +0 -4
  476. package/lib-commonjs/components/MenuItemCheckbox/useMenuItemCheckboxStyles.d.ts +0 -2
  477. package/lib-commonjs/components/MenuItemRadio/MenuItemRadio.d.ts +0 -6
  478. package/lib-commonjs/components/MenuItemRadio/MenuItemRadio.types.d.ts +0 -4
  479. package/lib-commonjs/components/MenuItemRadio/index.d.ts +0 -4
  480. package/lib-commonjs/components/MenuItemRadio/renderMenuItemRadio.d.ts +0 -6
  481. package/lib-commonjs/components/MenuItemRadio/useMenuItemRadio.d.ts +0 -6
  482. package/lib-commonjs/components/MenuItemRadio/useMenuItemRadioStyles.d.ts +0 -2
  483. package/lib-commonjs/components/MenuList/MenuList.d.ts +0 -6
  484. package/lib-commonjs/components/MenuList/MenuList.types.d.ts +0 -53
  485. package/lib-commonjs/components/MenuList/index.d.ts +0 -6
  486. package/lib-commonjs/components/MenuList/renderMenuList.d.ts +0 -5
  487. package/lib-commonjs/components/MenuList/useMenuList.d.ts +0 -6
  488. package/lib-commonjs/components/MenuList/useMenuListContextValues.d.ts +0 -2
  489. package/lib-commonjs/components/MenuList/useMenuListStyles.d.ts +0 -5
  490. package/lib-commonjs/components/MenuPopover/MenuPopover.d.ts +0 -6
  491. package/lib-commonjs/components/MenuPopover/MenuPopover.types.d.ts +0 -18
  492. package/lib-commonjs/components/MenuPopover/index.d.ts +0 -5
  493. package/lib-commonjs/components/MenuPopover/renderMenuPopover.d.ts +0 -5
  494. package/lib-commonjs/components/MenuPopover/useMenuPopover.d.ts +0 -12
  495. package/lib-commonjs/components/MenuPopover/useMenuPopoverStyles.d.ts +0 -5
  496. package/lib-commonjs/components/MenuTrigger/MenuTrigger.d.ts +0 -7
  497. package/lib-commonjs/components/MenuTrigger/MenuTrigger.types.d.ts +0 -16
  498. package/lib-commonjs/components/MenuTrigger/index.d.ts +0 -4
  499. package/lib-commonjs/components/MenuTrigger/renderMenuTrigger.d.ts +0 -7
  500. package/lib-commonjs/components/MenuTrigger/useMenuTrigger.d.ts +0 -8
  501. package/lib-commonjs/components/MenuTrigger/useTriggerElement.d.ts +0 -5
  502. package/lib-commonjs/components/MenuTrigger/useTriggerElement.js +0 -195
  503. package/lib-commonjs/components/MenuTrigger/useTriggerElement.js.map +0 -1
  504. package/lib-commonjs/components/index.d.ts +0 -2
  505. package/lib-commonjs/contexts/menuContext.d.ts +0 -16
  506. package/lib-commonjs/contexts/menuGroupContext.d.ts +0 -13
  507. package/lib-commonjs/contexts/menuListContext.d.ts +0 -15
  508. package/lib-commonjs/contexts/menuTriggerContext.d.ts +0 -3
  509. package/lib-commonjs/index.d.ts +0 -15
  510. package/lib-commonjs/selectable/index.d.ts +0 -2
  511. package/lib-commonjs/selectable/types.d.ts +0 -34
  512. package/lib-commonjs/selectable/useCheckmarkStyles.d.ts +0 -8
  513. package/lib-commonjs/utils/DefaultIcons.d.ts +0 -7
  514. package/lib-commonjs/utils/DefaultIcons.js +0 -100
  515. package/lib-commonjs/utils/DefaultIcons.js.map +0 -1
  516. package/lib-commonjs/utils/index.d.ts +0 -1
  517. package/lib-commonjs/utils/useIsSubmenu.d.ts +0 -9
  518. package/lib-commonjs/utils/useOnMenuEnter.d.ts +0 -23
@@ -3,50 +3,49 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.useMenuItemRadio = void 0;
6
+ exports.useMenuItemRadio_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_utilities_1 = /*#__PURE__*/require("@fluentui/react-utilities");
11
11
 
12
- var react_utilities_1 = /*#__PURE__*/require("@fluentui/react-utilities");
12
+ const react_icons_1 = /*#__PURE__*/require("@fluentui/react-icons");
13
13
 
14
- var react_icons_1 = /*#__PURE__*/require("@fluentui/react-icons");
14
+ const menuListContext_1 = /*#__PURE__*/require("../../contexts/menuListContext");
15
15
 
16
- var menuListContext_1 = /*#__PURE__*/require("../../contexts/menuListContext");
17
-
18
- var useMenuItem_1 = /*#__PURE__*/require("../MenuItem/useMenuItem");
16
+ const useMenuItem_1 = /*#__PURE__*/require("../MenuItem/useMenuItem");
19
17
  /**
20
18
  * Given user props, returns state and render function for a MenuItemRadio.
21
19
  */
22
20
 
23
21
 
24
- var useMenuItemRadio = function (props, ref) {
25
- var radioProps = {
22
+ const useMenuItemRadio_unstable = (props, ref) => {
23
+ const radioProps = {
26
24
  role: 'menuitemradio'
27
25
  };
28
- var state = useMenuItem_1.useMenuItem(tslib_1.__assign(tslib_1.__assign(tslib_1.__assign({}, radioProps), props), {
26
+ const state = useMenuItem_1.useMenuItem_unstable({ ...radioProps,
27
+ ...props,
29
28
  checkmark: react_utilities_1.resolveShorthand(props.checkmark, {
30
29
  defaultProps: {
31
30
  children: React.createElement(react_icons_1.Checkmark16Filled, null)
32
31
  },
33
32
  required: true
34
33
  })
35
- }), ref);
36
- var selectRadio = menuListContext_1.useMenuListContext(function (context) {
37
- return context.selectRadio;
38
- });
39
- var onClickOriginal = state.root.onClick;
40
- var checked = menuListContext_1.useMenuListContext(function (context) {
34
+ }, ref);
35
+ const selectRadio = menuListContext_1.useMenuListContext_unstable(context => context.selectRadio);
36
+ const {
37
+ onClick: onClickOriginal
38
+ } = state.root;
39
+ const checked = menuListContext_1.useMenuListContext_unstable(context => {
41
40
  var _a;
42
41
 
43
- var checkedItems = ((_a = context.checkedValues) === null || _a === void 0 ? void 0 : _a[state.name]) || [];
42
+ const checkedItems = ((_a = context.checkedValues) === null || _a === void 0 ? void 0 : _a[state.name]) || [];
44
43
  return checkedItems.indexOf(state.value) !== -1;
45
44
  });
46
45
  state.checked = checked;
47
46
  state.root['aria-checked'] = state.checked; // MenuItem state already transforms keyDown to click events
48
47
 
49
- state.root.onClick = function (e) {
48
+ state.root.onClick = e => {
50
49
  if (state.disabled) {
51
50
  e.preventDefault();
52
51
  e.stopPropagation();
@@ -60,5 +59,5 @@ var useMenuItemRadio = function (props, ref) {
60
59
  return state;
61
60
  };
62
61
 
63
- exports.useMenuItemRadio = useMenuItemRadio;
62
+ exports.useMenuItemRadio_unstable = useMenuItemRadio_unstable;
64
63
  //# sourceMappingURL=useMenuItemRadio.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/MenuItemRadio/useMenuItemRadio.tsx"],"names":[],"mappings":";;;;;;;;;AAAA,IAAA,KAAA,gBAAA,OAAA,CAAA,OAAA,CAAA;;AACA,IAAA,iBAAA,gBAAA,OAAA,CAAA,2BAAA,CAAA;;AACA,IAAA,aAAA,gBAAA,OAAA,CAAA,uBAAA,CAAA;;AACA,IAAA,iBAAA,gBAAA,OAAA,CAAA,gCAAA,CAAA;;AACA,IAAA,aAAA,gBAAA,OAAA,CAAA,yBAAA,CAAA;AAGA;;AAEG;;;AACI,IAAM,gBAAgB,GAAG,UAAC,KAAD,EAA4B,GAA5B,EAAuD;AACrF,MAAM,UAAU,GAAG;AACjB,IAAA,IAAI,EAAE;AADW,GAAnB;AAIA,MAAM,KAAK,GAAG,aAAA,CAAA,WAAA,CAAW,OAAA,CAAA,QAAA,CAAA,OAAA,CAAA,QAAA,CAAA,OAAA,CAAA,QAAA,CAAA,EAAA,EAElB,UAFkB,CAAA,EAGlB,KAHkB,CAAA,EAGb;AACR,IAAA,SAAS,EAAE,iBAAA,CAAA,gBAAA,CAAiB,KAAK,CAAC,SAAvB,EAAkC;AAC3C,MAAA,YAAY,EAAE;AAAE,QAAA,QAAQ,EAAE,KAAA,CAAA,aAAA,CAAC,aAAA,CAAA,iBAAD,EAAkB,IAAlB;AAAZ,OAD6B;AAE3C,MAAA,QAAQ,EAAE;AAFiC,KAAlC;AADH,GAHa,CAAX,EASZ,GATY,CAAd;AAYA,MAAM,WAAW,GAAG,iBAAA,CAAA,kBAAA,CAAmB,UAAA,OAAA,EAAO;AAAI,WAAA,OAAO,CAAP,WAAA;AAAmB,GAAjD,CAApB;AACQ,MAAS,eAAe,GAAK,KAAK,CAAC,IAAN,CAAL,OAAxB;AACR,MAAM,OAAO,GAAG,iBAAA,CAAA,kBAAA,CAAmB,UAAA,OAAA,EAAO;;;AACxC,QAAM,YAAY,GAAG,CAAA,CAAA,EAAA,GAAA,OAAO,CAAC,aAAR,MAAqB,IAArB,IAAqB,EAAA,KAAA,KAAA,CAArB,GAAqB,KAAA,CAArB,GAAqB,EAAA,CAAG,KAAK,CAAC,IAAT,CAArB,KAAuC,EAA5D;AACA,WAAO,YAAY,CAAC,OAAb,CAAqB,KAAK,CAAC,KAA3B,MAAsC,CAAC,CAA9C;AACD,GAHe,CAAhB;AAKA,EAAA,KAAK,CAAC,OAAN,GAAgB,OAAhB;AACA,EAAA,KAAK,CAAC,IAAN,CAAW,cAAX,IAA6B,KAAK,CAAC,OAAnC,CAzBqF,CA2BrF;;AACA,EAAA,KAAK,CAAC,IAAN,CAAW,OAAX,GAAqB,UAAA,CAAA,EAAC;AACpB,QAAI,KAAK,CAAC,QAAV,EAAoB;AAClB,MAAA,CAAC,CAAC,cAAF;AACA,MAAA,CAAC,CAAC,eAAF;AACA;AACD;;AAED,IAAA,WAAW,KAAA,IAAX,IAAA,WAAW,KAAA,KAAA,CAAX,GAAW,KAAA,CAAX,GAAA,WAAW,CAAG,CAAH,EAAM,KAAK,CAAC,IAAZ,EAAkB,KAAK,CAAC,KAAxB,EAA+B,KAAK,CAAC,OAArC,CAAX;AACA,IAAA,eAAe,KAAA,IAAf,IAAA,eAAe,KAAA,KAAA,CAAf,GAAe,KAAA,CAAf,GAAA,eAAe,CAAG,CAAH,CAAf;AACD,GATD;;AAWA,SAAO,KAAP;AACD,CAxCM;;AAAM,OAAA,CAAA,gBAAA,GAAgB,gBAAhB","sourceRoot":""}
1
+ {"version":3,"sources":["components/MenuItemRadio/useMenuItemRadio.tsx"],"names":[],"mappings":";;;;;;;AAAA,MAAA,KAAA,gBAAA,OAAA,CAAA,OAAA,CAAA;;AACA,MAAA,iBAAA,gBAAA,OAAA,CAAA,2BAAA,CAAA;;AACA,MAAA,aAAA,gBAAA,OAAA,CAAA,uBAAA,CAAA;;AACA,MAAA,iBAAA,gBAAA,OAAA,CAAA,gCAAA,CAAA;;AACA,MAAA,aAAA,gBAAA,OAAA,CAAA,yBAAA,CAAA;AAGA;;AAEG;;;AACI,MAAM,yBAAyB,GAAG,CACvC,KADuC,EAEvC,GAFuC,KAGjB;AACtB,QAAM,UAAU,GAAG;AACjB,IAAA,IAAI,EAAE;AADW,GAAnB;AAIA,QAAM,KAAK,GAAG,aAAA,CAAA,oBAAA,CACZ,EACE,GAAG,UADL;AAEE,OAAG,KAFL;AAGE,IAAA,SAAS,EAAE,iBAAA,CAAA,gBAAA,CAAiB,KAAK,CAAC,SAAvB,EAAkC;AAC3C,MAAA,YAAY,EAAE;AAAE,QAAA,QAAQ,EAAE,KAAA,CAAA,aAAA,CAAC,aAAA,CAAA,iBAAD,EAAkB,IAAlB;AAAZ,OAD6B;AAE3C,MAAA,QAAQ,EAAE;AAFiC,KAAlC;AAHb,GADY,EASZ,GATY,CAAd;AAYA,QAAM,WAAW,GAAG,iBAAA,CAAA,2BAAA,CAA4B,OAAO,IAAI,OAAO,CAAC,WAA/C,CAApB;AACA,QAAM;AAAE,IAAA,OAAO,EAAE;AAAX,MAA+B,KAAK,CAAC,IAA3C;AACA,QAAM,OAAO,GAAG,iBAAA,CAAA,2BAAA,CAA4B,OAAO,IAAG;;;AACpD,UAAM,YAAY,GAAG,CAAA,CAAA,EAAA,GAAA,OAAO,CAAC,aAAR,MAAqB,IAArB,IAAqB,EAAA,KAAA,KAAA,CAArB,GAAqB,KAAA,CAArB,GAAqB,EAAA,CAAG,KAAK,CAAC,IAAT,CAArB,KAAuC,EAA5D;AACA,WAAO,YAAY,CAAC,OAAb,CAAqB,KAAK,CAAC,KAA3B,MAAsC,CAAC,CAA9C;AACD,GAHe,CAAhB;AAKA,EAAA,KAAK,CAAC,OAAN,GAAgB,OAAhB;AACA,EAAA,KAAK,CAAC,IAAN,CAAW,cAAX,IAA6B,KAAK,CAAC,OAAnC,CAzBsB,CA2BtB;;AACA,EAAA,KAAK,CAAC,IAAN,CAAW,OAAX,GAAqB,CAAC,IAAG;AACvB,QAAI,KAAK,CAAC,QAAV,EAAoB;AAClB,MAAA,CAAC,CAAC,cAAF;AACA,MAAA,CAAC,CAAC,eAAF;AACA;AACD;;AAED,IAAA,WAAW,KAAA,IAAX,IAAA,WAAW,KAAA,KAAA,CAAX,GAAW,KAAA,CAAX,GAAA,WAAW,CAAG,CAAH,EAAM,KAAK,CAAC,IAAZ,EAAkB,KAAK,CAAC,KAAxB,EAA+B,KAAK,CAAC,OAArC,CAAX;AACA,IAAA,eAAe,KAAA,IAAf,IAAA,eAAe,KAAA,KAAA,CAAf,GAAe,KAAA,CAAf,GAAA,eAAe,CAAG,CAAH,CAAf;AACD,GATD;;AAWA,SAAO,KAAP;AACD,CA3CM;;AAAM,OAAA,CAAA,yBAAA,GAAyB,yBAAzB","sourcesContent":["import * as React from 'react';\nimport { resolveShorthand } from '@fluentui/react-utilities';\nimport { Checkmark16Filled } from '@fluentui/react-icons';\nimport { useMenuListContext_unstable } from '../../contexts/menuListContext';\nimport { useMenuItem_unstable } from '../MenuItem/useMenuItem';\nimport type { MenuItemRadioProps, MenuItemRadioState } from './MenuItemRadio.types';\n\n/**\n * Given user props, returns state and render function for a MenuItemRadio.\n */\nexport const useMenuItemRadio_unstable = (\n props: MenuItemRadioProps,\n ref: React.Ref<HTMLElement>,\n): MenuItemRadioState => {\n const radioProps = {\n role: 'menuitemradio',\n };\n\n const state = useMenuItem_unstable(\n {\n ...radioProps,\n ...props,\n checkmark: resolveShorthand(props.checkmark, {\n defaultProps: { children: <Checkmark16Filled /> },\n required: true,\n }),\n },\n ref,\n ) as MenuItemRadioState;\n\n const selectRadio = useMenuListContext_unstable(context => context.selectRadio);\n const { onClick: onClickOriginal } = state.root;\n const checked = useMenuListContext_unstable(context => {\n const checkedItems = context.checkedValues?.[state.name] || [];\n return checkedItems.indexOf(state.value) !== -1;\n });\n\n state.checked = checked;\n state.root['aria-checked'] = state.checked;\n\n // MenuItem state already transforms keyDown to click events\n state.root.onClick = e => {\n if (state.disabled) {\n e.preventDefault();\n e.stopPropagation();\n return;\n }\n\n selectRadio?.(e, state.name, state.value, state.checked);\n onClickOriginal?.(e);\n };\n\n return state;\n};\n"],"sourceRoot":"../src/"}
@@ -3,16 +3,44 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.useMenuItemRadioStyles = void 0;
6
+ exports.useMenuItemRadioStyles_unstable = exports.menuItemRadioClassNames = void 0;
7
7
 
8
- var index_1 = /*#__PURE__*/require("../../selectable/index");
8
+ const react_1 = /*#__PURE__*/require("@griffel/react");
9
9
 
10
- var useMenuItemStyles_1 = /*#__PURE__*/require("../MenuItem/useMenuItemStyles");
10
+ const index_1 = /*#__PURE__*/require("../../selectable/index");
11
11
 
12
- var useMenuItemRadioStyles = function (state) {
13
- useMenuItemStyles_1.useMenuItemStyles(state);
14
- index_1.useCheckmarkStyles(state);
12
+ const useMenuItemStyles_1 = /*#__PURE__*/require("../MenuItem/useMenuItemStyles");
13
+
14
+ exports.menuItemRadioClassNames = {
15
+ root: 'fui-MenuItemRadio',
16
+ icon: 'fui-MenuItemRadio__icon',
17
+ checkmark: 'fui-MenuItemRadio__checkmark',
18
+ content: 'fui-MenuItemRadio__content',
19
+ secondaryContent: 'fui-MenuItemRadio__secondaryContent'
20
+ };
21
+
22
+ const useMenuItemRadioStyles_unstable = state => {
23
+ state.root.className = react_1.mergeClasses(exports.menuItemRadioClassNames.root, state.root.className);
24
+
25
+ if (state.content) {
26
+ state.content.className = react_1.mergeClasses(exports.menuItemRadioClassNames.content, state.content.className);
27
+ }
28
+
29
+ if (state.secondaryContent) {
30
+ state.secondaryContent.className = react_1.mergeClasses(exports.menuItemRadioClassNames.secondaryContent, state.secondaryContent.className);
31
+ }
32
+
33
+ if (state.icon) {
34
+ state.icon.className = react_1.mergeClasses(exports.menuItemRadioClassNames.icon, state.icon.className);
35
+ }
36
+
37
+ if (state.checkmark) {
38
+ state.checkmark.className = react_1.mergeClasses(exports.menuItemRadioClassNames.checkmark, state.checkmark.className);
39
+ }
40
+
41
+ useMenuItemStyles_1.useMenuItemStyles_unstable(state);
42
+ index_1.useCheckmarkStyles_unstable(state);
15
43
  };
16
44
 
17
- exports.useMenuItemRadioStyles = useMenuItemRadioStyles;
45
+ exports.useMenuItemRadioStyles_unstable = useMenuItemRadioStyles_unstable;
18
46
  //# sourceMappingURL=useMenuItemRadioStyles.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/MenuItemRadio/useMenuItemRadioStyles.ts"],"names":[],"mappings":";;;;;;;AAAA,IAAA,OAAA,gBAAA,OAAA,CAAA,wBAAA,CAAA;;AACA,IAAA,mBAAA,gBAAA,OAAA,CAAA,+BAAA,CAAA;;AAGO,IAAM,sBAAsB,GAAG,UAAC,KAAD,EAA0B;AAC9D,EAAA,mBAAA,CAAA,iBAAA,CAAkB,KAAlB;AACA,EAAA,OAAA,CAAA,kBAAA,CAAmB,KAAnB;AACD,CAHM;;AAAM,OAAA,CAAA,sBAAA,GAAsB,sBAAtB","sourceRoot":""}
1
+ {"version":3,"sources":["components/MenuItemRadio/useMenuItemRadioStyles.ts"],"names":[],"mappings":";;;;;;;AACA,MAAA,OAAA,gBAAA,OAAA,CAAA,gBAAA,CAAA;;AACA,MAAA,OAAA,gBAAA,OAAA,CAAA,wBAAA,CAAA;;AAEA,MAAA,mBAAA,gBAAA,OAAA,CAAA,+BAAA,CAAA;;AAGa,OAAA,CAAA,uBAAA,GAAmF;AAC9F,EAAA,IAAI,EAAE,mBADwF;AAE9F,EAAA,IAAI,EAAE,yBAFwF;AAG9F,EAAA,SAAS,EAAE,8BAHmF;AAI9F,EAAA,OAAO,EAAE,4BAJqF;AAK9F,EAAA,gBAAgB,EAAE;AAL4E,CAAnF;;AAQN,MAAM,+BAA+B,GAAI,KAAD,IAA8B;AAC3E,EAAA,KAAK,CAAC,IAAN,CAAW,SAAX,GAAuB,OAAA,CAAA,YAAA,CAAa,OAAA,CAAA,uBAAA,CAAwB,IAArC,EAA2C,KAAK,CAAC,IAAN,CAAW,SAAtD,CAAvB;;AAEA,MAAI,KAAK,CAAC,OAAV,EAAmB;AACjB,IAAA,KAAK,CAAC,OAAN,CAAc,SAAd,GAA0B,OAAA,CAAA,YAAA,CAAa,OAAA,CAAA,uBAAA,CAAwB,OAArC,EAA8C,KAAK,CAAC,OAAN,CAAc,SAA5D,CAA1B;AACD;;AAED,MAAI,KAAK,CAAC,gBAAV,EAA4B;AAC1B,IAAA,KAAK,CAAC,gBAAN,CAAuB,SAAvB,GAAmC,OAAA,CAAA,YAAA,CACjC,OAAA,CAAA,uBAAA,CAAwB,gBADS,EAEjC,KAAK,CAAC,gBAAN,CAAuB,SAFU,CAAnC;AAID;;AAED,MAAI,KAAK,CAAC,IAAV,EAAgB;AACd,IAAA,KAAK,CAAC,IAAN,CAAW,SAAX,GAAuB,OAAA,CAAA,YAAA,CAAa,OAAA,CAAA,uBAAA,CAAwB,IAArC,EAA2C,KAAK,CAAC,IAAN,CAAW,SAAtD,CAAvB;AACD;;AAED,MAAI,KAAK,CAAC,SAAV,EAAqB;AACnB,IAAA,KAAK,CAAC,SAAN,CAAgB,SAAhB,GAA4B,OAAA,CAAA,YAAA,CAAa,OAAA,CAAA,uBAAA,CAAwB,SAArC,EAAgD,KAAK,CAAC,SAAN,CAAgB,SAAhE,CAA5B;AACD;;AAED,EAAA,mBAAA,CAAA,0BAAA,CAA2B,KAA3B;AACA,EAAA,OAAA,CAAA,2BAAA,CAA4B,KAA5B;AACD,CAxBM;;AAAM,OAAA,CAAA,+BAAA,GAA+B,+BAA/B","sourcesContent":["import type { SlotClassNames } from '@fluentui/react-utilities';\nimport { mergeClasses } from '@griffel/react';\nimport { useCheckmarkStyles_unstable } from '../../selectable/index';\nimport { MenuItemSlots } from '../index';\nimport { useMenuItemStyles_unstable } from '../MenuItem/useMenuItemStyles';\nimport type { MenuItemRadioState } from './MenuItemRadio.types';\n\nexport const menuItemRadioClassNames: SlotClassNames<Omit<MenuItemSlots, 'submenuIndicator'>> = {\n root: 'fui-MenuItemRadio',\n icon: 'fui-MenuItemRadio__icon',\n checkmark: 'fui-MenuItemRadio__checkmark',\n content: 'fui-MenuItemRadio__content',\n secondaryContent: 'fui-MenuItemRadio__secondaryContent',\n};\n\nexport const useMenuItemRadioStyles_unstable = (state: MenuItemRadioState) => {\n state.root.className = mergeClasses(menuItemRadioClassNames.root, state.root.className);\n\n if (state.content) {\n state.content.className = mergeClasses(menuItemRadioClassNames.content, state.content.className);\n }\n\n if (state.secondaryContent) {\n state.secondaryContent.className = mergeClasses(\n menuItemRadioClassNames.secondaryContent,\n state.secondaryContent.className,\n );\n }\n\n if (state.icon) {\n state.icon.className = mergeClasses(menuItemRadioClassNames.icon, state.icon.className);\n }\n\n if (state.checkmark) {\n state.checkmark.className = mergeClasses(menuItemRadioClassNames.checkmark, state.checkmark.className);\n }\n\n useMenuItemStyles_unstable(state);\n useCheckmarkStyles_unstable(state);\n};\n"],"sourceRoot":"../src/"}
@@ -5,25 +5,25 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.MenuList = void 0;
7
7
 
8
- var React = /*#__PURE__*/require("react");
8
+ const React = /*#__PURE__*/require("react");
9
9
 
10
- var useMenuList_1 = /*#__PURE__*/require("./useMenuList");
10
+ const useMenuList_1 = /*#__PURE__*/require("./useMenuList");
11
11
 
12
- var renderMenuList_1 = /*#__PURE__*/require("./renderMenuList");
12
+ const renderMenuList_1 = /*#__PURE__*/require("./renderMenuList");
13
13
 
14
- var useMenuListContextValues_1 = /*#__PURE__*/require("./useMenuListContextValues");
14
+ const useMenuListContextValues_1 = /*#__PURE__*/require("./useMenuListContextValues");
15
15
 
16
- var useMenuListStyles_1 = /*#__PURE__*/require("./useMenuListStyles");
16
+ const useMenuListStyles_1 = /*#__PURE__*/require("./useMenuListStyles");
17
17
  /**
18
- * Define a styled MenuList, using the `useMenuList` hook.
18
+ * Define a styled MenuList, using the `useMenuList_unstable` hook.
19
19
  */
20
20
 
21
21
 
22
- exports.MenuList = /*#__PURE__*/React.forwardRef(function (props, ref) {
23
- var state = useMenuList_1.useMenuList(props, ref);
24
- var contextValues = useMenuListContextValues_1.useMenuListContextValues(state);
25
- useMenuListStyles_1.useMenuListStyles(state);
26
- return renderMenuList_1.renderMenuList(state, contextValues);
22
+ exports.MenuList = /*#__PURE__*/React.forwardRef((props, ref) => {
23
+ const state = useMenuList_1.useMenuList_unstable(props, ref);
24
+ const contextValues = useMenuListContextValues_1.useMenuListContextValues_unstable(state);
25
+ useMenuListStyles_1.useMenuListStyles_unstable(state);
26
+ return renderMenuList_1.renderMenuList_unstable(state, contextValues);
27
27
  });
28
28
  exports.MenuList.displayName = 'MenuList';
29
29
  //# sourceMappingURL=MenuList.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/MenuList/MenuList.tsx"],"names":[],"mappings":";;;;;;;AAAA,IAAA,KAAA,gBAAA,OAAA,CAAA,OAAA,CAAA;;AACA,IAAA,aAAA,gBAAA,OAAA,CAAA,eAAA,CAAA;;AACA,IAAA,gBAAA,gBAAA,OAAA,CAAA,kBAAA,CAAA;;AACA,IAAA,0BAAA,gBAAA,OAAA,CAAA,4BAAA,CAAA;;AACA,IAAA,mBAAA,gBAAA,OAAA,CAAA,qBAAA,CAAA;AAIA;;AAEG;;;AACU,OAAA,CAAA,QAAA,gBAA+C,KAAK,CAAC,UAAN,CAAiB,UAAC,KAAD,EAAQ,GAAR,EAAW;AACtF,MAAM,KAAK,GAAG,aAAA,CAAA,WAAA,CAAY,KAAZ,EAAmB,GAAnB,CAAd;AACA,MAAM,aAAa,GAAG,0BAAA,CAAA,wBAAA,CAAyB,KAAzB,CAAtB;AACA,EAAA,mBAAA,CAAA,iBAAA,CAAkB,KAAlB;AAEA,SAAO,gBAAA,CAAA,cAAA,CAAe,KAAf,EAAsB,aAAtB,CAAP;AACD,CAN2D,CAA/C;AAQb,OAAA,CAAA,QAAA,CAAS,WAAT,GAAuB,UAAvB","sourceRoot":""}
1
+ {"version":3,"sources":["components/MenuList/MenuList.tsx"],"names":[],"mappings":";;;;;;;AAAA,MAAA,KAAA,gBAAA,OAAA,CAAA,OAAA,CAAA;;AACA,MAAA,aAAA,gBAAA,OAAA,CAAA,eAAA,CAAA;;AACA,MAAA,gBAAA,gBAAA,OAAA,CAAA,kBAAA,CAAA;;AACA,MAAA,0BAAA,gBAAA,OAAA,CAAA,4BAAA,CAAA;;AACA,MAAA,mBAAA,gBAAA,OAAA,CAAA,qBAAA,CAAA;AAIA;;AAEG;;;AACU,OAAA,CAAA,QAAA,gBAA+C,KAAK,CAAC,UAAN,CAAiB,CAAC,KAAD,EAAQ,GAAR,KAAe;AAC1F,QAAM,KAAK,GAAG,aAAA,CAAA,oBAAA,CAAqB,KAArB,EAA4B,GAA5B,CAAd;AACA,QAAM,aAAa,GAAG,0BAAA,CAAA,iCAAA,CAAkC,KAAlC,CAAtB;AACA,EAAA,mBAAA,CAAA,0BAAA,CAA2B,KAA3B;AAEA,SAAO,gBAAA,CAAA,uBAAA,CAAwB,KAAxB,EAA+B,aAA/B,CAAP;AACD,CAN2D,CAA/C;AAQb,OAAA,CAAA,QAAA,CAAS,WAAT,GAAuB,UAAvB","sourcesContent":["import * as React from 'react';\nimport { useMenuList_unstable } from './useMenuList';\nimport { renderMenuList_unstable } from './renderMenuList';\nimport { useMenuListContextValues_unstable } from './useMenuListContextValues';\nimport { useMenuListStyles_unstable } from './useMenuListStyles';\nimport type { MenuListProps } from './MenuList.types';\nimport type { ForwardRefComponent } from '@fluentui/react-utilities';\n\n/**\n * Define a styled MenuList, using the `useMenuList_unstable` hook.\n */\nexport const MenuList: ForwardRefComponent<MenuListProps> = React.forwardRef((props, ref) => {\n const state = useMenuList_unstable(props, ref);\n const contextValues = useMenuListContextValues_unstable(state);\n useMenuListStyles_unstable(state);\n\n return renderMenuList_unstable(state, contextValues);\n});\n\nMenuList.displayName = 'MenuList';\n"],"sourceRoot":"../src/"}
@@ -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("./MenuList"), exports);
10
10
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/MenuList/index.ts"],"names":[],"mappings":";;;;;;;;AAAA,OAAA,CAAA,YAAA,CAAA,OAAA,CAAA,YAAA,CAAA,EAAA,OAAA;;AACA,OAAA,CAAA,YAAA,CAAA,OAAA,CAAA,kBAAA,CAAA,EAAA,OAAA;;AACA,OAAA,CAAA,YAAA,CAAA,OAAA,CAAA,kBAAA,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,4BAAA,CAAA,EAAA,OAAA","sourceRoot":""}
1
+ {"version":3,"sources":["components/MenuList/index.ts"],"names":[],"mappings":";;;;;;;;AAAA,OAAA,CAAA,YAAA,CAAA,OAAA,CAAA,YAAA,CAAA,EAAA,OAAA;;AACA,OAAA,CAAA,YAAA,CAAA,OAAA,CAAA,kBAAA,CAAA,EAAA,OAAA;;AACA,OAAA,CAAA,YAAA,CAAA,OAAA,CAAA,kBAAA,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,4BAAA,CAAA,EAAA,OAAA","sourcesContent":["export * from './MenuList';\nexport * from './MenuList.types';\nexport * from './renderMenuList';\nexport * from './useMenuList';\nexport * from './useMenuListStyles';\nexport * from './useMenuListContextValues';\n"],"sourceRoot":"../src/"}
@@ -3,29 +3,28 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.renderMenuList = void 0;
6
+ exports.renderMenuList_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_utilities_1 = /*#__PURE__*/require("@fluentui/react-utilities");
11
11
 
12
- var react_utilities_1 = /*#__PURE__*/require("@fluentui/react-utilities");
13
-
14
- var menuListContext_1 = /*#__PURE__*/require("../../contexts/menuListContext");
12
+ const menuListContext_1 = /*#__PURE__*/require("../../contexts/menuListContext");
15
13
  /**
16
14
  * Function that renders the final JSX of the component
17
15
  */
18
16
 
19
17
 
20
- var renderMenuList = function (state, contextValues) {
21
- var _a = react_utilities_1.getSlots(state),
22
- slots = _a.slots,
23
- slotProps = _a.slotProps;
24
-
18
+ const renderMenuList_unstable = (state, contextValues) => {
19
+ const {
20
+ slots,
21
+ slotProps
22
+ } = react_utilities_1.getSlots(state);
25
23
  return React.createElement(menuListContext_1.MenuListProvider, {
26
24
  value: contextValues.menuList
27
- }, React.createElement(slots.root, tslib_1.__assign({}, slotProps.root)));
25
+ }, React.createElement(slots.root, { ...slotProps.root
26
+ }));
28
27
  };
29
28
 
30
- exports.renderMenuList = renderMenuList;
29
+ exports.renderMenuList_unstable = renderMenuList_unstable;
31
30
  //# sourceMappingURL=renderMenuList.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/MenuList/renderMenuList.tsx"],"names":[],"mappings":";;;;;;;;;AAAA,IAAA,KAAA,gBAAA,OAAA,CAAA,OAAA,CAAA;;AACA,IAAA,iBAAA,gBAAA,OAAA,CAAA,2BAAA,CAAA;;AAEA,IAAA,iBAAA,gBAAA,OAAA,CAAA,gCAAA,CAAA;AAEA;;AAEG;;;AACI,IAAM,cAAc,GAAG,UAAC,KAAD,EAAuB,aAAvB,EAA2D;AACjF,MAAA,EAAA,GAAuB,iBAAA,CAAA,QAAA,CAAwB,KAAxB,CAAvB;AAAA,MAAE,KAAK,GAAA,EAAA,CAAA,KAAP;AAAA,MAAS,SAAS,GAAA,EAAA,CAAA,SAAlB;;AAEN,SACE,KAAA,CAAA,aAAA,CAAC,iBAAA,CAAA,gBAAD,EAAiB;AAAC,IAAA,KAAK,EAAE,aAAa,CAAC;AAAtB,GAAjB,EACE,KAAA,CAAA,aAAA,CAAC,KAAK,CAAC,IAAP,EAAW,OAAA,CAAA,QAAA,CAAA,EAAA,EAAK,SAAS,CAAC,IAAf,CAAX,CADF,CADF;AAKD,CARM;;AAAM,OAAA,CAAA,cAAA,GAAc,cAAd","sourceRoot":""}
1
+ {"version":3,"sources":["components/MenuList/renderMenuList.tsx"],"names":[],"mappings":";;;;;;;AAAA,MAAA,KAAA,gBAAA,OAAA,CAAA,OAAA,CAAA;;AACA,MAAA,iBAAA,gBAAA,OAAA,CAAA,2BAAA,CAAA;;AAEA,MAAA,iBAAA,gBAAA,OAAA,CAAA,gCAAA,CAAA;AAEA;;AAEG;;;AACI,MAAM,uBAAuB,GAAG,CAAC,KAAD,EAAuB,aAAvB,KAA+D;AACpG,QAAM;AAAE,IAAA,KAAF;AAAS,IAAA;AAAT,MAAuB,iBAAA,CAAA,QAAA,CAAwB,KAAxB,CAA7B;AAEA,SACE,KAAA,CAAA,aAAA,CAAC,iBAAA,CAAA,gBAAD,EAAiB;AAAC,IAAA,KAAK,EAAE,aAAa,CAAC;AAAtB,GAAjB,EACE,KAAA,CAAA,aAAA,CAAC,KAAK,CAAC,IAAP,EAAW,EAAA,GAAK,SAAS,CAAC;AAAf,GAAX,CADF,CADF;AAKD,CARM;;AAAM,OAAA,CAAA,uBAAA,GAAuB,uBAAvB","sourcesContent":["import * as React from 'react';\nimport { getSlots } from '@fluentui/react-utilities';\nimport { MenuListContextValues, MenuListSlots, MenuListState } from './MenuList.types';\nimport { MenuListProvider } from '../../contexts/menuListContext';\n\n/**\n * Function that renders the final JSX of the component\n */\nexport const renderMenuList_unstable = (state: MenuListState, contextValues: MenuListContextValues) => {\n const { slots, slotProps } = getSlots<MenuListSlots>(state);\n\n return (\n <MenuListProvider value={contextValues.menuList}>\n <slots.root {...slotProps.root} />\n </MenuListProvider>\n );\n};\n"],"sourceRoot":"../src/"}
@@ -3,33 +3,33 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.useMenuList = void 0;
6
+ exports.useMenuList_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_utilities_1 = /*#__PURE__*/require("@fluentui/react-utilities");
11
11
 
12
- var react_utilities_1 = /*#__PURE__*/require("@fluentui/react-utilities");
12
+ const react_tabster_1 = /*#__PURE__*/require("@fluentui/react-tabster");
13
13
 
14
- var react_tabster_1 = /*#__PURE__*/require("@fluentui/react-tabster");
14
+ const react_context_selector_1 = /*#__PURE__*/require("@fluentui/react-context-selector");
15
15
 
16
- var react_context_selector_1 = /*#__PURE__*/require("@fluentui/react-context-selector");
16
+ const menuContext_1 = /*#__PURE__*/require("../../contexts/menuContext");
17
17
 
18
- var menuContext_1 = /*#__PURE__*/require("../../contexts/menuContext");
19
-
20
- var menuContext_2 = /*#__PURE__*/require("../../contexts/menuContext");
18
+ const menuContext_2 = /*#__PURE__*/require("../../contexts/menuContext");
21
19
  /**
22
20
  * Returns the props and state required to render the component
23
21
  */
24
22
 
25
23
 
26
- var useMenuList = function (props, ref) {
27
- var focusAttributes = react_tabster_1.useArrowNavigationGroup({
24
+ const useMenuList_unstable = (props, ref) => {
25
+ const focusAttributes = react_tabster_1.useArrowNavigationGroup({
28
26
  circular: true
29
27
  });
30
- var findAllFocusable = react_tabster_1.useFocusFinders().findAllFocusable;
31
- var menuContext = useMenuContextSelectors();
32
- var hasMenuContext = react_context_selector_1.useHasParentContext(menuContext_2.MenuContext);
28
+ const {
29
+ findAllFocusable
30
+ } = react_tabster_1.useFocusFinders();
31
+ const menuContext = useMenuContextSelectors();
32
+ const hasMenuContext = react_context_selector_1.useHasParentContext(menuContext_2.MenuContext);
33
33
 
34
34
  if (usingPropsAndMenuContext(props, menuContext, hasMenuContext)) {
35
35
  // TODO throw warnings in development safely
@@ -37,44 +37,47 @@ var useMenuList = function (props, ref) {
37
37
  console.warn('You are using both MenuList and Menu props, we recommend you to use Menu props when available');
38
38
  }
39
39
 
40
- var innerRef = React.useRef(null);
41
-
42
- var initialState = tslib_1.__assign(tslib_1.__assign({
43
- root: react_utilities_1.getNativeElementProps('div', tslib_1.__assign(tslib_1.__assign({
40
+ const innerRef = React.useRef(null);
41
+ const initialState = {
42
+ components: {
43
+ root: 'div'
44
+ },
45
+ root: react_utilities_1.getNativeElementProps('div', {
44
46
  ref: react_utilities_1.useMergedRefs(ref, innerRef),
45
47
  role: 'menu',
46
- 'aria-labelledby': menuContext.triggerId
47
- }, focusAttributes), props)),
48
- hasIcons: menuContext.hasIcons,
49
- hasCheckmarks: menuContext.hasCheckmarks
50
- }, hasMenuContext && menuContext), props);
51
-
52
- var setFocusByFirstCharacter = React.useCallback(function (e, itemEl) {
48
+ 'aria-labelledby': menuContext.triggerId,
49
+ ...focusAttributes,
50
+ ...props
51
+ }),
52
+ hasIcons: menuContext.hasIcons || false,
53
+ hasCheckmarks: menuContext.hasCheckmarks || false,
54
+ ...(hasMenuContext && menuContext),
55
+ ...props
56
+ };
57
+ const setFocusByFirstCharacter = React.useCallback((e, itemEl) => {
53
58
  // TODO use some kind of children registration to reduce dependency on DOM roles
54
- var acceptedRoles = ['menuitem', 'menuitemcheckbox', 'menuitemradio'];
59
+ const acceptedRoles = ['menuitem', 'menuitemcheckbox', 'menuitemradio'];
55
60
 
56
61
  if (!innerRef.current) {
57
62
  return;
58
63
  }
59
64
 
60
- var menuItems = findAllFocusable(innerRef.current, function (el) {
61
- return el.hasAttribute('role') && acceptedRoles.indexOf(el.getAttribute('role')) !== -1;
62
- });
63
- var startIndex = menuItems.indexOf(itemEl) + 1;
65
+ const menuItems = findAllFocusable(innerRef.current, el => el.hasAttribute('role') && acceptedRoles.indexOf(el.getAttribute('role')) !== -1);
66
+ let startIndex = menuItems.indexOf(itemEl) + 1;
64
67
 
65
68
  if (startIndex === menuItems.length) {
66
69
  startIndex = 0;
67
70
  }
68
71
 
69
- var firstChars = menuItems.map(function (menuItem) {
72
+ const firstChars = menuItems.map(menuItem => {
70
73
  var _a;
71
74
 
72
75
  return (_a = menuItem.textContent) === null || _a === void 0 ? void 0 : _a.charAt(0).toLowerCase();
73
76
  });
74
- var char = e.key.toLowerCase();
77
+ const char = e.key.toLowerCase();
75
78
 
76
- var getIndexFirstChars = function (start, firstChar) {
77
- for (var i = start; i < firstChars.length; i++) {
79
+ const getIndexFirstChars = (start, firstChar) => {
80
+ for (let i = start; i < firstChars.length; i++) {
78
81
  if (char === firstChars[i]) {
79
82
  return i;
80
83
  }
@@ -84,7 +87,7 @@ var useMenuList = function (props, ref) {
84
87
  }; // Check remaining slots in the menu
85
88
 
86
89
 
87
- var index = getIndexFirstChars(startIndex, char); // If not found in remaining slots, check from beginning
90
+ let index = getIndexFirstChars(startIndex, char); // If not found in remaining slots, check from beginning
88
91
 
89
92
  if (index === -1) {
90
93
  index = getIndexFirstChars(0, char);
@@ -95,20 +98,17 @@ var useMenuList = function (props, ref) {
95
98
  menuItems[index].focus();
96
99
  }
97
100
  }, [findAllFocusable]);
98
-
99
- var _a = react_utilities_1.useControllableState({
101
+ const [checkedValues, setCheckedValues] = react_utilities_1.useControllableState({
100
102
  state: initialState.checkedValues,
101
103
  defaultState: initialState.defaultCheckedValues,
102
104
  initialState: {}
103
- }),
104
- checkedValues = _a[0],
105
- setCheckedValues = _a[1];
106
-
107
- var onCheckedValueChange = initialState.onCheckedValueChange;
108
- var toggleCheckbox = react_utilities_1.useEventCallback(function (e, name, value, checked) {
109
- var checkedItems = (checkedValues === null || checkedValues === void 0 ? void 0 : checkedValues[name]) || [];
110
-
111
- var newCheckedItems = tslib_1.__spreadArrays(checkedItems);
105
+ });
106
+ const {
107
+ onCheckedValueChange
108
+ } = initialState;
109
+ const toggleCheckbox = react_utilities_1.useEventCallback((e, name, value, checked) => {
110
+ const checkedItems = (checkedValues === null || checkedValues === void 0 ? void 0 : checkedValues[name]) || [];
111
+ const newCheckedItems = [...checkedItems];
112
112
 
113
113
  if (checked) {
114
114
  newCheckedItems.splice(newCheckedItems.indexOf(value), 1);
@@ -117,69 +117,51 @@ var useMenuList = function (props, ref) {
117
117
  }
118
118
 
119
119
  onCheckedValueChange === null || onCheckedValueChange === void 0 ? void 0 : onCheckedValueChange(e, {
120
- name: name,
120
+ name,
121
121
  checkedItems: newCheckedItems
122
122
  });
123
- setCheckedValues(function (s) {
124
- var _a;
125
-
126
- return tslib_1.__assign(tslib_1.__assign({}, s), (_a = {}, _a[name] = newCheckedItems, _a));
127
- });
123
+ setCheckedValues(s => ({ ...s,
124
+ [name]: newCheckedItems
125
+ }));
128
126
  });
129
- var selectRadio = react_utilities_1.useEventCallback(function (e, name, value) {
130
- var newCheckedItems = [value];
131
- setCheckedValues(function (s) {
132
- var _a;
133
-
134
- return tslib_1.__assign(tslib_1.__assign({}, s), (_a = {}, _a[name] = newCheckedItems, _a));
135
- });
127
+ const selectRadio = react_utilities_1.useEventCallback((e, name, value) => {
128
+ const newCheckedItems = [value];
129
+ setCheckedValues(s => ({ ...s,
130
+ [name]: newCheckedItems
131
+ }));
136
132
  onCheckedValueChange === null || onCheckedValueChange === void 0 ? void 0 : onCheckedValueChange(e, {
137
- name: name,
133
+ name,
138
134
  checkedItems: newCheckedItems
139
135
  });
140
136
  });
141
-
142
- var state = tslib_1.__assign(tslib_1.__assign({}, initialState), {
143
- setFocusByFirstCharacter: setFocusByFirstCharacter,
144
- selectRadio: selectRadio,
145
- toggleCheckbox: toggleCheckbox,
137
+ const state = { ...initialState,
138
+ setFocusByFirstCharacter,
139
+ selectRadio,
140
+ toggleCheckbox,
146
141
  checkedValues: checkedValues !== null && checkedValues !== void 0 ? checkedValues : {}
147
- });
148
-
142
+ };
149
143
  return state;
150
144
  };
151
145
 
152
- exports.useMenuList = useMenuList;
146
+ exports.useMenuList_unstable = useMenuList_unstable;
153
147
  /**
154
148
  * Adds some sugar to fetching multiple context selector values
155
149
  */
156
150
 
157
- var useMenuContextSelectors = function () {
158
- var checkedValues = menuContext_1.useMenuContext(function (context) {
159
- return context.checkedValues;
160
- });
161
- var onCheckedValueChange = menuContext_1.useMenuContext(function (context) {
162
- return context.onCheckedValueChange;
163
- });
164
- var defaultCheckedValues = menuContext_1.useMenuContext(function (context) {
165
- return context.defaultCheckedValues;
166
- });
167
- var triggerId = menuContext_1.useMenuContext(function (context) {
168
- return context.triggerId;
169
- });
170
- var hasIcons = menuContext_1.useMenuContext(function (context) {
171
- return context.hasIcons;
172
- });
173
- var hasCheckmarks = menuContext_1.useMenuContext(function (context) {
174
- return context.hasCheckmarks;
175
- });
151
+ const useMenuContextSelectors = () => {
152
+ const checkedValues = menuContext_1.useMenuContext_unstable(context => context.checkedValues);
153
+ const onCheckedValueChange = menuContext_1.useMenuContext_unstable(context => context.onCheckedValueChange);
154
+ const defaultCheckedValues = menuContext_1.useMenuContext_unstable(context => context.defaultCheckedValues);
155
+ const triggerId = menuContext_1.useMenuContext_unstable(context => context.triggerId);
156
+ const hasIcons = menuContext_1.useMenuContext_unstable(context => context.hasIcons);
157
+ const hasCheckmarks = menuContext_1.useMenuContext_unstable(context => context.hasCheckmarks);
176
158
  return {
177
- checkedValues: checkedValues,
178
- onCheckedValueChange: onCheckedValueChange,
179
- defaultCheckedValues: defaultCheckedValues,
180
- triggerId: triggerId,
181
- hasIcons: hasIcons,
182
- hasCheckmarks: hasCheckmarks
159
+ checkedValues,
160
+ onCheckedValueChange,
161
+ defaultCheckedValues,
162
+ triggerId,
163
+ hasIcons,
164
+ hasCheckmarks
183
165
  };
184
166
  };
185
167
  /**
@@ -187,10 +169,10 @@ var useMenuContextSelectors = function () {
187
169
  */
188
170
 
189
171
 
190
- var usingPropsAndMenuContext = function (props, contextValue, hasMenuContext) {
191
- var isUsingPropsAndContext = false;
172
+ const usingPropsAndMenuContext = (props, contextValue, hasMenuContext) => {
173
+ let isUsingPropsAndContext = false;
192
174
 
193
- for (var val in contextValue) {
175
+ for (const val in contextValue) {
194
176
  if (props[val]) {
195
177
  isUsingPropsAndContext = true;
196
178
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/MenuList/useMenuList.ts"],"names":[],"mappings":"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","sourceRoot":""}
1
+ {"version":3,"sources":["components/MenuList/useMenuList.ts"],"names":[],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport {\n useMergedRefs,\n useEventCallback,\n useControllableState,\n getNativeElementProps,\n} from '@fluentui/react-utilities';\nimport { useArrowNavigationGroup, useFocusFinders } from '@fluentui/react-tabster';\nimport { useHasParentContext } from '@fluentui/react-context-selector';\nimport { useMenuContext_unstable } from '../../contexts/menuContext';\nimport { MenuContext } from '../../contexts/menuContext';\nimport type { MenuListProps, MenuListState, UninitializedMenuListState } from './MenuList.types';\n\n/**\n * Returns the props and state required to render the component\n */\nexport const useMenuList_unstable = (props: MenuListProps, ref: React.Ref<HTMLElement>): MenuListState => {\n const focusAttributes = useArrowNavigationGroup({ circular: true });\n const { findAllFocusable } = useFocusFinders();\n const menuContext = useMenuContextSelectors();\n const hasMenuContext = useHasParentContext(MenuContext);\n\n if (usingPropsAndMenuContext(props, menuContext, hasMenuContext)) {\n // TODO throw warnings in development safely\n // eslint-disable-next-line no-console\n console.warn('You are using both MenuList and Menu props, we recommend you to use Menu props when available');\n }\n\n const innerRef = React.useRef<HTMLElement>(null);\n const initialState: UninitializedMenuListState = {\n components: {\n root: 'div',\n },\n root: getNativeElementProps('div', {\n ref: useMergedRefs(ref, innerRef),\n role: 'menu',\n 'aria-labelledby': menuContext.triggerId,\n ...focusAttributes,\n ...props,\n }),\n hasIcons: menuContext.hasIcons || false,\n hasCheckmarks: menuContext.hasCheckmarks || false,\n ...(hasMenuContext && menuContext),\n ...props,\n };\n\n const setFocusByFirstCharacter = React.useCallback(\n (e: React.KeyboardEvent<HTMLElement>, itemEl: HTMLElement) => {\n // TODO use some kind of children registration to reduce dependency on DOM roles\n const acceptedRoles = ['menuitem', 'menuitemcheckbox', 'menuitemradio'];\n if (!innerRef.current) {\n return;\n }\n\n const menuItems = findAllFocusable(\n innerRef.current,\n (el: HTMLElement) => el.hasAttribute('role') && acceptedRoles.indexOf(el.getAttribute('role')!) !== -1,\n );\n\n let startIndex = menuItems.indexOf(itemEl) + 1;\n if (startIndex === menuItems.length) {\n startIndex = 0;\n }\n\n const firstChars = menuItems.map(menuItem => menuItem.textContent?.charAt(0).toLowerCase());\n const char = e.key.toLowerCase();\n\n const getIndexFirstChars = (start: number, firstChar: string) => {\n for (let i = start; i < firstChars.length; i++) {\n if (char === firstChars[i]) {\n return i;\n }\n }\n return -1;\n };\n\n // Check remaining slots in the menu\n let index = getIndexFirstChars(startIndex, char);\n\n // If not found in remaining slots, check from beginning\n if (index === -1) {\n index = getIndexFirstChars(0, char);\n }\n\n // If match was found...\n if (index > -1) {\n menuItems[index].focus();\n }\n },\n [findAllFocusable],\n );\n\n const [checkedValues, setCheckedValues] = useControllableState({\n state: initialState.checkedValues,\n defaultState: initialState.defaultCheckedValues,\n initialState: {},\n });\n\n const { onCheckedValueChange } = initialState;\n const toggleCheckbox = useEventCallback(\n (e: React.MouseEvent | React.KeyboardEvent, name: string, value: string, checked: boolean) => {\n const checkedItems = checkedValues?.[name] || [];\n const newCheckedItems = [...checkedItems];\n if (checked) {\n newCheckedItems.splice(newCheckedItems.indexOf(value), 1);\n } else {\n newCheckedItems.push(value);\n }\n\n onCheckedValueChange?.(e, { name, checkedItems: newCheckedItems });\n setCheckedValues(s => ({ ...s, [name]: newCheckedItems }));\n },\n );\n\n const selectRadio = useEventCallback((e: React.MouseEvent | React.KeyboardEvent, name: string, value: string) => {\n const newCheckedItems = [value];\n setCheckedValues(s => ({ ...s, [name]: newCheckedItems }));\n onCheckedValueChange?.(e, { name, checkedItems: newCheckedItems });\n });\n\n const state = {\n ...initialState,\n setFocusByFirstCharacter,\n selectRadio,\n toggleCheckbox,\n checkedValues: checkedValues ?? {},\n };\n\n return state;\n};\n\n/**\n * Adds some sugar to fetching multiple context selector values\n */\nconst useMenuContextSelectors = () => {\n const checkedValues = useMenuContext_unstable(context => context.checkedValues);\n const onCheckedValueChange = useMenuContext_unstable(context => context.onCheckedValueChange);\n const defaultCheckedValues = useMenuContext_unstable(context => context.defaultCheckedValues);\n const triggerId = useMenuContext_unstable(context => context.triggerId);\n const hasIcons = useMenuContext_unstable(context => context.hasIcons);\n const hasCheckmarks = useMenuContext_unstable(context => context.hasCheckmarks);\n\n return {\n checkedValues,\n onCheckedValueChange,\n defaultCheckedValues,\n triggerId,\n hasIcons,\n hasCheckmarks,\n };\n};\n\n/**\n * Helper function to detect if props and MenuContext values are both used\n */\nconst usingPropsAndMenuContext = (\n props: MenuListProps,\n contextValue: ReturnType<typeof useMenuContextSelectors>,\n hasMenuContext: boolean,\n) => {\n let isUsingPropsAndContext = false;\n for (const val in contextValue) {\n if (props[val as keyof Omit<typeof contextValue, 'hasMenuContext' | 'onCheckedValueChange' | 'triggerId'>]) {\n isUsingPropsAndContext = true;\n }\n }\n\n return hasMenuContext && isUsingPropsAndContext;\n};\n"],"sourceRoot":"../src/"}