@fluentui/react-menu 0.0.0-nightly-20220429-0418.1 → 0.0.0-nightly-20220504-0420.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 (186) hide show
  1. package/CHANGELOG.json +27 -21
  2. package/CHANGELOG.md +14 -13
  3. package/{lib → dist}/tsdoc-metadata.json +0 -0
  4. package/package.json +11 -11
  5. package/lib/Menu.d.ts +0 -1
  6. package/lib/MenuDivider.d.ts +0 -1
  7. package/lib/MenuGroup.d.ts +0 -1
  8. package/lib/MenuGroupHeader.d.ts +0 -1
  9. package/lib/MenuItem.d.ts +0 -1
  10. package/lib/MenuItemCheckbox.d.ts +0 -1
  11. package/lib/MenuItemRadio.d.ts +0 -1
  12. package/lib/MenuList.d.ts +0 -1
  13. package/lib/MenuPopover.d.ts +0 -1
  14. package/lib/MenuSplitGroup.d.ts +0 -1
  15. package/lib/MenuTrigger.d.ts +0 -1
  16. package/lib/components/Menu/Menu.d.ts +0 -6
  17. package/lib/components/Menu/Menu.types.d.ts +0 -113
  18. package/lib/components/Menu/index.d.ts +0 -5
  19. package/lib/components/Menu/renderMenu.d.ts +0 -5
  20. package/lib/components/Menu/useMenu.d.ts +0 -10
  21. package/lib/components/Menu/useMenuContextValues.d.ts +0 -2
  22. package/lib/components/MenuDivider/MenuDivider.d.ts +0 -6
  23. package/lib/components/MenuDivider/MenuDivider.types.d.ts +0 -6
  24. package/lib/components/MenuDivider/index.d.ts +0 -5
  25. package/lib/components/MenuDivider/renderMenuDivider.d.ts +0 -6
  26. package/lib/components/MenuDivider/useMenuDivider.d.ts +0 -6
  27. package/lib/components/MenuDivider/useMenuDividerStyles.d.ts +0 -8
  28. package/lib/components/MenuGroup/MenuGroup.d.ts +0 -6
  29. package/lib/components/MenuGroup/MenuGroup.types.d.ts +0 -15
  30. package/lib/components/MenuGroup/index.d.ts +0 -6
  31. package/lib/components/MenuGroup/renderMenuGroup.d.ts +0 -6
  32. package/lib/components/MenuGroup/useMenuGroup.d.ts +0 -6
  33. package/lib/components/MenuGroup/useMenuGroupContextValues.d.ts +0 -2
  34. package/lib/components/MenuGroup/useMenuGroupStyles.d.ts +0 -8
  35. package/lib/components/MenuGroupHeader/MenuGroupHeader.d.ts +0 -6
  36. package/lib/components/MenuGroupHeader/MenuGroupHeader.types.d.ts +0 -6
  37. package/lib/components/MenuGroupHeader/index.d.ts +0 -5
  38. package/lib/components/MenuGroupHeader/renderMenuGroupHeader.d.ts +0 -6
  39. package/lib/components/MenuGroupHeader/useMenuGroupHeader.d.ts +0 -6
  40. package/lib/components/MenuGroupHeader/useMenuGroupHeaderStyles.d.ts +0 -8
  41. package/lib/components/MenuItem/MenuItem.d.ts +0 -6
  42. package/lib/components/MenuItem/MenuItem.types.d.ts +0 -43
  43. package/lib/components/MenuItem/index.d.ts +0 -5
  44. package/lib/components/MenuItem/renderMenuItem.d.ts +0 -5
  45. package/lib/components/MenuItem/useCharacterSearch.d.ts +0 -3
  46. package/lib/components/MenuItem/useMenuItem.d.ts +0 -6
  47. package/lib/components/MenuItem/useMenuItemStyles.d.ts +0 -9
  48. package/lib/components/MenuItemCheckbox/MenuItemCheckbox.d.ts +0 -6
  49. package/lib/components/MenuItemCheckbox/MenuItemCheckbox.types.d.ts +0 -4
  50. package/lib/components/MenuItemCheckbox/index.d.ts +0 -5
  51. package/lib/components/MenuItemCheckbox/renderMenuItemCheckbox.d.ts +0 -3
  52. package/lib/components/MenuItemCheckbox/useMenuItemCheckbox.d.ts +0 -4
  53. package/lib/components/MenuItemCheckbox/useMenuItemCheckboxStyles.d.ts +0 -9
  54. package/lib/components/MenuItemRadio/MenuItemRadio.d.ts +0 -6
  55. package/lib/components/MenuItemRadio/MenuItemRadio.types.d.ts +0 -4
  56. package/lib/components/MenuItemRadio/index.d.ts +0 -5
  57. package/lib/components/MenuItemRadio/renderMenuItemRadio.d.ts +0 -6
  58. package/lib/components/MenuItemRadio/useMenuItemRadio.d.ts +0 -6
  59. package/lib/components/MenuItemRadio/useMenuItemRadioStyles.d.ts +0 -9
  60. package/lib/components/MenuList/MenuList.d.ts +0 -6
  61. package/lib/components/MenuList/MenuList.types.d.ts +0 -55
  62. package/lib/components/MenuList/index.d.ts +0 -6
  63. package/lib/components/MenuList/renderMenuList.d.ts +0 -5
  64. package/lib/components/MenuList/useMenuList.d.ts +0 -6
  65. package/lib/components/MenuList/useMenuListContextValues.d.ts +0 -2
  66. package/lib/components/MenuList/useMenuListStyles.d.ts +0 -11
  67. package/lib/components/MenuPopover/MenuPopover.d.ts +0 -6
  68. package/lib/components/MenuPopover/MenuPopover.types.d.ts +0 -18
  69. package/lib/components/MenuPopover/index.d.ts +0 -5
  70. package/lib/components/MenuPopover/renderMenuPopover.d.ts +0 -5
  71. package/lib/components/MenuPopover/useMenuPopover.d.ts +0 -12
  72. package/lib/components/MenuPopover/useMenuPopoverStyles.d.ts +0 -11
  73. package/lib/components/MenuSplitGroup/MenuSplitGroup.d.ts +0 -6
  74. package/lib/components/MenuSplitGroup/MenuSplitGroup.types.d.ts +0 -14
  75. package/lib/components/MenuSplitGroup/index.d.ts +0 -5
  76. package/lib/components/MenuSplitGroup/renderMenuSplitGroup.d.ts +0 -5
  77. package/lib/components/MenuSplitGroup/useMenuSplitGroup.d.ts +0 -12
  78. package/lib/components/MenuSplitGroup/useMenuSplitGroupStyles.d.ts +0 -11
  79. package/lib/components/MenuTrigger/MenuTrigger.d.ts +0 -8
  80. package/lib/components/MenuTrigger/MenuTrigger.types.d.ts +0 -20
  81. package/lib/components/MenuTrigger/index.d.ts +0 -4
  82. package/lib/components/MenuTrigger/renderMenuTrigger.d.ts +0 -7
  83. package/lib/components/MenuTrigger/useMenuTrigger.d.ts +0 -8
  84. package/lib/components/index.d.ts +0 -2
  85. package/lib/contexts/menuContext.d.ts +0 -16
  86. package/lib/contexts/menuGroupContext.d.ts +0 -13
  87. package/lib/contexts/menuListContext.d.ts +0 -15
  88. package/lib/contexts/menuTriggerContext.d.ts +0 -3
  89. package/lib/index.d.ts +0 -16
  90. package/lib/selectable/index.d.ts +0 -2
  91. package/lib/selectable/types.d.ts +0 -34
  92. package/lib/selectable/useCheckmarkStyles.d.ts +0 -8
  93. package/lib/utils/index.d.ts +0 -1
  94. package/lib/utils/useIsSubmenu.d.ts +0 -9
  95. package/lib/utils/useOnMenuEnter.d.ts +0 -23
  96. package/lib-commonjs/Menu.d.ts +0 -1
  97. package/lib-commonjs/MenuDivider.d.ts +0 -1
  98. package/lib-commonjs/MenuGroup.d.ts +0 -1
  99. package/lib-commonjs/MenuGroupHeader.d.ts +0 -1
  100. package/lib-commonjs/MenuItem.d.ts +0 -1
  101. package/lib-commonjs/MenuItemCheckbox.d.ts +0 -1
  102. package/lib-commonjs/MenuItemRadio.d.ts +0 -1
  103. package/lib-commonjs/MenuList.d.ts +0 -1
  104. package/lib-commonjs/MenuPopover.d.ts +0 -1
  105. package/lib-commonjs/MenuSplitGroup.d.ts +0 -1
  106. package/lib-commonjs/MenuTrigger.d.ts +0 -1
  107. package/lib-commonjs/components/Menu/Menu.d.ts +0 -6
  108. package/lib-commonjs/components/Menu/Menu.types.d.ts +0 -113
  109. package/lib-commonjs/components/Menu/index.d.ts +0 -5
  110. package/lib-commonjs/components/Menu/renderMenu.d.ts +0 -5
  111. package/lib-commonjs/components/Menu/useMenu.d.ts +0 -10
  112. package/lib-commonjs/components/Menu/useMenuContextValues.d.ts +0 -2
  113. package/lib-commonjs/components/MenuDivider/MenuDivider.d.ts +0 -6
  114. package/lib-commonjs/components/MenuDivider/MenuDivider.types.d.ts +0 -6
  115. package/lib-commonjs/components/MenuDivider/index.d.ts +0 -5
  116. package/lib-commonjs/components/MenuDivider/renderMenuDivider.d.ts +0 -6
  117. package/lib-commonjs/components/MenuDivider/useMenuDivider.d.ts +0 -6
  118. package/lib-commonjs/components/MenuDivider/useMenuDividerStyles.d.ts +0 -8
  119. package/lib-commonjs/components/MenuGroup/MenuGroup.d.ts +0 -6
  120. package/lib-commonjs/components/MenuGroup/MenuGroup.types.d.ts +0 -15
  121. package/lib-commonjs/components/MenuGroup/index.d.ts +0 -6
  122. package/lib-commonjs/components/MenuGroup/renderMenuGroup.d.ts +0 -6
  123. package/lib-commonjs/components/MenuGroup/useMenuGroup.d.ts +0 -6
  124. package/lib-commonjs/components/MenuGroup/useMenuGroupContextValues.d.ts +0 -2
  125. package/lib-commonjs/components/MenuGroup/useMenuGroupStyles.d.ts +0 -8
  126. package/lib-commonjs/components/MenuGroupHeader/MenuGroupHeader.d.ts +0 -6
  127. package/lib-commonjs/components/MenuGroupHeader/MenuGroupHeader.types.d.ts +0 -6
  128. package/lib-commonjs/components/MenuGroupHeader/index.d.ts +0 -5
  129. package/lib-commonjs/components/MenuGroupHeader/renderMenuGroupHeader.d.ts +0 -6
  130. package/lib-commonjs/components/MenuGroupHeader/useMenuGroupHeader.d.ts +0 -6
  131. package/lib-commonjs/components/MenuGroupHeader/useMenuGroupHeaderStyles.d.ts +0 -8
  132. package/lib-commonjs/components/MenuItem/MenuItem.d.ts +0 -6
  133. package/lib-commonjs/components/MenuItem/MenuItem.types.d.ts +0 -43
  134. package/lib-commonjs/components/MenuItem/index.d.ts +0 -5
  135. package/lib-commonjs/components/MenuItem/renderMenuItem.d.ts +0 -5
  136. package/lib-commonjs/components/MenuItem/useCharacterSearch.d.ts +0 -3
  137. package/lib-commonjs/components/MenuItem/useMenuItem.d.ts +0 -6
  138. package/lib-commonjs/components/MenuItem/useMenuItemStyles.d.ts +0 -9
  139. package/lib-commonjs/components/MenuItemCheckbox/MenuItemCheckbox.d.ts +0 -6
  140. package/lib-commonjs/components/MenuItemCheckbox/MenuItemCheckbox.types.d.ts +0 -4
  141. package/lib-commonjs/components/MenuItemCheckbox/index.d.ts +0 -5
  142. package/lib-commonjs/components/MenuItemCheckbox/renderMenuItemCheckbox.d.ts +0 -3
  143. package/lib-commonjs/components/MenuItemCheckbox/useMenuItemCheckbox.d.ts +0 -4
  144. package/lib-commonjs/components/MenuItemCheckbox/useMenuItemCheckboxStyles.d.ts +0 -9
  145. package/lib-commonjs/components/MenuItemRadio/MenuItemRadio.d.ts +0 -6
  146. package/lib-commonjs/components/MenuItemRadio/MenuItemRadio.types.d.ts +0 -4
  147. package/lib-commonjs/components/MenuItemRadio/index.d.ts +0 -5
  148. package/lib-commonjs/components/MenuItemRadio/renderMenuItemRadio.d.ts +0 -6
  149. package/lib-commonjs/components/MenuItemRadio/useMenuItemRadio.d.ts +0 -6
  150. package/lib-commonjs/components/MenuItemRadio/useMenuItemRadioStyles.d.ts +0 -9
  151. package/lib-commonjs/components/MenuList/MenuList.d.ts +0 -6
  152. package/lib-commonjs/components/MenuList/MenuList.types.d.ts +0 -55
  153. package/lib-commonjs/components/MenuList/index.d.ts +0 -6
  154. package/lib-commonjs/components/MenuList/renderMenuList.d.ts +0 -5
  155. package/lib-commonjs/components/MenuList/useMenuList.d.ts +0 -6
  156. package/lib-commonjs/components/MenuList/useMenuListContextValues.d.ts +0 -2
  157. package/lib-commonjs/components/MenuList/useMenuListStyles.d.ts +0 -11
  158. package/lib-commonjs/components/MenuPopover/MenuPopover.d.ts +0 -6
  159. package/lib-commonjs/components/MenuPopover/MenuPopover.types.d.ts +0 -18
  160. package/lib-commonjs/components/MenuPopover/index.d.ts +0 -5
  161. package/lib-commonjs/components/MenuPopover/renderMenuPopover.d.ts +0 -5
  162. package/lib-commonjs/components/MenuPopover/useMenuPopover.d.ts +0 -12
  163. package/lib-commonjs/components/MenuPopover/useMenuPopoverStyles.d.ts +0 -11
  164. package/lib-commonjs/components/MenuSplitGroup/MenuSplitGroup.d.ts +0 -6
  165. package/lib-commonjs/components/MenuSplitGroup/MenuSplitGroup.types.d.ts +0 -14
  166. package/lib-commonjs/components/MenuSplitGroup/index.d.ts +0 -5
  167. package/lib-commonjs/components/MenuSplitGroup/renderMenuSplitGroup.d.ts +0 -5
  168. package/lib-commonjs/components/MenuSplitGroup/useMenuSplitGroup.d.ts +0 -12
  169. package/lib-commonjs/components/MenuSplitGroup/useMenuSplitGroupStyles.d.ts +0 -11
  170. package/lib-commonjs/components/MenuTrigger/MenuTrigger.d.ts +0 -8
  171. package/lib-commonjs/components/MenuTrigger/MenuTrigger.types.d.ts +0 -20
  172. package/lib-commonjs/components/MenuTrigger/index.d.ts +0 -4
  173. package/lib-commonjs/components/MenuTrigger/renderMenuTrigger.d.ts +0 -7
  174. package/lib-commonjs/components/MenuTrigger/useMenuTrigger.d.ts +0 -8
  175. package/lib-commonjs/components/index.d.ts +0 -2
  176. package/lib-commonjs/contexts/menuContext.d.ts +0 -16
  177. package/lib-commonjs/contexts/menuGroupContext.d.ts +0 -13
  178. package/lib-commonjs/contexts/menuListContext.d.ts +0 -15
  179. package/lib-commonjs/contexts/menuTriggerContext.d.ts +0 -3
  180. package/lib-commonjs/index.d.ts +0 -16
  181. package/lib-commonjs/selectable/index.d.ts +0 -2
  182. package/lib-commonjs/selectable/types.d.ts +0 -34
  183. package/lib-commonjs/selectable/useCheckmarkStyles.d.ts +0 -8
  184. package/lib-commonjs/utils/index.d.ts +0 -1
  185. package/lib-commonjs/utils/useIsSubmenu.d.ts +0 -9
  186. package/lib-commonjs/utils/useOnMenuEnter.d.ts +0 -23
