Files
Aislo/M01_MasterData/M01_MasterData_UI_Matset_Text.ts
T
eomsangdonandClaude Sonnet 5 4c8ee6828f feat(M01): 자재 조합 화면 — 목록 · 상세 · 자재 더하기 · 지우기 알림
- 좌측 「자재 조합」 컨테이너(찾기) + 우측 목록(키 · 이름 · 자재 수 · 본뜬키 · 소유) · 상세(이름 · 비고 · 본뜬키 · 담은 자재 표 · 빼기)
- [자재 더하기] = 자재DB 낱말 찾기 → 하나씩 고름(이미 담은 자재는 잠김) · 저장 · 지우기는 M01 길 /api/m01/matset…
- 쓰는 구조물 열이 있어 지울 수 없으면 서버가 준 구조물 이름들을 알림으로 보임
- 알약 키 「이름|단위」 주석 갱신

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01RoyUwuTFiDJfvCfHpvKKzp
2026-09-28 19:14:10 +09:00

60 lines
2.5 KiB
TypeScript

/* =============================================================================
* M01_MasterData_UI_Matset_Text.ts
* 자재 조합 화면 글자 — [한국어, 영어]
* ========================================================================== */
import { currentLanguageIndex } from "@ui/ui_template_locale";
const TEXT = {
Title: ["자재 조합", "Material set"],
Search: ["이름 · 키로 찾기", "Search by name or key"],
Empty: [
"자재 조합이 없음 — [새 자재 조합]으로 만듦",
"No material sets — press [New material set]",
],
New: ["새 자재 조합", "New material set"],
Delete: ["지우기", "Delete"],
Save: ["저장", "Save"],
DeleteAsk: ["이 자재 조합을 지울까요?", "Delete this material set?"],
Saved: ["저장함", "Saved"],
Deleted: ["지움", "Deleted"],
Stale: ["그 사이 자재 조합 파일이 바뀜 — 다시 열어 주세요", "The file changed — reopen it"],
Loading: ["불러오는 중…", "Loading…"],
NeedName: ["이름을 적어야 저장됨", "A name is required"],
NeedItem: ["담은 자재가 하나는 있어야 저장됨", "Add at least one material"],
Load_Failed: ["불러오지 못함", "Load failed"],
Head_Key: ["키", "Key"],
Head_Name: ["이름", "Name"],
Head_Count: ["자재 수", "Materials"],
Head_Origin: ["본뜬키", "Copied from"],
Head_Owner: ["소유", "Owner"],
Head_Note: ["비고", "Note"],
Origin_Self: ["원본", "Original"],
Items_Title: ["담은 자재", "Materials in it"],
Col_Code: ["자재 코드", "Code"],
Col_Name: ["이름", "Name"],
Col_Spec: ["규격", "Spec"],
Col_Unit: ["단위", "Unit"],
Col_Move: ["빼기", "Remove"],
Remove: ["빼기", "Remove"],
AddItem: ["자재 더하기", "Add material"],
NoItem: ["담은 자재 없음", "No materials yet"],
Pick_Title: ["자재 고르기", "Pick a material"],
Pick_Search: ["이름 · 규격으로 찾기", "Search by name or spec"],
Pick_Find: ["찾기", "Find"],
Pick_Hint: [
"낱말을 적고 [찾기]를 누름 — 하나씩 직접 고름",
"Type words, press Find — pick one by one",
],
Pick_None: ["찾은 자재 없음", "No materials found"],
Pick_Have: ["이미 담음", "Already in"],
Pick_Close: ["닫기", "Close"],
} as const satisfies Record<string, readonly [string, string]>;
export type MatsetTextKey = keyof typeof TEXT;
export function tm(key: MatsetTextKey): string {
const entry = TEXT[key];
return entry[currentLanguageIndex as 0 | 1] ?? entry[0];
}