diff options
Diffstat (limited to 'frontend/src/hooks/UseMessage.tsx')
| -rw-r--r-- | frontend/src/hooks/UseMessage.tsx | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/frontend/src/hooks/UseMessage.tsx b/frontend/src/hooks/UseMessage.tsx index ebc4276..602cf65 100644 --- a/frontend/src/hooks/UseMessage.tsx +++ b/frontend/src/hooks/UseMessage.tsx | |||
| @@ -3,10 +3,10 @@ import MessageDialog from "../components/MessageDialog"; | |||
| 3 | 3 | ||
| 4 | const useMessage = () => { | 4 | const useMessage = () => { |
| 5 | const [isOpen, setIsOpen] = useState(false); | 5 | const [isOpen, setIsOpen] = useState(false); |
| 6 | const [resolvePromise, setResolvePromise] = useState<((value: boolean) => void) | null>(null); | ||
| 7 | 6 | ||
| 8 | const [title, setTitle] = useState<string>(""); | 7 | const [title, setTitle] = useState<string>(""); |
| 9 | const [subtitle, setSubtitle] = useState<string>(""); | 8 | const [subtitle, setSubtitle] = useState<string>(""); |
| 9 | const [resolvePromise, setResolvePromise] = useState<(() => void) | null>(null); | ||
| 10 | 10 | ||
| 11 | const message = (title: string, subtitle: string) => { | 11 | const message = (title: string, subtitle: string) => { |
| 12 | setIsOpen(true); | 12 | setIsOpen(true); |
| @@ -19,6 +19,10 @@ const useMessage = () => { | |||
| 19 | 19 | ||
| 20 | const handleClose = () => { | 20 | const handleClose = () => { |
| 21 | setIsOpen(false); | 21 | setIsOpen(false); |
| 22 | if (resolvePromise) { | ||
| 23 | resolvePromise(); | ||
| 24 | setResolvePromise(null); | ||
| 25 | } | ||
| 22 | }; | 26 | }; |
| 23 | 27 | ||
| 24 | const MessageDialogComponent = isOpen && ( | 28 | const MessageDialogComponent = isOpen && ( |