@fluentui-react-native/menu 1.15.0 → 1.15.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 (369) hide show
  1. package/CHANGELOG.md +22 -0
  2. package/SPEC.md +8 -4
  3. package/lib/Menu/Menu.d.ts +2 -2
  4. package/lib/Menu/Menu.js +12 -12
  5. package/lib/Menu/Menu.types.d.ts +47 -47
  6. package/lib/Menu/Menu.types.js +4 -4
  7. package/lib/Menu/index.d.ts +1 -1
  8. package/lib/Menu/index.js +1 -1
  9. package/lib/Menu/renderMenu.android.d.ts +2 -6
  10. package/lib/Menu/renderMenu.android.js +10 -17
  11. package/lib/Menu/renderMenu.d.ts +2 -6
  12. package/lib/Menu/renderMenu.js +5 -8
  13. package/lib/Menu/useMenu.android.d.ts +1 -1
  14. package/lib/Menu/useMenu.android.js +245 -251
  15. package/lib/Menu/useMenu.d.ts +1 -1
  16. package/lib/Menu/useMenu.js +70 -75
  17. package/lib/Menu/useMenuContextValue.d.ts +1 -1
  18. package/lib/Menu/useMenuContextValue.js +4 -4
  19. package/lib/MenuCallout/MenuCallout.android.d.ts +2 -2
  20. package/lib/MenuCallout/MenuCallout.android.js +19 -39
  21. package/lib/MenuCallout/MenuCallout.d.ts +2 -2
  22. package/lib/MenuCallout/MenuCallout.js +7 -7
  23. package/lib/MenuCallout/MenuCallout.types.d.ts +13 -13
  24. package/lib/MenuCallout/MenuCallout.types.d.ts.map +1 -1
  25. package/lib/MenuCallout/MenuCallout.types.js +1 -1
  26. package/lib/MenuCallout/index.d.ts +1 -1
  27. package/lib/MenuCallout/index.js +1 -1
  28. package/lib/MenuDivider/MenuDivider.d.ts +2 -7
  29. package/lib/MenuDivider/MenuDivider.js +13 -13
  30. package/lib/MenuDivider/MenuDivider.styling.d.ts +1 -1
  31. package/lib/MenuDivider/MenuDivider.styling.js +16 -19
  32. package/lib/MenuDivider/MenuDivider.types.d.ts +12 -12
  33. package/lib/MenuDivider/MenuDivider.types.js +1 -1
  34. package/lib/MenuDivider/MenuDividerTokens.android.d.ts +1 -1
  35. package/lib/MenuDivider/MenuDividerTokens.android.js +4 -4
  36. package/lib/MenuDivider/MenuDividerTokens.d.ts +1 -1
  37. package/lib/MenuDivider/MenuDividerTokens.js +4 -4
  38. package/lib/MenuDivider/MenuDividerTokens.macos.d.ts +1 -1
  39. package/lib/MenuDivider/MenuDividerTokens.macos.js +4 -4
  40. package/lib/MenuDivider/MenuDividerTokens.win32.d.ts +1 -1
  41. package/lib/MenuDivider/MenuDividerTokens.win32.js +4 -4
  42. package/lib/MenuDivider/index.d.ts +1 -1
  43. package/lib/MenuDivider/index.js +1 -1
  44. package/lib/MenuGroup/MenuGroup.d.ts +2 -7
  45. package/lib/MenuGroup/MenuGroup.js +51 -63
  46. package/lib/MenuGroup/MenuGroup.types.d.ts +7 -7
  47. package/lib/MenuGroup/MenuGroup.types.js +1 -1
  48. package/lib/MenuGroup/index.d.ts +1 -1
  49. package/lib/MenuGroup/index.js +1 -1
  50. package/lib/MenuGroupHeader/MenuGroupHeader.d.ts +2 -7
  51. package/lib/MenuGroupHeader/MenuGroupHeader.js +14 -14
  52. package/lib/MenuGroupHeader/MenuGroupHeader.styling.d.ts +1 -1
  53. package/lib/MenuGroupHeader/MenuGroupHeader.styling.js +13 -16
  54. package/lib/MenuGroupHeader/MenuGroupHeader.types.d.ts +7 -7
  55. package/lib/MenuGroupHeader/MenuGroupHeader.types.js +1 -1
  56. package/lib/MenuGroupHeader/MenuGroupHeaderTokens.d.ts +1 -1
  57. package/lib/MenuGroupHeader/MenuGroupHeaderTokens.js +7 -7
  58. package/lib/MenuGroupHeader/MenuGroupHeaderTokens.macos.d.ts +1 -1
  59. package/lib/MenuGroupHeader/MenuGroupHeaderTokens.macos.js +8 -8
  60. package/lib/MenuGroupHeader/index.d.ts +1 -1
  61. package/lib/MenuGroupHeader/index.js +1 -1
  62. package/lib/MenuItem/MenuItem.d.ts +2 -7
  63. package/lib/MenuItem/MenuItem.js +41 -63
  64. package/lib/MenuItem/MenuItem.styling.d.ts +1 -1
  65. package/lib/MenuItem/MenuItem.styling.js +52 -70
  66. package/lib/MenuItem/MenuItem.types.d.ts +83 -83
  67. package/lib/MenuItem/MenuItem.types.js +1 -1
  68. package/lib/MenuItem/MenuItemTokens.android.d.ts +1 -1
  69. package/lib/MenuItem/MenuItemTokens.android.js +17 -17
  70. package/lib/MenuItem/MenuItemTokens.d.ts +1 -1
  71. package/lib/MenuItem/MenuItemTokens.js +35 -35
  72. package/lib/MenuItem/MenuItemTokens.macos.d.ts +1 -1
  73. package/lib/MenuItem/MenuItemTokens.macos.js +34 -34
  74. package/lib/MenuItem/MenuItemTokens.win32.d.ts +1 -1
  75. package/lib/MenuItem/MenuItemTokens.win32.js +36 -36
  76. package/lib/MenuItem/index.d.ts +1 -1
  77. package/lib/MenuItem/index.js +1 -1
  78. package/lib/MenuItem/useMenuItem.d.ts +1 -1
  79. package/lib/MenuItem/useMenuItem.js +101 -111
  80. package/lib/MenuItemCheckbox/MenuItemCheckbox.d.ts +3 -11
  81. package/lib/MenuItemCheckbox/MenuItemCheckbox.js +26 -54
  82. package/lib/MenuItemCheckbox/MenuItemCheckbox.styling.d.ts +1 -1
  83. package/lib/MenuItemCheckbox/MenuItemCheckbox.styling.js +62 -81
  84. package/lib/MenuItemCheckbox/MenuItemCheckbox.types.d.ts +89 -90
  85. package/lib/MenuItemCheckbox/MenuItemCheckbox.types.d.ts.map +1 -1
  86. package/lib/MenuItemCheckbox/MenuItemCheckbox.types.js +1 -1
  87. package/lib/MenuItemCheckbox/MenuItemCheckboxTokens.android.d.ts +1 -1
  88. package/lib/MenuItemCheckbox/MenuItemCheckboxTokens.android.js +35 -35
  89. package/lib/MenuItemCheckbox/MenuItemCheckboxTokens.d.ts +1 -1
  90. package/lib/MenuItemCheckbox/MenuItemCheckboxTokens.js +44 -44
  91. package/lib/MenuItemCheckbox/MenuItemCheckboxTokens.macos.d.ts +1 -1
  92. package/lib/MenuItemCheckbox/MenuItemCheckboxTokens.macos.js +42 -42
  93. package/lib/MenuItemCheckbox/MenuItemCheckboxTokens.win32.d.ts +1 -1
  94. package/lib/MenuItemCheckbox/MenuItemCheckboxTokens.win32.js +45 -45
  95. package/lib/MenuItemCheckbox/index.d.ts +2 -8
  96. package/lib/MenuItemCheckbox/index.js +1 -1
  97. package/lib/MenuItemCheckbox/useMenuItemCheckbox.d.ts +2 -5
  98. package/lib/MenuItemCheckbox/useMenuItemCheckbox.js +104 -129
  99. package/lib/MenuItemRadio/MenuItemRadio.d.ts +3 -11
  100. package/lib/MenuItemRadio/MenuItemRadio.js +26 -54
  101. package/lib/MenuItemRadio/MenuItemRadio.styling.android.d.ts +1 -1
  102. package/lib/MenuItemRadio/MenuItemRadio.styling.android.js +60 -78
  103. package/lib/MenuItemRadio/MenuItemRadio.styling.d.ts +1 -1
  104. package/lib/MenuItemRadio/MenuItemRadio.styling.js +44 -59
  105. package/lib/MenuItemRadio/MenuItemRadio.types.d.ts +120 -121
  106. package/lib/MenuItemRadio/MenuItemRadio.types.d.ts.map +1 -1
  107. package/lib/MenuItemRadio/MenuItemRadio.types.js +1 -1
  108. package/lib/MenuItemRadio/MenuItemRadioTokens.android.d.ts +1 -1
  109. package/lib/MenuItemRadio/MenuItemRadioTokens.android.js +38 -38
  110. package/lib/MenuItemRadio/MenuItemRadioTokens.d.ts +1 -1
  111. package/lib/MenuItemRadio/MenuItemRadioTokens.js +45 -45
  112. package/lib/MenuItemRadio/MenuItemRadioTokens.macos.d.ts +1 -1
  113. package/lib/MenuItemRadio/MenuItemRadioTokens.macos.js +43 -43
  114. package/lib/MenuItemRadio/index.d.ts +2 -8
  115. package/lib/MenuItemRadio/index.js +1 -1
  116. package/lib/MenuItemRadio/useMenuItemRadio.d.ts +1 -1
  117. package/lib/MenuItemRadio/useMenuItemRadio.js +23 -26
  118. package/lib/MenuList/MenuList.d.ts +2 -7
  119. package/lib/MenuList/MenuList.js +54 -70
  120. package/lib/MenuList/MenuList.styling.d.ts +1 -1
  121. package/lib/MenuList/MenuList.styling.js +21 -27
  122. package/lib/MenuList/MenuList.types.d.ts +72 -72
  123. package/lib/MenuList/MenuList.types.js +1 -1
  124. package/lib/MenuList/MenuListTokens.android.d.ts +1 -1
  125. package/lib/MenuList/MenuListTokens.android.js +4 -4
  126. package/lib/MenuList/MenuListTokens.d.ts +1 -1
  127. package/lib/MenuList/MenuListTokens.js +6 -6
  128. package/lib/MenuList/MenuListTokens.macos.d.ts +1 -1
  129. package/lib/MenuList/MenuListTokens.macos.js +4 -4
  130. package/lib/MenuList/MenuListTokens.win32.d.ts +1 -1
  131. package/lib/MenuList/MenuListTokens.win32.js +9 -9
  132. package/lib/MenuList/index.d.ts +1 -1
  133. package/lib/MenuList/index.js +1 -1
  134. package/lib/MenuList/useMenuList.d.ts +1 -1
  135. package/lib/MenuList/useMenuList.js +142 -159
  136. package/lib/MenuList/useMenuListContextValue.d.ts +1 -1
  137. package/lib/MenuList/useMenuListContextValue.js +2 -2
  138. package/lib/MenuPopover/MenuPopover.d.ts +3 -9
  139. package/lib/MenuPopover/MenuPopover.d.ts.map +1 -1
  140. package/lib/MenuPopover/MenuPopover.js +35 -35
  141. package/lib/MenuPopover/MenuPopover.types.d.ts +14 -14
  142. package/lib/MenuPopover/MenuPopover.types.d.ts.map +1 -1
  143. package/lib/MenuPopover/MenuPopover.types.js +1 -1
  144. package/lib/MenuPopover/MenuPopoverTokens.android.d.ts +3 -7
  145. package/lib/MenuPopover/MenuPopoverTokens.android.d.ts.map +1 -1
  146. package/lib/MenuPopover/MenuPopoverTokens.android.js +3 -6
  147. package/lib/MenuPopover/MenuPopoverTokens.d.ts +3 -7
  148. package/lib/MenuPopover/MenuPopoverTokens.d.ts.map +1 -1
  149. package/lib/MenuPopover/MenuPopoverTokens.js +2 -5
  150. package/lib/MenuPopover/MenuPopoverTokens.macos.d.ts +3 -7
  151. package/lib/MenuPopover/MenuPopoverTokens.macos.d.ts.map +1 -1
  152. package/lib/MenuPopover/MenuPopoverTokens.macos.js +7 -10
  153. package/lib/MenuPopover/MenuPopoverTokens.macos.js.map +1 -1
  154. package/lib/MenuPopover/index.d.ts +1 -1
  155. package/lib/MenuPopover/index.js +1 -1
  156. package/lib/MenuPopover/useMenuPopover.d.ts +2 -2
  157. package/lib/MenuPopover/useMenuPopover.js +79 -96
  158. package/lib/MenuPopover/useMenuPopover.js.map +1 -1
  159. package/lib/MenuTrigger/MenuTrigger.d.ts +3 -3
  160. package/lib/MenuTrigger/MenuTrigger.js +16 -16
  161. package/lib/MenuTrigger/MenuTrigger.types.d.ts +13 -13
  162. package/lib/MenuTrigger/MenuTrigger.types.js +1 -1
  163. package/lib/MenuTrigger/index.d.ts +1 -1
  164. package/lib/MenuTrigger/index.js +1 -1
  165. package/lib/MenuTrigger/useMenuTrigger.d.ts +1 -1
  166. package/lib/MenuTrigger/useMenuTrigger.js +70 -99
  167. package/lib/MenuTrigger/useMergeRefs.d.ts +1 -1
  168. package/lib/MenuTrigger/useMergeRefs.js +14 -16
  169. package/lib/__tests__/Menu.test.d.ts +1 -1
  170. package/lib/__tests__/Menu.test.js +122 -230
  171. package/lib/consts.d.ts +1 -1
  172. package/lib/consts.js +3 -3
  173. package/lib/context/index.d.ts +1 -1
  174. package/lib/context/index.js +1 -1
  175. package/lib/context/menuContext.d.ts +5 -5
  176. package/lib/context/menuContext.js +15 -15
  177. package/lib/context/menuListContext.d.ts +4 -4
  178. package/lib/context/menuListContext.js +12 -12
  179. package/lib/context/menuTriggerContext.d.ts +1 -1
  180. package/lib/context/menuTriggerContext.js +1 -1
  181. package/lib/index.d.ts +4 -26
  182. package/lib/index.js +2 -12
  183. package/lib-commonjs/Menu/Menu.d.ts +2 -2
  184. package/lib-commonjs/Menu/Menu.js +23 -25
  185. package/lib-commonjs/Menu/Menu.types.d.ts +47 -47
  186. package/lib-commonjs/Menu/Menu.types.js +6 -6
  187. package/lib-commonjs/Menu/index.d.ts +1 -1
  188. package/lib-commonjs/Menu/index.js +11 -31
  189. package/lib-commonjs/Menu/renderMenu.android.d.ts +2 -6
  190. package/lib-commonjs/Menu/renderMenu.android.js +14 -26
  191. package/lib-commonjs/Menu/renderMenu.d.ts +2 -6
  192. package/lib-commonjs/Menu/renderMenu.js +8 -11
  193. package/lib-commonjs/Menu/useMenu.android.d.ts +1 -1
  194. package/lib-commonjs/Menu/useMenu.android.js +280 -303
  195. package/lib-commonjs/Menu/useMenu.d.ts +1 -1
  196. package/lib-commonjs/Menu/useMenu.js +79 -86
  197. package/lib-commonjs/Menu/useMenuContextValue.d.ts +1 -1
  198. package/lib-commonjs/Menu/useMenuContextValue.js +10 -12
  199. package/lib-commonjs/MenuCallout/MenuCallout.android.d.ts +2 -2
  200. package/lib-commonjs/MenuCallout/MenuCallout.android.js +25 -48
  201. package/lib-commonjs/MenuCallout/MenuCallout.d.ts +2 -2
  202. package/lib-commonjs/MenuCallout/MenuCallout.js +12 -12
  203. package/lib-commonjs/MenuCallout/MenuCallout.types.d.ts +13 -13
  204. package/lib-commonjs/MenuCallout/MenuCallout.types.d.ts.map +1 -1
  205. package/lib-commonjs/MenuCallout/MenuCallout.types.js +3 -3
  206. package/lib-commonjs/MenuCallout/index.d.ts +1 -1
  207. package/lib-commonjs/MenuCallout/index.js +7 -17
  208. package/lib-commonjs/MenuDivider/MenuDivider.d.ts +2 -7
  209. package/lib-commonjs/MenuDivider/MenuDivider.js +19 -19
  210. package/lib-commonjs/MenuDivider/MenuDivider.styling.d.ts +1 -1
  211. package/lib-commonjs/MenuDivider/MenuDivider.styling.js +22 -25
  212. package/lib-commonjs/MenuDivider/MenuDivider.types.d.ts +12 -12
  213. package/lib-commonjs/MenuDivider/MenuDivider.types.js +3 -3
  214. package/lib-commonjs/MenuDivider/MenuDividerTokens.android.d.ts +1 -1
  215. package/lib-commonjs/MenuDivider/MenuDividerTokens.android.js +7 -7
  216. package/lib-commonjs/MenuDivider/MenuDividerTokens.d.ts +1 -1
  217. package/lib-commonjs/MenuDivider/MenuDividerTokens.js +7 -7
  218. package/lib-commonjs/MenuDivider/MenuDividerTokens.macos.d.ts +1 -1
  219. package/lib-commonjs/MenuDivider/MenuDividerTokens.macos.js +7 -7
  220. package/lib-commonjs/MenuDivider/MenuDividerTokens.win32.d.ts +1 -1
  221. package/lib-commonjs/MenuDivider/MenuDividerTokens.win32.js +7 -7
  222. package/lib-commonjs/MenuDivider/index.d.ts +1 -1
  223. package/lib-commonjs/MenuDivider/index.js +7 -17
  224. package/lib-commonjs/MenuGroup/MenuGroup.d.ts +2 -7
  225. package/lib-commonjs/MenuGroup/MenuGroup.js +62 -78
  226. package/lib-commonjs/MenuGroup/MenuGroup.types.d.ts +7 -7
  227. package/lib-commonjs/MenuGroup/MenuGroup.types.js +3 -3
  228. package/lib-commonjs/MenuGroup/index.d.ts +1 -1
  229. package/lib-commonjs/MenuGroup/index.js +7 -17
  230. package/lib-commonjs/MenuGroupHeader/MenuGroupHeader.d.ts +2 -7
  231. package/lib-commonjs/MenuGroupHeader/MenuGroupHeader.js +20 -20
  232. package/lib-commonjs/MenuGroupHeader/MenuGroupHeader.styling.d.ts +1 -1
  233. package/lib-commonjs/MenuGroupHeader/MenuGroupHeader.styling.js +19 -22
  234. package/lib-commonjs/MenuGroupHeader/MenuGroupHeader.types.d.ts +7 -7
  235. package/lib-commonjs/MenuGroupHeader/MenuGroupHeader.types.js +3 -3
  236. package/lib-commonjs/MenuGroupHeader/MenuGroupHeaderTokens.d.ts +1 -1
  237. package/lib-commonjs/MenuGroupHeader/MenuGroupHeaderTokens.js +10 -10
  238. package/lib-commonjs/MenuGroupHeader/MenuGroupHeaderTokens.macos.d.ts +1 -1
  239. package/lib-commonjs/MenuGroupHeader/MenuGroupHeaderTokens.macos.js +11 -11
  240. package/lib-commonjs/MenuGroupHeader/index.d.ts +1 -1
  241. package/lib-commonjs/MenuGroupHeader/index.js +7 -17
  242. package/lib-commonjs/MenuItem/MenuItem.d.ts +2 -7
  243. package/lib-commonjs/MenuItem/MenuItem.js +51 -73
  244. package/lib-commonjs/MenuItem/MenuItem.styling.d.ts +1 -1
  245. package/lib-commonjs/MenuItem/MenuItem.styling.js +59 -80
  246. package/lib-commonjs/MenuItem/MenuItem.types.d.ts +83 -83
  247. package/lib-commonjs/MenuItem/MenuItem.types.js +3 -3
  248. package/lib-commonjs/MenuItem/MenuItemTokens.android.d.ts +1 -1
  249. package/lib-commonjs/MenuItem/MenuItemTokens.android.js +20 -20
  250. package/lib-commonjs/MenuItem/MenuItemTokens.d.ts +1 -1
  251. package/lib-commonjs/MenuItem/MenuItemTokens.js +38 -38
  252. package/lib-commonjs/MenuItem/MenuItemTokens.macos.d.ts +1 -1
  253. package/lib-commonjs/MenuItem/MenuItemTokens.macos.js +37 -37
  254. package/lib-commonjs/MenuItem/MenuItemTokens.win32.d.ts +1 -1
  255. package/lib-commonjs/MenuItem/MenuItemTokens.win32.js +39 -39
  256. package/lib-commonjs/MenuItem/index.d.ts +1 -1
  257. package/lib-commonjs/MenuItem/index.js +9 -24
  258. package/lib-commonjs/MenuItem/useMenuItem.d.ts +1 -1
  259. package/lib-commonjs/MenuItem/useMenuItem.js +140 -169
  260. package/lib-commonjs/MenuItemCheckbox/MenuItemCheckbox.d.ts +3 -11
  261. package/lib-commonjs/MenuItemCheckbox/MenuItemCheckbox.js +37 -65
  262. package/lib-commonjs/MenuItemCheckbox/MenuItemCheckbox.styling.d.ts +1 -1
  263. package/lib-commonjs/MenuItemCheckbox/MenuItemCheckbox.styling.js +69 -91
  264. package/lib-commonjs/MenuItemCheckbox/MenuItemCheckbox.types.d.ts +89 -90
  265. package/lib-commonjs/MenuItemCheckbox/MenuItemCheckbox.types.d.ts.map +1 -1
  266. package/lib-commonjs/MenuItemCheckbox/MenuItemCheckbox.types.js +3 -3
  267. package/lib-commonjs/MenuItemCheckbox/MenuItemCheckboxTokens.android.d.ts +1 -1
  268. package/lib-commonjs/MenuItemCheckbox/MenuItemCheckboxTokens.android.js +38 -38
  269. package/lib-commonjs/MenuItemCheckbox/MenuItemCheckboxTokens.d.ts +1 -1
  270. package/lib-commonjs/MenuItemCheckbox/MenuItemCheckboxTokens.js +47 -47
  271. package/lib-commonjs/MenuItemCheckbox/MenuItemCheckboxTokens.macos.d.ts +1 -1
  272. package/lib-commonjs/MenuItemCheckbox/MenuItemCheckboxTokens.macos.js +45 -45
  273. package/lib-commonjs/MenuItemCheckbox/MenuItemCheckboxTokens.win32.d.ts +1 -1
  274. package/lib-commonjs/MenuItemCheckbox/MenuItemCheckboxTokens.win32.js +48 -48
  275. package/lib-commonjs/MenuItemCheckbox/index.d.ts +2 -8
  276. package/lib-commonjs/MenuItemCheckbox/index.js +10 -30
  277. package/lib-commonjs/MenuItemCheckbox/useMenuItemCheckbox.d.ts +2 -5
  278. package/lib-commonjs/MenuItemCheckbox/useMenuItemCheckbox.js +143 -185
  279. package/lib-commonjs/MenuItemRadio/MenuItemRadio.d.ts +3 -11
  280. package/lib-commonjs/MenuItemRadio/MenuItemRadio.js +37 -65
  281. package/lib-commonjs/MenuItemRadio/MenuItemRadio.styling.android.d.ts +1 -1
  282. package/lib-commonjs/MenuItemRadio/MenuItemRadio.styling.android.js +67 -88
  283. package/lib-commonjs/MenuItemRadio/MenuItemRadio.styling.d.ts +1 -1
  284. package/lib-commonjs/MenuItemRadio/MenuItemRadio.styling.js +51 -69
  285. package/lib-commonjs/MenuItemRadio/MenuItemRadio.types.d.ts +120 -121
  286. package/lib-commonjs/MenuItemRadio/MenuItemRadio.types.d.ts.map +1 -1
  287. package/lib-commonjs/MenuItemRadio/MenuItemRadio.types.js +3 -3
  288. package/lib-commonjs/MenuItemRadio/MenuItemRadioTokens.android.d.ts +1 -1
  289. package/lib-commonjs/MenuItemRadio/MenuItemRadioTokens.android.js +41 -41
  290. package/lib-commonjs/MenuItemRadio/MenuItemRadioTokens.d.ts +1 -1
  291. package/lib-commonjs/MenuItemRadio/MenuItemRadioTokens.js +48 -48
  292. package/lib-commonjs/MenuItemRadio/MenuItemRadioTokens.macos.d.ts +1 -1
  293. package/lib-commonjs/MenuItemRadio/MenuItemRadioTokens.macos.js +46 -46
  294. package/lib-commonjs/MenuItemRadio/index.d.ts +2 -8
  295. package/lib-commonjs/MenuItemRadio/index.js +9 -24
  296. package/lib-commonjs/MenuItemRadio/useMenuItemRadio.d.ts +1 -1
  297. package/lib-commonjs/MenuItemRadio/useMenuItemRadio.js +58 -78
  298. package/lib-commonjs/MenuList/MenuList.d.ts +2 -7
  299. package/lib-commonjs/MenuList/MenuList.js +69 -87
  300. package/lib-commonjs/MenuList/MenuList.styling.d.ts +1 -1
  301. package/lib-commonjs/MenuList/MenuList.styling.js +28 -34
  302. package/lib-commonjs/MenuList/MenuList.types.d.ts +72 -72
  303. package/lib-commonjs/MenuList/MenuList.types.js +3 -3
  304. package/lib-commonjs/MenuList/MenuListTokens.android.d.ts +1 -1
  305. package/lib-commonjs/MenuList/MenuListTokens.android.js +7 -7
  306. package/lib-commonjs/MenuList/MenuListTokens.d.ts +1 -1
  307. package/lib-commonjs/MenuList/MenuListTokens.js +9 -9
  308. package/lib-commonjs/MenuList/MenuListTokens.macos.d.ts +1 -1
  309. package/lib-commonjs/MenuList/MenuListTokens.macos.js +7 -7
  310. package/lib-commonjs/MenuList/MenuListTokens.win32.d.ts +1 -1
  311. package/lib-commonjs/MenuList/MenuListTokens.win32.js +12 -12
  312. package/lib-commonjs/MenuList/index.d.ts +1 -1
  313. package/lib-commonjs/MenuList/index.js +11 -31
  314. package/lib-commonjs/MenuList/useMenuList.d.ts +1 -1
  315. package/lib-commonjs/MenuList/useMenuList.js +151 -170
  316. package/lib-commonjs/MenuList/useMenuListContextValue.d.ts +1 -1
  317. package/lib-commonjs/MenuList/useMenuListContextValue.js +4 -4
  318. package/lib-commonjs/MenuPopover/MenuPopover.d.ts +3 -9
  319. package/lib-commonjs/MenuPopover/MenuPopover.d.ts.map +1 -1
  320. package/lib-commonjs/MenuPopover/MenuPopover.js +48 -50
  321. package/lib-commonjs/MenuPopover/MenuPopover.types.d.ts +14 -14
  322. package/lib-commonjs/MenuPopover/MenuPopover.types.d.ts.map +1 -1
  323. package/lib-commonjs/MenuPopover/MenuPopover.types.js +3 -3
  324. package/lib-commonjs/MenuPopover/MenuPopoverTokens.android.d.ts +3 -7
  325. package/lib-commonjs/MenuPopover/MenuPopoverTokens.android.d.ts.map +1 -1
  326. package/lib-commonjs/MenuPopover/MenuPopoverTokens.android.js +9 -12
  327. package/lib-commonjs/MenuPopover/MenuPopoverTokens.d.ts +3 -7
  328. package/lib-commonjs/MenuPopover/MenuPopoverTokens.d.ts.map +1 -1
  329. package/lib-commonjs/MenuPopover/MenuPopoverTokens.js +6 -9
  330. package/lib-commonjs/MenuPopover/MenuPopoverTokens.macos.d.ts +3 -7
  331. package/lib-commonjs/MenuPopover/MenuPopoverTokens.macos.d.ts.map +1 -1
  332. package/lib-commonjs/MenuPopover/MenuPopoverTokens.macos.js +12 -15
  333. package/lib-commonjs/MenuPopover/MenuPopoverTokens.macos.js.map +1 -1
  334. package/lib-commonjs/MenuPopover/index.d.ts +1 -1
  335. package/lib-commonjs/MenuPopover/index.js +9 -24
  336. package/lib-commonjs/MenuPopover/useMenuPopover.d.ts +2 -2
  337. package/lib-commonjs/MenuPopover/useMenuPopover.js +87 -106
  338. package/lib-commonjs/MenuPopover/useMenuPopover.js.map +1 -1
  339. package/lib-commonjs/MenuTrigger/MenuTrigger.d.ts +3 -3
  340. package/lib-commonjs/MenuTrigger/MenuTrigger.js +52 -69
  341. package/lib-commonjs/MenuTrigger/MenuTrigger.types.d.ts +13 -13
  342. package/lib-commonjs/MenuTrigger/MenuTrigger.types.js +3 -3
  343. package/lib-commonjs/MenuTrigger/index.d.ts +1 -1
  344. package/lib-commonjs/MenuTrigger/index.js +9 -24
  345. package/lib-commonjs/MenuTrigger/useMenuTrigger.d.ts +1 -1
  346. package/lib-commonjs/MenuTrigger/useMenuTrigger.js +80 -111
  347. package/lib-commonjs/MenuTrigger/useMergeRefs.d.ts +1 -1
  348. package/lib-commonjs/MenuTrigger/useMergeRefs.js +46 -65
  349. package/lib-commonjs/__tests__/Menu.test.d.ts +1 -1
  350. package/lib-commonjs/__tests__/Menu.test.js +169 -333
  351. package/lib-commonjs/consts.d.ts +1 -1
  352. package/lib-commonjs/consts.js +6 -6
  353. package/lib-commonjs/context/index.d.ts +1 -1
  354. package/lib-commonjs/context/index.js +16 -70
  355. package/lib-commonjs/context/menuContext.d.ts +5 -5
  356. package/lib-commonjs/context/menuContext.js +47 -64
  357. package/lib-commonjs/context/menuListContext.d.ts +4 -4
  358. package/lib-commonjs/context/menuListContext.js +44 -61
  359. package/lib-commonjs/context/menuTriggerContext.d.ts +1 -1
  360. package/lib-commonjs/context/menuTriggerContext.js +7 -9
  361. package/lib-commonjs/index.d.ts +4 -26
  362. package/lib-commonjs/index.js +56 -296
  363. package/package.json +28 -27
  364. package/src/MenuCallout/MenuCallout.types.ts +12 -13
  365. package/src/MenuItemCheckbox/MenuItemCheckbox.types.ts +4 -2
  366. package/src/MenuItemRadio/MenuItemRadio.types.ts +4 -2
  367. package/src/MenuPopover/MenuPopover.types.ts +12 -13
  368. package/src/MenuPopover/MenuPopoverTokens.macos.ts +2 -2
  369. package/src/MenuPopover/useMenuPopover.ts +1 -1
