@fluentui/react-menu 0.0.0-nightly-20230502-0418.1 → 0.0.0-nightly-20230504-0417.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 (187) hide show
  1. package/CHANGELOG.json +25 -25
  2. package/CHANGELOG.md +15 -15
  3. package/dist/index.d.ts +755 -0
  4. package/lib/Menu.js +2 -0
  5. package/lib/Menu.js.map +1 -0
  6. package/lib/MenuDivider.js +2 -0
  7. package/lib/MenuDivider.js.map +1 -0
  8. package/lib/MenuGroup.js +2 -0
  9. package/lib/MenuGroup.js.map +1 -0
  10. package/lib/MenuGroupHeader.js +2 -0
  11. package/lib/MenuGroupHeader.js.map +1 -0
  12. package/lib/MenuItem.js +2 -0
  13. package/lib/MenuItem.js.map +1 -0
  14. package/lib/MenuItemCheckbox.js +2 -0
  15. package/lib/MenuItemCheckbox.js.map +1 -0
  16. package/lib/MenuItemRadio.js +2 -0
  17. package/lib/MenuItemRadio.js.map +1 -0
  18. package/lib/MenuList.js +2 -0
  19. package/lib/MenuList.js.map +1 -0
  20. package/lib/MenuPopover.js +2 -0
  21. package/lib/MenuPopover.js.map +1 -0
  22. package/lib/MenuSplitGroup.js +2 -0
  23. package/lib/MenuSplitGroup.js.map +1 -0
  24. package/lib/MenuTrigger.js +2 -0
  25. package/lib/MenuTrigger.js.map +1 -0
  26. package/lib/components/Menu/Menu.js +14 -0
  27. package/lib/components/Menu/Menu.js.map +1 -0
  28. package/lib/components/Menu/Menu.types.js +2 -0
  29. package/lib/components/Menu/Menu.types.js.map +1 -0
  30. package/lib/components/Menu/index.js +6 -0
  31. package/lib/components/Menu/index.js.map +1 -0
  32. package/lib/components/Menu/renderMenu.js +11 -0
  33. package/lib/components/Menu/renderMenu.js.map +1 -0
  34. package/lib/components/Menu/useMenu.js +268 -0
  35. package/lib/components/Menu/useMenu.js.map +1 -0
  36. package/lib/components/Menu/useMenuContextValues.js +41 -0
  37. package/lib/components/Menu/useMenuContextValues.js.map +1 -0
  38. package/lib/components/MenuDivider/MenuDivider.js +16 -0
  39. package/lib/components/MenuDivider/MenuDivider.js.map +1 -0
  40. package/lib/components/MenuDivider/MenuDivider.types.js +2 -0
  41. package/lib/components/MenuDivider/MenuDivider.types.js.map +1 -0
  42. package/lib/components/MenuDivider/index.js +6 -0
  43. package/lib/components/MenuDivider/index.js.map +1 -0
  44. package/lib/components/MenuDivider/renderMenuDivider.js +14 -0
  45. package/lib/components/MenuDivider/renderMenuDivider.js.map +1 -0
  46. package/lib/components/MenuDivider/useMenuDivider.js +19 -0
  47. package/lib/components/MenuDivider/useMenuDivider.js.map +1 -0
  48. package/lib/components/MenuDivider/useMenuDividerStyles.styles.js +25 -0
  49. package/lib/components/MenuDivider/useMenuDividerStyles.styles.js.map +1 -0
  50. package/lib/components/MenuGroup/MenuGroup.js +18 -0
  51. package/lib/components/MenuGroup/MenuGroup.js.map +1 -0
  52. package/lib/components/MenuGroup/MenuGroup.types.js +2 -0
  53. package/lib/components/MenuGroup/MenuGroup.types.js.map +1 -0
  54. package/lib/components/MenuGroup/index.js +7 -0
  55. package/lib/components/MenuGroup/index.js.map +1 -0
  56. package/lib/components/MenuGroup/renderMenuGroup.js +17 -0
  57. package/lib/components/MenuGroup/renderMenuGroup.js.map +1 -0
  58. package/lib/components/MenuGroup/useMenuGroup.js +21 -0
  59. package/lib/components/MenuGroup/useMenuGroup.js.map +1 -0
  60. package/lib/components/MenuGroup/useMenuGroupContextValues.js +13 -0
  61. package/lib/components/MenuGroup/useMenuGroupContextValues.js.map +1 -0
  62. package/lib/components/MenuGroup/useMenuGroupStyles.styles.js +9 -0
  63. package/lib/components/MenuGroup/useMenuGroupStyles.styles.js.map +1 -0
  64. package/lib/components/MenuGroupHeader/MenuGroupHeader.js +16 -0
  65. package/lib/components/MenuGroupHeader/MenuGroupHeader.js.map +1 -0
  66. package/lib/components/MenuGroupHeader/MenuGroupHeader.types.js +2 -0
  67. package/lib/components/MenuGroupHeader/MenuGroupHeader.types.js.map +1 -0
  68. package/lib/components/MenuGroupHeader/index.js +6 -0
  69. package/lib/components/MenuGroupHeader/index.js.map +1 -0
  70. package/lib/components/MenuGroupHeader/renderMenuGroupHeader.js +14 -0
  71. package/lib/components/MenuGroupHeader/renderMenuGroupHeader.js.map +1 -0
  72. package/lib/components/MenuGroupHeader/useMenuGroupHeader.js +22 -0
  73. package/lib/components/MenuGroupHeader/useMenuGroupHeader.js.map +1 -0
  74. package/lib/components/MenuGroupHeader/useMenuGroupHeaderStyles.styles.js +25 -0
  75. package/lib/components/MenuGroupHeader/useMenuGroupHeaderStyles.styles.js.map +1 -0
  76. package/lib/components/MenuItem/MenuItem.js +16 -0
  77. package/lib/components/MenuItem/MenuItem.js.map +1 -0
  78. package/lib/components/MenuItem/MenuItem.types.js +2 -0
  79. package/lib/components/MenuItem/MenuItem.types.js.map +1 -0
  80. package/lib/components/MenuItem/index.js +6 -0
  81. package/lib/components/MenuItem/index.js.map +1 -0
  82. package/lib/components/MenuItem/renderMenuItem.js +13 -0
  83. package/lib/components/MenuItem/renderMenuItem.js.map +1 -0
  84. package/lib/components/MenuItem/useCharacterSearch.js +20 -0
  85. package/lib/components/MenuItem/useCharacterSearch.js.map +1 -0
  86. package/lib/components/MenuItem/useMenuItem.js +101 -0
  87. package/lib/components/MenuItem/useMenuItem.js.map +1 -0
  88. package/lib/components/MenuItem/useMenuItemStyles.styles.js +150 -0
  89. package/lib/components/MenuItem/useMenuItemStyles.styles.js.map +1 -0
  90. package/lib/components/MenuItemCheckbox/MenuItemCheckbox.js +16 -0
  91. package/lib/components/MenuItemCheckbox/MenuItemCheckbox.js.map +1 -0
  92. package/lib/components/MenuItemCheckbox/MenuItemCheckbox.types.js +2 -0
  93. package/lib/components/MenuItemCheckbox/MenuItemCheckbox.types.js.map +1 -0
  94. package/lib/components/MenuItemCheckbox/index.js +6 -0
  95. package/lib/components/MenuItemCheckbox/index.js.map +1 -0
  96. package/lib/components/MenuItemCheckbox/renderMenuItemCheckbox.js +11 -0
  97. package/lib/components/MenuItemCheckbox/renderMenuItemCheckbox.js.map +1 -0
  98. package/lib/components/MenuItemCheckbox/useMenuItemCheckbox.js +42 -0
  99. package/lib/components/MenuItemCheckbox/useMenuItemCheckbox.js.map +1 -0
  100. package/lib/components/MenuItemCheckbox/useMenuItemCheckboxStyles.styles.js +28 -0
  101. package/lib/components/MenuItemCheckbox/useMenuItemCheckboxStyles.styles.js.map +1 -0
  102. package/lib/components/MenuItemRadio/MenuItemRadio.js +16 -0
  103. package/lib/components/MenuItemRadio/MenuItemRadio.js.map +1 -0
  104. package/lib/components/MenuItemRadio/MenuItemRadio.types.js +2 -0
  105. package/lib/components/MenuItemRadio/MenuItemRadio.types.js.map +1 -0
  106. package/lib/components/MenuItemRadio/index.js +6 -0
  107. package/lib/components/MenuItemRadio/index.js.map +1 -0
  108. package/lib/components/MenuItemRadio/renderMenuItemRadio.js +14 -0
  109. package/lib/components/MenuItemRadio/renderMenuItemRadio.js.map +1 -0
  110. package/lib/components/MenuItemRadio/useMenuItemRadio.js +42 -0
  111. package/lib/components/MenuItemRadio/useMenuItemRadio.js.map +1 -0
  112. package/lib/components/MenuItemRadio/useMenuItemRadioStyles.styles.js +28 -0
  113. package/lib/components/MenuItemRadio/useMenuItemRadioStyles.styles.js.map +1 -0
  114. package/lib/components/MenuList/MenuList.js +18 -0
  115. package/lib/components/MenuList/MenuList.js.map +1 -0
  116. package/lib/components/MenuList/MenuList.types.js +2 -0
  117. package/lib/components/MenuList/MenuList.types.js.map +1 -0
  118. package/lib/components/MenuList/index.js +7 -0
  119. package/lib/components/MenuList/index.js.map +1 -0
  120. package/lib/components/MenuList/renderMenuList.js +16 -0
  121. package/lib/components/MenuList/renderMenuList.js.map +1 -0
  122. package/lib/components/MenuList/useMenuList.js +147 -0
  123. package/lib/components/MenuList/useMenuList.js.map +1 -0
  124. package/lib/components/MenuList/useMenuListContextValues.js +23 -0
  125. package/lib/components/MenuList/useMenuListContextValues.js.map +1 -0
  126. package/lib/components/MenuList/useMenuListStyles.styles.js +23 -0
  127. package/lib/components/MenuList/useMenuListStyles.styles.js.map +1 -0
  128. package/lib/components/MenuPopover/MenuPopover.js +16 -0
  129. package/lib/components/MenuPopover/MenuPopover.js.map +1 -0
  130. package/lib/components/MenuPopover/MenuPopover.types.js +2 -0
  131. package/lib/components/MenuPopover/MenuPopover.types.js.map +1 -0
  132. package/lib/components/MenuPopover/index.js +6 -0
  133. package/lib/components/MenuPopover/index.js.map +1 -0
  134. package/lib/components/MenuPopover/renderMenuPopover.js +19 -0
  135. package/lib/components/MenuPopover/renderMenuPopover.js.map +1 -0
  136. package/lib/components/MenuPopover/useMenuPopover.js +108 -0
  137. package/lib/components/MenuPopover/useMenuPopover.js.map +1 -0
  138. package/lib/components/MenuPopover/useMenuPopoverStyles.styles.js +50 -0
  139. package/lib/components/MenuPopover/useMenuPopoverStyles.styles.js.map +1 -0
  140. package/lib/components/MenuSplitGroup/MenuSplitGroup.js +16 -0
  141. package/lib/components/MenuSplitGroup/MenuSplitGroup.js.map +1 -0
  142. package/lib/components/MenuSplitGroup/MenuSplitGroup.types.js +2 -0
  143. package/lib/components/MenuSplitGroup/MenuSplitGroup.types.js.map +1 -0
  144. package/lib/components/MenuSplitGroup/index.js +6 -0
  145. package/lib/components/MenuSplitGroup/index.js.map +1 -0
  146. package/lib/components/MenuSplitGroup/renderMenuSplitGroup.js +13 -0
  147. package/lib/components/MenuSplitGroup/renderMenuSplitGroup.js.map +1 -0
  148. package/lib/components/MenuSplitGroup/useMenuSplitGroup.js +61 -0
  149. package/lib/components/MenuSplitGroup/useMenuSplitGroup.js.map +1 -0
  150. package/lib/components/MenuSplitGroup/useMenuSplitGroupStyles.styles.js +34 -0
  151. package/lib/components/MenuSplitGroup/useMenuSplitGroupStyles.styles.js.map +1 -0
  152. package/lib/components/MenuTrigger/MenuTrigger.js +15 -0
  153. package/lib/components/MenuTrigger/MenuTrigger.js.map +1 -0
  154. package/lib/components/MenuTrigger/MenuTrigger.types.js +2 -0
  155. package/lib/components/MenuTrigger/MenuTrigger.types.js.map +1 -0
  156. package/lib/components/MenuTrigger/index.js +5 -0
  157. package/lib/components/MenuTrigger/index.js.map +1 -0
  158. package/lib/components/MenuTrigger/renderMenuTrigger.js +13 -0
  159. package/lib/components/MenuTrigger/renderMenuTrigger.js.map +1 -0
  160. package/lib/components/MenuTrigger/useMenuTrigger.styles.js +168 -0
  161. package/lib/components/MenuTrigger/useMenuTrigger.styles.js.map +1 -0
  162. package/lib/components/index.js +3 -0
  163. package/lib/components/index.js.map +1 -0
  164. package/lib/contexts/menuContext.js +27 -0
  165. package/lib/contexts/menuContext.js.map +1 -0
  166. package/lib/contexts/menuGroupContext.js +9 -0
  167. package/lib/contexts/menuGroupContext.js.map +1 -0
  168. package/lib/contexts/menuListContext.js +14 -0
  169. package/lib/contexts/menuListContext.js.map +1 -0
  170. package/lib/contexts/menuTriggerContext.js +10 -0
  171. package/lib/contexts/menuTriggerContext.js.map +1 -0
  172. package/lib/index.js +17 -0
  173. package/lib/index.js.map +1 -0
  174. package/lib/selectable/index.js +3 -0
  175. package/lib/selectable/index.js.map +1 -0
  176. package/lib/selectable/types.js +2 -0
  177. package/lib/selectable/types.js.map +1 -0
  178. package/lib/selectable/useCheckmarkStyles.styles.js +25 -0
  179. package/lib/selectable/useCheckmarkStyles.styles.js.map +1 -0
  180. package/lib/utils/index.js +2 -0
  181. package/lib/utils/index.js.map +1 -0
  182. package/lib/utils/useIsSubmenu.js +17 -0
  183. package/lib/utils/useIsSubmenu.js.map +1 -0
  184. package/lib/utils/useOnMenuEnter.js +65 -0
  185. package/lib/utils/useOnMenuEnter.js.map +1 -0
  186. package/package.json +12 -12
  187. package/.swcrc +0 -30
