@react-spectrum/menu 3.16.1-nightly.4321 → 3.17.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/ar-AE.main.js +8 -0
- package/dist/ar-AE.main.js.map +1 -0
- package/dist/ar-AE.mjs +10 -0
- package/dist/ar-AE.module.js +10 -0
- package/dist/ar-AE.module.js.map +1 -0
- package/dist/bg-BG.main.js +8 -0
- package/dist/bg-BG.main.js.map +1 -0
- package/dist/bg-BG.mjs +10 -0
- package/dist/bg-BG.module.js +10 -0
- package/dist/bg-BG.module.js.map +1 -0
- package/dist/cs-CZ.main.js +8 -0
- package/dist/cs-CZ.main.js.map +1 -0
- package/dist/cs-CZ.mjs +10 -0
- package/dist/cs-CZ.module.js +10 -0
- package/dist/cs-CZ.module.js.map +1 -0
- package/dist/da-DK.main.js +8 -0
- package/dist/da-DK.main.js.map +1 -0
- package/dist/da-DK.mjs +10 -0
- package/dist/da-DK.module.js +10 -0
- package/dist/da-DK.module.js.map +1 -0
- package/dist/de-DE.main.js +8 -0
- package/dist/de-DE.main.js.map +1 -0
- package/dist/de-DE.mjs +10 -0
- package/dist/de-DE.module.js +10 -0
- package/dist/de-DE.module.js.map +1 -0
- package/dist/el-GR.main.js +8 -0
- package/dist/el-GR.main.js.map +1 -0
- package/dist/el-GR.mjs +10 -0
- package/dist/el-GR.module.js +10 -0
- package/dist/el-GR.module.js.map +1 -0
- package/dist/en-US.main.js +8 -0
- package/dist/en-US.main.js.map +1 -0
- package/dist/en-US.mjs +10 -0
- package/dist/en-US.module.js +10 -0
- package/dist/en-US.module.js.map +1 -0
- package/dist/es-ES.main.js +8 -0
- package/dist/es-ES.main.js.map +1 -0
- package/dist/es-ES.mjs +10 -0
- package/dist/es-ES.module.js +10 -0
- package/dist/es-ES.module.js.map +1 -0
- package/dist/et-EE.main.js +8 -0
- package/dist/et-EE.main.js.map +1 -0
- package/dist/et-EE.mjs +10 -0
- package/dist/et-EE.module.js +10 -0
- package/dist/et-EE.module.js.map +1 -0
- package/dist/fi-FI.main.js +8 -0
- package/dist/fi-FI.main.js.map +1 -0
- package/dist/fi-FI.mjs +10 -0
- package/dist/fi-FI.module.js +10 -0
- package/dist/fi-FI.module.js.map +1 -0
- package/dist/fr-FR.main.js +8 -0
- package/dist/fr-FR.main.js.map +1 -0
- package/dist/fr-FR.mjs +10 -0
- package/dist/fr-FR.module.js +10 -0
- package/dist/fr-FR.module.js.map +1 -0
- package/dist/he-IL.main.js +8 -0
- package/dist/he-IL.main.js.map +1 -0
- package/dist/he-IL.mjs +10 -0
- package/dist/he-IL.module.js +10 -0
- package/dist/he-IL.module.js.map +1 -0
- package/dist/hr-HR.main.js +8 -0
- package/dist/hr-HR.main.js.map +1 -0
- package/dist/hr-HR.mjs +10 -0
- package/dist/hr-HR.module.js +10 -0
- package/dist/hr-HR.module.js.map +1 -0
- package/dist/hu-HU.main.js +8 -0
- package/dist/hu-HU.main.js.map +1 -0
- package/dist/hu-HU.mjs +10 -0
- package/dist/hu-HU.module.js +10 -0
- package/dist/hu-HU.module.js.map +1 -0
- package/dist/import.mjs +458 -332
- package/dist/it-IT.main.js +8 -0
- package/dist/it-IT.main.js.map +1 -0
- package/dist/it-IT.mjs +10 -0
- package/dist/it-IT.module.js +10 -0
- package/dist/it-IT.module.js.map +1 -0
- package/dist/ja-JP.main.js +8 -0
- package/dist/ja-JP.main.js.map +1 -0
- package/dist/ja-JP.mjs +10 -0
- package/dist/ja-JP.module.js +10 -0
- package/dist/ja-JP.module.js.map +1 -0
- package/dist/ko-KR.main.js +8 -0
- package/dist/ko-KR.main.js.map +1 -0
- package/dist/ko-KR.mjs +10 -0
- package/dist/ko-KR.module.js +10 -0
- package/dist/ko-KR.module.js.map +1 -0
- package/dist/lt-LT.main.js +8 -0
- package/dist/lt-LT.main.js.map +1 -0
- package/dist/lt-LT.mjs +10 -0
- package/dist/lt-LT.module.js +10 -0
- package/dist/lt-LT.module.js.map +1 -0
- package/dist/lv-LV.main.js +8 -0
- package/dist/lv-LV.main.js.map +1 -0
- package/dist/lv-LV.mjs +10 -0
- package/dist/lv-LV.module.js +10 -0
- package/dist/lv-LV.module.js.map +1 -0
- package/dist/main.css +545 -1
- package/dist/main.css.map +1 -0
- package/dist/main.js +452 -325
- package/dist/main.js.map +1 -1
- package/dist/module.js +458 -332
- package/dist/module.js.map +1 -1
- package/dist/nb-NO.main.js +8 -0
- package/dist/nb-NO.main.js.map +1 -0
- package/dist/nb-NO.mjs +10 -0
- package/dist/nb-NO.module.js +10 -0
- package/dist/nb-NO.module.js.map +1 -0
- package/dist/nl-NL.main.js +8 -0
- package/dist/nl-NL.main.js.map +1 -0
- package/dist/nl-NL.mjs +10 -0
- package/dist/nl-NL.module.js +10 -0
- package/dist/nl-NL.module.js.map +1 -0
- package/dist/pl-PL.main.js +8 -0
- package/dist/pl-PL.main.js.map +1 -0
- package/dist/pl-PL.mjs +10 -0
- package/dist/pl-PL.module.js +10 -0
- package/dist/pl-PL.module.js.map +1 -0
- package/dist/pt-BR.main.js +8 -0
- package/dist/pt-BR.main.js.map +1 -0
- package/dist/pt-BR.mjs +10 -0
- package/dist/pt-BR.module.js +10 -0
- package/dist/pt-BR.module.js.map +1 -0
- package/dist/pt-PT.main.js +8 -0
- package/dist/pt-PT.main.js.map +1 -0
- package/dist/pt-PT.mjs +10 -0
- package/dist/pt-PT.module.js +10 -0
- package/dist/pt-PT.module.js.map +1 -0
- package/dist/ro-RO.main.js +8 -0
- package/dist/ro-RO.main.js.map +1 -0
- package/dist/ro-RO.mjs +10 -0
- package/dist/ro-RO.module.js +10 -0
- package/dist/ro-RO.module.js.map +1 -0
- package/dist/ru-RU.main.js +8 -0
- package/dist/ru-RU.main.js.map +1 -0
- package/dist/ru-RU.mjs +10 -0
- package/dist/ru-RU.module.js +10 -0
- package/dist/ru-RU.module.js.map +1 -0
- package/dist/sk-SK.main.js +8 -0
- package/dist/sk-SK.main.js.map +1 -0
- package/dist/sk-SK.mjs +10 -0
- package/dist/sk-SK.module.js +10 -0
- package/dist/sk-SK.module.js.map +1 -0
- package/dist/sl-SI.main.js +8 -0
- package/dist/sl-SI.main.js.map +1 -0
- package/dist/sl-SI.mjs +10 -0
- package/dist/sl-SI.module.js +10 -0
- package/dist/sl-SI.module.js.map +1 -0
- package/dist/sr-SP.main.js +8 -0
- package/dist/sr-SP.main.js.map +1 -0
- package/dist/sr-SP.mjs +10 -0
- package/dist/sr-SP.module.js +10 -0
- package/dist/sr-SP.module.js.map +1 -0
- package/dist/sv-SE.main.js +8 -0
- package/dist/sv-SE.main.js.map +1 -0
- package/dist/sv-SE.mjs +10 -0
- package/dist/sv-SE.module.js +10 -0
- package/dist/sv-SE.module.js.map +1 -0
- package/dist/tr-TR.main.js +8 -0
- package/dist/tr-TR.main.js.map +1 -0
- package/dist/tr-TR.mjs +10 -0
- package/dist/tr-TR.module.js +10 -0
- package/dist/tr-TR.module.js.map +1 -0
- package/dist/types.d.ts +13 -3
- package/dist/types.d.ts.map +1 -1
- package/dist/uk-UA.main.js +8 -0
- package/dist/uk-UA.main.js.map +1 -0
- package/dist/uk-UA.mjs +10 -0
- package/dist/uk-UA.module.js +10 -0
- package/dist/uk-UA.module.js.map +1 -0
- package/dist/zh-CN.main.js +8 -0
- package/dist/zh-CN.main.js.map +1 -0
- package/dist/zh-CN.mjs +10 -0
- package/dist/zh-CN.module.js +10 -0
- package/dist/zh-CN.module.js.map +1 -0
- package/dist/zh-TW.main.js +8 -0
- package/dist/zh-TW.main.js.map +1 -0
- package/dist/zh-TW.mjs +10 -0
- package/dist/zh-TW.module.js +10 -0
- package/dist/zh-TW.module.js.map +1 -0
- package/package.json +24 -24
- package/src/ActionMenu.tsx +1 -1
- package/src/ContextualHelpTrigger.tsx +127 -57
- package/src/Menu.tsx +87 -12
- package/src/MenuItem.tsx +27 -22
- package/src/MenuTrigger.tsx +3 -3
- package/src/SubmenuTrigger.tsx +167 -0
- package/src/context.ts +21 -13
- package/src/index.ts +2 -0
package/src/context.ts
CHANGED
|
@@ -10,18 +10,20 @@
|
|
|
10
10
|
* governing permissions and limitations under the License.
|
|
11
11
|
*/
|
|
12
12
|
|
|
13
|
-
import {FocusStrategy} from '@react-types/shared';
|
|
14
|
-
import {MenuTriggerState} from '@react-stately/menu';
|
|
13
|
+
import {DOMProps, FocusStrategy, HoverEvents, KeyboardEvents, PressEvents} from '@react-types/shared';
|
|
15
14
|
import React, {HTMLAttributes, MutableRefObject, RefObject, useContext} from 'react';
|
|
15
|
+
import {RootMenuTriggerState} from '@react-stately/menu';
|
|
16
16
|
import {TreeState} from '@react-stately/tree';
|
|
17
17
|
|
|
18
|
-
export interface MenuContextValue extends Omit<HTMLAttributes<HTMLElement>, 'autoFocus'> {
|
|
18
|
+
export interface MenuContextValue extends Omit<HTMLAttributes<HTMLElement>, 'autoFocus' | 'onKeyDown'>, Pick<KeyboardEvents, 'onKeyDown'> {
|
|
19
19
|
onClose?: () => void,
|
|
20
20
|
closeOnSelect?: boolean,
|
|
21
21
|
shouldFocusWrap?: boolean,
|
|
22
22
|
autoFocus?: boolean | FocusStrategy,
|
|
23
23
|
ref?: MutableRefObject<HTMLDivElement>,
|
|
24
|
-
state?:
|
|
24
|
+
state?: RootMenuTriggerState,
|
|
25
|
+
onBackButtonPress?: () => void,
|
|
26
|
+
submenuLevel?: number
|
|
25
27
|
}
|
|
26
28
|
|
|
27
29
|
export const MenuContext = React.createContext<MenuContextValue>({});
|
|
@@ -30,26 +32,32 @@ export function useMenuContext(): MenuContextValue {
|
|
|
30
32
|
return useContext(MenuContext);
|
|
31
33
|
}
|
|
32
34
|
|
|
33
|
-
export interface
|
|
35
|
+
export interface SubmenuTriggerContextValue extends DOMProps, Pick<PressEvents, 'onPressStart' | 'onPress'>, Pick<HoverEvents, 'onHoverChange'>, Pick<KeyboardEvents, 'onKeyDown'> {
|
|
34
36
|
isUnavailable?: boolean,
|
|
35
|
-
triggerRef?: MutableRefObject<HTMLElement
|
|
37
|
+
triggerRef?: MutableRefObject<HTMLElement>,
|
|
38
|
+
'aria-expanded'?: boolean | 'true' | 'false',
|
|
39
|
+
'aria-controls'?: string,
|
|
40
|
+
'aria-haspopup'?: 'dialog' | 'menu',
|
|
41
|
+
isOpen?: boolean
|
|
36
42
|
}
|
|
37
43
|
|
|
38
|
-
export const
|
|
44
|
+
export const SubmenuTriggerContext = React.createContext<SubmenuTriggerContextValue | undefined>(undefined);
|
|
39
45
|
|
|
40
|
-
export function
|
|
41
|
-
return useContext(
|
|
46
|
+
export function useSubmenuTriggerContext(): SubmenuTriggerContextValue {
|
|
47
|
+
return useContext(SubmenuTriggerContext);
|
|
42
48
|
}
|
|
43
49
|
|
|
44
50
|
export interface MenuStateContextValue<T> {
|
|
45
51
|
state?: TreeState<T>,
|
|
46
|
-
|
|
47
|
-
|
|
52
|
+
popoverContainerRef?: RefObject<HTMLElement>,
|
|
53
|
+
trayContainerRef?: RefObject<HTMLElement>,
|
|
54
|
+
menu?: RefObject<HTMLDivElement>,
|
|
55
|
+
submenu?: RefObject<HTMLDivElement>,
|
|
56
|
+
rootMenuTriggerState?: RootMenuTriggerState
|
|
48
57
|
}
|
|
49
58
|
|
|
50
|
-
export const MenuStateContext = React.createContext<MenuStateContextValue<any>>(
|
|
59
|
+
export const MenuStateContext = React.createContext<MenuStateContextValue<any>>(undefined);
|
|
51
60
|
|
|
52
61
|
export function useMenuStateContext<T>(): MenuStateContextValue<T> {
|
|
53
62
|
return useContext(MenuStateContext);
|
|
54
63
|
}
|
|
55
|
-
|
package/src/index.ts
CHANGED
|
@@ -13,9 +13,11 @@
|
|
|
13
13
|
/// <reference types="css-module-types" />
|
|
14
14
|
|
|
15
15
|
export {MenuTrigger} from './MenuTrigger';
|
|
16
|
+
export {SubmenuTrigger} from './SubmenuTrigger';
|
|
16
17
|
export {Menu} from './Menu';
|
|
17
18
|
export {ActionMenu} from './ActionMenu';
|
|
18
19
|
export {ContextualHelpTrigger} from './ContextualHelpTrigger';
|
|
19
20
|
export {Item, Section} from '@react-stately/collections';
|
|
20
21
|
export type {SpectrumActionMenuProps, SpectrumMenuProps, SpectrumMenuTriggerProps} from '@react-types/menu';
|
|
21
22
|
export type {SpectrumMenuDialogTriggerProps} from './ContextualHelpTrigger';
|
|
23
|
+
export type {SpectrumSubmenuTriggerProps} from './SubmenuTrigger';
|