feat: translation (#389)

This commit is contained in:
Cody Tseng
2025-06-23 23:52:21 +08:00
committed by GitHub
parent e2e115ebeb
commit df9066eae0
43 changed files with 1466 additions and 47 deletions

View File

@@ -6,3 +6,4 @@ export * from './useFetchRelayInfo'
export * from './useFetchRelayInfos'
export * from './useFetchRelayList'
export * from './useSearchProfiles'
export * from './useTranslatedEvent'

View File

@@ -0,0 +1,21 @@
import { useTranslationService } from '@/providers/TranslationServiceProvider'
import { Event } from 'nostr-tools'
import { useEffect, useMemo, useState } from 'react'
export function useTranslatedEvent(eventId?: string) {
const { translatedEventIdSet, getTranslatedEvent } = useTranslationService()
const translated = useMemo(() => {
return eventId ? translatedEventIdSet.has(eventId) : false
}, [eventId, translatedEventIdSet])
const [translatedEvent, setTranslatedEvent] = useState<Event | null>(null)
useEffect(() => {
if (translated && eventId) {
setTranslatedEvent(getTranslatedEvent(eventId))
} else {
setTranslatedEvent(null)
}
}, [translated, eventId])
return translatedEvent
}