@@ -1,9 +0,0 @@
1
- import type { MenuItemSlots, MenuItemState } from './MenuItem.types';
2
- import type { SlotClassNames } from '@fluentui/react-utilities';
3
- /**
4
- * @deprecated Use `menuItemClassNames.root` instead.
5
- */
6
- export declare const menuItemClassName = "fui-MenuItem";
7
- export declare const menuItemClassNames: SlotClassNames<MenuItemSlots>;
8
- /** Applies style classnames to slots */
9
- export declare const useMenuItemStyles_unstable: (state: MenuItemState) => void;
@@ -1,6 +0,0 @@
1
- import type { MenuItemCheckboxProps } from './MenuItemCheckbox.types';
2
- import type { ForwardRefComponent } from '@fluentui/react-utilities';
3
- /**
4
- * Define a styled MenuItemCheckbox, using the `useMenuItemCheckbox_unstable` hook.
5
- */
6
- export declare const MenuItemCheckbox: ForwardRefComponent<MenuItemCheckboxProps>;
@@ -1,4 +0,0 @@
1
- import type { MenuItemSelectableProps, MenuItemSelectableState } from '../../selectable/index';
2
- import type { MenuItemProps, MenuItemState } from '../MenuItem/MenuItem.types';
3
- export declare type MenuItemCheckboxProps = MenuItemProps & MenuItemSelectableProps;
4
- export declare type MenuItemCheckboxState = MenuItemState & MenuItemSelectableState;
@@ -1,5 +0,0 @@
1
- export * from './MenuItemCheckbox.types';
2
- export * from './MenuItemCheckbox';
3
- export * from './renderMenuItemCheckbox';
4
- export * from './useMenuItemCheckbox';
5
- export * from './useMenuItemCheckboxStyles';
@@ -1,3 +0,0 @@
1
- import type { MenuItemCheckboxState } from './MenuItemCheckbox.types';
2
- /** Function that renders the final JSX of the component */
3
- export declare const renderMenuItemCheckbox_unstable: (state: MenuItemCheckboxState) => JSX.Element;
@@ -1,4 +0,0 @@
1
- import * as React from 'react';
2
- import type { MenuItemCheckboxProps, MenuItemCheckboxState } from './MenuItemCheckbox.types';
3
- /** Returns the props and state required to render the component */
4
- export declare const useMenuItemCheckbox_unstable: (props: MenuItemCheckboxProps, ref: React.Ref<HTMLElement>) => MenuItemCheckboxState;
@@ -1,9 +0,0 @@
1
- import type { SlotClassNames } from '@fluentui/react-utilities';
2
- import { MenuItemSlots } from '../index';
3
- import type { MenuItemCheckboxState } from './MenuItemCheckbox.types';
4
- /**
5
- * @deprecated Use `menuItemCheckboxClassNames.root` instead.
6
- */
7
- export declare const menuItemCheckboxClassName = "fui-MenuItemCheckbox";
8
- export declare const menuItemCheckboxClassNames: SlotClassNames<Omit<MenuItemSlots, 'submenuIndicator'>>;
9
- export declare const useMenuItemCheckboxStyles_unstable: (state: MenuItemCheckboxState) => void;
@@ -1,6 +0,0 @@
1
- import type { MenuItemRadioProps } from './MenuItemRadio.types';
2
- import type { ForwardRefComponent } from '@fluentui/react-utilities';
3
- /**
4
- * Define a styled MenuItemRadio, using the `useMenuItemRadio_unstable` hook.
5
- */
6
- export declare const MenuItemRadio: ForwardRefComponent<MenuItemRadioProps>;
@@ -1,4 +0,0 @@
1
- import type { MenuItemSelectableProps, MenuItemSelectableState } from '../../selectable/index';
2
- import type { MenuItemProps, MenuItemState } from '../MenuItem/MenuItem.types';
3
- export declare type MenuItemRadioProps = MenuItemProps & MenuItemSelectableProps;
4
- export declare type MenuItemRadioState = MenuItemState & MenuItemSelectableState;
@@ -1,5 +0,0 @@
1
- export * from './MenuItemRadio.types';
2
- export * from './MenuItemRadio';
3
- export * from './renderMenuItemRadio';
4
- export * from './useMenuItemRadio';
5
- export * from './useMenuItemRadioStyles';
@@ -1,6 +0,0 @@
1
- import type { MenuItemRadioState } from './MenuItemRadio.types';
2
- /**
3
- * Redefine the render function to add slots. Reuse the menuitemradio structure but add
4
- * slots to children.
5
- */
6
- export declare const renderMenuItemRadio_unstable: (state: MenuItemRadioState) => JSX.Element;
@@ -1,6 +0,0 @@
1
- import * as React from 'react';
2
- import type { MenuItemRadioProps, MenuItemRadioState } from './MenuItemRadio.types';
3
- /**
4
- * Given user props, returns state and render function for a MenuItemRadio.
5
- */
6
- export declare const useMenuItemRadio_unstable: (props: MenuItemRadioProps, ref: React.Ref<HTMLElement>) => MenuItemRadioState;
@@ -1,9 +0,0 @@
1
- import type { SlotClassNames } from '@fluentui/react-utilities';
2
- import { MenuItemSlots } from '../index';
3
- import type { MenuItemRadioState } from './MenuItemRadio.types';
4
- /**
5
- * @deprecated Use `menuItemRadioClassNames.root` instead.
6
- */
7
- export declare const menuItemRadioClassName = "fui-MenuItemRadio";
8
- export declare const menuItemRadioClassNames: SlotClassNames<Omit<MenuItemSlots, 'submenuIndicator'>>;
9
- export declare const useMenuItemRadioStyles_unstable: (state: MenuItemRadioState) => void;
@@ -1,6 +0,0 @@
1
- import type { MenuListProps } from './MenuList.types';
2
- import type { ForwardRefComponent } from '@fluentui/react-utilities';
3
- /**
4
- * Define a styled MenuList, using the `useMenuList_unstable` hook.
5
- */
6
- export declare const MenuList: ForwardRefComponent<MenuListProps>;
@@ -1,55 +0,0 @@
1
- import * as React from 'react';
2
- import type { ComponentProps, ComponentState, Slot } from '@fluentui/react-utilities';
3
- import type { MenuListContextValue } from '../../contexts/menuListContext';
4
- import type { SelectableHandler } from '../../selectable/index';
5
- export declare type MenuCheckedValueChangeEvent = React.MouseEvent | React.KeyboardEvent;
6
- export declare type MenuCheckedValueChangeData = {
7
- /** The name of the value */
8
- name: string;
9
- /** The items for this value that are checked */
10
- checkedItems: string[];
11
- };
12
- export declare type MenuListCommons = {
13
- /**
14
- * Callback when checked items change for value with a name
15
- *
16
- * @param event - React's original SyntheticEvent
17
- * @param data - A data object with relevant information
18
- */
19
- onCheckedValueChange?: (e: MenuCheckedValueChangeEvent, data: MenuCheckedValueChangeData) => void;
20
- /**
21
- * Map of all checked values
22
- */
23
- checkedValues: Record<string, string[]>;
24
- /**
25
- * Default values to be checked on mount
26
- */
27
- defaultCheckedValues?: Record<string, string[]>;
28
- /**
29
- * States that menu items can contain icons and reserve slots for item alignment
30
- */
31
- hasIcons?: boolean;
32
- /**
33
- * States that menu items can contain selectable items and reserve slots for item alignment
34
- */
35
- hasCheckmarks?: boolean;
36
- };
37
- export declare type MenuListSlots = {
38
- root: Slot<'div'>;
39
- };
40
- export declare type MenuListProps = ComponentProps<MenuListSlots> & Partial<MenuListCommons>;
41
- export declare type MenuListState = ComponentState<MenuListSlots> & MenuListCommons & {
42
- /**
43
- * Callback to set focus on the next menu item by first character
44
- */
45
- setFocusByFirstCharacter: NonNullable<MenuListContextValue['setFocusByFirstCharacter']>;
46
- toggleCheckbox: SelectableHandler;
47
- /**
48
- * Selects a radio item, will de-select the currently selected ratio item
49
- */
50
- selectRadio: SelectableHandler;
51
- };
52
- export declare type MenuListContextValues = {
53
- menuList: MenuListContextValue;
54
- };
55
- export declare type UninitializedMenuListState = Omit<MenuListState, 'setFocusByFirstCharacter' | 'toggleCheckbox' | 'selectRadio' | 'checkedValues'> & Partial<Pick<MenuListState, 'checkedValues'>>;
@@ -1,6 +0,0 @@
1
- export * from './MenuList';
2
- export type { MenuCheckedValueChangeData, MenuCheckedValueChangeEvent, MenuListContextValues, MenuListProps, MenuListSlots, MenuListState, UninitializedMenuListState, } from './MenuList.types';
3
- export * from './renderMenuList';
4
- export * from './useMenuList';
5
- export * from './useMenuListStyles';
6
- export * from './useMenuListContextValues';
@@ -1,5 +0,0 @@
1
- import { MenuListContextValues, MenuListState } from './MenuList.types';
2
- /**
3
- * Function that renders the final JSX of the component
4
- */
5
- export declare const renderMenuList_unstable: (state: MenuListState, contextValues: MenuListContextValues) => JSX.Element;
@@ -1,6 +0,0 @@
1
- import * as React from 'react';
2
- import type { MenuListProps, MenuListState } from './MenuList.types';
3
- /**
4
- * Returns the props and state required to render the component
5
- */
6
- export declare const useMenuList_unstable: (props: MenuListProps, ref: React.Ref<HTMLElement>) => MenuListState;
@@ -1,2 +0,0 @@
1
- import type { MenuListContextValues, MenuListState } from './MenuList.types';
2
- export declare function useMenuListContextValues_unstable(state: MenuListState): MenuListContextValues;
@@ -1,11 +0,0 @@
1
- import type { SlotClassNames } from '@fluentui/react-utilities';
2
- import type { MenuListSlots, MenuListState } from './MenuList.types';
3
- /**
4
- * @deprecated Use `menuListClassNames.root` instead.
5
- */
6
- export declare const menuListClassName = "fui-MenuList";
7
- export declare const menuListClassNames: SlotClassNames<MenuListSlots>;
8
- /**
9
- * Apply styling to the Menu slots based on the state
10
- */
11
- export declare const useMenuListStyles_unstable: (state: MenuListState) => MenuListState;
@@ -1,6 +0,0 @@
1
- import type { MenuPopoverProps } from './MenuPopover.types';
2
- import type { ForwardRefComponent } from '@fluentui/react-utilities';
3
- /**
4
- * Popover intended to wrap `MenuList` and adds styling and interaction support specific to menus
5
- */
6
- export declare const MenuPopover: ForwardRefComponent<MenuPopoverProps>;
@@ -1,18 +0,0 @@
1
- import type { ComponentProps, ComponentState, Slot } from '@fluentui/react-utilities';
2
- export declare type MenuPopoverSlots = {
3
- root: Slot<'div'>;
4
- };
5
- /**
6
- * MenuPopover Props
7
- */
8
- export declare type MenuPopoverProps = ComponentProps<MenuPopoverSlots>;
9
- /**
10
- * State used in rendering MenuPopover
11
- */
12
- export declare type MenuPopoverState = ComponentState<MenuPopoverSlots> & {
13
- /**
14
- * Root menus are rendered out of DOM order on `document.body`, use this to render the menu in DOM order
15
- * This option is disregarded for submenus
16
- */
17
- inline: boolean;
18
- };
@@ -1,5 +0,0 @@
1
- export * from './MenuPopover';
2
- export * from './MenuPopover.types';
3
- export * from './renderMenuPopover';
4
- export * from './useMenuPopover';
5
- export * from './useMenuPopoverStyles';
@@ -1,5 +0,0 @@
1
- import { MenuPopoverState } from './MenuPopover.types';
2
- /**
3
- * Render the final JSX of MenuPopover
4
- */
5
- export declare const renderMenuPopover_unstable: (state: MenuPopoverState) => JSX.Element;
@@ -1,12 +0,0 @@
1
- import * as React from 'react';
2
- import { MenuPopoverProps, MenuPopoverState } from './MenuPopover.types';
3
- /**
4
- * Create the state required to render MenuPopover.
5
- *
6
- * The returned state can be modified with hooks such as useMenuPopoverStyles_unstable,
7
- * before being passed to renderMenuPopover_unstable.
8
- *
9
- * @param props - props from this instance of MenuPopover
10
- * @param ref - reference to root HTMLElement of MenuPopover
11
- */
12
- export declare const useMenuPopover_unstable: (props: MenuPopoverProps, ref: React.Ref<HTMLElement>) => MenuPopoverState;
@@ -1,11 +0,0 @@
1
- import type { MenuPopoverSlots, MenuPopoverState } from './MenuPopover.types';
2
- import type { SlotClassNames } from '@fluentui/react-utilities';
3
- /**
4
- * @deprecated Use `menuPopoverClassNames.root` instead.
5
- */
6
- export declare const menuPopoverClassName = "fui-MenuPopover";
7
- export declare const menuPopoverClassNames: SlotClassNames<MenuPopoverSlots>;
8
- /**
9
- * Apply styling to the Menu slots based on the state
10
- */
11
- export declare const useMenuPopoverStyles_unstable: (state: MenuPopoverState) => MenuPopoverState;
@@ -1,6 +0,0 @@
1
- import type { MenuSplitGroupProps } from './MenuSplitGroup.types';
2
- import type { ForwardRefComponent } from '@fluentui/react-utilities';
3
- /**
4
- * Layout wrapper that provides extra keyboard navigation behavior for two `MenuItem` components.
5
- */
6
- export declare const MenuSplitGroup: ForwardRefComponent<MenuSplitGroupProps>;
@@ -1,14 +0,0 @@
1
- import type { ComponentProps, ComponentState, Slot } from '@fluentui/react-utilities';
2
- export declare type MenuSplitGroupSlots = {
3
- root: Slot<'div'>;
4
- };
5
- declare type MenuSplitGroupCommons = {};
6
- /**
7
- * MenuSplitGroup Props
8
- */
9
- export declare type MenuSplitGroupProps = ComponentProps<MenuSplitGroupSlots> & MenuSplitGroupCommons;
10
- /**
11
- * State used in rendering MenuSplitGroup
12
- */
13
- export declare type MenuSplitGroupState = ComponentState<MenuSplitGroupSlots> & MenuSplitGroupCommons;
14
- export {};
@@ -1,5 +0,0 @@
1
- export * from './MenuSplitGroup';
2
- export * from './MenuSplitGroup.types';
3
- export * from './renderMenuSplitGroup';
4
- export * from './useMenuSplitGroup';
5
- export * from './useMenuSplitGroupStyles';
@@ -1,5 +0,0 @@
1
- import type { MenuSplitGroupState } from './MenuSplitGroup.types';
2
- /**
3
- * Render the final JSX of MenuSplitGroup
4
- */
5
- export declare const renderMenuSplitGroup_unstable: (state: MenuSplitGroupState) => JSX.Element;
@@ -1,12 +0,0 @@
1
- import * as React from 'react';
2
- import type { MenuSplitGroupProps, MenuSplitGroupState } from './MenuSplitGroup.types';
3
- /**
4
- * Create the state required to render MenuSplitGroup.
5
- *
6
- * The returned state can be modified with hooks such as useMenuSplitGroupStyles_unstable,
7
- * before being passed to renderMenuSplitGroup_unstable.
8
- *
9
- * @param props - props from this instance of MenuSplitGroup
10
- * @param ref - reference to root HTMLElement of MenuSplitGroup
11
- */
12
- export declare const useMenuSplitGroup_unstable: (props: MenuSplitGroupProps, ref: React.Ref<HTMLElement>) => MenuSplitGroupState;
@@ -1,11 +0,0 @@
1
- import type { MenuSplitGroupSlots, MenuSplitGroupState } from './MenuSplitGroup.types';
2
- import type { SlotClassNames } from '@fluentui/react-utilities';
3
- /**
4
- * @deprecated Use `menuSplitGroupClassNames.root` instead.
5
- */
6
- export declare const menuSplitGroupClassName = "fui-MenuSplitGroup";
7
- export declare const menuSplitGroupClassNames: SlotClassNames<MenuSplitGroupSlots>;
8
- /**
9
- * Apply styling to the MenuSplitGroup slots based on the state
10
- */
11
- export declare const useMenuSplitGroupStyles_unstable: (state: MenuSplitGroupState) => MenuSplitGroupState;
@@ -1,8 +0,0 @@
1
- import * as React from 'react';
2
- import type { MenuTriggerProps } from './MenuTrigger.types';
3
- import type { FluentTriggerComponent } from '@fluentui/react-utilities';
4
- /**
5
- * Wraps a trigger element as an only child
6
- * and adds the necessary event handling to open a popup menu
7
- */
8
- export declare const MenuTrigger: React.FC<MenuTriggerProps> & FluentTriggerComponent;
@@ -1,20 +0,0 @@
1
- import * as React from 'react';
2
- export declare type MenuTriggerProps = {
3
- /**
4
- * Explicitly require single child or render function
5
- */
6
- children: (React.ReactElement & {
7
- ref?: React.Ref<unknown>;
8
- }) | ((props: MenuTriggerChildProps) => React.ReactElement | null);
9
- };
10
- /**
11
- * Props that are passed to the child of the MenuTrigger when cloned to ensure correct behaviour for the Menu
12
- */
13
- export declare type MenuTriggerChildProps = Required<Pick<React.HTMLAttributes<HTMLElement>, 'onClick' | 'onMouseEnter' | 'onMouseLeave' | 'onMouseMove' | 'onContextMenu' | 'onKeyDown' | 'aria-haspopup' | 'id'>> & {
14
- ref?: React.Ref<never>;
15
- 'aria-expanded': boolean | undefined;
16
- };
17
- export declare type MenuTriggerState = {
18
- children: React.ReactElement | null;
19
- isSubmenu: boolean;
20
- };
@@ -1,4 +0,0 @@
1
- export * from './MenuTrigger';
2
- export * from './MenuTrigger.types';
3
- export * from './renderMenuTrigger';
4
- export * from './useMenuTrigger';
@@ -1,7 +0,0 @@
1
- import type { MenuTriggerState } from './MenuTrigger.types';
2
- /**
3
- * Render the final JSX of MenuTrigger
4
- *
5
- * Only renders children
6
- */
7
- export declare const renderMenuTrigger_unstable: (state: MenuTriggerState) => JSX.Element;
@@ -1,8 +0,0 @@
1
- import { MenuTriggerProps, MenuTriggerState } from './MenuTrigger.types';
2
- /**
3
- * Create the state required to render MenuTrigger.
4
- * Clones the only child component and adds necessary event handling behaviours to open a popup menu
5
- *
6
- * @param props - props from this instance of MenuTrigger
7
- */
8
- export declare const useMenuTrigger_unstable: (props: MenuTriggerProps) => MenuTriggerState;
@@ -1,2 +0,0 @@
1
- export * from './MenuItem/index';
2
- export * from './MenuList/index';
@@ -1,16 +0,0 @@
1
- import * as React from 'react';
2
- import type { ContextSelector, Context } from '@fluentui/react-context-selector';
3
- import type { MenuListProps } from '../components/index';
4
- import type { MenuState } from '../components/Menu/index';
5
- export declare const MenuContext: Context<MenuContextValue>;
6
- /**
7
- * Context shared between Menu and its children components
8
- *
9
- * Extends and drills down MenuList props to simplify API
10
- */
11
- export declare type MenuContextValue = MenuListProps & Pick<MenuState, 'openOnHover' | 'openOnContext' | 'triggerRef' | 'menuPopoverRef' | 'setOpen' | 'isSubmenu' | 'triggerId' | 'hasIcons' | 'hasCheckmarks' | 'persistOnItemClick' | 'inline'> & {
12
- open: boolean;
13
- triggerId: string;
14
- };
15
- export declare const MenuProvider: React.Provider<MenuContextValue> & React.FC<React.ProviderProps<MenuContextValue>>;
16
- export declare const useMenuContext_unstable: <T>(selector: ContextSelector<MenuContextValue, T>) => T;
@@ -1,13 +0,0 @@
1
- import * as React from 'react';
2
- /**
3
- * Context used to guarantee correct aria-relationship between header
4
- * and group information
5
- */
6
- export declare type MenuGroupContextValue = {
7
- /**
8
- * Element id applied to the `MenuGroupHeader` component
9
- */
10
- headerId: string;
11
- };
12
- export declare const MenuGroupContextProvider: React.Provider<MenuGroupContextValue>;
13
- export declare const useMenuGroupContext_unstable: () => MenuGroupContextValue;
@@ -1,15 +0,0 @@
1
- import * as React from 'react';
2
- import type { ContextSelector, Context } from '@fluentui/react-context-selector';
3
- import type { SelectableHandler } from '../selectable/index';
4
- import type { MenuListProps } from '../components/index';
5
- export declare const MenuListContext: Context<MenuListContextValue>;
6
- /**
7
- * Context shared between MenuList and its children components
8
- */
9
- export declare type MenuListContextValue = Pick<MenuListProps, 'checkedValues' | 'onCheckedValueChange' | 'hasIcons' | 'hasCheckmarks'> & {
10
- setFocusByFirstCharacter?: (e: React.KeyboardEvent<HTMLElement>, itemEl: HTMLElement) => void;
11
- toggleCheckbox?: SelectableHandler;
12
- selectRadio?: SelectableHandler;
13
- };
14
- export declare const MenuListProvider: React.Provider<MenuListContextValue> & React.FC<React.ProviderProps<MenuListContextValue>>;
15
- export declare const useMenuListContext_unstable: <T>(selector: ContextSelector<MenuListContextValue, T>) => T;
@@ -1,3 +0,0 @@
1
- import * as React from 'react';
2
- export declare const MenuTriggerContextProvider: React.Provider<boolean>;
3
- export declare const useMenuTriggerContext_unstable: () => boolean;
package/lib/index.d.ts DELETED
@@ -1,16 +0,0 @@
1
- export * from './contexts/menuContext';
2
- export * from './contexts/menuTriggerContext';
3
- export * from './contexts/menuGroupContext';
4
- export * from './contexts/menuListContext';
5
- export * from './Menu';
6
- export * from './MenuDivider';
7
- export * from './MenuGroup';
8
- export * from './MenuGroupHeader';
9
- export * from './MenuItem';
10
- export * from './MenuItemCheckbox';
11
- export * from './MenuItemRadio';
12
- export * from './MenuList';
13
- export * from './MenuPopover';
14
- export * from './MenuSplitGroup';
15
- export * from './MenuTrigger';
16
- export * from './selectable/index';
@@ -1,2 +0,0 @@
1
- export * from './useCheckmarkStyles';
2
- export * from './types';
@@ -1,34 +0,0 @@
1
- import * as React from 'react';
2
- export declare type SelectableHandler = (e: React.MouseEvent | React.KeyboardEvent, name: string, value: string, checked: boolean) => void;
3
- /**
4
- * Props for selecatble menu items
5
- */
6
- export declare type MenuItemSelectableProps = {
7
- /**
8
- * Follows input convention
9
- * https://www.w3schools.com/jsref/prop_checkbox_name.asp
10
- */
11
- name: string;
12
- /**
13
- * Follows input convention
14
- * https://www.w3schools.com/jsref/prop_checkbox_value.asp
15
- */
16
- value: string;
17
- };
18
- /**
19
- * State for selectable menu items
20
- */
21
- export declare type MenuItemSelectableState = MenuItemSelectableProps & {
22
- /**
23
- * Checked items for a value with `name`
24
- */
25
- checkedItems: string[];
26
- /**
27
- * Callback when checked items changes for a given value with `name`
28
- */
29
- onCheckedValueChange: (e: React.MouseEvent | React.KeyboardEvent, name: string, checkedItems: string[]) => void;
30
- /**
31
- * Selectable is checked
32
- */
33
- checked: boolean;
34
- };
@@ -1,8 +0,0 @@
1
- import type { MenuItemSelectableState } from './types';
2
- import type { MenuItemState } from '../components/MenuItem/MenuItem.types';
3
- /**
4
- * Applies styles to a checkmark slot for selectable menu items
5
- *
6
- * @param state - should contain a `checkmark` slot
7
- */
8
- export declare const useCheckmarkStyles_unstable: (state: MenuItemSelectableState & Pick<MenuItemState, 'checkmark'>) => void;
@@ -1 +0,0 @@
1
- export * from './useOnMenuEnter';
@@ -1,9 +0,0 @@
1
- /**
2
- * A component can be a part of a submenu whether its menu context `isSubmenu` flag is true
3
- * or whether it is a part of a `MenuList`
4
- *
5
- * A simple hook to check box contexts easily
6
- *
7
- * @returns whether the component is part of a submenu
8
- */
9
- export declare function useIsSubmenu(): boolean;
@@ -1,23 +0,0 @@
1
- import type { UseOnClickOrScrollOutsideOptions } from '@fluentui/react-utilities';
2
- /**
3
- * Name of the custom event
4
- */
5
- export declare const MENU_ENTER_EVENT = "fuimenuenter";
6
- /**
7
- * This hook works similarly to @see {useOnClickOutside}
8
- *
9
- * Problem: Trying to behave the same as system menus:
10
- * When the mouse leaves a stack of nested menus the stack should not dismiss.
11
- * However if the mouse leaves a stack of menus and enters a parent menu all its children menu should dismiss.
12
- *
13
- * We don't use the native mouseenter event because it would trigger too many times in the document
14
- * Instead, dispatch custom DOM event from the menu so that it can bubble
15
- * Each nested menu can use the listener to check if the event is from a child or parent menu
16
- */
17
- export declare const useOnMenuMouseEnter: (options: UseOnClickOrScrollOutsideOptions) => void;
18
- /**
19
- * Dispatches the custom MouseEvent enter event. Similar to calling `el.click()`
20
- * @param el element for the event target
21
- * @param nativeEvent the native mouse event this is mapped to
22
- */
23
- export declare const dispatchMenuEnterEvent: (el: HTMLElement, nativeEvent: MouseEvent) => void;
@@ -1 +0,0 @@
1
- export * from './components/Menu/index';
@@ -1 +0,0 @@
1
- export * from './components/MenuDivider/index';
@@ -1 +0,0 @@
1
- export * from './components/MenuGroup/index';
@@ -1 +0,0 @@
1
- export * from './components/MenuGroupHeader/index';
@@ -1 +0,0 @@
1
- export * from './components/MenuItem/index';
@@ -1 +0,0 @@
1
- export * from './components/MenuItemCheckbox/index';
@@ -1 +0,0 @@
1
- export * from './components/MenuItemRadio/index';
@@ -1 +0,0 @@
1
- export * from './components/MenuList/index';
@@ -1 +0,0 @@
1
- export * from './components/MenuPopover/index';
@@ -1 +0,0 @@
1
- export * from './components/MenuSplitGroup/index';
@@ -1 +0,0 @@
1
- export * from './components/MenuTrigger/index';
@@ -1,6 +0,0 @@
1
- import * as React from 'react';
2
- import type { MenuProps } from './Menu.types';
3
- /**
4
- * Wrapper component that manages state for a popup MenuList and a MenuTrigger
5
- */
6
- export declare const Menu: React.FC<MenuProps>;