Interface RequestsModalOptions

interface RequestsModalOptions {
    isRequestsModalVisible: boolean;
    onRequestClose: (() => void);
    requestCounter: number;
    onRequestFilterChange: ((text: string) => void);
    onRequestItemPress?: RespondToRequestsType;
    requestList: Request[];
    updateRequestList: ((newRequestList: Request[]) => void);
    roomName: string;
    socket: Socket<DefaultEventsMap, DefaultEventsMap>;
    renderRequestComponent?: FC<RenderRequestComponentOptions>;
    backgroundColor?: string;
    position?: string;
    parameters: RequestsModalParameters;
    title?: ReactNode;
    overlayProps?: HTMLAttributes<HTMLDivElement>;
    contentProps?: HTMLAttributes<HTMLDivElement>;
    headerProps?: HTMLAttributes<HTMLDivElement>;
    titleProps?: HTMLAttributes<HTMLDivElement>;
    badgeWrapperProps?: HTMLAttributes<HTMLDivElement>;
    badgeProps?: HTMLAttributes<HTMLSpanElement>;
    closeButtonProps?: ButtonHTMLAttributes<HTMLButtonElement>;
    closeIconComponent?: ReactNode;
    bodyProps?: HTMLAttributes<HTMLDivElement>;
    searchWrapperProps?: HTMLAttributes<HTMLDivElement>;
    searchInputProps?: InputHTMLAttributes<HTMLInputElement>;
    requestsWrapperProps?: HTMLAttributes<HTMLDivElement>;
    requestItemWrapperProps?: HTMLAttributes<HTMLDivElement>;
    emptyState?: ReactNode | ((context: {
        counter: number;
    }) => ReactNode);
    renderHeader?: ((options: {
        defaultHeader: ReactNode;
        counter: number;
        onClose: (() => void);
    }) => ReactNode);
    renderSearch?: ((options: {
        defaultSearch: ReactNode;
        onFilter: ((value: string) => void);
    }) => ReactNode);
    renderRequest?: ((options: {
        request: Request;
        index: number;
        defaultRequest: ReactNode;
        handleRespond: ((action: "accepted" | "rejected") => void);
    }) => ReactNode);
    renderBody?: ((options: {
        defaultBody: ReactNode;
        counter: number;
    }) => ReactNode);
    renderContent?: ((options: {
        defaultContent: ReactNode;
        counter: number;
    }) => ReactNode);
}

Properties

isRequestsModalVisible: boolean
onRequestClose: (() => void)
requestCounter: number
onRequestFilterChange: ((text: string) => void)
onRequestItemPress?: RespondToRequestsType
requestList: Request[]
updateRequestList: ((newRequestList: Request[]) => void)
roomName: string
socket: Socket<DefaultEventsMap, DefaultEventsMap>
renderRequestComponent?: FC<RenderRequestComponentOptions>
backgroundColor?: string
position?: string
title?: ReactNode
overlayProps?: HTMLAttributes<HTMLDivElement>
contentProps?: HTMLAttributes<HTMLDivElement>
headerProps?: HTMLAttributes<HTMLDivElement>
titleProps?: HTMLAttributes<HTMLDivElement>
badgeWrapperProps?: HTMLAttributes<HTMLDivElement>
badgeProps?: HTMLAttributes<HTMLSpanElement>
closeButtonProps?: ButtonHTMLAttributes<HTMLButtonElement>
closeIconComponent?: ReactNode
bodyProps?: HTMLAttributes<HTMLDivElement>
searchWrapperProps?: HTMLAttributes<HTMLDivElement>
searchInputProps?: InputHTMLAttributes<HTMLInputElement>
requestsWrapperProps?: HTMLAttributes<HTMLDivElement>
requestItemWrapperProps?: HTMLAttributes<HTMLDivElement>
emptyState?: ReactNode | ((context: {
    counter: number;
}) => ReactNode)
renderHeader?: ((options: {
    defaultHeader: ReactNode;
    counter: number;
    onClose: (() => void);
}) => ReactNode)
renderSearch?: ((options: {
    defaultSearch: ReactNode;
    onFilter: ((value: string) => void);
}) => ReactNode)
renderRequest?: ((options: {
    request: Request;
    index: number;
    defaultRequest: ReactNode;
    handleRespond: ((action: "accepted" | "rejected") => void);
}) => ReactNode)
renderBody?: ((options: {
    defaultBody: ReactNode;
    counter: number;
}) => ReactNode)
renderContent?: ((options: {
    defaultContent: ReactNode;
    counter: number;
}) => ReactNode)