@@ -1,4 +1,4 @@
1
- import { jsx as _jsx } from '@fluentui-react-native/framework-base/jsx-runtime';
1
+ import { jsx as _jsx } from "@fluentui-react-native/framework-base/jsx-runtime";
2
2
  /** @jsxImportSource @fluentui-react-native/framework-base */
3
3
  import React from 'react';
4
4
  import { Platform, View } from 'react-native';
@@ -9,66 +9,54 @@ import { menuGroupName } from './MenuGroup.types';
9
9
  // Intentionally not enabled on macOS to match system context menus
10
10
  const hasFocusZone = ['win32'].includes(Platform.OS);
11
11
  export const MenuGroup = compose({
12
- displayName: menuGroupName,
13
- slots: {
14
- root: View,
15
- contentWrapper: hasFocusZone ? FocusZone : React.Fragment,
16
- },
17
- useRender: (userProps, useSlots) => {
18
- const Slots = useSlots(userProps);
19
- return (final, children) => {
20
- const { ...mergedProps } = mergeProps(userProps, final);
21
- let itemPosition = 0;
22
- const childrenWithSet = React.Children.toArray(children).map((child) => {
23
- if (React.isValidElement(child)) {
24
- const itemCount = React.Children.toArray(children).filter(
25
- (child) =>
26
- React.isValidElement(child) && child.type.displayName !== 'MenuGroupHeader' && child.type.displayName !== 'MenuDivider',
27
- ).length;
28
- if (child.type.displayName !== 'MenuGroupHeader' && child.type.displayName !== 'MenuDivider') {
29
- itemPosition++;
30
- }
31
- return React.cloneElement(child, {
32
- accessibilityPosInSet: extractProps(child)?.accessibilityPosInSet ?? itemPosition, // win32
33
- accessibilitySetSize: extractProps(child)?.accessibilitySetSize ?? itemCount, //win32
34
- });
35
- }
36
- return child;
37
- });
38
- // Check if this MenuGroup has a MenuGroupHeader. If so, use the MenuGroupHeader
39
- // as the accessibilityLabel for the MenuGroup.
40
- const menuGroupHeader = React.Children.toArray(children).find(
41
- (child) => React.isValidElement(child) && child.type.displayName === 'MenuGroupHeader',
42
- );
43
- // On win32, in order for assistive technology to read a group, it must have a name which is why
44
- // we use a string with a space as the default accessibilityLabel for MenuGroup.
45
- // If an empty string was used, the group context would not be read.
46
- let menuGroupA11yLabel = ' ';
47
- const menuGroupHeaderChild = extractChildren(menuGroupHeader);
48
- if (menuGroupHeader && typeof menuGroupHeaderChild === 'string') {
49
- menuGroupA11yLabel = menuGroupHeaderChild;
50
- }
51
- return _jsx(Slots.root, {
52
- ...mergedProps,
53
- ...(Platform.OS == 'win32' && {
54
- accessible: true,
55
- accessibilityRole: 'group',
56
- accessibilityLabel: mergedProps.accessibilityLabel ?? menuGroupA11yLabel,
57
- }),
58
- children: _jsx(
59
- Slots.contentWrapper,
60
- // avoid error that fires when props are passed into React.fragment
61
- {
62
- ...(hasFocusZone && {
63
- focusZoneDirection: 'vertical',
64
- enableFocusRing: false,
65
- navigateAtEnd: 'NavigateContinue',
66
- }),
67
- children: childrenWithSet,
68
- },
69
- ),
70
- });
71
- };
72
- },
12
+ displayName: menuGroupName,
13
+ slots: {
14
+ root: View,
15
+ contentWrapper: hasFocusZone ? FocusZone : React.Fragment,
16
+ },
17
+ useRender: (userProps, useSlots) => {
18
+ const Slots = useSlots(userProps);
19
+ return (final, children) => {
20
+ const { ...mergedProps } = mergeProps(userProps, final);
21
+ let itemPosition = 0;
22
+ const childrenWithSet = React.Children.toArray(children).map((child) => {
23
+ if (React.isValidElement(child)) {
24
+ const itemCount = React.Children.toArray(children).filter((child) => React.isValidElement(child) &&
25
+ child.type.displayName !== 'MenuGroupHeader' &&
26
+ child.type.displayName !== 'MenuDivider').length;
27
+ if (child.type.displayName !== 'MenuGroupHeader' && child.type.displayName !== 'MenuDivider') {
28
+ itemPosition++;
29
+ }
30
+ return React.cloneElement(child, {
31
+ accessibilityPosInSet: extractProps(child)?.accessibilityPosInSet ?? itemPosition, // win32
32
+ accessibilitySetSize: extractProps(child)?.accessibilitySetSize ?? itemCount, //win32
33
+ });
34
+ }
35
+ return child;
36
+ });
37
+ // Check if this MenuGroup has a MenuGroupHeader. If so, use the MenuGroupHeader
38
+ // as the accessibilityLabel for the MenuGroup.
39
+ const menuGroupHeader = React.Children.toArray(children).find((child) => React.isValidElement(child) && child.type.displayName === 'MenuGroupHeader');
40
+ // On win32, in order for assistive technology to read a group, it must have a name which is why
41
+ // we use a string with a space as the default accessibilityLabel for MenuGroup.
42
+ // If an empty string was used, the group context would not be read.
43
+ let menuGroupA11yLabel = ' ';
44
+ const menuGroupHeaderChild = extractChildren(menuGroupHeader);
45
+ if (menuGroupHeader && typeof menuGroupHeaderChild === 'string') {
46
+ menuGroupA11yLabel = menuGroupHeaderChild;
47
+ }
48
+ return (_jsx(Slots.root, { ...mergedProps, ...(Platform.OS == 'win32' && {
49
+ accessible: true,
50
+ accessibilityRole: 'group',
51
+ accessibilityLabel: mergedProps.accessibilityLabel ?? menuGroupA11yLabel,
52
+ }), children: _jsx(Slots.contentWrapper
53
+ // avoid error that fires when props are passed into React.fragment
54
+ , { ...(hasFocusZone && {
55
+ focusZoneDirection: 'vertical',
56
+ enableFocusRing: false,
57
+ navigateAtEnd: 'NavigateContinue',
58
+ }), children: childrenWithSet }) }));
59
+ };
60
+ },
73
61
  });
