feat(M02): 흐름도 패널 머리에 「표준 표」 단추 — 단위 · 금액 표준 모달(renderStandards title false) · 보기만이면 칸 · 단추 막음

- 시험판 페이지를 지워 사라진 표준 표 여는 길을 패널로 옮김 · 고치기는 시스템 관리자만(readOnly 면 fieldset 으로 막음)
- typecheck · DataFlow 전부 검사 초록 · 시험 2 통과 · ORCA: 모달 「표준 표」 줄 80 · 고치기 열림 / 보기만 막힘

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Ly2oHAaTDYRjcniAmHR81z
This commit is contained in:
2026-10-02 07:56:33 +09:00
co-authored by Claude Opus 5.5
parent e5a1cdf841
commit 8e35375c54
@@ -10,12 +10,15 @@
import { currentLanguageIndex } from "@ui/ui_template_locale";
import { createButton, el } from "@ui/ui_template_elements";
import { openModal } from "@ui/ui_template_modal";
import type { CfLogic } from "./M02_DF_Model";
import { createPaper } from "./M02_DF_Paper";
import { renderStandards } from "./M02_DF_Standards";
import "./M02_DF_Panel.css";
const TEXT = {
Big: ["크게 보기", "Full screen"],
Standards: ["표준 표", "Standards"],
Toggle: ["흐름도", "Flow"],
ToggleOpen: ["흐름도 펴기", "Open the flow panel"],
ToggleClose: ["흐름도 접기", "Collapse the flow panel"],
@@ -122,9 +125,24 @@ export function mountFlowPanel(host: HTMLElement, opts: FlowPanelOpts): FlowPane
toggle,
el("strong", { className: "m02-dfp__title", text: opts.title }),
sm(tf("Big"), () => expand()),
sm(tf("Standards"), () => openStandards()),
],
});
/** 「표준 표」(단위 · 금액 표준) — 고치기는 시스템 관리자만(보기만이면 칸 · 단추를 막음) */
const openStandards = (): void => {
openModal({
title: tf("Standards"),
closeLabel: tf("Close"),
mount: (box: HTMLElement) => {
const lock = el("fieldset", { className: "m02-dfp__lock" });
lock.disabled = !!opts.readOnly;
box.append(lock);
renderStandards(lock, { change: () => paper.redraw() }, { title: false });
},
});
};
/* 펼친 패널 */
const costBox = el("details", {
className: "m02-dfp__cost",