Files
Aislo/A00_Common/design/design_page_route.ts
T
eomsangdonandClaude Opus 5.5 c77e44ab07 refactor(B05·B06 한 페이지): 노선 id 한 칸 — 출처 다섯을 페이지 자료 줄 하나로 (386-2b)
- design_page_route 새로(칸 · 끄는 모듈 없음) · 채움 = design_page_data pageSectionContext(횡단 context · 세션 캐시) 하나
- 읽는 곳 = 종단 보기 [저장] 몫 · 횡단 보기 · 종단도 render · 평면 횡단 판(노선 번호 훑기 지움) · 3D · 측점 그림
- 페이지 떠남에 칸 비움 · 저장 정본 바뀜엔 그대로
- design_profile 700줄 앞 쪼갬(design_profile_context — 만들 때 넘기는 것 · 미리보기 대기)
- 시험 test_384_2b · 평면 횡단 판 시험 = 페이지 노선 값만

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01TteK8mfYZetk5P3bEZkyVZ
2026-10-17 19:08:37 +09:00

18 lines
1007 B
TypeScript

/* =============================================================================
* A00_Common/design/design_page_route.ts
* 한 페이지 노선 id 한 칸(386-2b) — 채우는 곳은 페이지 자료 줄 `pageSectionContext`(design_page_data) 하나 ·
* 읽는 곳은 `pageRouteId` 만. 노선이 바뀌면 페이지를 통째 다시 세움(remountRoute) → 페이지 동안 고정.
* 끌어오는 모듈 없음(평면 횡단 판 · 묶음 시험이 화면 · 서버 창구를 안 끌게).
* ========================================================================== */
const routes = new Map<string, number>();
/** 이 페이지의 노선 id(없으면 null). */
export const pageRouteId = (projectId: string): number | null => routes.get(projectId) ?? null;
/** 자료 줄만 부름 — context 노선(null = 비움). */
export function setPageRouteId(projectId: string, routeId: number | null): void {
if (routeId === null) routes.delete(projectId);
else routes.set(projectId, routeId);
}