74
- //# sourceMappingURL=MenuGroup.js.map
62
+ //# sourceMappingURL=MenuGroup.js.map
@@ -2,16 +2,16 @@ import type { ViewProps } from 'react-native';
2
2
  import type { IViewProps } from '@fluentui-react-native/adapters';
3
3
  import type { FocusZoneProps } from '@fluentui-react-native/focus-zone';
4
4
  import type { LayoutTokens } from '@fluentui-react-native/tokens';
5
- export declare const menuGroupName = 'MenuGroup';
5
+ export declare const menuGroupName = "MenuGroup";
6
6
  export type MenuGroupTokens = LayoutTokens;
7
7
  export type MenuGroupProps = IViewProps;
8
8
  export interface MenuGroupSlotProps {
9
- root: ViewProps;
10
- contentWrapper: FocusZoneProps;
9
+ root: ViewProps;
10
+ contentWrapper: FocusZoneProps;
11
11
  }
12
12
  export interface MenuGroupType {
13
- props: MenuGroupProps;
14
- tokens: MenuGroupTokens;
15
- slotProps: MenuGroupSlotProps;
13
+ props: MenuGroupProps;
14
+ tokens: MenuGroupTokens;
15
+ slotProps: MenuGroupSlotProps;
16
16
  }
17
- //# sourceMappingURL=MenuGroup.types.d.ts.map
17
+ //# sourceMappingURL=MenuGroup.types.d.ts.map
@@ -1,2 +1,2 @@
1
1
  export const menuGroupName = 'MenuGroup';
