@fluentui-react-native/menu 1.4.34 → 1.5.0

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 (297) hide show
  1. package/CHANGELOG.json +22 -1
  2. package/CHANGELOG.md +11 -2
  3. package/lib/Menu/Menu.d.ts.map +1 -1
  4. package/lib/Menu/Menu.js +2 -6
  5. package/lib/Menu/Menu.js.map +1 -1
  6. package/lib/Menu/Menu.types.d.ts +20 -1
  7. package/lib/Menu/Menu.types.d.ts.map +1 -1
  8. package/lib/Menu/Menu.types.js +6 -0
  9. package/lib/Menu/Menu.types.js.map +1 -1
  10. package/lib/Menu/renderMenu.android.d.ts +5 -0
  11. package/lib/Menu/renderMenu.android.d.ts.map +1 -0
  12. package/lib/Menu/renderMenu.android.js +14 -0
  13. package/lib/Menu/renderMenu.android.js.map +1 -0
  14. package/lib/Menu/renderMenu.d.ts +5 -0
  15. package/lib/Menu/renderMenu.d.ts.map +1 -0
  16. package/lib/Menu/renderMenu.js +10 -0
  17. package/lib/Menu/renderMenu.js.map +1 -0
  18. package/lib/Menu/useMenu.android.d.ts +3 -0
  19. package/lib/Menu/useMenu.android.d.ts.map +1 -0
  20. package/lib/Menu/useMenu.android.js +257 -0
  21. package/lib/Menu/useMenu.android.js.map +1 -0
  22. package/lib/MenuCallout/MenuCallout.android.d.ts +4 -0
  23. package/lib/MenuCallout/MenuCallout.android.d.ts.map +1 -0
  24. package/lib/MenuCallout/MenuCallout.android.js +33 -0
  25. package/lib/MenuCallout/MenuCallout.android.js.map +1 -0
  26. package/lib/MenuCallout/MenuCallout.d.ts +4 -0
  27. package/lib/MenuCallout/MenuCallout.d.ts.map +1 -0
  28. package/lib/MenuCallout/MenuCallout.js +15 -0
  29. package/lib/MenuCallout/MenuCallout.js.map +1 -0
  30. package/lib/MenuCallout/MenuCallout.types.d.ts +18 -0
  31. package/lib/MenuCallout/MenuCallout.types.d.ts.map +1 -0
  32. package/lib/MenuCallout/MenuCallout.types.js +2 -0
  33. package/lib/MenuCallout/MenuCallout.types.js.map +1 -0
  34. package/lib/MenuCallout/index.d.ts +4 -0
  35. package/lib/MenuCallout/index.d.ts.map +1 -0
  36. package/lib/MenuCallout/index.js +3 -0
  37. package/lib/MenuCallout/index.js.map +1 -0
  38. package/lib/MenuDivider/MenuDivider.d.ts +2 -1
  39. package/lib/MenuDivider/MenuDivider.d.ts.map +1 -1
  40. package/lib/MenuDivider/MenuDivider.styling.d.ts.map +1 -1
  41. package/lib/MenuDivider/MenuDivider.styling.js +4 -8
  42. package/lib/MenuDivider/MenuDivider.styling.js.map +1 -1
  43. package/lib/MenuDivider/MenuDivider.types.d.ts +6 -1
  44. package/lib/MenuDivider/MenuDivider.types.d.ts.map +1 -1
  45. package/lib/MenuDivider/MenuDivider.types.js +1 -0
  46. package/lib/MenuDivider/MenuDivider.types.js.map +1 -1
  47. package/lib/MenuDivider/MenuDividerTokens.android.d.ts +5 -0
  48. package/lib/MenuDivider/MenuDividerTokens.android.d.ts.map +1 -0
  49. package/lib/MenuDivider/MenuDividerTokens.android.js +7 -0
  50. package/lib/MenuDivider/MenuDividerTokens.android.js.map +1 -0
  51. package/lib/MenuDivider/index.d.ts +1 -1
  52. package/lib/MenuDivider/index.d.ts.map +1 -1
  53. package/lib/MenuItem/MenuItem.styling.d.ts.map +1 -1
  54. package/lib/MenuItem/MenuItem.styling.js +2 -1
  55. package/lib/MenuItem/MenuItem.styling.js.map +1 -1
  56. package/lib/MenuItem/MenuItem.types.d.ts +4 -0
  57. package/lib/MenuItem/MenuItem.types.d.ts.map +1 -1
  58. package/lib/MenuItem/MenuItemTokens.android.d.ts +5 -0
  59. package/lib/MenuItem/MenuItemTokens.android.d.ts.map +1 -0
  60. package/lib/MenuItem/MenuItemTokens.android.js +20 -0
  61. package/lib/MenuItem/MenuItemTokens.android.js.map +1 -0
  62. package/lib/MenuItem/useMenuItem.d.ts.map +1 -1
  63. package/lib/MenuItem/useMenuItem.js.map +1 -1
  64. package/lib/MenuItemCheckbox/MenuItemCheckbox.d.ts.map +1 -1
  65. package/lib/MenuItemCheckbox/MenuItemCheckbox.js +5 -10
  66. package/lib/MenuItemCheckbox/MenuItemCheckbox.js.map +1 -1
  67. package/lib/MenuItemCheckbox/MenuItemCheckbox.styling.d.ts.map +1 -1
  68. package/lib/MenuItemCheckbox/MenuItemCheckbox.styling.js +25 -20
  69. package/lib/MenuItemCheckbox/MenuItemCheckbox.styling.js.map +1 -1
  70. package/lib/MenuItemCheckbox/MenuItemCheckbox.types.d.ts +40 -0
  71. package/lib/MenuItemCheckbox/MenuItemCheckbox.types.d.ts.map +1 -1
  72. package/lib/MenuItemCheckbox/MenuItemCheckboxTokens.android.d.ts +5 -0
  73. package/lib/MenuItemCheckbox/MenuItemCheckboxTokens.android.d.ts.map +1 -0
  74. package/lib/MenuItemCheckbox/MenuItemCheckboxTokens.android.js +41 -0
  75. package/lib/MenuItemCheckbox/MenuItemCheckboxTokens.android.js.map +1 -0
  76. package/lib/MenuItemRadio/MenuItemRadio.d.ts +6 -3
  77. package/lib/MenuItemRadio/MenuItemRadio.d.ts.map +1 -1
  78. package/lib/MenuItemRadio/MenuItemRadio.js +37 -9
  79. package/lib/MenuItemRadio/MenuItemRadio.js.map +1 -1
  80. package/lib/MenuItemRadio/MenuItemRadio.styling.android.d.ts +6 -0
  81. package/lib/MenuItemRadio/MenuItemRadio.styling.android.d.ts.map +1 -0
  82. package/lib/MenuItemRadio/MenuItemRadio.styling.android.js +57 -0
  83. package/lib/MenuItemRadio/MenuItemRadio.styling.android.js.map +1 -0
  84. package/lib/MenuItemRadio/MenuItemRadio.styling.d.ts +5 -0
  85. package/lib/MenuItemRadio/MenuItemRadio.styling.d.ts.map +1 -0
  86. package/lib/MenuItemRadio/MenuItemRadio.styling.js +37 -0
  87. package/lib/MenuItemRadio/MenuItemRadio.styling.js.map +1 -0
  88. package/lib/MenuItemRadio/MenuItemRadio.types.d.ts +162 -0
  89. package/lib/MenuItemRadio/MenuItemRadio.types.d.ts.map +1 -0
  90. package/lib/MenuItemRadio/MenuItemRadio.types.js +2 -0
  91. package/lib/MenuItemRadio/MenuItemRadio.types.js.map +1 -0
  92. package/lib/MenuItemRadio/MenuItemRadioTokens.android.d.ts +5 -0
  93. package/lib/MenuItemRadio/MenuItemRadioTokens.android.d.ts.map +1 -0
  94. package/lib/MenuItemRadio/MenuItemRadioTokens.android.js +44 -0
  95. package/lib/MenuItemRadio/MenuItemRadioTokens.android.js.map +1 -0
  96. package/lib/MenuItemRadio/MenuItemRadioTokens.d.ts +5 -0
  97. package/lib/MenuItemRadio/MenuItemRadioTokens.d.ts.map +1 -0
  98. package/lib/MenuItemRadio/MenuItemRadioTokens.js +52 -0
  99. package/lib/MenuItemRadio/MenuItemRadioTokens.js.map +1 -0
  100. package/lib/MenuItemRadio/index.d.ts +2 -1
  101. package/lib/MenuItemRadio/index.d.ts.map +1 -1
  102. package/lib/MenuItemRadio/index.js +1 -1
  103. package/lib/MenuItemRadio/index.js.map +1 -1
  104. package/lib/MenuItemRadio/useMenuItemRadio.d.ts +2 -2
  105. package/lib/MenuItemRadio/useMenuItemRadio.d.ts.map +1 -1
  106. package/lib/MenuItemRadio/useMenuItemRadio.js.map +1 -1
  107. package/lib/MenuList/MenuList.styling.d.ts.map +1 -1
  108. package/lib/MenuList/MenuList.styling.js +2 -1
  109. package/lib/MenuList/MenuList.styling.js.map +1 -1
  110. package/lib/MenuList/MenuList.types.d.ts +4 -0
  111. package/lib/MenuList/MenuList.types.d.ts.map +1 -1
  112. package/lib/MenuList/MenuListTokens.android.d.ts +5 -0
  113. package/lib/MenuList/MenuListTokens.android.d.ts.map +1 -0
  114. package/lib/MenuList/MenuListTokens.android.js +7 -0
  115. package/lib/MenuList/MenuListTokens.android.js.map +1 -0
  116. package/lib/MenuPopover/MenuPopover.d.ts +4 -2
  117. package/lib/MenuPopover/MenuPopover.d.ts.map +1 -1
  118. package/lib/MenuPopover/MenuPopover.js +2 -2
  119. package/lib/MenuPopover/MenuPopover.js.map +1 -1
  120. package/lib/MenuPopover/MenuPopover.types.d.ts +12 -1
  121. package/lib/MenuPopover/MenuPopover.types.d.ts.map +1 -1
  122. package/lib/MenuPopover/MenuPopoverTokens.android.d.ts +5 -0
  123. package/lib/MenuPopover/MenuPopoverTokens.android.d.ts.map +1 -0
  124. package/lib/MenuPopover/MenuPopoverTokens.android.js +14 -0
  125. package/lib/MenuPopover/MenuPopoverTokens.android.js.map +1 -0
  126. package/lib/MenuPopover/MenuPopoverTokens.d.ts +4 -2
  127. package/lib/MenuPopover/MenuPopoverTokens.d.ts.map +1 -1
  128. package/lib/index.d.ts +1 -1
  129. package/lib/index.d.ts.map +1 -1
  130. package/lib/index.js +1 -1
  131. package/lib/index.js.map +1 -1
  132. package/lib-commonjs/Menu/Menu.d.ts.map +1 -1
  133. package/lib-commonjs/Menu/Menu.js +2 -6
  134. package/lib-commonjs/Menu/Menu.js.map +1 -1
  135. package/lib-commonjs/Menu/Menu.types.d.ts +20 -1
  136. package/lib-commonjs/Menu/Menu.types.d.ts.map +1 -1
  137. package/lib-commonjs/Menu/Menu.types.js +7 -1
  138. package/lib-commonjs/Menu/Menu.types.js.map +1 -1
  139. package/lib-commonjs/Menu/renderMenu.android.d.ts +5 -0
  140. package/lib-commonjs/Menu/renderMenu.android.d.ts.map +1 -0
  141. package/lib-commonjs/Menu/renderMenu.android.js +19 -0
  142. package/lib-commonjs/Menu/renderMenu.android.js.map +1 -0
  143. package/lib-commonjs/Menu/renderMenu.d.ts +5 -0
  144. package/lib-commonjs/Menu/renderMenu.d.ts.map +1 -0
  145. package/lib-commonjs/Menu/renderMenu.js +15 -0
  146. package/lib-commonjs/Menu/renderMenu.js.map +1 -0
  147. package/lib-commonjs/Menu/useMenu.android.d.ts +3 -0
  148. package/lib-commonjs/Menu/useMenu.android.d.ts.map +1 -0
  149. package/lib-commonjs/Menu/useMenu.android.js +261 -0
  150. package/lib-commonjs/Menu/useMenu.android.js.map +1 -0
  151. package/lib-commonjs/MenuCallout/MenuCallout.android.d.ts +4 -0
  152. package/lib-commonjs/MenuCallout/MenuCallout.android.d.ts.map +1 -0
  153. package/lib-commonjs/MenuCallout/MenuCallout.android.js +36 -0
  154. package/lib-commonjs/MenuCallout/MenuCallout.android.js.map +1 -0
  155. package/lib-commonjs/MenuCallout/MenuCallout.d.ts +4 -0
  156. package/lib-commonjs/MenuCallout/MenuCallout.d.ts.map +1 -0
  157. package/lib-commonjs/MenuCallout/MenuCallout.js +18 -0
  158. package/lib-commonjs/MenuCallout/MenuCallout.js.map +1 -0
  159. package/lib-commonjs/MenuCallout/MenuCallout.types.d.ts +18 -0
  160. package/lib-commonjs/MenuCallout/MenuCallout.types.d.ts.map +1 -0
  161. package/lib-commonjs/MenuCallout/MenuCallout.types.js +5 -0
  162. package/lib-commonjs/MenuCallout/MenuCallout.types.js.map +1 -0
  163. package/lib-commonjs/MenuCallout/index.d.ts +4 -0
  164. package/lib-commonjs/MenuCallout/index.d.ts.map +1 -0
  165. package/lib-commonjs/MenuCallout/index.js +8 -0
  166. package/lib-commonjs/MenuCallout/index.js.map +1 -0
  167. package/lib-commonjs/MenuDivider/MenuDivider.d.ts +2 -1
  168. package/lib-commonjs/MenuDivider/MenuDivider.d.ts.map +1 -1
  169. package/lib-commonjs/MenuDivider/MenuDivider.styling.d.ts.map +1 -1
  170. package/lib-commonjs/MenuDivider/MenuDivider.styling.js +4 -8
  171. package/lib-commonjs/MenuDivider/MenuDivider.styling.js.map +1 -1
  172. package/lib-commonjs/MenuDivider/MenuDivider.types.d.ts +6 -1
  173. package/lib-commonjs/MenuDivider/MenuDivider.types.d.ts.map +1 -1
  174. package/lib-commonjs/MenuDivider/MenuDivider.types.js +2 -1
  175. package/lib-commonjs/MenuDivider/MenuDivider.types.js.map +1 -1
  176. package/lib-commonjs/MenuDivider/MenuDividerTokens.android.d.ts +5 -0
  177. package/lib-commonjs/MenuDivider/MenuDividerTokens.android.d.ts.map +1 -0
  178. package/lib-commonjs/MenuDivider/MenuDividerTokens.android.js +11 -0
  179. package/lib-commonjs/MenuDivider/MenuDividerTokens.android.js.map +1 -0
  180. package/lib-commonjs/MenuDivider/index.d.ts +1 -1
  181. package/lib-commonjs/MenuDivider/index.d.ts.map +1 -1
  182. package/lib-commonjs/MenuItem/MenuItem.styling.d.ts.map +1 -1
  183. package/lib-commonjs/MenuItem/MenuItem.styling.js +2 -1
  184. package/lib-commonjs/MenuItem/MenuItem.styling.js.map +1 -1
  185. package/lib-commonjs/MenuItem/MenuItem.types.d.ts +4 -0
  186. package/lib-commonjs/MenuItem/MenuItem.types.d.ts.map +1 -1
  187. package/lib-commonjs/MenuItem/MenuItemTokens.android.d.ts +5 -0
  188. package/lib-commonjs/MenuItem/MenuItemTokens.android.d.ts.map +1 -0
  189. package/lib-commonjs/MenuItem/MenuItemTokens.android.js +24 -0
  190. package/lib-commonjs/MenuItem/MenuItemTokens.android.js.map +1 -0
  191. package/lib-commonjs/MenuItem/useMenuItem.d.ts.map +1 -1
  192. package/lib-commonjs/MenuItem/useMenuItem.js.map +1 -1
  193. package/lib-commonjs/MenuItemCheckbox/MenuItemCheckbox.d.ts.map +1 -1
  194. package/lib-commonjs/MenuItemCheckbox/MenuItemCheckbox.js +4 -9
  195. package/lib-commonjs/MenuItemCheckbox/MenuItemCheckbox.js.map +1 -1
  196. package/lib-commonjs/MenuItemCheckbox/MenuItemCheckbox.styling.d.ts.map +1 -1
  197. package/lib-commonjs/MenuItemCheckbox/MenuItemCheckbox.styling.js +25 -20
  198. package/lib-commonjs/MenuItemCheckbox/MenuItemCheckbox.styling.js.map +1 -1
  199. package/lib-commonjs/MenuItemCheckbox/MenuItemCheckbox.types.d.ts +40 -0
  200. package/lib-commonjs/MenuItemCheckbox/MenuItemCheckbox.types.d.ts.map +1 -1
  201. package/lib-commonjs/MenuItemCheckbox/MenuItemCheckboxTokens.android.d.ts +5 -0
  202. package/lib-commonjs/MenuItemCheckbox/MenuItemCheckboxTokens.android.d.ts.map +1 -0
  203. package/lib-commonjs/MenuItemCheckbox/MenuItemCheckboxTokens.android.js +45 -0
  204. package/lib-commonjs/MenuItemCheckbox/MenuItemCheckboxTokens.android.js.map +1 -0
  205. package/lib-commonjs/MenuItemRadio/MenuItemRadio.d.ts +6 -3
  206. package/lib-commonjs/MenuItemRadio/MenuItemRadio.d.ts.map +1 -1
  207. package/lib-commonjs/MenuItemRadio/MenuItemRadio.js +39 -10
  208. package/lib-commonjs/MenuItemRadio/MenuItemRadio.js.map +1 -1
  209. package/lib-commonjs/MenuItemRadio/MenuItemRadio.styling.android.d.ts +6 -0
  210. package/lib-commonjs/MenuItemRadio/MenuItemRadio.styling.android.d.ts.map +1 -0
  211. package/lib-commonjs/MenuItemRadio/MenuItemRadio.styling.android.js +60 -0
  212. package/lib-commonjs/MenuItemRadio/MenuItemRadio.styling.android.js.map +1 -0
  213. package/lib-commonjs/MenuItemRadio/MenuItemRadio.styling.d.ts +5 -0
  214. package/lib-commonjs/MenuItemRadio/MenuItemRadio.styling.d.ts.map +1 -0
  215. package/lib-commonjs/MenuItemRadio/MenuItemRadio.styling.js +40 -0
  216. package/lib-commonjs/MenuItemRadio/MenuItemRadio.styling.js.map +1 -0
  217. package/lib-commonjs/MenuItemRadio/MenuItemRadio.types.d.ts +162 -0
  218. package/lib-commonjs/MenuItemRadio/MenuItemRadio.types.d.ts.map +1 -0
  219. package/lib-commonjs/MenuItemRadio/MenuItemRadio.types.js +5 -0
  220. package/lib-commonjs/MenuItemRadio/MenuItemRadio.types.js.map +1 -0
  221. package/lib-commonjs/MenuItemRadio/MenuItemRadioTokens.android.d.ts +5 -0
  222. package/lib-commonjs/MenuItemRadio/MenuItemRadioTokens.android.d.ts.map +1 -0
  223. package/lib-commonjs/MenuItemRadio/MenuItemRadioTokens.android.js +48 -0
  224. package/lib-commonjs/MenuItemRadio/MenuItemRadioTokens.android.js.map +1 -0
  225. package/lib-commonjs/MenuItemRadio/MenuItemRadioTokens.d.ts +5 -0
  226. package/lib-commonjs/MenuItemRadio/MenuItemRadioTokens.d.ts.map +1 -0
  227. package/lib-commonjs/MenuItemRadio/MenuItemRadioTokens.js +56 -0
  228. package/lib-commonjs/MenuItemRadio/MenuItemRadioTokens.js.map +1 -0
  229. package/lib-commonjs/MenuItemRadio/index.d.ts +2 -1
  230. package/lib-commonjs/MenuItemRadio/index.d.ts.map +1 -1
  231. package/lib-commonjs/MenuItemRadio/index.js +1 -2
  232. package/lib-commonjs/MenuItemRadio/index.js.map +1 -1
  233. package/lib-commonjs/MenuItemRadio/useMenuItemRadio.d.ts +2 -2
  234. package/lib-commonjs/MenuItemRadio/useMenuItemRadio.d.ts.map +1 -1
  235. package/lib-commonjs/MenuItemRadio/useMenuItemRadio.js.map +1 -1
  236. package/lib-commonjs/MenuList/MenuList.styling.d.ts.map +1 -1
  237. package/lib-commonjs/MenuList/MenuList.styling.js +2 -1
  238. package/lib-commonjs/MenuList/MenuList.styling.js.map +1 -1
  239. package/lib-commonjs/MenuList/MenuList.types.d.ts +4 -0
  240. package/lib-commonjs/MenuList/MenuList.types.d.ts.map +1 -1
  241. package/lib-commonjs/MenuList/MenuListTokens.android.d.ts +5 -0
  242. package/lib-commonjs/MenuList/MenuListTokens.android.d.ts.map +1 -0
  243. package/lib-commonjs/MenuList/MenuListTokens.android.js +11 -0
  244. package/lib-commonjs/MenuList/MenuListTokens.android.js.map +1 -0
  245. package/lib-commonjs/MenuPopover/MenuPopover.d.ts +4 -2
  246. package/lib-commonjs/MenuPopover/MenuPopover.d.ts.map +1 -1
  247. package/lib-commonjs/MenuPopover/MenuPopover.js +2 -2
  248. package/lib-commonjs/MenuPopover/MenuPopover.js.map +1 -1
  249. package/lib-commonjs/MenuPopover/MenuPopover.types.d.ts +12 -1
  250. package/lib-commonjs/MenuPopover/MenuPopover.types.d.ts.map +1 -1
  251. package/lib-commonjs/MenuPopover/MenuPopoverTokens.android.d.ts +5 -0
  252. package/lib-commonjs/MenuPopover/MenuPopoverTokens.android.d.ts.map +1 -0
  253. package/lib-commonjs/MenuPopover/MenuPopoverTokens.android.js +17 -0
  254. package/lib-commonjs/MenuPopover/MenuPopoverTokens.android.js.map +1 -0
  255. package/lib-commonjs/MenuPopover/MenuPopoverTokens.d.ts +4 -2
  256. package/lib-commonjs/MenuPopover/MenuPopoverTokens.d.ts.map +1 -1
  257. package/lib-commonjs/index.d.ts +1 -1
  258. package/lib-commonjs/index.d.ts.map +1 -1
  259. package/lib-commonjs/index.js +1 -2
  260. package/lib-commonjs/index.js.map +1 -1
  261. package/package.json +2 -2
  262. package/src/Menu/Menu.tsx +3 -13
  263. package/src/Menu/Menu.types.ts +22 -1
  264. package/src/Menu/renderMenu.android.tsx +26 -0
  265. package/src/Menu/renderMenu.tsx +18 -0
  266. package/src/Menu/useMenu.android.ts +325 -0
  267. package/src/MenuCallout/MenuCallout.android.tsx +60 -0
  268. package/src/MenuCallout/MenuCallout.tsx +20 -0
  269. package/src/MenuCallout/MenuCallout.types.ts +22 -0
  270. package/src/MenuCallout/index.ts +3 -0
  271. package/src/MenuDivider/MenuDivider.styling.ts +4 -0
  272. package/src/MenuDivider/MenuDivider.types.ts +7 -1
  273. package/src/MenuDivider/MenuDividerTokens.android.ts +11 -0
  274. package/src/MenuDivider/index.ts +1 -1
  275. package/src/MenuItem/MenuItem.styling.ts +3 -1
  276. package/src/MenuItem/MenuItem.types.ts +5 -0
  277. package/src/MenuItem/MenuItemTokens.android.ts +24 -0
  278. package/src/MenuItem/useMenuItem.ts +0 -1
  279. package/src/MenuItemCheckbox/MenuItemCheckbox.styling.ts +29 -2
  280. package/src/MenuItemCheckbox/MenuItemCheckbox.tsx +15 -2
  281. package/src/MenuItemCheckbox/MenuItemCheckbox.types.ts +47 -0
  282. package/src/MenuItemCheckbox/MenuItemCheckboxTokens.android.ts +46 -0
  283. package/src/MenuItemRadio/MenuItemRadio.styling.android.ts +98 -0
  284. package/src/MenuItemRadio/MenuItemRadio.styling.ts +75 -0
  285. package/src/MenuItemRadio/MenuItemRadio.tsx +68 -9
  286. package/src/MenuItemRadio/MenuItemRadio.types.ts +190 -0
  287. package/src/MenuItemRadio/MenuItemRadioTokens.android.ts +51 -0
  288. package/src/MenuItemRadio/MenuItemRadioTokens.ts +56 -0
  289. package/src/MenuItemRadio/index.ts +9 -1
  290. package/src/MenuItemRadio/useMenuItemRadio.ts +2 -2
  291. package/src/MenuList/MenuList.styling.ts +3 -0
  292. package/src/MenuList/MenuList.types.ts +5 -0
  293. package/src/MenuList/MenuListTokens.android.ts +11 -0
  294. package/src/MenuPopover/MenuPopover.tsx +6 -2
  295. package/src/MenuPopover/MenuPopover.types.ts +14 -1
  296. package/src/MenuPopover/MenuPopoverTokens.android.ts +21 -0
  297. package/src/index.ts +10 -1
