feat: render embedded invoices (#392)

This commit is contained in:
Daniel Vergara
2025-06-19 08:12:06 -06:00
committed by GitHub
parent d7dc098995
commit f25b742877
7 changed files with 126 additions and 0 deletions

View File

@@ -1,5 +1,6 @@
import {
EmbeddedEmojiParser,
EmbeddedLNInvoiceParser,
EmbeddedHashtagParser,
EmbeddedMentionParser,
EmbeddedNormalUrlParser,
@@ -12,6 +13,7 @@ import { Event } from 'nostr-tools'
import { memo, useMemo } from 'react'
import {
EmbeddedHashtag,
EmbeddedLNInvoice,
EmbeddedMention,
EmbeddedNormalUrl,
EmbeddedWebsocketUrl
@@ -25,6 +27,7 @@ const PictureContent = memo(({ event, className }: { event: Event; className?: s
const nodes = parseContent(event.content, [
EmbeddedNormalUrlParser,
EmbeddedLNInvoiceParser,
EmbeddedWebsocketUrlParser,
EmbeddedHashtagParser,
EmbeddedMentionParser,
@@ -44,6 +47,9 @@ const PictureContent = memo(({ event, className }: { event: Event; className?: s
if (node.type === 'url') {
return <EmbeddedNormalUrl key={index} url={node.data} />
}
if (node.type === 'invoice') {
return <EmbeddedLNInvoice invoice={node.data} key={index} />
}
if (node.type === 'websocket-url') {
return <EmbeddedWebsocketUrl key={index} url={node.data} />
}