import { CustomModalLayout, CustomModalLayoutProps, ModalProps, Text, TableActionCellSecondaryAction, } from '@wix/design-system'; import React from 'react'; import { observer } from 'mobx-react-lite'; import { ModalWrapper } from '../CollectionModal'; import { ConditionalModalState } from '@wix/bex-core'; export interface CustomActionModalProps extends Partial { state: ConditionalModalState; onAfterClose?: ModalProps['onAfterClose']; actionProps?: Partial; /** z-index of the modal overlay, forwarded to the underlying WDS `Modal`. */ zIndex?: ModalProps['zIndex']; } function _CustomActionModal({ state, content, onAfterClose, primaryButtonOnClick, secondaryButtonOnClick, onCloseButtonClick, zIndex, ...rest }: CustomActionModalProps) { const { modal } = state; return ( { state.afterClose(); onAfterClose?.(); }} > { modal.close(); onCloseButtonClick?.(e); }} primaryButtonOnClick={() => { modal.confirm(); primaryButtonOnClick?.(); }} secondaryButtonOnClick={ rest.secondaryButtonText ? () => { modal.decline(); secondaryButtonOnClick?.(); } : undefined } content={typeof content === 'string' ? {content} : content} /> ); } export const CustomActionModal = observer(_CustomActionModal);