@@ -0,0 +1,150 @@
1
+ import { mergeClasses, __styles, shorthands } from '@griffel/react';
2
+ import { iconFilledClassName, iconRegularClassName } from '@fluentui/react-icons';
3
+ import { createFocusOutlineStyle } from '@fluentui/react-tabster';
4
+ import { tokens } from '@fluentui/react-theme';
5
+ import { useCheckmarkStyles_unstable } from '../../selectable/index';
6
+ export const menuItemClassNames = {
7
+ root: 'fui-MenuItem',
8
+ icon: 'fui-MenuItem__icon',
9
+ checkmark: 'fui-MenuItem__checkmark',
10
+ submenuIndicator: 'fui-MenuItem__submenuIndicator',
11
+ content: 'fui-MenuItem__content',
12
+ secondaryContent: 'fui-MenuItem__secondaryContent'
13
+ };
14
+ const useStyles = /*#__PURE__*/__styles({
15
+ focusIndicator: {
16
+ Brovlpu: "ftqa4ok",
17
+ B486eqv: "f2hkw1w",
18
+ B8q5s1w: "f8hki3x",
19
+ Bci5o5g: ["f1d2448m", "ffh67wi"],
20
+ n8qw10: "f1bjia2o",
21
+ Bdrgwmp: ["ffh67wi", "f1d2448m"],
22
+ Bm4h7ae: "f15bsgw9",
23
+ B7ys5i9: "f14e48fq",
24
+ Busjfv9: "f18yb2kv",
25
+ Bhk32uz: "fd6o370",
26
+ Bf4ptjt: "fh1cnn4",
27
+ kclons: ["fy7oxxb", "f184ne2d"],
28
+ Bhdgwq3: "fpukqih",
29
+ Blkhhs4: ["f184ne2d", "fy7oxxb"],
30
+ Bqtpl0w: "frrh606",
31
+ clg4pj: ["f1v5zibi", "fo2hd23"],
32
+ hgwjuy: "ful5kiu",
33
+ Bonggc9: ["fo2hd23", "f1v5zibi"],
34
+ B1tsrr9: ["f1jqcqds", "ftffrms"],
35
+ Dah5zi: ["ftffrms", "f1jqcqds"],
36
+ Bkh64rk: ["f2e7qr6", "fsr1zz6"],
37
+ qqdqy8: ["fsr1zz6", "f2e7qr6"],
38
+ B6dhp37: "f1dvezut",
39
+ i03rao: ["fd0oaoj", "f1cwg4i8"],
40
+ Boxcth7: "fjvm52t",
41
+ Bsom6fd: ["f1cwg4i8", "fd0oaoj"],
42
+ J0r882: "fdiulkx",
43
+ Bjwuhne: "f1yalx80",
44
+ Ghsupd: ["fq22d5a", "f1jw7pan"],
45
+ Bule8hv: ["f1jw7pan", "fq22d5a"]
46
+ },
47
+ root: {
48
+ Bbmb7ep: ["f1aa9q02", "f16jpd5f"],
49
+ Beyfa6y: ["f16jpd5f", "f1aa9q02"],
50
+ B7oj6ja: ["f1jar5jt", "fyu767a"],
51
+ Btl43ni: ["fyu767a", "f1jar5jt"],
52
+ qhf8xq: "f10pi13n",
53
+ sj55zd: "fkfq4zb",
54
+ De3pzq: "fxugw4r",
55
+ z189sj: ["f81rol6", "frdkuqy"],
56
+ uwmqm3: ["frdkuqy", "f81rol6"],
57
+ Bqenvij: "f1d2rq10",
58
+ mc9l5x: "f22iagw",
59
+ Bt984gj: "f122n59",
60
+ Be2twd7: "fkhj508",
61
+ Bceei9c: "f1k6fduh",
62
+ i8kkvl: "f1q8lukm",
63
+ Belr9w4: "f1ma2n7n",
64
+ Jwef8y: "f1knas48",
65
+ Bi91k9c: "fnwyq0v",
66
+ Bk3fhr4: "ft1hn21",
67
+ Bmfj8id: "fuxngvv",
68
+ Bg7n49j: "fp258yr",
69
+ famaaq: "f1xqy1su"
70
+ },
71
+ content: {
72
+ uwmqm3: ["f161knb0", "f12huiiw"],
73
+ z189sj: ["f12huiiw", "f161knb0"],
74
+ De3pzq: "f3rmtva",
75
+ Bh6795r: "fqerorx"
76
+ },
77
+ secondaryContent: {
78
+ uwmqm3: ["f161knb0", "f12huiiw"],
79
+ z189sj: ["f12huiiw", "f161knb0"],
80
+ sj55zd: "f11d4kpn",
81
+ Bi91k9c: "f1jp5ecu",
82
+ t0hwav: "fc1cou1"
83
+ },
84
+ icon: {
85
+ a9b677: "f64fuq3",
86
+ Bqenvij: "fjamq6b",
87
+ Be2twd7: "fe5j1ua",
88
+ Bg96gwp: "fez10in",
89
+ Bt984gj: "f122n59",
90
+ mc9l5x: "ftuwxu6",
91
+ Brf1p80: "f4d9j23"
92
+ },
93
+ submenuIndicator: {
94
+ a9b677: "f64fuq3",
95
+ Bqenvij: "fjamq6b",
96
+ Be2twd7: "fe5j1ua",
97
+ Bg96gwp: "fez10in",
98
+ Bt984gj: "f122n59",
99
+ mc9l5x: "ftuwxu6",
100
+ Brf1p80: "f4d9j23"
101
+ },
102
+ disabled: {
103
+ sj55zd: "f1s2aq7o",
104
+ Bi91k9c: "fvgxktp",
105
+ Bk3fhr4: "f19vpps7",
106
+ Bmfj8id: "fv5swzo",
107
+ Bg7n49j: "f1q1x1ba",
108
+ t0hwav: "ft33916",
109
+ Bbusuzp: "f1dcs8yz",
110
+ ze5xyy: "f1kc2mi9",
111
+ Bctn1xl: "fk56vqo",
112
+ Bh6z0a4: "f1ikwg0d"
113
+ }
114
+ }, {
115
+ f: [".ftqa4ok:focus{outline-style:none;}", ".fc1cou1:focus{color:var(--colorNeutralForeground3Hover);}", ".ft33916:focus{color:var(--colorNeutralForegroundDisabled);}"],
116
+ i: [".f2hkw1w:focus-visible{outline-style:none;}"],
117
+ d: [".f8hki3x[data-fui-focus-visible]{border-top-color:transparent;}", ".f1d2448m[data-fui-focus-visible]{border-right-color:transparent;}", ".ffh67wi[data-fui-focus-visible]{border-left-color:transparent;}", ".f1bjia2o[data-fui-focus-visible]{border-bottom-color:transparent;}", ".f15bsgw9[data-fui-focus-visible]::after{content:\"\";}", ".f14e48fq[data-fui-focus-visible]::after{position:absolute;}", ".f18yb2kv[data-fui-focus-visible]::after{pointer-events:none;}", ".fd6o370[data-fui-focus-visible]::after{z-index:1;}", ".fh1cnn4[data-fui-focus-visible]::after{border-top-style:solid;}", ".fy7oxxb[data-fui-focus-visible]::after{border-right-style:solid;}", ".f184ne2d[data-fui-focus-visible]::after{border-left-style:solid;}", ".fpukqih[data-fui-focus-visible]::after{border-bottom-style:solid;}", ".frrh606[data-fui-focus-visible]::after{border-top-width:2px;}", ".f1v5zibi[data-fui-focus-visible]::after{border-right-width:2px;}", ".fo2hd23[data-fui-focus-visible]::after{border-left-width:2px;}", ".ful5kiu[data-fui-focus-visible]::after{border-bottom-width:2px;}", ".f1jqcqds[data-fui-focus-visible]::after{border-bottom-right-radius:var(--borderRadiusMedium);}", ".ftffrms[data-fui-focus-visible]::after{border-bottom-left-radius:var(--borderRadiusMedium);}", ".f2e7qr6[data-fui-focus-visible]::after{border-top-right-radius:var(--borderRadiusMedium);}", ".fsr1zz6[data-fui-focus-visible]::after{border-top-left-radius:var(--borderRadiusMedium);}", ".f1dvezut[data-fui-focus-visible]::after{border-top-color:var(--colorStrokeFocus2);}", ".fd0oaoj[data-fui-focus-visible]::after{border-right-color:var(--colorStrokeFocus2);}", ".f1cwg4i8[data-fui-focus-visible]::after{border-left-color:var(--colorStrokeFocus2);}", ".fjvm52t[data-fui-focus-visible]::after{border-bottom-color:var(--colorStrokeFocus2);}", ".fdiulkx[data-fui-focus-visible]::after{top:-2px;}", ".f1yalx80[data-fui-focus-visible]::after{bottom:-2px;}", ".fq22d5a[data-fui-focus-visible]::after{left:-2px;}", ".f1jw7pan[data-fui-focus-visible]::after{right:-2px;}", ".f1aa9q02{border-bottom-right-radius:var(--borderRadiusMedium);}", ".f16jpd5f{border-bottom-left-radius:var(--borderRadiusMedium);}", ".f1jar5jt{border-top-right-radius:var(--borderRadiusMedium);}", ".fyu767a{border-top-left-radius:var(--borderRadiusMedium);}", ".f10pi13n{position:relative;}", ".fkfq4zb{color:var(--colorNeutralForeground2);}", ".fxugw4r{background-color:var(--colorNeutralBackground1);}", ".f81rol6{padding-right:10px;}", ".frdkuqy{padding-left:10px;}", ".f1d2rq10{height:32px;}", ".f22iagw{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;}", ".f122n59{-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;}", ".fkhj508{font-size:var(--fontSizeBase300);}", ".f1k6fduh{cursor:pointer;}", ".f1q8lukm{-webkit-column-gap:4px;column-gap:4px;}", ".f1ma2n7n{row-gap:4px;}", ".f1xqy1su{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;}", ".f161knb0{padding-left:2px;}", ".f12huiiw{padding-right:2px;}", ".f3rmtva{background-color:transparent;}", ".fqerorx{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;}", ".f11d4kpn{color:var(--colorNeutralForeground3);}", ".f64fuq3{width:20px;}", ".fjamq6b{height:20px;}", ".fe5j1ua{font-size:20px;}", ".fez10in{line-height:0;}", ".ftuwxu6{display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;}", ".f4d9j23{-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;}", ".f1s2aq7o{color:var(--colorNeutralForegroundDisabled);}"],
118
+ h: [".f1knas48:hover{background-color:var(--colorNeutralBackground1Hover);}", ".fnwyq0v:hover{color:var(--colorNeutralForeground2Hover);}", ".ft1hn21:hover .fui-Icon-filled{display:inline;}", ".fuxngvv:hover .fui-Icon-regular{display:none;}", ".fp258yr:hover .fui-MenuItem__icon{color:var(--colorNeutralForeground2BrandSelected);}", ".f1jp5ecu:hover{color:var(--colorNeutralForeground3Hover);}", ".fvgxktp:hover{color:var(--colorNeutralForegroundDisabled);}", ".f19vpps7:hover .fui-Icon-filled{display:none;}", ".fv5swzo:hover .fui-Icon-regular{display:inline;}", ".f1q1x1ba:hover .fui-MenuItem__icon{color:var(--colorNeutralForegroundDisabled);}"],
119
+ m: [["@media (forced-colors: active){.f1dcs8yz{color:GrayText;}}", {
120
+ m: "(forced-colors: active)"
121
+ }], ["@media (forced-colors: active){.f1kc2mi9:hover{color:GrayText;}}", {
122
+ m: "(forced-colors: active)"
123
+ }], ["@media (forced-colors: active){.fk56vqo:hover .fui-MenuItem__icon{color:GrayText;}}", {
124
+ m: "(forced-colors: active)"
125
+ }], ["@media (forced-colors: active){.f1ikwg0d:focus{color:GrayText;}}", {
126
+ m: "(forced-colors: active)"
127
+ }]]
128
+ });
129
+ /** Applies style classnames to slots */
130
+ export const useMenuItemStyles_unstable = state => {
131
+ const styles = useStyles();
132
+ state.root.className = mergeClasses(menuItemClassNames.root, styles.root, styles.focusIndicator, state.disabled && styles.disabled, state.root.className);
133
+ if (state.content) {
134
+ state.content.className = mergeClasses(menuItemClassNames.content, styles.content, state.content.className);
135
+ }
136
+ if (state.checkmark) {
137
+ state.checkmark.className = mergeClasses(menuItemClassNames.checkmark, state.checkmark.className);
138
+ }
139
+ if (state.secondaryContent) {
140
+ state.secondaryContent.className = mergeClasses(menuItemClassNames.secondaryContent, !state.disabled && styles.secondaryContent, state.secondaryContent.className);
141
+ }
142
+ if (state.icon) {
143
+ state.icon.className = mergeClasses(menuItemClassNames.icon, styles.icon, state.icon.className);
144
+ }
145
+ if (state.submenuIndicator) {
146
+ state.submenuIndicator.className = mergeClasses(menuItemClassNames.submenuIndicator, styles.submenuIndicator, state.submenuIndicator.className);
147
+ }
148
+ useCheckmarkStyles_unstable(state);
149
+ };
150
+ //# sourceMappingURL=useMenuItemStyles.styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["mergeClasses","__styles","shorthands","iconFilledClassName","iconRegularClassName","createFocusOutlineStyle","tokens","useCheckmarkStyles_unstable","menuItemClassNames","root","icon","checkmark","submenuIndicator","content","secondaryContent","useStyles","focusIndicator","Brovlpu","B486eqv","B8q5s1w","Bci5o5g","n8qw10","Bdrgwmp","Bm4h7ae","B7ys5i9","Busjfv9","Bhk32uz","Bf4ptjt","kclons","Bhdgwq3","Blkhhs4","Bqtpl0w","clg4pj","hgwjuy","Bonggc9","B1tsrr9","Dah5zi","Bkh64rk","qqdqy8","B6dhp37","i03rao","Boxcth7","Bsom6fd","J0r882","Bjwuhne","Ghsupd","Bule8hv","Bbmb7ep","Beyfa6y","B7oj6ja","Btl43ni","qhf8xq","sj55zd","De3pzq","z189sj","uwmqm3","Bqenvij","mc9l5x","Bt984gj","Be2twd7","Bceei9c","i8kkvl","Belr9w4","Jwef8y","Bi91k9c","Bk3fhr4","Bmfj8id","Bg7n49j","famaaq","Bh6795r","t0hwav","a9b677","Bg96gwp","Brf1p80","disabled","Bbusuzp","ze5xyy","Bctn1xl","Bh6z0a4","f","i","d","h","m","useMenuItemStyles_unstable","state","styles","className"],"sources":["../../../src/components/MenuItem/useMenuItemStyles.styles.ts"],"sourcesContent":["import { mergeClasses, makeStyles, shorthands } from '@griffel/react';\nimport { iconFilledClassName, iconRegularClassName } from '@fluentui/react-icons';\nimport { createFocusOutlineStyle } from '@fluentui/react-tabster';\nimport { tokens } from '@fluentui/react-theme';\nimport { useCheckmarkStyles_unstable } from '../../selectable/index';\nimport type { MenuItemCheckboxState } from '../MenuItemCheckbox/index';\nimport type { MenuItemSlots, MenuItemState } from './MenuItem.types';\nimport type { SlotClassNames } from '@fluentui/react-utilities';\n\nexport const menuItemClassNames: SlotClassNames<MenuItemSlots> = {\n root: 'fui-MenuItem',\n icon: 'fui-MenuItem__icon',\n checkmark: 'fui-MenuItem__checkmark',\n submenuIndicator: 'fui-MenuItem__submenuIndicator',\n content: 'fui-MenuItem__content',\n secondaryContent: 'fui-MenuItem__secondaryContent',\n};\n\nconst useStyles = makeStyles({\n focusIndicator: createFocusOutlineStyle(),\n // TODO: this should be extracted to another package\n root: {\n ...shorthands.borderRadius(tokens.borderRadiusMedium),\n position: 'relative',\n color: tokens.colorNeutralForeground2,\n backgroundColor: tokens.colorNeutralBackground1,\n paddingRight: '10px',\n paddingLeft: '10px',\n height: '32px',\n display: 'flex',\n alignItems: 'center',\n fontSize: tokens.fontSizeBase300,\n cursor: 'pointer',\n ...shorthands.gap('4px'),\n\n ':hover': {\n backgroundColor: tokens.colorNeutralBackground1Hover,\n color: tokens.colorNeutralForeground2Hover,\n\n [`& .${iconFilledClassName}`]: {\n display: 'inline',\n },\n [`& .${iconRegularClassName}`]: {\n display: 'none',\n },\n [`& .${menuItemClassNames.icon}`]: {\n color: tokens.colorNeutralForeground2BrandSelected,\n },\n },\n\n userSelect: 'none',\n },\n content: {\n paddingLeft: '2px',\n paddingRight: '2px',\n backgroundColor: 'transparent',\n flexGrow: 1,\n },\n secondaryContent: {\n paddingLeft: '2px',\n paddingRight: '2px',\n color: tokens.colorNeutralForeground3,\n ':hover': {\n color: tokens.colorNeutralForeground3Hover,\n },\n ':focus': {\n color: tokens.colorNeutralForeground3Hover,\n },\n },\n icon: {\n width: '20px',\n height: '20px',\n fontSize: '20px',\n lineHeight: 0,\n alignItems: 'center',\n display: 'inline-flex',\n justifyContent: 'center',\n },\n submenuIndicator: {\n width: '20px',\n height: '20px',\n fontSize: '20px',\n lineHeight: 0,\n alignItems: 'center',\n display: 'inline-flex',\n justifyContent: 'center',\n },\n disabled: {\n color: tokens.colorNeutralForegroundDisabled,\n ':hover': {\n color: tokens.colorNeutralForegroundDisabled,\n [`& .${iconFilledClassName}`]: {\n display: 'none',\n },\n [`& .${iconRegularClassName}`]: {\n display: 'inline',\n },\n [`& .${menuItemClassNames.icon}`]: {\n color: tokens.colorNeutralForegroundDisabled,\n },\n },\n\n ':focus': {\n color: tokens.colorNeutralForegroundDisabled,\n },\n\n '@media (forced-colors: active)': {\n color: 'GrayText',\n ':hover': {\n color: 'GrayText',\n [`& .${menuItemClassNames.icon}`]: {\n color: 'GrayText',\n },\n },\n ':focus': {\n color: 'GrayText',\n },\n },\n },\n});\n\n/** Applies style classnames to slots */\nexport const useMenuItemStyles_unstable = (state: MenuItemState) => {\n const styles = useStyles();\n state.root.className = mergeClasses(\n menuItemClassNames.root,\n styles.root,\n styles.focusIndicator,\n state.disabled && styles.disabled,\n state.root.className,\n );\n\n if (state.content) {\n state.content.className = mergeClasses(menuItemClassNames.content, styles.content, state.content.className);\n }\n\n if (state.checkmark) {\n state.checkmark.className = mergeClasses(menuItemClassNames.checkmark, state.checkmark.className);\n }\n\n if (state.secondaryContent) {\n state.secondaryContent.className = mergeClasses(\n menuItemClassNames.secondaryContent,\n !state.disabled && styles.secondaryContent,\n state.secondaryContent.className,\n );\n }\n\n if (state.icon) {\n state.icon.className = mergeClasses(menuItemClassNames.icon, styles.icon, state.icon.className);\n }\n\n if (state.submenuIndicator) {\n state.submenuIndicator.className = mergeClasses(\n menuItemClassNames.submenuIndicator,\n styles.submenuIndicator,\n state.submenuIndicator.className,\n );\n }\n useCheckmarkStyles_unstable(state as MenuItemCheckboxState);\n};\n"],"mappings":"AAAA,SAASA,YAAY,EAAAC,QAAA,EAAcC,UAAU,QAAQ;AACrD,SAASC,mBAAmB,EAAEC,oBAAoB,QAAQ;AAC1D,SAASC,uBAAuB,QAAQ;AACxC,SAASC,MAAM,QAAQ;AACvB,SAASC,2BAA2B,QAAQ;AAK5C,OAAO,MAAMC,kBAAA,GAAoD;EAC/DC,IAAA,EAAM;EACNC,IAAA,EAAM;EACNC,SAAA,EAAW;EACXC,gBAAA,EAAkB;EAClBC,OAAA,EAAS;EACTC,gBAAA,EAAkB;AACpB;AAEA,MAAMC,SAAA,gBAAYd,QAAA;EAAAe,cAAA;IAAAC,OAAA;IAAAC,OAAA;IAAAC,OAAA;IAAAC,OAAA;IAAAC,MAAA;IAAAC,OAAA;IAAAC,OAAA;IAAAC,OAAA;IAAAC,OAAA;IAAAC,OAAA;IAAAC,OAAA;IAAAC,MAAA;IAAAC,OAAA;IAAAC,OAAA;IAAAC,OAAA;IAAAC,MAAA;IAAAC,MAAA;IAAAC,OAAA;IAAAC,OAAA;IAAAC,MAAA;IAAAC,OAAA;IAAAC,MAAA;IAAAC,OAAA;IAAAC,MAAA;IAAAC,OAAA;IAAAC,OAAA;IAAAC,MAAA;IAAAC,OAAA;IAAAC,MAAA;IAAAC,OAAA;EAAA;EAAArC,IAAA;IAAAsC,OAAA;IAAAC,OAAA;IAAAC,OAAA;IAAAC,OAAA;IAAAC,MAAA;IAAAC,MAAA;IAAAC,MAAA;IAAAC,MAAA;IAAAC,MAAA;IAAAC,OAAA;IAAAC,MAAA;IAAAC,OAAA;IAAAC,OAAA;IAAAC,OAAA;IAAAC,MAAA;IAAAC,OAAA;IAAAC,MAAA;IAAAC,OAAA;IAAAC,OAAA;IAAAC,OAAA;IAAAC,OAAA;IAAAC,MAAA;EAAA;EAAAvD,OAAA;IAAA0C,MAAA;IAAAD,MAAA;IAAAD,MAAA;IAAAgB,OAAA;EAAA;EAAAvD,gBAAA;IAAAyC,MAAA;IAAAD,MAAA;IAAAF,MAAA;IAAAY,OAAA;IAAAM,MAAA;EAAA;EAAA5D,IAAA;IAAA6D,MAAA;IAAAf,OAAA;IAAAG,OAAA;IAAAa,OAAA;IAAAd,OAAA;IAAAD,MAAA;IAAAgB,OAAA;EAAA;EAAA7D,gBAAA;IAAA2D,MAAA;IAAAf,OAAA;IAAAG,OAAA;IAAAa,OAAA;IAAAd,OAAA;IAAAD,MAAA;IAAAgB,OAAA;EAAA;EAAAC,QAAA;IAAAtB,MAAA;IAAAY,OAAA;IAAAC,OAAA;IAAAC,OAAA;IAAAC,OAAA;IAAAG,MAAA;IAAAK,OAAA;IAAAC,MAAA;IAAAC,OAAA;IAAAC,OAAA;EAAA;AAAA;EAAAC,CAAA;EAAAC,CAAA;EAAAC,CAAA;EAAAC,CAAA;EAAAC,CAAA;IAAAA,CAAA;EAAA;IAAAA,CAAA;EAAA;IAAAA,CAAA;EAAA;IAAAA,CAAA;EAAA;AAAA,EAqGlB;AAEA;AACA,OAAO,MAAMC,0BAAA,GAA8BC,KAAA,IAAyB;EAClE,MAAMC,MAAA,GAASvE,SAAA;EACfsE,KAAA,CAAM5E,IAAI,CAAC8E,SAAS,GAAGvF,YAAA,CACrBQ,kBAAA,CAAmBC,IAAI,EACvB6E,MAAA,CAAO7E,IAAI,EACX6E,MAAA,CAAOtE,cAAc,EACrBqE,KAAA,CAAMX,QAAQ,IAAIY,MAAA,CAAOZ,QAAQ,EACjCW,KAAA,CAAM5E,IAAI,CAAC8E,SAAS;EAGtB,IAAIF,KAAA,CAAMxE,OAAO,EAAE;IACjBwE,KAAA,CAAMxE,OAAO,CAAC0E,SAAS,GAAGvF,YAAA,CAAaQ,kBAAA,CAAmBK,OAAO,EAAEyE,MAAA,CAAOzE,OAAO,EAAEwE,KAAA,CAAMxE,OAAO,CAAC0E,SAAS;EAC5G;EAEA,IAAIF,KAAA,CAAM1E,SAAS,EAAE;IACnB0E,KAAA,CAAM1E,SAAS,CAAC4E,SAAS,GAAGvF,YAAA,CAAaQ,kBAAA,CAAmBG,SAAS,EAAE0E,KAAA,CAAM1E,SAAS,CAAC4E,SAAS;EAClG;EAEA,IAAIF,KAAA,CAAMvE,gBAAgB,EAAE;IAC1BuE,KAAA,CAAMvE,gBAAgB,CAACyE,SAAS,GAAGvF,YAAA,CACjCQ,kBAAA,CAAmBM,gBAAgB,EACnC,CAACuE,KAAA,CAAMX,QAAQ,IAAIY,MAAA,CAAOxE,gBAAgB,EAC1CuE,KAAA,CAAMvE,gBAAgB,CAACyE,SAAS;EAEpC;EAEA,IAAIF,KAAA,CAAM3E,IAAI,EAAE;IACd2E,KAAA,CAAM3E,IAAI,CAAC6E,SAAS,GAAGvF,YAAA,CAAaQ,kBAAA,CAAmBE,IAAI,EAAE4E,MAAA,CAAO5E,IAAI,EAAE2E,KAAA,CAAM3E,IAAI,CAAC6E,SAAS;EAChG;EAEA,IAAIF,KAAA,CAAMzE,gBAAgB,EAAE;IAC1ByE,KAAA,CAAMzE,gBAAgB,CAAC2E,SAAS,GAAGvF,YAAA,CACjCQ,kBAAA,CAAmBI,gBAAgB,EACnC0E,MAAA,CAAO1E,gBAAgB,EACvByE,KAAA,CAAMzE,gBAAgB,CAAC2E,SAAS;EAEpC;EACAhF,2BAAA,CAA4B8E,KAAA;AAC9B"}
@@ -0,0 +1,16 @@
1
+ import * as React from 'react';
2
+ import { useMenuItemCheckbox_unstable } from './useMenuItemCheckbox';
3
+ import { renderMenuItemCheckbox_unstable } from './renderMenuItemCheckbox';
4
+ import { useMenuItemCheckboxStyles_unstable } from './useMenuItemCheckboxStyles.styles';
5
+ import { useCustomStyleHook_unstable } from '@fluentui/react-shared-contexts';
6
+ /**
7
+ * Define a styled MenuItemCheckbox, using the `useMenuItemCheckbox_unstable` hook.
8
+ */
9
+ export const MenuItemCheckbox = /*#__PURE__*/React.forwardRef((props, ref) => {
10
+ const state = useMenuItemCheckbox_unstable(props, ref);
11
+ useMenuItemCheckboxStyles_unstable(state);
12
+ useCustomStyleHook_unstable('useMenuItemCheckboxStyles_unstable')(state);
13
+ return renderMenuItemCheckbox_unstable(state);
14
+ });
15
+ MenuItemCheckbox.displayName = 'MenuItemCheckbox';
16
+ //# sourceMappingURL=MenuItemCheckbox.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","useMenuItemCheckbox_unstable","renderMenuItemCheckbox_unstable","useMenuItemCheckboxStyles_unstable","useCustomStyleHook_unstable","MenuItemCheckbox","forwardRef","props","ref","state","displayName"],"sources":["../../../src/components/MenuItemCheckbox/MenuItemCheckbox.tsx"],"sourcesContent":["import * as React from 'react';\nimport { useMenuItemCheckbox_unstable } from './useMenuItemCheckbox';\nimport { renderMenuItemCheckbox_unstable } from './renderMenuItemCheckbox';\nimport { useMenuItemCheckboxStyles_unstable } from './useMenuItemCheckboxStyles.styles';\nimport type { MenuItemCheckboxProps } from './MenuItemCheckbox.types';\nimport type { ForwardRefComponent } from '@fluentui/react-utilities';\nimport { useCustomStyleHook_unstable } from '@fluentui/react-shared-contexts';\n\n/**\n * Define a styled MenuItemCheckbox, using the `useMenuItemCheckbox_unstable` hook.\n */\nexport const MenuItemCheckbox: ForwardRefComponent<MenuItemCheckboxProps> = React.forwardRef((props, ref) => {\n const state = useMenuItemCheckbox_unstable(props, ref);\n\n useMenuItemCheckboxStyles_unstable(state);\n\n useCustomStyleHook_unstable('useMenuItemCheckboxStyles_unstable')(state);\n\n return renderMenuItemCheckbox_unstable(state);\n});\n\nMenuItemCheckbox.displayName = 'MenuItemCheckbox';\n"],"mappings":"AAAA,YAAYA,KAAA,MAAW;AACvB,SAASC,4BAA4B,QAAQ;AAC7C,SAASC,+BAA+B,QAAQ;AAChD,SAASC,kCAAkC,QAAQ;AAGnD,SAASC,2BAA2B,QAAQ;AAE5C;;;AAGA,OAAO,MAAMC,gBAAA,gBAA+DL,KAAA,CAAMM,UAAU,CAAC,CAACC,KAAA,EAAOC,GAAA,KAAQ;EAC3G,MAAMC,KAAA,GAAQR,4BAAA,CAA6BM,KAAA,EAAOC,GAAA;EAElDL,kCAAA,CAAmCM,KAAA;EAEnCL,2BAAA,CAA4B,sCAAsCK,KAAA;EAElE,OAAOP,+BAAA,CAAgCO,KAAA;AACzC;AAEAJ,gBAAA,CAAiBK,WAAW,GAAG"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=MenuItemCheckbox.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sources":["../../../src/components/MenuItemCheckbox/MenuItemCheckbox.types.ts"],"sourcesContent":["import type { MenuItemSelectableProps, MenuItemSelectableState } from '../../selectable/index';\nimport type { MenuItemProps, MenuItemState } from '../MenuItem/MenuItem.types';\n\nexport type MenuItemCheckboxProps = MenuItemProps & MenuItemSelectableProps;\n\nexport type MenuItemCheckboxState = MenuItemState & MenuItemSelectableState;\n"],"mappings":"AAAA"}
@@ -0,0 +1,6 @@
1
+ export * from './MenuItemCheckbox.types';
2
+ export * from './MenuItemCheckbox';
3
+ export * from './renderMenuItemCheckbox';
4
+ export * from './useMenuItemCheckbox';
5
+ export * from './useMenuItemCheckboxStyles.styles';
6
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sources":["../../../src/components/MenuItemCheckbox/index.ts"],"sourcesContent":["export * from './MenuItemCheckbox.types';\nexport * from './MenuItemCheckbox';\nexport * from './renderMenuItemCheckbox';\nexport * from './useMenuItemCheckbox';\nexport * from './useMenuItemCheckboxStyles.styles';\n"],"mappings":"AAAA,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc"}
@@ -0,0 +1,11 @@
1
+ /** @jsxRuntime classic */ /** @jsx createElement */import { createElement } from '@fluentui/react-jsx-runtime';
2
+ import { getSlotsNext } from '@fluentui/react-utilities';
3
+ /** Function that renders the final JSX of the component */
4
+ export const renderMenuItemCheckbox_unstable = state => {
5
+ const {
6
+ slots,
7
+ slotProps
8
+ } = getSlotsNext(state);
9
+ return /*#__PURE__*/createElement(slots.root, slotProps.root, slots.checkmark && /*#__PURE__*/createElement(slots.checkmark, slotProps.checkmark), slots.icon && /*#__PURE__*/createElement(slots.icon, slotProps.icon), slots.content && /*#__PURE__*/createElement(slots.content, slotProps.content), slots.secondaryContent && /*#__PURE__*/createElement(slots.secondaryContent, slotProps.secondaryContent));
10
+ };
11
+ //# sourceMappingURL=renderMenuItemCheckbox.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createElement","getSlotsNext","renderMenuItemCheckbox_unstable","state","slots","slotProps","root","checkmark","icon","content","secondaryContent"],"sources":["../../../src/components/MenuItemCheckbox/renderMenuItemCheckbox.tsx"],"sourcesContent":["/** @jsxRuntime classic */\n/** @jsx createElement */\n\nimport { createElement } from '@fluentui/react-jsx-runtime';\nimport { getSlotsNext } from '@fluentui/react-utilities';\nimport type { MenuItemCheckboxState } from './MenuItemCheckbox.types';\nimport type { MenuItemSlots } from '../MenuItem/MenuItem.types';\n\n/** Function that renders the final JSX of the component */\nexport const renderMenuItemCheckbox_unstable = (state: MenuItemCheckboxState) => {\n const { slots, slotProps } = getSlotsNext<MenuItemSlots>(state);\n\n return (\n <slots.root {...slotProps.root}>\n {slots.checkmark && <slots.checkmark {...slotProps.checkmark} />}\n {slots.icon && <slots.icon {...slotProps.icon} />}\n {slots.content && <slots.content {...slotProps.content} />}\n {slots.secondaryContent && <slots.secondaryContent {...slotProps.secondaryContent} />}\n </slots.root>\n );\n};\n"],"mappings":"AAAA,2BACA,yBAEA,SAASA,aAAa,QAAQ;AAC9B,SAASC,YAAY,QAAQ;AAI7B;AACA,OAAO,MAAMC,+BAAA,GAAmCC,KAAA,IAAiC;EAC/E,MAAM;IAAEC,KAAA;IAAOC;EAAS,CAAE,GAAGJ,YAAA,CAA4BE,KAAA;EAEzD,oBACEH,aAZJ,CAYKI,KAAA,CAAME,IAAI,EAAKD,SAAA,CAAUC,IAAI,EAC3BF,KAAA,CAAMG,SAAS,iBAAIP,aAb1B,CAa2BI,KAAA,CAAMG,SAAS,EAAKF,SAAA,CAAUE,SAAS,GAC3DH,KAAA,CAAMI,IAAI,iBAAIR,aAdrB,CAcsBI,KAAA,CAAMI,IAAI,EAAKH,SAAA,CAAUG,IAAI,GAC5CJ,KAAA,CAAMK,OAAO,iBAAIT,aAfxB,CAeyBI,KAAA,CAAMK,OAAO,EAAKJ,SAAA,CAAUI,OAAO,GACrDL,KAAA,CAAMM,gBAAgB,iBAAIV,aAhBjC,CAgBkCI,KAAA,CAAMM,gBAAgB,EAAKL,SAAA,CAAUK,gBAAgB;AAGvF"}
@@ -0,0 +1,42 @@
1
+ import * as React from 'react';
2
+ import { resolveShorthand } from '@fluentui/react-utilities';
3
+ import { Checkmark16Filled } from '@fluentui/react-icons';
4
+ import { useMenuListContext_unstable } from '../../contexts/menuListContext';
5
+ import { useMenuItem_unstable } from '../MenuItem/useMenuItem';
6
+ /** Returns the props and state required to render the component */
7
+ export const useMenuItemCheckbox_unstable = (props, ref) => {
8
+ const toggleCheckbox = useMenuListContext_unstable(context => context.toggleCheckbox);
9
+ const {
10
+ name,
11
+ value
12
+ } = props;
13
+ const checked = useMenuListContext_unstable(context => {
14
+ var _context_checkedValues;
15
+ const checkedItems = ((_context_checkedValues = context.checkedValues) === null || _context_checkedValues === void 0 ? void 0 : _context_checkedValues[name]) || [];
16
+ return checkedItems.indexOf(value) !== -1;
17
+ });
18
+ const state = {
19
+ ...useMenuItem_unstable({
20
+ role: 'menuitemcheckbox',
21
+ persistOnClick: true,
22
+ ...props,
23
+ 'aria-checked': checked,
24
+ checkmark: resolveShorthand(props.checkmark, {
25
+ defaultProps: {
26
+ children: /*#__PURE__*/React.createElement(Checkmark16Filled, null)
27
+ },
28
+ required: true
29
+ }),
30
+ onClick: e => {
31
+ var _props_onClick;
32
+ toggleCheckbox === null || toggleCheckbox === void 0 ? void 0 : toggleCheckbox(e, name, value, checked);
33
+ (_props_onClick = props.onClick) === null || _props_onClick === void 0 ? void 0 : _props_onClick.call(props, e);
34
+ }
35
+ }, ref),
36
+ name,
37
+ value,
38
+ checked
39
+ };
40
+ return state;
41
+ };
42
+ //# sourceMappingURL=useMenuItemCheckbox.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","resolveShorthand","Checkmark16Filled","useMenuListContext_unstable","useMenuItem_unstable","useMenuItemCheckbox_unstable","props","ref","toggleCheckbox","context","name","value","checked","_context_checkedValues","checkedItems","checkedValues","indexOf","state","role","persistOnClick","checkmark","defaultProps","children","createElement","required","onClick","e","_props_onClick","call"],"sources":["../../../src/components/MenuItemCheckbox/useMenuItemCheckbox.tsx"],"sourcesContent":["import * as React from 'react';\nimport { resolveShorthand } from '@fluentui/react-utilities';\nimport { Checkmark16Filled } from '@fluentui/react-icons';\nimport { useMenuListContext_unstable } from '../../contexts/menuListContext';\nimport { useMenuItem_unstable } from '../MenuItem/useMenuItem';\nimport type { MenuItemCheckboxProps, MenuItemCheckboxState } from './MenuItemCheckbox.types';\nimport type { ARIAButtonElement, ARIAButtonElementIntersection } from '@fluentui/react-aria';\n\n/** Returns the props and state required to render the component */\nexport const useMenuItemCheckbox_unstable = (\n props: MenuItemCheckboxProps,\n ref: React.Ref<ARIAButtonElement<'div'>>,\n): MenuItemCheckboxState => {\n const toggleCheckbox = useMenuListContext_unstable(context => context.toggleCheckbox);\n const { name, value } = props;\n\n const checked = useMenuListContext_unstable(context => {\n const checkedItems = context.checkedValues?.[name] || [];\n return checkedItems.indexOf(value) !== -1;\n });\n\n const state: MenuItemCheckboxState = {\n ...useMenuItem_unstable(\n {\n role: 'menuitemcheckbox',\n persistOnClick: true,\n ...props,\n 'aria-checked': checked,\n checkmark: resolveShorthand(props.checkmark, {\n defaultProps: { children: <Checkmark16Filled /> },\n required: true,\n }),\n onClick: (e: React.MouseEvent<ARIAButtonElementIntersection<'div'>>) => {\n toggleCheckbox?.(e, name, value, checked);\n props.onClick?.(e);\n },\n },\n ref,\n ),\n name,\n value,\n checked,\n };\n\n return state;\n};\n"],"mappings":"AAAA,YAAYA,KAAA,MAAW;AACvB,SAASC,gBAAgB,QAAQ;AACjC,SAASC,iBAAiB,QAAQ;AAClC,SAASC,2BAA2B,QAAQ;AAC5C,SAASC,oBAAoB,QAAQ;AAIrC;AACA,OAAO,MAAMC,4BAAA,GAA+BA,CAC1CC,KAAA,EACAC,GAAA,KAC0B;EAC1B,MAAMC,cAAA,GAAiBL,2BAAA,CAA4BM,OAAA,IAAWA,OAAA,CAAQD,cAAc;EACpF,MAAM;IAAEE,IAAA;IAAMC;EAAK,CAAE,GAAGL,KAAA;EAExB,MAAMM,OAAA,GAAUT,2BAAA,CAA4BM,OAAA,IAAW;QAChCI,sBAAA;IAArB,MAAMC,YAAA,GAAe,EAAAD,sBAAA,GAAAJ,OAAA,CAAQM,aAAa,cAArBF,sBAAA,uBAAAA,sBAAuB,CAACH,IAAA,CAAK,KAAI,EAAE;IACxD,OAAOI,YAAA,CAAaE,OAAO,CAACL,KAAA,MAAW,CAAC;EAC1C;EAEA,MAAMM,KAAA,GAA+B;IACnC,GAAGb,oBAAA,CACD;MACEc,IAAA,EAAM;MACNC,cAAA,EAAgB,IAAI;MACpB,GAAGb,KAAK;MACR,gBAAgBM,OAAA;MAChBQ,SAAA,EAAWnB,gBAAA,CAAiBK,KAAA,CAAMc,SAAS,EAAE;QAC3CC,YAAA,EAAc;UAAEC,QAAA,eAAUtB,KAAA,CAAAuB,aAAA,CAACrB,iBAAA;QAAqB;QAChDsB,QAAA,EAAU;MACZ;MACAC,OAAA,EAAUC,CAAA,IAA8D;YAEtEC,cAAA;QADAnB,cAAA,aAAAA,cAAA,uBAAAA,cAAA,CAAiBkB,CAAA,EAAGhB,IAAA,EAAMC,KAAA,EAAOC,OAAA;QACjC,CAAAe,cAAA,GAAArB,KAAA,CAAMmB,OAAO,cAAbE,cAAA,uBAAAA,cAAA,CAAAC,IAAA,CAAAtB,KAAA,EAAgBoB,CAAA;MAClB;IACF,GACAnB,GAAA,CACD;IACDG,IAAA;IACAC,KAAA;IACAC;EACF;EAEA,OAAOK,KAAA;AACT"}
@@ -0,0 +1,28 @@
1
+ import { mergeClasses } from '@griffel/react';
2
+ import { useCheckmarkStyles_unstable } from '../../selectable/index';
3
+ import { useMenuItemStyles_unstable } from '../MenuItem/useMenuItemStyles.styles';
4
+ export const menuItemCheckboxClassNames = {
5
+ root: 'fui-MenuItemCheckbox',
6
+ icon: 'fui-MenuItemCheckbox__icon',
7
+ checkmark: 'fui-MenuItemCheckbox__checkmark',
8
+ content: 'fui-MenuItemCheckbox__content',
9
+ secondaryContent: 'fui-MenuItemCheckbox__secondaryContent'
10
+ };
11
+ export const useMenuItemCheckboxStyles_unstable = state => {
12
+ state.root.className = mergeClasses(menuItemCheckboxClassNames.root, state.root.className);
13
+ if (state.content) {
14
+ state.content.className = mergeClasses(menuItemCheckboxClassNames.content, state.content.className);
15
+ }
16
+ if (state.secondaryContent) {
17
+ state.secondaryContent.className = mergeClasses(menuItemCheckboxClassNames.secondaryContent, state.secondaryContent.className);
18
+ }
19
+ if (state.icon) {
20
+ state.icon.className = mergeClasses(menuItemCheckboxClassNames.icon, state.icon.className);
21
+ }
22
+ if (state.checkmark) {
23
+ state.checkmark.className = mergeClasses(menuItemCheckboxClassNames.checkmark, state.checkmark.className);
24
+ }
25
+ useMenuItemStyles_unstable(state);
26
+ useCheckmarkStyles_unstable(state);
27
+ };
28
+ //# sourceMappingURL=useMenuItemCheckboxStyles.styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["mergeClasses","useCheckmarkStyles_unstable","useMenuItemStyles_unstable","menuItemCheckboxClassNames","root","icon","checkmark","content","secondaryContent","useMenuItemCheckboxStyles_unstable","state","className"],"sources":["../../../src/components/MenuItemCheckbox/useMenuItemCheckboxStyles.styles.ts"],"sourcesContent":["import { mergeClasses } from '@griffel/react';\nimport { useCheckmarkStyles_unstable } from '../../selectable/index';\nimport { useMenuItemStyles_unstable } from '../MenuItem/useMenuItemStyles.styles';\nimport type { SlotClassNames } from '@fluentui/react-utilities';\nimport type { MenuItemSlots } from '../index';\nimport type { MenuItemCheckboxState } from './MenuItemCheckbox.types';\n\nexport const menuItemCheckboxClassNames: SlotClassNames<Omit<MenuItemSlots, 'submenuIndicator'>> = {\n root: 'fui-MenuItemCheckbox',\n icon: 'fui-MenuItemCheckbox__icon',\n checkmark: 'fui-MenuItemCheckbox__checkmark',\n content: 'fui-MenuItemCheckbox__content',\n secondaryContent: 'fui-MenuItemCheckbox__secondaryContent',\n};\n\nexport const useMenuItemCheckboxStyles_unstable = (state: MenuItemCheckboxState) => {\n state.root.className = mergeClasses(menuItemCheckboxClassNames.root, state.root.className);\n\n if (state.content) {\n state.content.className = mergeClasses(menuItemCheckboxClassNames.content, state.content.className);\n }\n\n if (state.secondaryContent) {\n state.secondaryContent.className = mergeClasses(\n menuItemCheckboxClassNames.secondaryContent,\n state.secondaryContent.className,\n );\n }\n\n if (state.icon) {\n state.icon.className = mergeClasses(menuItemCheckboxClassNames.icon, state.icon.className);\n }\n\n if (state.checkmark) {\n state.checkmark.className = mergeClasses(menuItemCheckboxClassNames.checkmark, state.checkmark.className);\n }\n\n useMenuItemStyles_unstable(state);\n useCheckmarkStyles_unstable(state);\n};\n"],"mappings":"AAAA,SAASA,YAAY,QAAQ;AAC7B,SAASC,2BAA2B,QAAQ;AAC5C,SAASC,0BAA0B,QAAQ;AAK3C,OAAO,MAAMC,0BAAA,GAAsF;EACjGC,IAAA,EAAM;EACNC,IAAA,EAAM;EACNC,SAAA,EAAW;EACXC,OAAA,EAAS;EACTC,gBAAA,EAAkB;AACpB;AAEA,OAAO,MAAMC,kCAAA,GAAsCC,KAAA,IAAiC;EAClFA,KAAA,CAAMN,IAAI,CAACO,SAAS,GAAGX,YAAA,CAAaG,0BAAA,CAA2BC,IAAI,EAAEM,KAAA,CAAMN,IAAI,CAACO,SAAS;EAEzF,IAAID,KAAA,CAAMH,OAAO,EAAE;IACjBG,KAAA,CAAMH,OAAO,CAACI,SAAS,GAAGX,YAAA,CAAaG,0BAAA,CAA2BI,OAAO,EAAEG,KAAA,CAAMH,OAAO,CAACI,SAAS;EACpG;EAEA,IAAID,KAAA,CAAMF,gBAAgB,EAAE;IAC1BE,KAAA,CAAMF,gBAAgB,CAACG,SAAS,GAAGX,YAAA,CACjCG,0BAAA,CAA2BK,gBAAgB,EAC3CE,KAAA,CAAMF,gBAAgB,CAACG,SAAS;EAEpC;EAEA,IAAID,KAAA,CAAML,IAAI,EAAE;IACdK,KAAA,CAAML,IAAI,CAACM,SAAS,GAAGX,YAAA,CAAaG,0BAAA,CAA2BE,IAAI,EAAEK,KAAA,CAAML,IAAI,CAACM,SAAS;EAC3F;EAEA,IAAID,KAAA,CAAMJ,SAAS,EAAE;IACnBI,KAAA,CAAMJ,SAAS,CAACK,SAAS,GAAGX,YAAA,CAAaG,0BAAA,CAA2BG,SAAS,EAAEI,KAAA,CAAMJ,SAAS,CAACK,SAAS;EAC1G;EAEAT,0BAAA,CAA2BQ,KAAA;EAC3BT,2BAAA,CAA4BS,KAAA;AAC9B"}
@@ -0,0 +1,16 @@
1
+ import * as React from 'react';
2
+ import { useMenuItemRadio_unstable } from './useMenuItemRadio';
3
+ import { renderMenuItemRadio_unstable } from './renderMenuItemRadio';
4
+ import { useMenuItemRadioStyles_unstable } from './useMenuItemRadioStyles.styles';
5
+ import { useCustomStyleHook_unstable } from '@fluentui/react-shared-contexts';
6
+ /**
7
+ * Define a styled MenuItemRadio, using the `useMenuItemRadio_unstable` hook.
8
+ */
9
+ export const MenuItemRadio = /*#__PURE__*/React.forwardRef((props, ref) => {
10
+ const state = useMenuItemRadio_unstable(props, ref);
11
+ useMenuItemRadioStyles_unstable(state);
12
+ useCustomStyleHook_unstable('useMenuItemRadioStyles_unstable')(state);
13
+ return renderMenuItemRadio_unstable(state);
14
+ });
15
+ MenuItemRadio.displayName = 'MenuItemRadio';
16
+ //# sourceMappingURL=MenuItemRadio.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","useMenuItemRadio_unstable","renderMenuItemRadio_unstable","useMenuItemRadioStyles_unstable","useCustomStyleHook_unstable","MenuItemRadio","forwardRef","props","ref","state","displayName"],"sources":["../../../src/components/MenuItemRadio/MenuItemRadio.tsx"],"sourcesContent":["import * as React from 'react';\nimport { useMenuItemRadio_unstable } from './useMenuItemRadio';\nimport { renderMenuItemRadio_unstable } from './renderMenuItemRadio';\nimport { useMenuItemRadioStyles_unstable } from './useMenuItemRadioStyles.styles';\nimport type { MenuItemRadioProps } from './MenuItemRadio.types';\nimport type { ForwardRefComponent } from '@fluentui/react-utilities';\nimport { useCustomStyleHook_unstable } from '@fluentui/react-shared-contexts';\n\n/**\n * Define a styled MenuItemRadio, using the `useMenuItemRadio_unstable` hook.\n */\nexport const MenuItemRadio: ForwardRefComponent<MenuItemRadioProps> = React.forwardRef((props, ref) => {\n const state = useMenuItemRadio_unstable(props, ref);\n\n useMenuItemRadioStyles_unstable(state);\n\n useCustomStyleHook_unstable('useMenuItemRadioStyles_unstable')(state);\n\n return renderMenuItemRadio_unstable(state);\n});\n\nMenuItemRadio.displayName = 'MenuItemRadio';\n"],"mappings":"AAAA,YAAYA,KAAA,MAAW;AACvB,SAASC,yBAAyB,QAAQ;AAC1C,SAASC,4BAA4B,QAAQ;AAC7C,SAASC,+BAA+B,QAAQ;AAGhD,SAASC,2BAA2B,QAAQ;AAE5C;;;AAGA,OAAO,MAAMC,aAAA,gBAAyDL,KAAA,CAAMM,UAAU,CAAC,CAACC,KAAA,EAAOC,GAAA,KAAQ;EACrG,MAAMC,KAAA,GAAQR,yBAAA,CAA0BM,KAAA,EAAOC,GAAA;EAE/CL,+BAAA,CAAgCM,KAAA;EAEhCL,2BAAA,CAA4B,mCAAmCK,KAAA;EAE/D,OAAOP,4BAAA,CAA6BO,KAAA;AACtC;AAEAJ,aAAA,CAAcK,WAAW,GAAG"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=MenuItemRadio.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sources":["../../../src/components/MenuItemRadio/MenuItemRadio.types.ts"],"sourcesContent":["import type { MenuItemSelectableProps, MenuItemSelectableState } from '../../selectable/index';\nimport type { MenuItemProps, MenuItemState } from '../MenuItem/MenuItem.types';\n\nexport type MenuItemRadioProps = MenuItemProps & MenuItemSelectableProps;\n\nexport type MenuItemRadioState = MenuItemState & MenuItemSelectableState;\n"],"mappings":"AAAA"}
@@ -0,0 +1,6 @@
1
+ export * from './MenuItemRadio.types';
2
+ export * from './MenuItemRadio';
3
+ export * from './renderMenuItemRadio';
4
+ export * from './useMenuItemRadio';
5
+ export * from './useMenuItemRadioStyles.styles';
6
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sources":["../../../src/components/MenuItemRadio/index.ts"],"sourcesContent":["export * from './MenuItemRadio.types';\nexport * from './MenuItemRadio';\nexport * from './renderMenuItemRadio';\nexport * from './useMenuItemRadio';\nexport * from './useMenuItemRadioStyles.styles';\n"],"mappings":"AAAA,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc"}
@@ -0,0 +1,14 @@
1
+ /** @jsxRuntime classic */ /** @jsx createElement */import { createElement } from '@fluentui/react-jsx-runtime';
2
+ import { getSlotsNext } from '@fluentui/react-utilities';
3
+ /**
4
+ * Redefine the render function to add slots. Reuse the menuitemradio structure but add
5
+ * slots to children.
6
+ */
7
+ export const renderMenuItemRadio_unstable = state => {
8
+ const {
9
+ slots,
10
+ slotProps
11
+ } = getSlotsNext(state);
12
+ return /*#__PURE__*/createElement(slots.root, slotProps.root, slots.checkmark && /*#__PURE__*/createElement(slots.checkmark, slotProps.checkmark), slots.icon && /*#__PURE__*/createElement(slots.icon, slotProps.icon), slots.content && /*#__PURE__*/createElement(slots.content, slotProps.content), slots.secondaryContent && /*#__PURE__*/createElement(slots.secondaryContent, slotProps.secondaryContent));
13
+ };
14
+ //# sourceMappingURL=renderMenuItemRadio.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createElement","getSlotsNext","renderMenuItemRadio_unstable","state","slots","slotProps","root","checkmark","icon","content","secondaryContent"],"sources":["../../../src/components/MenuItemRadio/renderMenuItemRadio.tsx"],"sourcesContent":["/** @jsxRuntime classic */\n/** @jsx createElement */\n\nimport { createElement } from '@fluentui/react-jsx-runtime';\nimport { getSlotsNext } from '@fluentui/react-utilities';\nimport type { MenuItemRadioState } from './MenuItemRadio.types';\nimport type { MenuItemSlots } from '../MenuItem/MenuItem.types';\n\n/**\n * Redefine the render function to add slots. Reuse the menuitemradio structure but add\n * slots to children.\n */\nexport const renderMenuItemRadio_unstable = (state: MenuItemRadioState) => {\n const { slots, slotProps } = getSlotsNext<MenuItemSlots>(state);\n\n return (\n <slots.root {...slotProps.root}>\n {slots.checkmark && <slots.checkmark {...slotProps.checkmark} />}\n {slots.icon && <slots.icon {...slotProps.icon} />}\n {slots.content && <slots.content {...slotProps.content} />}\n {slots.secondaryContent && <slots.secondaryContent {...slotProps.secondaryContent} />}\n </slots.root>\n );\n};\n"],"mappings":"AAAA,2BACA,yBAEA,SAASA,aAAa,QAAQ;AAC9B,SAASC,YAAY,QAAQ;AAI7B;;;;AAIA,OAAO,MAAMC,4BAAA,GAAgCC,KAAA,IAA8B;EACzE,MAAM;IAAEC,KAAA;IAAOC;EAAS,CAAE,GAAGJ,YAAA,CAA4BE,KAAA;EAEzD,oBACEH,aAfJ,CAeKI,KAAA,CAAME,IAAI,EAAKD,SAAA,CAAUC,IAAI,EAC3BF,KAAA,CAAMG,SAAS,iBAAIP,aAhB1B,CAgB2BI,KAAA,CAAMG,SAAS,EAAKF,SAAA,CAAUE,SAAS,GAC3DH,KAAA,CAAMI,IAAI,iBAAIR,aAjBrB,CAiBsBI,KAAA,CAAMI,IAAI,EAAKH,SAAA,CAAUG,IAAI,GAC5CJ,KAAA,CAAMK,OAAO,iBAAIT,aAlBxB,CAkByBI,KAAA,CAAMK,OAAO,EAAKJ,SAAA,CAAUI,OAAO,GACrDL,KAAA,CAAMM,gBAAgB,iBAAIV,aAnBjC,CAmBkCI,KAAA,CAAMM,gBAAgB,EAAKL,SAAA,CAAUK,gBAAgB;AAGvF"}
@@ -0,0 +1,42 @@
1
+ import * as React from 'react';
2
+ import { resolveShorthand } from '@fluentui/react-utilities';
3
+ import { Checkmark16Filled } from '@fluentui/react-icons';
4
+ import { useMenuListContext_unstable } from '../../contexts/menuListContext';
5
+ import { useMenuItem_unstable } from '../MenuItem/useMenuItem';
6
+ /**
7
+ * Given user props, returns state and render function for a MenuItemRadio.
8
+ */
9
+ export const useMenuItemRadio_unstable = (props, ref) => {
10
+ const {
11
+ name,
12
+ value
13
+ } = props;
14
+ const checked = useMenuListContext_unstable(context => {
15
+ var _context_checkedValues;
16
+ const checkedItems = ((_context_checkedValues = context.checkedValues) === null || _context_checkedValues === void 0 ? void 0 : _context_checkedValues[name]) || [];
17
+ return checkedItems.indexOf(value) !== -1;
18
+ });
19
+ const selectRadio = useMenuListContext_unstable(context => context.selectRadio);
20
+ return {
21
+ ...useMenuItem_unstable({
22
+ ...props,
23
+ role: 'menuitemradio',
24
+ 'aria-checked': checked,
25
+ checkmark: resolveShorthand(props.checkmark, {
26
+ defaultProps: {
27
+ children: /*#__PURE__*/React.createElement(Checkmark16Filled, null)
28
+ },
29
+ required: true
30
+ }),
31
+ onClick: e => {
32
+ var _props_onClick;
33
+ selectRadio === null || selectRadio === void 0 ? void 0 : selectRadio(e, name, value, checked);
34
+ (_props_onClick = props.onClick) === null || _props_onClick === void 0 ? void 0 : _props_onClick.call(props, e);
35
+ }
36
+ }, ref),
37
+ checked,
38
+ name,
39
+ value
40
+ };
41
+ };
42
+ //# sourceMappingURL=useMenuItemRadio.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","resolveShorthand","Checkmark16Filled","useMenuListContext_unstable","useMenuItem_unstable","useMenuItemRadio_unstable","props","ref","name","value","checked","context","_context_checkedValues","checkedItems","checkedValues","indexOf","selectRadio","role","checkmark","defaultProps","children","createElement","required","onClick","e","_props_onClick","call"],"sources":["../../../src/components/MenuItemRadio/useMenuItemRadio.tsx"],"sourcesContent":["import * as React from 'react';\nimport { resolveShorthand } from '@fluentui/react-utilities';\nimport { Checkmark16Filled } from '@fluentui/react-icons';\nimport { useMenuListContext_unstable } from '../../contexts/menuListContext';\nimport { useMenuItem_unstable } from '../MenuItem/useMenuItem';\nimport type { MenuItemRadioProps, MenuItemRadioState } from './MenuItemRadio.types';\nimport type { ARIAButtonElement, ARIAButtonElementIntersection } from '@fluentui/react-aria';\n\n/**\n * Given user props, returns state and render function for a MenuItemRadio.\n */\nexport const useMenuItemRadio_unstable = (\n props: MenuItemRadioProps,\n ref: React.Ref<ARIAButtonElement<'div'>>,\n): MenuItemRadioState => {\n const { name, value } = props;\n\n const checked = useMenuListContext_unstable(context => {\n const checkedItems = context.checkedValues?.[name] || [];\n return checkedItems.indexOf(value) !== -1;\n });\n\n const selectRadio = useMenuListContext_unstable(context => context.selectRadio);\n\n return {\n ...useMenuItem_unstable(\n {\n ...props,\n role: 'menuitemradio',\n 'aria-checked': checked,\n checkmark: resolveShorthand(props.checkmark, {\n defaultProps: { children: <Checkmark16Filled /> },\n required: true,\n }),\n onClick: (e: React.MouseEvent<ARIAButtonElementIntersection<'div'>>) => {\n selectRadio?.(e, name, value, checked);\n props.onClick?.(e);\n },\n },\n ref,\n ),\n checked,\n name,\n value,\n };\n};\n"],"mappings":"AAAA,YAAYA,KAAA,MAAW;AACvB,SAASC,gBAAgB,QAAQ;AACjC,SAASC,iBAAiB,QAAQ;AAClC,SAASC,2BAA2B,QAAQ;AAC5C,SAASC,oBAAoB,QAAQ;AAIrC;;;AAGA,OAAO,MAAMC,yBAAA,GAA4BA,CACvCC,KAAA,EACAC,GAAA,KACuB;EACvB,MAAM;IAAEC,IAAA;IAAMC;EAAK,CAAE,GAAGH,KAAA;EAExB,MAAMI,OAAA,GAAUP,2BAAA,CAA4BQ,OAAA,IAAW;QAChCC,sBAAA;IAArB,MAAMC,YAAA,GAAe,EAAAD,sBAAA,GAAAD,OAAA,CAAQG,aAAa,cAArBF,sBAAA,uBAAAA,sBAAuB,CAACJ,IAAA,CAAK,KAAI,EAAE;IACxD,OAAOK,YAAA,CAAaE,OAAO,CAACN,KAAA,MAAW,CAAC;EAC1C;EAEA,MAAMO,WAAA,GAAcb,2BAAA,CAA4BQ,OAAA,IAAWA,OAAA,CAAQK,WAAW;EAE9E,OAAO;IACL,GAAGZ,oBAAA,CACD;MACE,GAAGE,KAAK;MACRW,IAAA,EAAM;MACN,gBAAgBP,OAAA;MAChBQ,SAAA,EAAWjB,gBAAA,CAAiBK,KAAA,CAAMY,SAAS,EAAE;QAC3CC,YAAA,EAAc;UAAEC,QAAA,eAAUpB,KAAA,CAAAqB,aAAA,CAACnB,iBAAA;QAAqB;QAChDoB,QAAA,EAAU;MACZ;MACAC,OAAA,EAAUC,CAAA,IAA8D;YAEtEC,cAAA;QADAT,WAAA,aAAAA,WAAA,uBAAAA,WAAA,CAAcQ,CAAA,EAAGhB,IAAA,EAAMC,KAAA,EAAOC,OAAA;QAC9B,CAAAe,cAAA,GAAAnB,KAAA,CAAMiB,OAAO,cAAbE,cAAA,uBAAAA,cAAA,CAAAC,IAAA,CAAApB,KAAA,EAAgBkB,CAAA;MAClB;IACF,GACAjB,GAAA,CACD;IACDG,OAAA;IACAF,IAAA;IACAC;EACF;AACF"}
@@ -0,0 +1,28 @@
1
+ import { mergeClasses } from '@griffel/react';
2
+ import { useCheckmarkStyles_unstable } from '../../selectable/index';
3
+ import { useMenuItemStyles_unstable } from '../MenuItem/useMenuItemStyles.styles';
4
+ export const menuItemRadioClassNames = {
5
+ root: 'fui-MenuItemRadio',
6
+ icon: 'fui-MenuItemRadio__icon',
7
+ checkmark: 'fui-MenuItemRadio__checkmark',
8
+ content: 'fui-MenuItemRadio__content',
9
+ secondaryContent: 'fui-MenuItemRadio__secondaryContent'
10
+ };
11
+ export const useMenuItemRadioStyles_unstable = state => {
12
+ state.root.className = mergeClasses(menuItemRadioClassNames.root, state.root.className);
13
+ if (state.content) {
14
+ state.content.className = mergeClasses(menuItemRadioClassNames.content, state.content.className);
15
+ }
16
+ if (state.secondaryContent) {
17
+ state.secondaryContent.className = mergeClasses(menuItemRadioClassNames.secondaryContent, state.secondaryContent.className);
18
+ }
19
+ if (state.icon) {
20
+ state.icon.className = mergeClasses(menuItemRadioClassNames.icon, state.icon.className);
21
+ }
22
+ if (state.checkmark) {
23
+ state.checkmark.className = mergeClasses(menuItemRadioClassNames.checkmark, state.checkmark.className);
24
+ }
25
+ useMenuItemStyles_unstable(state);
26
+ useCheckmarkStyles_unstable(state);
27
+ };
28
+ //# sourceMappingURL=useMenuItemRadioStyles.styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["mergeClasses","useCheckmarkStyles_unstable","useMenuItemStyles_unstable","menuItemRadioClassNames","root","icon","checkmark","content","secondaryContent","useMenuItemRadioStyles_unstable","state","className"],"sources":["../../../src/components/MenuItemRadio/useMenuItemRadioStyles.styles.ts"],"sourcesContent":["import { mergeClasses } from '@griffel/react';\nimport { useCheckmarkStyles_unstable } from '../../selectable/index';\nimport { useMenuItemStyles_unstable } from '../MenuItem/useMenuItemStyles.styles';\nimport type { SlotClassNames } from '@fluentui/react-utilities';\nimport type { MenuItemSlots } from '../index';\nimport type { MenuItemRadioState } from './MenuItemRadio.types';\n\nexport const menuItemRadioClassNames: SlotClassNames<Omit<MenuItemSlots, 'submenuIndicator'>> = {\n root: 'fui-MenuItemRadio',\n icon: 'fui-MenuItemRadio__icon',\n checkmark: 'fui-MenuItemRadio__checkmark',\n content: 'fui-MenuItemRadio__content',\n secondaryContent: 'fui-MenuItemRadio__secondaryContent',\n};\n\nexport const useMenuItemRadioStyles_unstable = (state: MenuItemRadioState) => {\n state.root.className = mergeClasses(menuItemRadioClassNames.root, state.root.className);\n\n if (state.content) {\n state.content.className = mergeClasses(menuItemRadioClassNames.content, state.content.className);\n }\n\n if (state.secondaryContent) {\n state.secondaryContent.className = mergeClasses(\n menuItemRadioClassNames.secondaryContent,\n state.secondaryContent.className,\n );\n }\n\n if (state.icon) {\n state.icon.className = mergeClasses(menuItemRadioClassNames.icon, state.icon.className);\n }\n\n if (state.checkmark) {\n state.checkmark.className = mergeClasses(menuItemRadioClassNames.checkmark, state.checkmark.className);\n }\n\n useMenuItemStyles_unstable(state);\n useCheckmarkStyles_unstable(state);\n};\n"],"mappings":"AAAA,SAASA,YAAY,QAAQ;AAC7B,SAASC,2BAA2B,QAAQ;AAC5C,SAASC,0BAA0B,QAAQ;AAK3C,OAAO,MAAMC,uBAAA,GAAmF;EAC9FC,IAAA,EAAM;EACNC,IAAA,EAAM;EACNC,SAAA,EAAW;EACXC,OAAA,EAAS;EACTC,gBAAA,EAAkB;AACpB;AAEA,OAAO,MAAMC,+BAAA,GAAmCC,KAAA,IAA8B;EAC5EA,KAAA,CAAMN,IAAI,CAACO,SAAS,GAAGX,YAAA,CAAaG,uBAAA,CAAwBC,IAAI,EAAEM,KAAA,CAAMN,IAAI,CAACO,SAAS;EAEtF,IAAID,KAAA,CAAMH,OAAO,EAAE;IACjBG,KAAA,CAAMH,OAAO,CAACI,SAAS,GAAGX,YAAA,CAAaG,uBAAA,CAAwBI,OAAO,EAAEG,KAAA,CAAMH,OAAO,CAACI,SAAS;EACjG;EAEA,IAAID,KAAA,CAAMF,gBAAgB,EAAE;IAC1BE,KAAA,CAAMF,gBAAgB,CAACG,SAAS,GAAGX,YAAA,CACjCG,uBAAA,CAAwBK,gBAAgB,EACxCE,KAAA,CAAMF,gBAAgB,CAACG,SAAS;EAEpC;EAEA,IAAID,KAAA,CAAML,IAAI,EAAE;IACdK,KAAA,CAAML,IAAI,CAACM,SAAS,GAAGX,YAAA,CAAaG,uBAAA,CAAwBE,IAAI,EAAEK,KAAA,CAAML,IAAI,CAACM,SAAS;EACxF;EAEA,IAAID,KAAA,CAAMJ,SAAS,EAAE;IACnBI,KAAA,CAAMJ,SAAS,CAACK,SAAS,GAAGX,YAAA,CAAaG,uBAAA,CAAwBG,SAAS,EAAEI,KAAA,CAAMJ,SAAS,CAACK,SAAS;EACvG;EAEAT,0BAAA,CAA2BQ,KAAA;EAC3BT,2BAAA,CAA4BS,KAAA;AAC9B"}
@@ -0,0 +1,18 @@
1
+ import * as React from 'react';
2
+ import { useMenuList_unstable } from './useMenuList';
3
+ import { renderMenuList_unstable } from './renderMenuList';
4
+ import { useMenuListContextValues_unstable } from './useMenuListContextValues';
5
+ import { useMenuListStyles_unstable } from './useMenuListStyles.styles';
6
+ import { useCustomStyleHook_unstable } from '@fluentui/react-shared-contexts';
7
+ /**
8
+ * Define a styled MenuList, using the `useMenuList_unstable` hook.
9
+ */
10
+ export const MenuList = /*#__PURE__*/React.forwardRef((props, ref) => {
11
+ const state = useMenuList_unstable(props, ref);
12
+ const contextValues = useMenuListContextValues_unstable(state);
13
+ useMenuListStyles_unstable(state);
14
+ useCustomStyleHook_unstable('useMenuListStyles_unstable')(state);
15
+ return renderMenuList_unstable(state, contextValues);
16
+ });
17
+ MenuList.displayName = 'MenuList';
18
+ //# sourceMappingURL=MenuList.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","useMenuList_unstable","renderMenuList_unstable","useMenuListContextValues_unstable","useMenuListStyles_unstable","useCustomStyleHook_unstable","MenuList","forwardRef","props","ref","state","contextValues","displayName"],"sources":["../../../src/components/MenuList/MenuList.tsx"],"sourcesContent":["import * as React from 'react';\nimport { useMenuList_unstable } from './useMenuList';\nimport { renderMenuList_unstable } from './renderMenuList';\nimport { useMenuListContextValues_unstable } from './useMenuListContextValues';\nimport { useMenuListStyles_unstable } from './useMenuListStyles.styles';\nimport type { MenuListProps } from './MenuList.types';\nimport type { ForwardRefComponent } from '@fluentui/react-utilities';\nimport { useCustomStyleHook_unstable } from '@fluentui/react-shared-contexts';\n\n/**\n * Define a styled MenuList, using the `useMenuList_unstable` hook.\n */\nexport const MenuList: ForwardRefComponent<MenuListProps> = React.forwardRef((props, ref) => {\n const state = useMenuList_unstable(props, ref);\n const contextValues = useMenuListContextValues_unstable(state);\n\n useMenuListStyles_unstable(state);\n\n useCustomStyleHook_unstable('useMenuListStyles_unstable')(state);\n\n return renderMenuList_unstable(state, contextValues);\n});\n\nMenuList.displayName = 'MenuList';\n"],"mappings":"AAAA,YAAYA,KAAA,MAAW;AACvB,SAASC,oBAAoB,QAAQ;AACrC,SAASC,uBAAuB,QAAQ;AACxC,SAASC,iCAAiC,QAAQ;AAClD,SAASC,0BAA0B,QAAQ;AAG3C,SAASC,2BAA2B,QAAQ;AAE5C;;;AAGA,OAAO,MAAMC,QAAA,gBAA+CN,KAAA,CAAMO,UAAU,CAAC,CAACC,KAAA,EAAOC,GAAA,KAAQ;EAC3F,MAAMC,KAAA,GAAQT,oBAAA,CAAqBO,KAAA,EAAOC,GAAA;EAC1C,MAAME,aAAA,GAAgBR,iCAAA,CAAkCO,KAAA;EAExDN,0BAAA,CAA2BM,KAAA;EAE3BL,2BAAA,CAA4B,8BAA8BK,KAAA;EAE1D,OAAOR,uBAAA,CAAwBQ,KAAA,EAAOC,aAAA;AACxC;AAEAL,QAAA,CAASM,WAAW,GAAG"}
@@ -0,0 +1,2 @@
1
+ import * as React from 'react';
2
+ //# sourceMappingURL=MenuList.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React"],"sources":["../../../src/components/MenuList/MenuList.types.ts"],"sourcesContent":["import * as React from 'react';\nimport type { ComponentProps, ComponentState, Slot } from '@fluentui/react-utilities';\nimport type { MenuListContextValue } from '../../contexts/menuListContext';\nimport type { SelectableHandler } from '../../selectable/index';\n\nexport type MenuCheckedValueChangeEvent = React.MouseEvent | React.KeyboardEvent;\n\nexport type MenuCheckedValueChangeData = {\n /** The items for this value that are checked */\n checkedItems: string[];\n /** The name of the value */\n name: string;\n};\n\nexport type MenuListSlots = {\n root: Slot<'div'>;\n};\n\nexport type MenuListProps = ComponentProps<MenuListSlots> & {\n /**\n * Map of all checked values\n */\n checkedValues?: Record<string, string[]>;\n\n /**\n * Default values to be checked on mount\n */\n defaultCheckedValues?: Record<string, string[]>;\n\n /**\n * States that menu items can contain selectable items and reserve slots for item alignment\n */\n hasCheckmarks?: boolean;\n\n /**\n * States that menu items can contain icons and reserve slots for item alignment\n */\n hasIcons?: boolean;\n\n /**\n * Callback when checked items change for value with a name\n *\n * @param event - React's original SyntheticEvent\n * @param data - A data object with relevant information\n */\n onCheckedValueChange?: (e: MenuCheckedValueChangeEvent, data: MenuCheckedValueChangeData) => void;\n};\n\nexport type MenuListState = ComponentState<MenuListSlots> &\n Required<Pick<MenuListProps, 'checkedValues' | 'hasCheckmarks' | 'hasIcons'>> &\n Pick<MenuListProps, 'defaultCheckedValues' | 'onCheckedValueChange'> & {\n /**\n * Selects a radio item, will de-select the currently selected ratio item\n */\n selectRadio: SelectableHandler;\n\n /**\n * Callback to set focus on the next menu item by first character\n */\n setFocusByFirstCharacter: NonNullable<MenuListContextValue['setFocusByFirstCharacter']>;\n\n /*\n * Toggles the state of a checkbox item\n */\n toggleCheckbox: SelectableHandler;\n };\n\nexport type MenuListContextValues = {\n menuList: MenuListContextValue;\n};\n\n/**\n * @deprecated this type is not being used internally anymore\n */\nexport type UninitializedMenuListState = Omit<\n MenuListState,\n 'checkedValues' | 'selectRadio' | 'setFocusByFirstCharacter' | 'toggleCheckbox'\n> &\n Partial<Pick<MenuListState, 'checkedValues'>>;\n"],"mappings":"AAAA,YAAYA,KAAA,MAAW"}
@@ -0,0 +1,7 @@
1
+ export * from './MenuList';
2
+ export * from './MenuList.types';
3
+ export * from './renderMenuList';
4
+ export * from './useMenuList';
5
+ export * from './useMenuListStyles.styles';
6
+ export * from './useMenuListContextValues';
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sources":["../../../src/components/MenuList/index.ts"],"sourcesContent":["export * from './MenuList';\nexport * from './MenuList.types';\nexport * from './renderMenuList';\nexport * from './useMenuList';\nexport * from './useMenuListStyles.styles';\nexport * from './useMenuListContextValues';\n"],"mappings":"AAAA,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc"}
@@ -0,0 +1,16 @@
1
+ /** @jsxRuntime classic */ /** @jsx createElement */import { createElement } from '@fluentui/react-jsx-runtime';
2
+ import { getSlotsNext } from '@fluentui/react-utilities';
3
+ import { MenuListProvider } from '../../contexts/menuListContext';
4
+ /**
5
+ * Function that renders the final JSX of the component
6
+ */
7
+ export const renderMenuList_unstable = (state, contextValues) => {
8
+ const {
9
+ slots,
10
+ slotProps
11
+ } = getSlotsNext(state);
12
+ return /*#__PURE__*/createElement(MenuListProvider, {
13
+ value: contextValues.menuList
14
+ }, /*#__PURE__*/createElement(slots.root, slotProps.root));
15
+ };
16
+ //# sourceMappingURL=renderMenuList.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createElement","getSlotsNext","MenuListProvider","renderMenuList_unstable","state","contextValues","slots","slotProps","value","menuList","root"],"sources":["../../../src/components/MenuList/renderMenuList.tsx"],"sourcesContent":["/** @jsxRuntime classic */\n/** @jsx createElement */\n\nimport { createElement } from '@fluentui/react-jsx-runtime';\nimport { getSlotsNext } from '@fluentui/react-utilities';\nimport { MenuListContextValues, MenuListSlots, MenuListState } from './MenuList.types';\nimport { MenuListProvider } from '../../contexts/menuListContext';\n\n/**\n * Function that renders the final JSX of the component\n */\nexport const renderMenuList_unstable = (state: MenuListState, contextValues: MenuListContextValues) => {\n const { slots, slotProps } = getSlotsNext<MenuListSlots>(state);\n\n return (\n <MenuListProvider value={contextValues.menuList}>\n <slots.root {...slotProps.root} />\n </MenuListProvider>\n );\n};\n"],"mappings":"AAAA,2BACA,yBAEA,SAASA,aAAa,QAAQ;AAC9B,SAASC,YAAY,QAAQ;AAE7B,SAASC,gBAAgB,QAAQ;AAEjC;;;AAGA,OAAO,MAAMC,uBAAA,GAA0BA,CAACC,KAAA,EAAsBC,aAAA,KAAyC;EACrG,MAAM;IAAEC,KAAA;IAAOC;EAAS,CAAE,GAAGN,YAAA,CAA4BG,KAAA;EAEzD,oBACEJ,aAdJ,CAcKE,gBAAA;IAAiBM,KAAA,EAAOH,aAAA,CAAcI;kBACrCT,aAfN,CAeOM,KAAA,CAAMI,IAAI,EAAKH,SAAA,CAAUG,IAAI;AAGpC"}