From 8ee6d75b3dd16bab6fb118d8b1ec51364e1ffee8 Mon Sep 17 00:00:00 2001 From: SeongHyun Kim Date: Tue, 24 Mar 2026 18:33:53 +0900 Subject: [PATCH] =?UTF-8?q?fix:=20pop-button=20showCartBadge=20=EC=86=8D?= =?UTF-8?q?=EC=84=B1=EC=9C=BC=EB=A1=9C=20=EC=9E=A5=EB=B0=94=EA=B5=AC?= =?UTF-8?q?=EB=8B=88=20=EB=AA=A8=EB=93=9C=20=ED=99=9C=EC=84=B1=ED=99=94=20?= =?UTF-8?q?cart-save=20=ED=83=9C=EC=8A=A4=ED=81=AC=20=EC=97=86=EC=9D=B4=20?= =?UTF-8?q?=EB=B0=B0=EC=A7=80=EB=A7=8C=20=ED=91=9C=EC=8B=9C=ED=95=98?= =?UTF-8?q?=EB=8A=94=20=EA=B2=BD=EC=9A=B0=EC=97=90=EB=8F=84=20isCartMode?= =?UTF-8?q?=EA=B0=80=20=ED=99=9C=EC=84=B1=ED=99=94=EB=90=98=EB=8F=84?= =?UTF-8?q?=EB=A1=9D=20showCartBadge=20=EC=86=8D=EC=84=B1=20=EC=A1=B0?= =?UTF-8?q?=EA=B1=B4=EC=9D=84=20=EC=B6=94=EA=B0=80=ED=95=9C=EB=8B=A4.=20Co?= =?UTF-8?q?-Authored-By:=20Claude=20Sonnet=204.6=20?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- frontend/lib/registry/pop-components/pop-button.tsx | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/frontend/lib/registry/pop-components/pop-button.tsx b/frontend/lib/registry/pop-components/pop-button.tsx index a3be3e59..1f0d4181 100644 --- a/frontend/lib/registry/pop-components/pop-button.tsx +++ b/frontend/lib/registry/pop-components/pop-button.tsx @@ -652,11 +652,12 @@ export function PopButtonComponent({ config, label, isDesignMode, screenId, comp const { subscribe, publish } = usePopEvent(screenId || "default"); // 장바구니 모드 상태 (v1 preset 또는 v2 tasks에 cart-save가 있으면 활성) + // showCartBadge: true인 경우에도 활성화 (cart-save 없이 배지만 표시할 때) const v2Tasks = (config && "tasks" in config && Array.isArray((config as any).tasks)) ? (config as any).tasks as PopButtonTask[] : null; const hasCartSaveTask = !!v2Tasks?.some((t) => t.type === "cart-save"); - const isCartMode = config?.preset === "cart" || hasCartSaveTask; + const isCartMode = config?.preset === "cart" || hasCartSaveTask || !!(config as any)?.showCartBadge; const isInboundConfirmMode = config?.preset === "inbound-confirm"; const [cartCount, setCartCount] = useState(0); const [cartIsDirty, setCartIsDirty] = useState(false);