- 서버 M02_Doc_Match · M02_Doc_Match_Note · M02_Doc_Match_Value · M02_Doc_MatchSk 지움 · 길 POST …/sangeun/{키}/match 지움
- 화면 판정 띠(M02_MasterTemplete_Sangeun_MatchBand · logic/M02_Sangeun_Match) · [연결 찾기] · [바꾸기] · [되돌리기] 단추 · 원문 카드 판정 글 지움
- 옛 SK 기록 `가져온.원본.연결후보` · 바꾼 SK `가져온보관` = 읽기만 그대로(카드 · 깨지지 않음 · 지우지 않음)
- 시험 지움: test_810_4_match · test_812_2_match_logic · test_812_4_rate_value · test_812_11_match_values · helper_810_4_sweep(걷은 모듈 지킴) · test_814_1 의 꼬리 뗀 맞대기 · 공구손료 비목 · 띠 글 · 도우미 줄(연결 찾기 몫)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
32 lines
1.4 KiB
TypeScript
32 lines
1.4 KiB
TypeScript
/* =============================================================================
|
|
* M02_MasterTemplete_Sangeun_View.ts
|
|
* 단가산출(SK) 상세 자리(717-2a) — 편집 칸 종류 sangeun 이 여는 곳(UI_Main 갈래 한 줄).
|
|
* 717-2b = 상세 · 고침(`Sangeun_Detail.ts` mountSangeunDetail) · [저장]은 그 손잡이 `getDoc` · 고침 알림 `opt.onChanged`.
|
|
* 804-8 = 페이지 [저장] 한 번에 수식도(`flush` 먼저 · 새 판) · 보기 고르기는 머리 줄 `slot`.
|
|
* ========================================================================== */
|
|
|
|
import { mountSangeunDetail } from "./M02_MasterTemplete_Sangeun_Detail";
|
|
import type { Selection } from "./M02_MasterTemplete_UI_Main";
|
|
|
|
/** 고름(층 · 주인 · SK 키 = name) + 읽기만 · 고침 알림 */
|
|
export type SangeunViewOptions = Pick<Selection, "layer" | "owner" | "name"> & {
|
|
readOnly: boolean;
|
|
onChanged: (dirty: boolean) => void;
|
|
/** 수식 탭 저장 뒤 그 SK 새 판(802-4b-2) */
|
|
onVersion?: (version: string) => void;
|
|
/** 머리 줄 빈 자리(804-8) */
|
|
slot?: HTMLElement;
|
|
};
|
|
|
|
export function mountSangeunView(
|
|
host: HTMLElement,
|
|
doc: unknown,
|
|
opt: SangeunViewOptions,
|
|
): { getDoc: () => Promise<unknown>; destroy: () => void } {
|
|
const one = mountSangeunDetail(host, doc, { ...opt, owner: opt.owner ?? null, source: true }); // 752-1
|
|
return {
|
|
getDoc: () => one.flush().then(() => one.getDoc()),
|
|
destroy: () => one.destroy(),
|
|
};
|
|
}
|