import { Link } from "react-router-dom"; import ReactMarkdown from "react-markdown"; import { TwitterTweetEmbed } from "react-twitter-embed"; import { UrlRegex, FileExtensionRegex, MentionRegex, InvoiceRegex, YoutubeUrlRegex, TweetUrlRegex, HashtagRegex } from "../Const"; import { eventLink, hexToBech32, profileLink } from "../Util"; import Invoice from "./Invoice"; import LazyImage from "./LazyImage"; import Hashtag from "./Hashtag"; import './Text.css' import { useMemo } from "react"; import Tag from "../nostr/Tag"; import { MetadataCache } from "../db/User"; function transformHttpLink(a: string) { try { const url = new URL(a); const youtubeId = YoutubeUrlRegex.test(a) && RegExp.$1; const tweetId = TweetUrlRegex.test(a) && RegExp.$2; const extension = FileExtensionRegex.test(url.pathname.toLowerCase()) && RegExp.$1; if (extension) { switch (extension) { case "gif": case "jpg": case "jpeg": case "png": case "bmp": case "webp": { return ; } case "mp4": case "mov": case "mkv": case "avi": case "m4v": { return