From 74c20420c4535bb2ffd96f22bdd09dd0f04b2fbf Mon Sep 17 00:00:00 2001 From: umsangdon Date: Mon, 5 Oct 2026 19:50:28 +0900 Subject: [PATCH] =?UTF-8?q?=EF=BB=BFfix(M02):=2051-7=20=EC=9D=BC=EC=9C=84?= =?UTF-8?q?=EB=8C=80=EA=B0=80=20=ED=91=9C=20=EC=A4=84=20=EC=9D=B4=EB=A6=84?= =?UTF-8?q?=20=EC=95=9E=20=E2=96=B8/=E2=96=BE=20=ED=99=94=EC=82=B4?= =?UTF-8?q?=ED=91=9C=20=EC=97=86=EC=95=B0=20=E2=80=94=20=EC=A4=84=20?= =?UTF-8?q?=EB=88=84=EB=A6=84=20=ED=8E=BC=EC=B9=A8=20=C2=B7=20=EA=B0=99?= =?UTF-8?q?=EC=9D=80=20=EC=A4=84=20=EB=8B=A4=EC=8B=9C=20=EB=88=84=EB=A6=84?= =?UTF-8?q?=20=EC=A0=91=ED=9E=98=20=EA=B7=B8=EB=8C=80=EB=A1=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 카드 · 상세 같은 표(logicTable) — 화살표 span · .m02-labrow__fold 스타일 걷어냄 - ui_checks 51-2 시나리오 — 열림 = 고른 줄 수 · 화살표 = 0 기대 Co-Authored-By: Claude Opus 5.5 Claude-Session: https://claude.ai/code/session_01MgChuAcyBqUkhHMTXomQC7 --- M02_MasterTemplete/M02_MasterTemplete_Labor.css | 5 ----- M02_MasterTemplete/M02_MasterTemplete_Labor_Rows.ts | 3 +-- resources/tester/ui_checks/51-2_줄_하위행.js | 6 +++--- 3 files changed, 4 insertions(+), 10 deletions(-) diff --git a/M02_MasterTemplete/M02_MasterTemplete_Labor.css b/M02_MasterTemplete/M02_MasterTemplete_Labor.css index b71f69c92..247bdb005 100644 --- a/M02_MasterTemplete/M02_MasterTemplete_Labor.css +++ b/M02_MasterTemplete/M02_MasterTemplete_Labor.css @@ -137,11 +137,6 @@ } /* 줄 접고 폄 표(51-2) · 고른 줄 하위 행 — 이름 들여쓰기 · 흐린 바탕 */ -.m02-labrow__fold { - margin-right: var(--spacing-4); - color: var(--color-text-secondary); -} - .m02-labrow__sub td { background: var(--color-bg); font-size: var(--text-caption); diff --git a/M02_MasterTemplete/M02_MasterTemplete_Labor_Rows.ts b/M02_MasterTemplete/M02_MasterTemplete_Labor_Rows.ts index 16bb85129..94b8ed902 100644 --- a/M02_MasterTemplete/M02_MasterTemplete_Labor_Rows.ts +++ b/M02_MasterTemplete/M02_MasterTemplete_Labor_Rows.ts @@ -7,7 +7,7 @@ * 자재목록 = 코드 · 이름 · 규격 · 수량산출 · 단위 · 가격 다섯(기준 칸 강조) · 기준단가 / 반영 금액(43-3). * 금액은 calc 답(없으면 「…」). * 줄 누름 · 줄 단추(위로 · 아래로 · 옵션 · 삭제 · 묶음 `ui-btn-group`)는 `on` 이 있을 때만(보기 갈래 = 없음) · - * 상세는 줄 누름 = 고름(`selected` 줄 하이라이트 · 이름 앞 ▸/▾ · 그 줄 바로 아래 하위 행 · 51-2) · 넣을 값 모달은 [옵션](47-5). + * 상세는 줄 누름 = 고름(`selected` 줄 하이라이트 · 그 줄 바로 아래 하위 행 · 51-2 · 화살표 없음 51-7) · 넣을 값 모달은 [옵션](47-5). * ========================================================================== */ import { createButton, el } from "@ui/ui_template_elements"; @@ -323,7 +323,6 @@ export function logicTable(data: LogicTableData, on?: RowHandlers): HTMLElement el("td", { className: "m02-labrow__name", children: [ - ...(on ? [el("span", { className: "m02-labrow__fold", text: sel ? "▾" : "▸" })] : []), el("span", { className: "m02-labrow__key", text: row.참조?.키 ?? row.로직 }), el("strong", { text: (row.참조 ? line?.이름 : logic?.이름) ?? row.참조?.키 ?? row.로직, diff --git a/resources/tester/ui_checks/51-2_줄_하위행.js b/resources/tester/ui_checks/51-2_줄_하위행.js index 1b20837d9..cb94ba507 100644 --- a/resources/tester/ui_checks/51-2_줄_하위행.js +++ b/resources/tester/ui_checks/51-2_줄_하위행.js @@ -6,7 +6,7 @@ * 기대 수치(카드 · 상세 같음): * - lines[*].subs ≥ 1 · lines[*].cells = head(칸 수 = 머리 칸 수) · lines[*].next = true(고른 줄 바로 아래) * - lines[*].base ≈ lines[*].subBase · lines[*].applied ≈ lines[*].subApplied(반올림 차 ≤ 하위 행 수) - * - lines[*].open = 1 · lines[*].arrow = "▾"(한 줄만 열림) + * - lines[*].open = 1(한 줄만 열림) · lines[*].arrow = 0(이름 앞 화살표 없음 · 51-7) * - again.subs = 0 · again.selected = 0(같은 줄 다시 = 닫힘) · box = 0(따로 상자 없음) */ (async () => { @@ -58,9 +58,9 @@ subBase: Math.round(subs.reduce((a, s) => a + total(s, ".m02-labrow__base"), 0)), applied: total(tr, ".m02-labrow__applied"), subApplied: Math.round(subs.reduce((a, s) => a + total(s, ".m02-labrow__applied"), 0)), - open: [...tb.querySelectorAll(".m02-labrow__fold")].filter((f) => f.innerText === "▾") + open: rowsOf(tb).filter((r) => r.classList.contains("is-selected")).length, + arrow: [...tb.querySelectorAll(".m02-labrow__name")].filter((d) => /[▸▾]/.test(d.innerText)) .length, - arrow: tr.querySelector(".m02-labrow__fold")?.innerText, names: subs.map((s) => s.querySelector(".m02-labrow__subname").innerText).slice(0, 4), }); }