2
- //# sourceMappingURL=MenuGroup.types.js.map
2
+ //# sourceMappingURL=MenuGroup.types.js.map
@@ -1,4 +1,4 @@
1
1
  export { MenuGroup } from './MenuGroup';
2
2
  export { menuGroupName } from './MenuGroup.types';
3
3
  export type { MenuGroupProps, MenuGroupTokens, MenuGroupSlotProps, MenuGroupType } from './MenuGroup.types';
4
- //# sourceMappingURL=index.d.ts.map
4
+ //# sourceMappingURL=index.d.ts.map
@@ -1,3 +1,3 @@
1
1
  export { MenuGroup } from './MenuGroup';
2
2
  export { menuGroupName } from './MenuGroup.types';
3
- //# sourceMappingURL=index.js.map
3
+ //# sourceMappingURL=index.js.map
@@ -1,8 +1,3 @@
1
1
  import type { MenuGroupHeaderProps } from './MenuGroupHeader.types';
2
- export declare const MenuGroupHeader: import('@fluentui-react-native/framework').ComposableComponent<
3
- MenuGroupHeaderProps,
4
- import('./MenuGroupHeader.types').MenuGroupHeaderSlotProps,
5
- import('./MenuGroupHeader.types').MenuGroupHeaderTokens,
6
- import('@fluentui-react-native/framework-base').ObjectBase
7
- >;
8
- //# sourceMappingURL=MenuGroupHeader.d.ts.map
2
+ export declare const MenuGroupHeader: import("@fluentui-react-native/framework").ComposableComponent<MenuGroupHeaderProps, import("./MenuGroupHeader.types").MenuGroupHeaderSlotProps, import("./MenuGroupHeader.types").MenuGroupHeaderTokens, import("@fluentui-react-native/framework-base").ObjectBase>;
3
+ //# sourceMappingURL=MenuGroupHeader.d.ts.map
@@ -1,20 +1,20 @@
1
- import { jsx as _jsx } from '@fluentui-react-native/framework-base/jsx-runtime';
1
+ import { jsx as _jsx } from "@fluentui-react-native/framework-base/jsx-runtime";
2
2
  import { compose, mergeProps } from '@fluentui-react-native/framework';
