|
1 | 1 | /* eslint-disable react-native/no-color-literals */ |
| 2 | +import type { Direction } from "react-native-magic-modal"; |
2 | 3 | import React from "react"; |
3 | 4 | import { Platform, Pressable, StyleSheet, Text } from "react-native"; |
4 | 5 | import { ScrollView } from "react-native-gesture-handler"; |
5 | | -import { |
6 | | - Direction, |
7 | | - magicModal, |
8 | | - MagicModalHideReason, |
9 | | -} from "react-native-magic-modal"; |
| 6 | +import { magicModal, MagicModalHideReason } from "react-native-magic-modal"; |
10 | 7 | import { ZoomIn, ZoomOut } from "react-native-reanimated"; |
11 | 8 | import { router } from "expo-router"; |
12 | 9 | import { StatusBar } from "expo-status-bar"; |
@@ -39,14 +36,18 @@ const showModal = async () => { |
39 | 36 | console.log("Modal closed with response:", await modalResponse.promise); |
40 | 37 | }; |
41 | 38 |
|
42 | | -type ModalResponse = { |
| 39 | +interface ModalResponse { |
43 | 40 | message: string; |
44 | | -}; |
| 41 | +} |
45 | 42 |
|
46 | 43 | const showReplacingModals = async () => { |
47 | 44 | const modalResponse = magicModal.show<ModalResponse>(() => <ExampleModal />); |
48 | 45 |
|
49 | | - await new Promise<void>((resolve) => setTimeout(() => resolve(), 1000)); |
| 46 | + await new Promise<void>((resolve) => |
| 47 | + setTimeout(() => { |
| 48 | + resolve(); |
| 49 | + }, 1000), |
| 50 | + ); |
50 | 51 |
|
51 | 52 | magicModal.hide<ModalResponse>( |
52 | 53 | { message: "close timeout" }, |
@@ -125,7 +126,9 @@ export default () => { |
125 | 126 | <> |
126 | 127 | <Pressable |
127 | 128 | style={styles.button} |
128 | | - onPress={() => router.push("/modal")} |
| 129 | + onPress={() => { |
| 130 | + router.push("/modal"); |
| 131 | + }} |
129 | 132 | > |
130 | 133 | <Text style={styles.buttonText}>Open Modal Screen</Text> |
131 | 134 | </Pressable> |
|
0 commit comments