Skip to content

Commit e4bd399

Browse files
committed
chore: props omitted in the component itself
1 parent 1523ca7 commit e4bd399

File tree

7 files changed

+19
-14
lines changed

7 files changed

+19
-14
lines changed

.changeset/ten-experts-happen.md

+7
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
---
2+
"@nextui-org/listbox": patch
3+
"@nextui-org/menu": patch
4+
"@nextui-org/theme": patch
5+
---
6+
7+
Virtualization support added to Listbox and Menu

packages/components/listbox/src/base/listbox-item-base.tsx

+1-1
Original file line numberDiff line numberDiff line change
@@ -90,7 +90,7 @@ interface Props<T extends object = {}> extends Omit<ItemProps<"li", T>, "childre
9090
}
9191

9292
export type ListboxItemBaseProps<T extends object = {}> = Props<T> &
93-
ListboxItemVariantProps &
93+
Omit<ListboxItemVariantProps, "hasDescriptionTextChild" | "hasTitleTextChild"> &
9494
Omit<AriaOptionProps, "key"> &
9595
FocusableProps &
9696
PressEvents;

packages/components/listbox/src/listbox-item.tsx

+2-1
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,8 @@ import {useMemo, ReactNode} from "react";
33
import {UseListboxItemProps, useListboxItem} from "./use-listbox-item";
44
import {ListboxSelectedIcon} from "./listbox-selected-icon";
55

6-
export interface ListboxItemProps<T extends object = object> extends UseListboxItemProps<T> {}
6+
export interface ListboxItemProps<T extends object = object>
7+
extends Omit<UseListboxItemProps<T>, "hasDescriptionTextChild" | "hasTitleTextChild"> {}
78

89
/**
910
* @internal

packages/components/listbox/src/use-listbox-item.ts

+5-6
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
11
import type {ListboxItemBaseProps} from "./base/listbox-item-base";
2+
import type {MenuItemVariantProps} from "@nextui-org/theme";
23

34
import {useMemo, useRef, useCallback, Fragment} from "react";
4-
import {listboxItem, MenuItemVariantProps} from "@nextui-org/theme";
5+
import {listboxItem} from "@nextui-org/theme";
56
import {
67
HTMLNextUIProps,
78
mapPropsVariants,
@@ -24,15 +25,13 @@ interface Props<T extends object> extends ListboxItemBaseProps<T> {
2425
}
2526

2627
export type UseListboxItemProps<T extends object> = Props<T> &
27-
Omit<HTMLNextUIProps<"li">, keyof Props<T>>;
28+
Omit<HTMLNextUIProps<"li">, keyof Props<T>> &
29+
MenuItemVariantProps;
2830

2931
export function useListboxItem<T extends object>(originalProps: UseListboxItemProps<T>) {
3032
const globalContext = useProviderContext();
3133

32-
const [props, variantProps] = mapPropsVariants(
33-
originalProps,
34-
listboxItem.variantKeys as (keyof MenuItemVariantProps)[],
35-
);
34+
const [props, variantProps] = mapPropsVariants(originalProps, listboxItem.variantKeys);
3635

3736
const {
3837
as,

packages/components/menu/src/base/menu-item-base.tsx

+1-1
Original file line numberDiff line numberDiff line change
@@ -89,7 +89,7 @@ interface Props<T extends object = {}> extends Omit<ItemProps<"li", T>, "childre
8989
}
9090

9191
export type MenuItemBaseProps<T extends object = {}> = Props<T> &
92-
MenuItemVariantProps &
92+
Omit<MenuItemVariantProps, "hasDescriptionTextChild" | "hasTitleTextChild"> &
9393
AriaMenuItemProps &
9494
FocusableProps &
9595
PressEvents;

packages/components/menu/src/menu-item.tsx

+2-1
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,8 @@ import {useMemo, ReactNode} from "react";
33
import {UseMenuItemProps, useMenuItem} from "./use-menu-item";
44
import {MenuSelectedIcon} from "./menu-selected-icon";
55

6-
export interface MenuItemProps<T extends object = object> extends UseMenuItemProps<T> {}
6+
export interface MenuItemProps<T extends object = object>
7+
extends Omit<UseMenuItemProps<T>, "hasDescriptionTextChild" | "hasTitleTextChild"> {}
78

89
/**
910
* @internal

packages/core/theme/src/components/menu.ts

+1-4
Original file line numberDiff line numberDiff line change
@@ -529,10 +529,7 @@ export type MenuVariantProps = VariantProps<typeof menu>;
529529
export type MenuSlots = keyof ReturnType<typeof menu>;
530530
export type MenuSectionVariantProps = VariantProps<typeof menuSection>;
531531
export type MenuSectionSlots = keyof ReturnType<typeof menuSection>;
532-
export type MenuItemVariantProps = Omit<
533-
VariantProps<typeof menuItem>,
534-
"hasDescriptionTextChild" | "hasTitleTextChild"
535-
>;
532+
export type MenuItemVariantProps = VariantProps<typeof menuItem>;
536533
export type MenuItemSlots = keyof ReturnType<typeof menuItem>;
537534

538535
export {menu, menuItem, menuSection};

0 commit comments

Comments
 (0)