fix(cupang): 도장은 또렷하게, 애니메이션은 방금 완료된 것만

- 혼합 박스 도장이 흐리게 보이던 원인: 부모(.cpg-box-title)에 opacity 를
  주면 자식 도장까지 함께 흐려진다 → 제목은 색만 낮추고 도장은 opacity 1.
- 렌더할 때마다 모든 도장에 애니메이션이 다시 걸리던 문제: 이미 찍힌
  항목을 stamped 로 기억해 새로 완료된 도장(.is-new)에만 애니메이션.
  잔여가 다시 생기거나 재계산하면 기록을 지워 다음 완료 때 다시 찍힌다.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
2026-08-29 03:55:35 +09:00
parent 2779a6285d
commit 2d84a20814
9 changed files with 34 additions and 16 deletions
+11
View File
@@ -123,10 +123,21 @@ function dragCardTo(card, target) {
text(".cpg-sum-prod .cpg-sum-prod-nums"));
check("잔여 0 카드는 드래그 불가", $$(".cpg-sum-prod")[0].classList.contains("is-done"));
check("배분 완료 도장 표시", !!$$(".cpg-sum-prod")[0].querySelector(".cpg-stamp"));
check("막 완료된 도장은 애니메이션", $$(".cpg-sum-prod")[0].querySelector(".cpg-stamp").classList.contains("is-new"));
check("제품 카드에 박스명 배지 없음", !$$(".cpg-sum-prod")[0].querySelector(".erp-badge"));
check("센터 합계 2박스/16개", text(".cpg-dist-sum").replace(/\s/g, "").startsWith("2박스16개"),
text(".cpg-dist-sum"));
// 다른 카드를 담아 다시 렌더해도, 이미 찍힌 도장은 애니메이션을 반복하지 않는다
$$(".cpg-sum-prod")[1].click();
$("#cpg-dlg-all").click();
check("기존 도장은 애니메이션 반복 없음",
!$$(".cpg-sum-prod")[0].querySelector(".cpg-stamp").classList.contains("is-new"));
check("새로 완료된 도장만 애니메이션",
$$(".cpg-sum-prod")[1].querySelector(".cpg-stamp").classList.contains("is-new"));
// 되돌려서 뒷 시나리오에 영향 없게
$$(".cpg-dist-del")[1].click();
// ── 수량 직접 수정 (상한 = 잔여 + 자기 수량) ──────
const qty = $(".cpg-dist-item .cpg-dist-qty");
qty.value = "5"; fire(qty, "input");