Interface defining the props for the MiniCard component.

MiniCard is a compact display component for showing participant avatars/initials with optional media status icons in grid layouts or sidebar views.

MiniCardOptions

Display Properties:

interface MiniCardOptions {
    initials?: string;
    fontSize?: number;
    customStyle?: StyleProp<ViewStyle>;
    imageSource?: string;
    roundedImage?: boolean;
    imageStyle?: StyleProp<ImageStyle>;
    showVideoIcon?: boolean;
    showAudioIcon?: boolean;
    name?: string;
    customMiniCard?: CustomMiniCardType;
    parameters?: any;
    style?: object;
    renderContent?: ((options: {
        defaultContent: ReactNode;
        dimensions: {
            width: number;
            height: number;
        };
    }) => ReactNode);
    renderContainer?: ((options: {
        defaultContainer: ReactNode;
        dimensions: {
            width: number;
            height: number;
        };
    }) => ReactNode);
}

Properties

initials?: string

Participant initials to display when no image is available (e.g., "AB" for "Alice Brown"). Used as fallback when imageSource is not provided.

fontSize?: number

Font size for the initials text

customStyle?: StyleProp<ViewStyle>

Custom React Native styles for the card container

imageSource?: string

URI or URL of the participant's avatar image

roundedImage?: boolean

Whether to display image with rounded corners

imageStyle?: StyleProp<ImageStyle>

Custom React Native styles for the image element

Status Icons:

showVideoIcon?: boolean

Whether to display video status icon overlay

showAudioIcon?: boolean

Whether to display audio status icon overlay

Styling Properties:

name?: string

Full name of the participant (may be used for accessibility or tooltips)

Image Properties:

customMiniCard?: CustomMiniCardType

Custom render function for complete card replacement. When provided, this function receives all MiniCardOptions and returns custom JSX.Element. This allows full control over the mini card's appearance and behavior.

Advanced Render Overrides:

parameters?: any

Additional parameters that can be passed to custom components

style?: object

Additional style object for the container

Custom UI Override:

renderContent?: ((options: {
    defaultContent: ReactNode;
    dimensions: {
        width: number;
        height: number;
    };
}) => ReactNode)

Function to wrap or replace the default card content while preserving container

renderContainer?: ((options: {
    defaultContainer: ReactNode;
    dimensions: {
        width: number;
        height: number;
    };
}) => ReactNode)

Function to wrap or replace the entire card container

Additional Parameters: