From 29a57cbff0ef16713c6f4c665dfeecadc1b4c578 Mon Sep 17 00:00:00 2001 From: Deploy Bot Date: Sat, 7 Mar 2026 10:25:48 +0900 Subject: [PATCH] =?UTF-8?q?fix:=20=EC=B6=95=ED=95=98=EB=A9=94=EC=8B=9C?= =?UTF-8?q?=EC=A7=80=20=ED=85=8D=EC=8A=A4=ED=8A=B8=20=EB=A1=A4=EB=A7=81?= =?UTF-8?q?=EA=B3=BC=20=EC=9D=B4=EB=AF=B8=EC=A7=80=20=EB=B0=B0=EB=84=88=20?= =?UTF-8?q?=EC=8B=B1=ED=81=AC=20=EB=A7=9E=EC=B6=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 이미지 배너가 별도 필터링된 배열을 사용하여 텍스트 롤링과 다른 축하메시지를 보여주던 문제 수정. 동일한 인덱스 사용. --- .../ui/damoang-banner/damoang-banner.svelte | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/apps/web/src/lib/components/ui/damoang-banner/damoang-banner.svelte b/apps/web/src/lib/components/ui/damoang-banner/damoang-banner.svelte index a05736b87..f0cb599fc 100644 --- a/apps/web/src/lib/components/ui/damoang-banner/damoang-banner.svelte +++ b/apps/web/src/lib/components/ui/damoang-banner/damoang-banner.svelte @@ -45,20 +45,16 @@ // 공유 스토어에서 축하메시지 가져오기 let storeCelebrations = $derived(getCelebrations()); let storeIndex = $derived(getCurrentIndex()); - // 이미지 타입만 필터링 - let imageCelebrations = $derived( - storeCelebrations.filter((b) => !b.display_type || b.display_type === 'image') - ); - // 최종 선택된 배너 (축하메시지 or 프리미엄 광고) let adsBanner = $state(null); let loading = $state(true); let useFallback = $state(false); + // 텍스트 롤링과 동일한 인덱스 사용 (싱크) let celebrationBanner = $derived.by(() => { if (!showCelebration || useFallback || adsBanner) return null; - if (imageCelebrations.length === 0) return null; - return imageCelebrations[storeIndex % imageCelebrations.length] ?? null; + if (storeCelebrations.length === 0) return null; + return storeCelebrations[storeIndex % storeCelebrations.length] ?? null; }); // position → 다모앙 광고 서버 position 매핑 @@ -110,7 +106,7 @@ loading = false; // 축하메시지도 광고도 없으면 GAM 폴백 (스토어 로드 대기) await new Promise((r) => setTimeout(r, 500)); - if (!adsBanner && imageCelebrations.length === 0) { + if (!adsBanner && storeCelebrations.length === 0) { useFallback = true; } } else {