@sd-angular/core 19.0.30 → 19.0.32
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/components/data-state/index.d.ts +1 -0
- package/components/data-state/src/data-state.component.d.ts +41 -0
- package/components/import-excel/src/import-excel.component.d.ts +23 -1
- package/components/index.d.ts +1 -0
- package/components/quick-action/src/quick-action.component.d.ts +3 -1
- package/components/table/src/components/selector-action/selector-action.component.d.ts +11 -0
- package/components/table/src/services/table-local/table-local-sort.util.d.ts +3 -0
- package/components/table/src/table.component.d.ts +10 -1
- package/components/upload-file/src/upload-file.component.d.ts +5 -1
- package/fesm2022/sd-angular-core-components-button.mjs +2 -2
- package/fesm2022/sd-angular-core-components-button.mjs.map +1 -1
- package/fesm2022/sd-angular-core-components-data-state.mjs +72 -0
- package/fesm2022/sd-angular-core-components-data-state.mjs.map +1 -0
- package/fesm2022/sd-angular-core-components-form-generic.mjs +14 -14
- package/fesm2022/sd-angular-core-components-form-generic.mjs.map +1 -1
- package/fesm2022/sd-angular-core-components-import-excel.mjs +67 -18
- package/fesm2022/sd-angular-core-components-import-excel.mjs.map +1 -1
- package/fesm2022/sd-angular-core-components-inform.mjs +6 -6
- package/fesm2022/sd-angular-core-components-inform.mjs.map +1 -1
- package/fesm2022/sd-angular-core-components-query-bar.mjs +3 -3
- package/fesm2022/sd-angular-core-components-query-bar.mjs.map +1 -1
- package/fesm2022/sd-angular-core-components-query-builder.mjs +1 -1
- package/fesm2022/sd-angular-core-components-query-builder.mjs.map +1 -1
- package/fesm2022/sd-angular-core-components-quick-action.mjs +4 -2
- package/fesm2022/sd-angular-core-components-quick-action.mjs.map +1 -1
- package/fesm2022/sd-angular-core-components-stepper.mjs +2 -2
- package/fesm2022/sd-angular-core-components-stepper.mjs.map +1 -1
- package/fesm2022/sd-angular-core-components-table.mjs +146 -46
- package/fesm2022/sd-angular-core-components-table.mjs.map +1 -1
- package/fesm2022/sd-angular-core-components-tree.mjs +1 -1
- package/fesm2022/sd-angular-core-components-tree.mjs.map +1 -1
- package/fesm2022/sd-angular-core-components-upload-file.mjs +20 -6
- package/fesm2022/sd-angular-core-components-upload-file.mjs.map +1 -1
- package/fesm2022/sd-angular-core-components.mjs +1 -0
- package/fesm2022/sd-angular-core-components.mjs.map +1 -1
- package/fesm2022/sd-angular-core-forms-autocomplete.mjs +247 -59
- package/fesm2022/sd-angular-core-forms-autocomplete.mjs.map +1 -1
- package/fesm2022/sd-angular-core-forms-date-range.mjs +2 -2
- package/fesm2022/sd-angular-core-forms-date-range.mjs.map +1 -1
- package/fesm2022/sd-angular-core-forms-date.mjs +2 -2
- package/fesm2022/sd-angular-core-forms-date.mjs.map +1 -1
- package/fesm2022/sd-angular-core-forms-datetime.mjs +2 -2
- package/fesm2022/sd-angular-core-forms-datetime.mjs.map +1 -1
- package/fesm2022/sd-angular-core-forms-input-number.mjs +57 -7
- package/fesm2022/sd-angular-core-forms-input-number.mjs.map +1 -1
- package/fesm2022/sd-angular-core-forms-select.mjs +290 -67
- package/fesm2022/sd-angular-core-forms-select.mjs.map +1 -1
- package/fesm2022/sd-angular-core-i18n.mjs +155 -0
- package/fesm2022/sd-angular-core-i18n.mjs.map +1 -1
- package/fesm2022/sd-angular-core-modules-layout.mjs +6 -6
- package/fesm2022/sd-angular-core-modules-layout.mjs.map +1 -1
- package/fesm2022/sd-angular-core-services-confirm.mjs +43 -7
- package/fesm2022/sd-angular-core-services-confirm.mjs.map +1 -1
- package/fesm2022/sd-angular-core-services-notify.mjs +2 -2
- package/fesm2022/sd-angular-core-services-notify.mjs.map +1 -1
- package/fesm2022/sd-angular-core-utilities-read-state.mjs +87 -0
- package/fesm2022/sd-angular-core-utilities-read-state.mjs.map +1 -0
- package/fesm2022/sd-angular-core-utilities.mjs +1 -0
- package/fesm2022/sd-angular-core-utilities.mjs.map +1 -1
- package/forms/autocomplete/src/autocomplete.component.d.ts +13 -2
- package/forms/select/src/select.component.d.ts +11 -1
- package/i18n/src/en.d.ts +31 -0
- package/package.json +9 -1
- package/services/confirm/src/lib/components/dialog-confirm/dialog-confirm.component.d.ts +4 -0
- package/services/confirm/src/lib/confirm.service.d.ts +6 -0
- package/utilities/index.d.ts +1 -0
- package/utilities/read-state/index.d.ts +1 -0
- package/utilities/read-state/src/read-state.d.ts +37 -0
|
@@ -7,6 +7,15 @@ import { SD_CORE_CONFIGURATION } from '@sd-angular/core/configurations';
|
|
|
7
7
|
const I18N_STORAGE_KEY = 'sd-core.language';
|
|
8
8
|
|
|
9
9
|
const EN_MESSAGES = {
|
|
10
|
+
'core.component.data-state.loading.title': 'Loading',
|
|
11
|
+
'core.component.data-state.loading.message': 'Please wait while the data is being loaded.',
|
|
12
|
+
'core.component.data-state.empty.title': 'No data',
|
|
13
|
+
'core.component.data-state.empty.message': 'There is no data to display yet.',
|
|
14
|
+
'core.component.data-state.error.title': 'Unable to load data',
|
|
15
|
+
'core.component.data-state.error.message': 'An error occurred. Please try again.',
|
|
16
|
+
'core.component.data-state.forbidden.title': 'Access denied',
|
|
17
|
+
'core.component.data-state.forbidden.message': 'You do not have permission to view this content.',
|
|
18
|
+
'core.component.data-state.retry': 'Try again',
|
|
10
19
|
'core.common.cancel': 'Cancel',
|
|
11
20
|
'core.common.close': 'Close',
|
|
12
21
|
'core.common.reload': 'Reload page',
|
|
@@ -138,6 +147,7 @@ const EN_MESSAGES = {
|
|
|
138
147
|
'core.form.date-range.invalid-max': 'End date is invalid (above limit)',
|
|
139
148
|
'core.form.date-range.from': 'From',
|
|
140
149
|
'core.form.date-range.to': 'to',
|
|
150
|
+
'core.form.date-range.clear': 'Clear date range',
|
|
141
151
|
// ---- Forms: datetime ----
|
|
142
152
|
'core.form.datetime.required': 'Please enter information',
|
|
143
153
|
'core.form.datetime.min-date': 'Minimum date: {date}',
|
|
@@ -170,6 +180,7 @@ const EN_MESSAGES = {
|
|
|
170
180
|
// ---- Forms: select ----
|
|
171
181
|
'core.form.select.required': 'Please enter information',
|
|
172
182
|
'core.form.select.selectAll': 'All',
|
|
183
|
+
'core.form.select.selected-count': '{count} items selected',
|
|
173
184
|
// ---- Forms: textarea ----
|
|
174
185
|
'core.form.textarea.required': 'Please enter information',
|
|
175
186
|
'core.form.textarea.maxlength': 'Maximum characters: {max}',
|
|
@@ -319,6 +330,21 @@ const EN_MESSAGES = {
|
|
|
319
330
|
// ---- Component: history ----
|
|
320
331
|
'core.component.history.by': 'By',
|
|
321
332
|
// ---- Component: import-excel ----
|
|
333
|
+
'core.component.import-excel.choose-hint': 'Choose an .xlsx template file with up to {limit} rows.',
|
|
334
|
+
'core.component.import-excel.choose-file': 'Choose Excel file',
|
|
335
|
+
'core.component.import-excel.template': 'Download template',
|
|
336
|
+
'core.component.import-excel.row-count': '{count} data rows',
|
|
337
|
+
'core.component.import-excel.replace-file': 'Replace file',
|
|
338
|
+
'core.component.import-excel.filter-all': 'All',
|
|
339
|
+
'core.component.import-excel.filter-success': 'Valid',
|
|
340
|
+
'core.component.import-excel.filter-warning': 'Warnings',
|
|
341
|
+
'core.component.import-excel.filter-error': 'Errors',
|
|
342
|
+
'core.component.import-excel.preview': 'Excel data preview',
|
|
343
|
+
'core.component.import-excel.issue-count': 'View {count} issues',
|
|
344
|
+
'core.component.import-excel.no-filter-results': 'No matching rows',
|
|
345
|
+
'core.component.import-excel.no-filter-results-hint': 'Try another filter or view all data.',
|
|
346
|
+
'core.component.import-excel.blocked-errors': 'Fix {count} rows with errors before importing.',
|
|
347
|
+
'core.component.import-excel.submitted': 'Data has been submitted for processing.',
|
|
322
348
|
'core.component.import-excel.title': 'Import Excel data',
|
|
323
349
|
'core.component.import-excel.see-all': 'See all',
|
|
324
350
|
'core.component.import-excel.valid-rows': 'Valid rows',
|
|
@@ -448,10 +474,15 @@ const EN_MESSAGES = {
|
|
|
448
474
|
'core.component.table.not-an-array': 'Data is not an array',
|
|
449
475
|
'core.component.table.config.confirm-reset': 'Confirm reset all settings to defaults',
|
|
450
476
|
'core.component.table.popup-export.select-columns': 'Please select columns to export',
|
|
477
|
+
'core.component.table.selector-action.selected': 'Selected {count}',
|
|
478
|
+
'core.component.table.selector-action.more': 'More',
|
|
451
479
|
'core.component.table.selector-action.default-msg': 'items selected',
|
|
452
480
|
'core.component.tab-router.too-many-tabs': 'You have opened too many tabs.',
|
|
453
481
|
// ---- Component: upload-file ----
|
|
454
482
|
'core.component.upload-file.upload': 'Upload file',
|
|
483
|
+
'core.component.upload-file.remove': 'Remove file',
|
|
484
|
+
'core.component.upload-file.loading': 'Uploading file',
|
|
485
|
+
'core.component.upload-file.choose-or-drop': 'Choose a file or drag it here',
|
|
455
486
|
'core.component.upload-file.error-occurred': 'An error occurred',
|
|
456
487
|
'core.component.upload-file.please-upload': 'Please upload a file/image',
|
|
457
488
|
'core.component.upload-file.desc-format-and-size': 'Format: {exts} and up to: {maxSize}MB',
|
|
@@ -508,6 +539,15 @@ const EN_MESSAGES = {
|
|
|
508
539
|
};
|
|
509
540
|
|
|
510
541
|
const JA_MESSAGES = {
|
|
542
|
+
'core.component.data-state.loading.title': '読み込み中',
|
|
543
|
+
'core.component.data-state.loading.message': 'データを読み込んでいます。しばらくお待ちください。',
|
|
544
|
+
'core.component.data-state.empty.title': 'データがありません',
|
|
545
|
+
'core.component.data-state.empty.message': '表示するデータはまだありません。',
|
|
546
|
+
'core.component.data-state.error.title': 'データを読み込めません',
|
|
547
|
+
'core.component.data-state.error.message': 'エラーが発生しました。もう一度お試しください。',
|
|
548
|
+
'core.component.data-state.forbidden.title': 'アクセスが拒否されました',
|
|
549
|
+
'core.component.data-state.forbidden.message': 'このコンテンツを表示する権限がありません。',
|
|
550
|
+
'core.component.data-state.retry': '再試行',
|
|
511
551
|
'core.common.cancel': 'キャンセル',
|
|
512
552
|
'core.common.close': '閉じる',
|
|
513
553
|
'core.common.reload': 'ページを再読み込み',
|
|
@@ -639,6 +679,7 @@ const JA_MESSAGES = {
|
|
|
639
679
|
'core.form.date-range.invalid-max': '終了日が無効です(上限を超えています)',
|
|
640
680
|
'core.form.date-range.from': '開始',
|
|
641
681
|
'core.form.date-range.to': '~',
|
|
682
|
+
'core.form.date-range.clear': '日付範囲をクリア',
|
|
642
683
|
// ---- Forms: datetime ----
|
|
643
684
|
'core.form.datetime.required': '入力してください',
|
|
644
685
|
'core.form.datetime.min-date': '最小日付: {date}',
|
|
@@ -671,6 +712,7 @@ const JA_MESSAGES = {
|
|
|
671
712
|
// ---- Forms: select ----
|
|
672
713
|
'core.form.select.required': '選択してください',
|
|
673
714
|
'core.form.select.selectAll': 'すべて',
|
|
715
|
+
'core.form.select.selected-count': '{count} 件選択',
|
|
674
716
|
// ---- Forms: textarea ----
|
|
675
717
|
'core.form.textarea.required': '入力してください',
|
|
676
718
|
'core.form.textarea.maxlength': '最大文字数: {max}',
|
|
@@ -820,6 +862,21 @@ const JA_MESSAGES = {
|
|
|
820
862
|
// ---- Component: history ----
|
|
821
863
|
'core.component.history.by': '実行者',
|
|
822
864
|
// ---- Component: import-excel ----
|
|
865
|
+
'core.component.import-excel.choose-hint': 'テンプレートに沿った .xlsx ファイルを選択してください(最大 {limit} 行)。',
|
|
866
|
+
'core.component.import-excel.choose-file': 'Excel ファイルを選択',
|
|
867
|
+
'core.component.import-excel.template': 'テンプレートを取得',
|
|
868
|
+
'core.component.import-excel.row-count': 'データ {count} 行',
|
|
869
|
+
'core.component.import-excel.replace-file': 'ファイルを変更',
|
|
870
|
+
'core.component.import-excel.filter-all': 'すべて',
|
|
871
|
+
'core.component.import-excel.filter-success': '有効',
|
|
872
|
+
'core.component.import-excel.filter-warning': '警告',
|
|
873
|
+
'core.component.import-excel.filter-error': 'エラー',
|
|
874
|
+
'core.component.import-excel.preview': 'Excel データのプレビュー',
|
|
875
|
+
'core.component.import-excel.issue-count': '{count} 件の問題を表示',
|
|
876
|
+
'core.component.import-excel.no-filter-results': '一致する行がありません',
|
|
877
|
+
'core.component.import-excel.no-filter-results-hint': '別のフィルターを選ぶか、すべてのデータを表示してください。',
|
|
878
|
+
'core.component.import-excel.blocked-errors': 'インポート前にエラーのある {count} 行を修正してください。',
|
|
879
|
+
'core.component.import-excel.submitted': '処理のためにデータを送信しました。',
|
|
823
880
|
'core.component.import-excel.title': 'Excelデータをインポート',
|
|
824
881
|
'core.component.import-excel.see-all': 'すべて表示',
|
|
825
882
|
'core.component.import-excel.valid-rows': '有効な行数',
|
|
@@ -949,10 +1006,15 @@ const JA_MESSAGES = {
|
|
|
949
1006
|
'core.component.table.not-an-array': 'データが配列ではありません',
|
|
950
1007
|
'core.component.table.config.confirm-reset': 'すべての設定をデフォルトに戻しますか',
|
|
951
1008
|
'core.component.table.popup-export.select-columns': 'エクスポートする列を選択してください',
|
|
1009
|
+
'core.component.table.selector-action.selected': '{count} 件選択中',
|
|
1010
|
+
'core.component.table.selector-action.more': 'その他',
|
|
952
1011
|
'core.component.table.selector-action.default-msg': '件選択中',
|
|
953
1012
|
'core.component.tab-router.too-many-tabs': 'タブを開きすぎています。',
|
|
954
1013
|
// ---- Component: upload-file ----
|
|
955
1014
|
'core.component.upload-file.upload': 'ファイルをアップロード',
|
|
1015
|
+
'core.component.upload-file.remove': 'ファイルを削除',
|
|
1016
|
+
'core.component.upload-file.loading': 'ファイルをアップロード中',
|
|
1017
|
+
'core.component.upload-file.choose-or-drop': 'ファイルを選択するか、ここにドラッグしてください',
|
|
956
1018
|
'core.component.upload-file.error-occurred': 'エラーが発生しました',
|
|
957
1019
|
'core.component.upload-file.please-upload': 'ファイル/画像をアップロードしてください',
|
|
958
1020
|
'core.component.upload-file.desc-format-and-size': 'フォーマット: {exts}、最大: {maxSize}MB',
|
|
@@ -1009,6 +1071,15 @@ const JA_MESSAGES = {
|
|
|
1009
1071
|
};
|
|
1010
1072
|
|
|
1011
1073
|
const KO_MESSAGES = {
|
|
1074
|
+
'core.component.data-state.loading.title': '불러오는 중',
|
|
1075
|
+
'core.component.data-state.loading.message': '데이터를 불러오는 동안 잠시 기다려 주세요.',
|
|
1076
|
+
'core.component.data-state.empty.title': '데이터 없음',
|
|
1077
|
+
'core.component.data-state.empty.message': '표시할 데이터가 아직 없습니다.',
|
|
1078
|
+
'core.component.data-state.error.title': '데이터를 불러올 수 없음',
|
|
1079
|
+
'core.component.data-state.error.message': '오류가 발생했습니다. 다시 시도해 주세요.',
|
|
1080
|
+
'core.component.data-state.forbidden.title': '접근 거부됨',
|
|
1081
|
+
'core.component.data-state.forbidden.message': '이 콘텐츠를 볼 권한이 없습니다.',
|
|
1082
|
+
'core.component.data-state.retry': '다시 시도',
|
|
1012
1083
|
'core.common.cancel': '취소',
|
|
1013
1084
|
'core.common.close': '닫기',
|
|
1014
1085
|
'core.common.reload': '페이지 새로고침',
|
|
@@ -1140,6 +1211,7 @@ const KO_MESSAGES = {
|
|
|
1140
1211
|
'core.form.date-range.invalid-max': '종료일이 올바르지 않습니다 (한도 초과)',
|
|
1141
1212
|
'core.form.date-range.from': '시작',
|
|
1142
1213
|
'core.form.date-range.to': '~',
|
|
1214
|
+
'core.form.date-range.clear': '날짜 범위 지우기',
|
|
1143
1215
|
// ---- Forms: datetime ----
|
|
1144
1216
|
'core.form.datetime.required': '정보를 입력해 주세요',
|
|
1145
1217
|
'core.form.datetime.min-date': '최소 날짜: {date}',
|
|
@@ -1172,6 +1244,7 @@ const KO_MESSAGES = {
|
|
|
1172
1244
|
// ---- Forms: select ----
|
|
1173
1245
|
'core.form.select.required': '선택해 주세요',
|
|
1174
1246
|
'core.form.select.selectAll': '전체',
|
|
1247
|
+
'core.form.select.selected-count': '{count}개 선택됨',
|
|
1175
1248
|
// ---- Forms: textarea ----
|
|
1176
1249
|
'core.form.textarea.required': '정보를 입력해 주세요',
|
|
1177
1250
|
'core.form.textarea.maxlength': '최대 글자수: {max}',
|
|
@@ -1321,6 +1394,21 @@ const KO_MESSAGES = {
|
|
|
1321
1394
|
// ---- Component: history ----
|
|
1322
1395
|
'core.component.history.by': '작성자',
|
|
1323
1396
|
// ---- Component: import-excel ----
|
|
1397
|
+
'core.component.import-excel.choose-hint': '양식에 맞는 .xlsx 파일을 선택하세요. 최대 {limit}행까지 가능합니다.',
|
|
1398
|
+
'core.component.import-excel.choose-file': 'Excel 파일 선택',
|
|
1399
|
+
'core.component.import-excel.template': '양식 다운로드',
|
|
1400
|
+
'core.component.import-excel.row-count': '데이터 {count}행',
|
|
1401
|
+
'core.component.import-excel.replace-file': '파일 변경',
|
|
1402
|
+
'core.component.import-excel.filter-all': '전체',
|
|
1403
|
+
'core.component.import-excel.filter-success': '유효',
|
|
1404
|
+
'core.component.import-excel.filter-warning': '경고',
|
|
1405
|
+
'core.component.import-excel.filter-error': '오류',
|
|
1406
|
+
'core.component.import-excel.preview': 'Excel 데이터 미리보기',
|
|
1407
|
+
'core.component.import-excel.issue-count': '문제 {count}개 보기',
|
|
1408
|
+
'core.component.import-excel.no-filter-results': '일치하는 행이 없습니다',
|
|
1409
|
+
'core.component.import-excel.no-filter-results-hint': '다른 필터를 선택하거나 모든 데이터를 확인하세요.',
|
|
1410
|
+
'core.component.import-excel.blocked-errors': '가져오기 전에 오류가 있는 {count}행을 수정하세요.',
|
|
1411
|
+
'core.component.import-excel.submitted': '처리를 위해 데이터를 제출했습니다.',
|
|
1324
1412
|
'core.component.import-excel.title': 'Excel 데이터 가져오기',
|
|
1325
1413
|
'core.component.import-excel.see-all': '전체 보기',
|
|
1326
1414
|
'core.component.import-excel.valid-rows': '유효한 행',
|
|
@@ -1450,10 +1538,15 @@ const KO_MESSAGES = {
|
|
|
1450
1538
|
'core.component.table.not-an-array': '데이터가 배열이 아닙니다',
|
|
1451
1539
|
'core.component.table.config.confirm-reset': '모든 설정을 기본값으로 초기화하시겠습니까',
|
|
1452
1540
|
'core.component.table.popup-export.select-columns': '내보낼 열을 선택해 주세요',
|
|
1541
|
+
'core.component.table.selector-action.selected': '{count}개 선택됨',
|
|
1542
|
+
'core.component.table.selector-action.more': '더 보기',
|
|
1453
1543
|
'core.component.table.selector-action.default-msg': '개 선택됨',
|
|
1454
1544
|
'core.component.tab-router.too-many-tabs': '너무 많은 탭이 열려 있습니다.',
|
|
1455
1545
|
// ---- Component: upload-file ----
|
|
1456
1546
|
'core.component.upload-file.upload': '파일 업로드',
|
|
1547
|
+
'core.component.upload-file.remove': '파일 삭제',
|
|
1548
|
+
'core.component.upload-file.loading': '파일 업로드 중',
|
|
1549
|
+
'core.component.upload-file.choose-or-drop': '파일을 선택하거나 여기에 끌어 놓으세요',
|
|
1457
1550
|
'core.component.upload-file.error-occurred': '오류가 발생했습니다',
|
|
1458
1551
|
'core.component.upload-file.please-upload': '파일/이미지를 업로드해 주세요',
|
|
1459
1552
|
'core.component.upload-file.desc-format-and-size': '형식: {exts}, 최대: {maxSize}MB',
|
|
@@ -1510,6 +1603,15 @@ const KO_MESSAGES = {
|
|
|
1510
1603
|
};
|
|
1511
1604
|
|
|
1512
1605
|
const VI_MESSAGES = {
|
|
1606
|
+
'core.component.data-state.loading.title': 'Đang tải',
|
|
1607
|
+
'core.component.data-state.loading.message': 'Vui lòng chờ trong khi dữ liệu được tải.',
|
|
1608
|
+
'core.component.data-state.empty.title': 'Chưa có dữ liệu',
|
|
1609
|
+
'core.component.data-state.empty.message': 'Hiện chưa có dữ liệu để hiển thị.',
|
|
1610
|
+
'core.component.data-state.error.title': 'Không thể tải dữ liệu',
|
|
1611
|
+
'core.component.data-state.error.message': 'Đã xảy ra lỗi. Vui lòng thử lại.',
|
|
1612
|
+
'core.component.data-state.forbidden.title': 'Không có quyền truy cập',
|
|
1613
|
+
'core.component.data-state.forbidden.message': 'Bạn không có quyền xem nội dung này.',
|
|
1614
|
+
'core.component.data-state.retry': 'Thử lại',
|
|
1513
1615
|
'core.common.cancel': 'Hủy',
|
|
1514
1616
|
'core.common.close': 'Đóng',
|
|
1515
1617
|
'core.common.reload': 'Tải lại trang',
|
|
@@ -1641,6 +1743,7 @@ const VI_MESSAGES = {
|
|
|
1641
1743
|
'core.form.date-range.invalid-max': 'Ngày kết thúc không hợp lệ (lớn hơn giới hạn)',
|
|
1642
1744
|
'core.form.date-range.from': 'Từ',
|
|
1643
1745
|
'core.form.date-range.to': 'đến',
|
|
1746
|
+
'core.form.date-range.clear': 'Xóa khoảng ngày',
|
|
1644
1747
|
// ---- Forms: datetime ----
|
|
1645
1748
|
'core.form.datetime.required': 'Vui lòng nhập thông tin',
|
|
1646
1749
|
'core.form.datetime.min-date': 'Ngày nhỏ nhất: {date}',
|
|
@@ -1673,6 +1776,7 @@ const VI_MESSAGES = {
|
|
|
1673
1776
|
// ---- Forms: select ----
|
|
1674
1777
|
'core.form.select.required': 'Vui lòng nhập thông tin',
|
|
1675
1778
|
'core.form.select.selectAll': 'Tất cả',
|
|
1779
|
+
'core.form.select.selected-count': 'Đã chọn {count} phần tử',
|
|
1676
1780
|
// ---- Forms: textarea ----
|
|
1677
1781
|
'core.form.textarea.required': 'Vui lòng nhập thông tin',
|
|
1678
1782
|
'core.form.textarea.maxlength': 'Số ký tự tối đa: {max}',
|
|
@@ -1822,6 +1926,21 @@ const VI_MESSAGES = {
|
|
|
1822
1926
|
// ---- Component: history ----
|
|
1823
1927
|
'core.component.history.by': 'Bởi',
|
|
1824
1928
|
// ---- Component: import-excel ----
|
|
1929
|
+
'core.component.import-excel.choose-hint': 'Chọn tệp .xlsx theo mẫu, tối đa {limit} dòng.',
|
|
1930
|
+
'core.component.import-excel.choose-file': 'Chọn tệp Excel',
|
|
1931
|
+
'core.component.import-excel.template': 'Tải mẫu',
|
|
1932
|
+
'core.component.import-excel.row-count': '{count} dòng dữ liệu',
|
|
1933
|
+
'core.component.import-excel.replace-file': 'Đổi tệp',
|
|
1934
|
+
'core.component.import-excel.filter-all': 'Tất cả',
|
|
1935
|
+
'core.component.import-excel.filter-success': 'Hợp lệ',
|
|
1936
|
+
'core.component.import-excel.filter-warning': 'Cảnh báo',
|
|
1937
|
+
'core.component.import-excel.filter-error': 'Lỗi',
|
|
1938
|
+
'core.component.import-excel.preview': 'Xem trước dữ liệu Excel',
|
|
1939
|
+
'core.component.import-excel.issue-count': 'Xem {count} vấn đề',
|
|
1940
|
+
'core.component.import-excel.no-filter-results': 'Không có dòng phù hợp',
|
|
1941
|
+
'core.component.import-excel.no-filter-results-hint': 'Thử bộ lọc khác hoặc xem tất cả dữ liệu.',
|
|
1942
|
+
'core.component.import-excel.blocked-errors': 'Cần sửa {count} dòng lỗi trước khi nhập.',
|
|
1943
|
+
'core.component.import-excel.submitted': 'Dữ liệu đã được gửi để xử lý.',
|
|
1825
1944
|
'core.component.import-excel.title': 'Nhập dữ liệu Excel',
|
|
1826
1945
|
'core.component.import-excel.see-all': 'Xem tất cả',
|
|
1827
1946
|
'core.component.import-excel.valid-rows': 'Số dòng dữ liệu hợp lệ',
|
|
@@ -1951,10 +2070,15 @@ const VI_MESSAGES = {
|
|
|
1951
2070
|
'core.component.table.not-an-array': 'Dữ liệu không phải là một mảng',
|
|
1952
2071
|
'core.component.table.config.confirm-reset': 'Xác nhận đưa tất cả thiết lập về mặc định',
|
|
1953
2072
|
'core.component.table.popup-export.select-columns': 'Vui lòng chọn cột dữ liệu để xuất',
|
|
2073
|
+
'core.component.table.selector-action.selected': 'Đã chọn {count}',
|
|
2074
|
+
'core.component.table.selector-action.more': 'Thêm',
|
|
1954
2075
|
'core.component.table.selector-action.default-msg': 'dữ liệu được chọn',
|
|
1955
2076
|
'core.component.tab-router.too-many-tabs': 'Bạn đã mở quá nhiều tab.',
|
|
1956
2077
|
// ---- Component: upload-file ----
|
|
1957
2078
|
'core.component.upload-file.upload': 'Tải file',
|
|
2079
|
+
'core.component.upload-file.remove': 'Xóa tệp',
|
|
2080
|
+
'core.component.upload-file.loading': 'Đang tải tệp lên',
|
|
2081
|
+
'core.component.upload-file.choose-or-drop': 'Chọn tệp hoặc kéo thả vào đây',
|
|
1958
2082
|
'core.component.upload-file.error-occurred': 'Có lỗi xảy ra',
|
|
1959
2083
|
'core.component.upload-file.please-upload': 'Vui lòng tải lên tệp/ảnh',
|
|
1960
2084
|
'core.component.upload-file.desc-format-and-size': 'Định dạng: {exts} và tối đa: {maxSize}MB',
|
|
@@ -2011,6 +2135,15 @@ const VI_MESSAGES = {
|
|
|
2011
2135
|
};
|
|
2012
2136
|
|
|
2013
2137
|
const ZH_MESSAGES = {
|
|
2138
|
+
'core.component.data-state.loading.title': '正在加载',
|
|
2139
|
+
'core.component.data-state.loading.message': '正在加载数据,请稍候。',
|
|
2140
|
+
'core.component.data-state.empty.title': '暂无数据',
|
|
2141
|
+
'core.component.data-state.empty.message': '目前没有可显示的数据。',
|
|
2142
|
+
'core.component.data-state.error.title': '无法加载数据',
|
|
2143
|
+
'core.component.data-state.error.message': '发生错误,请重试。',
|
|
2144
|
+
'core.component.data-state.forbidden.title': '访问被拒绝',
|
|
2145
|
+
'core.component.data-state.forbidden.message': '您没有权限查看此内容。',
|
|
2146
|
+
'core.component.data-state.retry': '重试',
|
|
2014
2147
|
'core.common.cancel': '取消',
|
|
2015
2148
|
'core.common.close': '关闭',
|
|
2016
2149
|
'core.common.reload': '重新加载页面',
|
|
@@ -2142,6 +2275,7 @@ const ZH_MESSAGES = {
|
|
|
2142
2275
|
'core.form.date-range.invalid-max': '结束日期无效(高于限制)',
|
|
2143
2276
|
'core.form.date-range.from': '从',
|
|
2144
2277
|
'core.form.date-range.to': '至',
|
|
2278
|
+
'core.form.date-range.clear': '清除日期范围',
|
|
2145
2279
|
// ---- Forms: datetime ----
|
|
2146
2280
|
'core.form.datetime.required': '请输入内容',
|
|
2147
2281
|
'core.form.datetime.min-date': '最小日期: {date}',
|
|
@@ -2174,6 +2308,7 @@ const ZH_MESSAGES = {
|
|
|
2174
2308
|
// ---- Forms: select ----
|
|
2175
2309
|
'core.form.select.required': '请选择',
|
|
2176
2310
|
'core.form.select.selectAll': '全部',
|
|
2311
|
+
'core.form.select.selected-count': '已选择 {count} 项',
|
|
2177
2312
|
// ---- Forms: textarea ----
|
|
2178
2313
|
'core.form.textarea.required': '请输入内容',
|
|
2179
2314
|
'core.form.textarea.maxlength': '最大字符数: {max}',
|
|
@@ -2323,6 +2458,21 @@ const ZH_MESSAGES = {
|
|
|
2323
2458
|
// ---- Component: history ----
|
|
2324
2459
|
'core.component.history.by': '操作人',
|
|
2325
2460
|
// ---- Component: import-excel ----
|
|
2461
|
+
'core.component.import-excel.choose-hint': '请选择符合模板的 .xlsx 文件,最多 {limit} 行。',
|
|
2462
|
+
'core.component.import-excel.choose-file': '选择 Excel 文件',
|
|
2463
|
+
'core.component.import-excel.template': '下载模板',
|
|
2464
|
+
'core.component.import-excel.row-count': '{count} 行数据',
|
|
2465
|
+
'core.component.import-excel.replace-file': '更换文件',
|
|
2466
|
+
'core.component.import-excel.filter-all': '全部',
|
|
2467
|
+
'core.component.import-excel.filter-success': '有效',
|
|
2468
|
+
'core.component.import-excel.filter-warning': '警告',
|
|
2469
|
+
'core.component.import-excel.filter-error': '错误',
|
|
2470
|
+
'core.component.import-excel.preview': 'Excel 数据预览',
|
|
2471
|
+
'core.component.import-excel.issue-count': '查看 {count} 个问题',
|
|
2472
|
+
'core.component.import-excel.no-filter-results': '没有匹配的行',
|
|
2473
|
+
'core.component.import-excel.no-filter-results-hint': '请尝试其他筛选条件或查看全部数据。',
|
|
2474
|
+
'core.component.import-excel.blocked-errors': '导入前请修正 {count} 行错误数据。',
|
|
2475
|
+
'core.component.import-excel.submitted': '数据已提交处理。',
|
|
2326
2476
|
'core.component.import-excel.title': '导入 Excel 数据',
|
|
2327
2477
|
'core.component.import-excel.see-all': '查看全部',
|
|
2328
2478
|
'core.component.import-excel.valid-rows': '有效行数',
|
|
@@ -2452,10 +2602,15 @@ const ZH_MESSAGES = {
|
|
|
2452
2602
|
'core.component.table.not-an-array': '数据不是数组',
|
|
2453
2603
|
'core.component.table.config.confirm-reset': '确认将所有设置恢复为默认值',
|
|
2454
2604
|
'core.component.table.popup-export.select-columns': '请选择要导出的列',
|
|
2605
|
+
'core.component.table.selector-action.selected': '已选择 {count} 项',
|
|
2606
|
+
'core.component.table.selector-action.more': '更多',
|
|
2455
2607
|
'core.component.table.selector-action.default-msg': '项已选择',
|
|
2456
2608
|
'core.component.tab-router.too-many-tabs': '您已打开过多标签页。',
|
|
2457
2609
|
// ---- Component: upload-file ----
|
|
2458
2610
|
'core.component.upload-file.upload': '上传文件',
|
|
2611
|
+
'core.component.upload-file.remove': '删除文件',
|
|
2612
|
+
'core.component.upload-file.loading': '正在上传文件',
|
|
2613
|
+
'core.component.upload-file.choose-or-drop': '选择文件或拖放到此处',
|
|
2459
2614
|
'core.component.upload-file.error-occurred': '发生错误',
|
|
2460
2615
|
'core.component.upload-file.please-upload': '请上传文件/图片',
|
|
2461
2616
|
'core.component.upload-file.desc-format-and-size': '格式: {exts},最大: {maxSize}MB',
|