@@ -0,0 +1,56 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.defaultMenuItemRadioTokens = void 0;
4
+ var theme_tokens_1 = require("@fluentui-react-native/theme-tokens");
5
+ var defaultMenuItemRadioTokens = function (t) { return ({
6
+ backgroundColor: t.colors.neutralBackground1,
7
+ borderRadius: theme_tokens_1.globalTokens.corner.radiusNone,
8
+ checkmarkPadding: theme_tokens_1.globalTokens.size20,
9
+ checkmarkSize: 16,
10
+ checkmarkVisibility: 0,
11
+ color: t.colors.neutralForeground1,
12
+ fontFamily: t.typography.families.primary,
13
+ fontSize: theme_tokens_1.globalTokens.font.size200,
14
+ fontWeight: theme_tokens_1.globalTokens.font.weight.regular,
15
+ gap: theme_tokens_1.globalTokens.size40,
16
+ iconColor: t.colors.neutralForeground1,
17
+ iconSize: 16,
18
+ minHeight: 24,
19
+ minWidth: 160,
20
+ maxWidth: 300,
21
+ padding: theme_tokens_1.globalTokens.size40,
22
+ paddingHorizontal: theme_tokens_1.globalTokens.size80,
23
+ pressed: {
24
+ backgroundColor: t.colors.neutralBackground1Pressed,
25
+ color: t.colors.neutralForeground1Pressed,
26
+ iconColor: t.colors.neutralForeground1Pressed,
27
+ checked: {
28
+ checkmarkColor: t.colors.neutralForeground1Pressed,
29
+ checkmarkVisibility: 1,
30
+ },
31
+ },
32
+ disabled: {
33
+ backgroundColor: t.colors.neutralBackground1,
34
+ color: t.colors.neutralForegroundDisabled,
35
+ iconColor: t.colors.neutralForegroundDisabled,
36
+ checked: {
37
+ checkmarkColor: t.colors.neutralForegroundDisabled,
38
+ checkmarkVisibility: 1,
39
+ },
40
+ },
41
+ focused: {
42
+ backgroundColor: t.colors.neutralBackground1Hover,
43
+ color: t.colors.neutralForeground1Hover,
44
+ iconColor: t.colors.neutralForeground1Hover,
45
+ checked: {
46
+ checkmarkColor: t.colors.neutralForeground1Hover,
47
+ checkmarkVisibility: 1,
48
+ },
49
+ },
50
+ checked: {
51
+ checkmarkColor: t.colors.neutralForeground1,
52
+ checkmarkVisibility: 1,
53
+ },
54
+ }); };
55
+ exports.defaultMenuItemRadioTokens = defaultMenuItemRadioTokens;
56
+ //# sourceMappingURL=MenuItemRadioTokens.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MenuItemRadioTokens.js","sourceRoot":"","sources":["../../src/MenuItemRadio/MenuItemRadioTokens.ts"],"names":[],"mappings":";;;AACA,oEAAmE;AAK5D,IAAM,0BAA0B,GAA8C,UAAC,CAAQ,IAA0B,OAAA,CAAC;IACvH,eAAe,EAAE,CAAC,CAAC,MAAM,CAAC,kBAAkB;IAC5C,YAAY,EAAE,2BAAY,CAAC,MAAM,CAAC,UAAU;IAC5C,gBAAgB,EAAE,2BAAY,CAAC,MAAM;IACrC,aAAa,EAAE,EAAE;IACjB,mBAAmB,EAAE,CAAC;IACtB,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,kBAAkB;IAClC,UAAU,EAAE,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,OAAO;IACzC,QAAQ,EAAE,2BAAY,CAAC,IAAI,CAAC,OAAO;IACnC,UAAU,EAAE,2BAAY,CAAC,IAAI,CAAC,MAAM,CAAC,OAA0B;IAC/D,GAAG,EAAE,2BAAY,CAAC,MAAM;IACxB,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,kBAAkB;IACtC,QAAQ,EAAE,EAAE;IACZ,SAAS,EAAE,EAAE;IACb,QAAQ,EAAE,GAAG;IACb,QAAQ,EAAE,GAAG;IACb,OAAO,EAAE,2BAAY,CAAC,MAAM;IAC5B,iBAAiB,EAAE,2BAAY,CAAC,MAAM;IACtC,OAAO,EAAE;QACP,eAAe,EAAE,CAAC,CAAC,MAAM,CAAC,yBAAyB;QACnD,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,yBAAyB;QACzC,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,yBAAyB;QAC7C,OAAO,EAAE;YACP,cAAc,EAAE,CAAC,CAAC,MAAM,CAAC,yBAAyB;YAClD,mBAAmB,EAAE,CAAC;SACvB;KACF;IACD,QAAQ,EAAE;QACR,eAAe,EAAE,CAAC,CAAC,MAAM,CAAC,kBAAkB;QAC5C,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,yBAAyB;QACzC,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,yBAAyB;QAC7C,OAAO,EAAE;YACP,cAAc,EAAE,CAAC,CAAC,MAAM,CAAC,yBAAyB;YAClD,mBAAmB,EAAE,CAAC;SACvB;KACF;IACD,OAAO,EAAE;QACP,eAAe,EAAE,CAAC,CAAC,MAAM,CAAC,uBAAuB;QACjD,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,uBAAuB;QACvC,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,uBAAuB;QAC3C,OAAO,EAAE;YACP,cAAc,EAAE,CAAC,CAAC,MAAM,CAAC,uBAAuB;YAChD,mBAAmB,EAAE,CAAC;SACvB;KACF;IACD,OAAO,EAAE;QACP,cAAc,EAAE,CAAC,CAAC,MAAM,CAAC,kBAAkB;QAC3C,mBAAmB,EAAE,CAAC;KACvB;CACF,CAAC,EAjDsH,CAiDtH,CAAC;AAjDU,QAAA,0BAA0B,8BAiDpC"}
@@ -1,3 +1,4 @@
1
- export { MenuItemRadio, menuItemRadioName } from './MenuItemRadio';
1
+ export { MenuItemRadio } from './MenuItemRadio';
2
2
  export { useMenuItemRadio } from './useMenuItemRadio';
