import type { AiConsentStatus } from "@rakazo/contracts"; import { AI_DATA_DISCLOSURES, AI_PRIVACY_URL } from "@rakazo/contracts"; import { useEffect, useState } from "react"; import { Alert, Button, Linking, ScrollView, StyleSheet, Text, View } from "react-native"; import { promptAiConsent } from "../lib/ai-consent"; import { rpc } from "../lib/api"; import { mobileTokens } from "../lib/appearance"; export default function AiDataSharing() { const [status, setStatus] = useState(null); const [pending, setPending] = useState(false); const tokens = mobileTokens(); const error = (cause: unknown) => Alert.alert( "AI data sharing", cause instanceof Error ? cause.message : "Could not load permissions.", ); useEffect(() => { void rpc("aiConsent/status").then(setStatus).catch(error); }, []); return ( {status?.recipients.map((recipient) => ( {recipient.name} {recipient.detail ? ( {recipient.detail} ) : null} {AI_DATA_DISCLOSURES[recipient.use]} {recipient.privacyUrl ? (