@sproutsocial/seeds-react-menu 1.2.1 → 1.2.2
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/.turbo/turbo-build.log +10 -10
- package/CHANGELOG.md +6 -0
- package/dist/esm/index.js +63 -62
- package/dist/esm/index.js.map +1 -1
- package/dist/index.d.mts +119 -59
- package/dist/index.d.ts +119 -59
- package/dist/index.js +91 -91
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
- package/src/ActionMenu/ActionMenu.tsx +2 -2
- package/src/Autocomplete/Autocomplete.stories.tsx +6 -18
- package/src/Autocomplete/Autocomplete.tsx +2 -3
- package/src/Autocomplete/AutocompleteTypes.ts +16 -12
- package/src/Autocomplete/SingleAutocomplete.tsx +2 -3
- package/src/MenuContent/MenuContent.tsx +4 -4
- package/src/MenuContext.tsx +3 -0
- package/src/MenuFooter/MenuFooter.tsx +2 -2
- package/src/MenuGroup/MenuGroup.tsx +4 -4
- package/src/MenuHeader/MenuHeader.tsx +4 -2
- package/src/MenuLabel.tsx +32 -2
- package/src/MenuRoot/MenuRoot.tsx +7 -17
- package/src/MenuSearchInput/MenuSearchInput.tsx +5 -11
- package/src/MenuSearchTokenInput/MenuSearchTokenInput.tsx +6 -3
- package/src/MenuToggleButton/MenuToggleButton.tsx +11 -12
- package/src/MenuTokenInput.tsx +10 -4
- package/src/MultiSelectMenu/MultiSelectMenu.tsx +4 -3
- package/src/NestedMenu/NestedMenu.feature +2 -2
- package/src/NestedMenu/NestedMenuTypes.ts +3 -0
- package/src/SingleSelectMenu/SingleSelectMenu.tsx +5 -4
- package/src/hooks/useItemFiltering.tsx +2 -1
- package/src/hooks/useMenuChildren.tsx +1 -1
- package/src/types.ts +28 -15
package/.turbo/turbo-build.log
CHANGED
|
@@ -84,14 +84,14 @@ ESM Build start
|
|
|
84
84
|
╵ [32m~~~~~~~~~[0m
|
|
85
85
|
|
|
86
86
|
|
|
87
|
-
CJS dist/index.js 140.
|
|
88
|
-
CJS dist/index.js.map
|
|
89
|
-
CJS ⚡️ Build success in
|
|
90
|
-
ESM dist/esm/index.js 131.
|
|
91
|
-
ESM dist/esm/index.js.map
|
|
92
|
-
ESM ⚡️ Build success in
|
|
87
|
+
CJS dist/index.js 140.79 KB
|
|
88
|
+
CJS dist/index.js.map 365.47 KB
|
|
89
|
+
CJS ⚡️ Build success in 515ms
|
|
90
|
+
ESM dist/esm/index.js 131.30 KB
|
|
91
|
+
ESM dist/esm/index.js.map 364.25 KB
|
|
92
|
+
ESM ⚡️ Build success in 518ms
|
|
93
93
|
DTS Build start
|
|
94
|
-
DTS ⚡️ Build success in
|
|
95
|
-
DTS dist/index.d.ts
|
|
96
|
-
DTS dist/index.d.mts
|
|
97
|
-
Done in
|
|
94
|
+
DTS ⚡️ Build success in 15560ms
|
|
95
|
+
DTS dist/index.d.ts 36.84 KB
|
|
96
|
+
DTS dist/index.d.mts 36.84 KB
|
|
97
|
+
Done in 18.60s.
|
package/CHANGELOG.md
CHANGED
package/dist/esm/index.js
CHANGED
|
@@ -2691,32 +2691,36 @@ var MenuRoot = ({
|
|
|
2691
2691
|
}
|
|
2692
2692
|
);
|
|
2693
2693
|
};
|
|
2694
|
-
var MenuRootNoPopout = ({
|
|
2695
|
-
children,
|
|
2696
|
-
menuToggleElement,
|
|
2697
|
-
...contextProps
|
|
2698
|
-
}) => {
|
|
2699
|
-
const menuContext = useMenu(contextProps);
|
|
2700
|
-
return /* @__PURE__ */ jsx10(MenuContentProvider, { menuContext, children });
|
|
2701
|
-
};
|
|
2702
2694
|
|
|
2703
2695
|
// src/MenuLabel.tsx
|
|
2704
2696
|
import "react";
|
|
2705
2697
|
import { Label } from "@sproutsocial/seeds-react-label";
|
|
2706
2698
|
import { jsx as jsx11 } from "react/jsx-runtime";
|
|
2707
|
-
var MenuLabel = ({
|
|
2699
|
+
var MenuLabel = ({
|
|
2700
|
+
children,
|
|
2701
|
+
required = false,
|
|
2702
|
+
...rest
|
|
2703
|
+
}) => {
|
|
2708
2704
|
const { getLabelProps } = useMenuToggleContext();
|
|
2709
|
-
return
|
|
2705
|
+
return (
|
|
2706
|
+
// This fallback id should never be used, but it is here to satisfy TypeScript since getLabelProps could be undefined.
|
|
2707
|
+
/* @__PURE__ */ jsx11(
|
|
2708
|
+
Label,
|
|
2709
|
+
{
|
|
2710
|
+
htmlFor: "fallback_menu_label",
|
|
2711
|
+
required,
|
|
2712
|
+
...getLabelProps?.(),
|
|
2713
|
+
...rest,
|
|
2714
|
+
children
|
|
2715
|
+
}
|
|
2716
|
+
)
|
|
2717
|
+
);
|
|
2710
2718
|
};
|
|
2711
2719
|
|
|
2712
2720
|
// src/MenuToggleButton/MenuToggleButton.tsx
|
|
2713
|
-
import "react";
|
|
2714
2721
|
import { Button } from "@sproutsocial/seeds-react-button";
|
|
2715
2722
|
import { jsx as jsx12 } from "react/jsx-runtime";
|
|
2716
|
-
var MenuToggleButton = ({
|
|
2717
|
-
children,
|
|
2718
|
-
...rest
|
|
2719
|
-
}) => {
|
|
2723
|
+
var MenuToggleButton = (props) => {
|
|
2720
2724
|
const { getToggleButtonProps, isListbox, getDropdownProps, ref, ariaProps } = useMenuToggleContext();
|
|
2721
2725
|
return /* @__PURE__ */ jsx12(
|
|
2722
2726
|
Button,
|
|
@@ -2729,18 +2733,17 @@ var MenuToggleButton = ({
|
|
|
2729
2733
|
...ariaProps,
|
|
2730
2734
|
...isListbox ? {} : { role: "button", "aria-haspopup": "menu" }
|
|
2731
2735
|
}),
|
|
2732
|
-
...
|
|
2733
|
-
children
|
|
2736
|
+
...props
|
|
2734
2737
|
}
|
|
2735
2738
|
);
|
|
2736
2739
|
};
|
|
2737
2740
|
|
|
2738
2741
|
// src/MenuSearchInput/MenuSearchInput.tsx
|
|
2739
|
-
import
|
|
2742
|
+
import React10 from "react";
|
|
2740
2743
|
import { Input } from "@sproutsocial/seeds-react-input";
|
|
2741
2744
|
|
|
2742
2745
|
// src/hooks/useItemFiltering.tsx
|
|
2743
|
-
import
|
|
2746
|
+
import React9 from "react";
|
|
2744
2747
|
|
|
2745
2748
|
// src/utils/downshiftDefaults.ts
|
|
2746
2749
|
var itemToString = (item) => {
|
|
@@ -2760,8 +2763,8 @@ var useItemFiltering = ({
|
|
|
2760
2763
|
getShouldFilter = defaultGetShouldFilter,
|
|
2761
2764
|
setHiddenItemsMap: setHiddenItemsMapProp
|
|
2762
2765
|
}) => {
|
|
2763
|
-
const [hiddenItemsMap, setHiddenItemsMap] =
|
|
2764
|
-
const updateFilteredItems =
|
|
2766
|
+
const [hiddenItemsMap, setHiddenItemsMap] = React9.useState({});
|
|
2767
|
+
const updateFilteredItems = React9.useCallback(
|
|
2765
2768
|
({ inputValue }) => {
|
|
2766
2769
|
const newHiddenItems = getShouldFilter({ inputValue }) ? allMenuItems.reduce((map, item) => {
|
|
2767
2770
|
const isItemVisible = getIsItemVisible(item, inputValue);
|
|
@@ -2798,11 +2801,11 @@ var MenuSearchInput = ({
|
|
|
2798
2801
|
getIsItemVisible,
|
|
2799
2802
|
setHiddenItemsMap
|
|
2800
2803
|
});
|
|
2801
|
-
|
|
2804
|
+
React10.useEffect(() => {
|
|
2802
2805
|
updateFilteredItems({ inputValue: restInputProps.value || "" });
|
|
2803
2806
|
}, [isOpen, restInputProps.value]);
|
|
2804
2807
|
const toggleButtonProps = getToggleButtonProps?.() || {};
|
|
2805
|
-
const handleKeyDown =
|
|
2808
|
+
const handleKeyDown = React10.useCallback(
|
|
2806
2809
|
(e) => {
|
|
2807
2810
|
if (e.key === " ") return;
|
|
2808
2811
|
toggleButtonProps.onKeyDown?.(e);
|
|
@@ -2829,7 +2832,7 @@ var MenuSearchInput = ({
|
|
|
2829
2832
|
};
|
|
2830
2833
|
|
|
2831
2834
|
// src/MenuTokenInput.tsx
|
|
2832
|
-
import
|
|
2835
|
+
import React11 from "react";
|
|
2833
2836
|
import styled8 from "styled-components";
|
|
2834
2837
|
import {
|
|
2835
2838
|
TokenInput
|
|
@@ -2864,7 +2867,7 @@ var MenuTokenInput = ({
|
|
|
2864
2867
|
removeSelectedItem,
|
|
2865
2868
|
setActiveIndex,
|
|
2866
2869
|
selectedItems = []
|
|
2867
|
-
} =
|
|
2870
|
+
} = React11.useContext(MenuContext);
|
|
2868
2871
|
const removeToken = (tokenId) => {
|
|
2869
2872
|
const tokenToRemove = selectedItems?.find((item) => item.id === tokenId);
|
|
2870
2873
|
tokenToRemove && removeSelectedItem?.(tokenToRemove);
|
|
@@ -2918,7 +2921,7 @@ var MenuTokenInput = ({
|
|
|
2918
2921
|
};
|
|
2919
2922
|
|
|
2920
2923
|
// src/MenuSearchTokenInput/MenuSearchTokenInput.tsx
|
|
2921
|
-
import
|
|
2924
|
+
import React12 from "react";
|
|
2922
2925
|
import { jsx as jsx15 } from "react/jsx-runtime";
|
|
2923
2926
|
var MenuSearchTokenInput = ({
|
|
2924
2927
|
getIsItemVisible,
|
|
@@ -2942,10 +2945,10 @@ var MenuSearchTokenInput = ({
|
|
|
2942
2945
|
setHiddenItemsMap
|
|
2943
2946
|
});
|
|
2944
2947
|
const controlledValue = value || inputPropsValue !== void 0 ? `${inputPropsValue}` : void 0;
|
|
2945
|
-
const [internalValue, setInternalValue] =
|
|
2948
|
+
const [internalValue, setInternalValue] = React12.useState(
|
|
2946
2949
|
controlledValue || ""
|
|
2947
2950
|
);
|
|
2948
|
-
const updateFilteredState =
|
|
2951
|
+
const updateFilteredState = React12.useCallback(
|
|
2949
2952
|
// defaults to an empty string if no value is passed
|
|
2950
2953
|
(value2 = "") => {
|
|
2951
2954
|
setInternalValue(value2);
|
|
@@ -2953,14 +2956,14 @@ var MenuSearchTokenInput = ({
|
|
|
2953
2956
|
},
|
|
2954
2957
|
[updateFilteredItems]
|
|
2955
2958
|
);
|
|
2956
|
-
|
|
2959
|
+
React12.useEffect(() => {
|
|
2957
2960
|
updateFilteredState(controlledValue);
|
|
2958
2961
|
}, [controlledValue]);
|
|
2959
|
-
|
|
2962
|
+
React12.useEffect(() => {
|
|
2960
2963
|
updateFilteredState(controlledValue);
|
|
2961
2964
|
}, [isOpen]);
|
|
2962
2965
|
const toggleButtonProps = getToggleButtonProps?.() || {};
|
|
2963
|
-
const handleKeyDown =
|
|
2966
|
+
const handleKeyDown = React12.useCallback(
|
|
2964
2967
|
(e) => {
|
|
2965
2968
|
if (e.key === " ") return;
|
|
2966
2969
|
toggleButtonProps.onKeyDown?.(e);
|
|
@@ -2988,7 +2991,7 @@ var MenuSearchTokenInput = ({
|
|
|
2988
2991
|
};
|
|
2989
2992
|
|
|
2990
2993
|
// src/SubmenuItem/SubmenuItem.tsx
|
|
2991
|
-
import
|
|
2994
|
+
import React13 from "react";
|
|
2992
2995
|
import { Icon as Icon2 } from "@sproutsocial/seeds-react-icon";
|
|
2993
2996
|
import { Box as Box3 } from "@sproutsocial/seeds-react-box";
|
|
2994
2997
|
import { mergeRefs as mergeRefs2 } from "@sproutsocial/seeds-react-utilities";
|
|
@@ -3050,17 +3053,17 @@ var SubmenuItem = ({
|
|
|
3050
3053
|
itemsMap,
|
|
3051
3054
|
isOpen: parentIsOpen
|
|
3052
3055
|
} = useMenuContentContext();
|
|
3053
|
-
const [submenuIsFocused, setSubmenuIsFocused] =
|
|
3054
|
-
const [submenuIsOpen, setSubmenuIsOpen] =
|
|
3055
|
-
const [submenuIsActive, setSubmenuIsActive] =
|
|
3056
|
-
const submenuItemRef =
|
|
3057
|
-
const submenuRef =
|
|
3056
|
+
const [submenuIsFocused, setSubmenuIsFocused] = React13.useState(false);
|
|
3057
|
+
const [submenuIsOpen, setSubmenuIsOpen] = React13.useState(false);
|
|
3058
|
+
const [submenuIsActive, setSubmenuIsActive] = React13.useState(false);
|
|
3059
|
+
const submenuItemRef = React13.useRef(null);
|
|
3060
|
+
const submenuRef = React13.useRef(null);
|
|
3058
3061
|
const menuContent = menuItems ? getChildrenFromMenuItems({ menuItems, MenuItemComponent }) : menuChildren;
|
|
3059
3062
|
const item = itemsMap[id] || {
|
|
3060
3063
|
index: 0,
|
|
3061
3064
|
id
|
|
3062
3065
|
};
|
|
3063
|
-
|
|
3066
|
+
React13.useEffect(() => {
|
|
3064
3067
|
if (highlightedIndex === item.index) {
|
|
3065
3068
|
!submenuIsOpen && setSubmenuIsOpen(true);
|
|
3066
3069
|
} else if (submenuIsOpen && highlightedIndex !== -1) {
|
|
@@ -3068,7 +3071,7 @@ var SubmenuItem = ({
|
|
|
3068
3071
|
setSubmenuIsActive(false);
|
|
3069
3072
|
}
|
|
3070
3073
|
}, [highlightedIndex, item.index, submenuIsOpen, setSubmenuIsOpen]);
|
|
3071
|
-
const onSubmenuStateChange =
|
|
3074
|
+
const onSubmenuStateChange = React13.useCallback(
|
|
3072
3075
|
(state) => {
|
|
3073
3076
|
if (state.isOpen !== void 0) {
|
|
3074
3077
|
setSubmenuIsOpen(state.isOpen);
|
|
@@ -3112,7 +3115,7 @@ var SubmenuItem = ({
|
|
|
3112
3115
|
onMenuItemClick();
|
|
3113
3116
|
}
|
|
3114
3117
|
};
|
|
3115
|
-
|
|
3118
|
+
React13.useEffect(() => {
|
|
3116
3119
|
if (document && document.body) {
|
|
3117
3120
|
document.body.addEventListener("click", onBodyClick, {
|
|
3118
3121
|
capture: true
|
|
@@ -3216,13 +3219,13 @@ var ListboxToggleButton = ({
|
|
|
3216
3219
|
};
|
|
3217
3220
|
|
|
3218
3221
|
// src/ActionMenu/ActionMenu.tsx
|
|
3219
|
-
import
|
|
3222
|
+
import React15, { useEffect as useEffect2 } from "react";
|
|
3220
3223
|
import {
|
|
3221
3224
|
useSelect as useSelect2
|
|
3222
3225
|
} from "downshift";
|
|
3223
3226
|
|
|
3224
3227
|
// src/hooks/useDownshiftDefaults.tsx
|
|
3225
|
-
import
|
|
3228
|
+
import React14 from "react";
|
|
3226
3229
|
|
|
3227
3230
|
// src/reducers/useComboboxStateReducer.tsx
|
|
3228
3231
|
import { useCombobox } from "downshift";
|
|
@@ -3346,12 +3349,12 @@ var useDownshiftDefaults = ({
|
|
|
3346
3349
|
isMulti = false,
|
|
3347
3350
|
multiSelectProps = {}
|
|
3348
3351
|
} = {}) => {
|
|
3349
|
-
const [hiddenItemsMap, setHiddenItemsMap] =
|
|
3350
|
-
const hiddenItemsCount =
|
|
3352
|
+
const [hiddenItemsMap, setHiddenItemsMap] = React14.useState({});
|
|
3353
|
+
const hiddenItemsCount = React14.useMemo(
|
|
3351
3354
|
() => Object.keys(hiddenItemsMap).filter(Boolean).length,
|
|
3352
3355
|
[hiddenItemsMap]
|
|
3353
3356
|
);
|
|
3354
|
-
const isItemDisabled =
|
|
3357
|
+
const isItemDisabled = React14.useCallback(
|
|
3355
3358
|
(item) => Boolean(item.disabled || hiddenItemsMap[item.id]),
|
|
3356
3359
|
[hiddenItemsMap]
|
|
3357
3360
|
);
|
|
@@ -3430,7 +3433,7 @@ var ActionMenu = ({
|
|
|
3430
3433
|
const { defaultDownshiftProps, ...restDefaults } = useDownshiftDefaults({
|
|
3431
3434
|
isCombobox: false
|
|
3432
3435
|
});
|
|
3433
|
-
const [currentSelectedItem, setCurrentSelectedItem] =
|
|
3436
|
+
const [currentSelectedItem, setCurrentSelectedItem] = React15.useState(null);
|
|
3434
3437
|
const { isOpen, ...useSelectReturnProps } = useSelect2({
|
|
3435
3438
|
...defaultDownshiftProps.select,
|
|
3436
3439
|
items: allMenuItems,
|
|
@@ -3618,7 +3621,6 @@ var MultiSelectMenu = ({
|
|
|
3618
3621
|
import "react";
|
|
3619
3622
|
|
|
3620
3623
|
// src/Autocomplete/SingleAutocomplete.tsx
|
|
3621
|
-
import "react";
|
|
3622
3624
|
import { useCombobox as useCombobox2 } from "downshift";
|
|
3623
3625
|
import { jsx as jsx21 } from "react/jsx-runtime";
|
|
3624
3626
|
var SingleAutocomplete = ({
|
|
@@ -3676,7 +3678,7 @@ var SingleAutocomplete = ({
|
|
|
3676
3678
|
};
|
|
3677
3679
|
|
|
3678
3680
|
// src/Autocomplete/MultiAutocomplete.tsx
|
|
3679
|
-
import
|
|
3681
|
+
import React18 from "react";
|
|
3680
3682
|
import { useCombobox as useCombobox3, useMultipleSelection as useMultipleSelection2 } from "downshift";
|
|
3681
3683
|
import { jsx as jsx22 } from "react/jsx-runtime";
|
|
3682
3684
|
var MultiAutocomplete = ({
|
|
@@ -3702,15 +3704,15 @@ var MultiAutocomplete = ({
|
|
|
3702
3704
|
menuItems,
|
|
3703
3705
|
MenuItemComponent
|
|
3704
3706
|
});
|
|
3705
|
-
const [selectedItems, setSelectedItems] =
|
|
3706
|
-
const [selectedItemIds, setSelectedItemIds] =
|
|
3707
|
-
const getIsItemVisibleMulti =
|
|
3707
|
+
const [selectedItems, setSelectedItems] = React18.useState(initialSelectedItems);
|
|
3708
|
+
const [selectedItemIds, setSelectedItemIds] = React18.useState(getSelectedItemIds(initialSelectedItems));
|
|
3709
|
+
const getIsItemVisibleMulti = React18.useCallback(
|
|
3708
3710
|
(item, inputValue) => {
|
|
3709
3711
|
return (showSelectedItemsInDropdown || !selectedItemIds[item.id]) && getIsItemVisible(item, inputValue);
|
|
3710
3712
|
},
|
|
3711
3713
|
[selectedItemIds, showSelectedItemsInDropdown, getIsItemVisible]
|
|
3712
3714
|
);
|
|
3713
|
-
const getShouldFilterMulti =
|
|
3715
|
+
const getShouldFilterMulti = React18.useCallback(
|
|
3714
3716
|
(args) => {
|
|
3715
3717
|
return !showSelectedItemsInDropdown && Object.keys(selectedItemIds).length > 0 || defaultGetShouldFilter(args);
|
|
3716
3718
|
},
|
|
@@ -3734,7 +3736,7 @@ var MultiAutocomplete = ({
|
|
|
3734
3736
|
getShouldFilter: getShouldFilterMulti,
|
|
3735
3737
|
setHiddenItemsMap
|
|
3736
3738
|
});
|
|
3737
|
-
|
|
3739
|
+
React18.useEffect(() => {
|
|
3738
3740
|
updateFilteredItems({ inputValue: "" });
|
|
3739
3741
|
}, [selectedItemIds]);
|
|
3740
3742
|
const useMultipleSelectionReturnProps = useMultipleSelection2({
|
|
@@ -3814,7 +3816,7 @@ var MultiAutocomplete = ({
|
|
|
3814
3816
|
// src/Autocomplete/Autocomplete.tsx
|
|
3815
3817
|
import { jsx as jsx23 } from "react/jsx-runtime";
|
|
3816
3818
|
var Autocomplete = ({
|
|
3817
|
-
multiSelect,
|
|
3819
|
+
multiSelect = false,
|
|
3818
3820
|
...rest
|
|
3819
3821
|
}) => {
|
|
3820
3822
|
if (multiSelect) {
|
|
@@ -3926,7 +3928,7 @@ var AutocompleteSelect = (props) => {
|
|
|
3926
3928
|
};
|
|
3927
3929
|
|
|
3928
3930
|
// src/NestedMenu/NestedMenu.tsx
|
|
3929
|
-
import { useId, useEffect as
|
|
3931
|
+
import { useId, useEffect as useEffect4, useState } from "react";
|
|
3930
3932
|
import { AnimatePresence as AnimatePresence2, motion as motion3 } from "motion/react";
|
|
3931
3933
|
import { useSelect as useSelect6 } from "downshift";
|
|
3932
3934
|
|
|
@@ -3993,7 +3995,7 @@ var useNestedMenuContext = () => {
|
|
|
3993
3995
|
};
|
|
3994
3996
|
|
|
3995
3997
|
// src/NestedMenu/NestedMenuContent.tsx
|
|
3996
|
-
import { useEffect as
|
|
3998
|
+
import { useEffect as useEffect3, useRef } from "react";
|
|
3997
3999
|
import { mergeRefs as mergeRefs3 } from "@sproutsocial/seeds-react-utilities";
|
|
3998
4000
|
|
|
3999
4001
|
// src/NestedMenu/NestedMenuItem.tsx
|
|
@@ -4037,7 +4039,7 @@ var NestedMenuContent = ({
|
|
|
4037
4039
|
const internalRef = useRef(null);
|
|
4038
4040
|
const innerRef = mergeRefs3(internalRef, innerRefProp);
|
|
4039
4041
|
const contentProps = children ? { children } : { menuItems, MenuItemComponent };
|
|
4040
|
-
|
|
4042
|
+
useEffect3(() => {
|
|
4041
4043
|
internalRef?.current?.focus();
|
|
4042
4044
|
}, []);
|
|
4043
4045
|
const onKeyDown = (e) => {
|
|
@@ -4105,7 +4107,7 @@ var NestedMenuHeader = ({
|
|
|
4105
4107
|
};
|
|
4106
4108
|
|
|
4107
4109
|
// src/NestedMenu/NestedMenuRoot.tsx
|
|
4108
|
-
import
|
|
4110
|
+
import React23 from "react";
|
|
4109
4111
|
import { jsx as jsx31 } from "react/jsx-runtime";
|
|
4110
4112
|
var NestedMenuRoot = ({
|
|
4111
4113
|
children,
|
|
@@ -4114,7 +4116,7 @@ var NestedMenuRoot = ({
|
|
|
4114
4116
|
}) => {
|
|
4115
4117
|
const menuContext = useMenu(contextProps);
|
|
4116
4118
|
const { setActiveMenuContext, selectedMenuPath } = useNestedMenuContext();
|
|
4117
|
-
|
|
4119
|
+
React23.useEffect(() => {
|
|
4118
4120
|
setActiveMenuContext(menuContext);
|
|
4119
4121
|
}, [
|
|
4120
4122
|
selectedMenuPath[selectedMenuPath.length - 1],
|
|
@@ -4198,7 +4200,7 @@ var NestedMenu = ({
|
|
|
4198
4200
|
...useSelectReturnProps,
|
|
4199
4201
|
...restDefaults
|
|
4200
4202
|
};
|
|
4201
|
-
|
|
4203
|
+
useEffect4(() => {
|
|
4202
4204
|
if (!useSelectReturnProps.isOpen) {
|
|
4203
4205
|
setHasLoadedOnce(false);
|
|
4204
4206
|
} else {
|
|
@@ -4224,7 +4226,7 @@ var NestedMenu = ({
|
|
|
4224
4226
|
setIsAdding(true);
|
|
4225
4227
|
setSelectedMenuPath((currentPath) => [...currentPath, id]);
|
|
4226
4228
|
};
|
|
4227
|
-
|
|
4229
|
+
useEffect4(() => {
|
|
4228
4230
|
if (selectedMenuPath.length > 0) {
|
|
4229
4231
|
const newMenuId = selectedMenuPath[selectedMenuPath.length - 1];
|
|
4230
4232
|
setCurrentMenuId(newMenuId);
|
|
@@ -4412,7 +4414,6 @@ export {
|
|
|
4412
4414
|
MenuLabel,
|
|
4413
4415
|
MenuPopout,
|
|
4414
4416
|
MenuRoot,
|
|
4415
|
-
MenuRootNoPopout,
|
|
4416
4417
|
MenuSearchInput,
|
|
4417
4418
|
MenuSearchTokenInput,
|
|
4418
4419
|
MenuToggleButton,
|