Files
Aislo/M02_MasterTemplete/M02_MasterTemplete_Labor_Text.ts
T
eomsangdonandClaude Sonnet 5.5 8c65a323cc fix(번호 노출): 복사 창 규격 · 재료 창고 규격 · B09 줄 비고 · M02 격자 머리 · 비고 = 사람 말(층 낱말 · 이름) · 번호는 풍선만 (PLAN 704 딸림 ⑤)
- 사전조합 대가 블록 규격 = 「내 자료집 · 회사 · 마스터」 · 키는 spec_raw(풍선) · 복사해 새 일위대가 창 규격은 빈 칸
- B09 설계내역서 구조물 줄 비고 = 「층 낱말 · 조합 이름」(옛 「personal|1/3|SP3-000015」)
- M02 일위대가 격자 머리 = 번호꼴 일위대가번이면 이름 · 「일위대가」 · 참조 줄 비고 = 층 낱말 · 참조 창 제목 · 이미 담음 알림에서 키 뺌
- 내 자료집 저장 알림 · 같은 이름 물음에서 키 뺌
- 시험: test_704_3 격자 · test_701_1 비고 고침

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-31 18:30:51 +09:00

192 lines
8.8 KiB
TypeScript
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
/* =============================================================================
* M02_MasterTemplete_Labor_Text.ts
* 일위대가 조합 화면 글자 — [한국어, 영어]
* ========================================================================== */
import { currentLanguageIndex } from "@ui/ui_template_locale";
const TEXT = {
Title: ["일위대가 조합", "Unit-price combination"],
ReadOnly: ["읽기만 — 이 층은 고칠 수 없음", "Read only — this layer cannot be edited"],
Sub: ["구분", "Category"],
Detail: ["세부 구분", "Detail"],
All: ["전체", "All"],
Empty: ["조합이 없음 — [새 조합]으로 만듦", "No combinations — press [New combination]"],
New: ["새 조합", "New combination"],
Delete: ["지우기", "Delete"],
Save: ["저장", "Save"],
Saved: ["저장함", "Saved"],
Deleted: ["지움", "Deleted"],
Stale: ["그 사이 조합 파일이 바뀜 — 다시 열어 주세요", "The file changed — reopen it"],
Loading: ["불러오는 중…", "Loading…"],
Search: ["이름 · 키로 찾기", "Search by name or key"],
NoMatch: ["찾은 조합 없음 — 거름 · 찾기 글을 바꿔 봄", "No match — change the filter or search"],
NeedName: ["이름을 적어야 저장됨", "A name is required"],
Load_Failed: ["불러오지 못함", "Load failed"],
Origin_Self: ["원본", "Original"],
Logics_Title: ["단가산출 로직", "Unit-price logics"],
Col_Order: ["차례", "No."],
Col_Name: ["이름", "Name"],
Col_Alias: ["별칭", "Alias"],
Alias_Edit: ["눌러서 별칭 고침", "Click to edit alias"],
Col_Unit: ["결과 단위", "Result unit"],
Col_Move: ["순서", "Move"],
Up: ["위로", "Up"],
Down: ["아래로", "Down"],
Labor_Drag: ["끌어 순서 바꿈", "Drag to reorder"],
Remove: ["삭제", "Delete"],
Labor_Option: ["옵션", "Options"],
Labor_Edit: ["수정", "Edit"],
Ref_Shared: [
"서고 원본을 고침 — 이 문서를 쓰는 모든 구조물에 따라감",
"Edits the library original — every structure using it follows",
],
Ref_ReadOnly: ["이 층은 고칠 수 없음 — 읽기만", "Read-only layer"],
Lib_SaveFailed: ["저장 못 함", "Save failed"],
Ref_Discard: ["저장 안 한 고침을 버리고 닫음?", "Discard unsaved edits?"],
Labor_Source: ["원문", "Source"],
Labor_SourceHint: [
"단가산출 로직 줄을 고르면 그 원문이 보임",
"Pick a logic row to see its source",
],
AddLogic: ["로직 추가", "Add logic"],
NoLogic: ["단가산출 로직 없음", "No logics yet"],
Open: ["열기", "Open"],
Pick_Title: ["로직 고르기", "Pick a logic"],
Pick_Search: ["이름·키로 찾기", "Search by name or key"],
Pick_None: ["찾은 로직 없음", "No logics found"],
Pick_Close: ["닫기", "Close"],
Pick_Blocked: ["막힘", "Blocked"],
// 기준 목록 · 계산서 보기(704)
Std_Name: ["품명", "Item"],
Std_Spec: ["규격", "Spec"],
Std_Unit: ["단위", "Unit"],
Std_Money: ["금액", "Amount"],
Std_Source: ["출처", "Source"],
Std_Kind: ["공종", "Work type"],
Std_Sheet: ["계산서", "Cost sheet"],
Std_Put: ["담기", "Add"],
Std_Sum: ["계", "Total"],
Std_Hint: ["줄을 누르면 계산서 · [담기]", "Click a row for its sheet · [Add]"],
Prev_Labor: ["노무비", "Labor"],
Prev_Material: ["재료비", "Material"],
Prev_Expense: ["경비", "Expense"],
Prev_Sum: ["합계", "Total"],
// 일위대가 상세(39-3) — 구조물 열마다 하나
Labor_Unit: ["단위", "Unit"],
Labor_Origin: ["본뜬 곳", "Copied from"],
Labor_Mats: ["자재목록", "Materials"],
Labor_NoMat: ["담은 자재 없음", "No materials yet"],
Labor_AddMat: ["자재 추가", "Add material"],
Labor_Qty: ["수량", "Quantity"],
Labor_QtyCol: ["수량산출", "Quantity"],
Labor_Item: ["항목", "Item"],
Labor_Hand: ["수기", "Manual"],
Labor_QtyPick: ["누르면 수기 입력 · 엑셀에서 고르기", "Manual or pick a cell"],
Labor_PickWait: ["계산이 끝난 뒤 고름", "Wait for the calculation"],
Labor_NoArea: ["이 열 면적산출을 못 읽음", "Area sheet not loaded"],
Labor_BadCell: ["칸 주소가 틀림", "Invalid cell"],
Labor_QtyNow: ["지금 수량", "Now"],
Labor_Unlink: ["연결 풀기", "Unlink"],
Labor_Base: ["기준", "Base"],
Labor_Applied: ["반영", "Applied"],
Labor_BasePrice: ["기준 단가", "Base price"],
Labor_AppliedSum: ["반영 금액", "Applied amount"],
Labor_Calc_Fail: ["계산 못 함", "Calculation failed"],
// 구분(50-4)
Kind_Logic: ["단가산출", "Logic"],
Kind_Promote: ["일위대가화", "Unit-price item"],
Kind_Combo: ["일위조합", "Combination"],
Labor_LineDetail: ["상세 — {value}", "Detail — {value}"],
Labor_LineApplied: ["반영(수량 곱함)", "Applied (× quantity)"],
Labor_LineBase: ["기준", "Base"],
Labor_FromLogic: ["원 로직", "Source logic"],
Lib_Precombo: ["사전조합", "Pre-combination"],
Lib_System: ["마스터", "Master"],
Lib_Company: ["회사", "Company"],
Lib_Personal: ["개인", "Personal"],
Labor_AlreadyRef: ["이미 담은 일위대가 조합 — {value}", "Already added — {value}"],
Labor_Empty: ["빈 값 {n}", "{n} empty"],
Labor_NoQty: [
"수량 안 넣은 줄 {n} — 합계에서 빠짐",
"{n} rows without quantity — left out of the sum",
],
Labor_Lost: [
"로직 입력이 바뀌어 저장 때 빠지는 값 — {value}",
"Inputs no longer in the logic (dropped on save) — {value}",
],
Labor_Code: ["코드", "Code"],
Labor_Spec: ["규격", "Spec"],
Labor_Already: ["이미 담은 단가산출 로직 — {value}", "Already added — {value}"],
Labor_AlreadyMat: ["이미 담은 자재 — {value}", "Already added — {value}"],
// 로직 자재(103-1)
Labor_InLogicMat: ["로직 자재에 있는 품목 — {value}", "Already a logic material — {value}"],
LogicMat_Swap: ["바꾸기", "Change"],
LogicMat_Reset: ["기본", "Default"],
LogicMat_PickTitle: ["로직 자재 바꾸기", "Change logic material"],
LogicMat_Inside: [
"로직 단가 안 금액 — 합계에 다시 안 더함",
"Inside the logic price — not added again",
],
LogicMat_Picked: ["바꾼 품목", "Changed item"],
// 자재목록 세 칸(148-4)
Mark_Kind: ["자재구분", "Material type"],
Mark_Separate: ["별도계상", "Separate"],
Mark_Haul: ["운반비", "Haulage"],
Mark_Gov: ["관급", "Gov-supplied"],
Mark_Private: ["사급", "Contractor-supplied"],
Mark_Direct: ["직접계산", "Direct"],
Mark_In: ["포함", "Included"],
Mark_Out: ["미포함", "Excluded"],
In_Title: ["옵션 — {value}", "Inputs — {value}"],
In_None: ["이 로직은 넣을 값이 없음", "This logic has no inputs"],
In_Memo: ["메모", "Memo"],
In_Layer: ["켜쌓기 적용율 (%)", "Layered-course rate (%)"],
In_LayerHint: [
"0 초과 200 이하 · 소수 한 자리 · 빈 칸 = 100",
"0 < rate ≤ 200 · 1 decimal · empty = 100",
],
Labor_Layer: ["켜쌓기 {n}%", "Layered {n}%"],
In_QtyCell: ["면적산출 칸", "Area sheet cell"],
In_QtyEmpty: ["빈 칸", "empty cell"],
In_QtyHand: ["수기 입력", "Manual"],
In_QtyNeed: ["수기 입력 수량을 수로 적음", "Enter a number"],
In_Bad: ["범위 밖 값이 있음 — 고친 뒤 확인", "Out-of-range values — fix first"],
In_Ok: ["확인", "OK"],
In_Close: ["닫기", "Close"],
Lib_Name: ["이름", "Name"],
// 서고 목록표(51-4)
Lib_PrecomboAll: ["일위대가 사전조합", "Pre-combination"],
Lib_None: ["사전조합 없음", "No pre-combination"],
Lib_Unsorted: ["미분류", "Unsorted"],
Lib_NewHere: ["여기에 새 사전조합", "New pre-combination here"],
Lib_FolderFull: [
"폴더 안에 사전조합 {n}개 — 먼저 옮기거나 지운 뒤 지움",
"Folder holds {n} pre-combination(s) — move or delete them first",
],
Lib_FolderDelete: ["「{value}」 빈 폴더를 지움", "Delete empty folder “{value}”"],
Lib_Create: ["생성", "Create"],
Lib_Copy: ["복사", "Copy"],
Lib_Delete: ["삭제", "Delete"],
Lib_Key: ["키", "Key"],
Lib_Unit: ["단위", "Unit"],
Lib_Base: ["기준 금액", "Base amount"],
Lib_Date: ["고친 날", "Modified"],
// 서고 구분 · 연결(51-12)
// 엑셀 꼴 격자(704-3)
Grid_Title: ["일위대가표", "Unit-price sheet"],
Grid_NoQty: ["수량 없음", "No quantity"],
Grid_Apart: ["별도계상 · 합계 밖", "Separate · not in total"],
Grid_Linked: ["이 공사 단가에 이음", "Linked to project price"],
Grid_Hand: ["손 단가(붙인 값)", "Hand price (pasted)"],
Grid_Head: ["일위대가", "Unit price"],
Grid_Mine: ["내 자료집", "My library"],
} 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];
}