+ {badge ? (
+
+ ) : (
+
)}
-
+
+ {displayName && (
+
{displayName}
+ )}
+ {badge?.description && (
+
{badge.description}
+ )}
+
+
diff --git a/src/pages/PostDetailPage.tsx b/src/pages/PostDetailPage.tsx
index 550644fe..228c8f16 100644
--- a/src/pages/PostDetailPage.tsx
+++ b/src/pages/PostDetailPage.tsx
@@ -1665,7 +1665,7 @@ function PostDetailContent({ event }: { event: NostrEvent }) {
) : isFileMetadata ? (
) : isTheme ? (
-
+
) : isVoiceMessage ? (
) : isCommunity ? (
diff --git a/src/pages/ProfilePage.tsx b/src/pages/ProfilePage.tsx
index fae9916e..a97d13b5 100644
--- a/src/pages/ProfilePage.tsx
+++ b/src/pages/ProfilePage.tsx
@@ -46,6 +46,7 @@ import { genUserName } from '@/lib/genUserName';
import { canZap } from '@/lib/canZap';
import { shareOrCopy } from '@/lib/share';
+import { openUrl } from '@/lib/downloadFile';
import { EmojifiedText } from '@/components/CustomEmoji';
import { BioContent } from '@/components/BioContent';
import { EmbeddedNote } from '@/components/EmbeddedNote';
@@ -790,11 +791,7 @@ function ProfileImageLightbox({ imageUrl, onClose }: { imageUrl: string; onClose
const handleDownload = (e: React.MouseEvent) => {
e.stopPropagation();
e.preventDefault();
- const a = document.createElement('a');
- a.href = imageUrl;
- a.target = '_blank';
- a.rel = 'noopener noreferrer';
- a.click();
+ openUrl(imageUrl);
};
return (
diff --git a/vite.config.ts b/vite.config.ts
index 7c54ce0e..cef0c56e 100644
--- a/vite.config.ts
+++ b/vite.config.ts
@@ -150,6 +150,9 @@ export default defineConfig(() => {
build: {
target: 'esnext',
},
+ optimizeDeps: {
+ exclude: ['@capacitor/filesystem', '@capacitor/share'],
+ },
resolve: {
alias: {
"@": path.resolve(__dirname, "./src"),