From 26017e7de4600cc677a8a1e0881f2e58b3d5fe65 Mon Sep 17 00:00:00 2001 From: AAGaming Date: Fri, 9 Sep 2022 16:17:44 -0400 Subject: [PATCH] feat(modal): add more props, refactor BREAKING CHANGE: ModalRoot ->ConfirmModal add the actual ModalRoot which does not contain buttons --- src/deck-components/Modal.tsx | 20 ++++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) diff --git a/src/deck-components/Modal.tsx b/src/deck-components/Modal.tsx index c7dcde3..ea0ff5f 100755 --- a/src/deck-components/Modal.tsx +++ b/src/deck-components/Modal.tsx @@ -13,11 +13,10 @@ export const showModal: (children: ReactNode, parent?: EventTarget) => void = fi }); export interface ModalRootProps { - onMiddleButton?(): void; onCancel?(): void; + closeModal?(): void; onOK?(): void; onEscKeypress?(): void; - closeModal?(): void; className?: string; modalClassName?: string; bAllowFullSize?: boolean; @@ -27,11 +26,24 @@ export interface ModalRootProps { bOKDisabled?: boolean; } -export const ModalRoot = findModuleChild((m) => { +export interface ConfirmModalProps extends ModalRootProps { + onMiddleButton?(): void; +} + +export const ConfirmModal = findModuleChild((m) => { if (typeof m !== 'object') return undefined; for (let prop in m) { if (!m[prop]?.prototype?.OK && m[prop]?.prototype?.Cancel && m[prop]?.prototype?.render) { return m[prop]; } } -}) as FC; +}) as FC; + +export const ModalRoot = findModuleChild((m) => { + if (typeof m !== 'object') return undefined; + for (let prop in m) { + if (m[prop]?.prototype?.OK && m[prop]?.prototype?.Cancel && m[prop]?.prototype?.render) { + return m[prop]; + } + } +}) as FC; \ No newline at end of file