feat(B03): 보관함 선택 요약·「업로드할 파일을 선택하세요」 경고 제거

사용자 지시 2건(2026-09-03).

- 임시 보관함 선택 요약(「선택된 보관 자료 없음」·묶음 이름·파일 수)을 없앰. 불러온 자료는
  카드가 곧바로 보여 주고, 고르기 전 상태는 [파일 업로드]가 잠긴 것으로 이미 드러남.
  쓰이지 않게 된 `.b03-file__temp-summary` 규칙과 로케일 2건도 함께 제거.
- 입력 컨테이너의 「업로드할 파일을 선택하세요」 경고를 띄우지 않음 — 아직 아무것도 고르지
  않은 상태를 붉은 글씨로 알릴 이유가 없음. 확장자·개수·필수 슬롯 같은 나머지 사유와
  [파일 업로드]를 눌렀을 때의 검사 결과는 그대로 표시.

검증: 실측 — 보관함 자리에 버튼 하나만 남음(요약 span 없음), 오류 줄 빈 문자열,
한 줄 배치 선택 518px · 보관함 210px · 업로드 102px. typecheck·prettier 통과.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-09-03 20:47:02 +09:00
co-authored by Claude Opus 5
parent d9fcfa3b96
commit a00c7497c1
4 changed files with 8 additions and 22 deletions
+4 -1
View File
@@ -182,7 +182,10 @@ export async function renderB03FileInput(root: HTMLElement): Promise<void> {
} }
const validation = validateSlots(); const validation = validateSlots();
uploadButton.disabled = validation !== null; uploadButton.disabled = validation !== null;
pageError.textContent = validation ?? ""; // 「업로드할 파일을 선택하세요」는 버튼이 잠긴 것으로 이미 드러난다 — 고르기도 전에
// 붉은 경고를 띄우지 않는다(2026-09-03 사용자 지시). 나머지 사유는 그대로 알린다.
pageError.textContent =
validation === null || validation === L("B03_File_Error_Required") ? "" : validation;
} }
/** 확장자 줄 — 지금 필수인지에 따라 "· 선택" 꼬리표가 붙고 떨어진다. */ /** 확장자 줄 — 지금 필수인지에 따라 "· 선택" 꼬리표가 붙고 떨어진다. */
@@ -14,17 +14,6 @@
border-radius: var(--radius-cards); border-radius: var(--radius-cards);
} }
.b03-file__temp-summary {
font-family: var(--font-body);
font-size: var(--text-caption);
color: var(--color-text-secondary);
}
.b03-file__temp-summary.is-active {
color: var(--color-success);
font-weight: 700;
}
.b03-file__temp-modal { .b03-file__temp-modal {
min-width: min(560px, 92vw); min-width: min(560px, 92vw);
max-height: 80vh; max-height: 80vh;
+4 -8
View File
@@ -46,19 +46,15 @@ export function createTempPicker(
variant: "ghost", variant: "ghost",
onClick: () => void openModal(), onClick: () => void openModal(),
}); });
const summary = document.createElement("span"); // 선택 요약(「선택된 보관 자료 없음」·묶음 이름)은 두지 않는다 — 불러온 자료는 카드가
summary.className = "b03-file__temp-summary"; // 곧바로 보여 주고, 고르기 전 상태는 [파일 업로드]가 잠긴 것으로 이미 드러난다
summary.textContent = L("B03_Temp_None"); // (2026-09-03 사용자 지시).
root.append(openButton, summary); root.append(openButton);
let selectedBatch: TempBatchItem | null = null; let selectedBatch: TempBatchItem | null = null;
function applySelection(batch: TempBatchItem | null): void { function applySelection(batch: TempBatchItem | null): void {
selectedBatch = batch; selectedBatch = batch;
summary.textContent = batch
? `${L("B03_Temp_Selected")} ${batch.name} (${batch.files.length}${L("B03_Temp_FileCount")})`
: L("B03_Temp_None");
summary.classList.toggle("is-active", Boolean(batch));
onSelected(batch); onSelected(batch);
} }
-2
View File
@@ -338,8 +338,6 @@ export const ui_locales_b1 = {
B03_File_Slot_CadDrawing: ["CAD 도면", "CAD Drawing"], B03_File_Slot_CadDrawing: ["CAD 도면", "CAD Drawing"],
/* --- B03 임시 보관함 불러오기 (2026-08-08) --- */ /* --- B03 임시 보관함 불러오기 (2026-08-08) --- */
B03_Temp_Btn_Open: ["임시 보관함에서 불러오기", "Load from temporary storage"], B03_Temp_Btn_Open: ["임시 보관함에서 불러오기", "Load from temporary storage"],
B03_Temp_None: ["선택된 보관 자료 없음", "No stored set selected"],
B03_Temp_Selected: ["선택됨:", "Selected:"],
B03_Temp_FileCount: ["개 파일", " files"], B03_Temp_FileCount: ["개 파일", " files"],
B03_Temp_Modal_Title: ["보관 자료 선택", "Select stored files"], B03_Temp_Modal_Title: ["보관 자료 선택", "Select stored files"],
B03_Temp_Modal_Empty: [ B03_Temp_Modal_Empty: [