All files / atlas-mobile-ts/src/components/Profile/ProfileSections ProfileLegal.tsx

0% Statements 0/11
100% Branches 0/0
0% Functions 0/3
0% Lines 0/10

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36                                                                       
/* Copyright (C) Click & Push Accessibility, Inc - All Rights Reserved
 * Unauthorized copying of this file, via any medium is strictly prohibited
 * Proprietary and confidential
 * Written and maintained by the Click & Push Development team 
 * <dev@clicknpush.ca>, January 2022
 */
 
import React, { useEffect, useState } from "react"
import { Switch, Text, TouchableOpacity, View, ViewStyle } from "react-native"
import { GlobalStyles } from "../../../utils/GlobalUtils"
import { ProfileSection } from "./ProfileSection"
import * as Linking from 'expo-linking'
import * as WebBrowser from 'expo-web-browser'
import { API_URL } from "../../../utils/RequestUtils"
 
interface ProfileLegalProps {
    openLegal: () => void
    legalCollapsed: boolean
}
 
export const ProfileLegal: React.FC<ProfileLegalProps> = ({openLegal, legalCollapsed}) => {    
    const BrowserLink: React.FC<{text:string, route:string, style?: ViewStyle}> = ({style, text, route}) => {
        return (
            <TouchableOpacity style={[{alignItems: 'center'}, style]} onPress={async () => await WebBrowser.openBrowserAsync(API_URL + "/" + route)}>
                <Text style={{fontWeight: 'bold', textDecorationLine:'underline'}}>{text}</Text>
            </TouchableOpacity>
        )
    }
 
    return (
        <ProfileSection isCollapsed={legalCollapsed} collapseToggleMethod={openLegal} title="Terms">
            <BrowserLink style={{marginBottom: 10}} text="MOBILE APP THIRD-PARTY LICENSES" route="mobile-tpl"/>
            <BrowserLink text="API THIRD-PARTY LICENSES" route="api-tpl"/>
        </ProfileSection>
    )
}