mirror of
https://github.com/hzrd149/nostrudel.git
synced 2025-09-27 12:07:43 +02:00
handle stemstr links as embeds
This commit is contained in:
@@ -58,7 +58,7 @@ export default function EmbeddedStemstrTrack({ track, ...props }: Omit<CardProps
|
||||
{hashtags.length > 0 && (
|
||||
<Flex wrap="wrap" gap="2">
|
||||
{hashtags.map((hashtag) => (
|
||||
<Tag>#{hashtag}</Tag>
|
||||
<Tag key={hashtag}>#{hashtag}</Tag>
|
||||
))}
|
||||
</Flex>
|
||||
)}
|
||||
|
@@ -1,5 +1,6 @@
|
||||
import { CSSProperties } from "react";
|
||||
import { Box, useColorMode } from "@chakra-ui/react";
|
||||
import { EmbedEventPointer } from "../embed-event";
|
||||
|
||||
const setZIndex: CSSProperties = { zIndex: 1, position: "relative" };
|
||||
|
||||
@@ -110,3 +111,13 @@ export function renderSongDotLinkUrl(match: URL) {
|
||||
></Box>
|
||||
);
|
||||
}
|
||||
|
||||
// nostr:nevent1qqs95384ynfcgugz29u25ltl7qs6d5chve8ksw7ms3ega8eyem3n5agpz9mhxue69uhkummnw3e82efwvdhk6qgnwaehxw309aex2mrp09skymr99ehhyec6lyxqd
|
||||
export function renderStemstrUrl(match: URL) {
|
||||
if (match.hostname !== "stemstr.app") return null;
|
||||
|
||||
const [_, base, id] = match.pathname.split("/");
|
||||
if (base !== "thread" || id.length !== 64) return null;
|
||||
|
||||
return <EmbedEventPointer pointer={{ type: "nevent", data: { id, relays: ["wss://relay.stemstr.app"] } }} />;
|
||||
}
|
||||
|
@@ -22,6 +22,7 @@ import {
|
||||
renderGenericUrl,
|
||||
renderSongDotLinkUrl,
|
||||
embedCashuTokens,
|
||||
renderStemstrUrl,
|
||||
} from "../embed-types";
|
||||
import { LightboxProvider } from "../lightbox-provider";
|
||||
import { renderRedditUrl } from "../embed-types/reddit";
|
||||
@@ -42,6 +43,7 @@ function buildContents(event: NostrEvent | DraftNostrEvent, simpleLinks = false)
|
||||
renderSpotifyUrl,
|
||||
renderTidalUrl,
|
||||
renderSongDotLinkUrl,
|
||||
renderStemstrUrl,
|
||||
renderImageUrl,
|
||||
renderVideoUrl,
|
||||
simpleLinks ? renderGenericUrl : renderOpenGraphUrl,
|
||||
|
Reference in New Issue
Block a user