3
3
  import { TextV1 as Text } from '@fluentui-react-native/text';
4
4
  import { stylingSettings } from './MenuGroupHeader.styling';
5
5
  import { menuGroupHeaderName } from './MenuGroupHeader.types';
6
6
  export const MenuGroupHeader = compose({
7
- displayName: menuGroupHeaderName,
8
- ...stylingSettings,
9
- slots: {
10
- root: Text,
11
- },
12
- useRender: (userProps, useSlots) => {
13
- const Slots = useSlots(userProps);
14
- return (final, children) => {
15
- const { ...mergedProps } = mergeProps(userProps, final);
16
- return _jsx(Slots.root, { accessible: userProps.accessible, ...mergedProps, children: children });
17
- };
18
- },
7
+ displayName: menuGroupHeaderName,
8
+ ...stylingSettings,
9
+ slots: {
10
+ root: Text,
11
+ },
12
+ useRender: (userProps, useSlots) => {
13
+ const Slots = useSlots(userProps);
14
+ return (final, children) => {
15
+ const { ...mergedProps } = mergeProps(userProps, final);
16
+ return (_jsx(Slots.root, { accessible: userProps.accessible, ...mergedProps, children: children }));
17
+ };
18
+ },
19
19
  });
20
- //# sourceMappingURL=MenuGroupHeader.js.map
20
+ //# sourceMappingURL=MenuGroupHeader.js.map
@@ -1,4 +1,4 @@
1
1
  import type { UseStylingOptions } from '@fluentui-react-native/framework';
