5180 fichiers 38.5 Mo 0 téléchargements 231 vues mis à jour il y a 5 heures ui
nitro-v36-with-renderer-v36 / src / components / quests / RewardTrackAdminModalView.tsx
RewardTrackAdminModalView.tsx 1.3 Ko Télécharger le fichier
import { FC, MouseEvent, ReactNode } from 'react';
import { createPortal } from 'react-dom';
import { BaseButton } from '../../common/BaseButton';

/** A window of its own for the editor's forms, over the Reward Track window, closed by the X or a click outside. */
export const RewardTrackAdminModalView: FC<{ title: ReactNode; width?: number; onClose: () => void; children?: ReactNode }> = ({ title, width = 560, onClose, children = null }) => {
    const onCloseMouseDown = (event: MouseEvent<HTMLElement>) => {
        event.stopPropagation();
        event.nativeEvent.stopImmediatePropagation();
    };

    return createPortal(
        <div className="octane-reward-track-admin-overlay" onClick={onClose} data-testid="rt-admin-modal">
            <div className="octane-reward-track-admin-modal" style={{ width }} onClick={(event) => event.stopPropagation()}>
                <div className="octane-reward-track-admin-modal-head">
                    <span className="octane-reward-track-admin-modal-title">{title}</span>
                    <BaseButton aria-label="close" className="octane-card-close-button" onClick={onClose} onMouseDownCapture={onCloseMouseDown} />
                </div>
                <div className="octane-reward-track-admin-modal-body octane-reward-track-admin">{children}</div>
            </div>
        </div>,
        document.body
    );
};
15Sujets
1Dépôts
20Membres
2En ligne
Profile
Inscrit
Dernière visite
Messages
0
Votes positifs
0
Votes négatifs
0

Nous utilisons des cookies pour assurer le bon fonctionnement du site et améliorer votre expérience. en savoir plus

Autoriser