diff --git a/amnet-native/app/ServerCardIn.tsx b/amnet-native/app/ServerCardIn.tsx index ac4ad50..3aea80e 100644 --- a/amnet-native/app/ServerCardIn.tsx +++ b/amnet-native/app/ServerCardIn.tsx @@ -1,7 +1,7 @@ import {BSON} from "realm"; import NfcManager from "react-native-nfc-manager"; import React, {useCallback, useEffect, useLayoutEffect, useMemo, useState} from "react"; -import {Platform, RefreshControl, ScrollView, Share, StyleSheet, Text, View} from "react-native"; +import {Alert, Platform, RefreshControl, ScrollView, Share, StyleSheet, Text, View} from "react-native"; import {ActivityIndicator, Button, IconButton, Paragraph, Title, useTheme} from "react-native-paper"; import { CircleCheck, @@ -54,17 +54,30 @@ export default function ServerCardIn({route, navigation}) { }); // header actions - const menuCallback = useCallback((e: NativeActionEvent) => { + const menuCallback = useCallback(async (e: NativeActionEvent) => { switch (e.nativeEvent.event) { case "share": Share.share({url: server.shareUrl}); break; case "delete": - realm.write(() => { - realm.delete(server); - navigation.goBack(); - }); + Alert.alert("Delete Server", "Are you sure you want to delete this server?", [ + { + text: "Cancel", + style: "cancel" + }, + { + text: "Delete", + style: "destructive", + onPress: () => { + realm.write(() => { + realm.delete(server); + navigation.goBack(); + }); + } + } + ]); + break; } }, [realm, server, navigation]); @@ -249,11 +262,13 @@ export default function ServerCardIn({route, navigation}) { } return ( - }> + }> - {server.gameId ? `Play ${getGameName(server.gameId)}` : "Selected Card"} + {server.gameId ? `Play ${getGameName(server.gameId)}` : "Selected Card"} {selectedCard ? <> cardInCallback(selectedCard)} - icon={() => }> + icon={() => }> {cardInCompleted === null ? "Card In" : cardInCompleted ? "Card In Success" : "Failed"} {nfcSupported === true && ( @@ -277,7 +293,8 @@ export default function ServerCardIn({route, navigation}) { disabled={disableCardIn} onPress={performPhysicalCardIn} style={{borderRadius: 10, margin: 0, height: "100%", flex: 0.2}} - icon={() => }/> + icon={() => }/> )}