Configuration options for the ConfirmExitModal component.

ConfirmExitModalOptions

Modal Control:

interface ConfirmExitModalOptions {
    isConfirmExitModalVisible: boolean;
    onConfirmExitClose: (() => void);
    position?:
        | "topLeft"
        | "topRight"
        | "bottomLeft"
        | "bottomRight";
    backgroundColor?: string;
    exitEventOnConfirm?: ((options: ConfirmExitOptions) => void);
    member: string;
    ban?: boolean;
    roomName: string;
    socket: Socket<DefaultEventsMap, DefaultEventsMap>;
    islevel: string;
    style?: object;
    renderContent?: ((options: {
        defaultContent: Element;
        dimensions: {
            width: number;
            height: number;
        };
    }) => Element);
    renderContainer?: ((options: {
        defaultContainer: Element;
        dimensions: {
            width: number;
            height: number;
        };
    }) => ReactNode);
}

Properties

isConfirmExitModalVisible: boolean

Controls modal visibility

onConfirmExitClose: (() => void)

Callback when modal is closed

Exit Action:

position?:
    | "topLeft"
    | "topRight"
    | "bottomLeft"
    | "bottomRight"

Modal position on screen

backgroundColor?: string

Modal background color

exitEventOnConfirm?: ((options: ConfirmExitOptions) => void)

Custom handler for confirming exit (defaults to confirmExit)

User Context:

member: string

Name of member exiting or being removed

ban?: boolean

Whether this is a ban action (removes from room permanently)

roomName: string

Room identifier for exit event

socket: Socket<DefaultEventsMap, DefaultEventsMap>

Socket.io instance for exit notification

Customization:

islevel: string

User level ('0'=participant, '1'=co-host, '2'=host) - determines if "End Event for All" option is shown

Session Context:

style?: object

Additional custom styles for modal container

Advanced Render Overrides:

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

Custom render function for modal content

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

Custom render function for modal container