3
+ export type { MenuItemRadioInfo, MenuItemRadioProps, MenuItemRadioSlotProps, MenuItemRadioTokens, MenuItemRadioType, menuItemRadioName, } from './MenuItemRadio.types';
3
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/MenuItemRadio/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/MenuItemRadio/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,YAAY,EACV,iBAAiB,EACjB,kBAAkB,EAClB,sBAAsB,EACtB,mBAAmB,EACnB,iBAAiB,EACjB,iBAAiB,GAClB,MAAM,uBAAuB,CAAC"}
@@ -1,9 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.useMenuItemRadio = exports.menuItemRadioName = exports.MenuItemRadio = void 0;
3
+ exports.useMenuItemRadio = exports.MenuItemRadio = void 0;
4
4
  var MenuItemRadio_1 = require("./MenuItemRadio");
5
5
  Object.defineProperty(exports, "MenuItemRadio", { enumerable: true, get: function () { return MenuItemRadio_1.MenuItemRadio; } });
6
- Object.defineProperty(exports, "menuItemRadioName", { enumerable: true, get: function () { return MenuItemRadio_1.menuItemRadioName; } });
7
6
  var useMenuItemRadio_1 = require("./useMenuItemRadio");
8
7
  Object.defineProperty(exports, "useMenuItemRadio", { enumerable: true, get: function () { return useMenuItemRadio_1.useMenuItemRadio; } });
