aboutsummaryrefslogtreecommitdiff
path: root/src/components/common
diff options
context:
space:
mode:
Diffstat (limited to 'src/components/common')
-rw-r--r--src/components/common/TaggPrompt.tsx28
1 files changed, 25 insertions, 3 deletions
diff --git a/src/components/common/TaggPrompt.tsx b/src/components/common/TaggPrompt.tsx
index 6b59d4a5..0bf25c3c 100644
--- a/src/components/common/TaggPrompt.tsx
+++ b/src/components/common/TaggPrompt.tsx
@@ -1,13 +1,22 @@
import React from 'react';
-import {StyleSheet, Text, TouchableOpacity} from 'react-native';
+import {
+ ImageStyle,
+ StyleProp,
+ StyleSheet,
+ Text,
+ TouchableOpacity,
+} from 'react-native';
import {Image, View} from 'react-native-animatable';
import CloseIcon from '../../assets/ionicons/close-outline.svg';
import {normalize, SCREEN_HEIGHT} from '../../utils';
+import {useNavigation} from '@react-navigation/core';
type TaggPromptProps = {
messageHeader: string;
messageBody: string | Element;
- logoType: 'plus' | 'tagg' | 'invite_friends' | 'private_accounts';
+ logoType: 'plus' | 'tagg' | 'invite_friends' | 'private_accounts' | 'chat';
+ logoLink?: string;
+ externalStyles?: Record<string, StyleProp<ImageStyle>>;
hideCloseButton?: boolean;
noPadding?: boolean;
onClose: () => void;
@@ -17,6 +26,8 @@ const TaggPrompt: React.FC<TaggPromptProps> = ({
messageHeader,
messageBody,
logoType,
+ logoLink,
+ externalStyles,
hideCloseButton,
noPadding,
onClose,
@@ -33,6 +44,8 @@ const TaggPrompt: React.FC<TaggPromptProps> = ({
return require('../../assets/icons/notificationPrompts/invite-friends-prompt-icon.png');
case 'private_accounts':
return require('../../assets/icons/notificationPrompts/private-accounts-prompt-icon.png');
+ case 'chat':
+ return require('../../assets/icons/notificationPrompts/message_notification-07.png');
case 'tagg':
default:
return require('../../assets/images/logo-purple.png');
@@ -42,9 +55,18 @@ const TaggPrompt: React.FC<TaggPromptProps> = ({
const topPadding = {paddingTop: noPadding ? 0 : SCREEN_HEIGHT / 10};
const bottomPadding = {paddingBottom: noPadding ? 0 : SCREEN_HEIGHT / 50};
+ const navigation = useNavigation();
+
return (
<View style={[styles.container, topPadding, bottomPadding]}>
- <Image style={styles.icon} source={logo()} />
+ <TouchableOpacity
+ disabled={logoLink ? false : true}
+ onPress={() => logoLink && navigation.navigate(logoLink)}>
+ <Image
+ style={externalStyles?.icon ? externalStyles.icon : styles.icon}
+ source={logo()}
+ />
+ </TouchableOpacity>
<Text style={styles.header}>{messageHeader}</Text>
<Text style={styles.subtext}>{messageBody}</Text>
{!hideCloseButton && (