@wix/bex-core 2.233.0 → 2.235.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/dist/cjs/assets/locale/messages_cs.json +27 -21
- package/dist/cjs/assets/locale/messages_da.json +27 -21
- package/dist/cjs/assets/locale/messages_de.json +28 -22
- package/dist/cjs/assets/locale/messages_en.json +7 -1
- package/dist/cjs/assets/locale/messages_es.json +27 -21
- package/dist/cjs/assets/locale/messages_fr.json +27 -21
- package/dist/cjs/assets/locale/messages_hi.json +6 -0
- package/dist/cjs/assets/locale/messages_id.json +27 -21
- package/dist/cjs/assets/locale/messages_it.json +27 -21
- package/dist/cjs/assets/locale/messages_ja.json +27 -21
- package/dist/cjs/assets/locale/messages_ko.json +28 -22
- package/dist/cjs/assets/locale/messages_nl.json +27 -21
- package/dist/cjs/assets/locale/messages_no.json +27 -21
- package/dist/cjs/assets/locale/messages_pl.json +27 -21
- package/dist/cjs/assets/locale/messages_pt.json +27 -21
- package/dist/cjs/assets/locale/messages_ru.json +27 -21
- package/dist/cjs/assets/locale/messages_sv.json +27 -21
- package/dist/cjs/assets/locale/messages_th.json +27 -21
- package/dist/cjs/assets/locale/messages_tr.json +27 -21
- package/dist/cjs/assets/locale/messages_uk.json +27 -21
- package/dist/cjs/assets/locale/messages_vi.json +27 -21
- package/dist/cjs/assets/locale/messages_zh.json +27 -21
- package/dist/cjs/index.js +5 -2
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/services/DataExtensionService/dataExtensionService.js +1 -2
- package/dist/cjs/services/DataExtensionService/dataExtensionService.js.map +1 -1
- package/dist/cjs/services/translations.js.map +1 -1
- package/dist/cjs/state/CollectionOptimisticActions.js +4 -2
- package/dist/cjs/state/CollectionOptimisticActions.js.map +1 -1
- package/dist/cjs/state/DataExtensionState.js +36 -3
- package/dist/cjs/state/DataExtensionState.js.map +1 -1
- package/dist/cjs/state/OptimisticActions.js.map +1 -1
- package/dist/cjs/state/RangeFilterState/dateRangeUtils.js +13 -38
- package/dist/cjs/state/RangeFilterState/dateRangeUtils.js.map +1 -1
- package/dist/cjs/types/DeepPartial.js +4 -0
- package/dist/cjs/types/DeepPartial.js.map +1 -0
- package/dist/esm/assets/locale/messages_cs.json +27 -21
- package/dist/esm/assets/locale/messages_da.json +27 -21
- package/dist/esm/assets/locale/messages_de.json +28 -22
- package/dist/esm/assets/locale/messages_en.json +7 -1
- package/dist/esm/assets/locale/messages_es.json +27 -21
- package/dist/esm/assets/locale/messages_fr.json +27 -21
- package/dist/esm/assets/locale/messages_hi.json +6 -0
- package/dist/esm/assets/locale/messages_id.json +27 -21
- package/dist/esm/assets/locale/messages_it.json +27 -21
- package/dist/esm/assets/locale/messages_ja.json +27 -21
- package/dist/esm/assets/locale/messages_ko.json +28 -22
- package/dist/esm/assets/locale/messages_nl.json +27 -21
- package/dist/esm/assets/locale/messages_no.json +27 -21
- package/dist/esm/assets/locale/messages_pl.json +27 -21
- package/dist/esm/assets/locale/messages_pt.json +27 -21
- package/dist/esm/assets/locale/messages_ru.json +27 -21
- package/dist/esm/assets/locale/messages_sv.json +27 -21
- package/dist/esm/assets/locale/messages_th.json +27 -21
- package/dist/esm/assets/locale/messages_tr.json +27 -21
- package/dist/esm/assets/locale/messages_uk.json +27 -21
- package/dist/esm/assets/locale/messages_vi.json +27 -21
- package/dist/esm/assets/locale/messages_zh.json +27 -21
- package/dist/esm/index.js +0 -2
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/services/DataExtensionService/dataExtensionService.js +1 -2
- package/dist/esm/services/DataExtensionService/dataExtensionService.js.map +1 -1
- package/dist/esm/state/CollectionOptimisticActions.js +6 -2
- package/dist/esm/state/CollectionOptimisticActions.js.map +1 -1
- package/dist/esm/state/DataExtensionState.js +33 -2
- package/dist/esm/state/DataExtensionState.js.map +1 -1
- package/dist/esm/state/RangeFilterState/dateRangeUtils.js +12 -30
- package/dist/esm/state/RangeFilterState/dateRangeUtils.js.map +1 -1
- package/dist/esm/types/DeepPartial.js +2 -0
- package/dist/esm/types/DeepPartial.js.map +1 -0
- package/dist/types/index.d.ts +1 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/services/DataExtensionService/dataExtensionService.d.ts +1 -1
- package/dist/types/services/DataExtensionService/dataExtensionService.d.ts.map +1 -1
- package/dist/types/services/translations.d.ts +10 -1
- package/dist/types/services/translations.d.ts.map +1 -1
- package/dist/types/state/CollectionOptimisticActions.d.ts +2 -2
- package/dist/types/state/CollectionOptimisticActions.d.ts.map +1 -1
- package/dist/types/state/DataExtensionState.d.ts +14 -0
- package/dist/types/state/DataExtensionState.d.ts.map +1 -1
- package/dist/types/state/OptimisticActions.d.ts +5 -0
- package/dist/types/state/OptimisticActions.d.ts.map +1 -1
- package/dist/types/state/RangeFilterState/dateRangeUtils.d.ts +4 -14
- package/dist/types/state/RangeFilterState/dateRangeUtils.d.ts.map +1 -1
- package/dist/types/types/DeepPartial.d.ts +4 -0
- package/dist/types/types/DeepPartial.d.ts.map +1 -0
- package/package.json +2 -2
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
"cairo.emptyState.filters.nothingFound.title": "Không tìm thấy mục nào",
|
|
20
20
|
"cairo.connection.error.text": "Hãy kiểm tra kết nối internet của bạn và thử lại.",
|
|
21
21
|
"cairo.table.summaryBar.loadError.cta": "Reload",
|
|
22
|
-
"cairo.customFields.archive.modal.description.enabled": "
|
|
22
|
+
"cairo.customFields.archive.modal.description.enabled": "Trường này và thông tin đã thu thập sẽ được lưu trữ và có thể khôi phục bất cứ lúc nào.",
|
|
23
23
|
"cairo.filtersPanel.numRange.maxRange.consumer.error": "{maxAmount, plural, other {Giá trị phải từ {maxAmount,number} trở xuống.}}",
|
|
24
24
|
"cairo.tags.tagsWidget.emptyState.body.asLabels": "Nhãn giúp bạn lọc và sắp xếp ngăn nắp các mục.",
|
|
25
25
|
"cairo.table.saveView.button": "Lưu dạng xem",
|
|
@@ -67,7 +67,7 @@
|
|
|
67
67
|
"cairo.customFields.addCustomField.modal.PII-setting.toggle.createNote": "Không thể thay thiết lập PII sau này.",
|
|
68
68
|
"cairo.tags.popover.assignFolder.tooltip": "Không thể gắn thẻ cho thư mục.",
|
|
69
69
|
"cairo.customFields.fieldType.date.invalid.value": "Nhập ngày theo định dạng sau: {dateFormat}",
|
|
70
|
-
"cairo.archivedFields.more-actions.tooltip": "
|
|
70
|
+
"cairo.archivedFields.more-actions.tooltip": "Thao tác khác",
|
|
71
71
|
"cairo.customFields.fieldType.dropdownList.placeholder": "ví dụ: Ý",
|
|
72
72
|
"cairo.filtersPanel.numRange.maxRange.error": "Giá trị \"Đến\" phải lớn hơn giá trị \"Từ\".",
|
|
73
73
|
"cairo.errorHandler.requestID.tooltip.cta": "Sao chép ID",
|
|
@@ -86,11 +86,12 @@
|
|
|
86
86
|
"cairo.emptyState.additem.text": "Sau khi bạn có các mục, chúng sẽ xuất hiện ở đây.",
|
|
87
87
|
"cairo.customFields.maxFields.tooltip": "Bạn chỉ có thể có {max} trường tùy chỉnh.",
|
|
88
88
|
"cairo.bulkActions.max.selection": "{total, plural, other {Đã chọn {total,number} (tối đa {max})}}",
|
|
89
|
-
"cairo.customFields.delete.modal.title": "
|
|
89
|
+
"cairo.customFields.delete.modal.title": "Xóa {selectedField}",
|
|
90
90
|
"cairo.filtersPanel.time.title": "Thời gian",
|
|
91
91
|
"cairo.tags.manageTags.modal.list.input.validation.exists": "Thẻ này đã tồn tại.",
|
|
92
|
+
"cairo.customFields.restore.error.toast.CTA": "Thử lại",
|
|
92
93
|
"cairo.filtersPanel.date.next7Days": "7 ngày tới",
|
|
93
|
-
"cairo.customFields.deleted.success.toast": "{selectedField}
|
|
94
|
+
"cairo.customFields.deleted.success.toast": "Đã xóa {selectedField}.",
|
|
94
95
|
"cairo.collectionPage.nestedLimit.tooltip": "{subCatsAmount, plural, other {Bạn không thể thêm nhiều hơn {subCatsAmount,number} cấp độ phụ.}}",
|
|
95
96
|
"cairo.sortableColumns.notification.undo": "Hoàn tác",
|
|
96
97
|
"cairo.filtersPanel.saveView.button": "Lưu dạng xem",
|
|
@@ -109,7 +110,7 @@
|
|
|
109
110
|
"cairo.customFields.updateDataExtension.removing-fields-not-allowed.error": "Không thể xóa mục này.",
|
|
110
111
|
"cairo.customFields.showAll.button": "Hiện tất cả",
|
|
111
112
|
"cairo.customFields.successToast": "Đã thêm trường tùy chỉnh.",
|
|
112
|
-
"cairo.customFields.archive.modal.title.enabled": "
|
|
113
|
+
"cairo.customFields.archive.modal.title.enabled": "Lưu trữ {selectedField}?",
|
|
113
114
|
"cairo.customFields.addCustomField.modal.subtitle.note": "Lưu ý rằng trường này sẽ được thêm vào tất cả các mục của bạn.",
|
|
114
115
|
"cairo.entityPage.widgetError.TPAconnectionFail.CTA": "Tải lại phần",
|
|
115
116
|
"cairo.dragAndDrop.error.toast": "Do sự cố kỹ thuật, các thay đổi bạn đã thực hiện về thứ tự các mặt hàng đã không được lưu.",
|
|
@@ -146,13 +147,14 @@
|
|
|
146
147
|
"cairo.dragAndDrop.reorder-cancelled.sr": "Đã hủy kéo.",
|
|
147
148
|
"cairo.appliedFilters.discardChanges.description": "Các bộ lọc bạn đã chọn sẽ không được áp dụng cho dạng xem này.",
|
|
148
149
|
"cairo.customFields.addCustomField.modal.advancedSettings.write": "Viết",
|
|
149
|
-
"cairo.archivedFields.more-actions.delete": "
|
|
150
|
+
"cairo.archivedFields.more-actions.delete": "Xóa",
|
|
150
151
|
"cairo.pickerModal.back.button": "Quay lại",
|
|
151
|
-
"cairo.customFields.deleted.undo.CTA": "
|
|
152
|
+
"cairo.customFields.deleted.undo.CTA": "Hoàn tác",
|
|
152
153
|
"cairo.manageView.Delete.disabled.predefinedView.tooltip": "Không thể xóa dạng xem này.",
|
|
153
154
|
"cairo.tags.manageTags.modal.toast.delete.success": "Đã xóa thẻ.",
|
|
154
155
|
"cairo.noViewName.validationTooltip": "Để lưu dạng xem, bạn phải đặt tên cho dạng xem.",
|
|
155
156
|
"cairo.emptyState.subtitle.nothingMatches": "Chúng tôi không tìm thấy kết quả nào phù hợp với tìm kiếm \"{term}\" của bạn.",
|
|
157
|
+
"cairo.customFields.restore.error.toast": "Chưa khôi phục được {selectedField}.",
|
|
156
158
|
"cairo.filtersPanel.date.lastMonth": "Tháng trước",
|
|
157
159
|
"cairo.dragAndDrop.reorderMode.toolbar.cancel.cta": "Hủy",
|
|
158
160
|
"cairo.table.advanced-sorting.disabled.cta.tooltip": "Tất cả các cột đã được thêm vào.",
|
|
@@ -185,7 +187,7 @@
|
|
|
185
187
|
"cairo.export.tryAgain": "Thử lại",
|
|
186
188
|
"cairo.sortableColumns.modal.title": "Sắp xếp danh sách theo {columnTitle}?",
|
|
187
189
|
"cairo.customFields.addCustomField.modal.PII-setting.toggle.name": "Thông tin cá nhân (PII)",
|
|
188
|
-
"cairo.customFields.delete.modal.cancel.CTA": "
|
|
190
|
+
"cairo.customFields.delete.modal.cancel.CTA": "Hủy",
|
|
189
191
|
"cairo.dragAndDrop.leaveSite.modal.description": "Các thay đổi bạn đã thực hiện đối với thứ tự các mặt hàng có thể không được lưu.",
|
|
190
192
|
"cairo.table.deleteViewModal.deleteBody": "Sau khi bạn xóa \"{viewName}\", sẽ không thể khôi phục.",
|
|
191
193
|
"cairo.export.allItems": "Tất cả",
|
|
@@ -193,7 +195,7 @@
|
|
|
193
195
|
"cairo.tags.bulkItemUpdate.updatingTags.toast.asLabels": "Đang cập nhật nhãn...",
|
|
194
196
|
"cairo.search.noresults.title": "Không tìm thấy kết quả nào",
|
|
195
197
|
"cairo.table.summaryBar.list.item": "{title}: <value>{value}</value>",
|
|
196
|
-
"cairo.customFields.delete.modal.description": "{selectedField}
|
|
198
|
+
"cairo.customFields.delete.modal.description": "{selectedField} và thông tin trong đó sẽ bị xóa vĩnh viễn và không thể khôi phục được. ",
|
|
197
199
|
"cairo.tags.applyChanges.toast.success": "Đã cập nhật thẻ.",
|
|
198
200
|
"cairo.bulkSelected": "{num, plural, other {Đã chọn {num,number}}}",
|
|
199
201
|
"cairo.customFields.fieldType.numberInteger.Name.placeholder": "ví dụ: Tuổi",
|
|
@@ -250,6 +252,7 @@
|
|
|
250
252
|
"cairo.filtersPanel.numRange.minRange.error": "Giá trị \"Từ\" phải nhỏ hơn giá trị \"Đến\".",
|
|
251
253
|
"cairo.tags.collectionPage.tagsColumn.emptyState.body.asLabels": "Nhãn giúp bạn lọc và sắp xếp ngăn nắp các mục.",
|
|
252
254
|
"cairo.customFields.addCustomField.modal.advancedSettings.key.placeholder": "Khóa trường",
|
|
255
|
+
"cairo.customFields.archive.error.toast.CTA": "Thử lại",
|
|
253
256
|
"cairo.tags.manageTags.modal.toast.delete.error.asLabels": "Không thể xóa nhãn.",
|
|
254
257
|
"cairo.manageView.Rename.modal.cancel.CTA": "Hủy",
|
|
255
258
|
"cairo.filtersPanel.default.All": "Tất cả",
|
|
@@ -260,7 +263,7 @@
|
|
|
260
263
|
"cairo.tags.applyChanges.toast.undo.CTA": "Hoàn tác",
|
|
261
264
|
"cairo.manageView.Rename.modal.field.title": "Tên",
|
|
262
265
|
"cairo.dragAndDrop.discardChanges.title": "Bỏ thay đổi?",
|
|
263
|
-
"cairo.archivedFields.subtitle": "
|
|
266
|
+
"cairo.archivedFields.subtitle": "Khôi phục hoặc xóa các trường đã lưu trữ và thông tin của chúng.",
|
|
264
267
|
"cairo.customFields.fieldType.checkbox": "Hộp đánh dấu",
|
|
265
268
|
"cairo.fieldValidation.minCharacter": "{charMin, plural, other {Nhập ít nhất {charMin,number} ký tự, kể cả khoảng trắng.}}",
|
|
266
269
|
"cairo.tags.tagsWidget.input.placeholder.asLabels": "Nhập tên nhãn mới",
|
|
@@ -310,7 +313,7 @@
|
|
|
310
313
|
"cairo.page.loadError.failedState.title": "Không thể tải trang này",
|
|
311
314
|
"cairo.bulkSelected.selectUpTo": "Chọn tối đa {max} mục.",
|
|
312
315
|
"cairo.customFields.addCustomField.modal.PII-setting.toggle.info": "Bảo vệ thông tin nhận dạng cá nhân (PII) như địa chỉ và thông tin hộ chiếu bằng một lớp bảo vệ bổ sung. <linkVal>Tại sao điều này lại quan trọng?</linkVal>",
|
|
313
|
-
"cairo.table.custom-columns.section-divider": "
|
|
316
|
+
"cairo.table.custom-columns.section-divider": "Các trường đã lưu trữ",
|
|
314
317
|
"cairo.manageView.saveChanges.CTA": "Lưu thay đổi",
|
|
315
318
|
"cairo.customFields.archive.CTA": "Lưu trữ",
|
|
316
319
|
"cairo.tags.tagsWidget.noPermissions.tooltip": "You need “Permission Type” permission to\nmanage tags. Contact \"Owner\" for access.",
|
|
@@ -336,6 +339,7 @@
|
|
|
336
339
|
"cairo.tags.tagsWidget.subtitle": "Thẻ giúp bạn lọc và sắp xếp ngăn nắp.",
|
|
337
340
|
"cairo.customFields.archive.modal.CTA": "Lưu trữ",
|
|
338
341
|
"cairo.customFields.addCustomField.modal.advancedSettings.siteVisitors.tooltip": "Cho phép khách truy cập trang web xem hoặc chỉnh sửa đầu vào của trường này. ",
|
|
342
|
+
"cairo.customFields.delete.error.toast.CTA": "Thử lại",
|
|
339
343
|
"cairo.export.exportFailed": "Xuất không thành công",
|
|
340
344
|
"cairo.export.filteredItems": "Đã lọc",
|
|
341
345
|
"cairo.customFields.addCustomField.modal.subtitle": "Thu thập và lưu trữ thông tin bổ sung với các trường tùy chỉnh.",
|
|
@@ -345,7 +349,7 @@
|
|
|
345
349
|
"cairo.dragAndDrop.leaveSite.modal.leave.CTA": "Rời đi",
|
|
346
350
|
"cairo.dragAndDrop.reorderMode.discardChanges.cancel.CTA": "Hủy",
|
|
347
351
|
"cairo.customFields.maxLimit.modal.cta": "Đã hiểu",
|
|
348
|
-
"cairo.archivedFields.back.manage-custom-fields.tooltip": "
|
|
352
|
+
"cairo.archivedFields.back.manage-custom-fields.tooltip": "Quay lại Quản lý trường tùy chỉnh",
|
|
349
353
|
"cairo.table.deleteViewModal.cancelButton": "Hủy",
|
|
350
354
|
"cairo.clear": "Xóa",
|
|
351
355
|
"cairo.emptyState.subtitle.nothingMatchesCriteria": "Chúng tôi không tìm thấy kết quả nào phù hợp với tìm kiếm của bạn.",
|
|
@@ -360,7 +364,7 @@
|
|
|
360
364
|
"cairo.dragAndDrop.reorderMode.discardChanges.applyAndClose.CTA": "Discard",
|
|
361
365
|
"cairo.tags.collectionPage.popover.emptyState.search.placeholder.asLabels": "Nhập tên nhãn mới",
|
|
362
366
|
"cairo.search.nothingMatches.title": "Không có kết quả cho \"{term}\"",
|
|
363
|
-
"cairo.custom-columns.more-actions.tooltip": "
|
|
367
|
+
"cairo.custom-columns.more-actions.tooltip": "Thao tác khác",
|
|
364
368
|
"cairo.customFields.editCustomField.fieldKey.tooltip": "Khóa này được sử dụng trong mã của bạn. Bạn không thể thay đổi được.",
|
|
365
369
|
"cairo.tags.manageTags.modal.toast.create.success.asLabels": "Đã tạo nhãn.",
|
|
366
370
|
"cairo.table.advanced-sorting.dragAndDrop.tooltip": "Thay đổi thứ tự sắp xếp của các cột. Điều này sẽ không ảnh hưởng đến thứ tự các cột xuất hiện trong bảng.",
|
|
@@ -393,7 +397,7 @@
|
|
|
393
397
|
"cairo.table.summaryBar.loadError": "Couldn't load summary row.",
|
|
394
398
|
"cairo.tags.tagsWidget.title": "Thẻ",
|
|
395
399
|
"cairo.customFields.entityPage.emptyState.subtitle": "Các trường người dùng xuất hiện ở đây nếu được người dùng điền vào.",
|
|
396
|
-
"cairo.archivedFields.title": "
|
|
400
|
+
"cairo.archivedFields.title": "Các trường đã lưu trữ",
|
|
397
401
|
"cairo.searchPlaceholder": "Tìm kiếm...",
|
|
398
402
|
"cairo.tags.manageTags.modal.deleteModal.title": "Xóa thẻ này?",
|
|
399
403
|
"cairo.customFields.addCustomField.modal.advancedSettings.externalApps.tooltip": "Cho phép ứng dụng từ Chợ ứng dụng đọc hoặc ghi thông tin đầu vào của trường này.",
|
|
@@ -456,9 +460,9 @@
|
|
|
456
460
|
"cairo.customFields.archive.modal.description": "Trường này và thông tin thu thập vào trường này sẽ được lưu trữ và không thể khôi phục được.",
|
|
457
461
|
"cairo.emptyState.premium.title": "Nâng cấp bằng gói",
|
|
458
462
|
"cairo.fieldValidation.maxNumber": "{maxAmount, plural, other {Nhập giá trị từ {maxAmount,number} trở xuống.}}",
|
|
459
|
-
"cairo.customFields.delete.modal.delete.CTA": "
|
|
463
|
+
"cairo.customFields.delete.modal.delete.CTA": "Xóa",
|
|
460
464
|
"cairo.customFields.fieldType.numberDecimal": "Số (thập phân)",
|
|
461
|
-
"cairo.customFields.archive.success.toast.enabled": "{selectedField}
|
|
465
|
+
"cairo.customFields.archive.success.toast.enabled": "Đã lưu trữ \"{selectedField}\".\n",
|
|
462
466
|
"cairo.manageView.saveView.error.toast": "Do sự cố kỹ thuật, dạng xem của bạn không được lưu.",
|
|
463
467
|
"cairo.table.noFiltersApplied.label": "Không áp dụng bộ lọc nào",
|
|
464
468
|
"cairo.manageView.saveNewView.CTA": "Lưu làm dạng xem mới",
|
|
@@ -472,7 +476,7 @@
|
|
|
472
476
|
"cairo.folders.showLess.button": "Ẩn bớt",
|
|
473
477
|
"cairo.connection.error.title": "Có vẻ bạn đang ngoại tuyến.",
|
|
474
478
|
"cairo.filtersPanel.date.tomorrow": "Ngày mai",
|
|
475
|
-
"cairo.customFields.restored.success.toast": "{selectedField}
|
|
479
|
+
"cairo.customFields.restored.success.toast": "Đã khôi phục \"{selectedField}\".",
|
|
476
480
|
"cairo.appliedFilters.selected": "{num, plural, =0 {Chưa chọn bộ lọc nào} other {Đã chọn {num,number} bộ lọc}}",
|
|
477
481
|
"cairo.filtersPanel.date.none": "Tất cả",
|
|
478
482
|
"cairo.saveViewModal.cancelButton": "Hủy",
|
|
@@ -492,6 +496,7 @@
|
|
|
492
496
|
"cairo.customFields.updateDataExtension.changing-fields-not-allowed.error": "Một số thông tin có định dạng không đúng hoặc không hợp lệ.",
|
|
493
497
|
"cairo.export.cancelMessage": "Quá trình xuất chưa xong và dữ liệu của bạn sẽ không được tải về.",
|
|
494
498
|
"cairo.customFields.archive.success.toast": "Trường tùy chỉnh của bạn đã được lưu trữ.",
|
|
499
|
+
"cairo.customFields.delete.error.toast": "Chưa xóa được {selectedField}.",
|
|
495
500
|
"cairo.tags.collectionPage.popover.create.CTA": "Tạo \"{tagName}\"",
|
|
496
501
|
"cairo.entityPage.header.save.CTA": "Lưu",
|
|
497
502
|
"cairo.search.filter.nothingMatches.text": "Hãy thử tìm theo cách khác hoặc thay đổi bộ lọc của bạn.",
|
|
@@ -500,7 +505,7 @@
|
|
|
500
505
|
"cairo.customFields.fieldType.url": "URL",
|
|
501
506
|
"cairo.filtersPanel.numRange.min-from": "Từ",
|
|
502
507
|
"cairo.tags.bulkItemUpdate.toast.success": "Đã cập nhật thẻ.",
|
|
503
|
-
"cairo.customFields.archive.success.toast.CTA": "
|
|
508
|
+
"cairo.customFields.archive.success.toast.CTA": "Xem các trường đã lưu trữ",
|
|
504
509
|
"cairo.customFields.maxFields": "Bạn có thể thêm tối đa 10 trường tùy chỉnh.",
|
|
505
510
|
"cairo.offline": "Bạn hiện đang ngoại tuyến.",
|
|
506
511
|
"cairo.table.custom-columns.dragAndDrop.search-placeholder": "Tìm kiếm cột...",
|
|
@@ -521,7 +526,7 @@
|
|
|
521
526
|
"cairo.tags.collectionPage.toast.update.error": "Không thể cập nhật thẻ do chúng tôi gặp vấn đề kỹ thuật.",
|
|
522
527
|
"cairo.tags.bulkItemUpdate.toast.error": "{total, plural, other {Không thể cập nhật {total,number} thẻ do vấn đề kỹ thuật.}}",
|
|
523
528
|
"cairo.tags.bulkItemUpdate.updatingModal.body": "Quá trình này có thể mất một chốc lát. Tiếp tục mở thẻ này cho đến khi hoàn tất cập nhật. ",
|
|
524
|
-
"cairo.archivedFields.more-actions.restore": "
|
|
529
|
+
"cairo.archivedFields.more-actions.restore": "Khôi phục",
|
|
525
530
|
"cairo.tags.tagsWidget.add.CTA": "Gắn thẻ",
|
|
526
531
|
"cairo.table.clearFilters.button": "Xóa tất cả",
|
|
527
532
|
"cairo.table.gridView": "Dạng xem lưới",
|
|
@@ -549,10 +554,11 @@
|
|
|
549
554
|
"cairo.add-image.tooltip": "Thêm ảnh",
|
|
550
555
|
"cairo.customFields.maxLimit.modal.title": "Bạn đã đạt đến giới hạn của các trường tùy chỉnh",
|
|
551
556
|
"cairo.manageView.setAsDefault.tooltip": "Để đặt dạng xem này làm mặc định, hãy lưu thay đổi hoặc lưu dưới dạng xem mới.",
|
|
552
|
-
"cairo.archivedFields.back.custom-columns.tooltip": "
|
|
557
|
+
"cairo.archivedFields.back.custom-columns.tooltip": "Quay lại Tùy chỉnh cột",
|
|
553
558
|
"cairo.tags.collectionPage.popover.search.placeholder": "Tìm kiếm thẻ...",
|
|
554
559
|
"cairo.export.sessionExpiredMessage": "Phiên của bạn đã hết hạn. Hãy làm mới trang và đăng nhập lại.",
|
|
555
560
|
"cairo.tags.collectionPage.applyChanges.CTA": "Áp dụng",
|
|
561
|
+
"cairo.customFields.archive.error.toast": "Chưa lưu trữ được {selectedField}.",
|
|
556
562
|
"cairo.customFields.addCustomField.modal.fieldName.placeholder": "Nhập tên",
|
|
557
563
|
"cairo.a11y.liveRegion.resultsFound": "{num, plural, =0 {Không tìm thấy kết quả nào} other {Đã tìm thấy {num,number} kết quả}}",
|
|
558
564
|
"cairo.customFields.entityPage.sectionTitle": "Trường tùy chỉnh của bạn",
|
|
@@ -579,7 +585,7 @@
|
|
|
579
585
|
"cairo.customFields.addCustomField.modal.advancedSettings.externalApps": "Ứng dụng đã cài đặt",
|
|
580
586
|
"cairo.export.successMessage": "Tệp của bạn hiện đang được tải về. Vẫn không được?",
|
|
581
587
|
"cairo.downloadable-url.error.generic": "Đã xảy ra sự cố khi tải tệp xuống.",
|
|
582
|
-
"cairo.table.mobile.more.button": "
|
|
588
|
+
"cairo.table.mobile.more.button": "Hành động",
|
|
583
589
|
"cairo.customFields.entityPage.subtitle": "Sử dụng các trường tùy chỉnh để lưu trữ và thu thập thêm thông tin.",
|
|
584
590
|
"cairo.manageView.setAsDefault.success.toast": "\"{viewName}\" đã được đặt là dạng xem mặc định của bạn.",
|
|
585
591
|
"cairo.dropdownSearch.filters.emptyState": "Không tìm thấy mục nào cho bộ lọc này.",
|
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
"cairo.emptyState.filters.nothingFound.title": "沒有找到項目",
|
|
20
20
|
"cairo.connection.error.text": "請檢查網路連線並且再試一次。",
|
|
21
21
|
"cairo.table.summaryBar.loadError.cta": "Reload",
|
|
22
|
-
"cairo.customFields.archive.modal.description.enabled": "
|
|
22
|
+
"cairo.customFields.archive.modal.description.enabled": "此欄位及其收集的資訊將被封存,並且可以隨時還原。",
|
|
23
23
|
"cairo.filtersPanel.numRange.maxRange.consumer.error": "{maxAmount, plural, other {值不得超過 {maxAmount,number}。}}",
|
|
24
24
|
"cairo.tags.tagsWidget.emptyState.body.asLabels": "標籤可幫助您篩選和整理項目。",
|
|
25
25
|
"cairo.table.saveView.button": "儲存檢視",
|
|
@@ -67,7 +67,7 @@
|
|
|
67
67
|
"cairo.customFields.addCustomField.modal.PII-setting.toggle.createNote": "PII 設定無法在日後變更。",
|
|
68
68
|
"cairo.tags.popover.assignFolder.tooltip": "無法對資料夾指派標籤。",
|
|
69
69
|
"cairo.customFields.fieldType.date.invalid.value": "請以此格式輸入日期:{dateFormat}",
|
|
70
|
-
"cairo.archivedFields.more-actions.tooltip": "
|
|
70
|
+
"cairo.archivedFields.more-actions.tooltip": "更多操作",
|
|
71
71
|
"cairo.customFields.fieldType.dropdownList.placeholder": "例如,義大利",
|
|
72
72
|
"cairo.filtersPanel.numRange.maxRange.error": "「上限」值必須大於「下限」值。",
|
|
73
73
|
"cairo.errorHandler.requestID.tooltip.cta": "複製 ID",
|
|
@@ -86,11 +86,12 @@
|
|
|
86
86
|
"cairo.emptyState.additem.text": "您擁有的項目會在此處顯示。",
|
|
87
87
|
"cairo.customFields.maxFields.tooltip": "您只能擁有最多 {max} 個自訂欄位。",
|
|
88
88
|
"cairo.bulkActions.max.selection": "{total, plural, other {已選擇 {total,number} 個(最多 {max} 個)}}",
|
|
89
|
-
"cairo.customFields.delete.modal.title": "
|
|
89
|
+
"cairo.customFields.delete.modal.title": "刪除「{selectedField}」",
|
|
90
90
|
"cairo.filtersPanel.time.title": "時間",
|
|
91
91
|
"cairo.tags.manageTags.modal.list.input.validation.exists": "此標籤已經存在。",
|
|
92
|
+
"cairo.customFields.restore.error.toast.CTA": "再試一次",
|
|
92
93
|
"cairo.filtersPanel.date.next7Days": "未來 7 天",
|
|
93
|
-
"cairo.customFields.deleted.success.toast": "{selectedField}
|
|
94
|
+
"cairo.customFields.deleted.success.toast": "「{selectedField}」已刪除。",
|
|
94
95
|
"cairo.collectionPage.nestedLimit.tooltip": "{subCatsAmount, plural, other {子層級數量不能超過 {subCatsAmount,number}。}}",
|
|
95
96
|
"cairo.sortableColumns.notification.undo": "復原",
|
|
96
97
|
"cairo.filtersPanel.saveView.button": "儲存檢視",
|
|
@@ -109,7 +110,7 @@
|
|
|
109
110
|
"cairo.customFields.updateDataExtension.removing-fields-not-allowed.error": "無法刪除此項目。",
|
|
110
111
|
"cairo.customFields.showAll.button": "顯示全部",
|
|
111
112
|
"cairo.customFields.successToast": "已新增自訂欄位。",
|
|
112
|
-
"cairo.customFields.archive.modal.title.enabled": "
|
|
113
|
+
"cairo.customFields.archive.modal.title.enabled": "是否封存「{selectedField}」?",
|
|
113
114
|
"cairo.customFields.addCustomField.modal.subtitle.note": "請注意,系統會將此欄位新增至所有項目。",
|
|
114
115
|
"cairo.entityPage.widgetError.TPAconnectionFail.CTA": "重新載入部分",
|
|
115
116
|
"cairo.dragAndDrop.error.toast": "由於技術問題,項目順序變更並未儲存。",
|
|
@@ -146,13 +147,14 @@
|
|
|
146
147
|
"cairo.dragAndDrop.reorder-cancelled.sr": "已取消拖曳。",
|
|
147
148
|
"cairo.appliedFilters.discardChanges.description": "您選擇的篩選條件不會套用至此檢視。",
|
|
148
149
|
"cairo.customFields.addCustomField.modal.advancedSettings.write": "寫入",
|
|
149
|
-
"cairo.archivedFields.more-actions.delete": "
|
|
150
|
+
"cairo.archivedFields.more-actions.delete": "刪除",
|
|
150
151
|
"cairo.pickerModal.back.button": "上一步",
|
|
151
|
-
"cairo.customFields.deleted.undo.CTA": "
|
|
152
|
+
"cairo.customFields.deleted.undo.CTA": "復原",
|
|
152
153
|
"cairo.manageView.Delete.disabled.predefinedView.tooltip": "無法刪除此檢視。",
|
|
153
154
|
"cairo.tags.manageTags.modal.toast.delete.success": "標籤已刪除。",
|
|
154
155
|
"cairo.noViewName.validationTooltip": "若要儲存檢視,您必須為其命名。",
|
|
155
156
|
"cairo.emptyState.subtitle.nothingMatches": "我們找不到任何符合搜尋條件「{term}」的結果。",
|
|
157
|
+
"cairo.customFields.restore.error.toast": "「{selectedField}」未還原。",
|
|
156
158
|
"cairo.filtersPanel.date.lastMonth": "上個月",
|
|
157
159
|
"cairo.dragAndDrop.reorderMode.toolbar.cancel.cta": "取消",
|
|
158
160
|
"cairo.table.advanced-sorting.disabled.cta.tooltip": "已新增所有資料列。",
|
|
@@ -185,7 +187,7 @@
|
|
|
185
187
|
"cairo.export.tryAgain": "再試一次",
|
|
186
188
|
"cairo.sortableColumns.modal.title": "是否依 {columnTitle} 排序清單?",
|
|
187
189
|
"cairo.customFields.addCustomField.modal.PII-setting.toggle.name": "個人資訊 (PII)",
|
|
188
|
-
"cairo.customFields.delete.modal.cancel.CTA": "
|
|
190
|
+
"cairo.customFields.delete.modal.cancel.CTA": "取消",
|
|
189
191
|
"cairo.dragAndDrop.leaveSite.modal.description": "項目順序變更尚未儲存。",
|
|
190
192
|
"cairo.table.deleteViewModal.deleteBody": "如刪除「{viewName}」,該檢視將無法還原。",
|
|
191
193
|
"cairo.export.allItems": "所有",
|
|
@@ -193,7 +195,7 @@
|
|
|
193
195
|
"cairo.tags.bulkItemUpdate.updatingTags.toast.asLabels": "正在更新標籤……",
|
|
194
196
|
"cairo.search.noresults.title": "找不到任何結果",
|
|
195
197
|
"cairo.table.summaryBar.list.item": "{title}: <value>{value}</value>",
|
|
196
|
-
"cairo.customFields.delete.modal.description": "{selectedField}
|
|
198
|
+
"cairo.customFields.delete.modal.description": "系統將永久刪除「{selectedField}」及其資訊,無法還原。 ",
|
|
197
199
|
"cairo.tags.applyChanges.toast.success": "標籤已更新。",
|
|
198
200
|
"cairo.bulkSelected": "{num, plural, other {已選擇 {num,number} 項}}",
|
|
199
201
|
"cairo.customFields.fieldType.numberInteger.Name.placeholder": "例如,年齡",
|
|
@@ -250,6 +252,7 @@
|
|
|
250
252
|
"cairo.filtersPanel.numRange.minRange.error": "「下限」值必須小於「上限」值。",
|
|
251
253
|
"cairo.tags.collectionPage.tagsColumn.emptyState.body.asLabels": "標籤可幫助您篩選和整理項目。",
|
|
252
254
|
"cairo.customFields.addCustomField.modal.advancedSettings.key.placeholder": "fieldKey(欄位關鍵字)",
|
|
255
|
+
"cairo.customFields.archive.error.toast.CTA": "再試一次",
|
|
253
256
|
"cairo.tags.manageTags.modal.toast.delete.error.asLabels": "無法刪除標籤。",
|
|
254
257
|
"cairo.manageView.Rename.modal.cancel.CTA": "取消",
|
|
255
258
|
"cairo.filtersPanel.default.All": "所有",
|
|
@@ -260,7 +263,7 @@
|
|
|
260
263
|
"cairo.tags.applyChanges.toast.undo.CTA": "復原",
|
|
261
264
|
"cairo.manageView.Rename.modal.field.title": "名稱",
|
|
262
265
|
"cairo.dragAndDrop.discardChanges.title": "要捨棄變更嗎?",
|
|
263
|
-
"cairo.archivedFields.subtitle": "
|
|
266
|
+
"cairo.archivedFields.subtitle": "還原或刪除已封存的欄位及其資訊。",
|
|
264
267
|
"cairo.customFields.fieldType.checkbox": "核取方塊",
|
|
265
268
|
"cairo.fieldValidation.minCharacter": "{charMin, plural, other {請輸入至少 {charMin,number} 個字元(包含空格)。}}",
|
|
266
269
|
"cairo.tags.tagsWidget.input.placeholder.asLabels": "輸入新標籤名稱",
|
|
@@ -310,7 +313,7 @@
|
|
|
310
313
|
"cairo.page.loadError.failedState.title": "無法載入此頁面",
|
|
311
314
|
"cairo.bulkSelected.selectUpTo": "最多選擇 {max} 個項目。",
|
|
312
315
|
"cairo.customFields.addCustomField.modal.PII-setting.toggle.info": "保護地址、護照編號等個人身分資訊 (PII),帶來多一層保護。<linkVal>為什麼這很重要?</linkVal>",
|
|
313
|
-
"cairo.table.custom-columns.section-divider": "
|
|
316
|
+
"cairo.table.custom-columns.section-divider": "已封存欄位",
|
|
314
317
|
"cairo.manageView.saveChanges.CTA": "儲存變更",
|
|
315
318
|
"cairo.customFields.archive.CTA": "封存",
|
|
316
319
|
"cairo.tags.tagsWidget.noPermissions.tooltip": "You need “Permission Type” permission to\nmanage tags. Contact \"Owner\" for access.",
|
|
@@ -336,6 +339,7 @@
|
|
|
336
339
|
"cairo.tags.tagsWidget.subtitle": "標籤可協助您篩選並保持井然有序。",
|
|
337
340
|
"cairo.customFields.archive.modal.CTA": "封存",
|
|
338
341
|
"cairo.customFields.addCustomField.modal.advancedSettings.siteVisitors.tooltip": "允許網站訪客查看或編輯此欄位的輸入內容。 ",
|
|
342
|
+
"cairo.customFields.delete.error.toast.CTA": "再試一次",
|
|
339
343
|
"cairo.export.exportFailed": "匯出失敗",
|
|
340
344
|
"cairo.export.filteredItems": "已篩選項目",
|
|
341
345
|
"cairo.customFields.addCustomField.modal.subtitle": "使用自訂欄位收集和儲存其他資訊。",
|
|
@@ -345,7 +349,7 @@
|
|
|
345
349
|
"cairo.dragAndDrop.leaveSite.modal.leave.CTA": "離開",
|
|
346
350
|
"cairo.dragAndDrop.reorderMode.discardChanges.cancel.CTA": "取消",
|
|
347
351
|
"cairo.customFields.maxLimit.modal.cta": "知道了",
|
|
348
|
-
"cairo.archivedFields.back.manage-custom-fields.tooltip": "
|
|
352
|
+
"cairo.archivedFields.back.manage-custom-fields.tooltip": "返回「管理自訂欄位」",
|
|
349
353
|
"cairo.table.deleteViewModal.cancelButton": "取消",
|
|
350
354
|
"cairo.clear": "清除",
|
|
351
355
|
"cairo.emptyState.subtitle.nothingMatchesCriteria": "我們找不到任何符合搜尋條件的結果。",
|
|
@@ -360,7 +364,7 @@
|
|
|
360
364
|
"cairo.dragAndDrop.reorderMode.discardChanges.applyAndClose.CTA": "Discard",
|
|
361
365
|
"cairo.tags.collectionPage.popover.emptyState.search.placeholder.asLabels": "輸入新標籤名稱",
|
|
362
366
|
"cairo.search.nothingMatches.title": "沒有關於「{term}」的結果",
|
|
363
|
-
"cairo.custom-columns.more-actions.tooltip": "
|
|
367
|
+
"cairo.custom-columns.more-actions.tooltip": "更多操作",
|
|
364
368
|
"cairo.customFields.editCustomField.fieldKey.tooltip": "此金鑰用於代碼中,無法變更。",
|
|
365
369
|
"cairo.tags.manageTags.modal.toast.create.success.asLabels": "標籤已建立。",
|
|
366
370
|
"cairo.table.advanced-sorting.dragAndDrop.tooltip": "變更資料列的排列順序。這不會影響資料列在表格中的顯示順序。",
|
|
@@ -393,7 +397,7 @@
|
|
|
393
397
|
"cairo.table.summaryBar.loadError": "Couldn't load summary row.",
|
|
394
398
|
"cairo.tags.tagsWidget.title": "標籤",
|
|
395
399
|
"cairo.customFields.entityPage.emptyState.subtitle": "如果使用者選擇填寫,則使用者欄位將會顯示於此處。",
|
|
396
|
-
"cairo.archivedFields.title": "
|
|
400
|
+
"cairo.archivedFields.title": "已封存欄位",
|
|
397
401
|
"cairo.searchPlaceholder": "搜尋......",
|
|
398
402
|
"cairo.tags.manageTags.modal.deleteModal.title": "刪除此標籤?",
|
|
399
403
|
"cairo.customFields.addCustomField.modal.advancedSettings.externalApps.tooltip": "允許來自應用市集的應用程式讀取或寫入此欄位的輸入內容。",
|
|
@@ -456,9 +460,9 @@
|
|
|
456
460
|
"cairo.customFields.archive.modal.description": "此欄位及收集到的資訊將被封存,且無法還原。",
|
|
457
461
|
"cairo.emptyState.premium.title": "透過方案升級",
|
|
458
462
|
"cairo.fieldValidation.maxNumber": "{maxAmount, plural, other {請輸入 {maxAmount,number} 或較低的值。}}",
|
|
459
|
-
"cairo.customFields.delete.modal.delete.CTA": "
|
|
463
|
+
"cairo.customFields.delete.modal.delete.CTA": "刪除",
|
|
460
464
|
"cairo.customFields.fieldType.numberDecimal": "數字(小數)",
|
|
461
|
-
"cairo.customFields.archive.success.toast.enabled": "{selectedField}
|
|
465
|
+
"cairo.customFields.archive.success.toast.enabled": "已封存「{selectedField}」。\n",
|
|
462
466
|
"cairo.manageView.saveView.error.toast": "由於技術問題,因此並未儲存檢視。",
|
|
463
467
|
"cairo.table.noFiltersApplied.label": "未套用篩選條件",
|
|
464
468
|
"cairo.manageView.saveNewView.CTA": "另存為新檢視",
|
|
@@ -472,7 +476,7 @@
|
|
|
472
476
|
"cairo.folders.showLess.button": "顯示較少",
|
|
473
477
|
"cairo.connection.error.title": "您似乎已離線",
|
|
474
478
|
"cairo.filtersPanel.date.tomorrow": "明天",
|
|
475
|
-
"cairo.customFields.restored.success.toast": "{selectedField}
|
|
479
|
+
"cairo.customFields.restored.success.toast": "已還原「{selectedField}」。",
|
|
476
480
|
"cairo.appliedFilters.selected": "{num, plural, =0 {未選擇篩選條件} other {已選擇 {num,number} 個篩選條件}}",
|
|
477
481
|
"cairo.filtersPanel.date.none": "所有",
|
|
478
482
|
"cairo.saveViewModal.cancelButton": "取消",
|
|
@@ -492,6 +496,7 @@
|
|
|
492
496
|
"cairo.customFields.updateDataExtension.changing-fields-not-allowed.error": "某些資訊的格式不正確或無效。",
|
|
493
497
|
"cairo.export.cancelMessage": "匯出未完成,資料將不會下載。",
|
|
494
498
|
"cairo.customFields.archive.success.toast": "已封存自訂欄位。",
|
|
499
|
+
"cairo.customFields.delete.error.toast": "未刪除「{selectedField}」。",
|
|
495
500
|
"cairo.tags.collectionPage.popover.create.CTA": "建立「{tagName}」",
|
|
496
501
|
"cairo.entityPage.header.save.CTA": "儲存",
|
|
497
502
|
"cairo.search.filter.nothingMatches.text": "請重新搜尋或變更篩選條件。",
|
|
@@ -500,7 +505,7 @@
|
|
|
500
505
|
"cairo.customFields.fieldType.url": "網址",
|
|
501
506
|
"cairo.filtersPanel.numRange.min-from": "下限",
|
|
502
507
|
"cairo.tags.bulkItemUpdate.toast.success": "標籤已更新。",
|
|
503
|
-
"cairo.customFields.archive.success.toast.CTA": "
|
|
508
|
+
"cairo.customFields.archive.success.toast.CTA": "瀏覽已封存欄位",
|
|
504
509
|
"cairo.customFields.maxFields": "您最多可以新增 10 個自訂欄位。",
|
|
505
510
|
"cairo.offline": "您目前處於離線狀態。",
|
|
506
511
|
"cairo.table.custom-columns.dragAndDrop.search-placeholder": "搜尋欄……",
|
|
@@ -521,7 +526,7 @@
|
|
|
521
526
|
"cairo.tags.collectionPage.toast.update.error": "由於我們這邊發生技術問題,因此無法更新標籤。",
|
|
522
527
|
"cairo.tags.bulkItemUpdate.toast.error": "{total, plural, other {由於發生技術問題,因此無法更新 {total,number} 標籤。}}",
|
|
523
528
|
"cairo.tags.bulkItemUpdate.updatingModal.body": "這可能需要一些時間。請將本索引標籤保持在開啟狀態,直到完成更新為止。 ",
|
|
524
|
-
"cairo.archivedFields.more-actions.restore": "
|
|
529
|
+
"cairo.archivedFields.more-actions.restore": "還原",
|
|
525
530
|
"cairo.tags.tagsWidget.add.CTA": "指派標籤",
|
|
526
531
|
"cairo.table.clearFilters.button": "清除全部",
|
|
527
532
|
"cairo.table.gridView": "網格檢視",
|
|
@@ -549,10 +554,11 @@
|
|
|
549
554
|
"cairo.add-image.tooltip": "新增圖片",
|
|
550
555
|
"cairo.customFields.maxLimit.modal.title": "您已達到自訂欄位的限制數量",
|
|
551
556
|
"cairo.manageView.setAsDefault.tooltip": "若要將此檢視設定為預設值,請儲存變更或另存為新檢視。",
|
|
552
|
-
"cairo.archivedFields.back.custom-columns.tooltip": "
|
|
557
|
+
"cairo.archivedFields.back.custom-columns.tooltip": "返回「自訂欄目」",
|
|
553
558
|
"cairo.tags.collectionPage.popover.search.placeholder": "搜尋標籤……",
|
|
554
559
|
"cairo.export.sessionExpiredMessage": "作業階段已逾期。請重新整理頁面並再次登入。",
|
|
555
560
|
"cairo.tags.collectionPage.applyChanges.CTA": "套用",
|
|
561
|
+
"cairo.customFields.archive.error.toast": "「{selectedField}」並未封存。",
|
|
556
562
|
"cairo.customFields.addCustomField.modal.fieldName.placeholder": "輸入名稱",
|
|
557
563
|
"cairo.a11y.liveRegion.resultsFound": "{num, plural, =0 {找不到任何結果} other {找到 {num,number} 筆結果}}",
|
|
558
564
|
"cairo.customFields.entityPage.sectionTitle": "您的自訂欄位",
|
|
@@ -579,7 +585,7 @@
|
|
|
579
585
|
"cairo.customFields.addCustomField.modal.advancedSettings.externalApps": "已安裝的應用程式",
|
|
580
586
|
"cairo.export.successMessage": "檔案下載中。下載未開始?",
|
|
581
587
|
"cairo.downloadable-url.error.generic": "下載檔案時發生問題。",
|
|
582
|
-
"cairo.table.mobile.more.button": "
|
|
588
|
+
"cairo.table.mobile.more.button": "操作",
|
|
583
589
|
"cairo.customFields.entityPage.subtitle": "使用自訂欄位以儲存和收集更多資訊。",
|
|
584
590
|
"cairo.manageView.setAsDefault.success.toast": "已將「{viewName}」設定為預設檢視。",
|
|
585
591
|
"cairo.dropdownSearch.filters.emptyState": "找不到與此篩選條件相關的項目。",
|
package/dist/cjs/index.js
CHANGED
|
@@ -5,9 +5,10 @@ var _exportNames = {
|
|
|
5
5
|
CollectionConfigWithConditionals: true,
|
|
6
6
|
CollectionFactory: true,
|
|
7
7
|
useSyncProps: true,
|
|
8
|
-
QueryCache: true
|
|
8
|
+
QueryCache: true,
|
|
9
|
+
DeepPartial: true
|
|
9
10
|
};
|
|
10
|
-
exports.useSyncProps = exports.QueryCache = exports.CollectionFactory = exports.CollectionConfigWithConditionals = void 0;
|
|
11
|
+
exports.useSyncProps = exports.QueryCache = exports.DeepPartial = exports.CollectionFactory = exports.CollectionConfigWithConditionals = void 0;
|
|
11
12
|
var _model = require("./model");
|
|
12
13
|
Object.keys(_model).forEach(function (key) {
|
|
13
14
|
if (key === "default" || key === "__esModule") return;
|
|
@@ -63,4 +64,6 @@ exports.CollectionFactory = _hooks.CollectionFactory;
|
|
|
63
64
|
exports.useSyncProps = _hooks.useSyncProps;
|
|
64
65
|
var _core = require("react-query/core");
|
|
65
66
|
exports.QueryCache = _core.QueryCache;
|
|
67
|
+
var _DeepPartial = require("./types/DeepPartial");
|
|
68
|
+
exports.DeepPartial = _DeepPartial.DeepPartial;
|
|
66
69
|
//# sourceMappingURL=index.js.map
|
package/dist/cjs/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_model","require","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","_state","_services","_util","_useExport","_createCollection","_useCollectionDatasetSync","_hooks","CollectionConfigWithConditionals","CollectionFactory","useSyncProps","_core","QueryCache"],"sources":["../../src/index.ts"],"sourcesContent":["export * from './model';\nexport * from './state';\nexport * from './services';\nexport * from './util';\nexport * from './hooks/useExport';\nexport * from './hooks/createCollection';\nexport * from './hooks/useCollectionDatasetSync';\nexport {\n CollectionConfigWithConditionals,\n CollectionFactory,\n useSyncProps,\n} from './hooks';\nexport { QueryCache } from 'react-query/core';\n// CAIRO-3582: modify mobile detection to use user agent\n// export { MOBILE_BREAKPOINT } from './state/PageState';\n"],"mappings":"
|
|
1
|
+
{"version":3,"names":["_model","require","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","_state","_services","_util","_useExport","_createCollection","_useCollectionDatasetSync","_hooks","CollectionConfigWithConditionals","CollectionFactory","useSyncProps","_core","QueryCache","_DeepPartial","DeepPartial"],"sources":["../../src/index.ts"],"sourcesContent":["export * from './model';\nexport * from './state';\nexport * from './services';\nexport * from './util';\nexport * from './hooks/useExport';\nexport * from './hooks/createCollection';\nexport * from './hooks/useCollectionDatasetSync';\nexport {\n CollectionConfigWithConditionals,\n CollectionFactory,\n useSyncProps,\n} from './hooks';\nexport { QueryCache } from 'react-query/core';\n// CAIRO-3582: modify mobile detection to use user agent\n// export { MOBILE_BREAKPOINT } from './state/PageState';\nexport { DeepPartial } from './types/DeepPartial';\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -4,7 +4,6 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
|
|
|
4
4
|
exports.__esModule = true;
|
|
5
5
|
exports.DataExtensionSchemaService = void 0;
|
|
6
6
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
7
|
-
var _types = require("@wix/bex-utils/@wix/ambassador-data-extensions-v1-data-extension-schema/types");
|
|
8
7
|
var _http = require("@wix/bex-utils/@wix/ambassador-data-extensions-v1-data-extension-schema/http");
|
|
9
8
|
var _updateDataExtensionSchemaErrors = require("./updateDataExtensionSchemaErrors");
|
|
10
9
|
var _createDataExtensionSchemaErrors = require("./createDataExtensionSchemaErrors");
|
|
@@ -213,7 +212,7 @@ class DataExtensionSchemaService {
|
|
|
213
212
|
const res = await errorHandler.withErrorHandler(() => httpClient.request((0, _http.listDataExtensionSchemas)({
|
|
214
213
|
fqdn,
|
|
215
214
|
namespaces: [],
|
|
216
|
-
fields: [
|
|
215
|
+
fields: ['ARCHIVED']
|
|
217
216
|
})), {});
|
|
218
217
|
return res.data;
|
|
219
218
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_types","require","_http","_updateDataExtensionSchemaErrors","_createDataExtensionSchemaErrors","DataExtensionSchemaService","toSchemaType","type","format","maxLength","items","Error","toCustomType","field","hasOwnProperty","_field$items","toCustomField","schema","key","_schema$jsonSchema","property","jsonSchema","properties","title","id","constructor","params","_defineProperty2","default","httpClient","translate","errorHandler","addCustomField","_params$schema","_params$schema2","_params$schema3","userFieldsNamespace","form","name","readApps","readUsers","writeApps","writeUsers","containsPii","fqdn","permissions","read","write","filterable","namespace","enabled","_updateDataExtensionSchema","_createDataExtensionSchema","archiveCustomField","_params$schema4","_params$schema5","fetchSchemas","res","withErrorHandler","request","listDataExtensionSchemas","namespaces","fields","RequestedField","ARCHIVED","data","createDataExtensionSchema","dataExtensionSchema","createDataExtensionSchemaErrors","then","updateDataExtensionSchema","updateDataExtensionSchemaErrors","exports"],"sources":["../../../../src/services/DataExtensionService/dataExtensionService.ts"],"sourcesContent":["import {\n DataExtensionSchema,\n RequestedField,\n} from '@wix/bex-utils/@wix/ambassador-data-extensions-v1-data-extension-schema/types';\nimport {\n createDataExtensionSchema,\n listDataExtensionSchemas,\n updateDataExtensionSchema,\n} from '@wix/bex-utils/@wix/ambassador-data-extensions-v1-data-extension-schema/http';\nimport { CustomFieldForm, WixPatternsContainer } from '../../state';\nimport { PatternsErrorHandler, WixPatternsEssentials } from '../../model';\nimport { updateDataExtensionSchemaErrors } from './updateDataExtensionSchemaErrors';\nimport { createDataExtensionSchemaErrors } from './createDataExtensionSchemaErrors';\n\nexport interface DataExtensionSchemaServiceParams {\n readonly httpClient: WixPatternsEssentials['httpClient'];\n readonly translate: WixPatternsContainer['translate'];\n readonly errorHandler: PatternsErrorHandler;\n}\n\n// server types\nexport type DataExtensionType =\n | 'string'\n | 'number'\n | 'integer'\n | 'boolean'\n | 'array'\n | 'object';\n\nexport type DataExtensionPermission =\n | 'apps'\n | 'owning-app'\n | 'users'\n | 'users-of-users';\n\ninterface DataExtensionFieldItems\n extends Partial<Omit<DataExtensionField, 'type' | 'maxLength'>> {\n type: Omit<DataExtensionType, 'array'>;\n maxLength: number;\n}\nexport interface DataExtensionField {\n id: string;\n type?: DataExtensionType;\n format?: 'date-time' | 'date' | 'single-line' | 'uri' | string;\n title?: string;\n maxLength?: number;\n enum?: string[];\n 'x-wix-archived'?: boolean;\n 'x-wix-filterable'?: boolean;\n 'x-wix-created-date': string;\n 'x-wix-object-type'?: string;\n 'x-wix-permissions': {\n read: DataExtensionPermission[];\n write: DataExtensionPermission[];\n };\n properties?: Record<string, any>;\n items?: DataExtensionFieldItems;\n 'x-wix-pii'?: { enabled: boolean };\n}\n\n// client types\nexport type CustomFieldType =\n | 'shortText'\n | 'longText'\n | 'url'\n | 'date'\n | 'dateTime'\n | 'integer'\n | 'decimal'\n | 'checkbox'\n | 'dropdown'\n | 'files'\n | 'multiSelect';\n\nexport type CustomFieldOrigin =\n | 'Custom columns panel'\n | 'Custom fields panel'\n | 'Custom fields widget'\n | 'external';\n\nexport interface ExtendedFieldsDataMap {\n [key: string]: any;\n}\n\nexport interface ExtendedFields {\n _type?: 'ExtendedFields';\n /**\n * Data Extensions extended fields\n * Key: Namespace\n * Value: extended fields data in Struct format\n */\n namespaces?: {\n _user_fields?: ExtendedFieldsDataMap | undefined;\n [key: string]: ExtendedFieldsDataMap | undefined;\n };\n}\n\nexport type CustomFieldOwner = 'user' | 'app';\n\nexport interface CustomField {\n id: string;\n type: CustomFieldType;\n label?: string;\n maxLength?: number;\n options?: string[];\n editable: boolean;\n filterable?: boolean;\n owner: CustomFieldOwner;\n properties?: Record<string, string>;\n namespace: string;\n permissions?: {\n read?: DataExtensionPermission[];\n write?: DataExtensionPermission[];\n };\n}\n\nexport interface AddFieldParams {\n schema?: DataExtensionSchema;\n fqdn: string;\n form: CustomFieldForm;\n filterable?: boolean;\n}\n\nexport interface ArchiveFieldParams {\n schema?: DataExtensionSchema;\n fqdn: string;\n id: string;\n}\n\nexport class DataExtensionSchemaService {\n readonly httpClient: WixPatternsEssentials['httpClient'];\n readonly translate: WixPatternsContainer['translate'];\n readonly errorHandler;\n\n readonly userFieldsNamespace = '_user_fields';\n\n static toSchemaType(type?: CustomFieldType) {\n switch (type) {\n case 'shortText':\n return {\n type: 'string',\n format: 'single-line',\n maxLength: 120,\n };\n case 'longText':\n return {\n type: 'string',\n maxLength: 200,\n };\n case 'url':\n return {\n type: 'string',\n format: 'uri',\n maxLength: 256,\n };\n case 'date':\n return {\n type: 'string',\n format: 'date',\n };\n case 'dateTime':\n return {\n type: 'string',\n format: 'date-time',\n };\n case 'integer':\n return {\n type: 'integer',\n };\n case 'decimal':\n return {\n type: 'number',\n };\n case 'checkbox':\n return {\n type: 'boolean',\n };\n case 'dropdown':\n return {\n type: 'array',\n items: {\n type: 'string',\n },\n };\n default:\n throw new Error(`Unexpected type: ${type}`);\n }\n }\n\n static toCustomType(field: DataExtensionField): CustomFieldType | undefined {\n switch (field.type) {\n case 'string':\n if (field.hasOwnProperty('enum')) {\n return 'dropdown';\n }\n switch (field.format) {\n case 'date-time':\n return 'dateTime';\n case 'uri':\n return 'url';\n case 'date':\n return 'date';\n case 'single-line':\n return 'shortText';\n default:\n return 'longText';\n }\n case 'number':\n return 'decimal';\n case 'integer':\n return 'integer';\n case 'boolean':\n return 'checkbox';\n case 'array': {\n if (field.items?.['x-wix-object-type'] === 'FILE/V1') {\n return 'files';\n }\n return 'multiSelect';\n }\n case 'object': {\n if (field['x-wix-object-type'] === 'FILE/V1') {\n return 'files';\n }\n return 'dropdown';\n }\n default:\n return;\n }\n }\n\n static toCustomField(\n schema: DataExtensionSchema,\n key: string,\n ): DataExtensionField | undefined {\n const property: DataExtensionField = schema.jsonSchema?.properties?.[key];\n\n if (!property || typeof property !== 'object') {\n return;\n }\n\n if (\n typeof property.title !== 'string' ||\n typeof property.type !== 'string' ||\n typeof property['x-wix-permissions'] !== 'object'\n ) {\n return;\n }\n\n return { ...property, id: key };\n }\n\n constructor(params: DataExtensionSchemaServiceParams) {\n this.httpClient = params.httpClient;\n this.translate = params.translate;\n this.errorHandler = params.errorHandler;\n }\n addCustomField(params: AddFieldParams) {\n const { userFieldsNamespace } = this;\n const {\n form: {\n key,\n name,\n readApps,\n readUsers,\n writeApps,\n writeUsers,\n containsPii,\n },\n fqdn,\n } = params;\n const type = DataExtensionSchemaService.toSchemaType(params.form.type);\n\n const permissions = {\n read: [\n 'users',\n ...(readUsers ? ['users-of-users'] : []),\n ...(readApps ? ['apps'] : []),\n ],\n write: [\n 'users',\n ...(writeUsers ? ['users-of-users'] : []),\n ...(writeApps ? ['apps'] : []),\n ],\n };\n\n const filterable = params.filterable ? { 'x-wix-filterable': true } : {};\n\n const schema: DataExtensionSchema = {\n fqdn,\n namespace: userFieldsNamespace,\n ...params.schema,\n jsonSchema: {\n properties: {\n ...params.schema?.jsonSchema?.properties,\n [key]: {\n ...params.schema?.jsonSchema?.properties[key],\n title: name,\n ...(containsPii ? { 'x-wix-pii': { enabled: true } } : {}),\n ...type,\n 'x-wix-permissions': permissions,\n ...filterable,\n },\n },\n },\n };\n\n return params.schema?.id\n ? this._updateDataExtensionSchema(schema)\n : this._createDataExtensionSchema(schema);\n }\n\n archiveCustomField(params: ArchiveFieldParams) {\n const { userFieldsNamespace } = this;\n const { id, fqdn } = params;\n\n const schema: DataExtensionSchema = {\n fqdn,\n namespace: userFieldsNamespace,\n ...params.schema,\n jsonSchema: {\n properties: {\n ...params.schema?.jsonSchema?.properties,\n [id]: {\n ...params.schema?.jsonSchema?.properties[id],\n 'x-wix-archived': true,\n },\n },\n },\n };\n return this._updateDataExtensionSchema(schema);\n }\n\n async fetchSchemas(fqdn: string) {\n const { httpClient, errorHandler } = this;\n\n const res = await errorHandler.withErrorHandler(\n () =>\n httpClient.request(\n listDataExtensionSchemas({\n fqdn,\n namespaces: [],\n fields: [RequestedField.ARCHIVED],\n }),\n ),\n {},\n );\n\n return res.data;\n }\n\n private async _createDataExtensionSchema(schema: DataExtensionSchema) {\n const { httpClient, errorHandler } = this;\n\n return errorHandler\n .withErrorHandler(\n () =>\n httpClient.request(\n createDataExtensionSchema({ dataExtensionSchema: schema }),\n ),\n createDataExtensionSchemaErrors({\n translate: this.translate,\n }),\n )\n .then((res) => res.data);\n }\n\n private async _updateDataExtensionSchema(schema: DataExtensionSchema) {\n const { httpClient, errorHandler } = this;\n return errorHandler\n .withErrorHandler(\n () =>\n httpClient.request(\n updateDataExtensionSchema({ dataExtensionSchema: schema }),\n ),\n updateDataExtensionSchemaErrors({\n translate: this.translate,\n }),\n )\n .then((res) => res.data);\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_http","require","_updateDataExtensionSchemaErrors","_createDataExtensionSchemaErrors","DataExtensionSchemaService","toSchemaType","type","format","maxLength","items","Error","toCustomType","field","hasOwnProperty","_field$items","toCustomField","schema","key","_schema$jsonSchema","property","jsonSchema","properties","title","id","constructor","params","_defineProperty2","default","httpClient","translate","errorHandler","addCustomField","_params$schema","_params$schema2","_params$schema3","userFieldsNamespace","form","name","readApps","readUsers","writeApps","writeUsers","containsPii","fqdn","permissions","read","write","filterable","namespace","enabled","_updateDataExtensionSchema","_createDataExtensionSchema","archiveCustomField","_params$schema4","_params$schema5","fetchSchemas","res","withErrorHandler","request","listDataExtensionSchemas","namespaces","fields","data","createDataExtensionSchema","dataExtensionSchema","createDataExtensionSchemaErrors","then","updateDataExtensionSchema","updateDataExtensionSchemaErrors","exports"],"sources":["../../../../src/services/DataExtensionService/dataExtensionService.ts"],"sourcesContent":["import type {\n DataExtensionSchema,\n RequestedField,\n} from '@wix/bex-utils/@wix/ambassador-data-extensions-v1-data-extension-schema/types';\nimport {\n createDataExtensionSchema,\n listDataExtensionSchemas,\n updateDataExtensionSchema,\n} from '@wix/bex-utils/@wix/ambassador-data-extensions-v1-data-extension-schema/http';\nimport { CustomFieldForm, WixPatternsContainer } from '../../state';\nimport { PatternsErrorHandler, WixPatternsEssentials } from '../../model';\nimport { updateDataExtensionSchemaErrors } from './updateDataExtensionSchemaErrors';\nimport { createDataExtensionSchemaErrors } from './createDataExtensionSchemaErrors';\n\nexport interface DataExtensionSchemaServiceParams {\n readonly httpClient: WixPatternsEssentials['httpClient'];\n readonly translate: WixPatternsContainer['translate'];\n readonly errorHandler: PatternsErrorHandler;\n}\n\n// server types\nexport type DataExtensionType =\n | 'string'\n | 'number'\n | 'integer'\n | 'boolean'\n | 'array'\n | 'object';\n\nexport type DataExtensionPermission =\n | 'apps'\n | 'owning-app'\n | 'users'\n | 'users-of-users';\n\ninterface DataExtensionFieldItems\n extends Partial<Omit<DataExtensionField, 'type' | 'maxLength'>> {\n type: Omit<DataExtensionType, 'array'>;\n maxLength: number;\n}\nexport interface DataExtensionField {\n id: string;\n type?: DataExtensionType;\n format?: 'date-time' | 'date' | 'single-line' | 'uri' | string;\n title?: string;\n maxLength?: number;\n enum?: string[];\n 'x-wix-archived'?: boolean;\n 'x-wix-filterable'?: boolean;\n 'x-wix-created-date': string;\n 'x-wix-object-type'?: string;\n 'x-wix-permissions': {\n read: DataExtensionPermission[];\n write: DataExtensionPermission[];\n };\n properties?: Record<string, any>;\n items?: DataExtensionFieldItems;\n 'x-wix-pii'?: { enabled: boolean };\n}\n\n// client types\nexport type CustomFieldType =\n | 'shortText'\n | 'longText'\n | 'url'\n | 'date'\n | 'dateTime'\n | 'integer'\n | 'decimal'\n | 'checkbox'\n | 'dropdown'\n | 'files'\n | 'multiSelect';\n\nexport type CustomFieldOrigin =\n | 'Custom columns panel'\n | 'Custom fields panel'\n | 'Custom fields widget'\n | 'external';\n\nexport interface ExtendedFieldsDataMap {\n [key: string]: any;\n}\n\nexport interface ExtendedFields {\n _type?: 'ExtendedFields';\n /**\n * Data Extensions extended fields\n * Key: Namespace\n * Value: extended fields data in Struct format\n */\n namespaces?: {\n _user_fields?: ExtendedFieldsDataMap | undefined;\n [key: string]: ExtendedFieldsDataMap | undefined;\n };\n}\n\nexport type CustomFieldOwner = 'user' | 'app';\n\nexport interface CustomField {\n id: string;\n type: CustomFieldType;\n label?: string;\n maxLength?: number;\n options?: string[];\n editable: boolean;\n filterable?: boolean;\n owner: CustomFieldOwner;\n properties?: Record<string, string>;\n namespace: string;\n permissions?: {\n read?: DataExtensionPermission[];\n write?: DataExtensionPermission[];\n };\n}\n\nexport interface AddFieldParams {\n schema?: DataExtensionSchema;\n fqdn: string;\n form: CustomFieldForm;\n filterable?: boolean;\n}\n\nexport interface ArchiveFieldParams {\n schema?: DataExtensionSchema;\n fqdn: string;\n id: string;\n}\n\nexport class DataExtensionSchemaService {\n readonly httpClient: WixPatternsEssentials['httpClient'];\n readonly translate: WixPatternsContainer['translate'];\n readonly errorHandler;\n\n readonly userFieldsNamespace = '_user_fields';\n\n static toSchemaType(type?: CustomFieldType) {\n switch (type) {\n case 'shortText':\n return {\n type: 'string',\n format: 'single-line',\n maxLength: 120,\n };\n case 'longText':\n return {\n type: 'string',\n maxLength: 200,\n };\n case 'url':\n return {\n type: 'string',\n format: 'uri',\n maxLength: 256,\n };\n case 'date':\n return {\n type: 'string',\n format: 'date',\n };\n case 'dateTime':\n return {\n type: 'string',\n format: 'date-time',\n };\n case 'integer':\n return {\n type: 'integer',\n };\n case 'decimal':\n return {\n type: 'number',\n };\n case 'checkbox':\n return {\n type: 'boolean',\n };\n case 'dropdown':\n return {\n type: 'array',\n items: {\n type: 'string',\n },\n };\n default:\n throw new Error(`Unexpected type: ${type}`);\n }\n }\n\n static toCustomType(field: DataExtensionField): CustomFieldType | undefined {\n switch (field.type) {\n case 'string':\n if (field.hasOwnProperty('enum')) {\n return 'dropdown';\n }\n switch (field.format) {\n case 'date-time':\n return 'dateTime';\n case 'uri':\n return 'url';\n case 'date':\n return 'date';\n case 'single-line':\n return 'shortText';\n default:\n return 'longText';\n }\n case 'number':\n return 'decimal';\n case 'integer':\n return 'integer';\n case 'boolean':\n return 'checkbox';\n case 'array': {\n if (field.items?.['x-wix-object-type'] === 'FILE/V1') {\n return 'files';\n }\n return 'multiSelect';\n }\n case 'object': {\n if (field['x-wix-object-type'] === 'FILE/V1') {\n return 'files';\n }\n return 'dropdown';\n }\n default:\n return;\n }\n }\n\n static toCustomField(\n schema: DataExtensionSchema,\n key: string,\n ): DataExtensionField | undefined {\n const property: DataExtensionField = schema.jsonSchema?.properties?.[key];\n\n if (!property || typeof property !== 'object') {\n return;\n }\n\n if (\n typeof property.title !== 'string' ||\n typeof property.type !== 'string' ||\n typeof property['x-wix-permissions'] !== 'object'\n ) {\n return;\n }\n\n return { ...property, id: key };\n }\n\n constructor(params: DataExtensionSchemaServiceParams) {\n this.httpClient = params.httpClient;\n this.translate = params.translate;\n this.errorHandler = params.errorHandler;\n }\n addCustomField(params: AddFieldParams) {\n const { userFieldsNamespace } = this;\n const {\n form: {\n key,\n name,\n readApps,\n readUsers,\n writeApps,\n writeUsers,\n containsPii,\n },\n fqdn,\n } = params;\n const type = DataExtensionSchemaService.toSchemaType(params.form.type);\n\n const permissions = {\n read: [\n 'users',\n ...(readUsers ? ['users-of-users'] : []),\n ...(readApps ? ['apps'] : []),\n ],\n write: [\n 'users',\n ...(writeUsers ? ['users-of-users'] : []),\n ...(writeApps ? ['apps'] : []),\n ],\n };\n\n const filterable = params.filterable ? { 'x-wix-filterable': true } : {};\n\n const schema: DataExtensionSchema = {\n fqdn,\n namespace: userFieldsNamespace,\n ...params.schema,\n jsonSchema: {\n properties: {\n ...params.schema?.jsonSchema?.properties,\n [key]: {\n ...params.schema?.jsonSchema?.properties[key],\n title: name,\n ...(containsPii ? { 'x-wix-pii': { enabled: true } } : {}),\n ...type,\n 'x-wix-permissions': permissions,\n ...filterable,\n },\n },\n },\n };\n\n return params.schema?.id\n ? this._updateDataExtensionSchema(schema)\n : this._createDataExtensionSchema(schema);\n }\n\n archiveCustomField(params: ArchiveFieldParams) {\n const { userFieldsNamespace } = this;\n const { id, fqdn } = params;\n\n const schema: DataExtensionSchema = {\n fqdn,\n namespace: userFieldsNamespace,\n ...params.schema,\n jsonSchema: {\n properties: {\n ...params.schema?.jsonSchema?.properties,\n [id]: {\n ...params.schema?.jsonSchema?.properties[id],\n 'x-wix-archived': true,\n },\n },\n },\n };\n return this._updateDataExtensionSchema(schema);\n }\n\n async fetchSchemas(fqdn: string) {\n const { httpClient, errorHandler } = this;\n\n const res = await errorHandler.withErrorHandler(\n () =>\n httpClient.request(\n listDataExtensionSchemas({\n fqdn,\n namespaces: [],\n fields: ['ARCHIVED' as RequestedField],\n }),\n ),\n {},\n );\n\n return res.data;\n }\n\n private async _createDataExtensionSchema(schema: DataExtensionSchema) {\n const { httpClient, errorHandler } = this;\n\n return errorHandler\n .withErrorHandler(\n () =>\n httpClient.request(\n createDataExtensionSchema({ dataExtensionSchema: schema }),\n ),\n createDataExtensionSchemaErrors({\n translate: this.translate,\n }),\n )\n .then((res) => res.data);\n }\n\n private async _updateDataExtensionSchema(schema: DataExtensionSchema) {\n const { httpClient, errorHandler } = this;\n return errorHandler\n .withErrorHandler(\n () =>\n httpClient.request(\n updateDataExtensionSchema({ dataExtensionSchema: schema }),\n ),\n updateDataExtensionSchemaErrors({\n translate: this.translate,\n }),\n )\n .then((res) => res.data);\n }\n}\n"],"mappings":"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","ignoreList":[]}
|