9
8
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/MenuItemRadio/index.ts"],"names":[],"mappings":";;;AAAA,iDAAmE;AAA1D,8GAAA,aAAa,OAAA;AAAE,kHAAA,iBAAiB,OAAA;AACzC,uDAAsD;AAA7C,oHAAA,gBAAgB,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/MenuItemRadio/index.ts"],"names":[],"mappings":";;;AAAA,iDAAgD;AAAvC,8GAAA,aAAa,OAAA;AACtB,uDAAsD;AAA7C,oHAAA,gBAAgB,OAAA"}
@@ -1,3 +1,3 @@
1
- import type { MenuItemCheckboxProps, MenuItemCheckboxInfo } from '../MenuItemCheckbox/MenuItemCheckbox.types';
2
- export declare const useMenuItemRadio: (props: MenuItemCheckboxProps) => MenuItemCheckboxInfo;
1
+ import type { MenuItemRadioProps, MenuItemRadioInfo } from '../MenuItemRadio/MenuItemRadio.types';
2
+ export declare const useMenuItemRadio: (props: MenuItemRadioProps) => MenuItemRadioInfo;
3
3
  //# sourceMappingURL=useMenuItemRadio.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useMenuItemRadio.d.ts","sourceRoot":"","sources":["../../src/MenuItemRadio/useMenuItemRadio.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,MAAM,4CAA4C,CAAC;AAG9G,eAAO,MAAM,gBAAgB,UAAW,qBAAqB,KAAG,oBA+B/D,CAAC"}
