diff --git a/src/lib/cards/core/ImageCard/ImageCard.svelte b/src/lib/cards/core/ImageCard/ImageCard.svelte
index b41d671..1026835 100644
--- a/src/lib/cards/core/ImageCard/ImageCard.svelte
+++ b/src/lib/cards/core/ImageCard/ImageCard.svelte
@@ -3,21 +3,40 @@
import type { ContentComponentProps } from '../../types';
import { qrOverlay } from '$lib/components/qr/qrOverlay.svelte';
import { getImage } from '$lib/helper';
+ import { openImageViewer } from '$lib/components/image-viewer/imageViewer.svelte';
let { item = $bindable(), isEditing }: ContentComponentProps = $props();
const did = getDidContext();
+
+ let src = $derived(getImage(item.cardData, did, 'image'));
+ let clickable = $derived(!item.cardData.href && !isEditing && !!src);
-{#key getImage(item.cardData, did, 'image')}
-
+{#key src}
+ {#if clickable}
+
+ {:else}
+
+ {/if}
{/key}
{#if item.cardData.href && !isEditing}
+ {#if isEditing}
+
+ {:else}
+
+ {/if}
{/if}
{#if !decryptedUrl}
--
2.51.2
From 0c8d76fc668da8f141eed48550b2f6a8398a0571 Mon Sep 17 00:00:00 2001
From: Florian <45694132+flo-bit@users.noreply.github.com>
Date: Thu, 16 Apr 2026 20:21:57 +0200
Subject: [PATCH 2/2] make site faster
---
src/app.d.ts | 9 ++-
src/app.html | 2 +
src/lib/cache.ts | 60 +++++++++++++++++++
src/lib/cards/media/PopfeedReviews/index.ts | 1 +
src/lib/cards/media/StatusphereCard/index.ts | 1 +
src/lib/cards/media/TealFMPlaysCard/index.ts | 1 +
src/lib/cards/social/BlueskyPostCard/index.ts | 1 +
src/lib/cards/social/GuestbookCard/index.ts | 1 +
.../social/LatestBlueskyPostCard/index.ts | 1 +
src/lib/cards/types.ts | 5 ++
src/lib/website/load.ts | 23 ++++++-
.../[[actor=actor]]/(pages)/+layout.server.ts | 17 +++++-
12 files changed, 118 insertions(+), 4 deletions(-)
diff --git a/src/app.d.ts b/src/app.d.ts
index 3cf574a..c94ea08 100644
--- a/src/app.d.ts
+++ b/src/app.d.ts
@@ -1,4 +1,9 @@
-import type { KVNamespace, D1Database } from '@cloudflare/workers-types';
+import type {
+ KVNamespace,
+ D1Database,
+ ExecutionContext,
+ CacheStorage
+} from '@cloudflare/workers-types';
import type { OAuthSession } from '@atcute/oauth-node-client';
import type { Client } from '@atcute/client';
import type { Did } from '@atcute/lexicons';
@@ -26,6 +31,8 @@ declare global {
COOKIE_SECRET: string;
CRON_SECRET: string;
};
+ context: ExecutionContext;
+ caches: CacheStorage & { default: Cache };
}
}
}
diff --git a/src/app.html b/src/app.html
index c4f961f..be75a2d 100644
--- a/src/app.html
+++ b/src/app.html
@@ -3,6 +3,8 @@