Files
Aislo/B05_Profile/B05_Profile_UI_Profile_Panel.ts
T
eomsangdonandClaude Opus 5.5 acd30ba32c refactor(B05·B06): 종단도 한 벌 마무리 — 배수유역도 판(createDrainageSide)을 두 보기에 끼움 · 켬끔 단추 · 흙덮기 강제 값 한 칸 · 계획고 초안 키를 등록부(alignment-draft)로
- 두 보기 같은 오른쪽 판 · 같은 켬끔 값(drainage-visible) · 단추는 도구줄 오른쪽(Profile_SideTool)
- B06 배수유역도 노선 평면선 = 최신 노선 캐시(없으면 한 번 읽기)
- 최소 흙덮기 강제 여부를 두 보기가 한 칸(profile-enforce-min-cover)에서 봄 — B06 막기 동작
- 계획고 초안 b05-profile-alignment-draft:{노선} → aislo:draft:alignment-draft:{프로젝트}:{노선}(옛 값 옮겨 받음) · 되돌리기 사진 · [초기화] 쓸기 포함
- 세로 창 고정을 _Profile_Drag 로(design_profile 684줄) · 시험 test_design_profile_single 6건

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BU9gbNE3aWFUvE61pS2WGt
2026-09-29 20:47:40 +09:00

39 lines
1.9 KiB
TypeScript

/* =============================================================================
* B05_Profile_UI_Profile_Panel.ts
* 종단 보기의 하단 종단도 — 종단도 한 벌(`A00_Common/design/design_profile.ts`)에
* 오른쪽 판(배수유역도)을 끼워 만든다(계획서 24-2c).
*
* 본체는 종단도 한 벌로 옮겼다. 여기는 종단 보기가 부르던 이름 · 모양을 지킨다 —
* 페이지는 `drainage` 로 배수유역도를 바로 부른다.
* ========================================================================== */
import { createDesignProfile } from "../A00_Common/design/design_profile";
import type { DesignSideBoard } from "../A00_Common/design/design_profile";
import { drainageSide, drainageSideTool } from "./B05_Profile_UI_Profile_SideTool";
import type { RouteProfilePanelCallbacks } from "./B05_Profile_UI_Profile_Panel_Types";
/** 콜백 타입은 `_Panel_Types` 에 있다 — 옛 임포트 경로가 그대로 동작하도록 다시 내보낸다. */
export type { RouteProfilePanelCallbacks } from "./B05_Profile_UI_Profile_Panel_Types";
export function createRouteProfilePanel(
projectId: string,
/** 측점 선택 변경 — 같은 측점 재선택·빈 곳 클릭이면 null(해제)로 알린다. */
onSelectStation: (stationId: string | null) => void,
/** [초기선 복원] 클릭 시 함께 실행(비정규 측점 등 다른 조작값도 초기화하려고 Page가 넘긴다). */
onResetAll?: () => void,
callbacks?: RouteProfilePanelCallbacks,
) {
const profile = createDesignProfile({
projectId,
view: "profile",
side: drainageSide,
sideTool: drainageSideTool,
onSelectStation,
onResetAll,
callbacks,
});
/** 배수유역도 패널 — 경로 확정 흐름에서 유역선 편집 저장 여부를 묻는 데 쓴다. */
const drainage = profile.side as DesignSideBoard;
return { ...profile, drainage };
}