Files
Aislo/ui_template/ui_template_locale_m2.ts
T
eomsangdonandClaude Sonnet 5.5 8f55366949 feat(M02): 관리 화면 항목 나무 — 좌측 폴더 나무 · 표 ↔ 나무 고름 · 오른쪽 클릭 더하기 · 이름 바꾸기 · 옮기기 · 지우기 (PLAN 26-3a)
- 좌측 「구조물 집계 양식」 아래 「항목 나무」 카드(세 층 공용 · 깊이 자유 · 검색 · 키보드 위아래 · 펼침 · F2 · Delete)
- 항목 누름 → 표 그 열 고름 + 카드 넷 · 표에서 열 고름 → 나무 표시
- 나무 고침 POST /api/m02/layers/{층}/tree · 판 409 다시 읽고 알림 · 저장 안 한 표 고침은 저장/버림/취소 물음
- 읽기만 층은 메뉴 · 키 없음 · 나무 메뉴 자리는 sub5 의 ui_template_tree 그대로
- 시험 test_m02_treepanel 8 · test_m02_layer_screen 문구 맞춤

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01D2nUMUMTsqm93PbQtipo6c
2026-09-30 08:28:42 +09:00

139 lines
7.4 KiB
TypeScript

/* =============================================================================
* ui_template_locale_m2.ts
* M02 마스터 템플릿 화면 사전 — 신규 문구는 최하단에 추가.
* ========================================================================== */
export const ui_locales_m2 = {
B01_Dashboard_MasterTemplate: ["마스터 템플릿", "Master Templates"],
M02_Title: ["마스터 템플릿", "Master Templates"],
M02_KindTable: ["구조물 집계 양식", "Structure summary templates"],
M02_KindDrawing: ["도면 양식", "Drawing templates"],
M02_KindStructure: ["구조물 도면", "Structure drawings"],
M02_KindArea: ["면적산출", "Area takeoff"],
M02_KindMaterial: ["재료산출", "Material takeoff"],
M02_NoTemplates: ["양식 없음", "None"],
M02_New: ["새로", "New"],
M02_Copy: ["본떠 만들기", "Copy as new"],
M02_Delete: ["지우기", "Delete"],
M02_NewTitle: ["새 양식", "New template"],
M02_CopyTitle: ["본떠 만들기", "Copy as new"],
M02_Kind: ["종류", "Kind"],
M02_Name: ["이름", "Name"],
M02_Create: ["만들기", "Create"],
M02_Close: ["닫기", "Close"],
M02_NameNeeded: ["이름을 적을 것", "Enter a name"],
M02_DeleteConfirm: ["「{value}」 양식을 지울까?", "Delete template “{value}”?"],
M02_InUse: [
"쓰는 양식이라 못 지움 「{value}」 — {use}",
"“{value}” is in use and cannot be deleted — {use}",
],
M02_Deleted: ["지웠음", "Deleted"],
M02_Created: ["만들었음", "Created"],
M02_Saved: ["저장했음", "Saved"],
M02_Save: ["저장", "Save"],
M02_Reload: ["다시 열기", "Reopen"],
M02_PickTemplate: ["왼쪽에서 양식을 고를 것", "Pick a template on the left"],
M02_ReadOnlyLayer: ["이 층은 여기서 고치지 못함", "This layer is read-only here"],
M02_LoadFailed: ["양식을 못 읽음 — {value}", "Failed to load — {value}"],
M02_SaveFailed: ["저장 못 함 — {value}", "Save failed — {value}"],
M02_Stale: [
"그 사이 양식이 바뀜 — 다시 열어 새 판으로 고칠 것",
"The template changed meanwhile — reopen to edit the latest",
],
M02_NoSheet: ["표 편집 부품이 아직 없음", "Table editor not available yet"],
M02_NoDrawing: ["도면 편집 부품이 아직 없음", "Drawing editor not available yet"],
M02_NoSpreadsheet: ["산출근거 편집 부품이 아직 없음", "Cost basis editor not available yet"],
M02_NameExists: ["이미 있는 이름", "That name already exists"],
M02_BadName: [
'쓸 수 없는 이름 — / \\ : * ? " < > | 와 .. · 앞의 점 · 밑줄은 안 됨 · 80자까지',
'Invalid name — no / \\ : * ? " < > | or .. or leading dot/underscore · up to 80 characters',
],
M02_DiscardConfirm: [
"저장 안 한 고침이 있음 — 버리고 넘어갈까?",
"Unsaved changes — discard and continue?",
],
M02_ActionFailed: ["안 됨 — {value}", "Failed — {value}"],
M02_StructureNone: ["없음", "None"],
M02_Back: ["돌아가기", "Back"],
B01_Dashboard_StructureManage: ["구조물 관리", "Structure management"],
B01_Dashboard_StructureCompany: ["회사용", "Company"],
B01_Dashboard_StructurePersonal: ["개인용", "Personal"],
M02_TitleCompany: ["구조물 관리(회사)", "Structure management (company)"],
M02_TitlePersonal: ["구조물 관리(개인)", "Structure management (personal)"],
M02_ReadOnlyCompany: [
"회사용은 복사해서 씀 — 고치려면 고른 열을 개인용으로 복사",
"Company templates are read-only — copy the selected column to your own to edit",
],
M02_CopyToPersonal: ["개인용으로 복사", "Copy to personal"],
M02_CopyPickFirst: ["복사할 열을 집계표에서 먼저 고름", "Pick a column in the table first"],
M02_CopyDone: ["개인용으로 복사함 — 구조물 관리(개인)에서 고침", "Copied — edit it in your own"],
M02_CopyFailed: ["복사 안 됨 — {value}", "Copy failed — {value}"],
M02_NeedCompany: [
"회사부터 등록해야 구조물 집계표를 만들 수 있음",
"Register a company first to manage structure templates",
],
M02_NeedCompanyGo: ["회사 등록하러 가기", "Go to company registration"],
M02_PickerTitle: ["항목 고르기", "Pick an item"],
M02_PickerSearch: ["항목 찾기", "Search items"],
M02_PickerSystem: ["마스터", "Master"],
M02_PickerCompany: ["회사", "Company"],
M02_PickerPersonal: ["개인", "Personal"],
M02_PickerNoClass: ["분류 없음", "Unclassified"],
M02_PickerHint: ["왼쪽에서 항목을 고를 것", "Pick an item on the left"],
M02_PickerNoMatch: ["찾는 항목 없음", "No matching items"],
M02_PickerLoading: ["읽는 중…", "Loading…"],
M02_PickerLoadFailed: ["항목을 못 읽음 — {value}", "Failed to load items — {value}"],
M02_PickerDrawing: ["도면", "Drawing"],
M02_PickerArea: ["면적산출", "Area takeoff"],
M02_PickerMaterial: ["재료산출", "Material takeoff"],
M02_PickerCombo: ["자재조합", "Material combo"],
M02_PickerUnitPrice: ["일위대가", "Unit price"],
M02_PickerUnit: ["단위", "Unit"],
M02_PickerNone: ["없음", "None"],
M02_PickerApply: ["적용", "Apply"],
M02_PickerClear: ["해제", "Clear"],
M02_PickerCopy: ["개인용으로 복사", "Copy to personal"],
M02_PickerManage: ["관리 화면에서 고치기", "Edit in manager"],
M02_PickerCopied: ["개인용으로 복사했음", "Copied to personal"],
M02_PickerCopyFailed: ["복사 못 함 — {value}", "Copy failed — {value}"],
M02_TreeTitle: ["항목 나무", "Item tree"],
M02_TreeSearch: ["항목 찾기", "Find item"],
M02_TreeEmptyEdit: [
"항목이 없음 — 맨 위 줄을 오른쪽 클릭해 폴더 · 항목을 더함",
"No items — right-click the top row to add a folder or item",
],
M02_TreeEmpty: ["항목이 없음", "No items"],
M02_TreeNoHit: ["찾은 항목이 없음", "No matching item"],
M02_TreeAddFolder: ["폴더 더하기", "Add folder"],
M02_TreeAddItem: ["항목 더하기", "Add item"],
M02_TreeRename: ["이름 바꾸기", "Rename"],
M02_TreeMove: ["옮기기", "Move"],
M02_TreeFolderName: ["폴더 이름", "Folder name"],
M02_TreeItemName: ["항목 이름", "Item name"],
M02_TreeUnit: ["단위", "Unit"],
M02_TreeMoveTo: ["옮길 폴더", "Move to"],
M02_TreeTop: ["맨 위 (폴더 밖)", "Top (no folder)"],
M02_TreeOk: ["확인", "OK"],
M02_TreeCancel: ["취소", "Cancel"],
M02_TreeDeleteFolder: [
"「{value}」 폴더와 안의 항목 {n}개를 지움 — 이미 쓰는 프로젝트에는 영향 없음(프로젝트는 복사본을 씀)",
"Delete folder “{value}” and its {n} item(s) — projects already using them are not affected (they keep their own copies)",
],
M02_TreeDeleteItem: [
"「{value}」 항목을 지움 — 이미 쓰는 프로젝트에는 영향 없음(프로젝트는 복사본을 씀)",
"Delete item “{value}” — projects already using it are not affected (they keep their own copies)",
],
M02_TreeStale: [
"그 사이 나무가 바뀜 — 다시 읽었음, 한 번 더 해 볼 것",
"The tree changed meanwhile — reloaded, try again",
],
M02_TreeUnsaved: [
"저장 안 한 표 고침이 있음 — 나무를 고치기 전에 처리",
"Unsaved table edits — settle them before changing the tree",
],
M02_TreeSaveGo: ["저장하고 계속", "Save and continue"],
M02_TreeDiscardGo: ["버리고 계속", "Discard and continue"],
M02_TreeDone: ["나무를 고침", "Tree updated"],
} as const;