refactor(M02): 띠 알림 · 빈 상태 · 보조 글 · 배지 · 탭 · 표 · 목록 줄 · 도구줄 · 체크를 부품으로 (PLAN 553-5)

- DataFlow: 표 넷 = 데이터표 · 함수 판 알림 · 선/알약 경고 · 끊긴 곳 = 띠 알림 · 알약 · 칸 종류 = 배지 · 고르는 줄 = 목록 줄 · 입력 넷 = 입력 · 도구줄 여섯 · 날 색 → 공통 값
- 구조물 옵션 · 구조물 · 도면 · 면적 · 품목 고르기: 판 띠 = 띠 알림 · 한눈/종류별/부품 = 탭 · 표 둘 = 데이터표 · 체크 둘 = 체크 · 카드 · 번호 = 카드 · 배지 · 도면 도구줄
- 일위대가 · 호표 · 실무자료 · 본 화면 · 서고: 알림 = 띠 알림 · 빈 상태 · 보조 글 · 도구줄 여섯 · 옛 보라 별칭 0
- M01 로직 입력칸 = 입력 부품(작은 칸) · 일위대가 상세 줄 수 고정 시험 693 · 지킴 시험 M02 몫 더함

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
2026-10-26 23:44:19 +09:00
co-authored by Claude Opus 5.5
parent 022eff69f5
commit 09134bab84
86 changed files with 583 additions and 705 deletions
@@ -11,6 +11,7 @@ import { wheelZoomsIn } from "../A00_Common/touch_bridge";
import { createButton, el } from "@ui/ui_template_elements";
import { formatMoney } from "../M01_MasterData/M01_MasterData_UI_Logic_Money";
import "./M02_MasterTemplete_Labor_Diagram.css";
import { createEmpty } from "@ui/ui_template_empty";
const TEXT = {
Inputs: ["넣을 값", "Inputs"],
@@ -270,13 +271,13 @@ function mountShell(host: HTMLElement): State {
};
host.replaceChildren(
el("div", {
className: "m02-labordg__bar",
className: "ui-toolbar m02-labordg__bar",
children: [
icon("−", "Zoom_Out", () => zoomAt(st, 1 / 1.2)),
icon("+", "Zoom_In", () => zoomAt(st, 1.2)),
icon("⤢", "Fit", () => fit(st, true)),
label,
el("span", { className: "m02-labordg__hint", text: td("Hint") }),
el("span", { className: "ui-text ui-text--muted", text: td("Hint") }),
],
}),
viewport,
@@ -369,7 +370,7 @@ export function renderComboDiagram(
}
const { world } = st;
if (!data.logics.length) {
world.replaceChildren(el("p", { className: "m02-labordg__none", text: td("None") }));
world.replaceChildren(createEmpty({ text: td("None"), small: true }));
return;
}
const hasValue = data.logics.some((l) => isValue(l.out));