2
2
  import type { MenuGroupHeaderProps, MenuGroupHeaderTokens, MenuGroupHeaderSlotProps } from './MenuGroupHeader.types';
3
3
  export declare const stylingSettings: UseStylingOptions<MenuGroupHeaderProps, MenuGroupHeaderSlotProps, MenuGroupHeaderTokens>;
4
- //# sourceMappingURL=MenuGroupHeader.styling.d.ts.map
4
+ //# sourceMappingURL=MenuGroupHeader.styling.d.ts.map
@@ -3,20 +3,17 @@ import { buildProps } from '@fluentui-react-native/framework';
3
3
  import { menuGroupHeaderName } from './MenuGroupHeader.types';
4
4
  import { defaultMenuGroupHeaderTokens } from './MenuGroupHeaderTokens';
5
5
  export const stylingSettings = {
6
- tokens: [defaultMenuGroupHeaderTokens, menuGroupHeaderName],
7
- slotProps: {
8
- root: buildProps(
9
- (tokens, theme) => {
10
- return {
11
- color: tokens.color,
12
- style: {
13
- marginStart: tokens.gap,
14
- ...fontStyles.from(tokens, theme),
15
- },
16
- };
17
- },
18
- ['color'],
19
- ),
20
- },
6
+ tokens: [defaultMenuGroupHeaderTokens, menuGroupHeaderName],
7
+ slotProps: {
8
+ root: buildProps((tokens, theme) => {
9
+ return {
10
+ color: tokens.color,
11
+ style: {
12
+ marginStart: tokens.gap,
13
+ ...fontStyles.from(tokens, theme),
14
+ },
15
+ };
16
+ }, ['color']),
17
+ },
21
18
  };
