fix(472-5 관 폼): 열린 관 폼이 밖에서 바뀐 값(되돌리기 · 횡단 보기)으로 다시 엶
- 흠(화면에서 찾음): ↶ 뒤 종단 「구조물 배치」 관 폼 칸이 옛 값(관경 1200)을 쥐고, 다른 칸(동물이동형)을 바꾸면 옛 관경이 초안에 되쓰여 되돌림이 사라짐 - setPipeFacilities — 고른 관 값이 바뀌면 loadPipeForm(실시간 반영 중 · 임시 배치는 둠) - 시험 test_472_5_shop_owner 배선 줄 · 화면 검증_sub2: 관경 바꿈 → ↶ 폼 1000 → 동물이동형 바꿔도 관경 1000 · 횡단 보기 관경 1500 → 종단 폼 1500 · ↶ ↷ 따라감 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -573,8 +573,16 @@ export function createStructuresSection(
|
||||
},
|
||||
getStructures: () => [...structures],
|
||||
setPipeFacilities(pipes) {
|
||||
const before = pipeFacilities;
|
||||
pipeFacilities = pipes.map((pipe) => ({ ...pipe }));
|
||||
followPipeList(panelContext, pipeFacilities);
|
||||
// 열린 관 폼 — 값이 밖에서 바뀌면(되돌리기 · 다른 보기) 새 값으로 다시 엶 · 고치던 실시간 반영 · 임시 배치는
|
||||
// 둠(472-5 · 옛 칸 값이 다음 조작에 되쓰이던 흠)
|
||||
const at = selectedPipeChainage;
|
||||
if (at === null || applyingLive || tempPipeChainage !== null) return;
|
||||
const near = (pipe: PipeFacilityItem) => Math.abs(pipe.chainage_m - at) < PIPE_MATCH_M;
|
||||
const now = pipeFacilities.find(near);
|
||||
if (now && JSON.stringify(now) !== JSON.stringify(before.find(near))) loadPipeForm(now);
|
||||
},
|
||||
selectPipeByChainage(chainageM) {
|
||||
if (chainageM !== null) callbacks.onReveal?.();
|
||||
|
||||
@@ -116,5 +116,9 @@ def test_배선() -> None:
|
||||
assert panel.index("seen.structures = JSON.stringify(structures);") < panel.index(
|
||||
"writePendingStructures(deps.projectId, structures);"
|
||||
)
|
||||
# 열린 관 폼 — 밖에서 바뀐 값(되돌리기 · 다른 보기)으로 다시 엶(옛 칸 값 되쓰던 흠)
|
||||
form = _read("B05_Profile", "B05_Profile_UI_Structures_Panel.ts")
|
||||
assert "if (at === null || applyingLive || tempPipeChainage !== null) return;" in form
|
||||
assert "JSON.stringify(now) !== JSON.stringify(before.find(near))) loadPipeForm(now);" in form
|
||||
history = _read("B05_Profile", "B05_Profile_UI_Profile_History.ts")
|
||||
assert "announceDesignStore(projectId);" in history
|
||||
|
||||
Reference in New Issue
Block a user