74 lines
3.1 KiB
TypeScript
74 lines
3.1 KiB
TypeScript
/* =============================================================================
|
|
* M01_MasterData_UI_Combo_Text.ts
|
|
* 일위대가 조합 화면 글자 — [한국어, 영어]
|
|
* ========================================================================== */
|
|
|
|
import { currentLanguageIndex } from "@ui/ui_template_locale";
|
|
|
|
const TEXT = {
|
|
Title: ["일위대가 조합", "Unit-price combination"],
|
|
Sub: ["구분", "Category"],
|
|
Detail: ["상세구분", "Detail"],
|
|
All: ["전체", "All"],
|
|
Empty: ["조합이 없음 — [새 조합]으로 만듦", "No combinations — press [New combination]"],
|
|
New: ["새 조합", "New combination"],
|
|
Delete: ["지우기", "Delete"],
|
|
Save: ["저장", "Save"],
|
|
DeleteAsk: ["이 조합을 지울까요?", "Delete this combination?"],
|
|
Saved: ["저장함", "Saved"],
|
|
Deleted: ["지움", "Deleted"],
|
|
Stale: ["그 사이 조합 파일이 바뀜 — 다시 열어 주세요", "The file changed — reopen it"],
|
|
Loading: ["불러오는 중…", "Loading…"],
|
|
LeaveAsk: [
|
|
"저장 안 한 고침이 있음 — 로직 상세로 가면 이 화면에서는 그대로 두고 옮겨 감. 갈까요?",
|
|
"Unsaved edits — go to the logic anyway?",
|
|
],
|
|
NeedName: ["이름을 적어야 저장됨", "A name is required"],
|
|
Load_Failed: ["불러오지 못함", "Load failed"],
|
|
Head_Key: ["키", "Key"],
|
|
Head_Name: ["이름", "Name"],
|
|
Head_Unit: ["단위", "Unit"],
|
|
Head_Note: ["비고", "Note"],
|
|
Head_Count: ["로직 수", "Logics"],
|
|
Logics_Title: ["담은 로직", "Logics in it"],
|
|
Col_Order: ["차례", "No."],
|
|
Col_Key: ["로직 키", "Logic key"],
|
|
Col_Name: ["이름", "Name"],
|
|
Col_Unit: ["결과 단위", "Result unit"],
|
|
Col_Memo: ["메모", "Memo"],
|
|
Col_Move: ["순서", "Move"],
|
|
Up: ["올리기", "Up"],
|
|
Down: ["내리기", "Down"],
|
|
Remove: ["빼기", "Remove"],
|
|
AddLogic: ["로직 더하기", "Add logic"],
|
|
NoLogic: ["담은 로직 없음", "No logics yet"],
|
|
Open: ["열기", "Open"],
|
|
Pick_Title: ["로직 고르기", "Pick a logic"],
|
|
Pick_Search: ["이름·키로 찾기", "Search by name or key"],
|
|
Pick_Find: ["찾기", "Find"],
|
|
Pick_Hint: [
|
|
"구분 → 상세구분을 고르고 [찾기]를 누름 — 하나씩 직접 고름",
|
|
"Choose category, detail, then Find — pick one by one",
|
|
],
|
|
Pick_None: ["찾은 로직 없음", "No logics found"],
|
|
Pick_Close: ["닫기", "Close"],
|
|
Pick_Blocked: ["막힘", "Blocked"],
|
|
Prev_Title: ["미리 보기 (보기만 · 저장 안 함)", "Preview (view only)"],
|
|
Prev_Inputs: ["넣을 값", "Inputs"],
|
|
Prev_Run: ["미리 보기 계산", "Run preview"],
|
|
Prev_Labor: ["노무비", "Labor"],
|
|
Prev_Material: ["재료비", "Material"],
|
|
Prev_Expense: ["경비", "Expense"],
|
|
Prev_Sum: ["합계", "Total"],
|
|
Prev_Row: ["로직", "Logic"],
|
|
Prev_Fail: ["못 셈", "Failed"],
|
|
Prev_Wait: ["미리 보기 계산을 누르면 값이 나옴", "Press the button to see values"],
|
|
} as const satisfies Record<string, readonly [string, string]>;
|
|
|
|
export type ComboTextKey = keyof typeof TEXT;
|
|
|
|
export function tc(key: ComboTextKey): string {
|
|
const entry = TEXT[key];
|
|
return entry[currentLanguageIndex as 0 | 1] ?? entry[0];
|
|
}
|