nextui/apps/docs/content/components/avatar/group-custom-impl.raw.tsx
WK 0d217e466f
refactor: optimization (#5362)
* chore(deps): bump RA versions

* chore(deps): bump RA versions

* chore(deps): bump RA versions

* chore: changeset

* chore(deps): remove unnecessary dependencies

* fix(calendar): typing issue

* refactor(system): remove unused SupportedCalendars

* refactor(system): move I18nProviderProps to type

* refactor: use `spectrumCalendarProps<DateValue>["createCalendar"]`

* feat: add consistent-type-imports

* fix: eslint

* chore: add changeset

* refactor: remove unused deps
2025-06-09 14:17:44 +08:00

34 lines
847 B
TypeScript

import type {AvatarGroupProps as BaseAvatarGroupProps} from "@heroui/react";
import {forwardRef} from "react";
import {Avatar, useAvatarGroup, AvatarGroupProvider} from "@heroui/react";
export interface AvatarGroupProps extends BaseAvatarGroupProps {}
const AvatarGroup = forwardRef<HTMLDivElement, AvatarGroupProps>((props, ref) => {
const {
Component,
clones,
context,
remainingCount,
renderCount = (count) => <Avatar name={`+${count}`} />,
getAvatarGroupProps,
} = useAvatarGroup({
ref,
...props,
});
return (
<Component {...getAvatarGroupProps()}>
<AvatarGroupProvider value={context}>
{clones}
{remainingCount > 0 && renderCount(remainingCount)}
</AvatarGroupProvider>
</Component>
);
});
AvatarGroup.displayName = "AvatarGroup";
export default AvatarGroup;