1
+ {"version":3,"file":"useMenuItemRadio.d.ts","sourceRoot":"","sources":["../../src/MenuItemRadio/useMenuItemRadio.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAC;AAElG,eAAO,MAAM,gBAAgB,UAAW,kBAAkB,KAAG,iBA+B5D,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"useMenuItemRadio.js","sourceRoot":"","sources":["../../src/MenuItemRadio/useMenuItemRadio.ts"],"names":[],"mappings":";;;;AAAA,mDAA+B;AAI/B,sDAAwD;AACxD,8DAAgE;AAEhE,+EAAqF;AAE9E,IAAM,gBAAgB,GAAG,UAAC,KAA4B;IACnD,IAAA,QAAQ,GAA2B,KAAK,SAAhC,EAAE,IAAI,GAAqB,KAAK,KAA1B,EAAE,cAAc,GAAK,KAAK,eAAV,CAAW;IACjD,IAAM,OAAO,GAAG,IAAA,4BAAc,GAAE,CAAC;IACjC,IAAM,WAAW,GAAG,IAAA,oCAAkB,GAAE,CAAC;IACzC,IAAM,WAAW,GAAG,WAAW,CAAC,WAAW,CAAC;IAC5C,IAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAChC,IAAI,aAAa,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAC/C,aAAa,GAAG,cAAc,aAAd,cAAc,cAAd,cAAc,GAAI,aAAa,CAAC;IAEhD,IAAM,aAAa,GAAG,KAAK,CAAC,WAAW,CACrC,UAAC,CAAmB;QAClB,IAAI,CAAC,QAAQ,EAAE;YACb,WAAW,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;YACrB,IAAI,CAAC,aAAa,EAAE;gBAClB,OAAO,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;aAC/C;SACF;IACH,CAAC,EACD,CAAC,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,aAAa,CAAC,CACtD,CAAC;IAEF,2CAA2C;IAC3C,KAAK,CAAC,SAAS,CAAC;QACd,WAAW,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QAE/B,OAAO;YACL,WAAW,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;QACpC,CAAC,CAAC;IACJ,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,kDAAkD;IAE1D,OAAO,IAAA,gDAA0B,EAAC,KAAK,EAAE,aAAa,CAAC,CAAC;AAC1D,CAAC,CAAC;AA/BW,QAAA,gBAAgB,oBA+B3B"}
1
+ {"version":3,"file":"useMenuItemRadio.js","sourceRoot":"","sources":["../../src/MenuItemRadio/useMenuItemRadio.ts"],"names":[],"mappings":";;;;AAAA,mDAA+B;AAI/B,sDAAwD;AACxD,8DAAgE;AAChE,+EAAqF;AAG9E,IAAM,gBAAgB,GAAG,UAAC,KAAyB;IAChD,IAAA,QAAQ,GAA2B,KAAK,SAAhC,EAAE,IAAI,GAAqB,KAAK,KAA1B,EAAE,cAAc,GAAK,KAAK,eAAV,CAAW;IACjD,IAAM,OAAO,GAAG,IAAA,4BAAc,GAAE,CAAC;IACjC,IAAM,WAAW,GAAG,IAAA,oCAAkB,GAAE,CAAC;IACzC,IAAM,WAAW,GAAG,WAAW,CAAC,WAAW,CAAC;IAC5C,IAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAChC,IAAI,aAAa,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAC/C,aAAa,GAAG,cAAc,aAAd,cAAc,cAAd,cAAc,GAAI,aAAa,CAAC;IAEhD,IAAM,aAAa,GAAG,KAAK,CAAC,WAAW,CACrC,UAAC,CAAmB;QAClB,IAAI,CAAC,QAAQ,EAAE;YACb,WAAW,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;YACrB,IAAI,CAAC,aAAa,EAAE;gBAClB,OAAO,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;aAC/C;SACF;IACH,CAAC,EACD,CAAC,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,aAAa,CAAC,CACtD,CAAC;IAEF,2CAA2C;IAC3C,KAAK,CAAC,SAAS,CAAC;QACd,WAAW,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QAE/B,OAAO;YACL,WAAW,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;QACpC,CAAC,CAAC;IACJ,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,kDAAkD;IAE1D,OAAO,IAAA,gDAA0B,EAAC,KAAK,EAAE,aAAa,CAAC,CAAC;AAC1D,CAAC,CAAC;AA/BW,QAAA,gBAAgB,oBA+B3B"}
@@ -1 +1 @@
1
- {"version":3,"file":"MenuList.styling.d.ts","sourceRoot":"","sources":["../../src/MenuList/MenuList.styling.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAS,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AAIjF,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAIzF,eAAO,MAAM,cAAc,EAAE,CAAC,MAAM,cAAc,CAAC,EAAqB,CAAC;AAEzE,eAAO,MAAM,eAAe,EAAE,iBAAiB,CAAC,aAAa,EAAE,iBAAiB,EAAE,cAAc,CAgB/F,CAAC"}
1
+ {"version":3,"file":"MenuList.styling.d.ts","sourceRoot":"","sources":["../../src/MenuList/MenuList.styling.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAS,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AAIjF,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAIzF,eAAO,MAAM,cAAc,EAAE,CAAC,MAAM,cAAc,CAAC,EAAqB,CAAC;AAEzE,eAAO,MAAM,eAAe,EAAE,iBAAiB,CAAC,aAAa,EAAE,iBAAiB,EAAE,cAAc,CAiB/F,CAAC"}
@@ -2,6 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.stylingSettings = exports.menuListStates = void 0;
4
4
  var tslib_1 = require("tslib");
5
+ var react_native_1 = require("react-native");
5
6
  var framework_1 = require("@fluentui-react-native/framework");
6
7
  var tokens_1 = require("@fluentui-react-native/tokens");
7
8
  var MenuList_types_1 = require("./MenuList.types");
@@ -12,7 +13,7 @@ exports.stylingSettings = {
12
13
  states: exports.menuListStates,
13
14
  slotProps: {
14
15
  root: (0, framework_1.buildProps)(function (tokens, theme) { return ({
15
- style: tslib_1.__assign({ backgroundColor: tokens.backgroundColor, display: 'flex' }, tokens_1.layoutStyles.from(tokens, theme)),
16
+ style: tslib_1.__assign(tslib_1.__assign({ backgroundColor: tokens.backgroundColor, display: 'flex' }, tokens_1.layoutStyles.from(tokens, theme)), (react_native_1.Platform.OS === 'android' && { borderRadius: tokens.cornerRadius })),
16
17
  gap: tokens.gap,
17
18
  }); }, tslib_1.__spreadArray(['backgroundColor', 'gap'], tokens_1.layoutStyles.keys, true)),
18
19
  },
@@ -1 +1 @@
1
- {"version":3,"file":"MenuList.styling.js","sourceRoot":"","sources":["../../src/MenuList/MenuList.styling.ts"],"names":[],"mappings":";;;;AACA,8DAA8D;AAC9D,wDAA6D;AAG7D,mDAAgD;AAChD,mDAAyD;AAE5C,QAAA,cAAc,GAA6B,CAAC,cAAc,CAAC,CAAC;AAE5D,QAAA,eAAe,GAAwE;IAClG,MAAM,EAAE,CAAC,sCAAqB,EAAE,6BAAY,CAAC;IAC7C,MAAM,EAAE,sBAAc;IACtB,SAAS,EAAE;QACT,IAAI,EAAE,IAAA,sBAAU,EACd,UAAC,MAAsB,EAAE,KAAY,IAAK,OAAA,CAAC;YACzC,KAAK,qBACH,eAAe,EAAE,MAAM,CAAC,eAAe,EACvC,OAAO,EAAE,MAAM,IACZ,qBAAY,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,CACpC;YACD,GAAG,EAAE,MAAM,CAAC,GAAG;SAChB,CAAC,EAPwC,CAOxC,yBACD,iBAAiB,EAAE,KAAK,GAAK,qBAAY,CAAC,IAAI,QAChD;KACF;CACF,CAAC"}
1
+ {"version":3,"file":"MenuList.styling.js","sourceRoot":"","sources":["../../src/MenuList/MenuList.styling.ts"],"names":[],"mappings":";;;;AAAA,6CAAwC;AAGxC,8DAA8D;AAC9D,wDAA6D;AAG7D,mDAAgD;AAChD,mDAAyD;AAE5C,QAAA,cAAc,GAA6B,CAAC,cAAc,CAAC,CAAC;AAE5D,QAAA,eAAe,GAAwE;IAClG,MAAM,EAAE,CAAC,sCAAqB,EAAE,6BAAY,CAAC;IAC7C,MAAM,EAAE,sBAAc;IACtB,SAAS,EAAE;QACT,IAAI,EAAE,IAAA,sBAAU,EACd,UAAC,MAAsB,EAAE,KAAY,IAAK,OAAA,CAAC;YACzC,KAAK,sCACH,eAAe,EAAE,MAAM,CAAC,eAAe,EACvC,OAAO,EAAE,MAAM,IACZ,qBAAY,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,GAChC,CAAC,uBAAQ,CAAC,EAAE,KAAK,SAAS,IAAI,EAAE,YAAY,EAAE,MAAM,CAAC,YAAY,EAAE,CAAC,CACxE;YACD,GAAG,EAAE,MAAM,CAAC,GAAG;SAChB,CAAC,EARwC,CAQxC,yBACD,iBAAiB,EAAE,KAAK,GAAK,qBAAY,CAAC,IAAI,QAChD;KACF;CACF,CAAC"}
@@ -14,6 +14,10 @@ export interface MenuListTokens extends LayoutTokens, IBackgroundColorTokens {
14
14
  * States of the list control
15
15
  */
16
16
  hasMaxHeight?: MenuListTokens;
17
+ /**
18
+ * Corner radius of the menu list
19
+ */
20
+ cornerRadius?: number;
17
21
  }
18
22
  export interface MenuListProps extends Omit<IViewProps, 'onPress'> {
19
23
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"MenuList.types.d.ts","sourceRoot":"","sources":["../../src/MenuList/MenuList.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAEpD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAClE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AACxE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0CAA0C,CAAC;AACjF,OAAO,KAAK,EAAE,sBAAsB,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAE1F,eAAO,MAAM,YAAY,aAAa,CAAC;AAEvC,MAAM,WAAW,cAAe,SAAQ,YAAY,EAAE,sBAAsB;IAC1E;;OAEG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,YAAY,CAAC,EAAE,cAAc,CAAC;CAC/B;AAED,MAAM,WAAW,aAAc,SAAQ,IAAI,CAAC,UAAU,EAAE,SAAS,CAAC;IAChE;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IAEnB;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAE1B;;OAEG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IAExB;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB;;;;;OAKG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB;;;;OAIG;IACH,eAAe,CAAC,EAAE,CAAC,CAAC,EAAE,gBAAgB,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;IACnE;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,aAAc,SAAQ,IAAI,CAAC,aAAa,EAAE,SAAS,GAAG,iBAAiB,CAAC;IACvF,KAAK,EAAE,aAAa,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,mBAAmB,EAAE,OAAO,CAAC;IAC7B,YAAY,CAAC,EAAE,CAAC,CAAC,EAAE,gBAAgB,KAAK,IAAI,CAAC;IAC7C,eAAe,CAAC,EAAE,CAAC,CAAC,EAAE,gBAAgB,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,KAAK,IAAI,CAAC;IAClF,WAAW,CAAC,EAAE,CAAC,CAAC,EAAE,gBAAgB,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAC1D,YAAY,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACrC,eAAe,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,KAAK,CAAC,YAAY,CAAC,UAAU,CAAC,GAAG;QAAE,GAAG,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACxD,SAAS,CAAC,EAAE,cAAc,CAAC;IAC3B,UAAU,CAAC,EAAE,eAAe,CAAC;CAC9B;AAED,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,aAAa,CAAC;IACrB,MAAM,EAAE,cAAc,CAAC;IACvB,SAAS,EAAE,iBAAiB,CAAC;CAC9B"}
1
+ {"version":3,"file":"MenuList.types.d.ts","sourceRoot":"","sources":["../../src/MenuList/MenuList.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAEpD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAClE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AACxE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0CAA0C,CAAC;AACjF,OAAO,KAAK,EAAE,sBAAsB,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAE1F,eAAO,MAAM,YAAY,aAAa,CAAC;AAEvC,MAAM,WAAW,cAAe,SAAQ,YAAY,EAAE,sBAAsB;IAC1E;;OAEG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,YAAY,CAAC,EAAE,cAAc,CAAC;IAE9B;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,aAAc,SAAQ,IAAI,CAAC,UAAU,EAAE,SAAS,CAAC;IAChE;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IAEnB;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAE1B;;OAEG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IAExB;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB;;;;;OAKG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB;;;;OAIG;IACH,eAAe,CAAC,EAAE,CAAC,CAAC,EAAE,gBAAgB,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;IACnE;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,aAAc,SAAQ,IAAI,CAAC,aAAa,EAAE,SAAS,GAAG,iBAAiB,CAAC;IACvF,KAAK,EAAE,aAAa,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,mBAAmB,EAAE,OAAO,CAAC;IAC7B,YAAY,CAAC,EAAE,CAAC,CAAC,EAAE,gBAAgB,KAAK,IAAI,CAAC;IAC7C,eAAe,CAAC,EAAE,CAAC,CAAC,EAAE,gBAAgB,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,KAAK,IAAI,CAAC;IAClF,WAAW,CAAC,EAAE,CAAC,CAAC,EAAE,gBAAgB,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAC1D,YAAY,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACrC,eAAe,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,KAAK,CAAC,YAAY,CAAC,UAAU,CAAC,GAAG;QAAE,GAAG,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACxD,SAAS,CAAC,EAAE,cAAc,CAAC;IAC3B,UAAU,CAAC,EAAE,eAAe,CAAC;CAC9B;AAED,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,aAAa,CAAC;IACrB,MAAM,EAAE,cAAc,CAAC;IACvB,SAAS,EAAE,iBAAiB,CAAC;CAC9B"}
@@ -0,0 +1,5 @@
1
+ import type { Theme } from '@fluentui-react-native/framework';
2
+ import type { TokenSettings } from '@fluentui-react-native/use-styling';
3
+ import type { MenuListTokens } from './MenuList.types';
4
+ export declare const defaultMenuListTokens: TokenSettings<MenuListTokens, Theme>;
5
+ //# sourceMappingURL=MenuListTokens.android.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MenuListTokens.android.d.ts","sourceRoot":"","sources":["../../src/MenuList/MenuListTokens.android.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,kCAAkC,CAAC;AAE9D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AAExE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAEvD,eAAO,MAAM,qBAAqB,EAAE,aAAa,CAAC,cAAc,EAAE,KAAK,CAIrE,CAAC"}
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.defaultMenuListTokens = void 0;
4
+ var theme_tokens_1 = require("@fluentui-react-native/theme-tokens");
5
+ var defaultMenuListTokens = function (t) { return ({
6
+ backgroundColor: t.colors.neutralBackground1,
7
+ cornerRadius: theme_tokens_1.globalTokens.corner.radius80,
8
+ paddingVertical: theme_tokens_1.globalTokens.size80,
9
+ }); };
10
+ exports.defaultMenuListTokens = defaultMenuListTokens;
11
+ //# sourceMappingURL=MenuListTokens.android.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MenuListTokens.android.js","sourceRoot":"","sources":["../../src/MenuList/MenuListTokens.android.ts"],"names":[],"mappings":";;;AACA,oEAAmE;AAK5D,IAAM,qBAAqB,GAAyC,UAAC,CAAQ,IAAqB,OAAA,CAAC;IACxG,eAAe,EAAE,CAAC,CAAC,MAAM,CAAC,kBAAkB;IAC5C,YAAY,EAAE,2BAAY,CAAC,MAAM,CAAC,QAAQ;IAC1C,eAAe,EAAE,2BAAY,CAAC,MAAM;CACrC,CAAC,EAJuG,CAIvG,CAAC;AAJU,QAAA,qBAAqB,yBAI/B"}
@@ -1,4 +1,6 @@
1
- import type { MenuPopoverTokens } from './MenuPopover.types';
2
- export declare const MenuPopover: import("@fluentui-react-native/use-tokens").CustomizableComponent<import("@fluentui-react-native/callout").ICalloutProps, MenuPopoverTokens, import("@fluentui-react-native/framework").Theme>;
1
+ export declare const MenuPopover: import("@fluentui-react-native/use-tokens").CustomizableComponent<import("@fluentui-react-native/callout").ICalloutProps, Omit<import("@fluentui-react-native/callout").ICalloutTokens, "anchorRect" | "beakWidth" | "dismissBehaviors"> & {
2
+ cornerRadius?: number;
3
+ elevation?: number;
4
+ }, import("@fluentui-react-native/framework").Theme>;
3
5
  export default MenuPopover;
4
6
  //# sourceMappingURL=MenuPopover.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"MenuPopover.d.ts","sourceRoot":"","sources":["../../src/MenuPopover/MenuPopover.tsx"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAoB,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAM/E,eAAO,MAAM,WAAW,gMAwCvB,CAAC;AAGF,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"MenuPopover.d.ts","sourceRoot":"","sources":["../../src/MenuPopover/MenuPopover.tsx"],"names":[],"mappings":"AAaA,eAAO,MAAM,WAAW;;;oDA4CvB,CAAC;AAGF,eAAe,WAAW,CAAC"}
@@ -4,12 +4,12 @@ exports.MenuPopover = void 0;
4
4
  var tslib_1 = require("tslib");
5
5
  var react_1 = tslib_1.__importDefault(require("react"));
6
6
  var react_native_1 = require("react-native");
7
- var callout_1 = require("@fluentui-react-native/callout");
8
7
  var framework_1 = require("@fluentui-react-native/framework");
9
8
  var MenuPopover_types_1 = require("./MenuPopover.types");
10
9
  var MenuPopoverTokens_1 = require("./MenuPopoverTokens");
11
10
  var useMenuPopover_1 = require("./useMenuPopover");
12
11
  var context_1 = require("../context");
12
+ var MenuCallout_1 = require("../MenuCallout");
13
13
  exports.MenuPopover = (0, framework_1.compressible)(function (props, useTokens) {
14
14
  var _a;
15
15
  var directionalHint = props.directionalHint, gapSpace = props.gapSpace, maxHeight = props.maxHeight, maxWidth = props.maxWidth, minWidth = props.minWidth, minPadding = props.minPadding, borderWidth = props.borderWidth, borderColor = props.borderColor, backgroundColor = props.backgroundColor;
@@ -39,7 +39,7 @@ exports.MenuPopover = (0, framework_1.compressible)(function (props, useTokens)
39
39
  maxHeight: mergedProps.maxHeight,
40
40
  } }) : state.innerView;
41
41
  var content = react_1.default.createElement(react_native_1.View, innerViewProps, children);
42
- return react_1.default.createElement(callout_1.Callout, tslib_1.__assign({}, mergedProps), content);
42
+ return (react_1.default.createElement(MenuCallout_1.MenuCallout, tslib_1.__assign({ tokens: tokens }, mergedProps), content));
43
43
  };
44
44
  }, MenuPopoverTokens_1.useMenuPopoverTokens);
45
45
  exports.MenuPopover.displayName = MenuPopover_types_1.menuPopoverName;
@@ -1 +1 @@
1
- {"version":3,"file":"MenuPopover.js","sourceRoot":"","sources":["../../src/MenuPopover/MenuPopover.tsx"],"names":[],"mappings":";;;;AAAA,wDAA0B;AAC1B,6CAA8C;AAE9C,0DAAyD;AAEzD,8DAAyG;AAGzG,yDAAsD;AACtD,yDAA2D;AAC3D,mDAAkD;AAClD,sCAA4C;AAE/B,QAAA,WAAW,GAAG,IAAA,wBAAY,EACrC,UAAC,KAAuB,EAAE,SAAuC;;IACvD,IAAA,eAAe,GAAqG,KAAK,gBAA1G,EAAE,QAAQ,GAA2F,KAAK,SAAhG,EAAE,SAAS,GAAgF,KAAK,UAArF,EAAE,QAAQ,GAAsE,KAAK,SAA3E,EAAE,QAAQ,GAA4D,KAAK,SAAjE,EAAE,UAAU,GAAgD,KAAK,WAArD,EAAE,WAAW,GAAmC,KAAK,YAAxC,EAAE,WAAW,GAAsB,KAAK,YAA3B,EAAE,eAAe,GAAK,KAAK,gBAAV,CAAW;IAClI,IAAM,KAAK,GAAG,IAAA,+BAAc,EAAC,KAAK,CAAC,CAAC;IACpC,IAAM,KAAK,GAAG,IAAA,0BAAc,GAAE,CAAC;IAC/B,IAAM,OAAO,GAAG,IAAA,wBAAc,GAAE,CAAC;IAC7B,IAAA,KAAkB,SAAS,CAAC,KAAK,CAAC,EAAjC,MAAM,QAAA,EAAE,KAAK,QAAoB,CAAC;IAEvC,OAAO,CAAC,YAAY,GAAG,SAAS,IAAI,SAAS,CAAC;IAC9C,OAAO,CAAC,QAAQ,GAAG,QAAQ,aAAR,QAAQ,cAAR,QAAQ,GAAI,OAAO,CAAC,QAAQ,CAAC;IAEhD,KAAkB,IAAA,uBAAW,EAAC,MAAM,EAAE,KAAK,EAAE;QAC3C,eAAe,iBAAA;QACf,QAAQ,UAAA;QACR,SAAS,WAAA;QACT,QAAQ,UAAA;QACR,QAAQ,UAAA;QACR,UAAU,YAAA;QACV,WAAW,aAAA;QACX,WAAW,aAAA;QACX,eAAe,iBAAA;KAChB,CAAC,EAVD,MAAM,QAAA,EAAE,KAAK,QAAA,CAUX;IAEH,OAAO,UAAC,KAAuB,EAAE,QAAyB;QACxD,IAAM,WAAW,GAAG,IAAA,sBAAU,EAAC,MAAM,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QAC3D,IAAM,cAAc;QAClB,uJAAuJ;QACvJ,uBAAQ,CAAC,EAAE,KAAK,SAAS,IAAI,uBAAQ,CAAC,EAAE,KAAM,OAAe;YAC3D,CAAC,uCACM,KAAK,CAAC,SAAS,KAClB,KAAK,EAAE;oBACL,SAAS,EAAE,WAAW,CAAC,SAAS;iBACjC,IAEL,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC;QACtB,IAAM,OAAO,GAAG,eAAK,CAAC,aAAa,CAAC,mBAAI,EAAE,cAAc,EAAE,QAAQ,CAAC,CAAC;QACpE,OAAO,8BAAC,iBAAO,uBAAK,WAAW,GAAG,OAAO,CAAW,CAAC;IACvD,CAAC,CAAC;AACJ,CAAC,EACD,wCAAoB,CACrB,CAAC;AACF,mBAAW,CAAC,WAAW,GAAG,mCAAe,CAAC;AAE1C,kBAAe,mBAAW,CAAC"}
1
+ {"version":3,"file":"MenuPopover.js","sourceRoot":"","sources":["../../src/MenuPopover/MenuPopover.tsx"],"names":[],"mappings":";;;;AAAA,wDAA0B;AAC1B,6CAA8C;AAG9C,8DAAyG;AAGzG,yDAAsD;AACtD,yDAA2D;AAC3D,mDAAkD;AAClD,sCAA4C;AAC5C,8CAA6C;AAEhC,QAAA,WAAW,GAAG,IAAA,wBAAY,EACrC,UAAC,KAAuB,EAAE,SAAuC;;IACvD,IAAA,eAAe,GAAqG,KAAK,gBAA1G,EAAE,QAAQ,GAA2F,KAAK,SAAhG,EAAE,SAAS,GAAgF,KAAK,UAArF,EAAE,QAAQ,GAAsE,KAAK,SAA3E,EAAE,QAAQ,GAA4D,KAAK,SAAjE,EAAE,UAAU,GAAgD,KAAK,WAArD,EAAE,WAAW,GAAmC,KAAK,YAAxC,EAAE,WAAW,GAAsB,KAAK,YAA3B,EAAE,eAAe,GAAK,KAAK,gBAAV,CAAW;IAClI,IAAM,KAAK,GAAG,IAAA,+BAAc,EAAC,KAAK,CAAC,CAAC;IACpC,IAAM,KAAK,GAAG,IAAA,0BAAc,GAAE,CAAC;IAC/B,IAAM,OAAO,GAAG,IAAA,wBAAc,GAAE,CAAC;IAC7B,IAAA,KAAkB,SAAS,CAAC,KAAK,CAAC,EAAjC,MAAM,QAAA,EAAE,KAAK,QAAoB,CAAC;IAEvC,OAAO,CAAC,YAAY,GAAG,SAAS,IAAI,SAAS,CAAC;IAC9C,OAAO,CAAC,QAAQ,GAAG,QAAQ,aAAR,QAAQ,cAAR,QAAQ,GAAI,OAAO,CAAC,QAAQ,CAAC;IAEhD,KAAkB,IAAA,uBAAW,EAAC,MAAM,EAAE,KAAK,EAAE;QAC3C,eAAe,iBAAA;QACf,QAAQ,UAAA;QACR,SAAS,WAAA;QACT,QAAQ,UAAA;QACR,QAAQ,UAAA;QACR,UAAU,YAAA;QACV,WAAW,aAAA;QACX,WAAW,aAAA;QACX,eAAe,iBAAA;KAChB,CAAC,EAVD,MAAM,QAAA,EAAE,KAAK,QAAA,CAUX;IAEH,OAAO,UAAC,KAAuB,EAAE,QAAyB;QACxD,IAAM,WAAW,GAAG,IAAA,sBAAU,EAAC,MAAM,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QAC3D,IAAM,cAAc;QAClB,uJAAuJ;QACvJ,uBAAQ,CAAC,EAAE,KAAK,SAAS,IAAI,uBAAQ,CAAC,EAAE,KAAM,OAAe;YAC3D,CAAC,uCACM,KAAK,CAAC,SAAS,KAClB,KAAK,EAAE;oBACL,SAAS,EAAE,WAAW,CAAC,SAAS;iBACjC,IAEL,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC;QACtB,IAAM,OAAO,GAAG,eAAK,CAAC,aAAa,CAAC,mBAAI,EAAE,cAAc,EAAE,QAAQ,CAAC,CAAC;QACpE,OAAO,CACL,8BAAC,yBAAW,qBAAC,MAAM,EAAE,MAAM,IAAM,WAAW,GACzC,OAAO,CACI,CACf,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC,EACD,wCAAoB,CACrB,CAAC;AACF,mBAAW,CAAC,WAAW,GAAG,mCAAe,CAAC;AAE1C,kBAAe,mBAAW,CAAC"}
@@ -1,7 +1,18 @@
1
1
  import type { IViewProps } from '@fluentui-react-native/adapters';
2
2
  import type { ICalloutProps, ICalloutTokens } from '@fluentui-react-native/callout';
3
3
  export declare const menuPopoverName = "MenuPopover";
4
- export type MenuPopoverTokens = Omit<ICalloutTokens, 'anchorRect' | 'beakWidth' | 'dismissBehaviors'>;
4
+ export type MenuPopoverTokens = Omit<ICalloutTokens, 'anchorRect' | 'beakWidth' | 'dismissBehaviors'> & {
5
+ /**
6
+ * The props for the corner radius for the Modal MenuPopover
7
+ * @platform android
8
+ */
9
+ cornerRadius?: number;
10
+ /**
11
+ * Shadown elevation for the Modal MenuPopover
12
+ * @platform android
13
+ */
14
+ elevation?: number;
15
+ };
5
16
  export type MenuPopoverProps = ICalloutProps;
6
17
  export interface MenuPopoverState {
7
18
  props: ICalloutProps;
@@ -1 +1 @@
1
- {"version":3,"file":"MenuPopover.types.d.ts","sourceRoot":"","sources":["../../src/MenuPopover/MenuPopover.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAClE,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAEpF,eAAO,MAAM,eAAe,gBAAgB,CAAC;AAI7C,MAAM,MAAM,iBAAiB,GAAG,IAAI,CAAC,cAAc,EAAE,YAAY,GAAG,WAAW,GAAG,kBAAkB,CAAC,CAAC;AAEtG,MAAM,MAAM,gBAAgB,GAAG,aAAa,CAAC;AAE7C,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,aAAa,CAAC;IACrB,SAAS,EAAE,UAAU,CAAC;CACvB"}
1
+ {"version":3,"file":"MenuPopover.types.d.ts","sourceRoot":"","sources":["../../src/MenuPopover/MenuPopover.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAClE,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAEpF,eAAO,MAAM,eAAe,gBAAgB,CAAC;AAI7C,MAAM,MAAM,iBAAiB,GACzB,IAAI,CAAC,cAAc,EAAE,YAAY,GAAG,WAAW,GAAG,kBAAkB,CAAC,GAAG;IACtE;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEN,MAAM,MAAM,gBAAgB,GAAG,aAAa,CAAC;AAE7C,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,aAAa,CAAC;IACrB,SAAS,EAAE,UAAU,CAAC;CACvB"}
@@ -0,0 +1,5 @@
1
+ export declare const useMenuPopoverTokens: import("@fluentui-react-native/framework").UseTokens<Omit<import("@fluentui-react-native/callout").ICalloutTokens, "anchorRect" | "beakWidth" | "dismissBehaviors"> & {
2
+ cornerRadius?: number;
3
+ elevation?: number;
4
+ }>;
5
+ //# sourceMappingURL=MenuPopoverTokens.android.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MenuPopoverTokens.android.d.ts","sourceRoot":"","sources":["../../src/MenuPopover/MenuPopoverTokens.android.ts"],"names":[],"mappings":"AASA,eAAO,MAAM,oBAAoB;;;EAWhC,CAAC"}
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.useMenuPopoverTokens = void 0;
4
+ var react_native_1 = require("react-native");
5
+ var framework_1 = require("@fluentui-react-native/framework");
6
+ var theme_tokens_1 = require("@fluentui-react-native/theme-tokens");
7
+ var MenuPopover_types_1 = require("./MenuPopover.types");
8
+ exports.useMenuPopoverTokens = (0, framework_1.buildUseTokens)(function (t) { return ({
9
+ borderWidth: 1,
10
+ borderColor: t.colors.neutralStrokeAccessible,
11
+ maxHeight: react_native_1.Dimensions.get('window').height / 2 - theme_tokens_1.globalTokens.size320,
12
+ maxWidth: react_native_1.Dimensions.get('window').width - theme_tokens_1.globalTokens.size160,
13
+ cornerRadius: theme_tokens_1.globalTokens.corner.radius80,
14
+ elevation: theme_tokens_1.globalTokens.size160,
15
+ minPadding: theme_tokens_1.globalTokens.size160,
16
+ }); }, MenuPopover_types_1.menuPopoverName);
17
+ //# sourceMappingURL=MenuPopoverTokens.android.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MenuPopoverTokens.android.js","sourceRoot":"","sources":["../../src/MenuPopover/MenuPopoverTokens.android.ts"],"names":[],"mappings":";;;AAAA,6CAA0C;AAG1C,8DAAkE;AAClE,oEAAmE;AAGnE,yDAAsD;AAEzC,QAAA,oBAAoB,GAAG,IAAA,0BAAc,EAChD,UAAC,CAAQ,IAAK,OAAA,CAAC;IACb,WAAW,EAAE,CAAC;IACd,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC,uBAAuB;IAC7C,SAAS,EAAE,yBAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,MAAM,GAAG,CAAC,GAAG,2BAAY,CAAC,OAAO;IACrE,QAAQ,EAAE,yBAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,KAAK,GAAG,2BAAY,CAAC,OAAO;IAC/D,YAAY,EAAE,2BAAY,CAAC,MAAM,CAAC,QAAQ;IAC1C,SAAS,EAAE,2BAAY,CAAC,OAAO;IAC/B,UAAU,EAAE,2BAAY,CAAC,OAAO;CACjC,CAAC,EARY,CAQZ,EACF,mCAAe,CAChB,CAAC"}
@@ -1,3 +1,5 @@
1
- import type { MenuPopoverTokens } from './MenuPopover.types';
2
- export declare const useMenuPopoverTokens: import("@fluentui-react-native/framework").UseTokens<MenuPopoverTokens>;
1
+ export declare const useMenuPopoverTokens: import("@fluentui-react-native/framework").UseTokens<Omit<import("@fluentui-react-native/callout").ICalloutTokens, "anchorRect" | "beakWidth" | "dismissBehaviors"> & {
2
+ cornerRadius?: number;
3
+ elevation?: number;
4
+ }>;
3
5
  //# sourceMappingURL=MenuPopoverTokens.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"MenuPopoverTokens.d.ts","sourceRoot":"","sources":["../../src/MenuPopover/MenuPopoverTokens.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAG7D,eAAO,MAAM,oBAAoB,yEAGhC,CAAC"}
1
+ {"version":3,"file":"MenuPopoverTokens.d.ts","sourceRoot":"","sources":["../../src/MenuPopover/MenuPopoverTokens.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,oBAAoB;;;EAGhC,CAAC"}
@@ -4,7 +4,7 @@ export { MenuTrigger, menuTriggerName, MenuTriggerChildProps, MenuTriggerState,
4
4
  export { MenuPopover, menuPopoverName, MenuPopoverProps, MenuPopoverState, MenuPopoverTokens, useMenuPopover } from './MenuPopover';
5
5
  export { MenuItem, menuItemName, MenuItemProps, MenuItemState, MenuItemInfo, MenuItemSlotProps, MenuItemTokens, MenuItemType, useMenuItem, } from './MenuItem';
6
6
  export { MenuItemCheckbox, menuItemCheckboxName, MenuItemCheckboxProps, MenuItemCheckboxInfo, MenuItemCheckboxSlotProps, MenuItemCheckboxTokens, MenuItemCheckboxType, useMenuCheckboxInteraction, useMenuItemCheckbox, } from './MenuItemCheckbox';
7
- export { MenuItemRadio, menuItemRadioName, useMenuItemRadio } from './MenuItemRadio';
7
+ export { MenuItemRadio, menuItemRadioName, useMenuItemRadio, MenuItemRadioInfo, MenuItemRadioProps, MenuItemRadioSlotProps, MenuItemRadioTokens, MenuItemRadioType, } from './MenuItemRadio';
8
8
  export { MenuList, menuListName, MenuListProps, MenuListSlotProps, MenuListState, MenuListTokens, MenuListType, useMenuList, useMenuListContextValue, } from './MenuList';
9
9
  export { MenuDivider, menuDividerName, MenuDividerProps, MenuDividerSlotProps, MenuDividerTokens, MenuDividerType } from './MenuDivider';
10
10
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EACd,WAAW,EACX,gBAAgB,EAChB,YAAY,EACZ,kBAAkB,EAClB,eAAe,EACf,oBAAoB,EACpB,gBAAgB,EAChB,qBAAqB,EACrB,kBAAkB,EAClB,mBAAmB,GACpB,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,mBAAmB,EAAE,MAAM,QAAQ,CAAC;AAC5F,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AACtH,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AACpI,OAAO,EACL,QAAQ,EACR,YAAY,EACZ,aAAa,EACb,aAAa,EACb,YAAY,EACZ,iBAAiB,EACjB,cAAc,EACd,YAAY,EACZ,WAAW,GACZ,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,gBAAgB,EAChB,oBAAoB,EACpB,qBAAqB,EACrB,oBAAoB,EACpB,yBAAyB,EACzB,sBAAsB,EACtB,oBAAoB,EACpB,0BAA0B,EAC1B,mBAAmB,GACpB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACrF,OAAO,EACL,QAAQ,EACR,YAAY,EACZ,aAAa,EACb,iBAAiB,EACjB,aAAa,EACb,cAAc,EACd,YAAY,EACZ,WAAW,EACX,uBAAuB,GACxB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EACd,WAAW,EACX,gBAAgB,EAChB,YAAY,EACZ,kBAAkB,EAClB,eAAe,EACf,oBAAoB,EACpB,gBAAgB,EAChB,qBAAqB,EACrB,kBAAkB,EAClB,mBAAmB,GACpB,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,mBAAmB,EAAE,MAAM,QAAQ,CAAC;AAC5F,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AACtH,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AACpI,OAAO,EACL,QAAQ,EACR,YAAY,EACZ,aAAa,EACb,aAAa,EACb,YAAY,EACZ,iBAAiB,EACjB,cAAc,EACd,YAAY,EACZ,WAAW,GACZ,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,gBAAgB,EAChB,oBAAoB,EACpB,qBAAqB,EACrB,oBAAoB,EACpB,yBAAyB,EACzB,sBAAsB,EACtB,oBAAoB,EACpB,0BAA0B,EAC1B,mBAAmB,GACpB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,aAAa,EACb,iBAAiB,EACjB,gBAAgB,EAChB,iBAAiB,EACjB,kBAAkB,EAClB,sBAAsB,EACtB,mBAAmB,EACnB,iBAAiB,GAClB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,QAAQ,EACR,YAAY,EACZ,aAAa,EACb,iBAAiB,EACjB,aAAa,EACb,cAAc,EACd,YAAY,EACZ,WAAW,EACX,uBAAuB,GACxB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.menuDividerName = exports.MenuDivider = exports.useMenuListContextValue = exports.useMenuList = exports.menuListName = exports.MenuList = exports.useMenuItemRadio = exports.menuItemRadioName = exports.MenuItemRadio = exports.useMenuItemCheckbox = exports.useMenuCheckboxInteraction = exports.menuItemCheckboxName = exports.MenuItemCheckbox = exports.useMenuItem = exports.menuItemName = exports.MenuItem = exports.useMenuPopover = exports.menuPopoverName = exports.MenuPopover = exports.useMenuTrigger = exports.menuTriggerName = exports.MenuTrigger = exports.useMenuContextValue = exports.useMenu = exports.menuName = exports.Menu = exports.MenuTriggerProvider = exports.MenuTriggerContext = exports.useMenuTriggerContext = exports.MenuListProvider = exports.MenuListContext = exports.useMenuListContext = exports.MenuProvider = exports.MenuContext = exports.useMenuContext = void 0;
3
+ exports.menuDividerName = exports.MenuDivider = exports.useMenuListContextValue = exports.useMenuList = exports.menuListName = exports.MenuList = exports.useMenuItemRadio = exports.MenuItemRadio = exports.useMenuItemCheckbox = exports.useMenuCheckboxInteraction = exports.menuItemCheckboxName = exports.MenuItemCheckbox = exports.useMenuItem = exports.menuItemName = exports.MenuItem = exports.useMenuPopover = exports.menuPopoverName = exports.MenuPopover = exports.useMenuTrigger = exports.menuTriggerName = exports.MenuTrigger = exports.useMenuContextValue = exports.useMenu = exports.menuName = exports.Menu = exports.MenuTriggerProvider = exports.MenuTriggerContext = exports.useMenuTriggerContext = exports.MenuListProvider = exports.MenuListContext = exports.useMenuListContext = exports.MenuProvider = exports.MenuContext = exports.useMenuContext = void 0;
4
4
  var context_1 = require("./context");
5
5
  Object.defineProperty(exports, "useMenuContext", { enumerable: true, get: function () { return context_1.useMenuContext; } });
6
6
  Object.defineProperty(exports, "MenuContext", { enumerable: true, get: function () { return context_1.MenuContext; } });
@@ -35,7 +35,6 @@ Object.defineProperty(exports, "useMenuCheckboxInteraction", { enumerable: true,
35
35
  Object.defineProperty(exports, "useMenuItemCheckbox", { enumerable: true, get: function () { return MenuItemCheckbox_1.useMenuItemCheckbox; } });
36
36
  var MenuItemRadio_1 = require("./MenuItemRadio");
37
37
  Object.defineProperty(exports, "MenuItemRadio", { enumerable: true, get: function () { return MenuItemRadio_1.MenuItemRadio; } });
38
- Object.defineProperty(exports, "menuItemRadioName", { enumerable: true, get: function () { return MenuItemRadio_1.menuItemRadioName; } });
39
38
  Object.defineProperty(exports, "useMenuItemRadio", { enumerable: true, get: function () { return MenuItemRadio_1.useMenuItemRadio; } });
40
39
  var MenuList_1 = require("./MenuList");
41
40
  Object.defineProperty(exports, "MenuList", { enumerable: true, get: function () { return MenuList_1.MenuList; } });
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,qCAYmB;AAXjB,yGAAA,cAAc,OAAA;AACd,sGAAA,WAAW,OAAA;AAEX,uGAAA,YAAY,OAAA;AACZ,6GAAA,kBAAkB,OAAA;AAClB,0GAAA,eAAe,OAAA;AAEf,2GAAA,gBAAgB,OAAA;AAChB,gHAAA,qBAAqB,OAAA;AACrB,6GAAA,kBAAkB,OAAA;AAClB,8GAAA,mBAAmB,OAAA;AAErB,+BAA4F;AAAnF,4FAAA,IAAI,OAAA;AAAE,gGAAA,QAAQ,OAAA;AAAwB,+FAAA,OAAO,OAAA;AAAE,2GAAA,mBAAmB,OAAA;AAC3E,6CAAsH;AAA7G,0GAAA,WAAW,OAAA;AAAE,8GAAA,eAAe,OAAA;AAA2C,6GAAA,cAAc,OAAA;AAC9F,6CAAoI;AAA3H,0GAAA,WAAW,OAAA;AAAE,8GAAA,eAAe,OAAA;AAAyD,6GAAA,cAAc,OAAA;AAC5G,uCAUoB;AATlB,oGAAA,QAAQ,OAAA;AACR,wGAAA,YAAY,OAAA;AAOZ,uGAAA,WAAW,OAAA;AAEb,uDAU4B;AAT1B,oHAAA,gBAAgB,OAAA;AAChB,wHAAA,oBAAoB,OAAA;AAMpB,8HAAA,0BAA0B,OAAA;AAC1B,uHAAA,mBAAmB,OAAA;AAErB,iDAAqF;AAA5E,8GAAA,aAAa,OAAA;AAAE,kHAAA,iBAAiB,OAAA;AAAE,iHAAA,gBAAgB,OAAA;AAC3D,uCAUoB;AATlB,oGAAA,QAAQ,OAAA;AACR,wGAAA,YAAY,OAAA;AAMZ,uGAAA,WAAW,OAAA;AACX,mHAAA,uBAAuB,OAAA;AAEzB,6CAAyI;AAAhI,0GAAA,WAAW,OAAA;AAAE,8GAAA,eAAe,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,qCAYmB;AAXjB,yGAAA,cAAc,OAAA;AACd,sGAAA,WAAW,OAAA;AAEX,uGAAA,YAAY,OAAA;AACZ,6GAAA,kBAAkB,OAAA;AAClB,0GAAA,eAAe,OAAA;AAEf,2GAAA,gBAAgB,OAAA;AAChB,gHAAA,qBAAqB,OAAA;AACrB,6GAAA,kBAAkB,OAAA;AAClB,8GAAA,mBAAmB,OAAA;AAErB,+BAA4F;AAAnF,4FAAA,IAAI,OAAA;AAAE,gGAAA,QAAQ,OAAA;AAAwB,+FAAA,OAAO,OAAA;AAAE,2GAAA,mBAAmB,OAAA;AAC3E,6CAAsH;AAA7G,0GAAA,WAAW,OAAA;AAAE,8GAAA,eAAe,OAAA;AAA2C,6GAAA,cAAc,OAAA;AAC9F,6CAAoI;AAA3H,0GAAA,WAAW,OAAA;AAAE,8GAAA,eAAe,OAAA;AAAyD,6GAAA,cAAc,OAAA;AAC5G,uCAUoB;AATlB,oGAAA,QAAQ,OAAA;AACR,wGAAA,YAAY,OAAA;AAOZ,uGAAA,WAAW,OAAA;AAEb,uDAU4B;AAT1B,oHAAA,gBAAgB,OAAA;AAChB,wHAAA,oBAAoB,OAAA;AAMpB,8HAAA,0BAA0B,OAAA;AAC1B,uHAAA,mBAAmB,OAAA;AAErB,iDASyB;AARvB,8GAAA,aAAa,OAAA;AAEb,iHAAA,gBAAgB,OAAA;AAOlB,uCAUoB;AATlB,oGAAA,QAAQ,OAAA;AACR,wGAAA,YAAY,OAAA;AAMZ,uGAAA,WAAW,OAAA;AACX,mHAAA,uBAAuB,OAAA;AAEzB,6CAAyI;AAAhI,0GAAA,WAAW,OAAA;AAAE,8GAAA,eAAe,OAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fluentui-react-native/menu",
3
- "version": "1.4.34",
3
+ "version": "1.5.0",
4
4
  "description": "A cross-platform Menu component using the Fluent Design System",
5
5
  "main": "lib-commonjs/index.js",
6
6
  "module": "lib/index.js",
@@ -35,7 +35,7 @@
35
35
  "tslib": "^2.3.1"
36
36
  },
37
37
  "devDependencies": {
38
- "@fluentui-react-native/button": ">=0.32.49 <1.0.0",
38
+ "@fluentui-react-native/button": ">=0.32.50 <1.0.0",
39
39
  "@fluentui-react-native/eslint-config-rules": "^0.1.1",
40
40
  "@fluentui-react-native/scripts": "^0.1.1",
41
41
  "@fluentui-react-native/test-tools": ">=0.1.1 <1.0.0",
package/src/Menu/Menu.tsx CHANGED
@@ -4,9 +4,9 @@ import { stagedComponent } from '@fluentui-react-native/framework';
4
4
 
5
5
  import type { MenuProps } from './Menu.types';
6
6
  import { menuName } from './Menu.types';
7
+ import { renderFinalMenu } from './renderMenu';
7
8
  import { useMenu } from './useMenu';
8
9
  import { useMenuContextValue } from './useMenuContextValue';
9
- import { MenuProvider } from '../context/menuContext';
10
10
 
11
11
  export const Menu = stagedComponent((props: MenuProps) => {
12
12
  const state = useMenu(props);
@@ -21,20 +21,10 @@ export const Menu = stagedComponent((props: MenuProps) => {
21
21
  console.warn('Menu must contain two children');
22
22
  }
23
23
  }
24
-
25
- const menuTrigger = childrenArray[0];
26
- const menuPopover = childrenArray[1];
27
-
28
- return (
29
- <MenuProvider value={contextValue}>
30
- {menuTrigger}
31
- {/* GH#2661: Make sure that shouldFocusOnContainer is defined before initializing
32
- the popover so that focus is put in the correct place */}
33
- {state.open && state.shouldFocusOnContainer !== undefined && menuPopover}
34
- </MenuProvider>
35
- );
24
+ return renderFinalMenu(childrenArray, contextValue, state);
36
25
  };
37
26
  });
27
+
38
28
  Menu.displayName = menuName;
39
29
 
40
30
  export default Menu;
@@ -1,5 +1,5 @@
1
1
  import type React from 'react';
2
- import type { View } from 'react-native';
2
+ import type { Animated, LayoutChangeEvent, View } from 'react-native';
3
3
 
4
4
  import type { InteractionEvent } from '@fluentui-react-native/interactive-hooks';
5
5
 
@@ -39,6 +39,11 @@ export interface MenuProps extends MenuListProps {
39
39
  persistOnItemClick?: boolean;
40
40
  }
41
41
 
42
+ export type MenuSizeType = {
43
+ width: Animated.Value;
44
+ height: Animated.Value;
45
+ };
46
+
42
47
  export interface MenuState extends MenuProps {
43
48
  isControlled: boolean;
44
49
  isSubmenu: boolean;
@@ -48,4 +53,20 @@ export interface MenuState extends MenuProps {
48
53
  triggerRef: React.RefObject<View>;
49
54
  hasMaxHeight?: boolean;
50
55
  hasMaxWidth?: boolean;
56
+ setAnchorWidth?: (value: null | number | ((prevState: null | number) => null | number)) => void;
57
+ shadowMenuContainerStyle?: object;
58
+ _container?: React.MutableRefObject<View>;
59
+ onRequestClose?: (e: InteractionEvent) => void;
60
+ onMenuLayout?: (e: LayoutChangeEvent) => void;
61
+ menuHeight?: number;
62
+ maxMenuHeight?: number;
63
+ animationStarted?: boolean;
64
+ menuSize?: MenuSizeType;
65
+ testID?: string;
66
+ }
67
+
68
+ export enum AndroidMenuStates {
69
+ Hidden,
70
+ Animating,
71
+ Shown,
51
72
  }
@@ -0,0 +1,26 @@
1
+ import React from 'react';
2
+ import { View } from 'react-native';
3
+
4
+ import type { MenuState } from './Menu.types';
5
+ import type { MenuContextValue } from '../context';
6
+ import { MenuProvider } from '../context';
7
+
8
+ export const renderFinalMenu = (childrenArray: React.ReactElement[], contextValue: MenuContextValue, state: MenuState) => {
9
+ const menuTrigger = childrenArray[0];
10
+ const menuPopover = childrenArray[1];
11
+ return (
12
+ <MenuProvider value={contextValue}>
13
+ <View
14
+ onLayout={(event) => {
15
+ const { width } = event.nativeEvent.layout;
16
+ state.setAnchorWidth(width);
17
+ }}
18
+ >
19
+ {menuTrigger}
20
+ </View>
21
+ <View ref={state._container} collapsable={false} testID={state.testID}>
22
+ {state.open && menuPopover}
23
+ </View>
24
+ </MenuProvider>
25
+ );
26
+ };
@@ -0,0 +1,18 @@
1
+ import React from 'react';
2
+
3
+ import type { MenuState } from './Menu.types';
4
+ import type { MenuContextValue } from '../context';
5
+ import { MenuProvider } from '../context';
6
+
7
+ export const renderFinalMenu = (childrenArray: React.ReactElement[], contextValue: MenuContextValue, state: MenuState) => {
8
+ const menuTrigger = childrenArray[0];
9
+ const menuPopover = childrenArray[1];
10
+ return (
11
+ <MenuProvider value={contextValue}>
12
+ {menuTrigger}
13
+ {/* GH#2661: Make sure that shouldFocusOnContainer is defined before initializing
14
+ the popover so that focus is put in the correct place */}
15
+ {state.open && state.shouldFocusOnContainer !== undefined && menuPopover}
16
+ </MenuProvider>
17
+ );
18
+ };