@fluentui/react-menu 0.0.0-nightly-20220302-0405.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 (554) hide show
  1. package/CHANGELOG.json +5046 -0
  2. package/CHANGELOG.md +1569 -0
  3. package/LICENSE +15 -0
  4. package/README.md +5 -0
  5. package/Spec.md +1039 -0
  6. package/dist/react-menu.d.ts +662 -0
  7. package/lib/Menu.d.ts +1 -0
  8. package/lib/Menu.js +2 -0
  9. package/lib/Menu.js.map +1 -0
  10. package/lib/MenuDivider.d.ts +1 -0
  11. package/lib/MenuDivider.js +2 -0
  12. package/lib/MenuDivider.js.map +1 -0
  13. package/lib/MenuGroup.d.ts +1 -0
  14. package/lib/MenuGroup.js +2 -0
  15. package/lib/MenuGroup.js.map +1 -0
  16. package/lib/MenuGroupHeader.d.ts +1 -0
  17. package/lib/MenuGroupHeader.js +2 -0
  18. package/lib/MenuGroupHeader.js.map +1 -0
  19. package/lib/MenuItem.d.ts +1 -0
  20. package/lib/MenuItem.js +2 -0
  21. package/lib/MenuItem.js.map +1 -0
  22. package/lib/MenuItemCheckbox.d.ts +1 -0
  23. package/lib/MenuItemCheckbox.js +2 -0
  24. package/lib/MenuItemCheckbox.js.map +1 -0
  25. package/lib/MenuItemRadio.d.ts +1 -0
  26. package/lib/MenuItemRadio.js +2 -0
  27. package/lib/MenuItemRadio.js.map +1 -0
  28. package/lib/MenuList.d.ts +1 -0
  29. package/lib/MenuList.js +2 -0
  30. package/lib/MenuList.js.map +1 -0
  31. package/lib/MenuPopover.d.ts +1 -0
  32. package/lib/MenuPopover.js +2 -0
  33. package/lib/MenuPopover.js.map +1 -0
  34. package/lib/MenuSplitGroup.d.ts +1 -0
  35. package/lib/MenuSplitGroup.js +2 -0
  36. package/lib/MenuSplitGroup.js.map +1 -0
  37. package/lib/MenuTrigger.d.ts +1 -0
  38. package/lib/MenuTrigger.js +2 -0
  39. package/lib/MenuTrigger.js.map +1 -0
  40. package/lib/components/Menu/Menu.d.ts +6 -0
  41. package/lib/components/Menu/Menu.js +14 -0
  42. package/lib/components/Menu/Menu.js.map +1 -0
  43. package/lib/components/Menu/Menu.types.d.ts +113 -0
  44. package/lib/components/Menu/Menu.types.js +2 -0
  45. package/lib/components/Menu/Menu.types.js.map +1 -0
  46. package/lib/components/Menu/index.d.ts +5 -0
  47. package/lib/components/Menu/index.js +6 -0
  48. package/lib/components/Menu/index.js.map +1 -0
  49. package/lib/components/Menu/renderMenu.d.ts +5 -0
  50. package/lib/components/Menu/renderMenu.js +12 -0
  51. package/lib/components/Menu/renderMenu.js.map +1 -0
  52. package/lib/components/Menu/useMenu.d.ts +10 -0
  53. package/lib/components/Menu/useMenu.js +260 -0
  54. package/lib/components/Menu/useMenu.js.map +1 -0
  55. package/lib/components/Menu/useMenuContextValues.d.ts +2 -0
  56. package/lib/components/Menu/useMenuContextValues.js +41 -0
  57. package/lib/components/Menu/useMenuContextValues.js.map +1 -0
  58. package/lib/components/MenuDivider/MenuDivider.d.ts +6 -0
  59. package/lib/components/MenuDivider/MenuDivider.js +15 -0
  60. package/lib/components/MenuDivider/MenuDivider.js.map +1 -0
  61. package/lib/components/MenuDivider/MenuDivider.types.d.ts +6 -0
  62. package/lib/components/MenuDivider/MenuDivider.types.js +2 -0
  63. package/lib/components/MenuDivider/MenuDivider.types.js.map +1 -0
  64. package/lib/components/MenuDivider/index.d.ts +5 -0
  65. package/lib/components/MenuDivider/index.js +6 -0
  66. package/lib/components/MenuDivider/index.js.map +1 -0
  67. package/lib/components/MenuDivider/renderMenuDivider.d.ts +6 -0
  68. package/lib/components/MenuDivider/renderMenuDivider.js +16 -0
  69. package/lib/components/MenuDivider/renderMenuDivider.js.map +1 -0
  70. package/lib/components/MenuDivider/useMenuDivider.d.ts +6 -0
  71. package/lib/components/MenuDivider/useMenuDivider.js +19 -0
  72. package/lib/components/MenuDivider/useMenuDivider.js.map +1 -0
  73. package/lib/components/MenuDivider/useMenuDividerStyles.d.ts +3 -0
  74. package/lib/components/MenuDivider/useMenuDividerStyles.js +24 -0
  75. package/lib/components/MenuDivider/useMenuDividerStyles.js.map +1 -0
  76. package/lib/components/MenuGroup/MenuGroup.d.ts +6 -0
  77. package/lib/components/MenuGroup/MenuGroup.js +17 -0
  78. package/lib/components/MenuGroup/MenuGroup.js.map +1 -0
  79. package/lib/components/MenuGroup/MenuGroup.types.d.ts +15 -0
  80. package/lib/components/MenuGroup/MenuGroup.types.js +2 -0
  81. package/lib/components/MenuGroup/MenuGroup.types.js.map +1 -0
  82. package/lib/components/MenuGroup/index.d.ts +6 -0
  83. package/lib/components/MenuGroup/index.js +7 -0
  84. package/lib/components/MenuGroup/index.js.map +1 -0
  85. package/lib/components/MenuGroup/renderMenuGroup.d.ts +6 -0
  86. package/lib/components/MenuGroup/renderMenuGroup.js +19 -0
  87. package/lib/components/MenuGroup/renderMenuGroup.js.map +1 -0
  88. package/lib/components/MenuGroup/useMenuGroup.d.ts +6 -0
  89. package/lib/components/MenuGroup/useMenuGroup.js +21 -0
  90. package/lib/components/MenuGroup/useMenuGroup.js.map +1 -0
  91. package/lib/components/MenuGroup/useMenuGroupContextValues.d.ts +2 -0
  92. package/lib/components/MenuGroup/useMenuGroupContextValues.js +13 -0
  93. package/lib/components/MenuGroup/useMenuGroupContextValues.js.map +1 -0
  94. package/lib/components/MenuGroup/useMenuGroupStyles.d.ts +3 -0
  95. package/lib/components/MenuGroup/useMenuGroupStyles.js +7 -0
  96. package/lib/components/MenuGroup/useMenuGroupStyles.js.map +1 -0
  97. package/lib/components/MenuGroupHeader/MenuGroupHeader.d.ts +6 -0
  98. package/lib/components/MenuGroupHeader/MenuGroupHeader.js +15 -0
  99. package/lib/components/MenuGroupHeader/MenuGroupHeader.js.map +1 -0
  100. package/lib/components/MenuGroupHeader/MenuGroupHeader.types.d.ts +6 -0
  101. package/lib/components/MenuGroupHeader/MenuGroupHeader.types.js +2 -0
  102. package/lib/components/MenuGroupHeader/MenuGroupHeader.types.js.map +1 -0
  103. package/lib/components/MenuGroupHeader/index.d.ts +5 -0
  104. package/lib/components/MenuGroupHeader/index.js +6 -0
  105. package/lib/components/MenuGroupHeader/index.js.map +1 -0
  106. package/lib/components/MenuGroupHeader/renderMenuGroupHeader.d.ts +6 -0
  107. package/lib/components/MenuGroupHeader/renderMenuGroupHeader.js +16 -0
  108. package/lib/components/MenuGroupHeader/renderMenuGroupHeader.js.map +1 -0
  109. package/lib/components/MenuGroupHeader/useMenuGroupHeader.d.ts +6 -0
  110. package/lib/components/MenuGroupHeader/useMenuGroupHeader.js +22 -0
  111. package/lib/components/MenuGroupHeader/useMenuGroupHeader.js.map +1 -0
  112. package/lib/components/MenuGroupHeader/useMenuGroupHeaderStyles.d.ts +3 -0
  113. package/lib/components/MenuGroupHeader/useMenuGroupHeaderStyles.js +25 -0
  114. package/lib/components/MenuGroupHeader/useMenuGroupHeaderStyles.js.map +1 -0
  115. package/lib/components/MenuItem/MenuItem.d.ts +6 -0
  116. package/lib/components/MenuItem/MenuItem.js +15 -0
  117. package/lib/components/MenuItem/MenuItem.js.map +1 -0
  118. package/lib/components/MenuItem/MenuItem.types.d.ts +43 -0
  119. package/lib/components/MenuItem/MenuItem.types.js +2 -0
  120. package/lib/components/MenuItem/MenuItem.types.js.map +1 -0
  121. package/lib/components/MenuItem/index.d.ts +5 -0
  122. package/lib/components/MenuItem/index.js +6 -0
  123. package/lib/components/MenuItem/index.js.map +1 -0
  124. package/lib/components/MenuItem/renderMenuItem.d.ts +5 -0
  125. package/lib/components/MenuItem/renderMenuItem.js +20 -0
  126. package/lib/components/MenuItem/renderMenuItem.js.map +1 -0
  127. package/lib/components/MenuItem/useCharacterSearch.d.ts +3 -0
  128. package/lib/components/MenuItem/useCharacterSearch.js +26 -0
  129. package/lib/components/MenuItem/useCharacterSearch.js.map +1 -0
  130. package/lib/components/MenuItem/useMenuItem.d.ts +6 -0
  131. package/lib/components/MenuItem/useMenuItem.js +125 -0
  132. package/lib/components/MenuItem/useMenuItem.js.map +1 -0
  133. package/lib/components/MenuItem/useMenuItemStyles.d.ts +4 -0
  134. package/lib/components/MenuItem/useMenuItemStyles.js +107 -0
  135. package/lib/components/MenuItem/useMenuItemStyles.js.map +1 -0
  136. package/lib/components/MenuItemCheckbox/MenuItemCheckbox.d.ts +6 -0
  137. package/lib/components/MenuItemCheckbox/MenuItemCheckbox.js +15 -0
  138. package/lib/components/MenuItemCheckbox/MenuItemCheckbox.js.map +1 -0
  139. package/lib/components/MenuItemCheckbox/MenuItemCheckbox.types.d.ts +4 -0
  140. package/lib/components/MenuItemCheckbox/MenuItemCheckbox.types.js +2 -0
  141. package/lib/components/MenuItemCheckbox/MenuItemCheckbox.types.js.map +1 -0
  142. package/lib/components/MenuItemCheckbox/index.d.ts +5 -0
  143. package/lib/components/MenuItemCheckbox/index.js +6 -0
  144. package/lib/components/MenuItemCheckbox/index.js.map +1 -0
  145. package/lib/components/MenuItemCheckbox/renderMenuItemCheckbox.d.ts +3 -0
  146. package/lib/components/MenuItemCheckbox/renderMenuItemCheckbox.js +17 -0
  147. package/lib/components/MenuItemCheckbox/renderMenuItemCheckbox.js.map +1 -0
  148. package/lib/components/MenuItemCheckbox/useMenuItemCheckbox.d.ts +4 -0
  149. package/lib/components/MenuItemCheckbox/useMenuItemCheckbox.js +46 -0
  150. package/lib/components/MenuItemCheckbox/useMenuItemCheckbox.js.map +1 -0
  151. package/lib/components/MenuItemCheckbox/useMenuItemCheckboxStyles.d.ts +3 -0
  152. package/lib/components/MenuItemCheckbox/useMenuItemCheckboxStyles.js +10 -0
  153. package/lib/components/MenuItemCheckbox/useMenuItemCheckboxStyles.js.map +1 -0
  154. package/lib/components/MenuItemRadio/MenuItemRadio.d.ts +6 -0
  155. package/lib/components/MenuItemRadio/MenuItemRadio.js +15 -0
  156. package/lib/components/MenuItemRadio/MenuItemRadio.js.map +1 -0
  157. package/lib/components/MenuItemRadio/MenuItemRadio.types.d.ts +4 -0
  158. package/lib/components/MenuItemRadio/MenuItemRadio.types.js +2 -0
  159. package/lib/components/MenuItemRadio/MenuItemRadio.types.js.map +1 -0
  160. package/lib/components/MenuItemRadio/index.d.ts +5 -0
  161. package/lib/components/MenuItemRadio/index.js +6 -0
  162. package/lib/components/MenuItemRadio/index.js.map +1 -0
  163. package/lib/components/MenuItemRadio/renderMenuItemRadio.d.ts +6 -0
  164. package/lib/components/MenuItemRadio/renderMenuItemRadio.js +20 -0
  165. package/lib/components/MenuItemRadio/renderMenuItemRadio.js.map +1 -0
  166. package/lib/components/MenuItemRadio/useMenuItemRadio.d.ts +6 -0
  167. package/lib/components/MenuItemRadio/useMenuItemRadio.js +49 -0
  168. package/lib/components/MenuItemRadio/useMenuItemRadio.js.map +1 -0
  169. package/lib/components/MenuItemRadio/useMenuItemRadioStyles.d.ts +3 -0
  170. package/lib/components/MenuItemRadio/useMenuItemRadioStyles.js +10 -0
  171. package/lib/components/MenuItemRadio/useMenuItemRadioStyles.js.map +1 -0
  172. package/lib/components/MenuList/MenuList.d.ts +6 -0
  173. package/lib/components/MenuList/MenuList.js +17 -0
  174. package/lib/components/MenuList/MenuList.js.map +1 -0
  175. package/lib/components/MenuList/MenuList.types.d.ts +55 -0
  176. package/lib/components/MenuList/MenuList.types.js +2 -0
  177. package/lib/components/MenuList/MenuList.types.js.map +1 -0
  178. package/lib/components/MenuList/index.d.ts +6 -0
  179. package/lib/components/MenuList/index.js +6 -0
  180. package/lib/components/MenuList/index.js.map +1 -0
  181. package/lib/components/MenuList/renderMenuList.d.ts +5 -0
  182. package/lib/components/MenuList/renderMenuList.js +18 -0
  183. package/lib/components/MenuList/renderMenuList.js.map +1 -0
  184. package/lib/components/MenuList/useMenuList.d.ts +6 -0
  185. package/lib/components/MenuList/useMenuList.js +168 -0
  186. package/lib/components/MenuList/useMenuList.js.map +1 -0
  187. package/lib/components/MenuList/useMenuListContextValues.d.ts +2 -0
  188. package/lib/components/MenuList/useMenuListContextValues.js +25 -0
  189. package/lib/components/MenuList/useMenuListContextValues.js.map +1 -0
  190. package/lib/components/MenuList/useMenuListStyles.d.ts +6 -0
  191. package/lib/components/MenuList/useMenuListStyles.js +24 -0
  192. package/lib/components/MenuList/useMenuListStyles.js.map +1 -0
  193. package/lib/components/MenuPopover/MenuPopover.d.ts +6 -0
  194. package/lib/components/MenuPopover/MenuPopover.js +15 -0
  195. package/lib/components/MenuPopover/MenuPopover.js.map +1 -0
  196. package/lib/components/MenuPopover/MenuPopover.types.d.ts +18 -0
  197. package/lib/components/MenuPopover/MenuPopover.types.js +2 -0
  198. package/lib/components/MenuPopover/MenuPopover.types.js.map +1 -0
  199. package/lib/components/MenuPopover/index.d.ts +5 -0
  200. package/lib/components/MenuPopover/index.js +6 -0
  201. package/lib/components/MenuPopover/index.js.map +1 -0
  202. package/lib/components/MenuPopover/renderMenuPopover.d.ts +5 -0
  203. package/lib/components/MenuPopover/renderMenuPopover.js +22 -0
  204. package/lib/components/MenuPopover/renderMenuPopover.js.map +1 -0
  205. package/lib/components/MenuPopover/useMenuPopover.d.ts +12 -0
  206. package/lib/components/MenuPopover/useMenuPopover.js +104 -0
  207. package/lib/components/MenuPopover/useMenuPopover.js.map +1 -0
  208. package/lib/components/MenuPopover/useMenuPopoverStyles.d.ts +6 -0
  209. package/lib/components/MenuPopover/useMenuPopoverStyles.js +46 -0
  210. package/lib/components/MenuPopover/useMenuPopoverStyles.js.map +1 -0
  211. package/lib/components/MenuSplitGroup/MenuSplitGroup.d.ts +6 -0
  212. package/lib/components/MenuSplitGroup/MenuSplitGroup.js +15 -0
  213. package/lib/components/MenuSplitGroup/MenuSplitGroup.js.map +1 -0
  214. package/lib/components/MenuSplitGroup/MenuSplitGroup.types.d.ts +14 -0
  215. package/lib/components/MenuSplitGroup/MenuSplitGroup.types.js +2 -0
  216. package/lib/components/MenuSplitGroup/MenuSplitGroup.types.js.map +1 -0
  217. package/lib/components/MenuSplitGroup/index.d.ts +5 -0
  218. package/lib/components/MenuSplitGroup/index.js +6 -0
  219. package/lib/components/MenuSplitGroup/index.js.map +1 -0
  220. package/lib/components/MenuSplitGroup/renderMenuSplitGroup.d.ts +5 -0
  221. package/lib/components/MenuSplitGroup/renderMenuSplitGroup.js +15 -0
  222. package/lib/components/MenuSplitGroup/renderMenuSplitGroup.js.map +1 -0
  223. package/lib/components/MenuSplitGroup/useMenuSplitGroup.d.ts +12 -0
  224. package/lib/components/MenuSplitGroup/useMenuSplitGroup.js +67 -0
  225. package/lib/components/MenuSplitGroup/useMenuSplitGroup.js.map +1 -0
  226. package/lib/components/MenuSplitGroup/useMenuSplitGroupStyles.d.ts +6 -0
  227. package/lib/components/MenuSplitGroup/useMenuSplitGroupStyles.js +35 -0
  228. package/lib/components/MenuSplitGroup/useMenuSplitGroupStyles.js.map +1 -0
  229. package/lib/components/MenuTrigger/MenuTrigger.d.ts +8 -0
  230. package/lib/components/MenuTrigger/MenuTrigger.js +14 -0
  231. package/lib/components/MenuTrigger/MenuTrigger.js.map +1 -0
  232. package/lib/components/MenuTrigger/MenuTrigger.types.d.ts +20 -0
  233. package/lib/components/MenuTrigger/MenuTrigger.types.js +2 -0
  234. package/lib/components/MenuTrigger/MenuTrigger.types.js.map +1 -0
  235. package/lib/components/MenuTrigger/index.d.ts +4 -0
  236. package/lib/components/MenuTrigger/index.js +5 -0
  237. package/lib/components/MenuTrigger/index.js.map +1 -0
  238. package/lib/components/MenuTrigger/renderMenuTrigger.d.ts +7 -0
  239. package/lib/components/MenuTrigger/renderMenuTrigger.js +14 -0
  240. package/lib/components/MenuTrigger/renderMenuTrigger.js.map +1 -0
  241. package/lib/components/MenuTrigger/useMenuTrigger.d.ts +8 -0
  242. package/lib/components/MenuTrigger/useMenuTrigger.js +178 -0
  243. package/lib/components/MenuTrigger/useMenuTrigger.js.map +1 -0
  244. package/lib/components/index.d.ts +2 -0
  245. package/lib/components/index.js +3 -0
  246. package/lib/components/index.js.map +1 -0
  247. package/lib/contexts/menuContext.d.ts +16 -0
  248. package/lib/contexts/menuContext.js +23 -0
  249. package/lib/contexts/menuContext.js.map +1 -0
  250. package/lib/contexts/menuGroupContext.d.ts +13 -0
  251. package/lib/contexts/menuGroupContext.js +7 -0
  252. package/lib/contexts/menuGroupContext.js.map +1 -0
  253. package/lib/contexts/menuListContext.d.ts +15 -0
  254. package/lib/contexts/menuListContext.js +13 -0
  255. package/lib/contexts/menuListContext.js.map +1 -0
  256. package/lib/contexts/menuTriggerContext.d.ts +3 -0
  257. package/lib/contexts/menuTriggerContext.js +9 -0
  258. package/lib/contexts/menuTriggerContext.js.map +1 -0
  259. package/lib/index.d.ts +16 -0
  260. package/lib/index.js +17 -0
  261. package/lib/index.js.map +1 -0
  262. package/lib/selectable/index.d.ts +2 -0
  263. package/lib/selectable/index.js +3 -0
  264. package/lib/selectable/index.js.map +1 -0
  265. package/lib/selectable/types.d.ts +34 -0
  266. package/lib/selectable/types.js +2 -0
  267. package/lib/selectable/types.js.map +1 -0
  268. package/lib/selectable/useCheckmarkStyles.d.ts +8 -0
  269. package/lib/selectable/useCheckmarkStyles.js +29 -0
  270. package/lib/selectable/useCheckmarkStyles.js.map +1 -0
  271. package/lib/tsdoc-metadata.json +11 -0
  272. package/lib/utils/index.d.ts +1 -0
  273. package/lib/utils/index.js +2 -0
  274. package/lib/utils/index.js.map +1 -0
  275. package/lib/utils/useIsSubmenu.d.ts +9 -0
  276. package/lib/utils/useIsSubmenu.js +18 -0
  277. package/lib/utils/useIsSubmenu.js.map +1 -0
  278. package/lib/utils/useOnMenuEnter.d.ts +23 -0
  279. package/lib/utils/useOnMenuEnter.js +72 -0
  280. package/lib/utils/useOnMenuEnter.js.map +1 -0
  281. package/lib-commonjs/Menu.d.ts +1 -0
  282. package/lib-commonjs/Menu.js +10 -0
  283. package/lib-commonjs/Menu.js.map +1 -0
  284. package/lib-commonjs/MenuDivider.d.ts +1 -0
  285. package/lib-commonjs/MenuDivider.js +10 -0
  286. package/lib-commonjs/MenuDivider.js.map +1 -0
  287. package/lib-commonjs/MenuGroup.d.ts +1 -0
  288. package/lib-commonjs/MenuGroup.js +10 -0
  289. package/lib-commonjs/MenuGroup.js.map +1 -0
  290. package/lib-commonjs/MenuGroupHeader.d.ts +1 -0
  291. package/lib-commonjs/MenuGroupHeader.js +10 -0
  292. package/lib-commonjs/MenuGroupHeader.js.map +1 -0
  293. package/lib-commonjs/MenuItem.d.ts +1 -0
  294. package/lib-commonjs/MenuItem.js +10 -0
  295. package/lib-commonjs/MenuItem.js.map +1 -0
  296. package/lib-commonjs/MenuItemCheckbox.d.ts +1 -0
  297. package/lib-commonjs/MenuItemCheckbox.js +10 -0
  298. package/lib-commonjs/MenuItemCheckbox.js.map +1 -0
  299. package/lib-commonjs/MenuItemRadio.d.ts +1 -0
  300. package/lib-commonjs/MenuItemRadio.js +10 -0
  301. package/lib-commonjs/MenuItemRadio.js.map +1 -0
  302. package/lib-commonjs/MenuList.d.ts +1 -0
  303. package/lib-commonjs/MenuList.js +10 -0
  304. package/lib-commonjs/MenuList.js.map +1 -0
  305. package/lib-commonjs/MenuPopover.d.ts +1 -0
  306. package/lib-commonjs/MenuPopover.js +10 -0
  307. package/lib-commonjs/MenuPopover.js.map +1 -0
  308. package/lib-commonjs/MenuSplitGroup.d.ts +1 -0
  309. package/lib-commonjs/MenuSplitGroup.js +10 -0
  310. package/lib-commonjs/MenuSplitGroup.js.map +1 -0
  311. package/lib-commonjs/MenuTrigger.d.ts +1 -0
  312. package/lib-commonjs/MenuTrigger.js +10 -0
  313. package/lib-commonjs/MenuTrigger.js.map +1 -0
  314. package/lib-commonjs/components/Menu/Menu.d.ts +6 -0
  315. package/lib-commonjs/components/Menu/Menu.js +26 -0
  316. package/lib-commonjs/components/Menu/Menu.js.map +1 -0
  317. package/lib-commonjs/components/Menu/Menu.types.d.ts +113 -0
  318. package/lib-commonjs/components/Menu/Menu.types.js +6 -0
  319. package/lib-commonjs/components/Menu/Menu.types.js.map +1 -0
  320. package/lib-commonjs/components/Menu/index.d.ts +5 -0
  321. package/lib-commonjs/components/Menu/index.js +18 -0
  322. package/lib-commonjs/components/Menu/index.js.map +1 -0
  323. package/lib-commonjs/components/Menu/renderMenu.d.ts +5 -0
  324. package/lib-commonjs/components/Menu/renderMenu.js +23 -0
  325. package/lib-commonjs/components/Menu/renderMenu.js.map +1 -0
  326. package/lib-commonjs/components/Menu/useMenu.d.ts +10 -0
  327. package/lib-commonjs/components/Menu/useMenu.js +278 -0
  328. package/lib-commonjs/components/Menu/useMenu.js.map +1 -0
  329. package/lib-commonjs/components/Menu/useMenuContextValues.d.ts +2 -0
  330. package/lib-commonjs/components/Menu/useMenuContextValues.js +50 -0
  331. package/lib-commonjs/components/Menu/useMenuContextValues.js.map +1 -0
  332. package/lib-commonjs/components/MenuDivider/MenuDivider.d.ts +6 -0
  333. package/lib-commonjs/components/MenuDivider/MenuDivider.js +26 -0
  334. package/lib-commonjs/components/MenuDivider/MenuDivider.js.map +1 -0
  335. package/lib-commonjs/components/MenuDivider/MenuDivider.types.d.ts +6 -0
  336. package/lib-commonjs/components/MenuDivider/MenuDivider.types.js +6 -0
  337. package/lib-commonjs/components/MenuDivider/MenuDivider.types.js.map +1 -0
  338. package/lib-commonjs/components/MenuDivider/index.d.ts +5 -0
  339. package/lib-commonjs/components/MenuDivider/index.js +18 -0
  340. package/lib-commonjs/components/MenuDivider/index.js.map +1 -0
  341. package/lib-commonjs/components/MenuDivider/renderMenuDivider.d.ts +6 -0
  342. package/lib-commonjs/components/MenuDivider/renderMenuDivider.js +27 -0
  343. package/lib-commonjs/components/MenuDivider/renderMenuDivider.js.map +1 -0
  344. package/lib-commonjs/components/MenuDivider/useMenuDivider.d.ts +6 -0
  345. package/lib-commonjs/components/MenuDivider/useMenuDivider.js +29 -0
  346. package/lib-commonjs/components/MenuDivider/useMenuDivider.js.map +1 -0
  347. package/lib-commonjs/components/MenuDivider/useMenuDividerStyles.d.ts +3 -0
  348. package/lib-commonjs/components/MenuDivider/useMenuDividerStyles.js +35 -0
  349. package/lib-commonjs/components/MenuDivider/useMenuDividerStyles.js.map +1 -0
  350. package/lib-commonjs/components/MenuGroup/MenuGroup.d.ts +6 -0
  351. package/lib-commonjs/components/MenuGroup/MenuGroup.js +29 -0
  352. package/lib-commonjs/components/MenuGroup/MenuGroup.js.map +1 -0
  353. package/lib-commonjs/components/MenuGroup/MenuGroup.types.d.ts +15 -0
  354. package/lib-commonjs/components/MenuGroup/MenuGroup.types.js +6 -0
  355. package/lib-commonjs/components/MenuGroup/MenuGroup.types.js.map +1 -0
  356. package/lib-commonjs/components/MenuGroup/index.d.ts +6 -0
  357. package/lib-commonjs/components/MenuGroup/index.js +20 -0
  358. package/lib-commonjs/components/MenuGroup/index.js.map +1 -0
  359. package/lib-commonjs/components/MenuGroup/renderMenuGroup.d.ts +6 -0
  360. package/lib-commonjs/components/MenuGroup/renderMenuGroup.js +31 -0
  361. package/lib-commonjs/components/MenuGroup/renderMenuGroup.js.map +1 -0
  362. package/lib-commonjs/components/MenuGroup/useMenuGroup.d.ts +6 -0
  363. package/lib-commonjs/components/MenuGroup/useMenuGroup.js +31 -0
  364. package/lib-commonjs/components/MenuGroup/useMenuGroup.js.map +1 -0
  365. package/lib-commonjs/components/MenuGroup/useMenuGroupContextValues.d.ts +2 -0
  366. package/lib-commonjs/components/MenuGroup/useMenuGroupContextValues.js +23 -0
  367. package/lib-commonjs/components/MenuGroup/useMenuGroupContextValues.js.map +1 -0
  368. package/lib-commonjs/components/MenuGroup/useMenuGroupStyles.d.ts +3 -0
  369. package/lib-commonjs/components/MenuGroup/useMenuGroupStyles.js +18 -0
  370. package/lib-commonjs/components/MenuGroup/useMenuGroupStyles.js.map +1 -0
  371. package/lib-commonjs/components/MenuGroupHeader/MenuGroupHeader.d.ts +6 -0
  372. package/lib-commonjs/components/MenuGroupHeader/MenuGroupHeader.js +26 -0
  373. package/lib-commonjs/components/MenuGroupHeader/MenuGroupHeader.js.map +1 -0
  374. package/lib-commonjs/components/MenuGroupHeader/MenuGroupHeader.types.d.ts +6 -0
  375. package/lib-commonjs/components/MenuGroupHeader/MenuGroupHeader.types.js +6 -0
  376. package/lib-commonjs/components/MenuGroupHeader/MenuGroupHeader.types.js.map +1 -0
  377. package/lib-commonjs/components/MenuGroupHeader/index.d.ts +5 -0
  378. package/lib-commonjs/components/MenuGroupHeader/index.js +18 -0
  379. package/lib-commonjs/components/MenuGroupHeader/index.js.map +1 -0
  380. package/lib-commonjs/components/MenuGroupHeader/renderMenuGroupHeader.d.ts +6 -0
  381. package/lib-commonjs/components/MenuGroupHeader/renderMenuGroupHeader.js +27 -0
  382. package/lib-commonjs/components/MenuGroupHeader/renderMenuGroupHeader.js.map +1 -0
  383. package/lib-commonjs/components/MenuGroupHeader/useMenuGroupHeader.d.ts +6 -0
  384. package/lib-commonjs/components/MenuGroupHeader/useMenuGroupHeader.js +33 -0
  385. package/lib-commonjs/components/MenuGroupHeader/useMenuGroupHeader.js.map +1 -0
  386. package/lib-commonjs/components/MenuGroupHeader/useMenuGroupHeaderStyles.d.ts +3 -0
  387. package/lib-commonjs/components/MenuGroupHeader/useMenuGroupHeaderStyles.js +36 -0
  388. package/lib-commonjs/components/MenuGroupHeader/useMenuGroupHeaderStyles.js.map +1 -0
  389. package/lib-commonjs/components/MenuItem/MenuItem.d.ts +6 -0
  390. package/lib-commonjs/components/MenuItem/MenuItem.js +26 -0
  391. package/lib-commonjs/components/MenuItem/MenuItem.js.map +1 -0
  392. package/lib-commonjs/components/MenuItem/MenuItem.types.d.ts +43 -0
  393. package/lib-commonjs/components/MenuItem/MenuItem.types.js +6 -0
  394. package/lib-commonjs/components/MenuItem/MenuItem.types.js.map +1 -0
  395. package/lib-commonjs/components/MenuItem/index.d.ts +5 -0
  396. package/lib-commonjs/components/MenuItem/index.js +18 -0
  397. package/lib-commonjs/components/MenuItem/index.js.map +1 -0
  398. package/lib-commonjs/components/MenuItem/renderMenuItem.d.ts +5 -0
  399. package/lib-commonjs/components/MenuItem/renderMenuItem.js +31 -0
  400. package/lib-commonjs/components/MenuItem/renderMenuItem.js.map +1 -0
  401. package/lib-commonjs/components/MenuItem/useCharacterSearch.d.ts +3 -0
  402. package/lib-commonjs/components/MenuItem/useCharacterSearch.js +36 -0
  403. package/lib-commonjs/components/MenuItem/useCharacterSearch.js.map +1 -0
  404. package/lib-commonjs/components/MenuItem/useMenuItem.d.ts +6 -0
  405. package/lib-commonjs/components/MenuItem/useMenuItem.js +142 -0
  406. package/lib-commonjs/components/MenuItem/useMenuItem.js.map +1 -0
  407. package/lib-commonjs/components/MenuItem/useMenuItemStyles.d.ts +4 -0
  408. package/lib-commonjs/components/MenuItem/useMenuItemStyles.js +120 -0
  409. package/lib-commonjs/components/MenuItem/useMenuItemStyles.js.map +1 -0
  410. package/lib-commonjs/components/MenuItemCheckbox/MenuItemCheckbox.d.ts +6 -0
  411. package/lib-commonjs/components/MenuItemCheckbox/MenuItemCheckbox.js +26 -0
  412. package/lib-commonjs/components/MenuItemCheckbox/MenuItemCheckbox.js.map +1 -0
  413. package/lib-commonjs/components/MenuItemCheckbox/MenuItemCheckbox.types.d.ts +4 -0
  414. package/lib-commonjs/components/MenuItemCheckbox/MenuItemCheckbox.types.js +6 -0
  415. package/lib-commonjs/components/MenuItemCheckbox/MenuItemCheckbox.types.js.map +1 -0
  416. package/lib-commonjs/components/MenuItemCheckbox/index.d.ts +5 -0
  417. package/lib-commonjs/components/MenuItemCheckbox/index.js +18 -0
  418. package/lib-commonjs/components/MenuItemCheckbox/index.js.map +1 -0
  419. package/lib-commonjs/components/MenuItemCheckbox/renderMenuItemCheckbox.d.ts +3 -0
  420. package/lib-commonjs/components/MenuItemCheckbox/renderMenuItemCheckbox.js +28 -0
  421. package/lib-commonjs/components/MenuItemCheckbox/renderMenuItemCheckbox.js.map +1 -0
  422. package/lib-commonjs/components/MenuItemCheckbox/useMenuItemCheckbox.d.ts +4 -0
  423. package/lib-commonjs/components/MenuItemCheckbox/useMenuItemCheckbox.js +60 -0
  424. package/lib-commonjs/components/MenuItemCheckbox/useMenuItemCheckbox.js.map +1 -0
  425. package/lib-commonjs/components/MenuItemCheckbox/useMenuItemCheckboxStyles.d.ts +3 -0
  426. package/lib-commonjs/components/MenuItemCheckbox/useMenuItemCheckboxStyles.js +23 -0
  427. package/lib-commonjs/components/MenuItemCheckbox/useMenuItemCheckboxStyles.js.map +1 -0
  428. package/lib-commonjs/components/MenuItemRadio/MenuItemRadio.d.ts +6 -0
  429. package/lib-commonjs/components/MenuItemRadio/MenuItemRadio.js +26 -0
  430. package/lib-commonjs/components/MenuItemRadio/MenuItemRadio.js.map +1 -0
  431. package/lib-commonjs/components/MenuItemRadio/MenuItemRadio.types.d.ts +4 -0
  432. package/lib-commonjs/components/MenuItemRadio/MenuItemRadio.types.js +6 -0
  433. package/lib-commonjs/components/MenuItemRadio/MenuItemRadio.types.js.map +1 -0
  434. package/lib-commonjs/components/MenuItemRadio/index.d.ts +5 -0
  435. package/lib-commonjs/components/MenuItemRadio/index.js +18 -0
  436. package/lib-commonjs/components/MenuItemRadio/index.js.map +1 -0
  437. package/lib-commonjs/components/MenuItemRadio/renderMenuItemRadio.d.ts +6 -0
  438. package/lib-commonjs/components/MenuItemRadio/renderMenuItemRadio.js +31 -0
  439. package/lib-commonjs/components/MenuItemRadio/renderMenuItemRadio.js.map +1 -0
  440. package/lib-commonjs/components/MenuItemRadio/useMenuItemRadio.d.ts +6 -0
  441. package/lib-commonjs/components/MenuItemRadio/useMenuItemRadio.js +63 -0
  442. package/lib-commonjs/components/MenuItemRadio/useMenuItemRadio.js.map +1 -0
  443. package/lib-commonjs/components/MenuItemRadio/useMenuItemRadioStyles.d.ts +3 -0
  444. package/lib-commonjs/components/MenuItemRadio/useMenuItemRadioStyles.js +23 -0
  445. package/lib-commonjs/components/MenuItemRadio/useMenuItemRadioStyles.js.map +1 -0
  446. package/lib-commonjs/components/MenuList/MenuList.d.ts +6 -0
  447. package/lib-commonjs/components/MenuList/MenuList.js +29 -0
  448. package/lib-commonjs/components/MenuList/MenuList.js.map +1 -0
  449. package/lib-commonjs/components/MenuList/MenuList.types.d.ts +55 -0
  450. package/lib-commonjs/components/MenuList/MenuList.types.js +6 -0
  451. package/lib-commonjs/components/MenuList/MenuList.types.js.map +1 -0
  452. package/lib-commonjs/components/MenuList/index.d.ts +6 -0
  453. package/lib-commonjs/components/MenuList/index.js +18 -0
  454. package/lib-commonjs/components/MenuList/index.js.map +1 -0
  455. package/lib-commonjs/components/MenuList/renderMenuList.d.ts +5 -0
  456. package/lib-commonjs/components/MenuList/renderMenuList.js +30 -0
  457. package/lib-commonjs/components/MenuList/renderMenuList.js.map +1 -0
  458. package/lib-commonjs/components/MenuList/useMenuList.d.ts +6 -0
  459. package/lib-commonjs/components/MenuList/useMenuList.js +183 -0
  460. package/lib-commonjs/components/MenuList/useMenuList.js.map +1 -0
  461. package/lib-commonjs/components/MenuList/useMenuListContextValues.d.ts +2 -0
  462. package/lib-commonjs/components/MenuList/useMenuListContextValues.js +34 -0
  463. package/lib-commonjs/components/MenuList/useMenuListContextValues.js.map +1 -0
  464. package/lib-commonjs/components/MenuList/useMenuListStyles.d.ts +6 -0
  465. package/lib-commonjs/components/MenuList/useMenuListStyles.js +34 -0
  466. package/lib-commonjs/components/MenuList/useMenuListStyles.js.map +1 -0
  467. package/lib-commonjs/components/MenuPopover/MenuPopover.d.ts +6 -0
  468. package/lib-commonjs/components/MenuPopover/MenuPopover.js +26 -0
  469. package/lib-commonjs/components/MenuPopover/MenuPopover.js.map +1 -0
  470. package/lib-commonjs/components/MenuPopover/MenuPopover.types.d.ts +18 -0
  471. package/lib-commonjs/components/MenuPopover/MenuPopover.types.js +6 -0
  472. package/lib-commonjs/components/MenuPopover/MenuPopover.types.js.map +1 -0
  473. package/lib-commonjs/components/MenuPopover/index.d.ts +5 -0
  474. package/lib-commonjs/components/MenuPopover/index.js +18 -0
  475. package/lib-commonjs/components/MenuPopover/index.js.map +1 -0
  476. package/lib-commonjs/components/MenuPopover/renderMenuPopover.d.ts +5 -0
  477. package/lib-commonjs/components/MenuPopover/renderMenuPopover.js +34 -0
  478. package/lib-commonjs/components/MenuPopover/renderMenuPopover.js.map +1 -0
  479. package/lib-commonjs/components/MenuPopover/useMenuPopover.d.ts +12 -0
  480. package/lib-commonjs/components/MenuPopover/useMenuPopover.js +120 -0
  481. package/lib-commonjs/components/MenuPopover/useMenuPopover.js.map +1 -0
  482. package/lib-commonjs/components/MenuPopover/useMenuPopoverStyles.d.ts +6 -0
  483. package/lib-commonjs/components/MenuPopover/useMenuPopoverStyles.js +57 -0
  484. package/lib-commonjs/components/MenuPopover/useMenuPopoverStyles.js.map +1 -0
  485. package/lib-commonjs/components/MenuSplitGroup/MenuSplitGroup.d.ts +6 -0
  486. package/lib-commonjs/components/MenuSplitGroup/MenuSplitGroup.js +26 -0
  487. package/lib-commonjs/components/MenuSplitGroup/MenuSplitGroup.js.map +1 -0
  488. package/lib-commonjs/components/MenuSplitGroup/MenuSplitGroup.types.d.ts +14 -0
  489. package/lib-commonjs/components/MenuSplitGroup/MenuSplitGroup.types.js +6 -0
  490. package/lib-commonjs/components/MenuSplitGroup/MenuSplitGroup.types.js.map +1 -0
  491. package/lib-commonjs/components/MenuSplitGroup/index.d.ts +5 -0
  492. package/lib-commonjs/components/MenuSplitGroup/index.js +18 -0
  493. package/lib-commonjs/components/MenuSplitGroup/index.js.map +1 -0
  494. package/lib-commonjs/components/MenuSplitGroup/renderMenuSplitGroup.d.ts +5 -0
  495. package/lib-commonjs/components/MenuSplitGroup/renderMenuSplitGroup.js +26 -0
  496. package/lib-commonjs/components/MenuSplitGroup/renderMenuSplitGroup.js.map +1 -0
  497. package/lib-commonjs/components/MenuSplitGroup/useMenuSplitGroup.d.ts +12 -0
  498. package/lib-commonjs/components/MenuSplitGroup/useMenuSplitGroup.js +81 -0
  499. package/lib-commonjs/components/MenuSplitGroup/useMenuSplitGroup.js.map +1 -0
  500. package/lib-commonjs/components/MenuSplitGroup/useMenuSplitGroupStyles.d.ts +6 -0
  501. package/lib-commonjs/components/MenuSplitGroup/useMenuSplitGroupStyles.js +47 -0
  502. package/lib-commonjs/components/MenuSplitGroup/useMenuSplitGroupStyles.js.map +1 -0
  503. package/lib-commonjs/components/MenuTrigger/MenuTrigger.d.ts +8 -0
  504. package/lib-commonjs/components/MenuTrigger/MenuTrigger.js +25 -0
  505. package/lib-commonjs/components/MenuTrigger/MenuTrigger.js.map +1 -0
  506. package/lib-commonjs/components/MenuTrigger/MenuTrigger.types.d.ts +20 -0
  507. package/lib-commonjs/components/MenuTrigger/MenuTrigger.types.js +6 -0
  508. package/lib-commonjs/components/MenuTrigger/MenuTrigger.types.js.map +1 -0
  509. package/lib-commonjs/components/MenuTrigger/index.d.ts +4 -0
  510. package/lib-commonjs/components/MenuTrigger/index.js +16 -0
  511. package/lib-commonjs/components/MenuTrigger/index.js.map +1 -0
  512. package/lib-commonjs/components/MenuTrigger/renderMenuTrigger.d.ts +7 -0
  513. package/lib-commonjs/components/MenuTrigger/renderMenuTrigger.js +25 -0
  514. package/lib-commonjs/components/MenuTrigger/renderMenuTrigger.js.map +1 -0
  515. package/lib-commonjs/components/MenuTrigger/useMenuTrigger.d.ts +8 -0
  516. package/lib-commonjs/components/MenuTrigger/useMenuTrigger.js +195 -0
  517. package/lib-commonjs/components/MenuTrigger/useMenuTrigger.js.map +1 -0
  518. package/lib-commonjs/components/index.d.ts +2 -0
  519. package/lib-commonjs/components/index.js +12 -0
  520. package/lib-commonjs/components/index.js.map +1 -0
  521. package/lib-commonjs/contexts/menuContext.d.ts +16 -0
  522. package/lib-commonjs/contexts/menuContext.js +34 -0
  523. package/lib-commonjs/contexts/menuContext.js.map +1 -0
  524. package/lib-commonjs/contexts/menuGroupContext.d.ts +13 -0
  525. package/lib-commonjs/contexts/menuGroupContext.js +18 -0
  526. package/lib-commonjs/contexts/menuGroupContext.js.map +1 -0
  527. package/lib-commonjs/contexts/menuListContext.d.ts +15 -0
  528. package/lib-commonjs/contexts/menuListContext.js +24 -0
  529. package/lib-commonjs/contexts/menuListContext.js.map +1 -0
  530. package/lib-commonjs/contexts/menuTriggerContext.d.ts +3 -0
  531. package/lib-commonjs/contexts/menuTriggerContext.js +20 -0
  532. package/lib-commonjs/contexts/menuTriggerContext.js.map +1 -0
  533. package/lib-commonjs/index.d.ts +16 -0
  534. package/lib-commonjs/index.js +40 -0
  535. package/lib-commonjs/index.js.map +1 -0
  536. package/lib-commonjs/selectable/index.d.ts +2 -0
  537. package/lib-commonjs/selectable/index.js +12 -0
  538. package/lib-commonjs/selectable/index.js.map +1 -0
  539. package/lib-commonjs/selectable/types.d.ts +34 -0
  540. package/lib-commonjs/selectable/types.js +6 -0
  541. package/lib-commonjs/selectable/types.js.map +1 -0
  542. package/lib-commonjs/selectable/useCheckmarkStyles.d.ts +8 -0
  543. package/lib-commonjs/selectable/useCheckmarkStyles.js +38 -0
  544. package/lib-commonjs/selectable/useCheckmarkStyles.js.map +1 -0
  545. package/lib-commonjs/utils/index.d.ts +1 -0
  546. package/lib-commonjs/utils/index.js +10 -0
  547. package/lib-commonjs/utils/index.js.map +1 -0
  548. package/lib-commonjs/utils/useIsSubmenu.d.ts +9 -0
  549. package/lib-commonjs/utils/useIsSubmenu.js +30 -0
  550. package/lib-commonjs/utils/useIsSubmenu.js.map +1 -0
  551. package/lib-commonjs/utils/useOnMenuEnter.d.ts +23 -0
  552. package/lib-commonjs/utils/useOnMenuEnter.js +86 -0
  553. package/lib-commonjs/utils/useOnMenuEnter.js.map +1 -0
  554. package/package.json +71 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MenuItem.types.js","sourceRoot":"../src/","sources":["components/MenuItem/MenuItem.types.ts"],"names":[],"mappings":"","sourcesContent":["import type { ComponentProps, ComponentState, Slot } from '@fluentui/react-utilities';\n\nexport type MenuItemSlots = {\n root: Slot<'div'>;\n\n /**\n * Icon slot rendered before children content\n */\n icon?: Slot<'span'>;\n\n /**\n * A helper slot for alignment when a menu item is used with selectable menuitems\n * Avoid using this slot as a replacement for MenuItemCheckbox and MenuItemRadio components\n */\n checkmark?: Slot<'span'>;\n\n /**\n * Icon slot that shows the indicator for a submenu\n */\n submenuIndicator?: Slot<'span'>;\n\n /**\n * Component children are placed in this slot\n * Avoid using the `children` property in this slot in favour of Component children whenever possible\n */\n content?: Slot<'span'>;\n\n /**\n * Secondary content rendered opposite the primary content (e.g Shortcut text)\n */\n secondaryContent?: Slot<'span'>;\n};\n\ntype MenuItemCommons = {\n /**\n * If the menu item is a trigger for a submenu\n */\n hasSubmenu?: boolean;\n\n /**\n * Applies disabled styles to menu item but remains focusable\n */\n disabled?: boolean;\n\n /**\n * Clicking on the menu item will not dismiss an open menu\n */\n persistOnClick?: boolean;\n};\n\nexport type MenuItemProps = ComponentProps<Partial<MenuItemSlots>> & MenuItemCommons;\n\nexport type MenuItemState = ComponentState<MenuItemSlots> & MenuItemCommons;\n"]}
