Merge remote-tracking branch 'origin/sub_laptop_1' into sub_laptop_2

# Conflicts:
#	M02_MasterTemplete/M02_MasterTemplete_UI_Main.ts
This commit is contained in:
2026-09-28 10:05:10 +09:00
@@ -166,7 +166,11 @@ export function createMain(isAdmin: boolean, onSaved?: () => void): MainHandle {
const struct = at.layer === "system" && at.name === STRUCTURE_TABLE ? buildPanel() : null;
if (struct) await struct.reload();
panel = struct;
const columns = (): StructureColumn[] => sheet?.getDoc().열 ?? [];
// ⚠ sheet 는 바깥(다시 열기 등으로 drop() 이 null 로 되돌리는) 값 — 표 부품이
// 헐린 뒤에도 안 떼인 이벤트가 이 줄을 부르면 sheet?.getDoc() 가 undefined 라
// 그 뒤 .열 을 그대로 읽으면 죽는다(2026-09-28 사용자 보고 — 열 고른 뒤 CAD
// 불러오기 오류). getDoc() 뒤에도 옵셔널 체이닝을 이어야 한다.
const columns = (): StructureColumn[] => sheet?.getDoc()?.열 ?? [];
editor = create(host, doc, {
mode: at.layer === "project" ? "project" : "master",
onChange: () => (dirty = !readOnly),