@object-ui/i18n 17.5.0 → 17.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +4954 -0
- package/README.md +234 -13
- package/dist/builtinAggregateLabels.d.ts +40 -0
- package/dist/builtinAggregateLabels.js +23 -0
- package/dist/currency.d.ts +27 -3
- package/dist/currency.js +28 -4
- package/dist/fallbackInterpolation.d.ts +79 -0
- package/dist/fallbackInterpolation.js +124 -0
- package/dist/i18n.d.ts +28 -2
- package/dist/i18n.js +99 -17
- package/dist/index.d.ts +17 -23
- package/dist/index.js +51 -27
- package/dist/locales/ar.d.ts +1113 -370
- package/dist/locales/ar.js +1276 -428
- package/dist/locales/de.d.ts +785 -370
- package/dist/locales/de.js +896 -401
- package/dist/locales/en.d.ts +800 -385
- package/dist/locales/en.js +1261 -419
- package/dist/locales/es.d.ts +867 -370
- package/dist/locales/es.js +976 -398
- package/dist/locales/fr.d.ts +867 -370
- package/dist/locales/fr.js +976 -399
- package/dist/locales/index.d.ts +8682 -3761
- package/dist/locales/index.js +68 -29
- package/dist/locales/ja.d.ts +785 -370
- package/dist/locales/ja.js +891 -395
- package/dist/locales/ko.d.ts +785 -370
- package/dist/locales/ko.js +893 -399
- package/dist/locales/pt.d.ts +867 -370
- package/dist/locales/pt.js +975 -397
- package/dist/locales/registry.d.ts +102 -0
- package/dist/locales/registry.js +220 -0
- package/dist/locales/rtl.d.ts +24 -0
- package/dist/locales/rtl.js +26 -0
- package/dist/locales/ru.d.ts +949 -370
- package/dist/locales/ru.js +1093 -419
- package/dist/locales/zh.d.ts +803 -388
- package/dist/locales/zh.js +899 -388
- package/dist/pickLocalized.d.ts +67 -0
- package/dist/pickLocalized.js +114 -0
- package/dist/provider.d.ts +102 -13
- package/dist/provider.js +335 -50
- package/dist/translateFn.d.ts +29 -0
- package/dist/translateFn.js +8 -0
- package/dist/useDisplayLocale.d.ts +11 -0
- package/dist/useDisplayLocale.js +13 -2
- package/dist/useObjectLabel.d.ts +118 -22
- package/dist/useObjectLabel.js +148 -23
- package/dist/useSafeTranslation.js +41 -43
- package/dist/utils/formatting.d.ts +16 -0
- package/dist/utils/formatting.js +23 -3
- package/dist/utils/index.d.ts +4 -4
- package/dist/utils/index.js +4 -4
- package/dist/utils/spec-formatters.d.ts +13 -23
- package/dist/utils/spec-formatters.js +41 -2
- package/dist/utils/spec-translations.d.ts +16 -3
- package/dist/utils/spec-translations.js +52 -13
- package/package.json +12 -6
package/dist/locales/ko.js
CHANGED
|
@@ -19,10 +19,12 @@ const ko = {
|
|
|
19
19
|
manage_users: "사용자 관리",
|
|
20
20
|
manage_org_users: "조직 사용자 관리",
|
|
21
21
|
manage_metadata: "메타데이터 관리",
|
|
22
|
+
manage_org_presentation: "조직 표시 관리",
|
|
22
23
|
manage_platform_settings: "플랫폼 설정 관리",
|
|
23
24
|
setup_access: "설정 접근",
|
|
24
25
|
setup_write: "설정 쓰기",
|
|
25
26
|
studio_access: "Studio 접근",
|
|
27
|
+
manage_sharing: "공유 관리",
|
|
26
28
|
},
|
|
27
29
|
group: {
|
|
28
30
|
platform: '플랫폼',
|
|
@@ -39,12 +41,16 @@ const ko = {
|
|
|
39
41
|
more: "+{{count}} 더보기",
|
|
40
42
|
objects: "{{count}}개 오브젝트",
|
|
41
43
|
objects_one: "{{count}}개 오브젝트",
|
|
44
|
+
objects_other: "{{count}}개 오브젝트",
|
|
42
45
|
fields: "{{count}}개 필드 규칙",
|
|
43
46
|
fields_one: "{{count}}개 필드 규칙",
|
|
47
|
+
fields_other: "{{count}}개 필드 규칙",
|
|
44
48
|
rls: "{{count}}개 RLS 정책",
|
|
45
49
|
rls_one: "{{count}}개 RLS 정책",
|
|
50
|
+
rls_other: "{{count}}개 RLS 정책",
|
|
46
51
|
tabs: "{{count}}개 탭 규칙",
|
|
47
52
|
tabs_one: "{{count}}개 탭 규칙",
|
|
53
|
+
tabs_other: "{{count}}개 탭 규칙",
|
|
48
54
|
adminScope: "위임 관리가 구성됨",
|
|
49
55
|
designInStudio: "Studio에서 디자인 →",
|
|
50
56
|
designInStudioHint: "Studio에서 디자인",
|
|
@@ -63,7 +69,8 @@ const ko = {
|
|
|
63
69
|
selectFirst: '먼저 {{fields}}을(를) 선택하세요',
|
|
64
70
|
selectRecord: '레코드 선택',
|
|
65
71
|
recordCount: '레코드 {{count}}개',
|
|
66
|
-
|
|
72
|
+
recordCount_one: '레코드 {{count}}개',
|
|
73
|
+
recordCount_other: '레코드 {{count}}개',
|
|
67
74
|
pageOf: '{{total}}페이지 중 {{current}}페이지',
|
|
68
75
|
filters: '필터',
|
|
69
76
|
clear: '지우기',
|
|
@@ -82,6 +89,7 @@ const ko = {
|
|
|
82
89
|
removeFromFavorites: "즐겨찾기에서 제거",
|
|
83
90
|
loading: "로딩 중…",
|
|
84
91
|
save: "저장",
|
|
92
|
+
discard: "버리기",
|
|
85
93
|
cancel: "취소",
|
|
86
94
|
delete: "삭제",
|
|
87
95
|
edit: "편집",
|
|
@@ -115,7 +123,8 @@ const ko = {
|
|
|
115
123
|
closePanel: "패널 닫기",
|
|
116
124
|
resizeDrawer: "패널 너비 조정",
|
|
117
125
|
itemCount: "{{count}}개 항목",
|
|
118
|
-
|
|
126
|
+
itemCount_one: "{{count}}개 항목",
|
|
127
|
+
itemCount_other: "{{count}}개 항목",
|
|
119
128
|
toggleSidebar: "사이드바 전환",
|
|
120
129
|
package: "패키지",
|
|
121
130
|
done: "완료",
|
|
@@ -123,6 +132,16 @@ const ko = {
|
|
|
123
132
|
record: "레코드",
|
|
124
133
|
retry: "다시 시도",
|
|
125
134
|
printDialogHint: "브라우저의 인쇄 대화 상자를 엽니다(PDF 내보내기가 아닙니다)",
|
|
135
|
+
// The non-grid row ceiling's footnote (objectui#7210). Two keys because
|
|
136
|
+
// there are two conditions: a reported `total` states the fact with BOTH
|
|
137
|
+
// numbers, a missing one cannot name how many. Kept terse deliberately —
|
|
138
|
+
// this copy is eagerly loaded, and since objectui#7399 these bytes are
|
|
139
|
+
// budgeted by the `i18n-locales` chunk, not `framework`. ⛔ That ceiling's
|
|
140
|
+
// headroom is deliberately NOT restated here — it moves on every
|
|
141
|
+
// re-baseline, and the figure that was here went stale.
|
|
142
|
+
// `pnpm check:eager-closure` prints it.
|
|
143
|
+
rowCeilingNote: "전체 {{total}}개 중 처음 {{shown}}개를 표시합니다. 필터를 좁히세요.",
|
|
144
|
+
rowCeilingNoteUnknownTotal: "처음 {{shown}}개를 표시합니다. 필터를 좁히세요.",
|
|
126
145
|
},
|
|
127
146
|
actions: {
|
|
128
147
|
decisionOutput: {
|
|
@@ -134,6 +153,14 @@ const ko = {
|
|
|
134
153
|
acknowledge: '저장했습니다',
|
|
135
154
|
copyAll: '모두 복사',
|
|
136
155
|
},
|
|
156
|
+
notAvailableHere: '"{{action}}"은(는) 현재 페이지에서 사용할 수 없습니다.',
|
|
157
|
+
completedSuccessfully: '작업이 완료되었습니다',
|
|
158
|
+
failed: '작업 실패',
|
|
159
|
+
parallelFailed: '하나 이상의 병렬 작업이 실패했습니다',
|
|
160
|
+
undo: '실행 취소',
|
|
161
|
+
undone: '변경 실행 취소됨',
|
|
162
|
+
undoneOperation: '실행 취소: {{description}}',
|
|
163
|
+
redoneOperation: '다시 실행: {{description}}',
|
|
137
164
|
},
|
|
138
165
|
validation: {
|
|
139
166
|
required: "{{field}}은(는) 필수입니다",
|
|
@@ -151,19 +178,45 @@ const ko = {
|
|
|
151
178
|
},
|
|
152
179
|
form: {
|
|
153
180
|
noPermissionToSave: "이 레코드를 저장할 권한이 없습니다.",
|
|
181
|
+
noPermissionToCreate: "{{object}} 생성 권한이 없습니다. 필드는 읽기 전용입니다.",
|
|
182
|
+
noPermissionToEdit: "{{object}} 편집 권한이 없습니다. 필드는 읽기 전용입니다.",
|
|
154
183
|
submitFailed: "저장하지 못했습니다. 다시 시도해 주세요.",
|
|
184
|
+
uploadInFlight: "업로드가 완료된 후에 저장하세요.",
|
|
185
|
+
clearedOnHide: "현재 값에 더 이상 해당하지 않는 항목을 비웠습니다: {{fields}}",
|
|
186
|
+
visibleWhenFaulted: "제출할 수 없습니다: {{fields}}의 visibleWhen 규칙을 평가할 수 없습니다. 이 양식을 제출하려면 먼저 규칙을 수정해야 합니다.",
|
|
155
187
|
discardTitle: "변경 내용을 버릴까요?",
|
|
156
188
|
discardMessage: "저장하지 않은 변경 내용이 있습니다. 지금 이 양식을 닫으면 편집 내용이 사라집니다.",
|
|
157
189
|
// objectui#4024 — the create/edit dialog's `sr-only` accessible
|
|
158
190
|
// description, used when the form declares no `description` of its own.
|
|
159
191
|
dialogDescriptionFallback: "양식 필드를 작성한 다음 제출하거나 취소하세요.",
|
|
192
|
+
deniedDescription: "이 필드를 편집할 권한이 없습니다.",
|
|
193
|
+
masterDetail: {
|
|
194
|
+
loadingColumns: "열 로드 중…",
|
|
195
|
+
subtotal: "소계",
|
|
196
|
+
tax: "세금({{rate}}%)",
|
|
197
|
+
total: "합계",
|
|
198
|
+
lineItem: "라인 항목",
|
|
199
|
+
rowTitle: "{{title}} — {{row}}행",
|
|
200
|
+
applyRow: "적용",
|
|
201
|
+
editorDescription: "레코드와 라인 항목을 입력한 다음 저장하세요.",
|
|
202
|
+
noChildObject: "이 컬렉션에 하위 개체가 구성되지 않았습니다. {{property}}을(를) 행을 나열할 개체로 설정하세요.",
|
|
203
|
+
schemaUnavailable: "{{object}}의 스키마를 불러올 수 없어 이 컬렉션에 표시할 열이 없습니다. 개체가 존재하고 읽을 수 있는지 확인한 다음 다시 불러오세요.",
|
|
204
|
+
noRelationshipField: "{{object}}이(가) {{parent}}에 어떻게 연결되는지 확인할 수 없습니다. 부모를 참조하는 lookup 또는 master_detail 필드가 없습니다. 이 컬렉션의 {{property}}을(를) 부모 레코드를 보유한 필드로 설정하세요.",
|
|
205
|
+
},
|
|
206
|
+
lineItems: {
|
|
207
|
+
title: "라인 항목",
|
|
208
|
+
saveRecordFirst: "라인 항목을 추가하려면 먼저 레코드를 저장하세요.",
|
|
209
|
+
notLoaded: "이 레코드의 라인 항목을 불러오지 않았습니다.",
|
|
210
|
+
loadFailed: "라인 항목을 불러오지 못했습니다",
|
|
211
|
+
saveFailed: "라인 항목을 저장하지 못했습니다",
|
|
212
|
+
noChildObject: "이 패널에 하위 개체가 구성되지 않았습니다. {{property}}을(를) 행을 나열할 개체로 설정하세요.",
|
|
213
|
+
},
|
|
160
214
|
keepEditing: "계속 편집",
|
|
161
215
|
discard: "버리기",
|
|
162
216
|
conflictTitle: "저장 충돌",
|
|
163
217
|
conflictMessage: "편집하는 동안 다른 사용자가 이 레코드를 변경했습니다. 덮어쓰면 상대방의 변경 내용이 내 내용으로 대체됩니다.",
|
|
164
218
|
conflictLatestVersion: "상대방 저장 시각: {{time}}",
|
|
165
219
|
conflictOverwrite: "덮어쓰기",
|
|
166
|
-
addItem: "항목 추가",
|
|
167
220
|
removeItem: "항목 제거",
|
|
168
221
|
fieldRequired: "이 필드는 필수입니다",
|
|
169
222
|
invalidFormat: "형식이 올바르지 않습니다",
|
|
@@ -181,6 +234,12 @@ const ko = {
|
|
|
181
234
|
createSuccess: "{{object}} 생성됨",
|
|
182
235
|
updateSuccess: "{{object}} 업데이트됨",
|
|
183
236
|
deleteSuccess: "{{object}} 삭제됨",
|
|
237
|
+
created: "생성됨",
|
|
238
|
+
saved: "저장됨",
|
|
239
|
+
savedNamed: "{{title}} 저장됨",
|
|
240
|
+
submitted: "제출됨",
|
|
241
|
+
errorLoading: "양식 로딩 오류",
|
|
242
|
+
navigateRefused: "이 양식에 선언된 `navigateOnSuccess` 대상이 거부되어 이동하지 않았습니다.",
|
|
184
243
|
fullscreen: {
|
|
185
244
|
title: "텍스트 편집",
|
|
186
245
|
description: "전체 텍스트 값을 편집한 다음 변경 사항을 저장하거나 취소하세요.",
|
|
@@ -205,6 +264,8 @@ const ko = {
|
|
|
205
264
|
},
|
|
206
265
|
relativeDate: {
|
|
207
266
|
overdue: "기한 초과 {{count}}일",
|
|
267
|
+
overdue_one: "기한 초과 {{count}}일",
|
|
268
|
+
overdue_other: "기한 초과 {{count}}일",
|
|
208
269
|
},
|
|
209
270
|
file: {
|
|
210
271
|
dragDropHere: '파일을 여기로 끌어다 놓기',
|
|
@@ -221,6 +282,7 @@ const ko = {
|
|
|
221
282
|
remove: '{{name}} 제거',
|
|
222
283
|
exceedsMaxSize: '"{{name}}"이(가) 최대 크기({{max}} MB)를 초과합니다',
|
|
223
284
|
uploadFailed: '"{{name}}" 업로드 실패: {{error}}',
|
|
285
|
+
uploadIncomplete: '"{{name}}" 업로드가 완료되지 않았습니다: 파일 ID가 반환되지 않아 저장된 내용이 없습니다',
|
|
224
286
|
},
|
|
225
287
|
richText: {
|
|
226
288
|
format: "형식: {{format}}",
|
|
@@ -239,7 +301,7 @@ const ko = {
|
|
|
239
301
|
},
|
|
240
302
|
recipient: {
|
|
241
303
|
selectTypeFirst: "먼저 수신자 유형을 선택하세요.",
|
|
242
|
-
loading: "
|
|
304
|
+
loading: "로딩 중…",
|
|
243
305
|
search: "검색…",
|
|
244
306
|
empty: "일치하는 항목 없음",
|
|
245
307
|
select: "수신자 선택",
|
|
@@ -248,6 +310,9 @@ const ko = {
|
|
|
248
310
|
selectBusinessUnit: "사업 단위 선택",
|
|
249
311
|
selectPosition: "직위 선택",
|
|
250
312
|
selectUnitAndSubordinates: "사업 단위 선택",
|
|
313
|
+
selectField: "사용자 필드 선택",
|
|
314
|
+
noUserFields: "이 객체에는 사용자 필드가 없습니다",
|
|
315
|
+
fieldNotUserTyped: "{{name}} — 사용자 필드가 아닙니다",
|
|
251
316
|
},
|
|
252
317
|
filterCondition: {
|
|
253
318
|
selectObjectFirst: "먼저 객체를 선택하세요.",
|
|
@@ -258,13 +323,51 @@ const ko = {
|
|
|
258
323
|
editAsJson: "JSON으로 편집",
|
|
259
324
|
useVisualBuilder: "비주얼 빌더 사용",
|
|
260
325
|
},
|
|
326
|
+
object: {
|
|
327
|
+
invalidJson: "잘못된 JSON",
|
|
328
|
+
},
|
|
329
|
+
location: {
|
|
330
|
+
refusedFormat: "저장되지 않았습니다: 위도, 경도 쌍으로 입력하세요(예: 30.2741, 120.1551).",
|
|
331
|
+
refusedRange: "저장되지 않았습니다: {{detail}}",
|
|
332
|
+
latitude: "위도",
|
|
333
|
+
longitude: "경도",
|
|
334
|
+
refusedResidueOne: "저장되지 않았습니다: {{name}} “{{text}}”은(는) 숫자가 아닙니다. 일반 소수로 입력하세요(예: 30.2741, 120.1551).",
|
|
335
|
+
refusedResidue: "저장되지 않았습니다: {{name}} “{{text}}”과(와) {{otherName}} “{{otherText}}”은(는) 숫자가 아닙니다. 일반 소수로 입력하세요(예: 30.2741, 120.1551).",
|
|
336
|
+
},
|
|
337
|
+
date: {
|
|
338
|
+
impossibleDay: "저장된 값 “{{value}}”은(는) 실제 날짜가 아닙니다. 바꾸려면 날짜를 선택하세요.",
|
|
339
|
+
},
|
|
340
|
+
dateTime: {
|
|
341
|
+
impossibleDay: "저장된 값 “{{value}}”은(는) 실제 날짜가 아닙니다. 바꾸려면 날짜와 시간을 선택하세요.",
|
|
342
|
+
},
|
|
343
|
+
number: {
|
|
344
|
+
badInput: "저장되지 않았습니다: 이 입력란의 텍스트는 숫자가 아닙니다. 일반 소수로 입력하세요(예: {{example}}).",
|
|
345
|
+
},
|
|
261
346
|
tags: {
|
|
262
347
|
placeholder: "입력 후 Enter 키로 추가…",
|
|
263
348
|
},
|
|
349
|
+
// objectui#4028 — `AddressField`'s five sub-labels.
|
|
350
|
+
address: {
|
|
351
|
+
street: "도로명 주소",
|
|
352
|
+
city: "시/군/구",
|
|
353
|
+
state: "시/도",
|
|
354
|
+
postalCode: "우편번호",
|
|
355
|
+
country: "국가",
|
|
356
|
+
},
|
|
264
357
|
textarea: {
|
|
265
358
|
characterCount: "글자 수: {{max}}자 중 {{count}}자",
|
|
266
359
|
charactersRemaining: "{{count}}자 남음",
|
|
267
360
|
},
|
|
361
|
+
grid: {
|
|
362
|
+
addLine: "행 추가",
|
|
363
|
+
noItems: "항목 없음",
|
|
364
|
+
noItemsAddHint: "아직 항목이 없습니다. “{{label}}”을(를) 클릭하여 시작하세요.",
|
|
365
|
+
optionalColumns: "선택 열",
|
|
366
|
+
computed: "자동 계산",
|
|
367
|
+
openRow: "행 열기",
|
|
368
|
+
duplicateRow: "행 복제",
|
|
369
|
+
removeRow: "행 삭제",
|
|
370
|
+
},
|
|
268
371
|
},
|
|
269
372
|
table: {
|
|
270
373
|
rowsPerPage: "페이지당 행 수",
|
|
@@ -293,23 +396,35 @@ const ko = {
|
|
|
293
396
|
open: "열기",
|
|
294
397
|
search: "검색…",
|
|
295
398
|
modified: "{{count}}개 행 수정됨",
|
|
399
|
+
modified_one: "{{count}}개 행 수정됨",
|
|
400
|
+
modified_other: "{{count}}개 행 수정됨",
|
|
296
401
|
saveFailed: '저장 실패',
|
|
297
402
|
selected: "{{count}}개 선택됨",
|
|
403
|
+
selected_one: "{{count}}개 선택됨",
|
|
404
|
+
selected_other: "{{count}}개 선택됨",
|
|
298
405
|
edit: "편집",
|
|
299
406
|
delete: "삭제",
|
|
300
407
|
},
|
|
301
408
|
grid: {
|
|
302
409
|
bulkSelected: "{{count}}건 선택됨",
|
|
410
|
+
bulkSelected_one: "{{count}}건 선택됨",
|
|
411
|
+
bulkSelected_other: "{{count}}건 선택됨",
|
|
303
412
|
bulkSelectedAllMatches: "{{count}}건 선택됨(일치 항목 전체)",
|
|
304
413
|
bulkClear: "선택 해제",
|
|
305
414
|
bulkAllOnPage: "이 페이지의 {{count}}건이 모두 선택되었습니다.",
|
|
415
|
+
bulkAllOnPage_one: "이 페이지의 {{count}}건이 모두 선택되었습니다.",
|
|
416
|
+
bulkAllOnPage_other: "이 페이지의 {{count}}건이 모두 선택되었습니다.",
|
|
306
417
|
bulkSelectAllMatching: "일치하는 {{count}}건 모두 선택",
|
|
307
418
|
bulkAllMatchingSelected: "일치하는 레코드 {{count}}건이 모두 선택되었습니다.",
|
|
308
419
|
bulk: {
|
|
309
420
|
confirmDefault: "레코드 {{count}}건에 적용됩니다.",
|
|
421
|
+
confirmDefault_one: "레코드 {{count}}건에 적용됩니다.",
|
|
422
|
+
confirmDefault_other: "레코드 {{count}}건에 적용됩니다.",
|
|
310
423
|
overLimit: "선택 건수({{count}})가 작업 한도({{limit}})를 초과합니다. 선택을 줄여 주세요.",
|
|
311
424
|
affectedRecords: "영향을 받는 레코드({{count}}):",
|
|
312
425
|
skippedIneligible: "선택한 레코드 중 {{count}}건은 이 작업의 대상이 아니므로 건너뜁니다.",
|
|
426
|
+
skippedIneligible_one: "선택한 레코드 중 {{count}}건은 이 작업의 대상이 아니므로 건너뜁니다.",
|
|
427
|
+
skippedIneligible_other: "선택한 레코드 중 {{count}}건은 이 작업의 대상이 아니므로 건너뜁니다.",
|
|
313
428
|
rowFallback: "{{index}}행",
|
|
314
429
|
andMore: "… 외 {{count}}건",
|
|
315
430
|
processed: "{{count}} / {{total}} 처리됨",
|
|
@@ -327,8 +442,7 @@ const ko = {
|
|
|
327
442
|
undo: "되돌리기",
|
|
328
443
|
undoing: "되돌리는 중…",
|
|
329
444
|
done: "완료",
|
|
330
|
-
|
|
331
|
-
loading: "불러오는 중…",
|
|
445
|
+
loading: "로딩 중…",
|
|
332
446
|
},
|
|
333
447
|
actions: "작업",
|
|
334
448
|
edit: "편집",
|
|
@@ -346,6 +460,14 @@ const ko = {
|
|
|
346
460
|
yes: "예",
|
|
347
461
|
no: "아니요",
|
|
348
462
|
systemFields: "시스템",
|
|
463
|
+
// objectui#10881 — the grouped grid's two refusals: over a data source
|
|
464
|
+
// that cannot answer the group header query, and over rows a host
|
|
465
|
+
// handed in while declaring them one page of more. `queryGroupHeaders`
|
|
466
|
+
// is the member's name and stays untranslated.
|
|
467
|
+
grouping: {
|
|
468
|
+
needsHeaderQuery: "이 뷰는 그룹화되어 있지만 데이터 소스가 queryGroupHeaders를 구현하지 않아 그룹 개수를 셀 수 없습니다. 레코드를 표시하려면 그룹화를 제거하세요.",
|
|
469
|
+
needsWholeRows: "그룹화에는 모든 레코드가 필요하지만 이 그리드에는 한 페이지만 전달되어 그룹 개수를 셀 수 없습니다. 모든 레코드를 전달하거나 queryGroupHeaders를 구현하는 데이터 소스에서 그리드가 불러오도록 하세요.",
|
|
470
|
+
},
|
|
349
471
|
// objectui#4024 — column-footer aggregate prefixes, keyed by the spec's
|
|
350
472
|
// `ColumnSummary` vocabulary. `pattern` owns the label/value join so this
|
|
351
473
|
// pack controls its own separator and word order.
|
|
@@ -372,10 +494,14 @@ const ko = {
|
|
|
372
494
|
},
|
|
373
495
|
import: {
|
|
374
496
|
downloadTemplate: "템플릿 다운로드",
|
|
375
|
-
downloadTemplateHint: "
|
|
497
|
+
downloadTemplateHint: "가져올 수 있는 열만 담은 Excel 파일을 받습니다(필수 필드에는 * 표시, 작성 안내 포함).",
|
|
376
498
|
templateFileName: "{{object}}-import-template",
|
|
499
|
+
templateDownloadFailed: "템플릿을 다운로드할 수 없습니다. 다시 시도하세요.",
|
|
500
|
+
templateNotPermitted: "이 객체의 레코드를 생성할 권한이 없어 가져오기 템플릿을 사용할 수 없습니다.",
|
|
377
501
|
autoMatched: "자동 매핑됨",
|
|
378
502
|
autoMatchedSummary: "{{count}}개 열을 자동 매핑했습니다 — 아래에서 확인하고 조정하세요.",
|
|
503
|
+
autoMatchedSummary_one: "{{count}}개 열을 자동 매핑했습니다 — 아래에서 확인하고 조정하세요.",
|
|
504
|
+
autoMatchedSummary_other: "{{count}}개 열을 자동 매핑했습니다 — 아래에서 확인하고 조정하세요.",
|
|
379
505
|
confidence: {
|
|
380
506
|
high: "신뢰도 높음",
|
|
381
507
|
medium: "신뢰도 보통",
|
|
@@ -388,8 +514,14 @@ const ko = {
|
|
|
388
514
|
cancelImport: "가져오기 취소",
|
|
389
515
|
importCancelled: "가져오기를 취소했습니다",
|
|
390
516
|
resultsTruncated: "{{total}}행 중 처음 {{count}}행의 결과를 표시합니다.",
|
|
517
|
+
resultsTruncated_one: "{{total}}행 중 처음 {{count}}행의 결과를 표시합니다.",
|
|
518
|
+
resultsTruncated_other: "{{total}}행 중 처음 {{count}}행의 결과를 표시합니다.",
|
|
391
519
|
createdCount: "{{count}}건 생성",
|
|
520
|
+
createdCount_one: "{{count}}건 생성",
|
|
521
|
+
createdCount_other: "{{count}}건 생성",
|
|
392
522
|
updatedCount: "{{count}}건 업데이트",
|
|
523
|
+
updatedCount_one: "{{count}}건 업데이트",
|
|
524
|
+
updatedCount_other: "{{count}}건 업데이트",
|
|
393
525
|
downloadFailed: "실패한 행 다운로드",
|
|
394
526
|
options: "가져오기 옵션",
|
|
395
527
|
writeMode: "기존 레코드와 일치하는 행의 처리",
|
|
@@ -429,7 +561,7 @@ const ko = {
|
|
|
429
561
|
historyDescription: "이 객체의 최근 가져오기입니다.",
|
|
430
562
|
historyHint: "백그라운드 가져오기 작업, 최신순.",
|
|
431
563
|
historyRefresh: "새로고침",
|
|
432
|
-
historyLoading: "
|
|
564
|
+
historyLoading: "로딩 중…",
|
|
433
565
|
historyEmpty: "아직 가져오기가 없습니다.",
|
|
434
566
|
historyUnsupported: "이 데이터 소스는 가져오기 기록을 지원하지 않습니다.",
|
|
435
567
|
historyColStatus: "상태",
|
|
@@ -437,6 +569,8 @@ const ko = {
|
|
|
437
569
|
historyColResult: "결과",
|
|
438
570
|
historyColTime: "시각",
|
|
439
571
|
errorCount: "오류 {{count}}건",
|
|
572
|
+
errorCount_one: "오류 {{count}}건",
|
|
573
|
+
errorCount_other: "오류 {{count}}건",
|
|
440
574
|
undoImport: "가져오기 되돌리기",
|
|
441
575
|
undoing: "되돌리는 중…",
|
|
442
576
|
undoConfirm: "이 가져오기를 되돌릴까요? 생성된 레코드는 삭제되고 업데이트된 레코드는 이전 값으로 복원됩니다.",
|
|
@@ -497,7 +631,11 @@ const ko = {
|
|
|
497
631
|
mapped: "매핑됨",
|
|
498
632
|
skipped: "건너뜀",
|
|
499
633
|
rowsWithErrors: "오류가 있는 {{count}}개 행",
|
|
634
|
+
rowsWithErrors_one: "오류가 있는 {{count}}개 행",
|
|
635
|
+
rowsWithErrors_other: "오류가 있는 {{count}}개 행",
|
|
500
636
|
rowsCorrected: "{{count}}개 행 수정됨",
|
|
637
|
+
rowsCorrected_one: "{{count}}개 행 수정됨",
|
|
638
|
+
rowsCorrected_other: "{{count}}개 행 수정됨",
|
|
501
639
|
clickToFix: "— 강조 표시된 셀을 클릭하여 인라인 편집.",
|
|
502
640
|
showingRows: "{{total}}개 중 {{shown}}개 행 표시",
|
|
503
641
|
importing: "가져오는 중… {{progress}}%",
|
|
@@ -505,11 +643,15 @@ const ko = {
|
|
|
505
643
|
imported: "{{count}}개 가져옴",
|
|
506
644
|
skippedCount: "{{count}}개 건너뜀",
|
|
507
645
|
moreErrors: "…{{count}}개 오류 더",
|
|
646
|
+
moreErrors_one: "…{{count}}개 오류 더",
|
|
647
|
+
moreErrors_other: "…{{count}}개 오류 더",
|
|
508
648
|
cancel: "취소",
|
|
509
649
|
back: "뒤로",
|
|
510
650
|
next: "다음",
|
|
511
651
|
close: "닫기",
|
|
512
652
|
importNRows: "{{count}}개 행 가져오기",
|
|
653
|
+
importNRows_one: "{{count}}개 행 가져오기",
|
|
654
|
+
importNRows_other: "{{count}}개 행 가져오기",
|
|
513
655
|
importingProgress: "가져오는 중…",
|
|
514
656
|
requiredMark: "*",
|
|
515
657
|
required: "필수",
|
|
@@ -521,11 +663,37 @@ const ko = {
|
|
|
521
663
|
month: "월",
|
|
522
664
|
week: "주",
|
|
523
665
|
day: "일",
|
|
524
|
-
agenda: "일정",
|
|
525
666
|
allDay: "종일",
|
|
526
|
-
noEvents: "일정이 없습니다",
|
|
527
667
|
newEvent: "새 일정",
|
|
528
668
|
moreEvents: "+{{count}} 더보기",
|
|
669
|
+
unscheduled: "일정 없음 ({{count}})",
|
|
670
|
+
loading: "캘린더 로딩 중…",
|
|
671
|
+
loadError: "오류: {{message}}",
|
|
672
|
+
configRequired: "캘린더 설정이 필요합니다. startDateField를 지정하세요. 캘린더의 유일한 필수 키입니다. 일정 제목은 titleField 없이도 확인됩니다.",
|
|
673
|
+
configRequiredHint: "뷰의 calendar 블록에 속합니다. 인터페이스 페이지에는 자체 캘린더 슬롯이 없습니다. sourceView를 캘린더를 선언한 뷰로 지정하세요.",
|
|
674
|
+
eventDetails: "일정 세부 정보",
|
|
675
|
+
pullToRefresh: "당겨서 새로고침",
|
|
676
|
+
refreshing: "새로고침 중…",
|
|
677
|
+
onDate: "{{date}}",
|
|
678
|
+
eventTitle: "제목",
|
|
679
|
+
eventTitlePlaceholder: "이 일정은 어떤 내용인가요?",
|
|
680
|
+
creating: "생성 중…",
|
|
681
|
+
titleRequired: "제목을 입력하세요",
|
|
682
|
+
a11y: {
|
|
683
|
+
region: "캘린더",
|
|
684
|
+
grid: "캘린더 그리드",
|
|
685
|
+
goToToday: "오늘로 이동",
|
|
686
|
+
previousPeriod: "이전 기간",
|
|
687
|
+
nextPeriod: "다음 기간",
|
|
688
|
+
currentDate: "현재 날짜: {{date}}",
|
|
689
|
+
dayCell: "{{date}}, 일정 {{count}}개",
|
|
690
|
+
dayCell_one: "{{date}}, 일정 {{count}}개",
|
|
691
|
+
dayCell_other: "{{date}}, 일정 {{count}}개",
|
|
692
|
+
resizeEventEnd: "일정 종료 시점 조절",
|
|
693
|
+
resizeEventEndHint: "드래그하여 종료 날짜 변경",
|
|
694
|
+
resizeStart: "시작 시점 조절",
|
|
695
|
+
resizeEnd: "종료 시점 조절",
|
|
696
|
+
},
|
|
529
697
|
},
|
|
530
698
|
list: {
|
|
531
699
|
firstRunTitle: "아직 아무것도 없습니다",
|
|
@@ -568,7 +736,8 @@ const ko = {
|
|
|
568
736
|
refresh: "새로고침",
|
|
569
737
|
loading: "레코드 로딩 중…",
|
|
570
738
|
recordCount: "{{count}}개 레코드",
|
|
571
|
-
|
|
739
|
+
recordCount_one: "{{count}}개 레코드",
|
|
740
|
+
recordCount_other: "{{count}}개 레코드",
|
|
572
741
|
addRecord: "레코드 추가",
|
|
573
742
|
tabs: "탭",
|
|
574
743
|
allRecords: "전체 레코드",
|
|
@@ -600,7 +769,7 @@ const ko = {
|
|
|
600
769
|
hideFieldsTitle: "필드 숨기기",
|
|
601
770
|
dataLimitReached: "처음 {{limit}}개 레코드를 표시합니다. 더 많은 데이터가 있을 수 있습니다.",
|
|
602
771
|
viewSettings: "보기 설정",
|
|
603
|
-
viewSettingsHint: "그룹화, 색상, 밀도 및 표시 필드.",
|
|
772
|
+
viewSettingsHint: "그룹화, 색상, 밀도 및 표시 필드. 이 보기를 사용하는 모든 사용자에게 적용됩니다.",
|
|
604
773
|
addGroup: "그룹 필드 추가",
|
|
605
774
|
collapsedByDefault: "기본적으로 접힘",
|
|
606
775
|
removeGroup: "제거",
|
|
@@ -665,6 +834,17 @@ const ko = {
|
|
|
665
834
|
},
|
|
666
835
|
gantt: {
|
|
667
836
|
rowLabel: "항목",
|
|
837
|
+
unusableRange: {
|
|
838
|
+
malformedDate: "사용할 수 없는 간트 날짜 범위 — {{path}}은(는) {{value}}이며 유효한 날짜가 아닙니다. 모든 간트 날짜는 파싱할 수 있어야 합니다: 각 행 항목의 startDate와 endDate, 그리고 스키마에 고정한 minDate / maxDate.",
|
|
839
|
+
malformedRow: "사용할 수 없는 간트 행 — {{path}}은(는) {{value}}이며 행의 형태가 아닙니다. 간트는 items를 행 목록으로, 각 행을 label과 자체 items를 가진 객체로, 각 행의 items를 막대 목록으로 읽습니다. 이 위치에 있는 null, 숫자, 문자열 또는 일반 객체는 그릴 수 없습니다.",
|
|
840
|
+
inverted: "사용할 수 없는 간트 날짜 범위 — minDate {{minDate}}이(가) maxDate {{maxDate}}보다 뒤입니다. 고정한 minDate / maxDate는 행에서 계산한 범위보다 우선하므로 이 축에는 열이 없고 막대를 배치할 수 없습니다. 두 값을 서로 바꾸세요.",
|
|
841
|
+
},
|
|
842
|
+
},
|
|
843
|
+
unsupported: {
|
|
844
|
+
objectBoundGantt: "지원되지 않는 variant \"gantt\" — 객체 바인딩 타임라인은 피드 variant({{variants}})를 렌더링합니다. 간트는 각각 중첩된 items를 가진 리터럴 행이 필요하므로 여기서는 간트 축(scale)이 적용되지 않습니다.",
|
|
845
|
+
},
|
|
846
|
+
unconfigured: {
|
|
847
|
+
noDateAxis: "타임라인 날짜 축이 필요합니다 — 이 뷰는 날짜 필드를 선언하지 않았으며, 객체 바인딩 타임라인은 날짜 필드를 지어내지 않습니다. 다음 중 하나를 선언하세요: {{fields}}. 첫 번째가 spec 표기이고 나머지는 레거시 별칭입니다.",
|
|
668
848
|
},
|
|
669
849
|
},
|
|
670
850
|
gantt: {
|
|
@@ -682,6 +862,7 @@ const ko = {
|
|
|
682
862
|
},
|
|
683
863
|
aria: {
|
|
684
864
|
taskList: "작업 목록",
|
|
865
|
+
refreshing: "새로고침 중…",
|
|
685
866
|
},
|
|
686
867
|
tooltip: {
|
|
687
868
|
days: "일",
|
|
@@ -727,13 +908,19 @@ const ko = {
|
|
|
727
908
|
conflict: {
|
|
728
909
|
title: "일정 충돌",
|
|
729
910
|
body: "이 이동은 종속성 제약과 충돌합니다. 영향을 받는 작업 {{count}}건의 일정을 자동으로 조정할까요?",
|
|
911
|
+
body_one: "이 이동은 종속성 제약과 충돌합니다. 영향을 받는 작업 {{count}}건의 일정을 자동으로 조정할까요?",
|
|
912
|
+
body_other: "이 이동은 종속성 제약과 충돌합니다. 영향을 받는 작업 {{count}}건의 일정을 자동으로 조정할까요?",
|
|
730
913
|
confirm: "자동 일정 조정",
|
|
731
914
|
cancel: "그대로 두기",
|
|
732
915
|
},
|
|
733
916
|
autoScheduleDlg: {
|
|
734
917
|
title: "자동 일정 조정",
|
|
735
918
|
body: "종속성 연결을 충족하도록 작업 {{count}}건을 뒤로 미룰까요?",
|
|
919
|
+
body_one: "종속성 연결을 충족하도록 작업 {{count}}건을 뒤로 미룰까요?",
|
|
920
|
+
body_other: "종속성 연결을 충족하도록 작업 {{count}}건을 뒤로 미룰까요?",
|
|
736
921
|
skipped: "잠긴 작업 {{count}}건도 연결을 위반하지만 건너뛰었습니다.",
|
|
922
|
+
skipped_one: "잠긴 작업 {{count}}건도 연결을 위반하지만 건너뛰었습니다.",
|
|
923
|
+
skipped_other: "잠긴 작업 {{count}}건도 연결을 위반하지만 건너뛰었습니다.",
|
|
737
924
|
confirm: "적용",
|
|
738
925
|
cancel: "취소",
|
|
739
926
|
none: "모든 종속성이 충족되었습니다 — 조정할 일정이 없습니다.",
|
|
@@ -812,6 +999,7 @@ const ko = {
|
|
|
812
999
|
tabActionsFor: "{{name}}의 보기 작업",
|
|
813
1000
|
readonlyAriaLabel: "읽기 전용 보기",
|
|
814
1001
|
readonlyTooltip: "시스템 보기 — 코드에 정의되어 있으며 읽기 전용입니다.",
|
|
1002
|
+
malformedFilter: "이 뷰의 필터가 잘못되어 레코드를 표시하지 않습니다: {{subject}} 조건을 적용할 수 없습니다.",
|
|
815
1003
|
},
|
|
816
1004
|
designer: {
|
|
817
1005
|
undo: "실행 취소",
|
|
@@ -837,7 +1025,8 @@ const ko = {
|
|
|
837
1025
|
pageHeaderActions: "페이지 헤더 작업",
|
|
838
1026
|
emojiPicker: "이모지 선택기",
|
|
839
1027
|
reactionCount: "{{emoji}} 반응 {{count}}개",
|
|
840
|
-
|
|
1028
|
+
reactionCount_one: "{{emoji}} 반응 {{count}}개",
|
|
1029
|
+
reactionCount_other: "{{emoji}} 반응 {{count}}개",
|
|
841
1030
|
recordDetail: "레코드 세부 정보",
|
|
842
1031
|
recordDetailWithLabel: "{{label}} 세부 정보",
|
|
843
1032
|
openAsFullPage: "전체 페이지로 열기",
|
|
@@ -864,7 +1053,6 @@ const ko = {
|
|
|
864
1053
|
viewAll: "모두 보기",
|
|
865
1054
|
new: "새로 만들기",
|
|
866
1055
|
add: "추가",
|
|
867
|
-
emptyValue: "—",
|
|
868
1056
|
comments: "댓글",
|
|
869
1057
|
searchComments: "댓글 검색…",
|
|
870
1058
|
addCommentPlaceholder: "댓글 추가… (Ctrl+Enter로 제출)",
|
|
@@ -875,11 +1063,18 @@ const ko = {
|
|
|
875
1063
|
unpin: "고정 해제",
|
|
876
1064
|
justNow: "방금",
|
|
877
1065
|
minutesAgo: "{{count}}분 전",
|
|
1066
|
+
minutesAgo_one: "{{count}}분 전",
|
|
1067
|
+
minutesAgo_other: "{{count}}분 전",
|
|
878
1068
|
hoursAgo: "{{count}}시간 전",
|
|
1069
|
+
hoursAgo_one: "{{count}}시간 전",
|
|
1070
|
+
hoursAgo_other: "{{count}}시간 전",
|
|
879
1071
|
daysAgo: "{{count}}일 전",
|
|
1072
|
+
daysAgo_one: "{{count}}일 전",
|
|
1073
|
+
daysAgo_other: "{{count}}일 전",
|
|
880
1074
|
dropFilesToUpload: "파일을 여기에 끌어놓거나 클릭하여 업로드",
|
|
881
1075
|
attachmentCount: "첨부파일 {{count}}개",
|
|
882
|
-
|
|
1076
|
+
attachmentCount_one: "첨부파일 {{count}}개",
|
|
1077
|
+
attachmentCount_other: "첨부파일 {{count}}개",
|
|
883
1078
|
removeAttachment: "첨부파일 제거",
|
|
884
1079
|
// Record Attachments panel (enable.files, objectstack#4358)
|
|
885
1080
|
attachments: "첨부파일",
|
|
@@ -893,11 +1088,10 @@ const ko = {
|
|
|
893
1088
|
attachmentDownloadDenied: "이 첨부파일을 다운로드할 권한이 없습니다.",
|
|
894
1089
|
attachmentAuthRequired: "이 첨부파일을 다운로드하려면 로그인하세요.",
|
|
895
1090
|
attachmentPermissionDenied: "이 작업을 수행할 권한이 없습니다.",
|
|
896
|
-
|
|
897
|
-
|
|
898
|
-
|
|
899
|
-
|
|
900
|
-
currentVersion: "현재 버전",
|
|
1091
|
+
attachmentsAccessDenied: "이 첨부파일에 접근할 권한이 없습니다.",
|
|
1092
|
+
attachmentsLoadFailed: "이 레코드의 첨부파일을 불러오지 못했습니다.",
|
|
1093
|
+
attachmentsApiUnavailable: "이 객체에서는 첨부 파일 목록을 사용할 수 없습니다.",
|
|
1094
|
+
retryLoadAttachments: "다시 시도",
|
|
901
1095
|
discussion: "토론",
|
|
902
1096
|
showDiscussion: "토론 보기 ({{count}})",
|
|
903
1097
|
hideDiscussion: "토론 숨기기",
|
|
@@ -912,25 +1106,35 @@ const ko = {
|
|
|
912
1106
|
writeComment: "댓글 작성…",
|
|
913
1107
|
subscribedTooltip: "구독 중 — 클릭하여 구독 취소",
|
|
914
1108
|
unsubscribedTooltip: "알림 구독",
|
|
915
|
-
firstRecord: "첫 번째 레코드 (Home)",
|
|
916
|
-
previousRecordKey: "이전 레코드 (←)",
|
|
917
|
-
nextRecordKey: "다음 레코드 (→)",
|
|
918
|
-
lastRecord: "마지막 레코드 (End)",
|
|
919
1109
|
noRecords: "레코드 없음",
|
|
920
|
-
searchWhileNavigating: "탐색 중 검색",
|
|
921
|
-
searchRecords: "레코드 검색…",
|
|
922
1110
|
allActivity: "모든 활동",
|
|
923
1111
|
commentsOnly: "댓글만",
|
|
924
1112
|
fieldChangesFilter: "필드 변경",
|
|
925
1113
|
tasksOnly: "작업만",
|
|
926
1114
|
leaveCommentPlaceholder: "댓글 남기기… (Ctrl+Enter로 제출)",
|
|
927
1115
|
noActivity: "기록된 활동 없음",
|
|
1116
|
+
activityAccessDenied: "이 레코드의 활동을 볼 권한이 없습니다.",
|
|
1117
|
+
commentsAccessDenied: "이 레코드의 댓글을 볼 권한이 없습니다.",
|
|
1118
|
+
// objectui#7149 — the rest of `ActivityTimeline`. The four chip labels the
|
|
1119
|
+
// `detail.*` pack did not already name, and the `formatFieldChange`
|
|
1120
|
+
// sentences, which are assembled in code and so need interpolation holes.
|
|
1121
|
+
allFilter: '전체',
|
|
1122
|
+
createsFilter: '생성',
|
|
1123
|
+
deletesFilter: '삭제',
|
|
1124
|
+
statusChangesFilter: '상태 변경',
|
|
1125
|
+
activityEmptyValue: '(비어 있음)',
|
|
1126
|
+
activityFieldChanged: '{{field}}을(를) "{{old}}"에서 "{{new}}"(으)로 변경했습니다',
|
|
1127
|
+
activityCreated: '이 레코드를 만들었습니다',
|
|
1128
|
+
activityDeleted: '이 레코드를 삭제했습니다',
|
|
1129
|
+
activityStatusChanged: '상태를 "{{value}}"(으)로 변경했습니다',
|
|
1130
|
+
activityUpdated: '레코드를 업데이트했습니다',
|
|
928
1131
|
loadMore: "더 보기",
|
|
929
1132
|
edited: "(수정됨)",
|
|
930
1133
|
via: "{{source}} 통해",
|
|
931
1134
|
viewSource: "원본 보기",
|
|
932
1135
|
replyCount: "답글 {{count}}개",
|
|
933
|
-
|
|
1136
|
+
replyCount_one: "답글 {{count}}개",
|
|
1137
|
+
replyCount_other: "답글 {{count}}개",
|
|
934
1138
|
replyPlaceholder: "답글…",
|
|
935
1139
|
filterActivity: "활동 필터",
|
|
936
1140
|
openDiscussion: "토론 패널 열기",
|
|
@@ -944,6 +1148,9 @@ const ko = {
|
|
|
944
1148
|
writeStrippedTitle: "저장되었지만 일부 필드는 적용되지 않았습니다",
|
|
945
1149
|
writeStrippedReadonly: "다음 필드는 읽기 전용이므로 적용되지 않았습니다: {{fields}}",
|
|
946
1150
|
writeStrippedByState: "다음 필드는 이 레코드의 현재 상태에서 편집할 수 없으므로 적용되지 않았습니다: {{fields}}",
|
|
1151
|
+
writeStrippedPrimaryKey: "다음 필드는 레코드의 식별자이며 저장으로 변경할 수 없으므로 적용되지 않았습니다: {{fields}}",
|
|
1152
|
+
writeStrippedComputed: "다음 필드는 서버가 수식으로 계산하므로 보낸 값이 적용되지 않았습니다: {{fields}}",
|
|
1153
|
+
writeStrippedUnknownReason: "다음 필드는 서버에서 적용되지 않았습니다: {{fields}}",
|
|
947
1154
|
approvalPendingEditable: "승인 진행 중 · 편집 가능",
|
|
948
1155
|
approvalPendingTooltip: "이 레코드에 대기 중인 승인 요청이 있지만 이 단계에서는 편집할 수 있습니다",
|
|
949
1156
|
approvalProgress: "승인 — {{need}}건 중 {{got}}건",
|
|
@@ -956,7 +1163,16 @@ const ko = {
|
|
|
956
1163
|
cancelApprovalTooltipUnlocked: "대기 중인 승인 요청 취소",
|
|
957
1164
|
cancelApprovalFailed: "승인 취소 실패",
|
|
958
1165
|
cancelApprovalUnavailable: "이 데이터 소스에서는 승인 취소가 지원되지 않습니다",
|
|
1166
|
+
pathLabel: '레코드 경로',
|
|
1167
|
+
pathStageCompleted: '{{stage}}, 완료됨',
|
|
1168
|
+
pathStageCurrent: '{{stage}}, 현재 단계',
|
|
1169
|
+
pathStageUpcoming: '{{stage}}, 예정',
|
|
1170
|
+
pathStageLostCurrent: '{{stage}}, 실패, 현재 단계',
|
|
1171
|
+
pathStageLostUpcoming: '{{stage}}, 실패, 도달하지 않음',
|
|
1172
|
+
pathStageWonUpcoming: '{{stage}}, 목표 단계, 도달하지 않음',
|
|
959
1173
|
linkCopied: "링크가 클립보드에 복사됨",
|
|
1174
|
+
commentFailed: "댓글이 게시되지 않았습니다. 아무것도 저장되지 않았습니다. 다시 시도해 주세요.",
|
|
1175
|
+
reactionFailed: "반응이 저장되지 않았습니다. 다시 시도해 주세요.",
|
|
960
1176
|
linkCopyFailed: "링크 복사 실패",
|
|
961
1177
|
cancel: "취소",
|
|
962
1178
|
cancelEdit: "변경 사항 취소",
|
|
@@ -986,6 +1202,7 @@ const ko = {
|
|
|
986
1202
|
sortBy: "정렬 기준",
|
|
987
1203
|
filterPlaceholder: "필터…",
|
|
988
1204
|
highlightFields: "주요 필드",
|
|
1205
|
+
highlightsLabel: "레코드 주요 필드",
|
|
989
1206
|
createdBy: "작성자",
|
|
990
1207
|
updatedBy: "업데이트한 사람",
|
|
991
1208
|
created: "작성됨",
|
|
@@ -999,86 +1216,50 @@ const ko = {
|
|
|
999
1216
|
copyPhone: "전화번호 복사",
|
|
1000
1217
|
copyRecordId: "레코드 ID 복사",
|
|
1001
1218
|
showEmptyFields: "{{count}}개의 빈 필드 표시",
|
|
1219
|
+
showEmptyFields_one: "{{count}}개의 빈 필드 표시",
|
|
1220
|
+
showEmptyFields_other: "{{count}}개의 빈 필드 표시",
|
|
1002
1221
|
hideEmptyFields: "빈 필드 숨기기",
|
|
1003
1222
|
noValue: "값 없음",
|
|
1223
|
+
unresolvedReference: "확인되지 않은 참조: {{value}}을(를) 사용자로 확인하지 못했습니다",
|
|
1224
|
+
unresolvedLookupReference: "확인되지 않은 참조: {{value}}을(를) 이 화면에서 레코드로 확인하지 못했습니다",
|
|
1225
|
+
repeaterItemCount: "항목 {{count}}개",
|
|
1226
|
+
repeaterItemCount_one: "항목 {{count}}개",
|
|
1227
|
+
repeaterItemCount_other: "항목 {{count}}개",
|
|
1228
|
+
fileCount: "파일 {{count}}개",
|
|
1229
|
+
fileCount_one: "파일 {{count}}개",
|
|
1230
|
+
fileCount_other: "파일 {{count}}개",
|
|
1004
1231
|
},
|
|
1005
1232
|
chart: {
|
|
1006
|
-
noData: "차트 데이터가 없습니다",
|
|
1007
1233
|
loading: "차트 로딩 중…",
|
|
1234
|
+
refreshing: "새로고침 중…",
|
|
1008
1235
|
nullCategory: "(미지정)",
|
|
1009
|
-
|
|
1010
|
-
|
|
1011
|
-
|
|
1012
|
-
|
|
1013
|
-
markersCount: "마커 {{count}}개",
|
|
1014
|
-
invalidCoordinates: "좌표가 누락되었거나 유효하지 않아 {{count}}개 레코드가 지도에서 제외되었습니다.",
|
|
1015
|
-
invalidCoordinatesPlural: "좌표가 누락되었거나 유효하지 않아 {{count}}개 레코드가 지도에서 제외되었습니다.",
|
|
1016
|
-
},
|
|
1017
|
-
workflow: {
|
|
1018
|
-
draft: "초안",
|
|
1019
|
-
active: "활성",
|
|
1020
|
-
paused: "일시 중지",
|
|
1021
|
-
completed: "완료",
|
|
1022
|
-
cancelled: "취소됨",
|
|
1023
|
-
save: "저장",
|
|
1024
|
-
publish: "게시",
|
|
1025
|
-
addNode: "노드 추가",
|
|
1026
|
-
workflowFlow: "워크플로우",
|
|
1027
|
-
properties: "속성",
|
|
1028
|
-
connections: "연결",
|
|
1029
|
-
quickConnect: "빠른 연결",
|
|
1030
|
-
fromPlaceholder: "시작…",
|
|
1031
|
-
toPlaceholder: "종료…",
|
|
1032
|
-
connect: "연결",
|
|
1033
|
-
label: "라벨",
|
|
1034
|
-
type: "유형",
|
|
1035
|
-
description: "설명",
|
|
1036
|
-
assignee: "담당자",
|
|
1037
|
-
assigneeType: "담당자 유형",
|
|
1038
|
-
user: "사용자",
|
|
1039
|
-
role: "역할",
|
|
1040
|
-
group: "그룹",
|
|
1041
|
-
expression: "수식",
|
|
1042
|
-
timeoutMinutes: "제한 시간(분)",
|
|
1043
|
-
selectNodeToEdit: "속성을 편집할 노드를 선택하세요",
|
|
1044
|
-
workflowTitle: "워크플로우 제목",
|
|
1045
|
-
newWorkflow: "새 워크플로우",
|
|
1046
|
-
outConnections: "{{count}}개 출력",
|
|
1047
|
-
start: "시작",
|
|
1048
|
-
end: "종료",
|
|
1049
|
-
task: "작업",
|
|
1050
|
-
userTask: "사용자 작업",
|
|
1051
|
-
serviceTask: "서비스 작업",
|
|
1052
|
-
scriptTask: "스크립트 작업",
|
|
1053
|
-
approval: "승인",
|
|
1054
|
-
condition: "조건",
|
|
1055
|
-
parallelGateway: "병렬 게이트웨이",
|
|
1056
|
-
joinGateway: "합류 게이트웨이",
|
|
1057
|
-
boundaryEvent: "경계 이벤트",
|
|
1058
|
-
delay: "지연",
|
|
1059
|
-
notification: "알림",
|
|
1060
|
-
webhook: "Webhook",
|
|
1061
|
-
allowConcurrency: "허용 (동시 실행)",
|
|
1062
|
-
forbidConcurrency: "금지 (새 작업 건너뛰기)",
|
|
1063
|
-
replaceConcurrency: "대체 (기존 취소)",
|
|
1064
|
-
queueConcurrency: "대기열 (현재 완료 후 실행)",
|
|
1065
|
-
conditionEvent: "조건",
|
|
1066
|
-
manualEvent: "수동",
|
|
1067
|
-
webhookEvent: "Webhook",
|
|
1068
|
-
timerEvent: "타이머",
|
|
1069
|
-
signalEvent: "시그널",
|
|
1070
|
-
versionHistory: "버전 기록",
|
|
1071
|
-
importBpmn: "BPMN 가져오기",
|
|
1072
|
-
exportBpmn: "BPMN 내보내기",
|
|
1073
|
-
undo: "실행 취소",
|
|
1074
|
-
redo: "다시 실행",
|
|
1075
|
-
resetZoom: "확대/축소 초기화",
|
|
1236
|
+
scatterOneMeasure: "산점도는 측정값 하나만 그립니다. 계열을 하나만 남기세요:",
|
|
1237
|
+
unconfigured: {
|
|
1238
|
+
noCategoryAxis: "차트 범주 축이 필요합니다 — 객체 바인딩 차트는 축을 임의로 만들지 않습니다. 다음 중 하나를 선언하세요:",
|
|
1239
|
+
},
|
|
1076
1240
|
},
|
|
1077
1241
|
dashboard: {
|
|
1078
|
-
|
|
1242
|
+
// objectui#7063 — the DEFAULT empty state every dashboard widget renders
|
|
1243
|
+
// when its query SUCCEEDED and returned nothing. It replaced the terse
|
|
1244
|
+
// per-widget `noRows` / `noDataAvailable` fragments at the render site;
|
|
1245
|
+
// objectui#7125 deleted those two keys from all ten packs once nothing
|
|
1246
|
+
// read them. The copy here has to read as a state rather than a failure,
|
|
1247
|
+
// which is why it says the widget loaded. `sourceLabel` carries its own
|
|
1248
|
+
// punctuation so the call site concatenates no separator (see
|
|
1249
|
+
// `WidgetEmptyState`).
|
|
1250
|
+
empty: {
|
|
1251
|
+
title: "아직 데이터가 없습니다",
|
|
1252
|
+
message: "이 위젯은 정상적으로 로드되었지만 쿼리가 아직 레코드를 반환하지 않았습니다.",
|
|
1253
|
+
sourceLabel: "데이터 소스:",
|
|
1254
|
+
},
|
|
1079
1255
|
loading: "로딩 중…",
|
|
1256
|
+
refreshing: "새로고침 중…",
|
|
1257
|
+
refreshAll: "모두 새로고침",
|
|
1258
|
+
refreshDashboard: "대시보드 새로고침",
|
|
1080
1259
|
pickMeasures: "이 데이터셋 위젯의 측정값(값)을 선택하세요.",
|
|
1081
1260
|
datasetUnsupported: "이 데이터 소스는 데이터셋 쿼리를 지원하지 않습니다.",
|
|
1261
|
+
widgetForbiddenTitle: "접근 권한 없음",
|
|
1262
|
+
widgetForbiddenMessage: "이 위젯의 데이터를 볼 수 있는 권한이 없습니다.",
|
|
1082
1263
|
details: "세부 정보",
|
|
1083
1264
|
exportCsv: "CSV 내보내기",
|
|
1084
1265
|
openInList: "목록에서 열기",
|
|
@@ -1106,13 +1287,110 @@ const ko = {
|
|
|
1106
1287
|
},
|
|
1107
1288
|
},
|
|
1108
1289
|
addWidget: "위젯 추가",
|
|
1109
|
-
removeWidget: "위젯 제거",
|
|
1110
1290
|
editLayout: "레이아웃 편집",
|
|
1111
1291
|
saveLayout: "레이아웃 저장",
|
|
1112
1292
|
resetLayout: "레이아웃 초기화",
|
|
1113
1293
|
total: "합계",
|
|
1114
|
-
noDataAvailable: "사용 가능한 데이터 없음",
|
|
1115
1294
|
noDataSourceFor: "데이터 소스 없음:",
|
|
1295
|
+
config: {
|
|
1296
|
+
breadcrumb: {
|
|
1297
|
+
dashboard: "대시보드",
|
|
1298
|
+
configuration: "구성",
|
|
1299
|
+
widget: "위젯",
|
|
1300
|
+
chart: "차트",
|
|
1301
|
+
table: "테이블",
|
|
1302
|
+
pivotTable: "피벗 테이블",
|
|
1303
|
+
},
|
|
1304
|
+
section: {
|
|
1305
|
+
general: "일반",
|
|
1306
|
+
layout: "레이아웃",
|
|
1307
|
+
data: "데이터",
|
|
1308
|
+
dataBinding: "데이터 바인딩",
|
|
1309
|
+
appearance: "모양",
|
|
1310
|
+
},
|
|
1311
|
+
field: {
|
|
1312
|
+
title: "제목",
|
|
1313
|
+
description: "설명",
|
|
1314
|
+
columns: "열",
|
|
1315
|
+
gap: "간격",
|
|
1316
|
+
rowHeight: "행 높이(px)",
|
|
1317
|
+
autoRefresh: "자동 새로고침",
|
|
1318
|
+
showDescription: "설명 표시",
|
|
1319
|
+
theme: "테마",
|
|
1320
|
+
widgetType: "위젯 유형",
|
|
1321
|
+
colorVariant: "색상 변형",
|
|
1322
|
+
dataset: "데이터 세트",
|
|
1323
|
+
dimensions: "차원",
|
|
1324
|
+
values: "값",
|
|
1325
|
+
width: "너비(열)",
|
|
1326
|
+
height: "높이(행)",
|
|
1327
|
+
},
|
|
1328
|
+
placeholder: {
|
|
1329
|
+
dashboardTitle: "대시보드 제목",
|
|
1330
|
+
dashboardDescription: "제목 아래에 표시되는 간단한 요약",
|
|
1331
|
+
widgetTitle: "위젯 제목",
|
|
1332
|
+
widgetDescription: "위젯 설명",
|
|
1333
|
+
datasetName: "데이터 세트 이름",
|
|
1334
|
+
selectDataset: "데이터 세트 선택…",
|
|
1335
|
+
searchDatasets: "데이터 세트 검색…",
|
|
1336
|
+
addDimension: "차원 추가…",
|
|
1337
|
+
addMeasure: "측정값 추가…",
|
|
1338
|
+
searchMembers: "검색…",
|
|
1339
|
+
},
|
|
1340
|
+
empty: {
|
|
1341
|
+
datasets: "데이터 세트를 찾을 수 없습니다.",
|
|
1342
|
+
dimensions: "선택된 차원이 없습니다.",
|
|
1343
|
+
measures: "선택된 측정값이 없습니다.",
|
|
1344
|
+
nothingToAdd: "추가할 항목이 없습니다.",
|
|
1345
|
+
},
|
|
1346
|
+
help: {
|
|
1347
|
+
dataset: "이 위젯이 바인딩하는 시맨틱 레이어 데이터 세트(ADR-0021).",
|
|
1348
|
+
dimensions: "이러한 데이터 세트 차원으로 값을 그룹화/분할합니다.",
|
|
1349
|
+
dimensionsPivot: "그룹화/분할 필드입니다. 마지막 차원은 열로 가로 확장됩니다.",
|
|
1350
|
+
values: "표시할 데이터 세트의 측정값(하나 이상).",
|
|
1351
|
+
},
|
|
1352
|
+
action: {
|
|
1353
|
+
add: "추가",
|
|
1354
|
+
remove: "{{name}} 제거",
|
|
1355
|
+
},
|
|
1356
|
+
refresh: {
|
|
1357
|
+
off: "끄기",
|
|
1358
|
+
every30s: "30초마다",
|
|
1359
|
+
every1m: "1분마다",
|
|
1360
|
+
every5m: "5분마다",
|
|
1361
|
+
every15m: "15분마다",
|
|
1362
|
+
every30m: "30분마다",
|
|
1363
|
+
every1h: "1시간마다",
|
|
1364
|
+
},
|
|
1365
|
+
themeOption: {
|
|
1366
|
+
light: "라이트",
|
|
1367
|
+
dark: "다크",
|
|
1368
|
+
auto: "자동",
|
|
1369
|
+
},
|
|
1370
|
+
widgetType: {
|
|
1371
|
+
metric: "지표",
|
|
1372
|
+
bar: "막대 차트",
|
|
1373
|
+
horizontalBar: "가로 막대",
|
|
1374
|
+
line: "꺾은선형 차트",
|
|
1375
|
+
pie: "원형 차트",
|
|
1376
|
+
donut: "도넛 차트",
|
|
1377
|
+
area: "영역 차트",
|
|
1378
|
+
scatter: "분산형 차트",
|
|
1379
|
+
funnel: "퍼널",
|
|
1380
|
+
table: "테이블",
|
|
1381
|
+
pivot: "피벗 테이블",
|
|
1382
|
+
},
|
|
1383
|
+
color: {
|
|
1384
|
+
default: "기본",
|
|
1385
|
+
blue: "파랑",
|
|
1386
|
+
teal: "청록",
|
|
1387
|
+
orange: "주황",
|
|
1388
|
+
purple: "보라",
|
|
1389
|
+
success: "성공",
|
|
1390
|
+
warning: "경고",
|
|
1391
|
+
danger: "위험",
|
|
1392
|
+
},
|
|
1393
|
+
},
|
|
1116
1394
|
trend: {
|
|
1117
1395
|
vsLastQuarter: "전분기 대비",
|
|
1118
1396
|
vsLastMonth: "전월 대비",
|
|
@@ -1122,24 +1400,6 @@ const ko = {
|
|
|
1122
1400
|
vsPreviousPeriod: "이전 기간 대비",
|
|
1123
1401
|
},
|
|
1124
1402
|
},
|
|
1125
|
-
configPanel: {
|
|
1126
|
-
save: "저장",
|
|
1127
|
-
discard: "취소",
|
|
1128
|
-
close: "닫기",
|
|
1129
|
-
layout: "레이아웃",
|
|
1130
|
-
columns: "열",
|
|
1131
|
-
gap: "간격",
|
|
1132
|
-
rowHeight: "행 높이",
|
|
1133
|
-
data: "데이터",
|
|
1134
|
-
refreshInterval: "새로고침 간격",
|
|
1135
|
-
appearance: "모양",
|
|
1136
|
-
title: "제목",
|
|
1137
|
-
showDescription: "설명 표시",
|
|
1138
|
-
theme: "테마",
|
|
1139
|
-
configuration: "구성",
|
|
1140
|
-
general: "일반",
|
|
1141
|
-
advanced: "고급",
|
|
1142
|
-
},
|
|
1143
1403
|
appDesigner: {
|
|
1144
1404
|
createApp: "앱 만들기",
|
|
1145
1405
|
editApp: "앱 편집",
|
|
@@ -1152,10 +1412,6 @@ const ko = {
|
|
|
1152
1412
|
appDescription: "설명",
|
|
1153
1413
|
appIcon: "아이콘",
|
|
1154
1414
|
template: "템플릿",
|
|
1155
|
-
layout: "레이아웃",
|
|
1156
|
-
layoutSidebar: "사이드바",
|
|
1157
|
-
layoutHeader: "헤더",
|
|
1158
|
-
layoutEmpty: "비어 있음",
|
|
1159
1415
|
selectObjects: "오브젝트 선택",
|
|
1160
1416
|
searchObjects: "오브젝트 검색…",
|
|
1161
1417
|
selectAll: "모두 선택",
|
|
@@ -1164,7 +1420,6 @@ const ko = {
|
|
|
1164
1420
|
addGroup: "그룹 추가",
|
|
1165
1421
|
addUrl: "URL 추가",
|
|
1166
1422
|
addSeparator: "구분선 추가",
|
|
1167
|
-
noNavItems: "탐색 항목이 아직 없습니다.",
|
|
1168
1423
|
logoUrl: "Logo URL",
|
|
1169
1424
|
primaryColor: "기본 색상",
|
|
1170
1425
|
faviconUrl: "Favicon URL",
|
|
@@ -1190,16 +1445,13 @@ const ko = {
|
|
|
1190
1445
|
showSort: "정렬 표시",
|
|
1191
1446
|
appearance: "외관",
|
|
1192
1447
|
rowHeight: "행 높이",
|
|
1193
|
-
stripedRows: "줄무늬 행",
|
|
1194
|
-
bordered: "테두리",
|
|
1195
1448
|
livePreview: "실시간 미리보기",
|
|
1196
|
-
stepBasicDesc: "이름, 제목 및
|
|
1449
|
+
stepBasicDesc: "이름, 제목 및 아이콘",
|
|
1197
1450
|
stepObjectsDesc: "비즈니스 객체 선택",
|
|
1198
1451
|
stepNavigationDesc: "네비게이션 트리 구성",
|
|
1199
1452
|
stepBrandingDesc: "로고, 색상 및 파비콘",
|
|
1200
1453
|
noObjectsFound: "객체를 찾을 수 없습니다.",
|
|
1201
1454
|
noNavItemsHint: "네비게이션 항목이 없습니다. 이전 단계에서 객체를 선택하거나 수동으로 추가하세요.",
|
|
1202
|
-
separator: "구분선",
|
|
1203
1455
|
separatorLabel: "— 구분선 —",
|
|
1204
1456
|
newGroup: "새 그룹",
|
|
1205
1457
|
newLink: "새 링크",
|
|
@@ -1233,6 +1485,7 @@ const ko = {
|
|
|
1233
1485
|
navTypeSeparator: "구분선",
|
|
1234
1486
|
navTypeAction: "작업",
|
|
1235
1487
|
navTypeComponent: "컴포넌트",
|
|
1488
|
+
navTypeDoc: "문서",
|
|
1236
1489
|
navEditIcon: "아이콘 편집",
|
|
1237
1490
|
navToggleVisible: "가시성 토글",
|
|
1238
1491
|
navHidden: "숨김",
|
|
@@ -1305,17 +1558,13 @@ const ko = {
|
|
|
1305
1558
|
unique: "고유",
|
|
1306
1559
|
readOnly: "읽기 전용",
|
|
1307
1560
|
hidden: "숨김",
|
|
1308
|
-
indexed: "인덱스됨",
|
|
1309
1561
|
externalId: "외부 ID",
|
|
1310
1562
|
trackHistory: "기록 추적",
|
|
1311
1563
|
defaultValue: "기본값",
|
|
1312
1564
|
placeholder: "자리 표시자",
|
|
1313
1565
|
referenceTo: "참조 대상",
|
|
1314
|
-
formula: "수식",
|
|
1315
1566
|
options: "옵션",
|
|
1316
1567
|
addOption: "옵션 추가",
|
|
1317
|
-
validationRules: "유효성 검사 규칙",
|
|
1318
|
-
addRule: "규칙 추가",
|
|
1319
1568
|
systemBadge: "시스템",
|
|
1320
1569
|
ungrouped: "일반",
|
|
1321
1570
|
deleteConfirmTitle: "필드를 삭제하시겠습니까?",
|
|
@@ -1334,7 +1583,21 @@ const ko = {
|
|
|
1334
1583
|
},
|
|
1335
1584
|
},
|
|
1336
1585
|
console: {
|
|
1586
|
+
studio: {
|
|
1587
|
+
backToHome: "홈으로 돌아가기",
|
|
1588
|
+
},
|
|
1337
1589
|
saveAdvisoryTitle: "저장되었습니다 — 작성 검사에서 {{count}}건의 권장 사항이 발견되었습니다",
|
|
1590
|
+
saveAdvisoryTitle_one: "저장되었습니다 — 작성 검사에서 {{count}}건의 권장 사항이 발견되었습니다",
|
|
1591
|
+
saveAdvisoryTitle_other: "저장되었습니다 — 작성 검사에서 {{count}}건의 권장 사항이 발견되었습니다",
|
|
1592
|
+
publishAdvisoryTitle: "게시되었습니다 — 작성 검사에서 {{count}}건의 권장 사항이 발견되었습니다",
|
|
1593
|
+
publishAdvisoryTitle_one: "게시되었습니다 — 작성 검사에서 {{count}}건의 권장 사항이 발견되었습니다",
|
|
1594
|
+
publishAdvisoryTitle_other: "게시되었습니다 — 작성 검사에서 {{count}}건의 권장 사항이 발견되었습니다",
|
|
1595
|
+
importMappingsUnavailable: "{{object}}의 저장된 가져오기 매핑을 불러오지 못했습니다",
|
|
1596
|
+
importMappingsRefused: "서버가 이 요청을 거부했습니다. 따라서 이 목록이 비어 있는 것은 읽지 못했기 때문이며, 등록된 항목이 없어서가 아닙니다. 다시 로그인하거나 관리자에게 접근 권한을 요청하세요.",
|
|
1597
|
+
importMappingsUnreadable: "이 목록이 비어 있는 것은 읽지 못했기 때문이며, 등록된 항목이 없어서가 아닙니다. 다시 시도하고, 계속 발생하면 문제를 보고하세요.",
|
|
1598
|
+
savedViewsUnavailable: "{{object}}의 저장된 보기를 불러오지 못했습니다",
|
|
1599
|
+
savedViewsRefused: "서버가 이 요청을 거부했습니다. 따라서 이 목록이 비어 있는 것은 읽지 못했기 때문이며, 이 오브젝트에 저장된 보기가 없어서가 아닙니다. 다시 로그인하거나 관리자에게 접근 권한을 요청하세요.",
|
|
1600
|
+
savedViewsUnreadable: "이 목록이 비어 있는 것은 읽지 못했기 때문이며, 이 오브젝트에 저장된 보기가 없어서가 아닙니다. 다시 시도하고, 계속 발생하면 문제를 보고하세요.",
|
|
1338
1601
|
settingsHub: {
|
|
1339
1602
|
title: "설정",
|
|
1340
1603
|
subtitle: "워크스페이스, 연동, 기능 플래그를 구성합니다.",
|
|
@@ -1379,6 +1642,13 @@ const ko = {
|
|
|
1379
1642
|
passwordsDownload: "CSV 다운로드",
|
|
1380
1643
|
},
|
|
1381
1644
|
ai: {
|
|
1645
|
+
pendingDrafts: {
|
|
1646
|
+
count: "게시되지 않은 변경이 {{count}}건 있습니다 — 사용자에게는 보이지 않습니다.",
|
|
1647
|
+
publish: "게시",
|
|
1648
|
+
published: "대기 중인 변경 사항이 모두 반영되었습니다.",
|
|
1649
|
+
failed: "게시에 실패했습니다.",
|
|
1650
|
+
publishedWithFindings: "게시했지만 런타임 프로브에서 문제가 보고되었습니다: {{detail}}",
|
|
1651
|
+
},
|
|
1382
1652
|
usage: {
|
|
1383
1653
|
title: "AI 사용량",
|
|
1384
1654
|
meterBuild: "빌드",
|
|
@@ -1388,9 +1658,16 @@ const ko = {
|
|
|
1388
1658
|
statusFull: "한도에 도달했습니다",
|
|
1389
1659
|
resetsDaily: "오늘 밤 초기화됩니다",
|
|
1390
1660
|
resetsMonthly: "다음 주기에 초기화됩니다",
|
|
1661
|
+
resetsWeeklyDays: "{{count}}일 후 초기화됩니다",
|
|
1662
|
+
resetsWeeklyDays_one: "{{count}}일 후 초기화됩니다",
|
|
1663
|
+
resetsWeeklyDays_other: "{{count}}일 후 초기화됩니다",
|
|
1664
|
+
resetsWeeklyHours: "{{count}}시간 후 초기화됩니다",
|
|
1665
|
+
resetsWeeklyHours_one: "{{count}}시간 후 초기화됩니다",
|
|
1666
|
+
resetsWeeklyHours_other: "{{count}}시간 후 초기화됩니다",
|
|
1391
1667
|
ctaUpgrade: "업그레이드하고 계속하기",
|
|
1392
1668
|
ctaTopUp: "크레딧을 추가하고 계속하기",
|
|
1393
1669
|
ariaLabel: "AI 사용량: {{status}}",
|
|
1670
|
+
breakdownTitle: "지금까지 사용 내역",
|
|
1394
1671
|
},
|
|
1395
1672
|
workspaceTitle: "AI 워크스페이스",
|
|
1396
1673
|
workspaceSubtitle: "질문하고, 살펴보고, 대화를 이어가세요",
|
|
@@ -1400,6 +1677,31 @@ const ko = {
|
|
|
1400
1677
|
share: "공유",
|
|
1401
1678
|
shareTitle: "이 대화 공유",
|
|
1402
1679
|
shareDisabledTitle: "공유하려면 먼저 대화를 시작하세요",
|
|
1680
|
+
buildDoctor: "빌드 진단",
|
|
1681
|
+
buildDoctorTitle: "빌드 진단 — 실제로 반영된 내용은?",
|
|
1682
|
+
buildDoctorDisabledTitle: "먼저 메시지를 보내세요",
|
|
1683
|
+
buildDoctorDrawer: {
|
|
1684
|
+
description: '에이전트가 주장한 내용과 실제로 반영된 내용을 비교합니다. 읽기 전용 진단입니다.',
|
|
1685
|
+
reconciling: '대조 중…',
|
|
1686
|
+
notAvailable: '사용할 수 없음 — 대화를 찾을 수 없거나 접근 권한이 없습니다.',
|
|
1687
|
+
untitled: '(제목 없음)',
|
|
1688
|
+
summary: '{{turns}}턴 · 메시지 {{messages}}개 · {{tokens}} tok · LLM {{seconds}}초',
|
|
1689
|
+
allLive: '시도한 변경 {{count}}개가 모두 반영되었습니다 — 사라진 것은 없습니다.',
|
|
1690
|
+
discrepancies: '불일치 {{count}}건 — 채팅에서 말한 내용과 실제로 반영된 내용이 다릅니다.',
|
|
1691
|
+
orphanedTitle: '제안되었지만 적용되지 않음',
|
|
1692
|
+
orphanedHint: '에이전트가 제안한 확인 카드를 이후 어떤 턴에서도 적용하지 않아 변경이 조용히 사라졌습니다.',
|
|
1693
|
+
missingTitle: '적용되었다고 했지만 없음',
|
|
1694
|
+
missingHint: '도구 결과는 적용되었다고 했지만 아티팩트가 sys_metadata에 반영되어 있지 않습니다.',
|
|
1695
|
+
toolErrorsTitle: '도구 오류',
|
|
1696
|
+
toolErrorsHint: '빌드 중 오류를 반환한 도구 호출입니다.',
|
|
1697
|
+
verifyTitle: '빌드 검사 (verify_build)',
|
|
1698
|
+
yourApp: '내 앱:',
|
|
1699
|
+
noIssues: '문제 0개',
|
|
1700
|
+
issueCount: '문제 {{count}}개',
|
|
1701
|
+
platformNoise: '플랫폼 sys_* 발견 {{count}}건 숨김',
|
|
1702
|
+
pendingActions: '대기 중인 작업',
|
|
1703
|
+
timeline: '타임라인 ({{count}})',
|
|
1704
|
+
},
|
|
1403
1705
|
newChat: "새로 만들기",
|
|
1404
1706
|
searchChats: "채팅 검색…",
|
|
1405
1707
|
noChatsYet: "아직 채팅이 없습니다",
|
|
@@ -1429,7 +1731,7 @@ const ko = {
|
|
|
1429
1731
|
empty: {
|
|
1430
1732
|
build: {
|
|
1431
1733
|
title: "AI로 빌드",
|
|
1432
|
-
description: "
|
|
1734
|
+
description: "앱을 일상 언어로 설명해 주세요 — 객체, 화면, 샘플 데이터를 초안으로 만들어 드리면 검토 후 게시하시면 됩니다.",
|
|
1433
1735
|
},
|
|
1434
1736
|
ask: {
|
|
1435
1737
|
title: "데이터에 질문하기",
|
|
@@ -1438,7 +1740,7 @@ const ko = {
|
|
|
1438
1740
|
editApp: {
|
|
1439
1741
|
title: "“{{app}}” 편집 중",
|
|
1440
1742
|
titleGeneric: "이 앱 편집",
|
|
1441
|
-
description: "무엇을 바꿀까요? 이 앱을 그 자리에서 수정합니다 — 필드, 객체, 뷰,
|
|
1743
|
+
description: "무엇을 바꿀까요? 이 앱을 그 자리에서 수정합니다 — 필드, 객체, 뷰, 대시보드를 추가하거나 기존 내용을 조정할 수 있습니다.",
|
|
1442
1744
|
},
|
|
1443
1745
|
},
|
|
1444
1746
|
clearConversation: "지우기",
|
|
@@ -1491,29 +1793,52 @@ const ko = {
|
|
|
1491
1793
|
recentRecords: "가장 최근에 생성된 레코드 5건을 보여 주세요.",
|
|
1492
1794
|
recordCounts: "객체별 레코드 수를 세어 주세요.",
|
|
1493
1795
|
},
|
|
1796
|
+
// cloud#1984 — these five chips are the maker's own recommendations, so
|
|
1797
|
+
// they may only ask for what ADR-0112 v1 BUILDS: objects, fields, views
|
|
1798
|
+
// (grid/kanban/calendar/gallery), pages, dashboards and sample data. No
|
|
1799
|
+
// wording that promises autonomous behaviour (alert / remind / notify /
|
|
1800
|
+
// automate / status workflow) — v1 has no flows, actions or schedules, and
|
|
1801
|
+
// the model silently degrades such a request into a board or a filtered
|
|
1802
|
+
// view, so the chip would promise an alert and deliver a page. REVERT to
|
|
1803
|
+
// the automation wording when ADR-0112 v2 re-adds flows and actions.
|
|
1494
1804
|
metadataAssistant: {
|
|
1495
|
-
buildCrm: "영업 CRM을 만들어 줘 — 고객, 담당자,
|
|
1496
|
-
buildApp: "프로젝트 트래커를 만들어 줘 — 프로젝트, 담당자와 마감일이 있는 작업, 상태별
|
|
1497
|
-
buildFlow: "고객 지원 데스크를 설계해 줘 —
|
|
1498
|
-
buildInventory: "재고 앱을 만들어 줘 — 제품, 재고 수량, 공급업체,
|
|
1499
|
-
buildRecruiting: "채용 트래커를 만들어 줘 — 지원자, 채용 중인 직무, 면접
|
|
1805
|
+
buildCrm: "영업 CRM을 만들어 줘 — 고객, 담당자, 단계 필드가 있는 거래, 단계별 금액을 합산하는 대시보드.",
|
|
1806
|
+
buildApp: "프로젝트 트래커를 만들어 줘 — 프로젝트, 담당자와 마감일이 있는 작업, 상태별 보드, 마감일 캘린더.",
|
|
1807
|
+
buildFlow: "고객 지원 데스크를 설계해 줘 — 우선순위와 상태 필드가 있는 티켓, 상태별 보드, 고객 연결.",
|
|
1808
|
+
buildInventory: "재고 앱을 만들어 줘 — 제품, 재고 수량, 공급업체, 재주문점 미만 제품을 걸러내는 뷰.",
|
|
1809
|
+
buildRecruiting: "채용 트래커를 만들어 줘 — 지원자, 채용 중인 직무, 면접 단계 필드, 단계별 보드.",
|
|
1500
1810
|
},
|
|
1501
1811
|
generic: {
|
|
1502
1812
|
help: "무엇을 도와줄 수 있나요?",
|
|
1503
1813
|
availableObjects: "사용 가능한 데이터 객체를 나열해 주세요.",
|
|
1504
1814
|
recentActivity: "내 최근 활동을 요약해 주세요.",
|
|
1505
1815
|
},
|
|
1816
|
+
// objectui#7709 — the edit-mode starters, shown when the maker is bound
|
|
1817
|
+
// to an EXISTING app (`?package=`). Same rule as the five above: they
|
|
1818
|
+
// may only ask for what ADR-0112 v1 BUILDS. The fourth chip used to be
|
|
1819
|
+
// `addAutomation` ("an approval, a status flow, or a notification") and
|
|
1820
|
+
// every capability it named is refused by v1 (cloud#1956 / PR #1970), so
|
|
1821
|
+
// it now asks for sample data — `seed` IS on v1's whitelist, and having
|
|
1822
|
+
// no data is what an existing app most often lacks. REVERT: when
|
|
1823
|
+
// ADR-0112 v2 re-adds flows and actions, THIS chip's automation wording
|
|
1824
|
+
// comes back as `addAutomation`; the retired string is pinned for every
|
|
1825
|
+
// pack in `packages/i18n/src/__tests__/makerEditChips-v1-scope-7709.test.ts`.
|
|
1506
1826
|
editApp: {
|
|
1507
1827
|
addField: "객체 중 하나에 필드를 추가해 주세요.",
|
|
1508
1828
|
addObject: "새 객체를 추가하고 기존 객체와 연결해 주세요.",
|
|
1509
1829
|
addDashboard: "핵심 지표를 위한 대시보드를 추가해 주세요.",
|
|
1510
|
-
|
|
1830
|
+
addSampleData: "기존 객체에 데모에서 보여 줄 만한 현실적인 샘플 데이터를 채워 주세요.",
|
|
1511
1831
|
},
|
|
1512
1832
|
},
|
|
1513
1833
|
changesTitle: "변경 확인",
|
|
1514
1834
|
changesConfirmed: "확인됨",
|
|
1515
1835
|
changesConfirm: "변경 확정",
|
|
1516
1836
|
changesConfirmHint: "회신하여 이 변경을 확정하거나 조정하세요.",
|
|
1837
|
+
changesApplying: "적용 중…",
|
|
1838
|
+
changesApplied: "적용됨",
|
|
1839
|
+
changesDrafted: "초안으로 저장됨",
|
|
1840
|
+
changesFailed: "적용되지 않음",
|
|
1841
|
+
discussing: "논의 중: {{target}}",
|
|
1517
1842
|
changeVerb: {
|
|
1518
1843
|
createObject: "객체 생성",
|
|
1519
1844
|
addField: "필드 추가",
|
|
@@ -1584,6 +1909,13 @@ const ko = {
|
|
|
1584
1909
|
pages: "페이지",
|
|
1585
1910
|
reports: "보고서",
|
|
1586
1911
|
system: "시스템",
|
|
1912
|
+
marketplace: "마켓플레이스",
|
|
1913
|
+
settings: '설정',
|
|
1914
|
+
apps: '앱',
|
|
1915
|
+
profile: '프로필',
|
|
1916
|
+
approvals: '승인',
|
|
1917
|
+
aiApprovals: 'AI 승인',
|
|
1918
|
+
auditLog: '감사 로그',
|
|
1587
1919
|
},
|
|
1588
1920
|
// objectui#4024 — the single-namespace settings screen. Its sibling
|
|
1589
1921
|
// `settingsHub` above already resolved through this pack; the view was the
|
|
@@ -1675,6 +2007,21 @@ const ko = {
|
|
|
1675
2007
|
records: "레코드",
|
|
1676
2008
|
recentRecords: "최근 본 항목",
|
|
1677
2009
|
},
|
|
2010
|
+
// objectui#9954 — see the `en` pack for what raises each case.
|
|
2011
|
+
readRate: {
|
|
2012
|
+
ratioTitle: '이 환경의 읽기 양이 비정상적입니다',
|
|
2013
|
+
ratio: '쓰기 1행당 {{ratio}}행을 읽고 있습니다. 플랫폼은 {{threshold}} 초과 비율을 표시합니다. 제한하거나 차단하는 것은 없습니다. 읽기 패턴을 검토할 수 있도록 알리는 보고입니다.',
|
|
2014
|
+
noWritesTitle: '이 환경은 읽기만 있고 쓰기가 전혀 없습니다',
|
|
2015
|
+
noWrites: '행을 읽고 있지만 쓰기가 전혀 없어 읽기 비율에 상한이 없습니다. 가장 심각한 수치입니다. 플랫폼은 {{threshold}} 초과 비율을 표시합니다. 제한하거나 차단하는 것은 없습니다. 읽기 패턴을 검토할 수 있도록 알리는 보고입니다.',
|
|
2016
|
+
},
|
|
2017
|
+
// objectui#10439 — see the `en` pack for what raises each case.
|
|
2018
|
+
storageUsage: {
|
|
2019
|
+
warningTitle: '저장 공간이 거의 가득 찼습니다',
|
|
2020
|
+
warning: '{{limit}} MB 중 {{used}} MB 사용 중입니다. 저장 공간이 가득 차면 업로드와 가져오기가 일시 중지됩니다.',
|
|
2021
|
+
blockedTitle: '저장 공간이 가득 찼습니다: 업로드와 가져오기가 일시 중지되었습니다',
|
|
2022
|
+
blocked: '{{limit}} MB 중 {{used}} MB 사용 중입니다. 기존 데이터는 그대로 유지되며, 읽기, 내보내기, 개별 레코드 편집은 계속 사용할 수 있습니다.',
|
|
2023
|
+
upgrade: '업그레이드하고 계속하기',
|
|
2024
|
+
},
|
|
1678
2025
|
errors: {
|
|
1679
2026
|
somethingWentWrong: "문제가 발생했습니다",
|
|
1680
2027
|
unexpectedError: "이 뷰를 렌더링하는 중 예기치 않은 오류가 발생했습니다.",
|
|
@@ -1705,6 +2052,7 @@ const ko = {
|
|
|
1705
2052
|
viewNameInvalid: "소문자, 숫자, 밑줄을 사용하고 문자 또는 밑줄로 시작하세요.",
|
|
1706
2053
|
systemViewReadonly: "시스템 보기는 코드에 정의되어 있어 읽기 전용입니다.",
|
|
1707
2054
|
cannotEditMetaView: "이 보기는 코드에 정의된 기본 제공 보기이므로 변경할 수 없습니다.",
|
|
2055
|
+
viewConfigPermissionDenied: "보기 설정은 이 보기를 사용하는 모든 사용자에게 적용되므로 변경하려면 '메타데이터 관리' 권한이 필요합니다. 관리자에게 변경을 요청하세요.",
|
|
1708
2056
|
cannotDeleteMetaView: "이 보기는 코드에 정의된 기본 제공 보기이므로 삭제할 수 없습니다.",
|
|
1709
2057
|
expandToPage: "전체 페이지로 열기",
|
|
1710
2058
|
objectNotFound: "객체를 찾을 수 없음",
|
|
@@ -1713,101 +2061,33 @@ const ko = {
|
|
|
1713
2061
|
filterOrNotSavable: "이 필터는 조건 사이에 OR을 사용하며, 저장된 뷰에는 아직 저장할 수 없습니다. 현재 목록에는 계속 적용됩니다. 뷰에 저장하려면 OR 그룹을 해제하세요.",
|
|
1714
2062
|
filterNestedNotSavable: "이 필터는 중첩된 조건 그룹을 사용하며, 저장된 뷰에는 저장할 수 없습니다. 뷰에 저장하려면 단일 조건 목록으로 펼치세요.",
|
|
1715
2063
|
allRecords: "모든 레코드",
|
|
1716
|
-
exitDesignMode: "디자인 모드 종료",
|
|
1717
|
-
enterDesignMode: "디자인 모드 시작",
|
|
1718
|
-
metadataInspector: "메타데이터 인스펙터",
|
|
1719
|
-
editView: "뷰 편집",
|
|
1720
|
-
addView: "뷰 추가",
|
|
1721
|
-
designTools: "디자인 도구",
|
|
1722
2064
|
new: "새로 만들기",
|
|
1723
2065
|
configureView: "뷰 구성",
|
|
1724
|
-
closePanel: "패널 닫기",
|
|
1725
|
-
page: "페이지",
|
|
1726
|
-
pageConfigHint: "도구 모음, 탐색 및 뷰 셸 설정",
|
|
1727
|
-
listConfigHint: "이 목록 유형의 데이터 렌더링, 열 및 모양",
|
|
1728
|
-
general: "일반",
|
|
1729
|
-
generalHint: "보기 제목, 설명 및 유형",
|
|
1730
|
-
toolbar: "도구 모음",
|
|
1731
|
-
toolbarHint: "검색, 필터, 정렬, 그룹화 및 밀도 전환",
|
|
1732
2066
|
toolbarEnabledCount: "{{total}}개 중 {{count}}개 활성화",
|
|
1733
|
-
navigationSection: "탐색",
|
|
1734
|
-
navigationHint: "행 클릭 동작 및 상세 보기 설정",
|
|
1735
|
-
records: "레코드",
|
|
1736
|
-
recordsHint: "선택 모드, 레코드 추가 및 인라인 편집",
|
|
1737
|
-
exportPrint: "내보내기 및 인쇄",
|
|
1738
|
-
exportPrintHint: "내보내기 형식, 인쇄 및 레코드 수 표시",
|
|
1739
|
-
showAllFields: "모두 표시",
|
|
1740
|
-
hideAllFields: "모두 숨기기",
|
|
1741
2067
|
searchFields: "필드 검색…",
|
|
1742
2068
|
title: "제목",
|
|
1743
|
-
description: "설명",
|
|
1744
|
-
data: "데이터",
|
|
1745
|
-
source: "소스",
|
|
1746
|
-
columns: "열",
|
|
1747
|
-
filterBy: "필터 기준",
|
|
1748
|
-
sortBy: "정렬 기준",
|
|
1749
|
-
appearance: "외관",
|
|
1750
|
-
showDescription: "설명 표시",
|
|
1751
2069
|
viewType: "뷰 유형",
|
|
1752
|
-
userFilters: "사용자 필터",
|
|
1753
|
-
enableSearch: "검색 활성화",
|
|
1754
|
-
enableFilter: "필터 활성화",
|
|
1755
|
-
enableSort: "정렬 활성화",
|
|
1756
|
-
enableHideFields: "필드 숨기기 활성화",
|
|
1757
|
-
enableGroup: "그룹 활성화",
|
|
1758
|
-
enableColor: "색상 활성화",
|
|
1759
|
-
enableDensity: "밀도 활성화",
|
|
1760
|
-
userActions: "사용자 작업",
|
|
1761
|
-
addRecordViaForm: "양식으로 레코드 추가",
|
|
1762
|
-
advanced: "고급",
|
|
1763
|
-
allowExport: "내보내기 허용",
|
|
1764
2070
|
recordCount: "{{count}}개 레코드",
|
|
1765
|
-
|
|
1766
|
-
|
|
1767
|
-
columnsConfigured: "{{count}}개 열",
|
|
2071
|
+
recordCount_one: "{{count}}개 레코드",
|
|
2072
|
+
recordCount_other: "{{count}}개 레코드",
|
|
1768
2073
|
save: "저장",
|
|
1769
2074
|
discard: "취소",
|
|
1770
2075
|
createView: "뷰 생성",
|
|
1771
2076
|
newView: "새 뷰",
|
|
1772
|
-
typeOptions: "유형 옵션",
|
|
1773
2077
|
groupByField: "그룹화 필드",
|
|
1774
2078
|
startDateField: "시작 날짜 필드",
|
|
1775
2079
|
titleField: "제목 필드",
|
|
1776
2080
|
latitudeField: "위도 필드",
|
|
1777
2081
|
longitudeField: "경도 필드",
|
|
1778
2082
|
imageField: "이미지 필드",
|
|
1779
|
-
dateField: "날짜 필드",
|
|
1780
2083
|
selectField: "필드 선택…",
|
|
1781
|
-
gridOptionsHint: "그리드 뷰는 위에서 구성된 열을 사용합니다.",
|
|
1782
|
-
groupBy: "그룹화 기준",
|
|
1783
|
-
prefixField: "접두사 필드",
|
|
1784
|
-
fields: "필드",
|
|
1785
|
-
fieldsVisible: "{{count}}개 표시",
|
|
1786
|
-
sortsCount: "{{count}}개 정렬",
|
|
1787
|
-
filtersCount: "{{count}}개 필터",
|
|
1788
2084
|
endDateField: "종료 날짜 필드",
|
|
1789
|
-
color: "색상",
|
|
1790
|
-
fieldTextColor: "필드 텍스트 색상",
|
|
1791
|
-
rowHeight: "행 높이",
|
|
1792
|
-
wrapHeaders: "헤더 줄바꿈",
|
|
1793
|
-
showFieldDescriptions: "필드 설명 표시",
|
|
1794
|
-
collapseAllByDefault: "기본적으로 모두 접기",
|
|
1795
|
-
striped: "줄무늬 행",
|
|
1796
|
-
bordered: "테두리 셀",
|
|
1797
|
-
inlineEdit: "인라인으로 레코드 편집",
|
|
1798
|
-
addDeleteRecordsInline: "인라인으로 레코드 추가/삭제",
|
|
1799
|
-
clickIntoRecordDetails: "레코드 상세 보기 클릭",
|
|
1800
|
-
navigationMode: "탐색 모드",
|
|
1801
|
-
navigationWidth: "탐색 너비",
|
|
1802
|
-
navigationWidthHint: "서랍, 모달, 분할 탐색 모드에서 사용 가능",
|
|
1803
|
-
openNewTab: "새 탭에서 열기",
|
|
1804
|
-
openNewTabHint: "페이지 및 새 창 탐색 모드에서 사용 가능",
|
|
1805
2085
|
import: "가져오기",
|
|
1806
2086
|
importTitle: "CSV에서 가져오기",
|
|
1807
2087
|
importedToast: "{{count}}개 행 가져옴.",
|
|
2088
|
+
importedToast_one: "{{count}}개 행 가져옴.",
|
|
2089
|
+
importedToast_other: "{{count}}개 행 가져옴.",
|
|
1808
2090
|
importedWithSkipped: "{{ok}}개 행 가져옴; {{skipped}}개 건너뜀.",
|
|
1809
|
-
showAdvancedSettings: "고급 설정 표시",
|
|
1810
|
-
showFewerSettings: "설정 줄이기",
|
|
1811
2091
|
createViewDesc: "보기 유형을 선택하고 이름을 지정하세요. 모든 설정은 나중에 변경할 수 있습니다.",
|
|
1812
2092
|
cancel: "취소",
|
|
1813
2093
|
create: "생성",
|
|
@@ -1815,6 +2095,8 @@ const ko = {
|
|
|
1815
2095
|
deleteViewTitle: "보기 삭제",
|
|
1816
2096
|
deleteViewConfirm: "\"{{name}}\" 보기를 삭제하시겠습니까? 이 작업은 취소할 수 없습니다.",
|
|
1817
2097
|
bulkDeleteConfirm: "선택한 {{count}}개 레코드를 삭제하시겠습니까? 이 작업은 취소할 수 없습니다.",
|
|
2098
|
+
bulkDeleteConfirm_one: "선택한 {{count}}개 레코드를 삭제하시겠습니까? 이 작업은 취소할 수 없습니다.",
|
|
2099
|
+
bulkDeleteConfirm_other: "선택한 {{count}}개 레코드를 삭제하시겠습니까? 이 작업은 취소할 수 없습니다.",
|
|
1818
2100
|
duplicateViewName: "해당 이름의 보기가 이미 존재합니다.",
|
|
1819
2101
|
viewTypeGrid: "그리드",
|
|
1820
2102
|
viewTypeGridDesc: "레코드의 스프레드시트 형식 테이블.",
|
|
@@ -1851,62 +2133,17 @@ const ko = {
|
|
|
1851
2133
|
chartTypePie: "원형 차트",
|
|
1852
2134
|
chartTypeArea: "영역 차트",
|
|
1853
2135
|
chartTypeScatter: "분산형 차트",
|
|
1854
|
-
|
|
1855
|
-
|
|
1856
|
-
|
|
1857
|
-
|
|
1858
|
-
|
|
1859
|
-
|
|
1860
|
-
|
|
1861
|
-
|
|
1862
|
-
pageSize: "페이지 크기",
|
|
1863
|
-
pageSizeOptions: "페이지 크기 옵션",
|
|
1864
|
-
exportFormats: "내보내기 형식",
|
|
1865
|
-
exportMaxRecords: "최대 레코드 수",
|
|
1866
|
-
exportIncludeHeaders: "헤더 포함",
|
|
1867
|
-
exportFileNamePrefix: "파일 이름 접두사",
|
|
1868
|
-
searchableFields: "검색 가능한 필드",
|
|
1869
|
-
filterableFields: "필터링 가능한 필드",
|
|
1870
|
-
resizableColumns: "크기 조절 가능한 열",
|
|
1871
|
-
densityCompact: "컴팩트",
|
|
1872
|
-
densityComfortable: "보통",
|
|
1873
|
-
densitySpacious: "넓음",
|
|
1874
|
-
densityMode: "밀도 모드",
|
|
1875
|
-
hiddenFields: "숨겨진 필드",
|
|
1876
|
-
rowActions: "행 작업",
|
|
1877
|
-
bulkActions: "일괄 작업",
|
|
1878
|
-
sharing: "공유",
|
|
1879
|
-
sharingEnabled: "공유 활성화",
|
|
1880
|
-
sharingVisibility: "가시성",
|
|
1881
|
-
addRecordEnabled: "레코드 추가 활성화",
|
|
1882
|
-
addRecordPosition: "위치",
|
|
1883
|
-
addRecordMode: "모드",
|
|
1884
|
-
addRecordFormView: "양식 보기",
|
|
1885
|
-
conditionalFormatting: "조건부 서식",
|
|
1886
|
-
addRule: "규칙 추가",
|
|
1887
|
-
quickFilters: "빠른 필터",
|
|
1888
|
-
addQuickFilter: "빠른 필터 추가",
|
|
1889
|
-
ufElements: "요소",
|
|
1890
|
-
ufDropdown: "드롭다운",
|
|
2136
|
+
dataset: "데이터 세트",
|
|
2137
|
+
datasetHelp: "차트는 이 객체의 데이터 세트에서 숫자를 읽습니다.",
|
|
2138
|
+
chartMeasure: "측정값",
|
|
2139
|
+
chartMeasureHelp: "값 축에 표시할 데이터 세트의 측정값입니다.",
|
|
2140
|
+
chartDimension: "차원",
|
|
2141
|
+
chartDimensionHelp: "값을 그룹화할 데이터 세트의 차원입니다(선택 사항).",
|
|
2142
|
+
viewTypeUnavailableDataset: "이 객체에는 차트에 사용할 데이터 세트가 없습니다.",
|
|
2143
|
+
noDatasetMeasure: "이 데이터 세트에는 차트에 사용할 측정값이 선언되어 있지 않습니다.",
|
|
1891
2144
|
ufTabs: "탭",
|
|
1892
|
-
ufToggle: "토글",
|
|
1893
2145
|
ufAddField: "+ 필터 필드 추가…",
|
|
1894
|
-
ufNoFields: "사용 가능한 필드 없음",
|
|
1895
|
-
ufAddTab: "+ 탭 추가",
|
|
1896
|
-
ufTabLabel: "레이블",
|
|
1897
2146
|
ufShowAllRecords: "\"모든 레코드\" 탭 표시",
|
|
1898
|
-
ufAllowAddTab: "탭 추가 허용",
|
|
1899
|
-
showRecordCount: "레코드 수 표시",
|
|
1900
|
-
allowPrinting: "인쇄 허용",
|
|
1901
|
-
virtualScroll: "가상 스크롤",
|
|
1902
|
-
emptyStateTitle: "빈 상태 제목",
|
|
1903
|
-
emptyStateMessage: "빈 상태 메시지",
|
|
1904
|
-
emptyStateIcon: "빈 상태 아이콘",
|
|
1905
|
-
ariaLabel: "ARIA 레이블",
|
|
1906
|
-
ariaDescribedBy: "ARIA 설명",
|
|
1907
|
-
ariaLive: "ARIA 라이브",
|
|
1908
|
-
accessibility: "접근성",
|
|
1909
|
-
viewTabs: "보기 탭",
|
|
1910
2147
|
},
|
|
1911
2148
|
localeSwitcher: {
|
|
1912
2149
|
label: "언어",
|
|
@@ -1917,6 +2154,9 @@ const ko = {
|
|
|
1917
2154
|
unpinItem: "{{name}} 고정 해제",
|
|
1918
2155
|
dragToReorder: "드래그하여 순서 변경",
|
|
1919
2156
|
favorites: "즐겨찾기",
|
|
2157
|
+
launcherLabel: "앱 런처",
|
|
2158
|
+
menuLabel: "앱 탐색",
|
|
2159
|
+
menuEmpty: "이 앱에는 열 수 있는 탐색 항목이 없습니다.",
|
|
1920
2160
|
},
|
|
1921
2161
|
},
|
|
1922
2162
|
auth: {
|
|
@@ -1970,6 +2210,8 @@ const ko = {
|
|
|
1970
2210
|
resendOtpCountdownText: "{seconds}초 후 재전송",
|
|
1971
2211
|
usePhoneOtpText: "인증 코드로 로그인",
|
|
1972
2212
|
usePasswordSignInText: "비밀번호로 로그인하기",
|
|
2213
|
+
socialButton: "{provider} 계정으로 계속",
|
|
2214
|
+
orText: "또는 이메일로 계속",
|
|
1973
2215
|
},
|
|
1974
2216
|
register: {
|
|
1975
2217
|
title: "계정 만들기",
|
|
@@ -1988,8 +2230,12 @@ const ko = {
|
|
|
1988
2230
|
submittingButton: "계정 생성 중…",
|
|
1989
2231
|
hasAccountText: "이미 계정이 있으신가요?",
|
|
1990
2232
|
signInText: "로그인",
|
|
2233
|
+
socialButton: "{provider} 계정으로 가입",
|
|
2234
|
+
orText: "또는 이메일로 계속",
|
|
1991
2235
|
errors: {
|
|
1992
2236
|
userExists: "해당 이메일로 이미 계정이 존재합니다. 로그인해 보세요.",
|
|
2237
|
+
selfRegistrationClosed: "이 환경에서는 직접 가입을 받지 않습니다. 관리자에게 초대를 요청하세요.",
|
|
2238
|
+
emailDomainNotAllowed: "이 이메일의 도메인으로는 여기에서 가입할 수 없습니다. 조직 이메일을 사용하거나 관리자에게 초대를 요청하세요.",
|
|
1993
2239
|
},
|
|
1994
2240
|
verifyInbox: {
|
|
1995
2241
|
title: "받은 편지함을 확인하세요",
|
|
@@ -2008,7 +2254,7 @@ const ko = {
|
|
|
2008
2254
|
submitButton: "재설정 링크 보내기",
|
|
2009
2255
|
submittingButton: "전송 중…",
|
|
2010
2256
|
successTitle: "이메일을 확인하세요",
|
|
2011
|
-
successDescription: "{
|
|
2257
|
+
successDescription: "{email}(으)로 비밀번호 재설정 링크를 전송했습니다. 수신함을 확인해주세요.",
|
|
2012
2258
|
backToSignInText: "로그인으로 돌아가기",
|
|
2013
2259
|
rememberPasswordText: "비밀번호가 기억나시나요?",
|
|
2014
2260
|
signInText: "로그인",
|
|
@@ -2188,6 +2434,15 @@ const ko = {
|
|
|
2188
2434
|
role: "역할",
|
|
2189
2435
|
save: "변경 사항 저장",
|
|
2190
2436
|
},
|
|
2437
|
+
language: {
|
|
2438
|
+
title: "언어",
|
|
2439
|
+
description: "회원님에게 발송되는 알림과 메시지에 사용되는 언어입니다. 화면 표시 언어는 지구본 메뉴에서 따로 변경합니다.",
|
|
2440
|
+
label: "선호 언어",
|
|
2441
|
+
systemDefault: "배포 기본값 사용",
|
|
2442
|
+
save: "저장",
|
|
2443
|
+
saved: "언어 설정을 업데이트했습니다.",
|
|
2444
|
+
readOnly: "이 계정의 언어는 관리자가 관리합니다.",
|
|
2445
|
+
},
|
|
2191
2446
|
password: {
|
|
2192
2447
|
changeTitle: "비밀번호 변경",
|
|
2193
2448
|
setTitle: "로컬 비밀번호 설정",
|
|
@@ -2219,7 +2474,6 @@ const ko = {
|
|
|
2219
2474
|
label: "워크스페이스",
|
|
2220
2475
|
default: "내 워크스페이스",
|
|
2221
2476
|
switch: "워크스페이스 전환",
|
|
2222
|
-
create: "워크스페이스 생성",
|
|
2223
2477
|
createTitle: "워크스페이스 만들기",
|
|
2224
2478
|
createDescription: "워크스페이스는 팀이 협업할 수 있는 공유 공간입니다.",
|
|
2225
2479
|
createButton: "워크스페이스 생성",
|
|
@@ -2244,7 +2498,6 @@ const ko = {
|
|
|
2244
2498
|
packageManagement: "패키지 관리",
|
|
2245
2499
|
searchNavigation: "내비게이션 검색…",
|
|
2246
2500
|
settings: "설정",
|
|
2247
|
-
help: "도움말",
|
|
2248
2501
|
helpTooltip: "도움말 및 문서",
|
|
2249
2502
|
activityFeed: "활동 피드",
|
|
2250
2503
|
notifications: "알림",
|
|
@@ -2283,10 +2536,12 @@ const ko = {
|
|
|
2283
2536
|
build: {
|
|
2284
2537
|
title: "앱 만들기",
|
|
2285
2538
|
subtitle: "처음부터 시작 — 객체, 폼, 자동화, 인터페이스를 설계합니다.",
|
|
2539
|
+
noCapability: "이 워크스페이스에서는 앱 만들기를 사용할 수 없습니다 — ‘메타데이터 관리’ 권한이 필요하지만 계정에 해당 권한이 없습니다.",
|
|
2286
2540
|
},
|
|
2287
2541
|
template: {
|
|
2288
2542
|
title: "템플릿으로 시작",
|
|
2289
2543
|
subtitle: "마켓플레이스에서 템플릿 앱을 설치하고 원하는 대로 바꾸세요.",
|
|
2544
|
+
marketplaceDisabled: "이 런타임에는 앱 마켓플레이스가 구성되어 있지 않아 여기에서 설치할 템플릿이 없습니다.",
|
|
2290
2545
|
},
|
|
2291
2546
|
welcomeAdminDescription: "비즈니스를 한 문장으로 설명해 주세요 — AI가 객체, 화면, API, 에이전트 도구를 생성합니다. 왼쪽 메뉴에서 직접 설정할 수도 있습니다.",
|
|
2292
2547
|
welcomeAdminDescriptionNoBuild: "왼쪽 관리 메뉴에서 첫 애플리케이션을 설정하세요. 데이터가 쌓이면 AI 어시스턴트가 살펴보는 것을 도와줍니다.",
|
|
@@ -2302,6 +2557,8 @@ const ko = {
|
|
|
2302
2557
|
},
|
|
2303
2558
|
pendingDrafts: {
|
|
2304
2559
|
message: "게시되지 않은 변경이 {{count}}건 있습니다 — 게시하면 반영됩니다.",
|
|
2560
|
+
message_one: "게시되지 않은 변경이 {{count}}건 있습니다 — 게시하면 반영됩니다.",
|
|
2561
|
+
message_other: "게시되지 않은 변경이 {{count}}건 있습니다 — 게시하면 반영됩니다.",
|
|
2305
2562
|
cta: "게시",
|
|
2306
2563
|
publishing: "게시하는 중…",
|
|
2307
2564
|
published: "게시했습니다! 변경 사항이 반영되었습니다.",
|
|
@@ -2315,7 +2572,6 @@ const ko = {
|
|
|
2315
2572
|
capabilityWarn: "작성 검사: 기능 권한 참조 {{count}}개가 아무것도 가리키지 않습니다.",
|
|
2316
2573
|
},
|
|
2317
2574
|
title: "홈",
|
|
2318
|
-
subtitle: "워크스페이스 대시보드",
|
|
2319
2575
|
nav: "홈",
|
|
2320
2576
|
allApps: "모든 애플리케이션",
|
|
2321
2577
|
yourApps: "내 앱",
|
|
@@ -2327,8 +2583,6 @@ const ko = {
|
|
|
2327
2583
|
empty: "모두 처리했습니다",
|
|
2328
2584
|
},
|
|
2329
2585
|
loading: "워크스페이스 로드 중…",
|
|
2330
|
-
recent: "최근",
|
|
2331
|
-
starred: "즐겨찾기",
|
|
2332
2586
|
welcome: "ObjectUI에 오신 것을 환영합니다",
|
|
2333
2587
|
welcomeDescription: "첫 애플리케이션을 만들거나 시스템 설정을 구성하여 시작하세요.",
|
|
2334
2588
|
createFirstApp: "첫 앱 만들기",
|
|
@@ -2336,8 +2590,6 @@ const ko = {
|
|
|
2336
2590
|
browseMarketplace: "앱 마켓플레이스 탐색",
|
|
2337
2591
|
quickActions: {
|
|
2338
2592
|
title: "빠른 작업",
|
|
2339
|
-
createApp: "앱 생성",
|
|
2340
|
-
createAppDesc: "새 애플리케이션으로 시작",
|
|
2341
2593
|
manageObjects: "객체 관리",
|
|
2342
2594
|
manageObjectsDesc: "데이터 모델 구성",
|
|
2343
2595
|
systemSettings: "시스템 설정",
|
|
@@ -2353,18 +2605,15 @@ const ko = {
|
|
|
2353
2605
|
greetingNight: "야간 작업 중",
|
|
2354
2606
|
heroTagline: "마지막으로 중단한 곳에서 이어서 하거나 새로운 것을 발견해 보세요.",
|
|
2355
2607
|
open: "열기",
|
|
2356
|
-
stats: {
|
|
2357
|
-
apps: "앱",
|
|
2358
|
-
starred: "즐겨찾기",
|
|
2359
|
-
recent: "최근",
|
|
2360
|
-
},
|
|
2361
2608
|
recentApps: {
|
|
2362
2609
|
title: "최근 열린 항목",
|
|
2363
2610
|
itemType: {
|
|
2364
2611
|
object: "오브젝트",
|
|
2365
2612
|
dashboard: "대시보드",
|
|
2366
2613
|
page: "페이지",
|
|
2614
|
+
report: "보고서",
|
|
2367
2615
|
record: "레코드",
|
|
2616
|
+
metadata: "메타데이터",
|
|
2368
2617
|
},
|
|
2369
2618
|
},
|
|
2370
2619
|
starredApps: {
|
|
@@ -2386,7 +2635,6 @@ const ko = {
|
|
|
2386
2635
|
organizations: "조직",
|
|
2387
2636
|
roles: "역할",
|
|
2388
2637
|
configuration: "구성",
|
|
2389
|
-
createApp: "앱 만들기",
|
|
2390
2638
|
administration: "관리",
|
|
2391
2639
|
datasources: "데이터 소스",
|
|
2392
2640
|
documentation: "문서",
|
|
@@ -2411,6 +2659,7 @@ const ko = {
|
|
|
2411
2659
|
typeUpdate: "업데이트",
|
|
2412
2660
|
typeDelete: "삭제",
|
|
2413
2661
|
typeComment: "댓글",
|
|
2662
|
+
typeSystem: "시스템",
|
|
2414
2663
|
relativeJustNow: "방금 전",
|
|
2415
2664
|
relativeSecondsAgo: "{{count}}초 전",
|
|
2416
2665
|
relativeMinutesAgo: "{{count}}분 전",
|
|
@@ -2432,8 +2681,11 @@ const ko = {
|
|
|
2432
2681
|
placeholder: "오브젝트, 대시보드, 페이지, 보고서 검색…",
|
|
2433
2682
|
inputAriaLabel: "오브젝트, 대시보드, 페이지, 보고서 검색",
|
|
2434
2683
|
resultsCount: "\"{{query}}\"에 대한 {{count}}개 결과",
|
|
2435
|
-
|
|
2684
|
+
resultsCount_one: "\"{{query}}\"에 대한 {{count}}개 결과",
|
|
2685
|
+
resultsCount_other: "\"{{query}}\"에 대한 {{count}}개 결과",
|
|
2436
2686
|
itemsAvailable: "{{count}}개 항목 사용 가능",
|
|
2687
|
+
itemsAvailable_one: "{{count}}개 항목 사용 가능",
|
|
2688
|
+
itemsAvailable_other: "{{count}}개 항목 사용 가능",
|
|
2437
2689
|
noResults: "결과를 찾을 수 없습니다",
|
|
2438
2690
|
noResultsHint: "검색어를 조정해 보세요",
|
|
2439
2691
|
typeObjects: "오브젝트",
|
|
@@ -2458,7 +2710,11 @@ const ko = {
|
|
|
2458
2710
|
noAppsConfigured: "구성된 앱 없음",
|
|
2459
2711
|
noAppsConfiguredDescription: "등록된 앱이 없습니다. 첫 번째 앱을 만들거나 시스템 설정을 방문하세요.",
|
|
2460
2712
|
appNotAvailable: "앱을 사용할 수 없습니다",
|
|
2461
|
-
appNotAvailableDescription: "이 앱을
|
|
2713
|
+
appNotAvailableDescription: "이 앱을 사용할 수 없습니다 — 잠시 후 다시 시도하세요.",
|
|
2714
|
+
appNotFound: "이 앱을 열 수 없습니다",
|
|
2715
|
+
appNotFoundDescription: "서버가 회원님의 계정에 대해 이 앱을 반환하지 않았습니다.",
|
|
2716
|
+
appUnreachable: "서버에 연결할 수 없습니다",
|
|
2717
|
+
appUnreachableDescription: "이 앱을 확인할 수 없습니다. 잠시 후 다시 시도하세요.",
|
|
2462
2718
|
appAccessDenied: "이 앱에 접근할 권한이 없습니다",
|
|
2463
2719
|
appAccessDeniedDescription: "이 앱은 존재하지만 계정에 여는 권한이 없습니다. 관리자에게 접근 권한을 요청하세요.",
|
|
2464
2720
|
appAccessDeniedHome: "홈으로 돌아가기",
|
|
@@ -2468,31 +2724,16 @@ const ko = {
|
|
|
2468
2724
|
recordNotFound: "레코드를 찾을 수 없습니다",
|
|
2469
2725
|
recordNotFoundDescription: "찾고 있는 레코드가 존재하지 않거나 삭제되었을 수 있습니다.",
|
|
2470
2726
|
},
|
|
2471
|
-
renderer: {
|
|
2472
|
-
noPageSchema: "페이지 스키마가 없습니다",
|
|
2473
|
-
noFormSchema: "양식 스키마가 없습니다",
|
|
2474
|
-
noDashboardSchema: "대시보드 스키마가 없습니다",
|
|
2475
|
-
pageRendering: "페이지 렌더링: {{name}}",
|
|
2476
|
-
dashboardRendering: "대시보드 렌더링: {{name}}",
|
|
2477
|
-
formRenderingMode: "{{mode}} 모드로 양식 렌더링",
|
|
2478
|
-
formRenderingFor: "레코드 {{id}}에 대해",
|
|
2479
|
-
createRecord: "레코드 만들기",
|
|
2480
|
-
editRecord: "레코드 편집",
|
|
2481
|
-
page: "페이지",
|
|
2482
|
-
dashboard: "대시보드",
|
|
2483
|
-
save: "저장",
|
|
2484
|
-
cancel: "취소",
|
|
2485
|
-
},
|
|
2486
2727
|
actionDialog: {
|
|
2487
2728
|
title: "작업 매개변수",
|
|
2488
2729
|
description: "계속하려면 필요한 정보를 입력하세요.",
|
|
2489
2730
|
selectPlaceholder: "{{label}} 선택",
|
|
2490
2731
|
requiredError: "{{label}}은(는) 필수입니다",
|
|
2732
|
+
unresolvedParam: '이 매개변수는 표시할 수 없습니다. 기반이 되는 필드가 개체 메타데이터에 없어 필요한 컨트롤을 만들 수 없습니다. 관리자에게 작업 정의를 수정하도록 요청하세요.',
|
|
2733
|
+
carryOverHint: '그대로 전달됨(읽기 전용)',
|
|
2491
2734
|
cancel: "취소",
|
|
2492
2735
|
confirm: "확인",
|
|
2493
2736
|
uploading: "업로드 중…",
|
|
2494
|
-
defaultActionTitle: "작업",
|
|
2495
|
-
ok: "확인",
|
|
2496
2737
|
lookupPlaceholder: "{{label}}의 레코드 ID",
|
|
2497
2738
|
lookupHelpText: "이 매개변수에 참조 개체가 설정되어 있지 않아 레코드 선택기를 사용할 수 없습니다. 레코드 ID를 직접 입력하거나 관리자에게 작업 매개변수 수정을 요청하세요.",
|
|
2498
2739
|
},
|
|
@@ -2501,11 +2742,6 @@ const ko = {
|
|
|
2501
2742
|
confirm: "계속",
|
|
2502
2743
|
cancel: "취소",
|
|
2503
2744
|
},
|
|
2504
|
-
rowAction: {
|
|
2505
|
-
openMenu: "메뉴 열기",
|
|
2506
|
-
edit: "편집",
|
|
2507
|
-
delete: "삭제",
|
|
2508
|
-
},
|
|
2509
2745
|
navigationSync: {
|
|
2510
2746
|
addedPage: "탐색 업데이트: 페이지 \"{{name}}\" 추가됨",
|
|
2511
2747
|
addedDashboard: "탐색 업데이트: 대시보드 \"{{name}}\" 추가됨",
|
|
@@ -2526,6 +2762,8 @@ const ko = {
|
|
|
2526
2762
|
noRecordId: "레코드 ID가 없습니다",
|
|
2527
2763
|
deleteConfirm: "이 레코드를 삭제하시겠습니까?",
|
|
2528
2764
|
bulkDeleteSuccess: "{{count}}개의 {{label}} 레코드 삭제됨",
|
|
2765
|
+
bulkDeleteSuccess_one: "{{count}}개의 {{label}} 레코드 삭제됨",
|
|
2766
|
+
bulkDeleteSuccess_other: "{{count}}개의 {{label}} 레코드 삭제됨",
|
|
2529
2767
|
bulkDeletePartial: "{{succeeded}}개 삭제됨, {{failed}}개 실패",
|
|
2530
2768
|
},
|
|
2531
2769
|
objectViewActions: {
|
|
@@ -2537,15 +2775,6 @@ const ko = {
|
|
|
2537
2775
|
exportFailed: "내보내기 실패: {{message}}",
|
|
2538
2776
|
forecastSoon: "예측 보기가 곧 출시됩니다",
|
|
2539
2777
|
},
|
|
2540
|
-
recordDetail: {
|
|
2541
|
-
viewersTooltip: "현재 이 레코드를 보고 있는 사용자",
|
|
2542
|
-
},
|
|
2543
|
-
cellRender: {
|
|
2544
|
-
empty: "비어 있음",
|
|
2545
|
-
yes: "예",
|
|
2546
|
-
no: "아니요",
|
|
2547
|
-
systemFields: "시스템",
|
|
2548
|
-
},
|
|
2549
2778
|
user: {
|
|
2550
2779
|
profile: "프로필",
|
|
2551
2780
|
settings: "설정",
|
|
@@ -2582,17 +2811,17 @@ const ko = {
|
|
|
2582
2811
|
},
|
|
2583
2812
|
organizations: {
|
|
2584
2813
|
create: "워크스페이스 만들기",
|
|
2585
|
-
mine: "내
|
|
2586
|
-
title: "
|
|
2587
|
-
heading: "내
|
|
2588
|
-
subtitle: "계속할
|
|
2589
|
-
searchPlaceholder: "
|
|
2590
|
-
new: "새
|
|
2591
|
-
current: "현재
|
|
2814
|
+
mine: "내 워크스페이스",
|
|
2815
|
+
title: "워크스페이스",
|
|
2816
|
+
heading: "내 워크스페이스",
|
|
2817
|
+
subtitle: "계속할 워크스페이스를 선택하거나 새 워크스페이스를 만드세요.",
|
|
2818
|
+
searchPlaceholder: "워크스페이스 검색",
|
|
2819
|
+
new: "새 워크스페이스",
|
|
2820
|
+
current: "현재 워크스페이스",
|
|
2592
2821
|
manage: "관리",
|
|
2593
|
-
emptyTitle: "아직
|
|
2594
|
-
emptyDescription: "시작하려면 첫 번째
|
|
2595
|
-
noMatches: "검색과 일치하는
|
|
2822
|
+
emptyTitle: "아직 워크스페이스가 없습니다",
|
|
2823
|
+
emptyDescription: "시작하려면 첫 번째 워크스페이스를 만드세요.",
|
|
2824
|
+
noMatches: "검색과 일치하는 워크스페이스가 없습니다.",
|
|
2596
2825
|
},
|
|
2597
2826
|
organization: {
|
|
2598
2827
|
roles: {
|
|
@@ -2721,6 +2950,9 @@ const ko = {
|
|
|
2721
2950
|
declined: "초대를 거절함",
|
|
2722
2951
|
declineFailed: "초대 거절 실패",
|
|
2723
2952
|
},
|
|
2953
|
+
current: {
|
|
2954
|
+
label: "현재 조직",
|
|
2955
|
+
},
|
|
2724
2956
|
switcher: {
|
|
2725
2957
|
label: "조직 전환",
|
|
2726
2958
|
groupLabel: "작업 중인 조직",
|
|
@@ -2732,18 +2964,33 @@ const ko = {
|
|
|
2732
2964
|
regionLabel: "알림",
|
|
2733
2965
|
groupCount: "알림 {{count}}건",
|
|
2734
2966
|
groupUnread: "읽지 않음 {{count}}건",
|
|
2967
|
+
groupUnread_one: "읽지 않음 {{count}}건",
|
|
2968
|
+
groupUnread_other: "읽지 않음 {{count}}건",
|
|
2735
2969
|
groupMarkRead: "읽음 표시",
|
|
2736
2970
|
groupMarkReadTitle: "이 유형 전체를 읽음으로 표시",
|
|
2737
2971
|
empty: "알림 없음",
|
|
2738
2972
|
markAllRead: "모두 읽음으로 표시",
|
|
2739
2973
|
viewAll: "모든 알림 보기",
|
|
2740
2974
|
approvalsPending: "{{count}}건의 승인 대기 중",
|
|
2975
|
+
approvalsPending_one: "{{count}}건의 승인 대기 중",
|
|
2976
|
+
approvalsPending_other: "{{count}}건의 승인 대기 중",
|
|
2741
2977
|
viewApprovals: "승인 보기",
|
|
2742
2978
|
noPendingApprovals: "대기 중인 승인 없음",
|
|
2743
2979
|
openApprovalsInbox: "승인 보관함 열기",
|
|
2744
2980
|
badgeTotal: "총 {{total}}건",
|
|
2745
2981
|
badgeNotifications: "알림 {{unread}}건",
|
|
2746
2982
|
badgeApprovals: "승인 대기 {{approvals}}건",
|
|
2983
|
+
arrivalMany: "새 메시지 {{count}}건",
|
|
2984
|
+
arrivalMany_one: "새 메시지 {{count}}건",
|
|
2985
|
+
arrivalMany_other: "새 메시지 {{count}}건",
|
|
2986
|
+
arrivalRepeats: "이 주제의 새 메시지 {{count}}건",
|
|
2987
|
+
arrivalRepeats_one: "이 주제의 새 메시지 {{count}}건",
|
|
2988
|
+
arrivalRepeats_other: "이 주제의 새 메시지 {{count}}건",
|
|
2989
|
+
arrivalOpen: "보기",
|
|
2990
|
+
toastEnabled: "앱 내 알림",
|
|
2991
|
+
desktopEnabled: "데스크톱 알림",
|
|
2992
|
+
desktopBlocked: "차단됨. 브라우저 설정에서 이 사이트의 알림을 허용하세요.",
|
|
2993
|
+
desktopUnsupported: "이 브라우저는 데스크톱 알림을 지원하지 않습니다.",
|
|
2747
2994
|
emptyUnread: "모두 읽음",
|
|
2748
2995
|
filterUnread: "읽지 않음",
|
|
2749
2996
|
filterAll: "전체",
|
|
@@ -2757,63 +3004,19 @@ const ko = {
|
|
|
2757
3004
|
thankYouTitle: "감사합니다!",
|
|
2758
3005
|
thankYouMessage: "제출이 성공적으로 수신되었습니다.",
|
|
2759
3006
|
redirecting: "{{seconds}}초 후 리디렉션됩니다…",
|
|
3007
|
+
redirectPending: "리디렉션 중…",
|
|
2760
3008
|
unavailableTitle: "양식을 사용할 수 없습니다",
|
|
2761
3009
|
unavailableDescription: "이 URL에서 사용 가능한 공개 양식이 없습니다. 기본 보기에서 익명 공유가 활성화되어 있는지 확인하세요.",
|
|
2762
3010
|
tryDemo: "데모 시도",
|
|
2763
3011
|
retry: "다시 시도",
|
|
2764
3012
|
loading: "양식 로딩 중…",
|
|
2765
3013
|
requiredHint: "* 필수 필드",
|
|
3014
|
+
requiredFields: "필수 항목: {{fields}}",
|
|
2766
3015
|
consentLabelDefault: "개인정보 처리방침에 동의하며 이 요청을 위해 내 데이터 처리에 동의합니다.",
|
|
2767
3016
|
consentLink: "개인정보 처리방침",
|
|
2768
3017
|
consentRequired: "계속하려면 개인정보 처리방침에 동의하세요.",
|
|
2769
3018
|
rateLimited: "제출하기 전에 잠시 답변을 검토하세요.",
|
|
2770
3019
|
redirectBlocked: "제출이 수락되었지만 보안상의 이유로 리디렉션 URL이 차단되었습니다.",
|
|
2771
|
-
demo: {
|
|
2772
|
-
contactTitle: "문의하기",
|
|
2773
|
-
contactDescription: "프로젝트에 대해 알려주시면 영업 담당자가 1 영업일 이내에 연락드립니다.",
|
|
2774
|
-
supportTitle: "지원 요청 제출",
|
|
2775
|
-
supportDescription: "문제를 설명해 주세요 — 팀이 1 영업일 이내에 답변 드립니다.",
|
|
2776
|
-
thankYouSalesTitle: "감사합니다 — 메시지를 받았습니다!",
|
|
2777
|
-
thankYouSalesMessage: "영업 담당자가 1 영업일 이내에 연락드립니다.",
|
|
2778
|
-
thankYouSupportTitle: "접수되었습니다 — 요청이 대기 중입니다.",
|
|
2779
|
-
thankYouSupportMessage: "지원 엔지니어가 곧 후속 조치를 취할 것입니다. 추가 스크린샷이 있으면 이 페이지를 저장하세요.",
|
|
2780
|
-
field: {
|
|
2781
|
-
firstName: "이름",
|
|
2782
|
-
lastName: "성",
|
|
2783
|
-
email: "업무용 이메일",
|
|
2784
|
-
phone: "전화번호",
|
|
2785
|
-
jobTitle: "직함",
|
|
2786
|
-
company: "회사",
|
|
2787
|
-
website: "웹사이트",
|
|
2788
|
-
industry: "업종",
|
|
2789
|
-
companySize: "회사 규모",
|
|
2790
|
-
howCanWeHelp: "어떻게 도와드릴까요?",
|
|
2791
|
-
subject: "제목",
|
|
2792
|
-
description: "설명",
|
|
2793
|
-
issueType: "문제 유형",
|
|
2794
|
-
priority: "우선순위",
|
|
2795
|
-
},
|
|
2796
|
-
industry: {
|
|
2797
|
-
technology: "기술",
|
|
2798
|
-
software: "소프트웨어 / SaaS",
|
|
2799
|
-
finance: "금융",
|
|
2800
|
-
healthcare: "의료",
|
|
2801
|
-
retail: "리테일",
|
|
2802
|
-
other: "기타",
|
|
2803
|
-
},
|
|
2804
|
-
issueType: {
|
|
2805
|
-
question: "질문",
|
|
2806
|
-
problem: "문제",
|
|
2807
|
-
bug: "버그",
|
|
2808
|
-
feature_request: "기능 요청",
|
|
2809
|
-
},
|
|
2810
|
-
priority: {
|
|
2811
|
-
low: "낮음",
|
|
2812
|
-
medium: "보통",
|
|
2813
|
-
high: "높음",
|
|
2814
|
-
critical: "긴급",
|
|
2815
|
-
},
|
|
2816
|
-
},
|
|
2817
3020
|
},
|
|
2818
3021
|
connectAgent: {
|
|
2819
3022
|
disabled: {
|
|
@@ -2859,6 +3062,8 @@ const ko = {
|
|
|
2859
3062
|
noImportableFields: "해당 오브젝트에는 가져올 수 있는 필드가 없습니다.",
|
|
2860
3063
|
schemaReadFailed: "오브젝트 스키마를 읽을 수 없습니다.",
|
|
2861
3064
|
imported: "{{count}}개 행을 {{object}}(으)로 가져왔습니다.",
|
|
3065
|
+
imported_one: "{{count}}개 행을 {{object}}(으)로 가져왔습니다.",
|
|
3066
|
+
imported_other: "{{count}}개 행을 {{object}}(으)로 가져왔습니다.",
|
|
2862
3067
|
importFrom: "실제 데이터 가져오기 원본",
|
|
2863
3068
|
into: "→",
|
|
2864
3069
|
opening: "여는 중…",
|
|
@@ -2872,6 +3077,76 @@ const ko = {
|
|
|
2872
3077
|
openProduction: "프로덕션 열기",
|
|
2873
3078
|
manageEnvironments: "환경 관리",
|
|
2874
3079
|
},
|
|
3080
|
+
cloudPlanStatus: {
|
|
3081
|
+
current: "현재 요금제",
|
|
3082
|
+
},
|
|
3083
|
+
ai: {
|
|
3084
|
+
nlQuery: {
|
|
3085
|
+
placeholder: "데이터에 대해 질문하세요…",
|
|
3086
|
+
ask: "질문",
|
|
3087
|
+
results: "결과",
|
|
3088
|
+
match: "일치도 {{percent}}",
|
|
3089
|
+
simulatedSummary: "검색 결과: {{query}}",
|
|
3090
|
+
noResults: "일치하는 레코드가 없습니다",
|
|
3091
|
+
recentQueries: "최근 쿼리",
|
|
3092
|
+
},
|
|
3093
|
+
formAssist: {
|
|
3094
|
+
title: "AI 제안",
|
|
3095
|
+
suggestionCount: "제안 {{count}}개",
|
|
3096
|
+
suggestionCount_one: "제안 {{count}}개",
|
|
3097
|
+
suggestionCount_other: "제안 {{count}}개",
|
|
3098
|
+
applyAll: "모두 적용",
|
|
3099
|
+
confidence: "신뢰도 {{percent}}",
|
|
3100
|
+
appliedCount: "제안 {{count}}개 적용됨",
|
|
3101
|
+
appliedCount_one: "제안 {{count}}개 적용됨",
|
|
3102
|
+
appliedCount_other: "제안 {{count}}개 적용됨",
|
|
3103
|
+
},
|
|
3104
|
+
recommendations: {
|
|
3105
|
+
title: "추천",
|
|
3106
|
+
generating: "추천을 생성하는 중…",
|
|
3107
|
+
empty: "추천 항목이 없습니다",
|
|
3108
|
+
},
|
|
3109
|
+
},
|
|
3110
|
+
aiApprovals: {
|
|
3111
|
+
title: "AI 승인",
|
|
3112
|
+
description: "AI 에이전트가 제안한 작업으로, 실행 전에 사람의 검토가 필요합니다.",
|
|
3113
|
+
tabPending: "대기 중",
|
|
3114
|
+
tabDecided: "처리됨",
|
|
3115
|
+
tabAll: "전체",
|
|
3116
|
+
statusPending: "대기 중",
|
|
3117
|
+
statusApproved: "승인됨",
|
|
3118
|
+
statusExecuted: "실행됨",
|
|
3119
|
+
statusFailed: "실패",
|
|
3120
|
+
statusRejected: "거부됨",
|
|
3121
|
+
colTool: "도구",
|
|
3122
|
+
colAction: "작업",
|
|
3123
|
+
colObject: "객체",
|
|
3124
|
+
colStatus: "상태",
|
|
3125
|
+
colProposed: "제안 시각",
|
|
3126
|
+
colDecision: "결정",
|
|
3127
|
+
emptyTitle: "대기 중인 작업 없음",
|
|
3128
|
+
emptyDescription: "AI가 민감한 작업을 제안하면 검토를 위해 여기에 표시됩니다.",
|
|
3129
|
+
view: "보기",
|
|
3130
|
+
approve: "승인",
|
|
3131
|
+
reject: "거부",
|
|
3132
|
+
working: "처리 중…",
|
|
3133
|
+
approveAndExecute: "승인 후 실행",
|
|
3134
|
+
outcomeApprove: "{{id}} 승인: {{message}}",
|
|
3135
|
+
outcomeReject: "{{id}} 거부: {{message}}",
|
|
3136
|
+
outcomeExecuteFailed: "실행 중 작업이 실패했습니다",
|
|
3137
|
+
drawerFallbackTitle: "대기 중인 작업",
|
|
3138
|
+
drawerSubtitle: "{{object}}에 대한 도구 {{tool}}",
|
|
3139
|
+
fieldProposedBy: "제안자",
|
|
3140
|
+
fieldDecidedBy: "결정자",
|
|
3141
|
+
fieldConversation: "대화",
|
|
3142
|
+
fieldToolInput: "도구 입력",
|
|
3143
|
+
fieldResult: "결과",
|
|
3144
|
+
fieldError: "오류",
|
|
3145
|
+
fieldRejectionReason: "거부 사유",
|
|
3146
|
+
rejectTitle: "이 작업을 거부할까요?",
|
|
3147
|
+
rejectBody: "사유는 AI에 전달되어 다음 응답을 조정하는 데 사용됩니다.",
|
|
3148
|
+
rejectPlaceholder: "사유(선택). 예: ‘레코드 ID가 잘못되었습니다 — 사용자에게 먼저 확인하세요.’",
|
|
3149
|
+
},
|
|
2875
3150
|
aiModelStatus: {
|
|
2876
3151
|
summary: "빌드 / 질문은 {{conversational}}({{conversationalSource}}), 구조화 출력은 {{structured}}({{structuredSource}})을(를) 사용합니다.",
|
|
2877
3152
|
summaryRouting: "라우팅 정책: 무료 요금제 → {{free}}, 유료 요금제 → {{paid}}.",
|
|
@@ -2889,6 +3164,111 @@ const ko = {
|
|
|
2889
3164
|
sourceInherits: "build/ask와 동일",
|
|
2890
3165
|
sourcePinned: "{{source}}에 의해 고정됨",
|
|
2891
3166
|
},
|
|
3167
|
+
// objectui#7254 — the AI copilot's tool cards. Three families, all of them
|
|
3168
|
+
// English-only until this landed while every other string on the same screen
|
|
3169
|
+
// was translated:
|
|
3170
|
+
//
|
|
3171
|
+
// `tool.*` — one entry per PLATFORM-PROVIDED tool name
|
|
3172
|
+
// (@objectstack/spec `PLATFORM_TOOLS_BY_PACKAGE`, the
|
|
3173
|
+
// closed registry those runtimes are conformance-tested
|
|
3174
|
+
// against). `humanizeToolName` looks each up as
|
|
3175
|
+
// `chatbot.tool.<tool_name>` and falls back to its English
|
|
3176
|
+
// title-caser for a custom / third-party tool, so a name
|
|
3177
|
+
// missing here is degraded, never broken. The `en` values
|
|
3178
|
+
// are deliberately EQUAL to what that title-caser produces:
|
|
3179
|
+
// adding the key must not silently reword the English UI.
|
|
3180
|
+
// `toolState.*` — the card-header badge + activity-chip vocabulary. ONE
|
|
3181
|
+
// set for both surfaces (they used to carry separate
|
|
3182
|
+
// tables and disagreed on casing).
|
|
3183
|
+
// `plan.*` — the "N objects · N views · N dashboards" strip. Plural
|
|
3184
|
+
// FAMILIES: one slot per CLDR category the pack's language
|
|
3185
|
+
// selects (objectui#11432), plus the base key for a call
|
|
3186
|
+
// made without a count. `all-locales-key-parity.test.ts`
|
|
3187
|
+
// derives the required slots from `Intl.PluralRules`.
|
|
3188
|
+
//
|
|
3189
|
+
// objectui#7481 — five `tool.*` entries are NEWER than the registry above:
|
|
3190
|
+
// `get_authoring_rules` (cloud#1837), `load_tools`, `open_record`, `test_flow`
|
|
3191
|
+
// and `toggle_flow` are registered by cloud `service-ai-studio` but the pinned
|
|
3192
|
+
// `@objectstack/spec` snapshot does not list them yet. They are kept here on
|
|
3193
|
+
// purpose: a step label the user reads must not wait on a pin bump. When the
|
|
3194
|
+
// pin advances, `chatbotToolLabels-locale-parity-7481` starts checking them
|
|
3195
|
+
// against the registry instead of against its own hand-held list.
|
|
3196
|
+
chatbot: {
|
|
3197
|
+
tool: {
|
|
3198
|
+
aggregate_data: "데이터 집계",
|
|
3199
|
+
get_record: "레코드 가져오기",
|
|
3200
|
+
query_data: "데이터 조회",
|
|
3201
|
+
query_records: "레코드 조회",
|
|
3202
|
+
search_knowledge: "지식 검색",
|
|
3203
|
+
visualize_data: "차트 생성",
|
|
3204
|
+
add_field: "필드 추가",
|
|
3205
|
+
apply_blueprint: "앱 생성",
|
|
3206
|
+
apply_edit: "변경 사항 적용",
|
|
3207
|
+
create_metadata: "메타데이터 생성",
|
|
3208
|
+
create_object: "오브젝트 생성",
|
|
3209
|
+
create_package: "패키지 생성",
|
|
3210
|
+
create_seed: "샘플 데이터 생성",
|
|
3211
|
+
delete_field: "필드 삭제",
|
|
3212
|
+
describe_metadata: "메타데이터 확인",
|
|
3213
|
+
describe_object: "오브젝트 구조 확인",
|
|
3214
|
+
get_active_package: "현재 패키지 가져오기",
|
|
3215
|
+
get_authoring_rules: "작성 규칙 가져오기",
|
|
3216
|
+
get_metadata_schema: "메타데이터 구조 가져오기",
|
|
3217
|
+
get_package: "패키지 가져오기",
|
|
3218
|
+
list_metadata: "메타데이터 목록",
|
|
3219
|
+
list_objects: "오브젝트 목록",
|
|
3220
|
+
list_packages: "패키지 목록",
|
|
3221
|
+
load_tools: "도구 불러오기",
|
|
3222
|
+
modify_field: "필드 수정",
|
|
3223
|
+
open_record: "레코드 열기",
|
|
3224
|
+
propose_blueprint: "앱 설계안 작성",
|
|
3225
|
+
set_active_package: "현재 패키지 전환",
|
|
3226
|
+
suggest_builder: "구축 방법 제안",
|
|
3227
|
+
test_flow: "플로우 테스트",
|
|
3228
|
+
todo_write: "할 일 기록",
|
|
3229
|
+
toggle_flow: "플로우 켜기·끄기",
|
|
3230
|
+
update_metadata: "메타데이터 업데이트",
|
|
3231
|
+
validate_expression: "표현식 검증",
|
|
3232
|
+
verify_build: "빌드 검증",
|
|
3233
|
+
},
|
|
3234
|
+
toolState: {
|
|
3235
|
+
agentActivity: "에이전트 활동",
|
|
3236
|
+
pending: "대기 중",
|
|
3237
|
+
running: "실행 중",
|
|
3238
|
+
awaitingApproval: "승인 대기",
|
|
3239
|
+
responded: "응답함",
|
|
3240
|
+
completed: "완료",
|
|
3241
|
+
error: "오류",
|
|
3242
|
+
denied: "거부됨",
|
|
3243
|
+
failed: "실패",
|
|
3244
|
+
},
|
|
3245
|
+
plan: {
|
|
3246
|
+
countObjects: "오브젝트 {{count}}개",
|
|
3247
|
+
countObjects_one: "오브젝트 {{count}}개",
|
|
3248
|
+
countObjects_other: "오브젝트 {{count}}개",
|
|
3249
|
+
countViews: "뷰 {{count}}개",
|
|
3250
|
+
countViews_one: "뷰 {{count}}개",
|
|
3251
|
+
countViews_other: "뷰 {{count}}개",
|
|
3252
|
+
countDashboards: "대시보드 {{count}}개",
|
|
3253
|
+
countDashboards_one: "대시보드 {{count}}개",
|
|
3254
|
+
countDashboards_other: "대시보드 {{count}}개",
|
|
3255
|
+
countSeedData: "샘플 데이터",
|
|
3256
|
+
},
|
|
3257
|
+
build: {
|
|
3258
|
+
building: "{{app}} 빌드 중…",
|
|
3259
|
+
built: "{{app}} 빌드 완료",
|
|
3260
|
+
appFallback: "앱",
|
|
3261
|
+
addingSampleData: "샘플 데이터 추가 중",
|
|
3262
|
+
group: {
|
|
3263
|
+
object: "오브젝트",
|
|
3264
|
+
view: "뷰",
|
|
3265
|
+
dashboard: "대시보드",
|
|
3266
|
+
app: "앱",
|
|
3267
|
+
seed: "샘플 데이터",
|
|
3268
|
+
},
|
|
3269
|
+
moreArtifacts: "외 {{n}}개",
|
|
3270
|
+
},
|
|
3271
|
+
},
|
|
2892
3272
|
chatbotError: {
|
|
2893
3273
|
title: "응답 실패",
|
|
2894
3274
|
fallbackDetail: "문제가 발생했습니다. 다시 시도해 주세요.",
|
|
@@ -2926,6 +3306,7 @@ const ko = {
|
|
|
2926
3306
|
retry: "다시 시도",
|
|
2927
3307
|
errors: {
|
|
2928
3308
|
expired: "승인되기 전에 요청이 만료되었습니다. 다시 시작하세요.",
|
|
3309
|
+
accessDenied: "연결 요청이 거부되었습니다. 다시 시작하세요.",
|
|
2929
3310
|
bindFailed: "바인딩에 실패했습니다.",
|
|
2930
3311
|
deviceCodeFailed: "장치 코드 요청에 실패했습니다.",
|
|
2931
3312
|
},
|
|
@@ -2968,7 +3349,7 @@ const ko = {
|
|
|
2968
3349
|
},
|
|
2969
3350
|
title: "앱 마켓플레이스",
|
|
2970
3351
|
subtitle: "ObjectStack 카탈로그에 게시된 승인된 앱을 탐색하세요. 앱을 클릭하여 세부 정보를 보고 환경 중 하나에 설치하세요.",
|
|
2971
|
-
searchPlaceholder:
|
|
3352
|
+
searchPlaceholder: '이름 또는 앱 ID로 앱 검색…',
|
|
2972
3353
|
searchAria: "마켓플레이스 앱 검색",
|
|
2973
3354
|
installed: "설치됨",
|
|
2974
3355
|
installedCount: "설치됨 ({{count}})",
|
|
@@ -2991,10 +3372,16 @@ const ko = {
|
|
|
2991
3372
|
installedBadge: "v{{version}} 설치됨",
|
|
2992
3373
|
load: {
|
|
2993
3374
|
failed: "마켓플레이스를 로드할 수 없습니다",
|
|
2994
|
-
|
|
3375
|
+
failedHintConfigured: "이 런타임은 {{url}} 의 컨트롤 플레인을 통해 마켓플레이스에 접속합니다. 해당 주소가 온라인이고 여기에서 접근 가능한지 확인하세요.",
|
|
3376
|
+
failedHintSameOrigin: "이 런타임이 마켓플레이스 카탈로그를 직접 제공합니다. 런타임이 온라인인지 확인하세요.",
|
|
2995
3377
|
packageFailed: "패키지를 로드할 수 없습니다",
|
|
2996
3378
|
notFound: "찾을 수 없습니다.",
|
|
2997
3379
|
},
|
|
3380
|
+
disabled: {
|
|
3381
|
+
title: "앱 마켓플레이스가 꺼져 있습니다",
|
|
3382
|
+
description: "이 런타임에는 마켓플레이스가 구성되어 있지 않아 여기에서 둘러보거나 설치할 항목이 없습니다.",
|
|
3383
|
+
hint: "런타임을 <code>OS_CLOUD_URL=off</code>(또는 <code>none</code>, <code>local</code>, <code>disabled</code>)로 시작하면 이것이 정상 상태입니다. 마켓플레이스를 켜려면 <code>OS_CLOUD_URL</code>을 컨트롤 플레인으로 지정하고 런타임을 다시 시작하세요.",
|
|
3384
|
+
},
|
|
2998
3385
|
detail: {
|
|
2999
3386
|
homepage: "홈페이지",
|
|
3000
3387
|
installedV: "설치됨 · v{{version}}",
|
|
@@ -3010,10 +3397,15 @@ const ko = {
|
|
|
3010
3397
|
purgeSampleData: '샘플 데이터 삭제',
|
|
3011
3398
|
purgeConfirm: '이 패키지가 생성한 모든 샘플 레코드를 삭제하시겠습니까? 사용자가 추가한 레코드는 삭제되지 않습니다.',
|
|
3012
3399
|
purgeSuccess: '샘플 레코드 {{count}}개를 삭제했습니다.',
|
|
3400
|
+
purgeSuccess_one: '샘플 레코드 {{count}}개를 삭제했습니다.',
|
|
3401
|
+
purgeSuccess_other: '샘플 레코드 {{count}}개를 삭제했습니다.',
|
|
3013
3402
|
purgeNoData: '삭제할 샘플 레코드가 없습니다.',
|
|
3014
3403
|
reseedQueued: '샘플 데이터는 다음 환경 접속 시 다시 적재됩니다.',
|
|
3015
3404
|
reseedLocalSuccess: '샘플 데이터를 다시 적재했습니다: {{inserted}}개 추가, {{updated}}개 업데이트.',
|
|
3016
3405
|
reseedPartialErrors: '({{count}}개 레코드 쓰기 실패)',
|
|
3406
|
+
reseedPartialErrors_one: '({{count}}개 레코드 쓰기 실패)',
|
|
3407
|
+
reseedPartialErrors_other: '({{count}}개 레코드 쓰기 실패)',
|
|
3408
|
+
sampleDataKernelUnavailable: '이 컨트롤 플레인에는 환경 커널이 없어 여기서는 샘플 데이터를 다시 적재하거나 삭제할 수 없습니다. 해당 환경 자체의 런타임에서 실행하세요.',
|
|
3017
3409
|
updateAvailable: '업데이트 가능',
|
|
3018
3410
|
},
|
|
3019
3411
|
action: {
|
|
@@ -3066,7 +3458,8 @@ const ko = {
|
|
|
3066
3458
|
reviewed: "검토 및 승인됨",
|
|
3067
3459
|
unreviewed: "아직 검토되지 않음",
|
|
3068
3460
|
signed: "서명됨",
|
|
3069
|
-
grantsIntro: "
|
|
3461
|
+
grantsIntro: "이 패키지가 요청하는 권한:",
|
|
3462
|
+
notEnforced: "이 목록은 설치 시 기록되며 이후 버전이 더 많은 권한을 요청하면 다시 확인합니다. 다만 런타임은 아직 패키지를 이 목록으로 제한하지 않습니다.",
|
|
3070
3463
|
services: "플랫폼 서비스",
|
|
3071
3464
|
hooks: "라이프사이클 후크",
|
|
3072
3465
|
network: "네트워크 액세스",
|
|
@@ -3105,32 +3498,21 @@ const ko = {
|
|
|
3105
3498
|
storage: "스토리지",
|
|
3106
3499
|
other: "기타",
|
|
3107
3500
|
},
|
|
3108
|
-
pricing: {
|
|
3109
|
-
free: "무료",
|
|
3110
|
-
freemium: "프리미엄",
|
|
3111
|
-
paid: "유료",
|
|
3112
|
-
subscription: "구독",
|
|
3113
|
-
"usage-based": "사용량 기반",
|
|
3114
|
-
"contact-sales": "영업팀 문의",
|
|
3115
|
-
},
|
|
3116
3501
|
relativeTime: {
|
|
3117
3502
|
today: "오늘",
|
|
3118
3503
|
daysAgo: "{{count}}일 전",
|
|
3119
3504
|
monthsAgo: "{{count}}개월 전",
|
|
3505
|
+
monthsAgo_one: "{{count}}개월 전",
|
|
3506
|
+
monthsAgo_other: "{{count}}개월 전",
|
|
3120
3507
|
yearsAgo: "{{count}}년 전",
|
|
3508
|
+
yearsAgo_one: "{{count}}년 전",
|
|
3509
|
+
yearsAgo_other: "{{count}}년 전",
|
|
3121
3510
|
},
|
|
3122
3511
|
},
|
|
3123
|
-
approvals: {
|
|
3124
|
-
approve: '승인',
|
|
3125
|
-
reject: '반려',
|
|
3126
|
-
comment: '의견(선택 사항)',
|
|
3127
|
-
approveSuccess: '승인됨',
|
|
3128
|
-
rejectSuccess: '반려됨',
|
|
3129
|
-
rejectConfirm: '이 승인 요청을 반려하시겠습니까?',
|
|
3130
|
-
},
|
|
3131
3512
|
approvalsInbox: {
|
|
3513
|
+
recordUnresolvable: '이 레코드를 열 수 없습니다',
|
|
3132
3514
|
loadMore: '더 보기',
|
|
3133
|
-
loadingMore: '
|
|
3515
|
+
loadingMore: '로딩 중…',
|
|
3134
3516
|
loadedOf: '{{total}}개 중 {{loaded}}개 로드됨',
|
|
3135
3517
|
actEscalate: 'SLA 에스컬레이션',
|
|
3136
3518
|
systemSlaActor: '시스템(SLA)',
|
|
@@ -3147,6 +3529,8 @@ const ko = {
|
|
|
3147
3529
|
requestInfoSent: '추가 정보 요청을 보냈습니다',
|
|
3148
3530
|
remindBtn: '독촉',
|
|
3149
3531
|
remindSuccess: '승인자 {{count}}명에게 알렸습니다',
|
|
3532
|
+
remindSuccess_one: '승인자 {{count}}명에게 알렸습니다',
|
|
3533
|
+
remindSuccess_other: '승인자 {{count}}명에게 알렸습니다',
|
|
3150
3534
|
remindThrottled: '최근에 이미 독촉했습니다. 잠시 후 다시 시도하세요.',
|
|
3151
3535
|
replyPlaceholder: '이 요청에 답하기…',
|
|
3152
3536
|
slaRemaining: 'SLA {{dur}} 남음',
|
|
@@ -3163,6 +3547,8 @@ const ko = {
|
|
|
3163
3547
|
progressApprovals: '승인 — {{got}} / {{need}}',
|
|
3164
3548
|
progressGroups: '그룹 승인 — {{got}} / {{need}} 그룹',
|
|
3165
3549
|
progressEligible: '승인 가능자 {{count}}명',
|
|
3550
|
+
progressEligible_one: '승인 가능자 {{count}}명',
|
|
3551
|
+
progressEligible_other: '승인 가능자 {{count}}명',
|
|
3166
3552
|
progressBar: '결정 진행 상황',
|
|
3167
3553
|
declaredActions: '작업',
|
|
3168
3554
|
attachmentChip: '첨부 파일',
|
|
@@ -3194,6 +3580,8 @@ const ko = {
|
|
|
3194
3580
|
filterCount: '{{total}}개 중 {{shown}}개',
|
|
3195
3581
|
selected: '선택됨',
|
|
3196
3582
|
actionableCount: '({{count}}개 처리 가능)',
|
|
3583
|
+
actionableCount_one: '({{count}}개 처리 가능)',
|
|
3584
|
+
actionableCount_other: '({{count}}개 처리 가능)',
|
|
3197
3585
|
selectAll: '전체 선택',
|
|
3198
3586
|
selectRow: '이 요청 선택',
|
|
3199
3587
|
colRequest: '승인 항목',
|
|
@@ -3234,12 +3622,19 @@ const ko = {
|
|
|
3234
3622
|
submittedAgo: '{{when}} 제출됨',
|
|
3235
3623
|
completedAt: '{{when}} 완료됨',
|
|
3236
3624
|
waitingOn: '대기 중인 승인자',
|
|
3625
|
+
approverNameSeparator: ', ',
|
|
3626
|
+
approverUnstaffed: '{{seat}}(현재 담당자 없음)',
|
|
3237
3627
|
history: '승인 활동',
|
|
3238
3628
|
noActions: '아직 작업이 없습니다.',
|
|
3239
3629
|
actSubmit: '제출',
|
|
3240
3630
|
actApprove: '승인',
|
|
3241
3631
|
actReject: '거부',
|
|
3242
3632
|
actRecall: '회수',
|
|
3633
|
+
overrideActionLabel: '{{action}}(관리자 권한)',
|
|
3634
|
+
overrideNotice: '이 단계의 승인자 자리가 없습니다. 계속하면 관리자 재정의가 사용되어 단계가 즉시 확정되고, 아직 처리하지 않은 승인자는 모두 건너뜁니다. 이 결정은 관리자 재정의로 기록됩니다.',
|
|
3635
|
+
overrideNoticeWho: '이 단계의 승인자 자리가 없습니다. 계속하면 관리자 재정의가 사용되어 단계가 즉시 확정되고, 아직 처리하지 않은 승인자 — {{who}} — 를 건너뜁니다. 이 결정은 관리자 재정의로 기록됩니다.',
|
|
3636
|
+
viaOverrideChip: '관리자 재정의',
|
|
3637
|
+
viaOverrideHint: '실행자는 이 단계의 승인자 자리가 없으며 관리자 재정의 경로로 처리했습니다.',
|
|
3243
3638
|
rawData: '원본 데이터(JSON)',
|
|
3244
3639
|
copy: '복사',
|
|
3245
3640
|
copied: '복사됨',
|
|
@@ -3260,11 +3655,19 @@ const ko = {
|
|
|
3260
3655
|
approveN: '{{count}}개 승인',
|
|
3261
3656
|
rejectN: '{{count}}개 거부',
|
|
3262
3657
|
bulkApproveTitle: '{{count}}개 요청을 승인할까요?',
|
|
3658
|
+
bulkApproveTitle_one: '{{count}}개 요청을 승인할까요?',
|
|
3659
|
+
bulkApproveTitle_other: '{{count}}개 요청을 승인할까요?',
|
|
3263
3660
|
bulkApproveBody: '각 요청은 내 ID로 승인되며 해당 플로우는 승인 분기로 진행됩니다.',
|
|
3264
3661
|
bulkRejectTitle: '{{count}}개 요청을 거부할까요?',
|
|
3662
|
+
bulkRejectTitle_one: '{{count}}개 요청을 거부할까요?',
|
|
3663
|
+
bulkRejectTitle_other: '{{count}}개 요청을 거부할까요?',
|
|
3265
3664
|
bulkRejectBody: '선택한 요청을 거부하고 신청자에게 알립니다.',
|
|
3266
3665
|
bulkApproved: '{{count}}개 요청을 승인했습니다',
|
|
3666
|
+
bulkApproved_one: '{{count}}개 요청을 승인했습니다',
|
|
3667
|
+
bulkApproved_other: '{{count}}개 요청을 승인했습니다',
|
|
3267
3668
|
bulkRejected: '{{count}}개 요청을 거부했습니다',
|
|
3669
|
+
bulkRejected_one: '{{count}}개 요청을 거부했습니다',
|
|
3670
|
+
bulkRejected_other: '{{count}}개 요청을 거부했습니다',
|
|
3268
3671
|
bulkPartial: '{{ok}}개 성공, {{fail}}개 실패: {{which}}',
|
|
3269
3672
|
rejectOneTitle: '"{{title}}"을(를) 거부할까요?',
|
|
3270
3673
|
rejectOneBody: '요청을 거부하고 신청자에게 알립니다.',
|
|
@@ -3289,8 +3692,14 @@ const ko = {
|
|
|
3289
3692
|
alreadyDecided: '이미 처리된 요청입니다. 목록을 새로고침하세요.',
|
|
3290
3693
|
justNow: '방금 전',
|
|
3291
3694
|
minutesAgo: '{{count}}분 전',
|
|
3695
|
+
minutesAgo_one: '{{count}}분 전',
|
|
3696
|
+
minutesAgo_other: '{{count}}분 전',
|
|
3292
3697
|
hoursAgo: '{{count}}시간 전',
|
|
3698
|
+
hoursAgo_one: '{{count}}시간 전',
|
|
3699
|
+
hoursAgo_other: '{{count}}시간 전',
|
|
3293
3700
|
daysAgo: '{{count}}일 전',
|
|
3701
|
+
daysAgo_one: '{{count}}일 전',
|
|
3702
|
+
daysAgo_other: '{{count}}일 전',
|
|
3294
3703
|
},
|
|
3295
3704
|
preview: {
|
|
3296
3705
|
empty: {
|
|
@@ -3325,7 +3734,16 @@ const ko = {
|
|
|
3325
3734
|
detailNone: '차이가 감지되지 않았습니다 — 초안이 게시된 버전과 일치합니다.',
|
|
3326
3735
|
detailChangedKeys: '기타 변경:',
|
|
3327
3736
|
confirmNote: '게시하면 이 패키지의 대기 중인 초안 {{count}}개가 한 번에(원자적으로) 게시됩니다.',
|
|
3737
|
+
confirmNote_one: '게시하면 이 패키지의 대기 중인 초안 {{count}}개가 한 번에(원자적으로) 게시됩니다.',
|
|
3738
|
+
confirmNote_other: '게시하면 이 패키지의 대기 중인 초안 {{count}}개가 한 번에(원자적으로) 게시됩니다.',
|
|
3328
3739
|
publishConfirm: '모두 게시',
|
|
3740
|
+
// [`7a90afdf9`] Pre-publish security-posture findings, shown next to
|
|
3741
|
+
// the confirm button so a refusal the door would issue is read BEFORE
|
|
3742
|
+
// the click rather than as a toast after the batch rolled back.
|
|
3743
|
+
securityBlockTitle: '게시가 거부됩니다 — {{count}}개 항목에 먼저 결정이 필요합니다',
|
|
3744
|
+
securityBlockTitle_one: '게시가 거부됩니다 — {{count}}개 항목에 먼저 결정이 필요합니다',
|
|
3745
|
+
securityBlockTitle_other: '게시가 거부됩니다 — {{count}}개 항목에 먼저 결정이 필요합니다',
|
|
3746
|
+
securityBlockWhere: '객체의 설정 → 레코드 공유에서 수정한 후 다시 게시하세요.',
|
|
3329
3747
|
},
|
|
3330
3748
|
// ADR-0045 — the materialized-but-unlisted app banner
|
|
3331
3749
|
// (UnpublishedAppBar.tsx), sibling of draftBar above.
|
|
@@ -3349,7 +3767,7 @@ const ko = {
|
|
|
3349
3767
|
revertLabel: '변경을 되돌렸습니다',
|
|
3350
3768
|
applyLabel: '빌드 변경',
|
|
3351
3769
|
revert: '되돌림',
|
|
3352
|
-
items: '항목',
|
|
3770
|
+
items: '{{count}} 항목',
|
|
3353
3771
|
revertAction: '되돌리기',
|
|
3354
3772
|
reverted: '되돌렸습니다 — 변경이 취소되었습니다.',
|
|
3355
3773
|
revertFailed: '되돌리기 실패',
|
|
@@ -3372,22 +3790,33 @@ const ko = {
|
|
|
3372
3790
|
noResults: "결과 없음",
|
|
3373
3791
|
searchField: "{{label}} 검색…",
|
|
3374
3792
|
enterId: "{{label}} ID 입력",
|
|
3793
|
+
addValue: "값을 입력하고 Enter 키를 누르세요",
|
|
3794
|
+
removeValue: "{{value}} 제거",
|
|
3795
|
+
rangeStart: "시작",
|
|
3796
|
+
rangeEnd: "끝",
|
|
3375
3797
|
operators: {
|
|
3376
3798
|
equals: "같음",
|
|
3377
|
-
|
|
3799
|
+
not_equals: "같지 않음",
|
|
3378
3800
|
contains: "포함",
|
|
3379
|
-
|
|
3380
|
-
|
|
3381
|
-
|
|
3382
|
-
|
|
3383
|
-
|
|
3384
|
-
|
|
3385
|
-
|
|
3801
|
+
icontains: "포함 (대소문자 무시)",
|
|
3802
|
+
not_contains: "포함하지 않음",
|
|
3803
|
+
is_empty: "비어 있음",
|
|
3804
|
+
is_not_empty: "비어 있지 않음",
|
|
3805
|
+
greater_than: "보다 큼",
|
|
3806
|
+
less_than: "보다 작음",
|
|
3807
|
+
greater_than_or_equal: "크거나 같음",
|
|
3808
|
+
less_than_or_equal: "작거나 같음",
|
|
3386
3809
|
before: "이전",
|
|
3387
3810
|
after: "이후",
|
|
3388
3811
|
between: "사이",
|
|
3389
3812
|
in: "포함됨",
|
|
3390
|
-
|
|
3813
|
+
not_in: "포함되지 않음",
|
|
3814
|
+
starts_with: "다음으로 시작",
|
|
3815
|
+
ends_with: "다음으로 끝남",
|
|
3816
|
+
is_null: "null임",
|
|
3817
|
+
is_not_null: "null이 아님",
|
|
3818
|
+
exists: "설정됨",
|
|
3819
|
+
notExists: "설정되지 않음",
|
|
3391
3820
|
},
|
|
3392
3821
|
},
|
|
3393
3822
|
sortBuilder: {
|
|
@@ -3401,7 +3830,8 @@ const ko = {
|
|
|
3401
3830
|
},
|
|
3402
3831
|
collaboration: {
|
|
3403
3832
|
commentCount: "댓글 {{count}}개",
|
|
3404
|
-
|
|
3833
|
+
commentCount_one: "댓글 {{count}}개",
|
|
3834
|
+
commentCount_other: "댓글 {{count}}개",
|
|
3405
3835
|
resolvedSuffix: " · 해결됨",
|
|
3406
3836
|
sortComments: "댓글 정렬",
|
|
3407
3837
|
sortOldest: "오래된 순",
|
|
@@ -3410,11 +3840,18 @@ const ko = {
|
|
|
3410
3840
|
reopen: "다시 열기",
|
|
3411
3841
|
justNow: "방금",
|
|
3412
3842
|
minutesAgo: "{{count}}분 전",
|
|
3843
|
+
minutesAgo_one: "{{count}}분 전",
|
|
3844
|
+
minutesAgo_other: "{{count}}분 전",
|
|
3413
3845
|
hoursAgo: "{{count}}시간 전",
|
|
3846
|
+
hoursAgo_one: "{{count}}시간 전",
|
|
3847
|
+
hoursAgo_other: "{{count}}시간 전",
|
|
3414
3848
|
daysAgo: "{{count}}일 전",
|
|
3849
|
+
daysAgo_one: "{{count}}일 전",
|
|
3850
|
+
daysAgo_other: "{{count}}일 전",
|
|
3415
3851
|
edited: "(수정됨)",
|
|
3416
3852
|
reactionCount: "반응 {{count}}개",
|
|
3417
|
-
|
|
3853
|
+
reactionCount_one: "반응 {{count}}개",
|
|
3854
|
+
reactionCount_other: "반응 {{count}}개",
|
|
3418
3855
|
addThumbsUp: "좋아요 추가",
|
|
3419
3856
|
reply: "답글",
|
|
3420
3857
|
reactThumbsUp: "좋아요로 반응",
|
|
@@ -3425,9 +3862,11 @@ const ko = {
|
|
|
3425
3862
|
commentPlaceholder: "댓글 추가…(@로 멘션)",
|
|
3426
3863
|
send: "보내기",
|
|
3427
3864
|
presentUserCount: "{{count}}명 접속 중",
|
|
3428
|
-
|
|
3865
|
+
presentUserCount_one: "{{count}}명 접속 중",
|
|
3866
|
+
presentUserCount_other: "{{count}}명 접속 중",
|
|
3429
3867
|
moreUserCount: "외 {{count}}명",
|
|
3430
|
-
|
|
3868
|
+
moreUserCount_one: "외 {{count}}명",
|
|
3869
|
+
moreUserCount_other: "외 {{count}}명",
|
|
3431
3870
|
userStatusTitle: "{{name}}({{status}})",
|
|
3432
3871
|
statusActive: "활성",
|
|
3433
3872
|
statusIdle: "유휴",
|
|
@@ -3435,6 +3874,18 @@ const ko = {
|
|
|
3435
3874
|
},
|
|
3436
3875
|
wizard: {
|
|
3437
3876
|
missingRequired: "필수 항목을 입력하세요: {{fields}}",
|
|
3877
|
+
back: "뒤로",
|
|
3878
|
+
submitting: "제출 중…",
|
|
3879
|
+
stepFallback: "{{n}}단계",
|
|
3880
|
+
progressLabel: "진행 상황",
|
|
3881
|
+
emptyStep: "이 단계에 구성된 필드가 없습니다",
|
|
3882
|
+
},
|
|
3883
|
+
flowRunner: {
|
|
3884
|
+
title: '입력',
|
|
3885
|
+
submitting: '제출 중…',
|
|
3886
|
+
saveAndContinue: '저장 후 계속',
|
|
3887
|
+
nextStep: '저장됨 — 다음 단계',
|
|
3888
|
+
completed: '플로우 「{{flow}}」이(가) 완료되었습니다',
|
|
3438
3889
|
},
|
|
3439
3890
|
appManagement: {
|
|
3440
3891
|
title: "애플리케이션",
|
|
@@ -3485,5 +3936,48 @@ const ko = {
|
|
|
3485
3936
|
bulkOperationFailed: "일괄 작업 실패: {{reason}}",
|
|
3486
3937
|
},
|
|
3487
3938
|
},
|
|
3939
|
+
// objectui#6301 — 설정 › 패키지 자동화 (ADR-0126 §7.4). 용어는 기존 번역을
|
|
3940
|
+
// 따릅니다: `common.package` = 패키지, `flowRunner.completed` = 플로우,
|
|
3941
|
+
// 인용부호는 「」. ⛔ 계보·드리프트를 나타내는 표현은 이 그룹에 두지 않습니다 (§9).
|
|
3942
|
+
packagedAutomation: {
|
|
3943
|
+
title: "패키지 자동화",
|
|
3944
|
+
subtitle: "설치된 패키지가 제공하는 플로우와 액션입니다. 이 배포에서 끌 수 있으며, 플로우는 새 이름으로 복제해 사용자 지정할 수도 있습니다. 편집은 Studio에서 합니다.",
|
|
3945
|
+
refresh: "새로고침",
|
|
3946
|
+
flowsHeading: "패키지 플로우",
|
|
3947
|
+
actionsHeading: "패키지 액션",
|
|
3948
|
+
colFlow: "플로우",
|
|
3949
|
+
colActivation: "활성화 상태",
|
|
3950
|
+
colActions: "작업",
|
|
3951
|
+
toggleLabel: "{{label}}의 활성화 상태",
|
|
3952
|
+
on: "켜짐",
|
|
3953
|
+
off: "꺼짐",
|
|
3954
|
+
clone: "복제",
|
|
3955
|
+
cloneTitle: "패키지 플로우 복제",
|
|
3956
|
+
cloneBody: "사본은 정의 전체를 그대로 가져가며 새 머신 이름과 레이블이 필요합니다. 사본은 Studio에서 편집하세요.",
|
|
3957
|
+
cloneName: "새 머신 이름",
|
|
3958
|
+
cloneLabel: "새 레이블",
|
|
3959
|
+
cancel: "취소",
|
|
3960
|
+
cloneConfirm: "복제본 만들기",
|
|
3961
|
+
cloneCreated: "플로우 「{{name}}」을(를) 만들었습니다.",
|
|
3962
|
+
emptyTitle: "패키지 플로우 없음",
|
|
3963
|
+
emptyBody: "이 배포에는 자동화 플로우를 제공하는 설치된 패키지가 없습니다. 직접 작성한 플로우는 Studio에 있습니다.",
|
|
3964
|
+
loadFailed: "패키지 자동화를 불러오지 못했습니다.",
|
|
3965
|
+
toggleFailedHttp: "활성화 상태를 변경하지 못했습니다 (HTTP {{status}}).",
|
|
3966
|
+
toggleFailed: "활성화 상태를 변경하지 못했습니다.",
|
|
3967
|
+
cloneFailedHttp: "이 플로우를 복제하지 못했습니다 (HTTP {{status}}).",
|
|
3968
|
+
cloneFailed: "이 플로우를 복제하지 못했습니다.",
|
|
3969
|
+
actionsSubtitle: "설치된 패키지가 제공하는 액션입니다. 이 배포에서 끄면 액션이 제공되는 모든 곳에서 실행되지 않습니다. Studio에서 직접 액션을 따로 작성하는 것은 계속 가능합니다.",
|
|
3970
|
+
colAction: "액션",
|
|
3971
|
+
colObject: "오브젝트",
|
|
3972
|
+
actionToggleLabel: "{{object}}의 {{label}} 활성화 상태",
|
|
3973
|
+
actionsEmptyTitle: "패키지 액션 없음",
|
|
3974
|
+
actionsEmptyBody: "이 배포에는 액션을 선언하는 설치된 패키지가 없습니다. 직접 작성한 액션은 Studio에 있습니다.",
|
|
3975
|
+
actionsLoadFailed: "패키지 액션을 불러오지 못했습니다.",
|
|
3976
|
+
},
|
|
3977
|
+
element: {
|
|
3978
|
+
number: {
|
|
3979
|
+
noObject: "개체가 지정되지 않았습니다. object 또는 dataSource.object를 설정하세요.",
|
|
3980
|
+
},
|
|
3981
|
+
},
|
|
3488
3982
|
};
|
|
3489
3983
|
export default ko;
|