@@ -0,0 +1,5 @@
1
+ export * from './MenuItem';
2
+ export * from './MenuItem.types';
3
+ export * from './renderMenuItem';
4
+ export * from './useMenuItem';
5
+ export * from './useMenuItemStyles';
@@ -0,0 +1,6 @@
1
+ export * from './MenuItem';
2
+ export * from './MenuItem.types';
3
+ export * from './renderMenuItem';
4
+ export * from './useMenuItem';
5
+ export * from './useMenuItemStyles';
6
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"../src/","sources":["components/MenuItem/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,eAAe,CAAC;AAC9B,cAAc,qBAAqB,CAAC","sourcesContent":["export * from './MenuItem';\nexport * from './MenuItem.types';\nexport * from './renderMenuItem';\nexport * from './useMenuItem';\nexport * from './useMenuItemStyles';\n"]}
@@ -0,0 +1,5 @@
1
+ import type { MenuItemState } from './MenuItem.types';
2
+ /**
3
+ * Function that renders the final JSX of the component
4
+ */
5
+ export declare const renderMenuItem_unstable: (state: MenuItemState) => JSX.Element;
@@ -0,0 +1,20 @@
1
+ import * as React from 'react';
2
+ import { getSlots } from '@fluentui/react-utilities';
3
+ /**
4
+ * Function that renders the final JSX of the component
5
+ */
6
+
7
+ export const renderMenuItem_unstable = state => {
8
+ const {
9
+ slots,
10
+ slotProps
11
+ } = getSlots(state);
12
+ return /*#__PURE__*/React.createElement(slots.root, { ...slotProps.root
13
+ }, slots.checkmark && /*#__PURE__*/React.createElement(slots.checkmark, { ...slotProps.checkmark
14
+ }), slots.icon && /*#__PURE__*/React.createElement(slots.icon, { ...slotProps.icon
15
+ }), slots.content && /*#__PURE__*/React.createElement(slots.content, { ...slotProps.content
16
+ }), slots.secondaryContent && /*#__PURE__*/React.createElement(slots.secondaryContent, { ...slotProps.secondaryContent
17
+ }), slots.submenuIndicator && /*#__PURE__*/React.createElement(slots.submenuIndicator, { ...slotProps.submenuIndicator
18
+ }));
19
+ };
20
+ //# sourceMappingURL=renderMenuItem.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["components/MenuItem/renderMenuItem.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAZ,MAAuB,OAAvB;AACA,SAAS,QAAT,QAAyB,2BAAzB;AAGA;;AAEG;;AACH,OAAO,MAAM,uBAAuB,GAAI,KAAD,IAAyB;AAC9D,QAAM;AAAE,IAAA,KAAF;AAAS,IAAA;AAAT,MAAuB,QAAQ,CAAgB,KAAhB,CAArC;AAEA,sBACE,KAAA,CAAA,aAAA,CAAC,KAAK,CAAC,IAAP,EAAW,EAAA,GAAK,SAAS,CAAC;AAAf,GAAX,EACG,KAAK,CAAC,SAAN,iBAAmB,KAAA,CAAA,aAAA,CAAC,KAAK,CAAC,SAAP,EAAgB,EAAA,GAAK,SAAS,CAAC;AAAf,GAAhB,CADtB,EAEG,KAAK,CAAC,IAAN,iBAAc,KAAA,CAAA,aAAA,CAAC,KAAK,CAAC,IAAP,EAAW,EAAA,GAAK,SAAS,CAAC;AAAf,GAAX,CAFjB,EAGG,KAAK,CAAC,OAAN,iBAAiB,KAAA,CAAA,aAAA,CAAC,KAAK,CAAC,OAAP,EAAc,EAAA,GAAK,SAAS,CAAC;AAAf,GAAd,CAHpB,EAIG,KAAK,CAAC,gBAAN,iBAA0B,KAAA,CAAA,aAAA,CAAC,KAAK,CAAC,gBAAP,EAAuB,EAAA,GAAK,SAAS,CAAC;AAAf,GAAvB,CAJ7B,EAKG,KAAK,CAAC,gBAAN,iBAA0B,KAAA,CAAA,aAAA,CAAC,KAAK,CAAC,gBAAP,EAAuB,EAAA,GAAK,SAAS,CAAC;AAAf,GAAvB,CAL7B,CADF;AASD,CAZM","sourcesContent":["import * as React from 'react';\nimport { getSlots } from '@fluentui/react-utilities';\nimport type { MenuItemSlots, MenuItemState } from './MenuItem.types';\n\n/**\n * Function that renders the final JSX of the component\n */\nexport const renderMenuItem_unstable = (state: MenuItemState) => {\n const { slots, slotProps } = getSlots<MenuItemSlots>(state);\n\n return (\n <slots.root {...slotProps.root}>\n {slots.checkmark && <slots.checkmark {...slotProps.checkmark} />}\n {slots.icon && <slots.icon {...slotProps.icon} />}\n {slots.content && <slots.content {...slotProps.content} />}\n {slots.secondaryContent && <slots.secondaryContent {...slotProps.secondaryContent} />}\n {slots.submenuIndicator && <slots.submenuIndicator {...slotProps.submenuIndicator} />}\n </slots.root>\n );\n};\n"],"sourceRoot":"../src/"}
@@ -0,0 +1,3 @@
1
+ import * as React from 'react';
2
+ import type { MenuItemState } from '../../components/index';
3
+ export declare const useCharacterSearch: (state: MenuItemState, ref: React.RefObject<HTMLElement>) => MenuItemState;
@@ -0,0 +1,26 @@
1
+ import { useMenuListContext_unstable } from '../../contexts/menuListContext';
2
+ export const useCharacterSearch = (state, ref) => {
3
+ const setFocusByFirstCharacter = useMenuListContext_unstable(context => context.setFocusByFirstCharacter);
4
+ const {
5
+ onKeyDown: onKeyDownBase
6
+ } = state.root;
7
+
8
+ state.root.onKeyDown = e => {
9
+ var _a;
10
+
11
+ if (onKeyDownBase) {
12
+ onKeyDownBase(e);
13
+ }
14
+
15
+ if (((_a = e.key) === null || _a === void 0 ? void 0 : _a.length) > 1) {
16
+ return;
17
+ }
18
+
19
+ if (ref.current) {
20
+ setFocusByFirstCharacter === null || setFocusByFirstCharacter === void 0 ? void 0 : setFocusByFirstCharacter(e, ref.current);
21
+ }
22
+ };
23
+
24
+ return state;
25
+ };
26
+ //# sourceMappingURL=useCharacterSearch.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["components/MenuItem/useCharacterSearch.ts"],"names":[],"mappings":"AACA,SAAS,2BAAT,QAA4C,gCAA5C;AAGA,OAAO,MAAM,kBAAkB,GAAG,CAAC,KAAD,EAAuB,GAAvB,KAA4D;AAC5F,QAAM,wBAAwB,GAAG,2BAA2B,CAAC,OAAO,IAAI,OAAO,CAAC,wBAApB,CAA5D;AAEA,QAAM;AAAE,IAAA,SAAS,EAAE;AAAb,MAA+B,KAAK,CAAC,IAA3C;;AACA,EAAA,KAAK,CAAC,IAAN,CAAW,SAAX,GAAuB,CAAC,IAAG;;;AACzB,QAAI,aAAJ,EAAmB;AACjB,MAAA,aAAa,CAAC,CAAD,CAAb;AACD;;AAED,QAAI,CAAA,CAAA,EAAA,GAAA,CAAC,CAAC,GAAF,MAAK,IAAL,IAAK,EAAA,KAAA,KAAA,CAAL,GAAK,KAAA,CAAL,GAAK,EAAA,CAAE,MAAP,IAAgB,CAApB,EAAuB;AACrB;AACD;;AAED,QAAI,GAAG,CAAC,OAAR,EAAiB;AACf,MAAA,wBAAwB,KAAA,IAAxB,IAAA,wBAAwB,KAAA,KAAA,CAAxB,GAAwB,KAAA,CAAxB,GAAA,wBAAwB,CAAG,CAAH,EAAM,GAAG,CAAC,OAAV,CAAxB;AACD;AACF,GAZD;;AAcA,SAAO,KAAP;AACD,CAnBM","sourcesContent":["import * as React from 'react';\nimport { useMenuListContext_unstable } from '../../contexts/menuListContext';\nimport type { MenuItemState } from '../../components/index';\n\nexport const useCharacterSearch = (state: MenuItemState, ref: React.RefObject<HTMLElement>) => {\n const setFocusByFirstCharacter = useMenuListContext_unstable(context => context.setFocusByFirstCharacter);\n\n const { onKeyDown: onKeyDownBase } = state.root;\n state.root.onKeyDown = e => {\n if (onKeyDownBase) {\n onKeyDownBase(e);\n }\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"],"sourceRoot":"../src/"}
@@ -0,0 +1,6 @@
1
+ import * as React from 'react';
2
+ import type { MenuItemProps, MenuItemState } from './MenuItem.types';
3
+ /**
4
+ * Returns the props and state required to render the component
5
+ */
6
+ export declare const useMenuItem_unstable: (props: MenuItemProps, ref: React.Ref<HTMLElement>) => MenuItemState;
@@ -0,0 +1,125 @@
1
+ import * as React from 'react';
2
+ import { useEventCallback, shouldPreventDefaultOnKeyDown, resolveShorthand, useMergedRefs, getNativeElementProps } from '@fluentui/react-utilities';
3
+ import { useFluent } from '@fluentui/react-shared-contexts';
4
+ import { useCharacterSearch } from './useCharacterSearch';
5
+ import { useMenuTriggerContext_unstable } from '../../contexts/menuTriggerContext';
6
+ import { ChevronRightRegular as ChevronRightIcon, ChevronLeftRegular as ChevronLeftIcon } from '@fluentui/react-icons';
7
+ import { useMenuListContext_unstable } from '../../contexts/menuListContext';
8
+ import { useMenuContext_unstable } from '../../contexts/menuContext';
9
+ /**
10
+ * Returns the props and state required to render the component
11
+ */
12
+
13
+ export const useMenuItem_unstable = (props, ref) => {
14
+ var _a;
15
+
16
+ const hasIcons = useMenuListContext_unstable(context => context.hasIcons);
17
+ const hasCheckmarks = useMenuListContext_unstable(context => context.hasCheckmarks);
18
+ const setOpen = useMenuContext_unstable(context => context.setOpen);
19
+ const persistOnClickContext = useMenuContext_unstable(context => context.persistOnItemClick);
20
+ const dismissedWithKeyboardRef = React.useRef(false);
21
+ const isSubmenuTrigger = useMenuTriggerContext_unstable();
22
+ const hasSubmenu = (_a = props.hasSubmenu) !== null && _a !== void 0 ? _a : isSubmenuTrigger;
23
+ const {
24
+ dir
25
+ } = useFluent();
26
+ const innerRef = React.useRef(null);
27
+ const state = {
28
+ hasSubmenu,
29
+ ...props,
30
+ components: {
31
+ root: 'div',
32
+ icon: 'span',
33
+ checkmark: 'span',
34
+ submenuIndicator: 'span',
35
+ content: 'span',
36
+ secondaryContent: 'span'
37
+ },
38
+ root: getNativeElementProps('div', {
39
+ ref: useMergedRefs(ref, innerRef),
40
+ role: 'menuitem',
41
+ tabIndex: 0,
42
+ 'aria-disabled': props.disabled,
43
+ ...props
44
+ }),
45
+ icon: resolveShorthand(props.icon, {
46
+ required: hasIcons
47
+ }),
48
+ checkmark: resolveShorthand(props.checkmark, {
49
+ required: hasCheckmarks
50
+ }),
51
+ submenuIndicator: resolveShorthand(props.submenuIndicator, {
52
+ required: hasSubmenu,
53
+ defaultProps: {
54
+ children: dir === 'ltr' ? /*#__PURE__*/React.createElement(ChevronRightIcon, null) : /*#__PURE__*/React.createElement(ChevronLeftIcon, null)
55
+ }
56
+ }),
57
+ content: resolveShorthand(props.content, {
58
+ required: !!props.children,
59
+ defaultProps: {
60
+ children: props.children
61
+ }
62
+ }),
63
+ secondaryContent: resolveShorthand(props.secondaryContent)
64
+ };
65
+ const {
66
+ onClick: onClickOriginal,
67
+ onKeyDown: onKeyDownOriginal
68
+ } = state.root;
69
+
70
+ state.root.onKeyDown = e => {
71
+ var _a;
72
+
73
+ if (shouldPreventDefaultOnKeyDown(e)) {
74
+ if (state.disabled) {
75
+ e.preventDefault();
76
+ e.stopPropagation();
77
+ return;
78
+ }
79
+
80
+ dismissedWithKeyboardRef.current = true;
81
+ e.preventDefault();
82
+ (_a = e.target) === null || _a === void 0 ? void 0 : _a.click();
83
+ }
84
+
85
+ onKeyDownOriginal === null || onKeyDownOriginal === void 0 ? void 0 : onKeyDownOriginal(e);
86
+ };
87
+
88
+ state.root.onClick = e => {
89
+ if (state.disabled) {
90
+ e.preventDefault();
91
+ e.stopPropagation();
92
+ return;
93
+ }
94
+
95
+ let shouldPersist = persistOnClickContext; // prop wins over context;
96
+
97
+ if (state.persistOnClick !== undefined && persistOnClickContext !== state.persistOnClick) {
98
+ shouldPersist = state.persistOnClick;
99
+ }
100
+
101
+ if (!hasSubmenu && !shouldPersist) {
102
+ setOpen(e, {
103
+ open: false,
104
+ keyboard: dismissedWithKeyboardRef.current,
105
+ bubble: true
106
+ });
107
+ dismissedWithKeyboardRef.current = false;
108
+ }
109
+
110
+ onClickOriginal === null || onClickOriginal === void 0 ? void 0 : onClickOriginal(e);
111
+ };
112
+
113
+ const {
114
+ onMouseEnter: onMouseEnterOriginal
115
+ } = state.root;
116
+ state.root.onMouseEnter = useEventCallback(e => {
117
+ var _a;
118
+
119
+ (_a = innerRef.current) === null || _a === void 0 ? void 0 : _a.focus();
120
+ onMouseEnterOriginal === null || onMouseEnterOriginal === void 0 ? void 0 : onMouseEnterOriginal(e);
121
+ });
122
+ useCharacterSearch(state, innerRef);
123
+ return state;
124
+ };
125
+ //# sourceMappingURL=useMenuItem.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["components/MenuItem/useMenuItem.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport {\n useEventCallback,\n shouldPreventDefaultOnKeyDown,\n resolveShorthand,\n useMergedRefs,\n getNativeElementProps,\n} from '@fluentui/react-utilities';\nimport { useFluent } from '@fluentui/react-shared-contexts';\nimport { useCharacterSearch } from './useCharacterSearch';\nimport { useMenuTriggerContext_unstable } from '../../contexts/menuTriggerContext';\nimport { ChevronRightRegular as ChevronRightIcon, ChevronLeftRegular as ChevronLeftIcon } from '@fluentui/react-icons';\nimport { useMenuListContext_unstable } from '../../contexts/menuListContext';\nimport { useMenuContext_unstable } from '../../contexts/menuContext';\nimport type { MenuItemProps, MenuItemState } from './MenuItem.types';\n\n/**\n * Returns the props and state required to render the component\n */\nexport const useMenuItem_unstable = (props: MenuItemProps, ref: React.Ref<HTMLElement>): MenuItemState => {\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 persistOnClickContext = useMenuContext_unstable(context => context.persistOnItemClick);\n const dismissedWithKeyboardRef = React.useRef(false);\n\n const isSubmenuTrigger = useMenuTriggerContext_unstable();\n const hasSubmenu = props.hasSubmenu ?? isSubmenuTrigger;\n\n const { dir } = useFluent();\n const innerRef = React.useRef<HTMLElement>(null);\n\n const state: MenuItemState = {\n hasSubmenu,\n ...props,\n components: {\n root: 'div',\n icon: 'span',\n checkmark: 'span',\n submenuIndicator: 'span',\n content: 'span',\n secondaryContent: 'span',\n },\n root: getNativeElementProps('div', {\n ref: useMergedRefs(ref, innerRef),\n role: 'menuitem',\n tabIndex: 0,\n 'aria-disabled': props.disabled,\n ...props,\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\n const { onClick: onClickOriginal, onKeyDown: onKeyDownOriginal } = state.root;\n state.root.onKeyDown = e => {\n if (shouldPreventDefaultOnKeyDown(e)) {\n if (state.disabled) {\n e.preventDefault();\n e.stopPropagation();\n return;\n }\n\n dismissedWithKeyboardRef.current = true;\n e.preventDefault();\n (e.target as HTMLElement)?.click();\n }\n\n onKeyDownOriginal?.(e);\n };\n\n state.root.onClick = e => {\n if (state.disabled) {\n e.preventDefault();\n e.stopPropagation();\n return;\n }\n\n let shouldPersist = persistOnClickContext;\n // prop wins over context;\n if (state.persistOnClick !== undefined && persistOnClickContext !== state.persistOnClick) {\n shouldPersist = state.persistOnClick;\n }\n\n if (!hasSubmenu && !shouldPersist) {\n setOpen(e, { open: false, keyboard: dismissedWithKeyboardRef.current, bubble: true });\n dismissedWithKeyboardRef.current = false;\n }\n\n onClickOriginal?.(e);\n };\n\n const { onMouseEnter: onMouseEnterOriginal } = state.root;\n state.root.onMouseEnter = useEventCallback(e => {\n innerRef.current?.focus();\n\n onMouseEnterOriginal?.(e);\n });\n\n useCharacterSearch(state, innerRef);\n return state;\n};\n"],"sourceRoot":"../src/"}
@@ -0,0 +1,4 @@
1
+ import type { MenuItemState } from './MenuItem.types';
2
+ export declare const menuItemClassName = "fui-MenuItem";
3
+ /** Applies style classnames to slots */
4
+ export declare const useMenuItemStyles_unstable: (state: MenuItemState) => void;
@@ -0,0 +1,107 @@
1
+ import { mergeClasses, __styles, shorthands } from '@griffel/react';
2
+ import { createFocusOutlineStyle } from '@fluentui/react-tabster';
3
+ import { tokens } from '@fluentui/react-theme';
4
+ import { useCheckmarkStyles_unstable } from '../../selectable/index';
5
+ export const menuItemClassName = 'fui-MenuItem';
6
+
7
+ const useStyles = /*#__PURE__*/__styles({
8
+ "focusIndicator": {
9
+ "B486eqv": "f2hkw1w",
10
+ "B1bra5l": "fc85khu",
11
+ "e8izhr": "f1pxpxw8",
12
+ "in3gf6": "f1149fnl",
13
+ "B1i23sz": "fd1orka",
14
+ "ln9as": "fgtqheg",
15
+ "Bfgg0yq": "fq7mjg8",
16
+ "i16j1i": "fq9bj62",
17
+ "yxydaw": "fy07e8r",
18
+ "B9sa02e": "f1ha6shg",
19
+ "yaquy9": "f4ltwxu",
20
+ "Bl8qd6i": "f1284xzw",
21
+ "Byzgy54": "f14dru39",
22
+ "mq8cyt": ["fvabyfg", "f12y1wz2"],
23
+ "B1a67j7": ["f12y1wz2", "fvabyfg"]
24
+ },
25
+ "root": {
26
+ "Bbmb7ep": ["f1aa9q02", "f16jpd5f"],
27
+ "Beyfa6y": ["f16jpd5f", "f1aa9q02"],
28
+ "B7oj6ja": ["f1jar5jt", "fyu767a"],
29
+ "Btl43ni": ["fyu767a", "f1jar5jt"],
30
+ "qhf8xq": "f10pi13n",
31
+ "sj55zd": "f19n0e5",
32
+ "De3pzq": "fxugw4r",
33
+ "z189sj": ["f81rol6", "frdkuqy"],
34
+ "uwmqm3": ["frdkuqy", "f81rol6"],
35
+ "Bqenvij": "f1d2rq10",
36
+ "mc9l5x": "f22iagw",
37
+ "Bt984gj": "f122n59",
38
+ "Be2twd7": "fkhj508",
39
+ "Bceei9c": "f1k6fduh",
40
+ "i8kkvl": "f1q8lukm",
41
+ "Belr9w4": "f1ma2n7n",
42
+ "Jwef8y": "f1knas48",
43
+ "Bi91k9c": "fnwyq0v",
44
+ "famaaq": "f1xqy1su"
45
+ },
46
+ "content": {
47
+ "uwmqm3": ["f161knb0", "f12huiiw"],
48
+ "z189sj": ["f12huiiw", "f161knb0"],
49
+ "De3pzq": "f3rmtva",
50
+ "Bh6795r": "fqerorx"
51
+ },
52
+ "secondaryContent": {
53
+ "uwmqm3": ["f161knb0", "f12huiiw"],
54
+ "z189sj": ["f12huiiw", "f161knb0"],
55
+ "sj55zd": "f11d4kpn",
56
+ "Bi91k9c": "f1jp5ecu",
57
+ "t0hwav": "fc1cou1"
58
+ },
59
+ "icon": {
60
+ "a9b677": "f64fuq3",
61
+ "Bqenvij": "fjamq6b",
62
+ "Be2twd7": "fe5j1ua",
63
+ "Bg96gwp": "fez10in"
64
+ },
65
+ "submenuIndicator": {
66
+ "a9b677": "f64fuq3",
67
+ "Bqenvij": "fjamq6b",
68
+ "Be2twd7": "fe5j1ua",
69
+ "Bg96gwp": "fez10in"
70
+ },
71
+ "disabled": {
72
+ "sj55zd": "f1s2aq7o",
73
+ "Bi91k9c": "fvgxktp",
74
+ "t0hwav": "ft33916"
75
+ }
76
+ }, {
77
+ "i": [".f2hkw1w:focus-visible{outline-style:none;}"],
78
+ "d": ["[data-keyboard-nav] .fc85khu:focus{border-color:transparent;}", "[data-keyboard-nav] .f1pxpxw8:focus:after{content:\"\";}", "[data-keyboard-nav] .f1149fnl:focus:after{position:absolute;}", "[data-keyboard-nav] .fd1orka:focus:after{pointer-events:none;}", "[data-keyboard-nav] .fgtqheg:focus:after{box-sizing:outline-box;}", "[data-keyboard-nav] .fq7mjg8:focus:after{z-index:1;}", "[data-keyboard-nav] .fq9bj62:focus:after{border-style:solid;}", "[data-keyboard-nav] .fy07e8r:focus:after{border-width:2px;}", "[data-keyboard-nav] .f1ha6shg:focus:after{border-radius:var(--borderRadiusMedium);}", "[data-keyboard-nav] .f4ltwxu:focus:after{border-color:var(--colorStrokeFocus2);}", "[data-keyboard-nav] .f1284xzw:focus:after{top:-2px;}", "[data-keyboard-nav] .f14dru39:focus:after{bottom:-2px;}", "[data-keyboard-nav] .fvabyfg:focus:after{left:-2px;}", "[data-keyboard-nav] .f12y1wz2:focus:after{right:-2px;}", ".f1aa9q02{border-bottom-right-radius:var(--borderRadiusMedium);}", ".f16jpd5f{border-bottom-left-radius:var(--borderRadiusMedium);}", ".f1jar5jt{border-top-right-radius:var(--borderRadiusMedium);}", ".fyu767a{border-top-left-radius:var(--borderRadiusMedium);}", ".f10pi13n{position:relative;}", ".f19n0e5{color:var(--colorNeutralForeground1);}", ".fxugw4r{background-color:var(--colorNeutralBackground1);}", ".f81rol6{padding-right:10px;}", ".frdkuqy{padding-left:10px;}", ".f1d2rq10{height:32px;}", ".f22iagw{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;}", ".f122n59{-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;}", ".fkhj508{font-size:var(--fontSizeBase300);}", ".f1k6fduh{cursor:pointer;}", ".f1q8lukm{-webkit-column-gap:4px;column-gap:4px;}", ".f1ma2n7n{row-gap:4px;}", ".f1xqy1su{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;}", ".f161knb0{padding-left:2px;}", ".f12huiiw{padding-right:2px;}", ".f3rmtva{background-color:transparent;}", ".fqerorx{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;}", ".f11d4kpn{color:var(--colorNeutralForeground3);}", ".f64fuq3{width:20px;}", ".fjamq6b{height:20px;}", ".fe5j1ua{font-size:20px;}", ".fez10in{line-height:0;}", ".f1s2aq7o{color:var(--colorNeutralForegroundDisabled);}"],
79
+ "h": [".f1knas48:hover{background-color:var(--colorNeutralBackground1Hover);}", ".fnwyq0v:hover{color:var(--colorNeutralForeground2Hover);}", ".f1jp5ecu:hover{color:var(--colorNeutralForeground3Hover);}", ".fvgxktp:hover{color:var(--colorNeutralForegroundDisabled);}"],
80
+ "f": [".fc1cou1:focus{color:var(--colorNeutralForeground3Hover);}", ".ft33916:focus{color:var(--colorNeutralForegroundDisabled);}"]
81
+ });
82
+ /** Applies style classnames to slots */
83
+
84
+
85
+ export const useMenuItemStyles_unstable = state => {
86
+ const styles = useStyles();
87
+ state.root.className = mergeClasses(menuItemClassName, styles.root, styles.focusIndicator, state.disabled && styles.disabled, state.root.className);
88
+
89
+ if (state.content) {
90
+ state.content.className = mergeClasses(styles.content, state.content.className);
91
+ }
92
+
93
+ if (state.secondaryContent) {
94
+ state.secondaryContent.className = mergeClasses(!state.disabled && styles.secondaryContent, state.secondaryContent.className);
95
+ }
96
+
97
+ if (state.icon) {
98
+ state.icon.className = mergeClasses(styles.icon, state.icon.className);
99
+ }
100
+
101
+ if (state.submenuIndicator) {
102
+ state.submenuIndicator.className = mergeClasses(styles.submenuIndicator, state.submenuIndicator.className);
103
+ }
104
+
105
+ useCheckmarkStyles_unstable(state);
106
+ };
107
+ //# sourceMappingURL=useMenuItemStyles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["components/MenuItem/useMenuItemStyles.ts"],"names":[],"mappings":"AAAA,SAAS,YAAT,YAAmC,UAAnC,QAAqD,gBAArD;AACA,SAAS,uBAAT,QAAwC,yBAAxC;AACA,SAAS,MAAT,QAAuB,uBAAvB;AACA,SAAS,2BAAT,QAA4C,wBAA5C;AAIA,OAAO,MAAM,iBAAiB,GAAG,cAA1B;;AAEP,MAAM,SAAS,gBAAG;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAAlB;AAgEA;;;AACA,OAAO,MAAM,0BAA0B,GAAI,KAAD,IAAyB;AACjE,QAAM,MAAM,GAAG,SAAS,EAAxB;AACA,EAAA,KAAK,CAAC,IAAN,CAAW,SAAX,GAAuB,YAAY,CACjC,iBADiC,EAEjC,MAAM,CAAC,IAF0B,EAGjC,MAAM,CAAC,cAH0B,EAIjC,KAAK,CAAC,QAAN,IAAkB,MAAM,CAAC,QAJQ,EAKjC,KAAK,CAAC,IAAN,CAAW,SALsB,CAAnC;;AAQA,MAAI,KAAK,CAAC,OAAV,EAAmB;AACjB,IAAA,KAAK,CAAC,OAAN,CAAc,SAAd,GAA0B,YAAY,CAAC,MAAM,CAAC,OAAR,EAAiB,KAAK,CAAC,OAAN,CAAc,SAA/B,CAAtC;AACD;;AAED,MAAI,KAAK,CAAC,gBAAV,EAA4B;AAC1B,IAAA,KAAK,CAAC,gBAAN,CAAuB,SAAvB,GAAmC,YAAY,CAC7C,CAAC,KAAK,CAAC,QAAP,IAAmB,MAAM,CAAC,gBADmB,EAE7C,KAAK,CAAC,gBAAN,CAAuB,SAFsB,CAA/C;AAID;;AAED,MAAI,KAAK,CAAC,IAAV,EAAgB;AACd,IAAA,KAAK,CAAC,IAAN,CAAW,SAAX,GAAuB,YAAY,CAAC,MAAM,CAAC,IAAR,EAAc,KAAK,CAAC,IAAN,CAAW,SAAzB,CAAnC;AACD;;AAED,MAAI,KAAK,CAAC,gBAAV,EAA4B;AAC1B,IAAA,KAAK,CAAC,gBAAN,CAAuB,SAAvB,GAAmC,YAAY,CAAC,MAAM,CAAC,gBAAR,EAA0B,KAAK,CAAC,gBAAN,CAAuB,SAAjD,CAA/C;AACD;;AACD,EAAA,2BAA2B,CAAC,KAAD,CAA3B;AACD,CA7BM","sourcesContent":["import { mergeClasses, makeStyles, shorthands } from '@griffel/react';\nimport { createFocusOutlineStyle } from '@fluentui/react-tabster';\nimport { tokens } from '@fluentui/react-theme';\nimport { useCheckmarkStyles_unstable } from '../../selectable/index';\nimport { MenuItemCheckboxState } from '../MenuItemCheckbox/index';\nimport type { MenuItemState } from './MenuItem.types';\n\nexport const menuItemClassName = 'fui-MenuItem';\n\nconst useStyles = makeStyles({\n focusIndicator: createFocusOutlineStyle(),\n root: {\n ...shorthands.borderRadius(tokens.borderRadiusMedium),\n position: 'relative',\n color: tokens.colorNeutralForeground1,\n backgroundColor: tokens.colorNeutralBackground1,\n paddingRight: '10px',\n paddingLeft: '10px',\n height: '32px',\n display: 'flex',\n alignItems: 'center',\n fontSize: tokens.fontSizeBase300,\n cursor: 'pointer',\n ...shorthands.gap('4px'),\n\n ':hover': {\n backgroundColor: tokens.colorNeutralBackground1Hover,\n color: tokens.colorNeutralForeground2Hover,\n },\n\n userSelect: 'none',\n },\n content: {\n paddingLeft: '2px',\n paddingRight: '2px',\n backgroundColor: 'transparent',\n flexGrow: 1,\n },\n secondaryContent: {\n paddingLeft: '2px',\n paddingRight: '2px',\n color: tokens.colorNeutralForeground3,\n ':hover': {\n color: tokens.colorNeutralForeground3Hover,\n },\n ':focus': {\n color: tokens.colorNeutralForeground3Hover,\n },\n },\n icon: {\n width: '20px',\n height: '20px',\n fontSize: '20px',\n lineHeight: 0,\n },\n submenuIndicator: {\n width: '20px',\n height: '20px',\n fontSize: '20px',\n lineHeight: 0,\n },\n disabled: {\n color: tokens.colorNeutralForegroundDisabled,\n ':hover': {\n color: tokens.colorNeutralForegroundDisabled,\n },\n\n ':focus': {\n color: tokens.colorNeutralForegroundDisabled,\n },\n },\n});\n\n/** Applies style classnames to slots */\nexport const useMenuItemStyles_unstable = (state: MenuItemState) => {\n const styles = useStyles();\n state.root.className = mergeClasses(\n menuItemClassName,\n styles.root,\n styles.focusIndicator,\n state.disabled && styles.disabled,\n state.root.className,\n );\n\n if (state.content) {\n state.content.className = mergeClasses(styles.content, state.content.className);\n }\n\n if (state.secondaryContent) {\n state.secondaryContent.className = mergeClasses(\n !state.disabled && styles.secondaryContent,\n state.secondaryContent.className,\n );\n }\n\n if (state.icon) {\n state.icon.className = mergeClasses(styles.icon, state.icon.className);\n }\n\n if (state.submenuIndicator) {\n state.submenuIndicator.className = mergeClasses(styles.submenuIndicator, state.submenuIndicator.className);\n }\n useCheckmarkStyles_unstable(state as MenuItemCheckboxState);\n};\n"],"sourceRoot":"../src/"}
@@ -0,0 +1,6 @@
1
+ import type { MenuItemCheckboxProps } from './MenuItemCheckbox.types';
2
+ import type { ForwardRefComponent } from '@fluentui/react-utilities';
3
+ /**
4
+ * Define a styled MenuItemCheckbox, using the `useMenuItemCheckbox_unstable` hook.
5
+ */
6
+ export declare const MenuItemCheckbox: ForwardRefComponent<MenuItemCheckboxProps>;
@@ -0,0 +1,15 @@
1
+ import * as React from 'react';
2
+ import { useMenuItemCheckbox_unstable } from './useMenuItemCheckbox';
3
+ import { renderMenuItemCheckbox_unstable } from './renderMenuItemCheckbox';
4
+ import { useMenuItemCheckboxStyles_unstable } from './useMenuItemCheckboxStyles';
5
+ /**
6
+ * Define a styled MenuItemCheckbox, using the `useMenuItemCheckbox_unstable` hook.
7
+ */
8
+
9
+ export const MenuItemCheckbox = /*#__PURE__*/React.forwardRef((props, ref) => {
10
+ const state = useMenuItemCheckbox_unstable(props, ref);
11
+ useMenuItemCheckboxStyles_unstable(state);
12
+ return renderMenuItemCheckbox_unstable(state);
13
+ });
14
+ MenuItemCheckbox.displayName = 'MenuItemCheckbox';
15
+ //# sourceMappingURL=MenuItemCheckbox.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["components/MenuItemCheckbox/MenuItemCheckbox.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAZ,MAAuB,OAAvB;AACA,SAAS,4BAAT,QAA6C,uBAA7C;AACA,SAAS,+BAAT,QAAgD,0BAAhD;AACA,SAAS,kCAAT,QAAmD,6BAAnD;AAIA;;AAEG;;AACH,OAAO,MAAM,gBAAgB,gBAA+C,KAAK,CAAC,UAAN,CAAiB,CAAC,KAAD,EAAQ,GAAR,KAAe;AAC1G,QAAM,KAAK,GAAG,4BAA4B,CAAC,KAAD,EAAQ,GAAR,CAA1C;AACA,EAAA,kCAAkC,CAAC,KAAD,CAAlC;AAEA,SAAO,+BAA+B,CAAC,KAAD,CAAtC;AACD,CAL2E,CAArE;AAOP,gBAAgB,CAAC,WAAjB,GAA+B,kBAA/B","sourcesContent":["import * as React from 'react';\nimport { useMenuItemCheckbox_unstable } from './useMenuItemCheckbox';\nimport { renderMenuItemCheckbox_unstable } from './renderMenuItemCheckbox';\nimport { useMenuItemCheckboxStyles_unstable } from './useMenuItemCheckboxStyles';\nimport type { MenuItemCheckboxProps } from './MenuItemCheckbox.types';\nimport type { ForwardRefComponent } from '@fluentui/react-utilities';\n\n/**\n * Define a styled MenuItemCheckbox, using the `useMenuItemCheckbox_unstable` hook.\n */\nexport const MenuItemCheckbox: ForwardRefComponent<MenuItemCheckboxProps> = React.forwardRef((props, ref) => {\n const state = useMenuItemCheckbox_unstable(props, ref);\n useMenuItemCheckboxStyles_unstable(state);\n\n return renderMenuItemCheckbox_unstable(state);\n});\n\nMenuItemCheckbox.displayName = 'MenuItemCheckbox';\n"],"sourceRoot":"../src/"}
@@ -0,0 +1,4 @@
1
+ import type { MenuItemSelectableProps, MenuItemSelectableState } from '../../selectable/index';
2
+ import type { MenuItemProps, MenuItemState } from '../MenuItem/MenuItem.types';
3
+ export declare type MenuItemCheckboxProps = MenuItemProps & MenuItemSelectableProps;
4
+ export declare type MenuItemCheckboxState = MenuItemState & MenuItemSelectableState;
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=MenuItemCheckbox.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MenuItemCheckbox.types.js","sourceRoot":"../src/","sources":["components/MenuItemCheckbox/MenuItemCheckbox.types.ts"],"names":[],"mappings":"","sourcesContent":["import type { MenuItemSelectableProps, MenuItemSelectableState } from '../../selectable/index';\nimport type { MenuItemProps, MenuItemState } from '../MenuItem/MenuItem.types';\n\nexport type MenuItemCheckboxProps = MenuItemProps & MenuItemSelectableProps;\n\nexport type MenuItemCheckboxState = MenuItemState & MenuItemSelectableState;\n"]}
@@ -0,0 +1,5 @@
1
+ export * from './MenuItemCheckbox.types';
2
+ export * from './MenuItemCheckbox';
3
+ export * from './renderMenuItemCheckbox';
4
+ export * from './useMenuItemCheckbox';
5
+ export * from './useMenuItemCheckboxStyles';
@@ -0,0 +1,6 @@
1
+ export * from './MenuItemCheckbox.types';
2
+ export * from './MenuItemCheckbox';
3
+ export * from './renderMenuItemCheckbox';
4
+ export * from './useMenuItemCheckbox';
5
+ export * from './useMenuItemCheckboxStyles';
6
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"../src/","sources":["components/MenuItemCheckbox/index.ts"],"names":[],"mappings":"AAAA,cAAc,0BAA0B,CAAC;AACzC,cAAc,oBAAoB,CAAC;AACnC,cAAc,0BAA0B,CAAC;AACzC,cAAc,uBAAuB,CAAC;AACtC,cAAc,6BAA6B,CAAC","sourcesContent":["export * from './MenuItemCheckbox.types';\nexport * from './MenuItemCheckbox';\nexport * from './renderMenuItemCheckbox';\nexport * from './useMenuItemCheckbox';\nexport * from './useMenuItemCheckboxStyles';\n"]}
@@ -0,0 +1,3 @@
1
+ import type { MenuItemCheckboxState } from './MenuItemCheckbox.types';
2
+ /** Function that renders the final JSX of the component */
3
+ export declare const renderMenuItemCheckbox_unstable: (state: MenuItemCheckboxState) => JSX.Element;
@@ -0,0 +1,17 @@
1
+ import * as React from 'react';
2
+ import { getSlots } from '@fluentui/react-utilities';
3
+ /** Function that renders the final JSX of the component */
4
+
5
+ export const renderMenuItemCheckbox_unstable = state => {
6
+ const {
7
+ slots,
8
+ slotProps
9
+ } = getSlots(state);
10
+ return /*#__PURE__*/React.createElement(slots.root, { ...slotProps.root
11
+ }, slots.checkmark && /*#__PURE__*/React.createElement(slots.checkmark, { ...slotProps.checkmark
12
+ }), slots.icon && /*#__PURE__*/React.createElement(slots.icon, { ...slotProps.icon
13
+ }), slots.content && /*#__PURE__*/React.createElement(slots.content, { ...slotProps.content
14
+ }), slots.secondaryContent && /*#__PURE__*/React.createElement(slots.secondaryContent, { ...slotProps.secondaryContent
15
+ }));
16
+ };
17
+ //# sourceMappingURL=renderMenuItemCheckbox.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["components/MenuItemCheckbox/renderMenuItemCheckbox.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAZ,MAAuB,OAAvB;AACA,SAAS,QAAT,QAAyB,2BAAzB;AAIA;;AACA,OAAO,MAAM,+BAA+B,GAAI,KAAD,IAAiC;AAC9E,QAAM;AAAE,IAAA,KAAF;AAAS,IAAA;AAAT,MAAuB,QAAQ,CAAgB,KAAhB,CAArC;AAEA,sBACE,KAAA,CAAA,aAAA,CAAC,KAAK,CAAC,IAAP,EAAW,EAAA,GAAK,SAAS,CAAC;AAAf,GAAX,EACG,KAAK,CAAC,SAAN,iBAAmB,KAAA,CAAA,aAAA,CAAC,KAAK,CAAC,SAAP,EAAgB,EAAA,GAAK,SAAS,CAAC;AAAf,GAAhB,CADtB,EAEG,KAAK,CAAC,IAAN,iBAAc,KAAA,CAAA,aAAA,CAAC,KAAK,CAAC,IAAP,EAAW,EAAA,GAAK,SAAS,CAAC;AAAf,GAAX,CAFjB,EAGG,KAAK,CAAC,OAAN,iBAAiB,KAAA,CAAA,aAAA,CAAC,KAAK,CAAC,OAAP,EAAc,EAAA,GAAK,SAAS,CAAC;AAAf,GAAd,CAHpB,EAIG,KAAK,CAAC,gBAAN,iBAA0B,KAAA,CAAA,aAAA,CAAC,KAAK,CAAC,gBAAP,EAAuB,EAAA,GAAK,SAAS,CAAC;AAAf,GAAvB,CAJ7B,CADF;AAQD,CAXM","sourcesContent":["import * as React from 'react';\nimport { getSlots } from '@fluentui/react-utilities';\nimport type { MenuItemCheckboxState } from './MenuItemCheckbox.types';\nimport type { MenuItemSlots } from '../MenuItem/MenuItem.types';\n\n/** Function that renders the final JSX of the component */\nexport const renderMenuItemCheckbox_unstable = (state: MenuItemCheckboxState) => {\n const { slots, slotProps } = getSlots<MenuItemSlots>(state);\n\n return (\n <slots.root {...slotProps.root}>\n {slots.checkmark && <slots.checkmark {...slotProps.checkmark} />}\n {slots.icon && <slots.icon {...slotProps.icon} />}\n {slots.content && <slots.content {...slotProps.content} />}\n {slots.secondaryContent && <slots.secondaryContent {...slotProps.secondaryContent} />}\n </slots.root>\n );\n};\n"],"sourceRoot":"../src/"}
@@ -0,0 +1,4 @@
1
+ import * as React from 'react';
2
+ import type { MenuItemCheckboxProps, MenuItemCheckboxState } from './MenuItemCheckbox.types';
3
+ /** Returns the props and state required to render the component */
4
+ export declare const useMenuItemCheckbox_unstable: (props: MenuItemCheckboxProps, ref: React.Ref<HTMLElement>) => MenuItemCheckboxState;
@@ -0,0 +1,46 @@
1
+ import * as React from 'react';
2
+ import { resolveShorthand } from '@fluentui/react-utilities';
3
+ import { Checkmark16Filled } from '@fluentui/react-icons';
4
+ import { useMenuListContext_unstable } from '../../contexts/menuListContext';
5
+ import { useMenuItem_unstable } from '../MenuItem/useMenuItem';
6
+ /** Returns the props and state required to render the component */
7
+
8
+ export const useMenuItemCheckbox_unstable = (props, ref) => {
9
+ const state = useMenuItem_unstable({
10
+ role: 'menuitemcheckbox',
11
+ persistOnClick: true,
12
+ ...props,
13
+ checkmark: resolveShorthand(props.checkmark, {
14
+ defaultProps: {
15
+ children: /*#__PURE__*/React.createElement(Checkmark16Filled, null)
16
+ },
17
+ required: true
18
+ })
19
+ }, ref);
20
+ const toggleCheckbox = useMenuListContext_unstable(context => context.toggleCheckbox);
21
+ const {
22
+ onClick: onClickOriginal
23
+ } = state.root;
24
+ const checked = useMenuListContext_unstable(context => {
25
+ var _a;
26
+
27
+ const checkedItems = ((_a = context.checkedValues) === null || _a === void 0 ? void 0 : _a[state.name]) || [];
28
+ return checkedItems.indexOf(state.value) !== -1;
29
+ });
30
+ state.checked = checked;
31
+ state.root['aria-checked'] = state.checked; // MenuItem state already transforms keyDown to click events
32
+
33
+ state.root.onClick = e => {
34
+ if (state.disabled) {
35
+ e.preventDefault();
36
+ e.stopPropagation();
37
+ return;
38
+ }
39
+
40
+ toggleCheckbox === null || toggleCheckbox === void 0 ? void 0 : toggleCheckbox(e, state.name, state.value, state.checked);
41
+ onClickOriginal === null || onClickOriginal === void 0 ? void 0 : onClickOriginal(e);
42
+ };
43
+
44
+ return state;
45
+ };
46
+ //# sourceMappingURL=useMenuItemCheckbox.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["components/MenuItemCheckbox/useMenuItemCheckbox.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAZ,MAAuB,OAAvB;AACA,SAAS,gBAAT,QAAiC,2BAAjC;AACA,SAAS,iBAAT,QAAkC,uBAAlC;AACA,SAAS,2BAAT,QAA4C,gCAA5C;AACA,SAAS,oBAAT,QAAqC,yBAArC;AAGA;;AACA,OAAO,MAAM,4BAA4B,GAAG,CAC1C,KAD0C,EAE1C,GAF0C,KAGjB;AACzB,QAAM,KAAK,GAAG,oBAAoB,CAChC;AACE,IAAA,IAAI,EAAE,kBADR;AAEE,IAAA,cAAc,EAAE,IAFlB;AAGE,OAAG,KAHL;AAIE,IAAA,SAAS,EAAE,gBAAgB,CAAC,KAAK,CAAC,SAAP,EAAkB;AAC3C,MAAA,YAAY,EAAE;AAAE,QAAA,QAAQ,eAAE,KAAA,CAAA,aAAA,CAAC,iBAAD,EAAkB,IAAlB;AAAZ,OAD6B;AAE3C,MAAA,QAAQ,EAAE;AAFiC,KAAlB;AAJ7B,GADgC,EAUhC,GAVgC,CAAlC;AAaA,QAAM,cAAc,GAAG,2BAA2B,CAAC,OAAO,IAAI,OAAO,CAAC,cAApB,CAAlD;AACA,QAAM;AAAE,IAAA,OAAO,EAAE;AAAX,MAA+B,KAAK,CAAC,IAA3C;AACA,QAAM,OAAO,GAAG,2BAA2B,CAAC,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,GAH0C,CAA3C;AAKA,EAAA,KAAK,CAAC,OAAN,GAAgB,OAAhB;AACA,EAAA,KAAK,CAAC,IAAN,CAAW,cAAX,IAA6B,KAAK,CAAC,OAAnC,CAtByB,CAwBzB;;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,cAAc,KAAA,IAAd,IAAA,cAAc,KAAA,KAAA,CAAd,GAAc,KAAA,CAAd,GAAA,cAAc,CAAG,CAAH,EAAM,KAAK,CAAC,IAAZ,EAAkB,KAAK,CAAC,KAAxB,EAA+B,KAAK,CAAC,OAArC,CAAd;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","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 { MenuItemCheckboxProps, MenuItemCheckboxState } from './MenuItemCheckbox.types';\n\n/** Returns the props and state required to render the component */\nexport const useMenuItemCheckbox_unstable = (\n props: MenuItemCheckboxProps,\n ref: React.Ref<HTMLElement>,\n): MenuItemCheckboxState => {\n const state = useMenuItem_unstable(\n {\n role: 'menuitemcheckbox',\n persistOnClick: true,\n ...props,\n checkmark: resolveShorthand(props.checkmark, {\n defaultProps: { children: <Checkmark16Filled /> },\n required: true,\n }),\n },\n ref,\n ) as MenuItemCheckboxState;\n\n const toggleCheckbox = useMenuListContext_unstable(context => context.toggleCheckbox);\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 toggleCheckbox?.(e, state.name, state.value, state.checked);\n onClickOriginal?.(e);\n };\n\n return state;\n};\n"],"sourceRoot":"../src/"}
@@ -0,0 +1,3 @@
1
+ import type { MenuItemCheckboxState } from './MenuItemCheckbox.types';
2
+ export declare const menuItemCheckboxClassName = "fui-MenuItemCheckbox";
3
+ export declare const useMenuItemCheckboxStyles_unstable: (state: MenuItemCheckboxState) => void;
@@ -0,0 +1,10 @@
1
+ import { mergeClasses } from '@griffel/react';
2
+ import { useCheckmarkStyles_unstable } from '../../selectable/index';
3
+ import { useMenuItemStyles_unstable } from '../MenuItem/useMenuItemStyles';
4
+ export const menuItemCheckboxClassName = 'fui-MenuItemCheckbox';
5
+ export const useMenuItemCheckboxStyles_unstable = state => {
6
+ state.root.className = mergeClasses(menuItemCheckboxClassName, state.root.className);
7
+ useMenuItemStyles_unstable(state);
8
+ useCheckmarkStyles_unstable(state);
9
+ };
10
+ //# sourceMappingURL=useMenuItemCheckboxStyles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["components/MenuItemCheckbox/useMenuItemCheckboxStyles.ts"],"names":[],"mappings":"AAAA,SAAS,YAAT,QAA6B,gBAA7B;AACA,SAAS,2BAAT,QAA4C,wBAA5C;AACA,SAAS,0BAAT,QAA2C,+BAA3C;AAGA,OAAO,MAAM,yBAAyB,GAAG,sBAAlC;AAEP,OAAO,MAAM,kCAAkC,GAAI,KAAD,IAAiC;AACjF,EAAA,KAAK,CAAC,IAAN,CAAW,SAAX,GAAuB,YAAY,CAAC,yBAAD,EAA4B,KAAK,CAAC,IAAN,CAAW,SAAvC,CAAnC;AAEA,EAAA,0BAA0B,CAAC,KAAD,CAA1B;AACA,EAAA,2BAA2B,CAAC,KAAD,CAA3B;AACD,CALM","sourcesContent":["import { mergeClasses } from '@griffel/react';\nimport { useCheckmarkStyles_unstable } from '../../selectable/index';\nimport { useMenuItemStyles_unstable } from '../MenuItem/useMenuItemStyles';\nimport type { MenuItemCheckboxState } from './MenuItemCheckbox.types';\n\nexport const menuItemCheckboxClassName = 'fui-MenuItemCheckbox';\n\nexport const useMenuItemCheckboxStyles_unstable = (state: MenuItemCheckboxState) => {\n state.root.className = mergeClasses(menuItemCheckboxClassName, state.root.className);\n\n useMenuItemStyles_unstable(state);\n useCheckmarkStyles_unstable(state);\n};\n"],"sourceRoot":"../src/"}
@@ -0,0 +1,6 @@
1
+ import type { MenuItemRadioProps } from './MenuItemRadio.types';
2
+ import type { ForwardRefComponent } from '@fluentui/react-utilities';
3
+ /**
4
+ * Define a styled MenuItemRadio, using the `useMenuItemRadio_unstable` hook.
5
+ */
6
+ export declare const MenuItemRadio: ForwardRefComponent<MenuItemRadioProps>;
@@ -0,0 +1,15 @@
1
+ import * as React from 'react';
2
+ import { useMenuItemRadio_unstable } from './useMenuItemRadio';
3
+ import { renderMenuItemRadio_unstable } from './renderMenuItemRadio';
4
+ import { useMenuItemRadioStyles_unstable } from './useMenuItemRadioStyles';
5
+ /**
6
+ * Define a styled MenuItemRadio, using the `useMenuItemRadio_unstable` hook.
7
+ */
8
+
9
+ export const MenuItemRadio = /*#__PURE__*/React.forwardRef((props, ref) => {
10
+ const state = useMenuItemRadio_unstable(props, ref);
11
+ useMenuItemRadioStyles_unstable(state);
12
+ return renderMenuItemRadio_unstable(state);
13
+ });
14
+ MenuItemRadio.displayName = 'MenuItemRadio';
15
+ //# sourceMappingURL=MenuItemRadio.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["components/MenuItemRadio/MenuItemRadio.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAZ,MAAuB,OAAvB;AACA,SAAS,yBAAT,QAA0C,oBAA1C;AACA,SAAS,4BAAT,QAA6C,uBAA7C;AACA,SAAS,+BAAT,QAAgD,0BAAhD;AAIA;;AAEG;;AACH,OAAO,MAAM,aAAa,gBAA4C,KAAK,CAAC,UAAN,CAAiB,CAAC,KAAD,EAAQ,GAAR,KAAe;AACpG,QAAM,KAAK,GAAG,yBAAyB,CAAC,KAAD,EAAQ,GAAR,CAAvC;AACA,EAAA,+BAA+B,CAAC,KAAD,CAA/B;AAEA,SAAO,4BAA4B,CAAC,KAAD,CAAnC;AACD,CALqE,CAA/D;AAOP,aAAa,CAAC,WAAd,GAA4B,eAA5B","sourcesContent":["import * as React from 'react';\nimport { useMenuItemRadio_unstable } from './useMenuItemRadio';\nimport { renderMenuItemRadio_unstable } from './renderMenuItemRadio';\nimport { useMenuItemRadioStyles_unstable } from './useMenuItemRadioStyles';\nimport type { MenuItemRadioProps } from './MenuItemRadio.types';\nimport type { ForwardRefComponent } from '@fluentui/react-utilities';\n\n/**\n * Define a styled MenuItemRadio, using the `useMenuItemRadio_unstable` hook.\n */\nexport const MenuItemRadio: ForwardRefComponent<MenuItemRadioProps> = React.forwardRef((props, ref) => {\n const state = useMenuItemRadio_unstable(props, ref);\n useMenuItemRadioStyles_unstable(state);\n\n return renderMenuItemRadio_unstable(state);\n});\n\nMenuItemRadio.displayName = 'MenuItemRadio';\n"],"sourceRoot":"../src/"}
@@ -0,0 +1,4 @@
1
+ import type { MenuItemSelectableProps, MenuItemSelectableState } from '../../selectable/index';
2
+ import type { MenuItemProps, MenuItemState } from '../MenuItem/MenuItem.types';
3
+ export declare type MenuItemRadioProps = MenuItemProps & MenuItemSelectableProps;
4
+ export declare type MenuItemRadioState = MenuItemState & MenuItemSelectableState;
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=MenuItemRadio.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MenuItemRadio.types.js","sourceRoot":"../src/","sources":["components/MenuItemRadio/MenuItemRadio.types.ts"],"names":[],"mappings":"","sourcesContent":["import type { MenuItemSelectableProps, MenuItemSelectableState } from '../../selectable/index';\nimport type { MenuItemProps, MenuItemState } from '../MenuItem/MenuItem.types';\n\nexport type MenuItemRadioProps = MenuItemProps & MenuItemSelectableProps;\n\nexport type MenuItemRadioState = MenuItemState & MenuItemSelectableState;\n"]}
@@ -0,0 +1,5 @@
1
+ export * from './MenuItemRadio.types';
2
+ export * from './MenuItemRadio';
3
+ export * from './renderMenuItemRadio';
4
+ export * from './useMenuItemRadio';
5
+ export * from './useMenuItemRadioStyles';
@@ -0,0 +1,6 @@
1
+ export * from './MenuItemRadio.types';
2
+ export * from './MenuItemRadio';
3
+ export * from './renderMenuItemRadio';
4
+ export * from './useMenuItemRadio';
5
+ export * from './useMenuItemRadioStyles';
6
+ //# sourceMappingURL=index.js.map