This commit is contained in:
codytseng 2025-07-19 17:24:51 +08:00
parent 28ec943a52
commit 78725c1d14
45 changed files with 698 additions and 766 deletions

View file

@ -1,4 +1,4 @@
import { getCommunityDefinition } from '@/lib/event'
import { getCommunityDefinitionFromEvent } from '@/lib/event-metadata'
import { Event } from 'nostr-tools'
import { useMemo } from 'react'
import ClientSelect from '../ClientSelect'
@ -11,7 +11,7 @@ export default function CommunityDefinition({
event: Event
className?: string
}) {
const metadata = useMemo(() => getCommunityDefinition(event), [event])
const metadata = useMemo(() => getCommunityDefinitionFromEvent(event), [event])
const communityNameComponent = (
<div className="text-xl font-semibold line-clamp-1">{metadata.name}</div>

View file

@ -1,4 +1,4 @@
import { getGroupMetadata } from '@/lib/event'
import { getGroupMetadataFromEvent } from '@/lib/event-metadata'
import { Event } from 'nostr-tools'
import { useMemo } from 'react'
import ClientSelect from '../ClientSelect'
@ -13,7 +13,7 @@ export default function GroupMetadata({
originalNoteId?: string
className?: string
}) {
const metadata = useMemo(() => getGroupMetadata(event), [event])
const metadata = useMemo(() => getGroupMetadataFromEvent(event), [event])
const groupNameComponent = (
<div className="text-xl font-semibold line-clamp-1">{metadata.name}</div>

View file

@ -2,7 +2,7 @@ import { useFetchEvent, useTranslatedEvent } from '@/hooks'
import { createFakeEvent } from '@/lib/event'
import { toNjump, toNote } from '@/lib/link'
import { isValidPubkey } from '@/lib/pubkey'
import { generateEventIdFromATag } from '@/lib/tag'
import { generateBech32IdFromATag } from '@/lib/tag'
import { cn } from '@/lib/utils'
import { useSecondaryPage } from '@/PageManager'
import { Event } from 'nostr-tools'
@ -70,7 +70,7 @@ function HighlightSource({ event }: { event: Event }) {
return sourceTag[1]
}
if (sourceTag[0] === 'a') {
return generateEventIdFromATag(sourceTag)
return generateBech32IdFromATag(sourceTag)
}
}, [sourceTag])
const pubkey = useMemo(() => {

View file

@ -1,5 +1,5 @@
import { Badge } from '@/components/ui/badge'
import { getLiveEventMetadata } from '@/lib/event'
import { getLiveEventMetadataFromEvent } from '@/lib/event-metadata'
import { useScreenSize } from '@/providers/ScreenSizeProvider'
import { Event } from 'nostr-tools'
import { useMemo } from 'react'
@ -8,7 +8,7 @@ import Image from '../Image'
export default function LiveEvent({ event, className }: { event: Event; className?: string }) {
const { isSmallScreen } = useScreenSize()
const metadata = useMemo(() => getLiveEventMetadata(event), [event])
const metadata = useMemo(() => getLiveEventMetadataFromEvent(event), [event])
const liveStatusComponent =
metadata.status &&

View file

@ -1,5 +1,5 @@
import { Badge } from '@/components/ui/badge'
import { getLongFormArticleMetadata } from '@/lib/event'
import { getLongFormArticleMetadataFromEvent } from '@/lib/event-metadata'
import { useScreenSize } from '@/providers/ScreenSizeProvider'
import { Event } from 'nostr-tools'
import { useMemo } from 'react'
@ -14,7 +14,7 @@ export default function LongFormArticle({
className?: string
}) {
const { isSmallScreen } = useScreenSize()
const metadata = useMemo(() => getLongFormArticleMetadata(event), [event])
const metadata = useMemo(() => getLongFormArticleMetadataFromEvent(event), [event])
const titleComponent = <div className="text-xl font-semibold line-clamp-2">{metadata.title}</div>

View file

@ -1,8 +1,8 @@
import { useSecondaryPage } from '@/PageManager'
import { ExtendedKind } from '@/constants'
import {
extractImageInfosFromEventTags,
getParentEventId,
getImageInfosFromEvent,
getParentBech32Id,
getUsingClient,
isNsfwEvent,
isPictureEvent
@ -47,11 +47,11 @@ export default function Note({
const { push } = useSecondaryPage()
const { isSmallScreen } = useScreenSize()
const parentEventId = useMemo(
() => (hideParentNotePreview ? undefined : getParentEventId(event)),
() => (hideParentNotePreview ? undefined : getParentBech32Id(event)),
[event, hideParentNotePreview]
)
const imageInfos = useMemo(
() => (isPictureEvent(event) ? extractImageInfosFromEventTags(event) : []),
() => (isPictureEvent(event) ? getImageInfosFromEvent(event) : []),
[event]
)
const usingClient = useMemo(() => getUsingClient(event), [event])