22
- //# sourceMappingURL=MenuGroupHeader.styling.js.map
19
+ //# sourceMappingURL=MenuGroupHeader.styling.js.map
@@ -1,16 +1,16 @@
1
1
  import type { TextProps } from '@fluentui-react-native/text';
2
2
  import type { FontTokens, IColorTokens, LayoutTokens } from '@fluentui-react-native/tokens';
3
- export declare const menuGroupHeaderName = 'MenuGroupHeader';
3
+ export declare const menuGroupHeaderName = "MenuGroupHeader";
4
4
  export interface MenuGroupHeaderTokens extends LayoutTokens, FontTokens, IColorTokens {
5
- gap?: number;
5
+ gap?: number;
6
6
  }
7
7
  export type MenuGroupHeaderProps = TextProps;
8
8
  export interface MenuGroupHeaderSlotProps {
9
- root: TextProps;
9
+ root: TextProps;
10
10
  }
11
11
  export interface MenuGroupHeaderType {
12
- props: MenuGroupHeaderProps;
13
- tokens: MenuGroupHeaderTokens;
14
- slotProps: MenuGroupHeaderSlotProps;
12
+ props: MenuGroupHeaderProps;
13
+ tokens: MenuGroupHeaderTokens;
14
+ slotProps: MenuGroupHeaderSlotProps;
15
15
  }
16
- //# sourceMappingURL=MenuGroupHeader.types.d.ts.map
16
+ //# sourceMappingURL=MenuGroupHeader.types.d.ts.map
@@ -1,2 +1,2 @@
1
1
  export const menuGroupHeaderName = 'MenuGroupHeader';
2
- //# sourceMappingURL=MenuGroupHeader.types.js.map
2
+ //# sourceMappingURL=MenuGroupHeader.types.js.map
@@ -2,4 +2,4 @@ import type { Theme } from '@fluentui-react-native/framework';
2
2
  import type { TokenSettings } from '@fluentui-react-native/use-styling';
3
3
  import type { MenuGroupHeaderTokens } from './MenuGroupHeader.types';
4
4
  export declare const defaultMenuGroupHeaderTokens: TokenSettings<MenuGroupHeaderTokens, Theme>;
5
- //# sourceMappingURL=MenuGroupHeaderTokens.d.ts.map
5
+ //# sourceMappingURL=MenuGroupHeaderTokens.d.ts.map
@@ -1,10 +1,10 @@
1
1
  import { globalTokens } from '@fluentui-react-native/theme-tokens';
2
2
  export const defaultMenuGroupHeaderTokens = (t) => ({
3
- color: t.colors.neutralForeground2,
4
- fontFamily: t.typography.families.primary,
5
- fontSize: globalTokens.font.size300,
6
- fontWeight: globalTokens.font.weight.regular,
7
- gap: globalTokens.size40,
8
- padding: globalTokens.size60,
3
+ color: t.colors.neutralForeground2,
4
+ fontFamily: t.typography.families.primary,
5
+ fontSize: globalTokens.font.size300,
6
+ fontWeight: globalTokens.font.weight.regular,
7
+ gap: globalTokens.size40,
8
+ padding: globalTokens.size60,
9
9
  });
10
- //# sourceMappingURL=MenuGroupHeaderTokens.js.map
10
+ //# sourceMappingURL=MenuGroupHeaderTokens.js.map
@@ -2,4 +2,4 @@ import type { Theme } from '@fluentui-react-native/framework';
2
2
  import type { TokenSettings } from '@fluentui-react-native/use-styling';
3
3
  import type { MenuGroupHeaderTokens } from './MenuGroupHeader.types';
4
4
  export declare const defaultMenuGroupHeaderTokens: TokenSettings<MenuGroupHeaderTokens, Theme>;
5
- //# sourceMappingURL=MenuGroupHeaderTokens.macos.d.ts.map
5
+ //# sourceMappingURL=MenuGroupHeaderTokens.macos.d.ts.map
@@ -1,11 +1,11 @@
1
1
  import { globalTokens } from '@fluentui-react-native/theme-tokens';
2
2
  export const defaultMenuGroupHeaderTokens = (t) => ({
3
- color: t.colors.disabledText,
4
- fontFamily: t.typography.families.primary,
5
- fontSize: 13,
6
- fontWeight: globalTokens.font.weight.regular,
7
- gap: globalTokens.size40,
8
- paddingHorizontal: 5,
9
- paddingVertical: 3,
3
+ color: t.colors.disabledText,
4
+ fontFamily: t.typography.families.primary,
5
+ fontSize: 13,
6
+ fontWeight: globalTokens.font.weight.regular,
7
+ gap: globalTokens.size40,
8
+ paddingHorizontal: 5,
9
+ paddingVertical: 3,
10
10
  });
11
- //# sourceMappingURL=MenuGroupHeaderTokens.macos.js.map
11
+ //# sourceMappingURL=MenuGroupHeaderTokens.macos.js.map
@@ -1,4 +1,4 @@
1
1
  export { MenuGroupHeader } from './MenuGroupHeader';
2
2
  export { menuGroupHeaderName } from './MenuGroupHeader.types';
3
3
  export type { MenuGroupHeaderProps, MenuGroupHeaderTokens, MenuGroupHeaderSlotProps, MenuGroupHeaderType } from './MenuGroupHeader.types';
4
- //# sourceMappingURL=index.d.ts.map
4
+ //# sourceMappingURL=index.d.ts.map
@@ -1,3 +1,3 @@
1
1
  export { MenuGroupHeader } from './MenuGroupHeader';
2
2
  export { menuGroupHeaderName } from './MenuGroupHeader.types';
3
- //# sourceMappingURL=index.js.map
3
+ //# sourceMappingURL=index.js.map
@@ -1,12 +1,7 @@
1
1
  /** @jsxImportSource @fluentui-react-native/framework-base */
2
2
  import React from 'react';
3
3
  import type { MenuItemProps } from './MenuItem.types';
4
- export declare const MenuItem: import('@fluentui-react-native/framework').ComposableComponent<
5
- MenuItemProps,
6
- import('./MenuItem.types').MenuItemSlotProps,
7
- import('./MenuItem.types').MenuItemTokens,
8
- import('@fluentui-react-native/framework-base').ObjectBase
9
- >;
4
+ export declare const MenuItem: import("@fluentui-react-native/framework").ComposableComponent<MenuItemProps, import("./MenuItem.types").MenuItemSlotProps, import("./MenuItem.types").MenuItemTokens, import("@fluentui-react-native/framework-base").ObjectBase>;
10
5
  export declare const getAccessibilityLabel: (accessibilityLabel: string, child: React.ReactNode) => string;
11
6
  export declare const getTooltip: (tooltip: string, hasTooltips: boolean, child: React.ReactNode) => string;
12
- //# sourceMappingURL=MenuItem.d.ts.map
7
+ //# sourceMappingURL=MenuItem.d.ts.map
@@ -1,4 +1,4 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from '@fluentui-react-native/framework-base/jsx-runtime';
1
+ import { jsx as _jsx, jsxs as _jsxs } from "@fluentui-react-native/framework-base/jsx-runtime";
2
2
  import { I18nManager, Image, Pressable, View } from 'react-native';
