@sproutsocial/seeds-react-menu 1.3.0 → 1.3.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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sproutsocial/seeds-react-menu",
3
- "version": "1.3.0",
3
+ "version": "1.3.1",
4
4
  "description": "Seeds React Menu",
5
5
  "author": "Sprout Social, Inc.",
6
6
  "license": "MIT",
@@ -45,6 +45,7 @@ const MenuContent = <I extends TypeMenuItemProps = TypeMenuItemProps>({
45
45
  isListbox,
46
46
  hasVisibleItems,
47
47
  autoCloseOnEmpty,
48
+ isInitialized,
48
49
  } = useMenuContentContext();
49
50
  const toggleButtonProps = getToggleButtonProps?.();
50
51
 
@@ -53,7 +54,7 @@ const MenuContent = <I extends TypeMenuItemProps = TypeMenuItemProps>({
53
54
  ? childrenProp
54
55
  : mapMenuItems({ menuItems, MenuItemComponent });
55
56
 
56
- if (!hasVisibleItems && !autoCloseOnEmpty) {
57
+ if (isInitialized && !hasVisibleItems && !autoCloseOnEmpty) {
57
58
  return emptyStateElement ?? <DefaultMenuEmptyState />;
58
59
  }
59
60
 
@@ -122,6 +122,7 @@ export interface TypeMenuContext extends TypeMenuContextProps {
122
122
  props: Pick<TypeTokenInputProps, "inputProps"> &
123
123
  Parameters<Required<TypeMenuContextProps>["getInputProps"]>[0]
124
124
  ) => Omit<TypeDownshiftMergedInputProps<TypeTokenInputProps>, "onClick">;
125
+ isInitialized?: boolean;
125
126
  }
126
127
 
127
128
  export interface TypeMenuProviderProps {
@@ -152,6 +153,7 @@ export const defaultMenuContext: TypeMenuContext = {
152
153
  isItemSelected: () => false,
153
154
  getInputComponentProps: () => ({}),
154
155
  hasVisibleItems: false,
156
+ isInitialized: false,
155
157
  };
156
158
 
157
159
  export const getSelectedItemIds = <
@@ -253,8 +255,6 @@ export const useMenu = ({
253
255
  );
254
256
 
255
257
  const hasVisibleItems = useMemo(() => {
256
- // if (!items || items.length === 0) return false;
257
- // if (!rest.hiddenItemsMap) return true;
258
258
  return (hiddenItemsCount ?? 0) < items.length;
259
259
  }, [items, hiddenItemsCount]);
260
260
 
@@ -272,6 +272,7 @@ export const useMenu = ({
272
272
  contentRef,
273
273
  hasVisibleItems,
274
274
  autoCloseOnEmpty,
275
+ isInitialized: true,
275
276
  ...menuProps,
276
277
  };
277
278
  };