UNPKG

@procore/core-react

Version:
48 lines (43 loc) 2.84 kB
import React from 'react'; import type { Color } from '../_styles/colors'; import type { AvatarStackItem, AvatarStackItemId, AvatarStackItemType, AvatarStackProps, AvatarStackSize, FoldedAvatarStackProps, ViewAllModalProps } from './AvatarStack.types'; export declare function getOverflowValues<Item extends AvatarStackItem>(items: Item[]): { visibleItems: Item[]; foldedItems: Item[]; restCountLabel: string | null; isViewAllNeeded: boolean; }; export declare function getIcon(type: AvatarStackItemType, size: 'md' | 'sm'): React.JSX.Element | null; export declare function getAvatarIcon(type: AvatarStackItemType, size: AvatarStackSize): React.JSX.Element | null; export declare function getColorOrder(avatarItems: AvatarStackItem[]): Map<AvatarStackItemId, Color>; export declare function AvatarStackContactItem({ id, type, imageUrl, initials, inactive, name, linkUrl, description, }: AvatarStackItem): React.JSX.Element; export declare function AvatarContent({ imageUrl, initials, type, size, ...props }: { imageUrl?: AvatarStackItem['imageUrl']; initials: AvatarStackItem['initials']; type: AvatarStackItem['type']; size: AvatarStackSize; }): React.JSX.Element | null; export declare function FoldedAvatarStack<Item extends AvatarStackItem>({ items, onClickViewAll, size, restCountLabel, isViewAllNeeded, title, viewMoreTriggerRef, }: FoldedAvatarStackProps<Item>): React.JSX.Element; export declare function ViewAllModal<Item extends AvatarStackItem>({ isOpen, onClose, title, items, }: ViewAllModalProps<Item>): React.JSX.Element; export declare function defaultInitials<Item extends AvatarStackItem>(item: Item): string; export declare function defaultGetImageUrl<Item extends AvatarStackItem>(item: Item): string; export declare function getTransformedItems<Item extends AvatarStackItem>({ items, getInitials, getImageUrl, }: { items: Item[]; getInitials: AvatarStackProps<Item>['getInitials']; getImageUrl: AvatarStackProps<Item>['getImageUrl']; }): (Item & { initials: string; imageUrl: string; })[]; declare const _AvatarStack: <Item extends AvatarStackItem>({ items: _items, title, size, getInitials, getImageUrl, onClickViewAll, ...props }: AvatarStackProps<Item>, ref: React.ForwardedRef<HTMLDivElement>) => React.JSX.Element; /** We use avatars to visually represent our users, places, and things in the app. These can be in the form of rich media or representative illustrations. @since 10.19.0 @see [Storybook](https://procore.github.io/core/latest/?path=/story/demos-avatarstack--demo) @see [Design Guidelines](https://design.procore.com/avatar-stack) */ export declare const AvatarStack: <Item extends AvatarStackItem>(props: AvatarStackProps<Item> & { ref?: React.ForwardedRef<HTMLDivElement> | undefined; }) => ReturnType<typeof _AvatarStack>; export {};