3
3
  import { compose, memoize, mergeProps } from '@fluentui-react-native/framework';
4
4
  import { IconV1 as Icon } from '@fluentui-react-native/icon';
@@ -8,78 +8,56 @@ import { stylingSettings } from './MenuItem.styling';
8
8
  import { menuItemName } from './MenuItem.types';
9
9
  import { useMenuItem } from './useMenuItem';
10
10
  export const MenuItem = compose({
11
- displayName: menuItemName,
12
- ...stylingSettings,
13
- slots: {
14
- root: Pressable,
15
- checkmark: View,
16
- content: Text,
17
- iconPlaceholder: View,
18
- imgIcon: Image,
19
- fontOrSvgIcon: Icon,
20
- submenuIndicator: SvgXml,
21
- },
22
- useRender: (userProps, useSlots) => {
23
- const menuItem = useMenuItem(userProps);
24
- const Slots = useSlots(userProps, (layer) => menuItem.state[layer] || userProps[layer]);
25
- return (final, children) => {
26
- const { accessibilityLabel, icon, tooltip, ...mergedProps } = mergeProps(menuItem.props, final);
27
- const chevronXml = I18nManager.isRTL
28
- ? `
11
+ displayName: menuItemName,
12
+ ...stylingSettings,
13
+ slots: {
14
+ root: Pressable,
15
+ checkmark: View,
16
+ content: Text,
17
+ iconPlaceholder: View,
18
+ imgIcon: Image,
19
+ fontOrSvgIcon: Icon,
20
+ submenuIndicator: SvgXml,
21
+ },
22
+ useRender: (userProps, useSlots) => {
23
+ const menuItem = useMenuItem(userProps);
24
+ const Slots = useSlots(userProps, (layer) => menuItem.state[layer] || userProps[layer]);
25
+ return (final, children) => {
26
+ const { accessibilityLabel, icon, tooltip, ...mergedProps } = mergeProps(menuItem.props, final);
27
+ const chevronXml = I18nManager.isRTL
28
+ ? `
29
29
  <svg>
30
30
  <path fill='currentColor' d="M10.2603 3.20041C10.5639 3.48226 10.5814 3.95681 10.2996 4.26034L6.77348 8L10.2996 11.7397C10.5814 12.0432 10.5639 12.5177 10.2603 12.7996C9.9568 13.0815 9.48226 13.0639 9.2004 12.7603L5.2004 8.51034C4.9332 8.22258 4.9332 7.77743 5.2004 7.48966L9.20041 3.23966C9.48226 2.93613 9.95681 2.91856 10.2603 3.20041Z"/>
31
31
  </svg>`
32
- : `
32
+ : `
33
33
  <svg>
34
34
  <path fill='currentColor' d="M5.73966 3.20041C5.43613 3.48226 5.41856 3.95681 5.70041 4.26034L9.22652 8L5.70041 11.7397C5.41856 12.0432 5.43613 12.5177 5.73967 12.7996C6.0432 13.0815 6.51775 13.0639 6.7996 12.7603L10.7996 8.51034C11.0668 8.22258 11.0668 7.77743 10.7996 7.48966L6.7996 3.23966C6.51775 2.93613 6.0432 2.91856 5.73966 3.20041Z"/>
35
35
  </svg>`;
36
- // We only automatically support the one child string.
37
- const label = getAccessibilityLabel(accessibilityLabel, children[0]);
38
- const tooltipResult = getTooltip(tooltip, menuItem.state.hasTooltips, children[0]);
39
- return _jsxs(Slots.root, {
40
- ...mergedProps,
41
- accessibilityLabel: label,
42
- children: [
43
- menuItem.state.hasCheckmarks && _jsx(Slots.checkmark, { accessible: false }),
44
- (icon || menuItem.state.hasIcons) &&
45
- _jsxs(Slots.iconPlaceholder, {
46
- accessible: false,
47
- children: [
48
- icon && icon.source && _jsx(Slots.imgIcon, { accessible: false, ...icon }),
49
- icon && (icon.svgSource || icon.fontSource) && _jsx(Slots.fontOrSvgIcon, { accessible: false, ...icon }),
50
- ],
51
- }),
52
- children &&
53
- _jsx(Slots.content, {
54
- accessible: false,
55
- tooltip: tooltipResult,
56
- ...(tooltipResult && { alwaysShowToolTip: true }),
57
- children: children,
58
- }),
59
- menuItem.state.hasSubmenu && _jsx(Slots.submenuIndicator, { accessible: false, xml: chevronXml }),
60
- ],
61
- });
62
- };
63
- },
36
+ // We only automatically support the one child string.
37
+ const label = getAccessibilityLabel(accessibilityLabel, children[0]);
38
+ const tooltipResult = getTooltip(tooltip, menuItem.state.hasTooltips, children[0]);
39
+ return (_jsxs(Slots.root, { ...mergedProps, accessibilityLabel: label, children: [menuItem.state.hasCheckmarks && _jsx(Slots.checkmark, { accessible: false }), (icon || menuItem.state.hasIcons) && (_jsxs(Slots.iconPlaceholder, { accessible: false, children: [icon && icon.source && _jsx(Slots.imgIcon, { accessible: false, ...icon }), icon && (icon.svgSource || icon.fontSource) && _jsx(Slots.fontOrSvgIcon, { accessible: false, ...icon })] })), children && (_jsx(Slots.content, { accessible: false, tooltip: tooltipResult, ...(tooltipResult && { alwaysShowToolTip: true }), children: children })), menuItem.state.hasSubmenu && _jsx(Slots.submenuIndicator, { accessible: false, xml: chevronXml })] }));
40
+ };
41
+ },
64
42
  });
65
43
  const getAccessibilityLabelWorker = (accessibilityLabel, child) => {
66
- if (accessibilityLabel !== undefined) {
67
- return accessibilityLabel;
68
- }
69
- if (typeof child === 'string') {
70
- return child;
71
- }
72
- return undefined;
44
+ if (accessibilityLabel !== undefined) {
45
+ return accessibilityLabel;
46
+ }
47
+ if (typeof child === 'string') {
48
+ return child;
49
+ }
50
+ return undefined;
73
51
  };
74
52
  export const getAccessibilityLabel = memoize(getAccessibilityLabelWorker);
75
53
  const getTooltipWorker = (tooltip, hasTooltips, child) => {
76
- if (tooltip !== undefined) {
77
- return tooltip;
78
- }
79
- if (hasTooltips && typeof child === 'string') {
80
- return child;
81
- }
82
- return undefined;
54
+ if (tooltip !== undefined) {
55
+ return tooltip;
56
+ }
57
+ if (hasTooltips && typeof child === 'string') {
58
+ return child;
59
+ }
60
+ return undefined;
83
61
  };
84
62
  export const getTooltip = memoize(getTooltipWorker);
85
- //# sourceMappingURL=MenuItem.js.map
63
+ //# sourceMappingURL=MenuItem.js.map
@@ -2,4 +2,4 @@ import type { UseStylingOptions } from '@fluentui-react-native/framework';
2
2
  import type { MenuItemProps, MenuItemTokens, MenuItemSlotProps } from './MenuItem.types';
3
3
  export declare const menuItemStates: (keyof MenuItemTokens)[];
4
4
  export declare const stylingSettings: UseStylingOptions<MenuItemProps, MenuItemSlotProps, MenuItemTokens>;
5
- //# sourceMappingURL=MenuItem.styling.d.ts.map
5
+ //# sourceMappingURL=MenuItem.styling.d.ts.map