fix(B07): 도각 편집 띠 사이드바 이관·깨진 그림에 렌더 루프 정지 해소

- 편집 띠를 CAD 위 절대배치에서 도면 목록 하단 액션 칸으로 옮김 —
  1행 편집 띠, 2행 [도각 편집]·[현재 도면 확정] (리본과 겹쳐 문구·버튼이 찌그러지던 문제)
- `drawImage` 가 'broken' 상태 그림에서 던지던 예외로 렌더 루프가 끊겨
  이후 모든 도면이 백지로 남던 결함 해소 — 못 읽은 그림은 건너뜀
- `ImageEntity` 가 자리표시자(`{{회사로고}}`)를 절대 URL 로 굳히던 저장 경로 수정 —
  원본 주소를 보관해 그대로 돌려주고, 자리표시자는 요청조차 하지 않음
- 버튼 줌(ZOOMIN·ZOOMOUT)이 배율만 바꿔 도면이 화면 밖으로 밀리던 것을
  화면 중심 고정으로 수정

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-09-02 18:12:28 +09:00
co-authored by Claude Opus 5
parent 2bdad0947b
commit 65d6fd261f
6 changed files with 85 additions and 21 deletions
+33 -12
View File
@@ -126,11 +126,25 @@
/* 하단 고정·배경·상단 구분선은 공용 ui-sidebar-actions가 맡는다(2026-08-18 통합).
여기서는 B07 고유 여백만 남긴다. */
/* 액션 칸은 세로 두 줄 — 1행 도각 편집 띠, 2행 [도각 편집]·[현재 도면 확정].
공용 .ui-sidebar-actions는 가로 한 줄이라 방향과 늘어남을 여기서 되돌린다. */
.b07-drawing-actions {
flex-direction: column;
padding-top: var(--spacing-12);
}
.b07-drawing-actions > button {
.b07-drawing-actions > * {
flex: none;
}
.b07-drawing-actions__row {
display: flex;
gap: var(--spacing-8);
}
.b07-drawing-actions__row > button {
flex: 1 1 0;
min-width: 0;
width: 100%;
}
@@ -271,29 +285,36 @@
color: var(--color-text-muted);
}
/* 도각 편집 모드 띠 — CAD 위에 겹쳐 편집 중임을 알리고 [완료]·[취소]를 준다. */
/* 도각 편집 모드 띠 — 도면 목록 하단 액션 칸의 1행. CAD 위에 떠 있던 배치는 리본과
겹쳐 문구가 접히고 버튼이 찌그러졌다(2026-09-02 사용자 지시로 사이드바로 옮김). */
.b07-frame-edit {
position: absolute;
z-index: 3;
top: 8px;
left: 50%;
transform: translateX(-50%);
display: flex;
align-items: center;
flex-direction: column;
gap: var(--spacing-8);
padding: 6px 10px;
padding: var(--spacing-8);
border: 1px solid var(--color-border);
border-radius: var(--radius-cards);
background-color: var(--color-surface);
box-shadow: 0 6px 18px rgb(0 0 0 / 25%);
}
.b07-frame-edit[hidden] {
display: none;
}
.b07-frame-edit__label {
font-size: 0.78rem;
line-height: 1.4;
color: var(--color-text);
}
.b07-frame-edit > button {
padding: 4px 12px;
.b07-frame-edit__buttons {
display: flex;
gap: var(--spacing-8);
}
.b07-frame-edit__buttons > button {
flex: 1 1 0;
min-width: 0;
padding: 4px 8px;
font-size: 0.78rem;
}