Change design of modal loading and error screens in web UI (#33092)
This commit is contained in:
parent
eef8d2c855
commit
7f2cfcccab
8 changed files with 118 additions and 234 deletions
|
@ -26,7 +26,6 @@ import BundleContainer from '../containers/bundle_container';
|
|||
import ActionsModal from './actions_modal';
|
||||
import AudioModal from './audio_modal';
|
||||
import { BoostModal } from './boost_modal';
|
||||
import BundleModalError from './bundle_modal_error';
|
||||
import {
|
||||
ConfirmationModal,
|
||||
ConfirmDeleteStatusModal,
|
||||
|
@ -40,7 +39,7 @@ import {
|
|||
import FocalPointModal from './focal_point_modal';
|
||||
import ImageModal from './image_modal';
|
||||
import MediaModal from './media_modal';
|
||||
import ModalLoading from './modal_loading';
|
||||
import { ModalPlaceholder } from './modal_placeholder';
|
||||
import VideoModal from './video_modal';
|
||||
|
||||
export const MODAL_COMPONENTS = {
|
||||
|
@ -105,14 +104,16 @@ export default class ModalRoot extends PureComponent {
|
|||
this.setState({ backgroundColor: color });
|
||||
};
|
||||
|
||||
renderLoading = modalId => () => {
|
||||
return ['MEDIA', 'VIDEO', 'BOOST', 'CONFIRM', 'ACTIONS'].indexOf(modalId) === -1 ? <ModalLoading /> : null;
|
||||
renderLoading = () => {
|
||||
const { onClose } = this.props;
|
||||
|
||||
return <ModalPlaceholder loading onClose={onClose} />;
|
||||
};
|
||||
|
||||
renderError = (props) => {
|
||||
const { onClose } = this.props;
|
||||
|
||||
return <BundleModalError {...props} onClose={onClose} />;
|
||||
return <ModalPlaceholder {...props} onClose={onClose} />;
|
||||
};
|
||||
|
||||
handleClose = (ignoreFocus = false) => {
|
||||
|
@ -134,7 +135,7 @@ export default class ModalRoot extends PureComponent {
|
|||
<Base backgroundColor={backgroundColor} onClose={this.handleClose} ignoreFocus={ignoreFocus}>
|
||||
{visible && (
|
||||
<>
|
||||
<BundleContainer fetchComponent={MODAL_COMPONENTS[type]} loading={this.renderLoading(type)} error={this.renderError} renderDelay={200}>
|
||||
<BundleContainer fetchComponent={MODAL_COMPONENTS[type]} loading={this.renderLoading} error={this.renderError} renderDelay={200}>
|
||||
{(SpecificComponent) => {
|
||||
const ref = typeof SpecificComponent !== 'function' ? this.setModalRef : undefined;
|
||||
return <SpecificComponent {...props} onChangeBackgroundColor={this.setBackgroundColor} onClose={this.handleClose} ref={ref} />;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue