import React, { useEffect, useState, useCallback, useContext, useRef, useMemo } from 'react'; import { Link, router, useLocalSearchParams, useNavigation, useFocusEffect } from 'expo-router'; import { Image as RNImage, StyleSheet, useWindowDimensions, ScrollView, Pressable, RefreshControl, Platform, FlatList, TouchableOpacity } from 'react-native'; import { SafeAreaView } from 'react-native-safe-area-context'; import { Icon, MD3Colors, Button, Text, TextInput, TouchableRipple } from 'react-native-paper'; import CircularProgress from 'react-native-circular-progress-indicator'; import { ActivityIndicator } from 'react-native-paper'; import { FlashList } from "@shopify/flash-list"; import { DiscussionEmbed } from 'disqus-react'; import { WebView } from 'react-native-webview'; import { View } from 'moti'; import { CONTEXT } from '@/constants/module/context'; import Theme from '@/constants/theme'; const Disqus = ({url,identifier,title, paddingVertical=0, paddingHorizontal=0}:any) => { const Dimensions = useWindowDimensions(); const shortname = 'comicmtl'; const {showMenuContext, setShowMenuContext}:any = useContext(CONTEXT) const {themeTypeContext, setThemeTypeContext}:any = useContext(CONTEXT) const {showCloudflareTurnstileContext, setShowCloudflareTurnstileContext}:any = useContext(CONTEXT) const {apiBaseContext, setApiBaseContext}:any = useContext(CONTEXT) if (Platform.OS === "web") { return ( ) }else{ const [navigate_state, set_navigate_state] = useState(false); const [show_navigation, set_show_navigation] = useState(false); useEffect(() => { if (navigate_state) { set_navigate_state(false) set_show_navigation(false) } }, [navigate_state]) const disqusHTML:string = `
`; const handleNavigation = (event:any) => { const { url } = event; console.log('Request URL:', url); if (url.includes('disqus.com/next/login-success/#!auth%3Asuccess')){ set_navigate_state(true) }else if (url !== "about:blank"){ set_show_navigation(true) } return false; }; return (<>{!navigate_state ?<> <>{show_navigation && { set_navigate_state(true) set_show_navigation(false) }} > } :<> }) } } export default Disqus;