@wix/bex-core 2.79.0 → 2.80.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.
Files changed (132) hide show
  1. package/dist/cjs/assets/locale/messages_cs.json +8 -5
  2. package/dist/cjs/assets/locale/messages_da.json +11 -8
  3. package/dist/cjs/assets/locale/messages_de.json +11 -8
  4. package/dist/cjs/assets/locale/messages_en.json +6 -3
  5. package/dist/cjs/assets/locale/messages_es.json +11 -8
  6. package/dist/cjs/assets/locale/messages_fr.json +11 -8
  7. package/dist/cjs/assets/locale/messages_hi.json +5 -2
  8. package/dist/cjs/assets/locale/messages_id.json +11 -8
  9. package/dist/cjs/assets/locale/messages_it.json +11 -8
  10. package/dist/cjs/assets/locale/messages_ja.json +8 -5
  11. package/dist/cjs/assets/locale/messages_ko.json +11 -8
  12. package/dist/cjs/assets/locale/messages_nl.json +11 -8
  13. package/dist/cjs/assets/locale/messages_no.json +11 -8
  14. package/dist/cjs/assets/locale/messages_pl.json +11 -8
  15. package/dist/cjs/assets/locale/messages_pt.json +11 -8
  16. package/dist/cjs/assets/locale/messages_ru.json +11 -8
  17. package/dist/cjs/assets/locale/messages_sv.json +11 -8
  18. package/dist/cjs/assets/locale/messages_th.json +11 -8
  19. package/dist/cjs/assets/locale/messages_tr.json +11 -8
  20. package/dist/cjs/assets/locale/messages_uk.json +11 -8
  21. package/dist/cjs/assets/locale/messages_vi.json +11 -8
  22. package/dist/cjs/assets/locale/messages_zh.json +10 -7
  23. package/dist/cjs/hooks/useExport.js +4 -2
  24. package/dist/cjs/hooks/useExport.js.map +1 -1
  25. package/dist/cjs/model/wixPatternsEssentials.js.map +1 -1
  26. package/dist/cjs/services/DataExtensionService/createDataExtensionSchemaErrors.js.map +1 -1
  27. package/dist/cjs/services/DataExtensionService/dataExtensionService.js +27 -11
  28. package/dist/cjs/services/DataExtensionService/dataExtensionService.js.map +1 -1
  29. package/dist/cjs/services/DataExtensionService/updateDataExtensionSchemaErrors.js.map +1 -1
  30. package/dist/cjs/services/translations.js.map +1 -1
  31. package/dist/cjs/state/CollectionOptimisticExecutor.js +10 -3
  32. package/dist/cjs/state/CollectionOptimisticExecutor.js.map +1 -1
  33. package/dist/cjs/state/CustomFieldModalState.js +42 -35
  34. package/dist/cjs/state/CustomFieldModalState.js.map +1 -1
  35. package/dist/cjs/state/DataExtensionState.js +7 -2
  36. package/dist/cjs/state/DataExtensionState.js.map +1 -1
  37. package/dist/cjs/state/ExportState/ExportState.js +17 -11
  38. package/dist/cjs/state/ExportState/ExportState.js.map +1 -1
  39. package/dist/cjs/state/ExportState/createExportAsyncJobErrors.js.map +1 -1
  40. package/dist/cjs/state/ExportState/getExportAsyncJobErrors.js.map +1 -1
  41. package/dist/cjs/state/OptimisticActions.js.map +1 -1
  42. package/dist/cjs/state/TagsState/TagsManagementState.js +14 -6
  43. package/dist/cjs/state/TagsState/TagsManagementState.js.map +1 -1
  44. package/dist/cjs/state/TagsState/createTagErrors.js.map +1 -1
  45. package/dist/cjs/state/WixPatternsContainer.js +4 -0
  46. package/dist/cjs/state/WixPatternsContainer.js.map +1 -1
  47. package/dist/cjs/state/buildWixPatternsContainer.js +2 -0
  48. package/dist/cjs/state/buildWixPatternsContainer.js.map +1 -1
  49. package/dist/cjs/state/optimistic-simulation/filterByApplyAllPatches.js +3 -0
  50. package/dist/cjs/state/optimistic-simulation/filterByApplyAllPatches.js.map +1 -1
  51. package/dist/esm/assets/locale/messages_cs.json +8 -5
  52. package/dist/esm/assets/locale/messages_da.json +11 -8
  53. package/dist/esm/assets/locale/messages_de.json +11 -8
  54. package/dist/esm/assets/locale/messages_en.json +6 -3
  55. package/dist/esm/assets/locale/messages_es.json +11 -8
  56. package/dist/esm/assets/locale/messages_fr.json +11 -8
  57. package/dist/esm/assets/locale/messages_hi.json +5 -2
  58. package/dist/esm/assets/locale/messages_id.json +11 -8
  59. package/dist/esm/assets/locale/messages_it.json +11 -8
  60. package/dist/esm/assets/locale/messages_ja.json +8 -5
  61. package/dist/esm/assets/locale/messages_ko.json +11 -8
  62. package/dist/esm/assets/locale/messages_nl.json +11 -8
  63. package/dist/esm/assets/locale/messages_no.json +11 -8
  64. package/dist/esm/assets/locale/messages_pl.json +11 -8
  65. package/dist/esm/assets/locale/messages_pt.json +11 -8
  66. package/dist/esm/assets/locale/messages_ru.json +11 -8
  67. package/dist/esm/assets/locale/messages_sv.json +11 -8
  68. package/dist/esm/assets/locale/messages_th.json +11 -8
  69. package/dist/esm/assets/locale/messages_tr.json +11 -8
  70. package/dist/esm/assets/locale/messages_uk.json +11 -8
  71. package/dist/esm/assets/locale/messages_vi.json +11 -8
  72. package/dist/esm/assets/locale/messages_zh.json +10 -7
  73. package/dist/esm/hooks/useExport.js +2 -1
  74. package/dist/esm/hooks/useExport.js.map +1 -1
  75. package/dist/esm/services/DataExtensionService/createDataExtensionSchemaErrors.js.map +1 -1
  76. package/dist/esm/services/DataExtensionService/dataExtensionService.js +17 -11
  77. package/dist/esm/services/DataExtensionService/dataExtensionService.js.map +1 -1
  78. package/dist/esm/services/DataExtensionService/updateDataExtensionSchemaErrors.js.map +1 -1
  79. package/dist/esm/state/CollectionOptimisticExecutor.js +8 -3
  80. package/dist/esm/state/CollectionOptimisticExecutor.js.map +1 -1
  81. package/dist/esm/state/CustomFieldModalState.js +38 -32
  82. package/dist/esm/state/CustomFieldModalState.js.map +1 -1
  83. package/dist/esm/state/DataExtensionState.js +4 -0
  84. package/dist/esm/state/DataExtensionState.js.map +1 -1
  85. package/dist/esm/state/ExportState/ExportState.js +16 -13
  86. package/dist/esm/state/ExportState/ExportState.js.map +1 -1
  87. package/dist/esm/state/ExportState/createExportAsyncJobErrors.js.map +1 -1
  88. package/dist/esm/state/ExportState/getExportAsyncJobErrors.js.map +1 -1
  89. package/dist/esm/state/TagsState/TagsManagementState.js +6 -4
  90. package/dist/esm/state/TagsState/TagsManagementState.js.map +1 -1
  91. package/dist/esm/state/TagsState/createTagErrors.js.map +1 -1
  92. package/dist/esm/state/WixPatternsContainer.js +3 -0
  93. package/dist/esm/state/WixPatternsContainer.js.map +1 -1
  94. package/dist/esm/state/buildWixPatternsContainer.js +2 -1
  95. package/dist/esm/state/buildWixPatternsContainer.js.map +1 -1
  96. package/dist/esm/state/optimistic-simulation/filterByApplyAllPatches.js +5 -0
  97. package/dist/esm/state/optimistic-simulation/filterByApplyAllPatches.js.map +1 -1
  98. package/dist/types/hooks/useExport.d.ts.map +1 -1
  99. package/dist/types/model/wixPatternsEssentials.d.ts +6 -0
  100. package/dist/types/model/wixPatternsEssentials.d.ts.map +1 -1
  101. package/dist/types/services/DataExtensionService/createDataExtensionSchemaErrors.d.ts +0 -1
  102. package/dist/types/services/DataExtensionService/createDataExtensionSchemaErrors.d.ts.map +1 -1
  103. package/dist/types/services/DataExtensionService/dataExtensionService.d.ts +4 -1
  104. package/dist/types/services/DataExtensionService/dataExtensionService.d.ts.map +1 -1
  105. package/dist/types/services/DataExtensionService/updateDataExtensionSchemaErrors.d.ts +0 -1
  106. package/dist/types/services/DataExtensionService/updateDataExtensionSchemaErrors.d.ts.map +1 -1
  107. package/dist/types/services/translations.d.ts +4 -1
  108. package/dist/types/services/translations.d.ts.map +1 -1
  109. package/dist/types/state/CollectionOptimisticExecutor.d.ts +6 -2
  110. package/dist/types/state/CollectionOptimisticExecutor.d.ts.map +1 -1
  111. package/dist/types/state/CustomFieldModalBiReporter.d.ts +1 -0
  112. package/dist/types/state/CustomFieldModalBiReporter.d.ts.map +1 -1
  113. package/dist/types/state/CustomFieldModalState.d.ts +3 -0
  114. package/dist/types/state/CustomFieldModalState.d.ts.map +1 -1
  115. package/dist/types/state/DataExtensionState.d.ts +2 -0
  116. package/dist/types/state/DataExtensionState.d.ts.map +1 -1
  117. package/dist/types/state/ExportState/ExportState.d.ts +3 -1
  118. package/dist/types/state/ExportState/ExportState.d.ts.map +1 -1
  119. package/dist/types/state/ExportState/createExportAsyncJobErrors.d.ts +2 -2
  120. package/dist/types/state/ExportState/createExportAsyncJobErrors.d.ts.map +1 -1
  121. package/dist/types/state/ExportState/getExportAsyncJobErrors.d.ts +2 -2
  122. package/dist/types/state/ExportState/getExportAsyncJobErrors.d.ts.map +1 -1
  123. package/dist/types/state/OptimisticActions.d.ts +4 -2
  124. package/dist/types/state/OptimisticActions.d.ts.map +1 -1
  125. package/dist/types/state/TagsState/TagsManagementState.d.ts.map +1 -1
  126. package/dist/types/state/TagsState/createTagErrors.d.ts +2 -1
  127. package/dist/types/state/TagsState/createTagErrors.d.ts.map +1 -1
  128. package/dist/types/state/WixPatternsContainer.d.ts +2 -0
  129. package/dist/types/state/WixPatternsContainer.d.ts.map +1 -1
  130. package/dist/types/state/buildWixPatternsContainer.d.ts.map +1 -1
  131. package/dist/types/state/optimistic-simulation/filterByApplyAllPatches.d.ts.map +1 -1
  132. package/package.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"names":[],"sources":["../../../src/services/translations.ts"],"sourcesContent":["// DO NOT UPDATE THIS FILE! This file was auto-generated by generate-keys.ts\nexport type TranslationsKeys =\n | 'cairo.table.filter.button'\n | 'cairo.table.listView'\n | 'cairo.table.gridView'\n | 'cairo.table.deleteViewModal.title'\n | 'cairo.table.deleteViewModal.deleteButton'\n | 'cairo.table.deleteViewModal.deleteButtonTwo'\n | 'cairo.table.deleteViewModal.cancelButton'\n | 'cairo.table.clearFilters.button'\n | 'cairo.table.saveView.button'\n | 'cairo.table.noFiltersApplied.label'\n | 'cairo.table.saveViewModal.title'\n | 'cairo.table.saveViewModal.body'\n | 'cairo.table.saveViewModal.learnMoreLink'\n | 'cairo.table.saveViewModal.nameLabel'\n | 'cairo.table.saveViewModal.placeholder'\n | 'cairo.table.custom-columns.button.tooltip'\n | 'cairo.viewDropdown.allOrders.defaultViews'\n | 'cairo.filtersPanel.noAppliedFilters.label'\n | 'cairo.filtersPanel.clear.button'\n | 'cairo.filtersPanel.saveView.button'\n | 'cairo.filtersPanel.done.button'\n | 'cairo.viewDropdown.unsavedView.status'\n | 'cairo.viewDropdown.category.savedViews'\n | 'cairo.viewDropdown.category.predefinedViews'\n | 'cairo.viewsDropdown.allItems.label'\n | 'cairo.noFiltersApplied.validationTooltip'\n | 'cairo.noViewName.validationTooltip'\n | 'cairo.saveViewModal.saveButton'\n | 'cairo.saveViewModal.cancelButton'\n | 'cairo.cancel.button'\n | 'cairo.delete.button'\n | 'cairo.offline'\n | 'cairo.deleteModal.title'\n | 'cairo.deleteModal.body'\n | 'cairo.selectPlaceholder'\n | 'cairo.moreFilters'\n | 'cairo.filtersPanel.header'\n | 'cairo.filtersPanel.sections.default.title'\n | 'cairo.toolbar.moreFiltersButton'\n | 'cairo.continue'\n | 'cairo.emptyState.title'\n | 'cairo.emptyState.subtitle.nothingMatchesCriteria'\n | 'cairo.emptyState.subtitle.nothingAvailable'\n | 'cairo.emptyState.reset.button'\n | 'cairo.clear'\n | 'cairo.searchPlaceholder'\n | 'cairo.selectAll'\n | 'cairo.deselectAll'\n | 'cairo.bulkSelected.withMaxNumber'\n | 'cairo.saveViewModal.error.message.unexpected'\n | 'cairo.toast.undo'\n | 'cairo.toast.retry'\n | 'cairo.toast.undone'\n | 'cairo.emptyState.title.nothingAvailable'\n | 'cairo.confirmModal.title'\n | 'cairo.confirm.button'\n | 'cairo.picker.createNew.button.tooltip'\n | 'cairo.picker.createNew.button'\n | 'cairo.moreActions'\n | 'cairo.connection.error.text'\n | 'cairo.emptyState.additem.text'\n | 'cairo.search.Tab.noresults.text'\n | 'cairo.technical.error.text'\n | 'cairo.search.filter.Tab.noresults.text'\n | 'cairo.emptyState.additem.cta'\n | 'cairo.emptyState.additem.title'\n | 'cairo.search.nothingMatches.text'\n | 'cairo.connection.error.title'\n | 'cairo.search.filter.nothingMatches.text'\n | 'cairo.technical.error.title'\n | 'cairo.error.tryAgain.cta'\n | 'cairo.export.successMessage'\n | 'cairo.export.exportTypeQuestionTitle'\n | 'cairo.export.selectedItems'\n | 'cairo.export.filteredItems'\n | 'cairo.export.exportToCSVMessage'\n | 'cairo.export.export'\n | 'cairo.export.cancelButton'\n | 'cairo.export.exporting'\n | 'cairo.export.exportingTitle'\n | 'cairo.export.exportingDescription'\n | 'cairo.export.allItems'\n | 'cairo.export.downloadManually'\n | 'cairo.export.leaveSiteTitle'\n | 'cairo.export.leaveSiteMessage'\n | 'cairo.export.cancelTheExport'\n | 'cairo.export.cancelTheExportGoBack'\n | 'cairo.export.exportFailed'\n | 'cairo.export.exportFailedMessage'\n | 'cairo.export.tryAgain'\n | 'cairo.export.cancelTheExportConfirm'\n | 'cairo.export.cancelMessage'\n | 'cairo.export.databaseIssueMessage'\n | 'cairo.export.overloadErrorMessage'\n | 'cairo.export.serverErrorMessage'\n | 'cairo.export.noPermissionsCTA'\n | 'cairo.export.noPermissionsMessage'\n | 'cairo.export.sessionExpiredMessage'\n | 'cairo.error.contactSupport.cta'\n | 'cairo.export.offlineMessage'\n | 'cairo.sortableColumns.modal.cancel'\n | 'cairo.sortableColumns.notification.undo'\n | 'cairo.sortableColumns.modal.CTA'\n | 'cairo.dragAndDrop.discardChanges.CTA'\n | 'cairo.dragAndDrop.discardChanges.title'\n | 'cairo.dragAndDrop.discardChanges.description'\n | 'cairo.dragAndDrop.note.learnMore'\n | 'cairo.dragAndDrop.discardChanges.cancel'\n | 'cairo.dragAndDrop.note'\n | 'cairo.dragAndDrop.error.toast'\n | 'cairo.dragAndDrop.leaveSiteTitle'\n | 'cairo.dragAndDrop.leaveSiteMessage'\n | 'cairo.dragAndDrop.reorderMode.toolbar.title'\n | 'cairo.dragAndDrop.reorderMode.toolbar.title.learnMore'\n | 'cairo.dragAndDrop.reorderMode.toolbar.cancel.cta'\n | 'cairo.dragAndDrop.reorderMode.toolbar.save.cta'\n | 'cairo.dragAndDrop.reorderMode.toast.success'\n | 'cairo.dragAndDrop.reorderMode.discardChanges.title'\n | 'cairo.dragAndDrop.reorderMode.discardChanges.description'\n | 'cairo.dragAndDrop.reorderMode.discardChanges.applyAndClose.CTA'\n | 'cairo.dragAndDrop.reorderMode.discardChanges.cancel.CTA'\n | 'cairo.emptyState.filters.nothingFound.title'\n | 'cairo.emptyState.filters.nothingFound.description'\n | 'cairo.dragAndDrop.leaveSite.modal.cancel.CTA'\n | 'cairo.dragAndDrop.leaveSite.modal.title'\n | 'cairo.filtersPanel.dateRange.title'\n | 'cairo.filtersPanel.date.7days'\n | 'cairo.filtersPanel.date.lastMonth'\n | 'cairo.emptyState.filters.nothingFound.clearFilters.CTA'\n | 'cairo.dragAndDrop.leaveSite.modal.description'\n | 'cairo.filtersPanel.date.title'\n | 'cairo.filtersPanel.time.title'\n | 'cairo.filtersPanel.date.none'\n | 'cairo.filtersPanel.date.custom'\n | 'cairo.filtersPanel.date.to.placeholder'\n | 'cairo.dragAndDrop.leaveSite.modal.leave.CTA'\n | 'cairo.filtersPanel.date.14days'\n | 'cairo.filtersPanel.date.from.placeholder'\n | 'cairo.table.custom-columns.title'\n | 'cairo.table.custom-columns.subtitle'\n | 'cairo.table.custom-columns.dragAndDrop.subtitle'\n | 'cairo.table.custom-columns.disabled.tooltip'\n | 'cairo.table.custom-columns.hidden.disabled.tooltip'\n | 'cairo.emptyState.subtitle.noFilterResults'\n | 'cairo.search.noresults.title'\n | 'cairo.manageView.saveChanges.disabled.predefinedView.tooltip'\n | 'cairo.manageView.Delete.CTA.error.toast'\n | 'cairo.manageView.Delete.disabled.predefinedView.tooltip'\n | 'cairo.manageView.Rename.disabled.tooltip'\n | 'cairo.manageView.CTA'\n | 'cairo.manageView.saveChanges.error.toast'\n | 'cairo.manageView.Rename.error.toast'\n | 'cairo.manageView.Rename.modal.cancel.CTA'\n | 'cairo.manageView.Rename.modal.field.title'\n | 'cairo.manageView.Delete.CTA'\n | 'cairo.manageView.saveChanges.CTA'\n | 'cairo.manageView.Rename.modal.title'\n | 'cairo.manageView.saveChanges.disabled.tooltip'\n | 'cairo.manageView.Rename.modal.save.CTA'\n | 'cairo.manageView.saveView.error.toast'\n | 'cairo.manageView.saveNewView.CTA'\n | 'cairo.manageView.Rename.CTA'\n | 'cairo.manageView.Rename.disabled.predefinedView.tooltip'\n | 'cairo.table.advanced-sorting.ascending.order'\n | 'cairo.table.advanced-sorting.subtitle'\n | 'cairo.table.advanced-sorting.disabled.cta.tooltip'\n | 'cairo.table.advanced-sorting.descending.order'\n | 'cairo.table.advanced-sorting.cta'\n | 'cairo.table.advanced-sorting.remove.button.tooltip'\n | 'cairo.table.advanced-sorting.dragAndDrop.tooltip'\n | 'cairo.table.advanced-sorting.sortManually.toast'\n | 'cairo.table.advanced-sorting.sortByColumns.toast'\n | 'cairo.table.advanced-sorting.button.tooltip'\n | 'cairo.dragAndDrop.list-aria-label.sr'\n | 'cairo.dragAndDrop.reorder-cancelled.sr'\n | 'cairo.dragAndDrop.live-region.itemGrabbed.sr'\n | 'cairo.manageView.tooltip'\n | 'matvey.test'\n | 'cairo.table.custom-columns.move.disabled.tooltip'\n | 'cairo.manageView.unsaved.tooltip'\n | 'cairo.table.advanced-sorting.title.tooltip'\n | 'cairo.selectorModal.searchEmptyState.subtitle'\n | 'cairo.selectorModal.searchEmptyState.changeFilter.subtitle'\n | 'cairo.collectionsPage.add.item.CTA'\n | 'section.header.folders'\n | 'section.header.items'\n | 'cairo.folders.showAll.button'\n | 'cairo.folders.showLess.button'\n | 'cairo.passiveEmptyState.title'\n | 'cairo.passiveEmptyState.subtitle'\n | 'cairo.viewsDropdown.nothingMatches.text'\n | 'cairo.manageView.setAsDefault.CTA'\n | 'cairo.manageView.setAsDefault.reset.CTA'\n | 'cairo.manageView.setAsDefault.tooltip'\n | 'cairo.filtersPanel.default.All'\n | 'cairo.manageView.setAsDefault.reset.tooltip'\n | 'cairo.dropdownSearch.select.filers.placeholder'\n | 'cairo.dropdownSearch.select.filers.clear'\n | 'cairo.dropdownSearch.filters.noResults'\n | 'cairo.pickerModal.back.button'\n | 'cairo.manageView.setAsDefault.reset.success.toast'\n | 'cairo.appliedFilters.applyAndClose.CTA'\n | 'cairo.appliedFilters.discardChanges.description'\n | 'cairo.appliedFilters.discardChanges.title'\n | 'cairo.appliedFilters.discardChanges.CTA'\n | 'cair.appliedFilters.Apply.CTA'\n | 'cairo.appliedFilters.filteredBy.label'\n | 'cairo.tags.tagsWidget.title'\n | 'cairo.tags.tagsWidget.subtitle'\n | 'cairo.tags.tagsWidget.input.placeholder'\n | 'cairo.tags.tagsWidget.add.CTA'\n | 'cairo.tags.tagsWidget.options.manage.CTA'\n | 'cairo.tags.manageTags.modal.subtitle'\n | 'cairo.tags.manageTags.modal.add.CTA'\n | 'cairo.tags.manageTags.modal.search.placeholder'\n | 'cairo.tags.manageTags.modal.close.CTA'\n | 'cairo.tags.manageTags.modal.list.action.rename.CTA'\n | 'cairo.tags.manageTags.modal.list.action.delete.CTA'\n | 'cairo.tags.manageTags.modal.list.input.placeholder'\n | 'cairo.tags.manageTags.modal.list.input.cancel.CTA'\n | 'cairo.tags.manageTags.modal.list.input.save.CTA'\n | 'cairo.tags.manageTags.modal.list.input.validation.exists'\n | 'cairo.tags.manageTags.modal.list.input.validation.emptyName'\n | 'cairo.tags.manageTags.modal.toast.create.success'\n | 'cairo.tags.manageTags.modal.toast.create.error'\n | 'cairo.tags.manageTags.modal.toast.rename.success'\n | 'cairo.tags.manageTags.modal.toast.rename.error'\n | 'cairo.tags.manageTags.modal.toast.delete.success'\n | 'cairo.tags.manageTags.modal.toast.delete.error'\n | 'cairo.tags.manageTags.modal.deleteModal.title'\n | 'cairo.customFields.addCustomField.CTA'\n | 'cairo.customFields.addCustomField.modal.add.CTA'\n | 'cairo.customFields.addCustomField.modal.subtitle.note'\n | 'cairo.customFields.addCustomField.modal.PII'\n | 'cairo.customFields.addCustomField.modal.cancel.CTA'\n | 'cairo.customFields.addCustomField.modal.fieldName'\n | 'cairo.customFields.addCustomField.modal.fieldType'\n | 'cairo.customFields.addCustomField.modal.title'\n | 'cairo.customFields.addCustomField.modal.subtitle'\n | 'cairo.customFields.addCustomField.modal.PII.learnMore'\n | 'cairo.customFields.addCustomField.modal.fieldName.placeholder'\n | 'cairo.customFields.addCustomField.modal.fieldType.placeholder'\n | 'cairo.customFields.addCustomField.modal.advancedSettings.siteCollaborators'\n | 'cairo.customFields.addCustomField.modal.advancedSettings.key.tooltip'\n | 'cairo.customFields.addCustomField.modal.advancedSettings.readPermissions.tooltip'\n | 'cairo.customFields.addCustomField.modal.advancedSettings'\n | 'cairo.customFields.addCustomField.modal.advancedSettings.key.placeholder'\n | 'cairo.customFields.addCustomField.modal.advancedSettings.key.title'\n | 'cairo.customFields.addCustomField.modal.advancedSettings.readPermissions'\n | 'cairo.customFields.addCustomField.modal.advancedSettings.externalApps'\n | 'cairo.customFields.addCustomField.modal.advancedSettings.read'\n | 'cairo.customFields.addCustomField.modal.advancedSettings.write'\n | 'cairo.customFields.addCustomField.modal.advancedSettings.externalApps.tooltip'\n | 'cairo.customFields.fieldType.shortText'\n | 'cairo.customFields.fieldType.numberDecimal.placeholder'\n | 'cairo.customFields.fieldType.date'\n | 'cairo.customFields.fieldType.numberInteger.placeholder'\n | 'cairo.customFields.fieldType.longText.Name.placeholder'\n | 'cairo.customFields.fieldType.dropdownList'\n | 'cairo.customFields.fieldType.dateAndTime'\n | 'cairo.customFields.fieldType.dateAndTime.Name.placeholder'\n | 'cairo.customFields.fieldType.dateAndTime.invalid.value'\n | 'cairo.customFields.fieldType.longText.placeholder'\n | 'cairo.customFields.fieldType.time.inputTitle'\n | 'cairo.customFields.addCustomField.modal.advancedSettings.siteVisitors'\n | 'cairo.customFields.fieldType.date.inputTitle'\n | 'cairo.customFields.fieldType.longText'\n | 'cairo.customFields.fieldType.numberInteger.Name.placeholder'\n | 'cairo.customFields.fieldType.numberDecimal.Name.placeholder'\n | 'cairo.customFields.fieldType.checkbox'\n | 'cairo.customFields.fieldType.numberInteger'\n | 'cairo.customFields.fieldType.date.placeholder'\n | 'cairo.customFields.addCustomField.modal.advancedSettings.siteVisitors.tooltip'\n | 'cairo.customFields.fieldType.shortText.Name.placeholder'\n | 'cairo.customFields.fieldType.numberDecimal'\n | 'cairo.customFields.fieldType.Time.placeholder'\n | 'cairo.customFields.fieldType.shortText.placeholder'\n | 'cairo.customFields.fieldType.date.Name.placeholder'\n | 'cairo.customFields.successToast'\n | 'cairo.customFields.addCustomField.modal.sameName.error'\n | 'cairo.customFields.addCustomField.modal.sameKey.error'\n | 'cairo.customFields.addCustomField.modal.keyFormat.error'\n | 'cairo.customFields.addCustomField.modal.emptyFieldType.error'\n | 'cairo.customFields.addCustomField.modal.emptyFieldName.error'\n | 'cairo.export.successMessage.downloadLink'\n | 'cairo.customFields.editCustomField.fieldType.tooltip'\n | 'cairo.customFields.manageFields.subtitle'\n | 'cairo.customFields.editCustomField.modal.title'\n | 'cairo.customFields.showAll.button'\n | 'cairo.customFields.entityPage.title'\n | 'cairo.customFields.entityPage.emptyState.title'\n | 'cairo.customFields.entityPage.emptyState.subtitle'\n | 'cairo.customFields.manageFields.CTA'\n | 'cairo.customFields.archive.CTA'\n | 'cairo.customFields.editCustomField.fieldKey.tooltip'\n | 'cairo.customFields.editCustomField.success.toast'\n | 'cairo.customFields.edit.CTA'\n | 'cairo.customFields.editCustomField.save.CTA'\n | 'cairo.customFields.manageFields.title'\n | 'cairo.customFields.archive.modal.cancel.CTA'\n | 'cairo.customFields.archive.modal.title'\n | 'cairo.customFields.archive.modal.CTA'\n | 'cairo.customFields.archive.modal.description'\n | 'cairo.customFields.archive.success.toast'\n | 'cairo.customFields.fieldType.dropdownList.Name.placeholder'\n | 'cairo.customFields.fieldType.checkbox.Name.placeholder'\n | 'cairo.customFields.fieldType.dropdownList.placeholder'\n | 'cairo.customFields.fieldType.dropdownList.inputTitle'\n | 'cairo.customFields.fieldType.dropdownList.addOption.CTA'\n | 'cairo.customFields.addCustomField.dropdownList.emptyFieldName.error'\n | 'cairo.customFields.entityPage.subtitle'\n | 'cairo.customFields.technical.error.title'\n | 'cairo.customFields.maxFields'\n | 'cairo.customFields.modal.technicalError'\n | 'cairo.customFields.modal.networkError'\n | 'cairo.customFields.modal.maxFieldsError'\n | 'cairo.customFields.modal.dropDownlist.option.error'\n | 'cairo.customFields.archive.technicalError'\n | 'cairo.customFields.fetch.technicalError'\n | 'cairo.customFields.emptyState.title'\n | 'cairo.customFields.emptyStatePassive.title'\n | 'cairo.customFields.emptyState.subtitle'\n | 'cairo.customFields.emptyStatePassive.subtitle'\n | 'cairo.customFields.addCustomField.modal.advancedSettings.siteVisitors.note'\n | 'cairo.customFields.writePermission.tooltip'\n | 'cairo.customFields.booleanValue.true'\n | 'cairo.customFields.booleanValue.false'\n | 'cairo.customFields.widget.showMore.button'\n | 'cairo.customFields.widget.showLess.button'\n | 'cairo.entityPage.header.save.CTA'\n | 'cairo.entityPage.header.cancel.CTA'\n | 'cairo.entityPage.success.toast'\n | 'cairo.entityPage.saveError-technical.toast.description'\n | 'cairo.entityPage.saveError-offline.toast.description'\n | 'cairo.tags.loadTags.error.CTA'\n | 'cairo.tags.collectionPage.tagsColumn.title'\n | 'cairo.tags.loadTags.error.title'\n | 'cairo.tags.collectionPage.toast.create.error'\n | 'cairo.tags.applyChanges.toast.success'\n | 'cairo.tags.tagsWidget.create.CTA'\n | 'cairo.tags.collectionPage.tagsColumn.emptyState.body'\n | 'cairo.tags.collectionPage.popover.manage.CTA'\n | 'cairo.tags.applyChanges.toast.undo.CTA'\n | 'cairo.tags.tagsWidget.emptyState.body'\n | 'cairo.tags.collectionPage.add.CTA'\n | 'cairo.tags.collectionPage.popover.close.CTA'\n | 'cairo.tags.tagsWidget.noPermissions.tooltip'\n | 'cairo.tags.collectionPage.tagsColumn.manage.CTA'\n | 'airo.tags.collectionPage.popover.emptyState.body'\n | 'cairo.tags.loadTags.error.body'\n | 'cairo.tags.manageTags.modal.emptyState.title'\n | 'cairo.tags.collectionPage.popover.emptyState.body'\n | 'cairo.tags.manageTags.modal.emptyState.body'\n | 'cairo.tags.collectionPage.toast.update.error'\n | 'cairo.tags.collectionPage.popover.search.placeholder'\n | 'cairo.tags.collectionPage.popover.emptyState.search.placeholder'\n | 'cairo.tags.collectionPage.applyChanges.CTA'\n | 'cairo.tags.manageTags.modal.list.input.validation.noName'\n | 'cairo.tags.collectionPage.popover.loadTags.error.body'\n | 'cairo.dropdownSearch.filters.emptyState'\n | 'cairo.page.loadError.failedState.title'\n | 'cairo.entityPage.widgetError.TPAconnectionFail.CTA'\n | 'cairo.page.loadError.failedState.CTA'\n | 'cairo.entityPage.widgetError.TPAconnectionFail.description'\n | 'cairo.page.loadError.failedState.description'\n | 'cairo.entityPage.widgetError.TPAconnectionFail.title'\n | 'cairo.tags.popover.tagCreated.toast.success'\n | 'cairo.tags.filterPanel.dropdown.title'\n | 'cairo.tags.filterPanel.dropdown.placeholder'\n | 'cairo.filtersPanel.date.today'\n | 'cairo.filtersPanel.date.next7Days'\n | 'cairo.filtersPanel.date.next3Days'\n | 'cairo.filtersPanel.date.next30Days'\n | 'cairo.filtersPanel.date.tomorrow'\n | 'cairo.tags.popover.bulkItemLimit.tooltip'\n | 'cairo.table.advanced-sorting.button.cta'\n | 'cairo.table.custom-columns.button.cta'\n | 'cairo.tags.manageTags.modal.deleteModal.cancel.CTA'\n | 'cairo.tags.manageTags.modal.deleteModal.delete.CTA'\n | 'cairo.collectionsPage.edit.CTA'\n | 'cairo.page.primary.cta'\n | 'cairo.table.subtitle.learnMore'\n | 'cairo.table.summaryBar.loadError'\n | 'cairo.table.summaryBar.loadError.cta'\n | 'cairo.emptyState.premium.cta'\n | 'cairo.emptyState.premium.title'\n | 'cairo.emptyState.premium.text'\n | 'cairo.customFields.entityPage.sectionTitle'\n | 'cairo.entityPage.header.subscribe.CTA'\n | 'cairo.entityPage.header.connect.CTA'\n | 'cairo.entityPage.header.apply.CTA'\n | 'cairo.entityPage.header.publish.CTA'\n | 'cairo.entityPage.header.activate.CTA'\n | 'cairo.updatedView.collectionPage.toast.desc'\n | 'cairo.updatedView.collectionPage.toast.cta'\n | 'cairo.subtitle.learnMore'\n | 'cairo.tags.creationLimitReached.error'\n | 'cairo.tags.popover.creationLimitReached.error'\n | 'cairo.entityPage.header.submit.CTA'\n | 'cairo.customFields.addCustomField.modal.PII-setting.toggle.name'\n | 'cairo.customFields.addCustomField.modal.PII-setting.toggle.info'\n | 'cairo.customFields.addCustomField.modal.PII-setting.toggle.createNote'\n | 'cairo.customFields.addCustomField.modal.PII-setting.toggle.editNote'\n | 'cairo.collectionPage.appInstall-inContext.moreActions.relatedApps.CTA'\n | 'cairo.tags.fqdn-not-found.error'\n | 'cairo.tags.fqdn-not-found.error.cta'\n | 'cairo.tags.fqdn-not-found.manageTagsModal.error'\n | 'cairo.customFields.updateDataExtension.changing-fields-not-allowed.error'\n | 'cairo.export.CreateExportAsyncJob.method-endpoint-not-found.error'\n | 'cairo.export.GetExportAsyncJob.job-not-found.error'\n | 'cairo.export.get-async-job.error.internal'\n | 'cairo.customFields.updateDataExtension.removing-fields-not-allowed.error'\n | 'cairo.customFields.updateDataExtension.fqdn-not-found.error'\n | 'cairo.customFields.updateDataExtension.fqdn-not-extensible.error'\n | 'cairo.customFields.createDataExtension.invalid-namespace.error'\n | 'cairo.customFields.updateDataExtension.invalid-namespace.error'\n | 'cairo.customFields.createDataExtension.fqdn-not-found.error'\n | 'cairo.customFields.createDataExtension.fqdn-not-extensible.error'\n | 'cairo.customFields.fieldType.checkbox.Selected.checked'\n | 'cairo.customFields.fieldType.checkbox.Selected.NotChecked'\n | 'cairo.collectionPage.nested.expandAll.tooltip'\n | 'cairo.collectionPage.nested.collapseAll.tooltip'\n | 'cairo.filtersPanel.numRange.title'\n | 'cairo.filtersPanel.numRange.maxRange.error'\n | 'cairo.filtersPanel.numRange.minRange.error'\n | 'cairo.filtersPanel.numRange.maxRange-to'\n | 'cairo.filtersPanel.numRange.min-from';\n\nexport type Translate = {\n (key: TranslationsKeys, params?: Record<string, string | number>): string;\n (\n key: 'cairo.filtersPanel.appliedFilters.label',\n params: { numberAppliedFilters: number },\n ): string;\n (\n key: 'cairo.table.deleteViewModal.deleteBody',\n params: { viewName: string },\n ): string;\n (key: 'cairo.entity.item', params: { num: number }): string;\n (key: 'cairo.deleteSuccess', params: { itemName: string }): string;\n (key: 'cairo.selected', params: { total: number }): string;\n (key: 'cairo.appliedFilters', params: { num: number }): string;\n (key: 'cairo.bulkSelected', params: { num: number }): string;\n (\n key: 'cairo.bulkSelectedWithTotal',\n params: { num: number; total: number },\n ): string;\n (key: 'cairo.bulkSelected.selectUpTo', params: { max: number }): string;\n (\n key: 'cairo.emptyState.subtitle.nothingMatches',\n params: { term: string },\n ): string;\n (\n key: 'cairo.picker.itemsSelected',\n params: { total: number; max: number },\n ): string;\n (\n key: 'cairo.search.Tab.noresults.title',\n params: { tabName: string },\n ): string;\n (key: 'cairo.search.nothingMatches.title', params: { term: string }): string;\n (\n key: 'cairo.sortableColumns.modal.title',\n params: { columnTitle: string },\n ): string;\n (\n key: 'cairo.sortableColumns.modal.description',\n params: { columnTitle: string },\n ): string;\n (\n key: 'cairo.sortableColumns.notification',\n params: { columnTitle: string },\n ): string;\n (key: 'cairo.deleteView.Success.toast', params: { viewName: string }): string;\n (key: 'cairo.saveView.Success.toast', params: { viewName: string }): string;\n (\n key: 'cairo.manageView.Rename.Success.toast',\n params: { oldViewName: string; newViewName: string },\n ): string;\n (\n key: 'cairo.manageView.saveChanges.Success.toast',\n params: { viewName: string },\n ): string;\n (\n key: 'cairo.dragAndDrop.live-region.itemDragged.sr',\n params: { currentNumber: number; totalNumber: number },\n ): string;\n (\n key: 'cairo.dragAndDrop.button-role-label.sr',\n params: { itemName: string },\n ): string;\n (\n key: 'cairo.dragAndDrop.live-region.itemDropped.sr',\n params: { currentNumber: number },\n ): string;\n (\n key: 'cairo.selector.modal.items.selected',\n params: { total: number },\n ): string;\n (\n key: 'cairo.bulkActions.max.selection',\n params: { total: number; max: number },\n ): string;\n (\n key: 'cairo.manageView.setAsDefault.error.toast',\n params: { viewName: string },\n ): string;\n (\n key: 'cairo.manageView.setAsDefault.success.toast',\n params: { viewName: string },\n ): string;\n (\n key: 'cairo.dropdownSearch.filters.selected',\n params: { total: number },\n ): string;\n (key: 'cairo.appliedFilters.selected', params: { num: number }): string;\n (\n key: 'cairo.tags.tagsWidget.options.add.CTA',\n params: { tagName: string },\n ): string;\n (\n key: 'cairo.tags.manageTags.modal.title',\n params: { EntityName: string },\n ): string;\n (\n key: 'cairo.tags.manageTags.modal.list.input.validation.maxLength',\n params: { count: number },\n ): string;\n (\n key: 'cairo.tags.manageTags.modal.deleteModal.body',\n params: { name: string },\n ): string;\n (\n key: 'cairo.customFields.maxFields.tooltip',\n params: { max: number },\n ): string;\n (key: 'cairo.a11y.liveRegion.resultsFound', params: { num: number }): string;\n (\n key: 'cairo.tags.collectionPage.popover.create.CTA',\n params: { tagName: string },\n ): string;\n (\n key: 'cairo.tags.manageTags.modal.list.create.CTA',\n params: { tagName: string },\n ): string;\n (\n key: 'cairo.table.summaryBar.list.item',\n params: { title: string; value: string },\n ): string;\n (\n key: 'cairo.collectionPage.nestedLimit.tooltip',\n params: { subCatsAmount: number },\n ): string;\n (\n key: 'cairo.settings.search.anchor-doesnt-exist.error',\n params: { anchorName: string },\n ): string;\n};\n"],"mappings":"","ignoreList":[]}
1
+ {"version":3,"names":[],"sources":["../../../src/services/translations.ts"],"sourcesContent":["// DO NOT UPDATE THIS FILE! This file was auto-generated by generate-keys.ts\nexport type TranslationsKeys =\n | 'cairo.table.filter.button'\n | 'cairo.table.listView'\n | 'cairo.table.gridView'\n | 'cairo.table.deleteViewModal.title'\n | 'cairo.table.deleteViewModal.deleteButton'\n | 'cairo.table.deleteViewModal.deleteButtonTwo'\n | 'cairo.table.deleteViewModal.cancelButton'\n | 'cairo.table.clearFilters.button'\n | 'cairo.table.saveView.button'\n | 'cairo.table.noFiltersApplied.label'\n | 'cairo.table.saveViewModal.title'\n | 'cairo.table.saveViewModal.body'\n | 'cairo.table.saveViewModal.learnMoreLink'\n | 'cairo.table.saveViewModal.nameLabel'\n | 'cairo.table.saveViewModal.placeholder'\n | 'cairo.table.custom-columns.button.tooltip'\n | 'cairo.viewDropdown.allOrders.defaultViews'\n | 'cairo.filtersPanel.noAppliedFilters.label'\n | 'cairo.filtersPanel.clear.button'\n | 'cairo.filtersPanel.saveView.button'\n | 'cairo.filtersPanel.done.button'\n | 'cairo.viewDropdown.unsavedView.status'\n | 'cairo.viewDropdown.category.savedViews'\n | 'cairo.viewDropdown.category.predefinedViews'\n | 'cairo.viewsDropdown.allItems.label'\n | 'cairo.noFiltersApplied.validationTooltip'\n | 'cairo.noViewName.validationTooltip'\n | 'cairo.saveViewModal.saveButton'\n | 'cairo.saveViewModal.cancelButton'\n | 'cairo.cancel.button'\n | 'cairo.delete.button'\n | 'cairo.offline'\n | 'cairo.deleteModal.title'\n | 'cairo.deleteModal.body'\n | 'cairo.selectPlaceholder'\n | 'cairo.moreFilters'\n | 'cairo.filtersPanel.header'\n | 'cairo.filtersPanel.sections.default.title'\n | 'cairo.toolbar.moreFiltersButton'\n | 'cairo.continue'\n | 'cairo.emptyState.title'\n | 'cairo.emptyState.subtitle.nothingMatchesCriteria'\n | 'cairo.emptyState.subtitle.nothingAvailable'\n | 'cairo.emptyState.reset.button'\n | 'cairo.clear'\n | 'cairo.searchPlaceholder'\n | 'cairo.selectAll'\n | 'cairo.deselectAll'\n | 'cairo.bulkSelected.withMaxNumber'\n | 'cairo.saveViewModal.error.message.unexpected'\n | 'cairo.toast.undo'\n | 'cairo.toast.retry'\n | 'cairo.toast.undone'\n | 'cairo.emptyState.title.nothingAvailable'\n | 'cairo.confirmModal.title'\n | 'cairo.confirm.button'\n | 'cairo.picker.createNew.button.tooltip'\n | 'cairo.picker.createNew.button'\n | 'cairo.moreActions'\n | 'cairo.connection.error.text'\n | 'cairo.emptyState.additem.text'\n | 'cairo.search.Tab.noresults.text'\n | 'cairo.technical.error.text'\n | 'cairo.search.filter.Tab.noresults.text'\n | 'cairo.emptyState.additem.cta'\n | 'cairo.emptyState.additem.title'\n | 'cairo.search.nothingMatches.text'\n | 'cairo.connection.error.title'\n | 'cairo.search.filter.nothingMatches.text'\n | 'cairo.technical.error.title'\n | 'cairo.error.tryAgain.cta'\n | 'cairo.export.successMessage'\n | 'cairo.export.exportTypeQuestionTitle'\n | 'cairo.export.selectedItems'\n | 'cairo.export.filteredItems'\n | 'cairo.export.exportToCSVMessage'\n | 'cairo.export.export'\n | 'cairo.export.cancelButton'\n | 'cairo.export.exporting'\n | 'cairo.export.exportingTitle'\n | 'cairo.export.exportingDescription'\n | 'cairo.export.allItems'\n | 'cairo.export.downloadManually'\n | 'cairo.export.leaveSiteTitle'\n | 'cairo.export.leaveSiteMessage'\n | 'cairo.export.cancelTheExport'\n | 'cairo.export.cancelTheExportGoBack'\n | 'cairo.export.exportFailed'\n | 'cairo.export.exportFailedMessage'\n | 'cairo.export.tryAgain'\n | 'cairo.export.cancelTheExportConfirm'\n | 'cairo.export.cancelMessage'\n | 'cairo.export.databaseIssueMessage'\n | 'cairo.export.overloadErrorMessage'\n | 'cairo.export.serverErrorMessage'\n | 'cairo.export.noPermissionsCTA'\n | 'cairo.export.noPermissionsMessage'\n | 'cairo.export.sessionExpiredMessage'\n | 'cairo.error.contactSupport.cta'\n | 'cairo.export.offlineMessage'\n | 'cairo.sortableColumns.modal.cancel'\n | 'cairo.sortableColumns.notification.undo'\n | 'cairo.sortableColumns.modal.CTA'\n | 'cairo.dragAndDrop.discardChanges.CTA'\n | 'cairo.dragAndDrop.discardChanges.title'\n | 'cairo.dragAndDrop.discardChanges.description'\n | 'cairo.dragAndDrop.note.learnMore'\n | 'cairo.dragAndDrop.discardChanges.cancel'\n | 'cairo.dragAndDrop.note'\n | 'cairo.dragAndDrop.error.toast'\n | 'cairo.dragAndDrop.leaveSiteTitle'\n | 'cairo.dragAndDrop.leaveSiteMessage'\n | 'cairo.dragAndDrop.reorderMode.toolbar.title'\n | 'cairo.dragAndDrop.reorderMode.toolbar.title.learnMore'\n | 'cairo.dragAndDrop.reorderMode.toolbar.cancel.cta'\n | 'cairo.dragAndDrop.reorderMode.toolbar.save.cta'\n | 'cairo.dragAndDrop.reorderMode.toast.success'\n | 'cairo.dragAndDrop.reorderMode.discardChanges.title'\n | 'cairo.dragAndDrop.reorderMode.discardChanges.description'\n | 'cairo.dragAndDrop.reorderMode.discardChanges.applyAndClose.CTA'\n | 'cairo.dragAndDrop.reorderMode.discardChanges.cancel.CTA'\n | 'cairo.emptyState.filters.nothingFound.title'\n | 'cairo.emptyState.filters.nothingFound.description'\n | 'cairo.dragAndDrop.leaveSite.modal.cancel.CTA'\n | 'cairo.dragAndDrop.leaveSite.modal.title'\n | 'cairo.filtersPanel.dateRange.title'\n | 'cairo.filtersPanel.date.7days'\n | 'cairo.filtersPanel.date.lastMonth'\n | 'cairo.emptyState.filters.nothingFound.clearFilters.CTA'\n | 'cairo.dragAndDrop.leaveSite.modal.description'\n | 'cairo.filtersPanel.date.title'\n | 'cairo.filtersPanel.time.title'\n | 'cairo.filtersPanel.date.none'\n | 'cairo.filtersPanel.date.custom'\n | 'cairo.filtersPanel.date.to.placeholder'\n | 'cairo.dragAndDrop.leaveSite.modal.leave.CTA'\n | 'cairo.filtersPanel.date.14days'\n | 'cairo.filtersPanel.date.from.placeholder'\n | 'cairo.table.custom-columns.title'\n | 'cairo.table.custom-columns.subtitle'\n | 'cairo.table.custom-columns.dragAndDrop.subtitle'\n | 'cairo.table.custom-columns.disabled.tooltip'\n | 'cairo.table.custom-columns.hidden.disabled.tooltip'\n | 'cairo.emptyState.subtitle.noFilterResults'\n | 'cairo.search.noresults.title'\n | 'cairo.manageView.saveChanges.disabled.predefinedView.tooltip'\n | 'cairo.manageView.Delete.CTA.error.toast'\n | 'cairo.manageView.Delete.disabled.predefinedView.tooltip'\n | 'cairo.manageView.Rename.disabled.tooltip'\n | 'cairo.manageView.CTA'\n | 'cairo.manageView.saveChanges.error.toast'\n | 'cairo.manageView.Rename.error.toast'\n | 'cairo.manageView.Rename.modal.cancel.CTA'\n | 'cairo.manageView.Rename.modal.field.title'\n | 'cairo.manageView.Delete.CTA'\n | 'cairo.manageView.saveChanges.CTA'\n | 'cairo.manageView.Rename.modal.title'\n | 'cairo.manageView.saveChanges.disabled.tooltip'\n | 'cairo.manageView.Rename.modal.save.CTA'\n | 'cairo.manageView.saveView.error.toast'\n | 'cairo.manageView.saveNewView.CTA'\n | 'cairo.manageView.Rename.CTA'\n | 'cairo.manageView.Rename.disabled.predefinedView.tooltip'\n | 'cairo.table.advanced-sorting.ascending.order'\n | 'cairo.table.advanced-sorting.subtitle'\n | 'cairo.table.advanced-sorting.disabled.cta.tooltip'\n | 'cairo.table.advanced-sorting.descending.order'\n | 'cairo.table.advanced-sorting.cta'\n | 'cairo.table.advanced-sorting.remove.button.tooltip'\n | 'cairo.table.advanced-sorting.dragAndDrop.tooltip'\n | 'cairo.table.advanced-sorting.sortManually.toast'\n | 'cairo.table.advanced-sorting.sortByColumns.toast'\n | 'cairo.table.advanced-sorting.button.tooltip'\n | 'cairo.dragAndDrop.list-aria-label.sr'\n | 'cairo.dragAndDrop.reorder-cancelled.sr'\n | 'cairo.dragAndDrop.live-region.itemGrabbed.sr'\n | 'cairo.manageView.tooltip'\n | 'matvey.test'\n | 'cairo.table.custom-columns.move.disabled.tooltip'\n | 'cairo.manageView.unsaved.tooltip'\n | 'cairo.table.advanced-sorting.title.tooltip'\n | 'cairo.selectorModal.searchEmptyState.subtitle'\n | 'cairo.selectorModal.searchEmptyState.changeFilter.subtitle'\n | 'cairo.collectionsPage.add.item.CTA'\n | 'section.header.folders'\n | 'section.header.items'\n | 'cairo.folders.showAll.button'\n | 'cairo.folders.showLess.button'\n | 'cairo.passiveEmptyState.title'\n | 'cairo.passiveEmptyState.subtitle'\n | 'cairo.viewsDropdown.nothingMatches.text'\n | 'cairo.manageView.setAsDefault.CTA'\n | 'cairo.manageView.setAsDefault.reset.CTA'\n | 'cairo.manageView.setAsDefault.tooltip'\n | 'cairo.filtersPanel.default.All'\n | 'cairo.manageView.setAsDefault.reset.tooltip'\n | 'cairo.dropdownSearch.select.filers.placeholder'\n | 'cairo.dropdownSearch.select.filers.clear'\n | 'cairo.dropdownSearch.filters.noResults'\n | 'cairo.pickerModal.back.button'\n | 'cairo.manageView.setAsDefault.reset.success.toast'\n | 'cairo.appliedFilters.applyAndClose.CTA'\n | 'cairo.appliedFilters.discardChanges.description'\n | 'cairo.appliedFilters.discardChanges.title'\n | 'cairo.appliedFilters.discardChanges.CTA'\n | 'cair.appliedFilters.Apply.CTA'\n | 'cairo.appliedFilters.filteredBy.label'\n | 'cairo.tags.tagsWidget.title'\n | 'cairo.tags.tagsWidget.subtitle'\n | 'cairo.tags.tagsWidget.input.placeholder'\n | 'cairo.tags.tagsWidget.add.CTA'\n | 'cairo.tags.tagsWidget.options.manage.CTA'\n | 'cairo.tags.manageTags.modal.subtitle'\n | 'cairo.tags.manageTags.modal.add.CTA'\n | 'cairo.tags.manageTags.modal.search.placeholder'\n | 'cairo.tags.manageTags.modal.close.CTA'\n | 'cairo.tags.manageTags.modal.list.action.rename.CTA'\n | 'cairo.tags.manageTags.modal.list.action.delete.CTA'\n | 'cairo.tags.manageTags.modal.list.input.placeholder'\n | 'cairo.tags.manageTags.modal.list.input.cancel.CTA'\n | 'cairo.tags.manageTags.modal.list.input.save.CTA'\n | 'cairo.tags.manageTags.modal.list.input.validation.exists'\n | 'cairo.tags.manageTags.modal.list.input.validation.emptyName'\n | 'cairo.tags.manageTags.modal.toast.create.success'\n | 'cairo.tags.manageTags.modal.toast.create.error'\n | 'cairo.tags.manageTags.modal.toast.rename.success'\n | 'cairo.tags.manageTags.modal.toast.rename.error'\n | 'cairo.tags.manageTags.modal.toast.delete.success'\n | 'cairo.tags.manageTags.modal.toast.delete.error'\n | 'cairo.tags.manageTags.modal.deleteModal.title'\n | 'cairo.customFields.addCustomField.CTA'\n | 'cairo.customFields.addCustomField.modal.add.CTA'\n | 'cairo.customFields.addCustomField.modal.subtitle.note'\n | 'cairo.customFields.addCustomField.modal.PII'\n | 'cairo.customFields.addCustomField.modal.cancel.CTA'\n | 'cairo.customFields.addCustomField.modal.fieldName'\n | 'cairo.customFields.addCustomField.modal.fieldType'\n | 'cairo.customFields.addCustomField.modal.title'\n | 'cairo.customFields.addCustomField.modal.subtitle'\n | 'cairo.customFields.addCustomField.modal.PII.learnMore'\n | 'cairo.customFields.addCustomField.modal.fieldName.placeholder'\n | 'cairo.customFields.addCustomField.modal.fieldType.placeholder'\n | 'cairo.customFields.addCustomField.modal.advancedSettings.siteCollaborators'\n | 'cairo.customFields.addCustomField.modal.advancedSettings.key.tooltip'\n | 'cairo.customFields.addCustomField.modal.advancedSettings.readPermissions.tooltip'\n | 'cairo.customFields.addCustomField.modal.advancedSettings'\n | 'cairo.customFields.addCustomField.modal.advancedSettings.key.placeholder'\n | 'cairo.customFields.addCustomField.modal.advancedSettings.key.title'\n | 'cairo.customFields.addCustomField.modal.advancedSettings.readPermissions'\n | 'cairo.customFields.addCustomField.modal.advancedSettings.externalApps'\n | 'cairo.customFields.addCustomField.modal.advancedSettings.read'\n | 'cairo.customFields.addCustomField.modal.advancedSettings.write'\n | 'cairo.customFields.addCustomField.modal.advancedSettings.externalApps.tooltip'\n | 'cairo.customFields.fieldType.shortText'\n | 'cairo.customFields.fieldType.numberDecimal.placeholder'\n | 'cairo.customFields.fieldType.date'\n | 'cairo.customFields.fieldType.numberInteger.placeholder'\n | 'cairo.customFields.fieldType.longText.Name.placeholder'\n | 'cairo.customFields.fieldType.dropdownList'\n | 'cairo.customFields.fieldType.dateAndTime'\n | 'cairo.customFields.fieldType.dateAndTime.Name.placeholder'\n | 'cairo.customFields.fieldType.dateAndTime.invalid.value'\n | 'cairo.customFields.fieldType.longText.placeholder'\n | 'cairo.customFields.fieldType.time.inputTitle'\n | 'cairo.customFields.addCustomField.modal.advancedSettings.siteVisitors'\n | 'cairo.customFields.fieldType.date.inputTitle'\n | 'cairo.customFields.fieldType.longText'\n | 'cairo.customFields.fieldType.numberInteger.Name.placeholder'\n | 'cairo.customFields.fieldType.numberDecimal.Name.placeholder'\n | 'cairo.customFields.fieldType.checkbox'\n | 'cairo.customFields.fieldType.numberInteger'\n | 'cairo.customFields.fieldType.date.placeholder'\n | 'cairo.customFields.addCustomField.modal.advancedSettings.siteVisitors.tooltip'\n | 'cairo.customFields.fieldType.shortText.Name.placeholder'\n | 'cairo.customFields.fieldType.numberDecimal'\n | 'cairo.customFields.fieldType.Time.placeholder'\n | 'cairo.customFields.fieldType.shortText.placeholder'\n | 'cairo.customFields.fieldType.date.Name.placeholder'\n | 'cairo.customFields.successToast'\n | 'cairo.customFields.addCustomField.modal.sameName.error'\n | 'cairo.customFields.addCustomField.modal.sameKey.error'\n | 'cairo.customFields.addCustomField.modal.keyFormat.error'\n | 'cairo.customFields.addCustomField.modal.emptyFieldType.error'\n | 'cairo.customFields.addCustomField.modal.emptyFieldName.error'\n | 'cairo.export.successMessage.downloadLink'\n | 'cairo.customFields.editCustomField.fieldType.tooltip'\n | 'cairo.customFields.manageFields.subtitle'\n | 'cairo.customFields.editCustomField.modal.title'\n | 'cairo.customFields.showAll.button'\n | 'cairo.customFields.entityPage.title'\n | 'cairo.customFields.entityPage.emptyState.title'\n | 'cairo.customFields.entityPage.emptyState.subtitle'\n | 'cairo.customFields.manageFields.CTA'\n | 'cairo.customFields.archive.CTA'\n | 'cairo.customFields.editCustomField.fieldKey.tooltip'\n | 'cairo.customFields.editCustomField.success.toast'\n | 'cairo.customFields.edit.CTA'\n | 'cairo.customFields.editCustomField.save.CTA'\n | 'cairo.customFields.manageFields.title'\n | 'cairo.customFields.archive.modal.cancel.CTA'\n | 'cairo.customFields.archive.modal.title'\n | 'cairo.customFields.archive.modal.CTA'\n | 'cairo.customFields.archive.modal.description'\n | 'cairo.customFields.archive.success.toast'\n | 'cairo.customFields.fieldType.dropdownList.Name.placeholder'\n | 'cairo.customFields.fieldType.checkbox.Name.placeholder'\n | 'cairo.customFields.fieldType.dropdownList.placeholder'\n | 'cairo.customFields.fieldType.dropdownList.inputTitle'\n | 'cairo.customFields.fieldType.dropdownList.addOption.CTA'\n | 'cairo.customFields.addCustomField.dropdownList.emptyFieldName.error'\n | 'cairo.customFields.entityPage.subtitle'\n | 'cairo.customFields.technical.error.title'\n | 'cairo.customFields.maxFields'\n | 'cairo.customFields.modal.technicalError'\n | 'cairo.customFields.modal.networkError'\n | 'cairo.customFields.modal.maxFieldsError'\n | 'cairo.customFields.modal.dropDownlist.option.error'\n | 'cairo.customFields.archive.technicalError'\n | 'cairo.customFields.fetch.technicalError'\n | 'cairo.customFields.emptyState.title'\n | 'cairo.customFields.emptyStatePassive.title'\n | 'cairo.customFields.emptyState.subtitle'\n | 'cairo.customFields.emptyStatePassive.subtitle'\n | 'cairo.customFields.addCustomField.modal.advancedSettings.siteVisitors.note'\n | 'cairo.customFields.writePermission.tooltip'\n | 'cairo.customFields.booleanValue.true'\n | 'cairo.customFields.booleanValue.false'\n | 'cairo.customFields.widget.showMore.button'\n | 'cairo.customFields.widget.showLess.button'\n | 'cairo.entityPage.header.save.CTA'\n | 'cairo.entityPage.header.cancel.CTA'\n | 'cairo.entityPage.success.toast'\n | 'cairo.entityPage.saveError-technical.toast.description'\n | 'cairo.entityPage.saveError-offline.toast.description'\n | 'cairo.tags.loadTags.error.CTA'\n | 'cairo.tags.collectionPage.tagsColumn.title'\n | 'cairo.tags.loadTags.error.title'\n | 'cairo.tags.collectionPage.toast.create.error'\n | 'cairo.tags.applyChanges.toast.success'\n | 'cairo.tags.tagsWidget.create.CTA'\n | 'cairo.tags.collectionPage.tagsColumn.emptyState.body'\n | 'cairo.tags.collectionPage.popover.manage.CTA'\n | 'cairo.tags.applyChanges.toast.undo.CTA'\n | 'cairo.tags.tagsWidget.emptyState.body'\n | 'cairo.tags.collectionPage.add.CTA'\n | 'cairo.tags.collectionPage.popover.close.CTA'\n | 'cairo.tags.tagsWidget.noPermissions.tooltip'\n | 'cairo.tags.collectionPage.tagsColumn.manage.CTA'\n | 'airo.tags.collectionPage.popover.emptyState.body'\n | 'cairo.tags.loadTags.error.body'\n | 'cairo.tags.manageTags.modal.emptyState.title'\n | 'cairo.tags.collectionPage.popover.emptyState.body'\n | 'cairo.tags.manageTags.modal.emptyState.body'\n | 'cairo.tags.collectionPage.toast.update.error'\n | 'cairo.tags.collectionPage.popover.search.placeholder'\n | 'cairo.tags.collectionPage.popover.emptyState.search.placeholder'\n | 'cairo.tags.collectionPage.applyChanges.CTA'\n | 'cairo.tags.manageTags.modal.list.input.validation.noName'\n | 'cairo.tags.collectionPage.popover.loadTags.error.body'\n | 'cairo.dropdownSearch.filters.emptyState'\n | 'cairo.page.loadError.failedState.title'\n | 'cairo.entityPage.widgetError.TPAconnectionFail.CTA'\n | 'cairo.page.loadError.failedState.CTA'\n | 'cairo.entityPage.widgetError.TPAconnectionFail.description'\n | 'cairo.page.loadError.failedState.description'\n | 'cairo.entityPage.widgetError.TPAconnectionFail.title'\n | 'cairo.tags.popover.tagCreated.toast.success'\n | 'cairo.tags.filterPanel.dropdown.title'\n | 'cairo.tags.filterPanel.dropdown.placeholder'\n | 'cairo.filtersPanel.date.today'\n | 'cairo.filtersPanel.date.next7Days'\n | 'cairo.filtersPanel.date.next3Days'\n | 'cairo.filtersPanel.date.next30Days'\n | 'cairo.filtersPanel.date.tomorrow'\n | 'cairo.tags.popover.bulkItemLimit.tooltip'\n | 'cairo.table.advanced-sorting.button.cta'\n | 'cairo.table.custom-columns.button.cta'\n | 'cairo.tags.manageTags.modal.deleteModal.cancel.CTA'\n | 'cairo.tags.manageTags.modal.deleteModal.delete.CTA'\n | 'cairo.collectionsPage.edit.CTA'\n | 'cairo.page.primary.cta'\n | 'cairo.table.subtitle.learnMore'\n | 'cairo.table.summaryBar.loadError'\n | 'cairo.table.summaryBar.loadError.cta'\n | 'cairo.emptyState.premium.cta'\n | 'cairo.emptyState.premium.title'\n | 'cairo.emptyState.premium.text'\n | 'cairo.customFields.entityPage.sectionTitle'\n | 'cairo.entityPage.header.subscribe.CTA'\n | 'cairo.entityPage.header.connect.CTA'\n | 'cairo.entityPage.header.apply.CTA'\n | 'cairo.entityPage.header.publish.CTA'\n | 'cairo.entityPage.header.activate.CTA'\n | 'cairo.updatedView.collectionPage.toast.desc'\n | 'cairo.updatedView.collectionPage.toast.cta'\n | 'cairo.subtitle.learnMore'\n | 'cairo.tags.creationLimitReached.error'\n | 'cairo.tags.popover.creationLimitReached.error'\n | 'cairo.entityPage.header.submit.CTA'\n | 'cairo.customFields.addCustomField.modal.PII-setting.toggle.name'\n | 'cairo.customFields.addCustomField.modal.PII-setting.toggle.info'\n | 'cairo.customFields.addCustomField.modal.PII-setting.toggle.createNote'\n | 'cairo.customFields.addCustomField.modal.PII-setting.toggle.editNote'\n | 'cairo.collectionPage.appInstall-inContext.moreActions.relatedApps.CTA'\n | 'cairo.tags.fqdn-not-found.error'\n | 'cairo.tags.fqdn-not-found.error.cta'\n | 'cairo.tags.fqdn-not-found.manageTagsModal.error'\n | 'cairo.customFields.updateDataExtension.changing-fields-not-allowed.error'\n | 'cairo.export.CreateExportAsyncJob.method-endpoint-not-found.error'\n | 'cairo.export.GetExportAsyncJob.job-not-found.error'\n | 'cairo.export.get-async-job.error.internal'\n | 'cairo.customFields.updateDataExtension.removing-fields-not-allowed.error'\n | 'cairo.customFields.updateDataExtension.fqdn-not-found.error'\n | 'cairo.customFields.updateDataExtension.fqdn-not-extensible.error'\n | 'cairo.customFields.createDataExtension.invalid-namespace.error'\n | 'cairo.customFields.updateDataExtension.invalid-namespace.error'\n | 'cairo.customFields.createDataExtension.fqdn-not-found.error'\n | 'cairo.customFields.createDataExtension.fqdn-not-extensible.error'\n | 'cairo.customFields.fieldType.checkbox.Selected.checked'\n | 'cairo.customFields.fieldType.checkbox.Selected.notChecked'\n | 'cairo.collectionPage.nested.expandAll.tooltip'\n | 'cairo.collectionPage.nested.collapseAll.tooltip'\n | 'cairo.filtersPanel.numRange.title'\n | 'cairo.filtersPanel.numRange.maxRange.error'\n | 'cairo.filtersPanel.numRange.minRange.error'\n | 'cairo.filtersPanel.numRange.maxRange-to'\n | 'cairo.filtersPanel.numRange.min-from'\n | 'cairo.filtersPanel.numRange.minRange-from.placeholder'\n | 'cairo.filtersPanel.numRange.maxRange-to.placeholder';\n\nexport type Translate = {\n (key: TranslationsKeys, params?: Record<string, string | number>): string;\n (\n key: 'cairo.filtersPanel.appliedFilters.label',\n params: { numberAppliedFilters: number },\n ): string;\n (\n key: 'cairo.table.deleteViewModal.deleteBody',\n params: { viewName: string },\n ): string;\n (key: 'cairo.entity.item', params: { num: number }): string;\n (key: 'cairo.deleteSuccess', params: { itemName: string }): string;\n (key: 'cairo.selected', params: { total: number }): string;\n (key: 'cairo.appliedFilters', params: { num: number }): string;\n (key: 'cairo.bulkSelected', params: { num: number }): string;\n (\n key: 'cairo.bulkSelectedWithTotal',\n params: { num: number; total: number },\n ): string;\n (key: 'cairo.bulkSelected.selectUpTo', params: { max: number }): string;\n (\n key: 'cairo.emptyState.subtitle.nothingMatches',\n params: { term: string },\n ): string;\n (\n key: 'cairo.picker.itemsSelected',\n params: { total: number; max: number },\n ): string;\n (\n key: 'cairo.search.Tab.noresults.title',\n params: { tabName: string },\n ): string;\n (key: 'cairo.search.nothingMatches.title', params: { term: string }): string;\n (\n key: 'cairo.sortableColumns.modal.title',\n params: { columnTitle: string },\n ): string;\n (\n key: 'cairo.sortableColumns.modal.description',\n params: { columnTitle: string },\n ): string;\n (\n key: 'cairo.sortableColumns.notification',\n params: { columnTitle: string },\n ): string;\n (key: 'cairo.deleteView.Success.toast', params: { viewName: string }): string;\n (key: 'cairo.saveView.Success.toast', params: { viewName: string }): string;\n (\n key: 'cairo.manageView.Rename.Success.toast',\n params: { oldViewName: string; newViewName: string },\n ): string;\n (\n key: 'cairo.manageView.saveChanges.Success.toast',\n params: { viewName: string },\n ): string;\n (\n key: 'cairo.dragAndDrop.live-region.itemDragged.sr',\n params: { currentNumber: number; totalNumber: number },\n ): string;\n (\n key: 'cairo.dragAndDrop.button-role-label.sr',\n params: { itemName: string },\n ): string;\n (\n key: 'cairo.dragAndDrop.live-region.itemDropped.sr',\n params: { currentNumber: number },\n ): string;\n (\n key: 'cairo.selector.modal.items.selected',\n params: { total: number },\n ): string;\n (\n key: 'cairo.bulkActions.max.selection',\n params: { total: number; max: number },\n ): string;\n (\n key: 'cairo.manageView.setAsDefault.error.toast',\n params: { viewName: string },\n ): string;\n (\n key: 'cairo.manageView.setAsDefault.success.toast',\n params: { viewName: string },\n ): string;\n (\n key: 'cairo.dropdownSearch.filters.selected',\n params: { total: number },\n ): string;\n (key: 'cairo.appliedFilters.selected', params: { num: number }): string;\n (\n key: 'cairo.tags.tagsWidget.options.add.CTA',\n params: { tagName: string },\n ): string;\n (\n key: 'cairo.tags.manageTags.modal.title',\n params: { EntityName: string },\n ): string;\n (\n key: 'cairo.tags.manageTags.modal.list.input.validation.maxLength',\n params: { count: number },\n ): string;\n (\n key: 'cairo.tags.manageTags.modal.deleteModal.body',\n params: { name: string },\n ): string;\n (\n key: 'cairo.customFields.maxFields.tooltip',\n params: { max: number },\n ): string;\n (key: 'cairo.a11y.liveRegion.resultsFound', params: { num: number }): string;\n (\n key: 'cairo.tags.collectionPage.popover.create.CTA',\n params: { tagName: string },\n ): string;\n (\n key: 'cairo.tags.manageTags.modal.list.create.CTA',\n params: { tagName: string },\n ): string;\n (\n key: 'cairo.table.summaryBar.list.item',\n params: { title: string; value: string },\n ): string;\n (\n key: 'cairo.collectionPage.nestedLimit.tooltip',\n params: { subCatsAmount: number },\n ): string;\n (\n key: 'cairo.settings.search.anchor-doesnt-exist.error',\n params: { anchorName: string },\n ): string;\n (\n key: 'cairo.filtersPanel.numRange.minRange.consumer.error',\n params: { minAmount: number },\n ): string;\n};\n"],"mappings":"","ignoreList":[]}
@@ -140,8 +140,10 @@ class CollectionOptimisticExecutor {
140
140
  (_this$removeToast = this.removeToast) == null || _this$removeToast.call(this);
141
141
  this.execute(actions, params);
142
142
  };
143
- const errorToast = errorToastFn(err);
144
- this.removeAndShowToast({
143
+ const errorToast = errorToastFn(err, {
144
+ retry: onRetryClick
145
+ });
146
+ const toastConfig = {
145
147
  action: {
146
148
  uiType: 'LINK',
147
149
  text: t('cairo.toast.retry'),
@@ -153,7 +155,12 @@ class CollectionOptimisticExecutor {
153
155
  biName: `cairo-error-toast`
154
156
  } : errorToast),
155
157
  type: 'ERROR'
156
- });
158
+ };
159
+ if (toastConfig.action) {
160
+ toastConfig.action.uiType = 'LINK';
161
+ toastConfig.action.removeToastOnClick = true;
162
+ }
163
+ this.removeAndShowToast(toastConfig);
157
164
  }
158
165
  return {
159
166
  status: 'error',
@@ -1 +1 @@
1
- {"version":3,"names":["_util","require","CollectionOptimisticExecutor","constructor","params","_defineProperty2","default","showToast","translate","errorMonitor","lodash","container","executePending","bind","scheduleExecution","batchWait","throttle","leading","trailing","removeAndShowToast","toastConfig","removeToast","remove","rollback","actions","onRollback","_actions","filter","action","indexOf","getSuccessToast","successToast","showUndoToast","showUndoSuccessToast","onUndo","t","resolveUndoTimeoutPromise","state","undoToast","timeoutPromises","Promise","_resolve","resolve","setTimeout","removeNavigationListener","addEventListener","events","title","text","uiType","onClick","status","type","priority","biName","message","removeToastOnClick","undefined","_execute","successToastState","submit","errorToast","errorToastFn","onTryAgain","onError","eventuallyUpdated","onEventuallyUpdated","undoResult","race","submitPromise","updateServerAfterPromise","all","then","result","err","console","error","captureException","onRetryClick","_this$removeToast","call","execute","exports"],"sources":["../../../src/state/CollectionOptimisticExecutor.ts"],"sourcesContent":["import { ShowToast, ToastConfig } from '../model';\nimport {\n ErrorMonitor,\n ModalLayoutProps,\n PartialLodash,\n Translate,\n} from '../services';\nimport { addEventListener, TypedEmitter } from '../util';\n\nexport type EventuallyUpdated = 'submit' | number | Promise<unknown>;\n\nexport interface ExecuteParams<A, R> {\n showUndoToast?: boolean;\n showUndoSuccessToast?: boolean;\n submit: (items: A[]) => Promise<R> | undefined;\n eventuallyUpdated?: EventuallyUpdated;\n onEventuallyUpdated?: () => unknown;\n errorToast?: (err: unknown) => ToastConfig | string;\n onTryAgain?: () => void;\n onError?: (err: unknown) => void;\n onUndo?: () => void;\n successToast?: ToastConfig | string;\n onRollback: () => void;\n}\n\ninterface ExecutionBaseParams<A, R> {\n successToastState: SuccessToastState;\n submit: (actions: A[]) => Promise<R> | undefined;\n eventuallyUpdated?: EventuallyUpdated;\n onEventuallyUpdated?: () => unknown;\n errorToast?: (err: unknown) => ToastConfig | string;\n onTryAgain?: () => void;\n onError?: (err: unknown) => void;\n successToast?: ToastConfig | string;\n onRollback: () => void;\n}\n\ninterface ExecutionParams<A, R> extends ExecutionBaseParams<A, R> {\n actions: A[];\n}\n\ninterface ScheduleExecutionParams<A, R> extends ExecutionBaseParams<A, R> {}\n\ninterface SuccessToastState {\n undoToast?: UndoToastState;\n}\n\ninterface UndoToastState {\n timeoutPromises: Promise<{ status?: 'undone' } | undefined>[];\n removeNavigationListener: () => void;\n}\n\nexport interface CollectionOptimisticExecutorParams {\n readonly showToast: ShowToast;\n readonly translate: Translate;\n readonly errorMonitor: ErrorMonitor;\n readonly batchWait: number;\n readonly lodash: PartialLodash;\n readonly container: {\n events: TypedEmitter<{\n navigation: () => ModalLayoutProps | null | undefined;\n }>;\n };\n}\n\nexport class CollectionOptimisticExecutor<A> {\n readonly showToast;\n readonly translate;\n readonly errorMonitor;\n readonly lodash;\n readonly container;\n\n removeToast: (() => void) | null = null;\n\n _actions: A[] = [];\n\n scheduleExecution: <R>(params: ScheduleExecutionParams<A, R>) => unknown;\n\n constructor(params: CollectionOptimisticExecutorParams) {\n this.showToast = params.showToast;\n this.translate = params.translate;\n this.errorMonitor = params.errorMonitor;\n this.lodash = params.lodash;\n this.container = params.container;\n\n this.executePending = this.executePending.bind(this);\n\n this.scheduleExecution = params.batchWait\n ? this.lodash.throttle(this.executePending, params.batchWait, {\n leading: false,\n trailing: true,\n })\n : this.executePending;\n }\n\n removeAndShowToast(toastConfig: ToastConfig) {\n const { removeToast, showToast } = this;\n removeToast?.();\n this.removeToast = showToast(toastConfig).remove;\n }\n\n rollback(actions: A[], onRollback: () => void) {\n this._actions = this._actions.filter(\n (action) => actions.indexOf(action) === -1,\n );\n onRollback();\n }\n\n getSuccessToast(\n actions: A[],\n {\n onRollback,\n successToast,\n showUndoToast,\n showUndoSuccessToast,\n onUndo,\n }: {\n successToast?: ToastConfig | string;\n showUndoToast?: boolean;\n showUndoSuccessToast?: boolean;\n onRollback: () => unknown;\n onUndo?: () => unknown;\n },\n ) {\n const { container, showToast, translate: t } = this;\n\n let resolveUndoTimeoutPromise:\n | ((value: { status: 'undone' }) => void)\n | null = null;\n\n const state: SuccessToastState = {};\n\n if (showUndoToast) {\n state.undoToast = {\n timeoutPromises: [\n new Promise<{ status: 'undone' }>((_resolve) => {\n resolveUndoTimeoutPromise = _resolve;\n }),\n new Promise<{ status?: undefined } | undefined>((resolve) =>\n setTimeout(resolve, 6000),\n ),\n ],\n removeNavigationListener: addEventListener(\n container.events,\n 'navigation',\n () => ({\n title: t('cairo.dragAndDrop.leaveSite.modal.title'),\n }),\n ),\n };\n }\n\n if (successToast) {\n this.removeAndShowToast({\n action: showUndoToast\n ? {\n text: t('cairo.toast.undo'),\n uiType: 'LINK',\n onClick: () => {\n resolveUndoTimeoutPromise?.({ status: 'undone' });\n this.rollback(actions, onRollback);\n onUndo?.();\n if (showUndoSuccessToast) {\n showToast({\n type: 'STANDARD',\n priority: 'LOW',\n biName: `cairo-undone`,\n message: t('cairo.toast.undone'),\n });\n }\n },\n removeToastOnClick: true,\n }\n : undefined,\n ...(typeof successToast === 'string'\n ? { message: successToast, biName: `cairo-undo` }\n : successToast),\n type: 'SUCCESS',\n });\n }\n\n return state;\n }\n\n async _execute<R>(params: ExecutionParams<A, R>) {\n const {\n successToastState,\n submit,\n errorToast: errorToastFn,\n onTryAgain,\n onError,\n onRollback,\n eventuallyUpdated,\n onEventuallyUpdated,\n actions,\n } = params;\n const { errorMonitor, translate: t } = this;\n\n const { undoToast } = successToastState;\n\n try {\n if (undoToast) {\n const undoResult = await Promise.race(undoToast.timeoutPromises);\n undoToast.removeNavigationListener();\n if (undoResult?.status === 'undone') {\n return undoResult;\n }\n }\n\n const submitPromise = await submit(actions);\n\n const updateServerAfterPromise =\n typeof eventuallyUpdated === 'number'\n ? await Promise.all([\n submitPromise,\n new Promise((resolve) => setTimeout(resolve, eventuallyUpdated)),\n ]).then(() => submitPromise)\n : submitPromise;\n\n const result = await updateServerAfterPromise;\n await onEventuallyUpdated?.();\n\n return {\n result,\n status: 'success',\n };\n } catch (err) {\n console.error(err);\n errorMonitor.captureException(err);\n this.rollback(actions, onRollback);\n onError?.(err);\n\n if (errorToastFn) {\n const onRetryClick = () => {\n onTryAgain?.();\n this.removeToast?.();\n\n this.execute(actions, params);\n };\n\n const errorToast = errorToastFn(err);\n this.removeAndShowToast({\n action: {\n uiType: 'LINK',\n text: t('cairo.toast.retry'),\n onClick: onRetryClick,\n removeToastOnClick: true,\n },\n ...(typeof errorToast === 'string'\n ? { message: errorToast, biName: `cairo-error-toast` }\n : errorToast),\n type: 'ERROR',\n });\n }\n\n return { status: 'error', err };\n }\n }\n\n async executePending<R>(params: ScheduleExecutionParams<A, R>) {\n const { _actions: actions } = this;\n\n this._actions = [];\n\n return this._execute({\n ...params,\n actions,\n });\n }\n\n execute<R>(actions: A[], params: ExecuteParams<A, R>) {\n const {\n showUndoToast,\n showUndoSuccessToast,\n successToast,\n onRollback,\n onUndo,\n } = params;\n\n this._actions = [...this._actions, ...actions];\n\n const successToastState = this.getSuccessToast(actions, {\n onRollback,\n successToast,\n showUndoToast,\n showUndoSuccessToast,\n onUndo,\n });\n\n this.scheduleExecution({\n ...params,\n successToastState,\n });\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_util","require","CollectionOptimisticExecutor","constructor","params","_defineProperty2","default","showToast","translate","errorMonitor","lodash","container","executePending","bind","scheduleExecution","batchWait","throttle","leading","trailing","removeAndShowToast","toastConfig","removeToast","remove","rollback","actions","onRollback","_actions","filter","action","indexOf","getSuccessToast","successToast","showUndoToast","showUndoSuccessToast","onUndo","t","resolveUndoTimeoutPromise","state","undoToast","timeoutPromises","Promise","_resolve","resolve","setTimeout","removeNavigationListener","addEventListener","events","title","text","uiType","onClick","status","type","priority","biName","message","removeToastOnClick","undefined","_execute","successToastState","submit","errorToast","errorToastFn","onTryAgain","onError","eventuallyUpdated","onEventuallyUpdated","undoResult","race","submitPromise","updateServerAfterPromise","all","then","result","err","console","error","captureException","onRetryClick","_this$removeToast","call","execute","retry","exports"],"sources":["../../../src/state/CollectionOptimisticExecutor.ts"],"sourcesContent":["import { ShowToast, ToastConfig } from '../model';\nimport {\n ErrorMonitor,\n ModalLayoutProps,\n PartialLodash,\n Translate,\n} from '../services';\nimport { addEventListener, TypedEmitter } from '../util';\n\nexport type EventuallyUpdated = 'submit' | number | Promise<unknown>;\n\nexport interface ExecuteParams<A, R> {\n showUndoToast?: boolean;\n showUndoSuccessToast?: boolean;\n submit: (items: A[]) => Promise<R> | undefined;\n eventuallyUpdated?: EventuallyUpdated;\n onEventuallyUpdated?: () => unknown;\n errorToast?: (\n err: unknown,\n params: { retry: () => void },\n ) => ToastConfig | string;\n onTryAgain?: () => void;\n onError?: (err: unknown) => void;\n onUndo?: () => void;\n successToast?: ToastConfig | string;\n onRollback: () => void;\n}\n\ninterface ExecutionBaseParams<A, R> {\n successToastState: SuccessToastState;\n submit: (actions: A[]) => Promise<R> | undefined;\n eventuallyUpdated?: EventuallyUpdated;\n onEventuallyUpdated?: () => unknown;\n errorToast?: (\n err: unknown,\n params: { retry: () => void },\n ) => ToastConfig | string;\n\n onTryAgain?: () => void;\n onError?: (err: unknown) => void;\n successToast?: ToastConfig | string;\n onRollback: () => void;\n}\n\ninterface ExecutionParams<A, R> extends ExecutionBaseParams<A, R> {\n actions: A[];\n}\n\ninterface ScheduleExecutionParams<A, R> extends ExecutionBaseParams<A, R> {}\n\ninterface SuccessToastState {\n undoToast?: UndoToastState;\n}\n\ninterface UndoToastState {\n timeoutPromises: Promise<{ status?: 'undone' } | undefined>[];\n removeNavigationListener: () => void;\n}\n\nexport interface CollectionOptimisticExecutorParams {\n readonly showToast: ShowToast;\n readonly translate: Translate;\n readonly errorMonitor: ErrorMonitor;\n readonly batchWait: number;\n readonly lodash: PartialLodash;\n readonly container: {\n events: TypedEmitter<{\n navigation: () => ModalLayoutProps | null | undefined;\n }>;\n };\n}\n\nexport class CollectionOptimisticExecutor<A> {\n readonly showToast;\n readonly translate;\n readonly errorMonitor;\n readonly lodash;\n readonly container;\n\n removeToast: (() => void) | null = null;\n\n _actions: A[] = [];\n\n scheduleExecution: <R>(params: ScheduleExecutionParams<A, R>) => unknown;\n\n constructor(params: CollectionOptimisticExecutorParams) {\n this.showToast = params.showToast;\n this.translate = params.translate;\n this.errorMonitor = params.errorMonitor;\n this.lodash = params.lodash;\n this.container = params.container;\n\n this.executePending = this.executePending.bind(this);\n\n this.scheduleExecution = params.batchWait\n ? this.lodash.throttle(this.executePending, params.batchWait, {\n leading: false,\n trailing: true,\n })\n : this.executePending;\n }\n\n removeAndShowToast(toastConfig: ToastConfig) {\n const { removeToast, showToast } = this;\n removeToast?.();\n this.removeToast = showToast(toastConfig).remove;\n }\n\n rollback(actions: A[], onRollback: () => void) {\n this._actions = this._actions.filter(\n (action) => actions.indexOf(action) === -1,\n );\n onRollback();\n }\n\n getSuccessToast(\n actions: A[],\n {\n onRollback,\n successToast,\n showUndoToast,\n showUndoSuccessToast,\n onUndo,\n }: {\n successToast?: ToastConfig | string;\n showUndoToast?: boolean;\n showUndoSuccessToast?: boolean;\n onRollback: () => unknown;\n onUndo?: () => unknown;\n },\n ) {\n const { container, showToast, translate: t } = this;\n\n let resolveUndoTimeoutPromise:\n | ((value: { status: 'undone' }) => void)\n | null = null;\n\n const state: SuccessToastState = {};\n\n if (showUndoToast) {\n state.undoToast = {\n timeoutPromises: [\n new Promise<{ status: 'undone' }>((_resolve) => {\n resolveUndoTimeoutPromise = _resolve;\n }),\n new Promise<{ status?: undefined } | undefined>((resolve) =>\n setTimeout(resolve, 6000),\n ),\n ],\n removeNavigationListener: addEventListener(\n container.events,\n 'navigation',\n () => ({\n title: t('cairo.dragAndDrop.leaveSite.modal.title'),\n }),\n ),\n };\n }\n\n if (successToast) {\n this.removeAndShowToast({\n action: showUndoToast\n ? {\n text: t('cairo.toast.undo'),\n uiType: 'LINK',\n onClick: () => {\n resolveUndoTimeoutPromise?.({ status: 'undone' });\n this.rollback(actions, onRollback);\n onUndo?.();\n if (showUndoSuccessToast) {\n showToast({\n type: 'STANDARD',\n priority: 'LOW',\n biName: `cairo-undone`,\n message: t('cairo.toast.undone'),\n });\n }\n },\n removeToastOnClick: true,\n }\n : undefined,\n ...(typeof successToast === 'string'\n ? { message: successToast, biName: `cairo-undo` }\n : successToast),\n type: 'SUCCESS',\n });\n }\n\n return state;\n }\n\n async _execute<R>(params: ExecutionParams<A, R>) {\n const {\n successToastState,\n submit,\n errorToast: errorToastFn,\n onTryAgain,\n onError,\n onRollback,\n eventuallyUpdated,\n onEventuallyUpdated,\n actions,\n } = params;\n const { errorMonitor, translate: t } = this;\n\n const { undoToast } = successToastState;\n\n try {\n if (undoToast) {\n const undoResult = await Promise.race(undoToast.timeoutPromises);\n undoToast.removeNavigationListener();\n if (undoResult?.status === 'undone') {\n return undoResult;\n }\n }\n\n const submitPromise = await submit(actions);\n\n const updateServerAfterPromise =\n typeof eventuallyUpdated === 'number'\n ? await Promise.all([\n submitPromise,\n new Promise((resolve) => setTimeout(resolve, eventuallyUpdated)),\n ]).then(() => submitPromise)\n : submitPromise;\n\n const result = await updateServerAfterPromise;\n await onEventuallyUpdated?.();\n\n return {\n result,\n status: 'success',\n };\n } catch (err) {\n console.error(err);\n errorMonitor.captureException(err);\n this.rollback(actions, onRollback);\n onError?.(err);\n\n if (errorToastFn) {\n const onRetryClick = () => {\n onTryAgain?.();\n this.removeToast?.();\n\n this.execute(actions, params);\n };\n\n const errorToast = errorToastFn(err, { retry: onRetryClick });\n\n const toastConfig: ToastConfig = {\n action: {\n uiType: 'LINK',\n text: t('cairo.toast.retry'),\n onClick: onRetryClick,\n removeToastOnClick: true,\n },\n ...(typeof errorToast === 'string'\n ? { message: errorToast, biName: `cairo-error-toast` }\n : errorToast),\n type: 'ERROR',\n };\n\n if (toastConfig.action) {\n toastConfig.action.uiType = 'LINK';\n toastConfig.action.removeToastOnClick = true;\n }\n\n this.removeAndShowToast(toastConfig);\n }\n\n return { status: 'error', err };\n }\n }\n\n async executePending<R>(params: ScheduleExecutionParams<A, R>) {\n const { _actions: actions } = this;\n\n this._actions = [];\n\n return this._execute({\n ...params,\n actions,\n });\n }\n\n execute<R>(actions: A[], params: ExecuteParams<A, R>) {\n const {\n showUndoToast,\n showUndoSuccessToast,\n successToast,\n onRollback,\n onUndo,\n } = params;\n\n this._actions = [...this._actions, ...actions];\n\n const successToastState = this.getSuccessToast(actions, {\n onRollback,\n successToast,\n showUndoToast,\n showUndoSuccessToast,\n onUndo,\n });\n\n this.scheduleExecution({\n ...params,\n successToastState,\n });\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -57,38 +57,7 @@ class CustomFieldModalState {
57
57
  endType: 'Add Field'
58
58
  });
59
59
  } catch (e) {
60
- (0, _mobx.runInAction)(() => {
61
- if ((0, _isHttpError.isHttpError)(e)) {
62
- var _e$response, _e$response2;
63
- this.submitError = 'network';
64
- if ((0, _isHttpError.isDetailsResponse)((_e$response = e.response) == null ? void 0 : _e$response.data) && (0, _isHttpError.isErrorDetails)((_e$response2 = e.response) == null ? void 0 : _e$response2.data.details)) {
65
- var _e$response3;
66
- if ((_e$response3 = e.response) != null && (_e$response3 = _e$response3.data) != null && (_e$response3 = _e$response3.details) != null && (_e$response3 = _e$response3.validationError) != null && (_e$response3 = _e$response3.fieldViolations) != null && _e$response3.some(v => v.ruleName === 'EXCEEDED_STORED_DATA_SIZE')) {
67
- this.submitError = 'max_size';
68
- } else {
69
- this.submitError = 'technical';
70
- }
71
- }
72
- }
73
- });
74
- const getErrorType = () => {
75
- switch (this.submitError) {
76
- case 'network':
77
- return 'Network error';
78
- case 'max_size':
79
- return '10k Limitation';
80
- case 'technical':
81
- return 'Technical issue';
82
- default:
83
- return undefined;
84
- }
85
- };
86
- this.customFieldModalBiReporter.reportSubmitFailure({
87
- errorType: getErrorType()
88
- });
89
-
90
- // Prevents modal closing
91
- throw e;
60
+ this.onConfirmError(e);
92
61
  }
93
62
  }
94
63
  }));
@@ -127,7 +96,8 @@ class CustomFieldModalState {
127
96
  readUsers: new _formstate.FieldState(false),
128
97
  readApps: new _formstate.FieldState(false),
129
98
  writeUsers: new _formstate.FieldState(false),
130
- writeApps: new _formstate.FieldState(false)
99
+ writeApps: new _formstate.FieldState(false),
100
+ containsPii: new _formstate.FieldState(false)
131
101
  }));
132
102
  (0, _defineProperty2.default)(this, "disabledFields", {
133
103
  permissions: {
@@ -174,6 +144,40 @@ class CustomFieldModalState {
174
144
  setKeyFieldIfNotDirty: _mobx.action.bound
175
145
  });
176
146
  }
147
+ onConfirmError(e) {
148
+ (0, _mobx.runInAction)(() => {
149
+ if ((0, _isHttpError.isHttpError)(e)) {
150
+ var _e$response, _e$response2;
151
+ this.submitError = 'network';
152
+ if ((0, _isHttpError.isDetailsResponse)((_e$response = e.response) == null ? void 0 : _e$response.data) && (0, _isHttpError.isErrorDetails)((_e$response2 = e.response) == null ? void 0 : _e$response2.data.details)) {
153
+ var _e$response3;
154
+ if ((_e$response3 = e.response) != null && (_e$response3 = _e$response3.data) != null && (_e$response3 = _e$response3.details) != null && (_e$response3 = _e$response3.validationError) != null && (_e$response3 = _e$response3.fieldViolations) != null && _e$response3.some(v => v.ruleName === 'EXCEEDED_STORED_DATA_SIZE')) {
155
+ this.submitError = 'max_size';
156
+ } else {
157
+ this.submitError = 'technical';
158
+ }
159
+ }
160
+ }
161
+ });
162
+ const getErrorType = () => {
163
+ switch (this.submitError) {
164
+ case 'network':
165
+ return 'Network error';
166
+ case 'max_size':
167
+ return '10k Limitation';
168
+ case 'technical':
169
+ return 'Technical issue';
170
+ default:
171
+ return undefined;
172
+ }
173
+ };
174
+ this.customFieldModalBiReporter.reportSubmitFailure({
175
+ errorType: getErrorType()
176
+ });
177
+
178
+ // Prevents modal closing
179
+ throw e;
180
+ }
177
181
  reset() {
178
182
  const {
179
183
  form,
@@ -229,7 +233,8 @@ class CustomFieldModalState {
229
233
  readApps,
230
234
  readUsers,
231
235
  writeApps,
232
- writeUsers
236
+ writeUsers,
237
+ containsPii
233
238
  }
234
239
  }
235
240
  } = this;
@@ -240,7 +245,8 @@ class CustomFieldModalState {
240
245
  readApps: readApps.value,
241
246
  readUsers: readUsers.value,
242
247
  writeApps: writeApps.value,
243
- writeUsers: writeUsers.value
248
+ writeUsers: writeUsers.value,
249
+ containsPii: containsPii.value
244
250
  };
245
251
  }
246
252
  setFormValues(form, params) {
@@ -256,6 +262,7 @@ class CustomFieldModalState {
256
262
  $.readUsers.value = form.readUsers;
257
263
  $.writeApps.value = form.writeApps;
258
264
  $.writeUsers.value = form.writeUsers;
265
+ $.containsPii.value = form.containsPii;
259
266
  if (params != null && params.disablePermissionCheckboxes) {
260
267
  if (form.readUsers) {
261
268
  this.disabledFields.permissions.read.users = true;
@@ -1 +1 @@
1
- {"version":3,"names":["_mobx","require","_ConditionalModalState","_CustomFieldModalBiReporter","_formstate","_ToggleState","_util","_isHttpError","CustomFieldModalState","constructor","params","_defineProperty2","default","ToggleState","ConditionalModalState","onConfirm","form","mode","customFieldModalBiReporter","reportModalEndProcess","t","submitError","validation","validate","hasError","enableAutoValidation","Error","_this$dataExtensionSt","_this$dataExtensionSt2","dataExtensionSchema","dataExtensionState","dataExtensionService","addCustomField","getFormValues","schema","userSchema","fqdn","fqdnString","filterable","runInAction","container","showToast","call","message","type","biName","endType","e","isHttpError","_e$response","_e$response2","isDetailsResponse","response","data","isErrorDetails","details","_e$response3","validationError","fieldViolations","some","v","ruleName","getErrorType","undefined","reportSubmitFailure","errorType","FormState","FieldState","validators","value","name","key","allUserCustomFields","field","id","test","readUsers","readApps","writeUsers","writeApps","permissions","read","apps","users","write","$","dirty","CustomFieldModalBiReporter","makeObservable","namePlaceholder","computed","isSubmitting","disabledFields","observable","ref","reset","action","setFormValues","generateUniqueKey","bound","setKeyFieldIfNotDirty","settings","setOff","disableAutoValidation","disablePermissionCheckboxes","containsKey","slug","slugify","length","index","translate","modalState","modal","confirming","isLoading","exports"],"sources":["../../../src/state/CustomFieldModalState.ts"],"sourcesContent":["import {\n action,\n computed,\n makeObservable,\n observable,\n runInAction,\n} from 'mobx';\nimport { ConditionalModalState } from './ConditionalModalState';\nimport { CustomFieldModalBiReporter } from './CustomFieldModalBiReporter';\nimport { FieldState, FormState } from 'formstate';\nimport { ToggleState } from './ToggleState';\nimport { CustomFieldOrigin, CustomFieldType } from '../services';\nimport { DataExtensionState } from './DataExtensionState';\nimport { slugify } from '../util';\nimport {\n isDetailsResponse,\n isErrorDetails,\n isHttpError,\n} from '../util/isHttpError';\n\nexport interface CustomFieldStateParams {\n dataExtensionState: DataExtensionState;\n}\n\nexport interface CustomFieldForm {\n type?: CustomFieldType;\n key: string;\n name: string;\n readApps: boolean;\n readUsers: boolean;\n writeApps: boolean;\n writeUsers: boolean;\n}\n\nexport class CustomFieldModalState {\n dataExtensionState: DataExtensionState;\n customFieldModalBiReporter: CustomFieldModalBiReporter;\n settings = new ToggleState();\n submitError: 'network' | 'technical' | 'max_size' | null = null;\n mode: 'new' | 'edit' = 'new';\n origin: CustomFieldOrigin = 'Custom columns panel';\n\n modalState = new ConditionalModalState({\n onConfirm: async () => {\n const {\n form,\n mode,\n customFieldModalBiReporter: { reportModalEndProcess },\n t,\n } = this;\n\n this.submitError = null;\n\n const validation = await form.validate();\n\n if (validation.hasError) {\n this.enableAutoValidation();\n throw new Error('validation');\n }\n\n try {\n const { dataExtensionSchema } =\n await this.dataExtensionState.dataExtensionService.addCustomField({\n form: this.getFormValues(),\n schema: this.dataExtensionState.userSchema,\n fqdn: this.dataExtensionState.fqdnString,\n filterable: this.dataExtensionState.filterable,\n });\n\n runInAction(() => {\n this.dataExtensionState.userSchema = dataExtensionSchema;\n });\n\n this.dataExtensionState.container.showToast?.({\n message:\n mode === 'new'\n ? t('cairo.customFields.successToast')\n : t('cairo.customFields.editCustomField.success.toast'),\n type: 'SUCCESS',\n biName: 'cairo-custom-field-success-toast',\n });\n\n reportModalEndProcess({ endType: 'Add Field' });\n } catch (e: unknown) {\n runInAction(() => {\n if (isHttpError(e)) {\n this.submitError = 'network';\n\n if (\n isDetailsResponse(e.response?.data) &&\n isErrorDetails(e.response?.data.details)\n ) {\n if (\n e.response?.data?.details?.validationError?.fieldViolations?.some(\n (v) => v.ruleName === 'EXCEEDED_STORED_DATA_SIZE',\n )\n ) {\n this.submitError = 'max_size';\n } else {\n this.submitError = 'technical';\n }\n }\n }\n });\n\n const getErrorType = () => {\n switch (this.submitError) {\n case 'network':\n return 'Network error';\n case 'max_size':\n return '10k Limitation';\n case 'technical':\n return 'Technical issue';\n default:\n return undefined;\n }\n };\n\n this.customFieldModalBiReporter.reportSubmitFailure({\n errorType: getErrorType(),\n });\n\n // Prevents modal closing\n throw e;\n }\n },\n });\n\n form = new FormState({\n type: new FieldState<CustomFieldType | undefined>(undefined).validators(\n (value) => {\n if (!value) {\n return this.t(\n 'cairo.customFields.addCustomField.modal.emptyFieldType.error',\n );\n }\n\n return undefined;\n },\n ),\n name: new FieldState('').validators((value) => {\n if (!value) {\n return this.t(\n 'cairo.customFields.addCustomField.modal.emptyFieldName.error',\n );\n }\n\n return undefined;\n }),\n key: new FieldState('').validators((value) => {\n const {\n t,\n mode,\n dataExtensionState: { allUserCustomFields },\n } = this;\n\n if (!value) {\n return this.t(\n 'cairo.customFields.addCustomField.modal.emptyFieldName.error',\n );\n }\n\n if (\n mode === 'new' &&\n allUserCustomFields.some((field) => field.id === value)\n ) {\n return t('cairo.customFields.addCustomField.modal.sameKey.error');\n }\n\n if (!/^[a-zA-Z][a-zA-Z0-9_]*$/g.test(value)) {\n return t('cairo.customFields.addCustomField.modal.keyFormat.error');\n }\n\n return undefined;\n }),\n readUsers: new FieldState(false),\n readApps: new FieldState(false),\n writeUsers: new FieldState(false),\n writeApps: new FieldState(false),\n });\n\n disabledFields = {\n permissions: {\n read: { apps: true, users: true },\n write: { apps: true, users: true },\n },\n };\n\n constructor(params: CustomFieldStateParams) {\n this.dataExtensionState = params.dataExtensionState;\n this.customFieldModalBiReporter = new CustomFieldModalBiReporter({\n dataExtensionState: params.dataExtensionState,\n });\n\n makeObservable(this, {\n namePlaceholder: computed,\n isSubmitting: computed,\n disabledFields: observable.ref,\n submitError: observable.ref,\n mode: observable.ref,\n reset: action,\n setFormValues: action,\n generateUniqueKey: action.bound,\n setKeyFieldIfNotDirty: action.bound,\n });\n }\n\n reset() {\n const {\n form,\n settings,\n disabledFields: { permissions },\n } = this;\n\n form.reset();\n settings.setOff();\n this.submitError = null;\n this.disableAutoValidation();\n\n permissions.read.apps = false;\n permissions.read.users = false;\n permissions.write.apps = false;\n permissions.write.users = false;\n }\n\n enableAutoValidation() {\n const {\n form: {\n $: { key, name, type },\n },\n } = this;\n\n key.enableAutoValidation();\n name.enableAutoValidation();\n type.enableAutoValidation();\n }\n\n disableAutoValidation() {\n const {\n form: {\n $: { key, name, type },\n },\n } = this;\n\n key.disableAutoValidation();\n name.disableAutoValidation();\n type.disableAutoValidation();\n }\n\n getFormValues(): CustomFieldForm {\n const {\n form: {\n $: { type, key, name, readApps, readUsers, writeApps, writeUsers },\n },\n } = this;\n\n return {\n type: type.value,\n key: key.value,\n name: name.value,\n readApps: readApps.value,\n readUsers: readUsers.value,\n writeApps: writeApps.value,\n writeUsers: writeUsers.value,\n };\n }\n\n setFormValues(\n form: CustomFieldForm,\n params?: { disablePermissionCheckboxes: boolean },\n ) {\n const {\n form: { $ },\n } = this;\n\n $.key.value = form.key;\n $.name.value = form.name;\n $.type.value = form.type;\n $.readApps.value = form.readApps;\n $.readUsers.value = form.readUsers;\n $.writeApps.value = form.writeApps;\n $.writeUsers.value = form.writeUsers;\n\n if (params?.disablePermissionCheckboxes) {\n if (form.readUsers) {\n this.disabledFields.permissions.read.users = true;\n }\n\n if (form.readApps) {\n this.disabledFields.permissions.read.apps = true;\n }\n\n if (form.writeUsers) {\n this.disabledFields.permissions.write.users = true;\n }\n\n if (form.writeApps) {\n this.disabledFields.permissions.write.apps = true;\n }\n }\n }\n\n setKeyFieldIfNotDirty = (value: string) => {\n const {\n form: {\n $: { key },\n },\n mode,\n } = this;\n\n if (mode === 'new' && !key.dirty) {\n // In the formstate library setting a field value using\n // the onChange API sets the dirty state of the field to true.\n // However, since here it's not a manual user input\n // we avoid changing the dirty state by setting a value directly.\n key.value = value;\n }\n };\n\n private containsKey(key: string) {\n return this.dataExtensionState.allUserCustomFields.some(\n (field) => field.id === key,\n );\n }\n\n generateUniqueKey(name: string) {\n const slug = slugify(name);\n const type = this.form.$.type.value;\n\n if (slug && slug.length >= 4 && !this.containsKey(slug)) {\n return slug;\n }\n\n if (!type) {\n return '';\n }\n\n let index = 1;\n\n while (this.containsKey(`${type}_${index}`)) {\n index += 1;\n }\n\n return `${type}_${index}`;\n }\n\n get t() {\n return this.dataExtensionState.container.translate;\n }\n\n get isSubmitting() {\n return this.modalState.modal.confirming.isLoading;\n }\n\n get namePlaceholder() {\n const {\n t,\n form: {\n $: { type },\n },\n } = this;\n\n switch (type.value) {\n case 'dropdown':\n return t('cairo.customFields.fieldType.dropdownList.Name.placeholder');\n case 'checkbox':\n return t('cairo.customFields.fieldType.checkbox.Name.placeholder');\n case 'shortText':\n return t('cairo.customFields.fieldType.shortText.Name.placeholder');\n case 'longText':\n return t('cairo.customFields.fieldType.longText.Name.placeholder');\n case 'date':\n return t('cairo.customFields.fieldType.date.Name.placeholder');\n case 'dateTime':\n return t('cairo.customFields.fieldType.dateAndTime.Name.placeholder');\n case 'integer':\n return t('cairo.customFields.fieldType.numberInteger.Name.placeholder');\n case 'decimal':\n return t('cairo.customFields.fieldType.numberDecimal.Name.placeholder');\n default:\n return t(\n 'cairo.customFields.addCustomField.modal.fieldName.placeholder',\n );\n }\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_mobx","require","_ConditionalModalState","_CustomFieldModalBiReporter","_formstate","_ToggleState","_util","_isHttpError","CustomFieldModalState","constructor","params","_defineProperty2","default","ToggleState","ConditionalModalState","onConfirm","form","mode","customFieldModalBiReporter","reportModalEndProcess","t","submitError","validation","validate","hasError","enableAutoValidation","Error","_this$dataExtensionSt","_this$dataExtensionSt2","dataExtensionSchema","dataExtensionState","dataExtensionService","addCustomField","getFormValues","schema","userSchema","fqdn","fqdnString","filterable","runInAction","container","showToast","call","message","type","biName","endType","e","onConfirmError","FormState","FieldState","undefined","validators","value","name","key","allUserCustomFields","some","field","id","test","readUsers","readApps","writeUsers","writeApps","containsPii","permissions","read","apps","users","write","$","dirty","CustomFieldModalBiReporter","makeObservable","namePlaceholder","computed","isSubmitting","disabledFields","observable","ref","reset","action","setFormValues","generateUniqueKey","bound","setKeyFieldIfNotDirty","isHttpError","_e$response","_e$response2","isDetailsResponse","response","data","isErrorDetails","details","_e$response3","validationError","fieldViolations","v","ruleName","getErrorType","reportSubmitFailure","errorType","settings","setOff","disableAutoValidation","disablePermissionCheckboxes","containsKey","slug","slugify","length","index","translate","modalState","modal","confirming","isLoading","exports"],"sources":["../../../src/state/CustomFieldModalState.ts"],"sourcesContent":["import {\n action,\n computed,\n makeObservable,\n observable,\n runInAction,\n} from 'mobx';\nimport { ConditionalModalState } from './ConditionalModalState';\nimport { CustomFieldModalBiReporter } from './CustomFieldModalBiReporter';\nimport { FieldState, FormState } from 'formstate';\nimport { ToggleState } from './ToggleState';\nimport { CustomFieldOrigin, CustomFieldType } from '../services';\nimport { DataExtensionState } from './DataExtensionState';\nimport { slugify } from '../util';\nimport {\n isDetailsResponse,\n isErrorDetails,\n isHttpError,\n} from '../util/isHttpError';\n\nexport interface CustomFieldStateParams {\n dataExtensionState: DataExtensionState;\n}\n\nexport interface CustomFieldForm {\n type?: CustomFieldType;\n key: string;\n name: string;\n readApps: boolean;\n readUsers: boolean;\n writeApps: boolean;\n writeUsers: boolean;\n containsPii: boolean;\n}\n\nexport class CustomFieldModalState {\n dataExtensionState: DataExtensionState;\n customFieldModalBiReporter: CustomFieldModalBiReporter;\n settings = new ToggleState();\n submitError: 'network' | 'technical' | 'max_size' | null = null;\n mode: 'new' | 'edit' = 'new';\n origin: CustomFieldOrigin = 'Custom columns panel';\n\n modalState = new ConditionalModalState({\n onConfirm: async () => {\n const {\n form,\n mode,\n customFieldModalBiReporter: { reportModalEndProcess },\n t,\n } = this;\n\n this.submitError = null;\n\n const validation = await form.validate();\n\n if (validation.hasError) {\n this.enableAutoValidation();\n throw new Error('validation');\n }\n\n try {\n const { dataExtensionSchema } =\n await this.dataExtensionState.dataExtensionService.addCustomField({\n form: this.getFormValues(),\n schema: this.dataExtensionState.userSchema,\n fqdn: this.dataExtensionState.fqdnString,\n filterable: this.dataExtensionState.filterable,\n });\n\n runInAction(() => {\n this.dataExtensionState.userSchema = dataExtensionSchema;\n });\n\n this.dataExtensionState.container.showToast?.({\n message:\n mode === 'new'\n ? t('cairo.customFields.successToast')\n : t('cairo.customFields.editCustomField.success.toast'),\n type: 'SUCCESS',\n biName: 'cairo-custom-field-success-toast',\n });\n\n reportModalEndProcess({ endType: 'Add Field' });\n } catch (e: unknown) {\n this.onConfirmError(e);\n }\n },\n });\n\n form = new FormState({\n type: new FieldState<CustomFieldType | undefined>(undefined).validators(\n (value) => {\n if (!value) {\n return this.t(\n 'cairo.customFields.addCustomField.modal.emptyFieldType.error',\n );\n }\n\n return undefined;\n },\n ),\n name: new FieldState('').validators((value) => {\n if (!value) {\n return this.t(\n 'cairo.customFields.addCustomField.modal.emptyFieldName.error',\n );\n }\n\n return undefined;\n }),\n key: new FieldState('').validators((value) => {\n const {\n t,\n mode,\n dataExtensionState: { allUserCustomFields },\n } = this;\n\n if (!value) {\n return this.t(\n 'cairo.customFields.addCustomField.modal.emptyFieldName.error',\n );\n }\n\n if (\n mode === 'new' &&\n allUserCustomFields.some((field) => field.id === value)\n ) {\n return t('cairo.customFields.addCustomField.modal.sameKey.error');\n }\n\n if (!/^[a-zA-Z][a-zA-Z0-9_]*$/g.test(value)) {\n return t('cairo.customFields.addCustomField.modal.keyFormat.error');\n }\n\n return undefined;\n }),\n readUsers: new FieldState(false),\n readApps: new FieldState(false),\n writeUsers: new FieldState(false),\n writeApps: new FieldState(false),\n containsPii: new FieldState(false),\n });\n\n disabledFields = {\n permissions: {\n read: { apps: true, users: true },\n write: { apps: true, users: true },\n },\n };\n\n constructor(params: CustomFieldStateParams) {\n this.dataExtensionState = params.dataExtensionState;\n this.customFieldModalBiReporter = new CustomFieldModalBiReporter({\n dataExtensionState: params.dataExtensionState,\n });\n\n makeObservable(this, {\n namePlaceholder: computed,\n isSubmitting: computed,\n disabledFields: observable.ref,\n submitError: observable.ref,\n mode: observable.ref,\n reset: action,\n setFormValues: action,\n generateUniqueKey: action.bound,\n setKeyFieldIfNotDirty: action.bound,\n });\n }\n\n onConfirmError(e: unknown) {\n runInAction(() => {\n if (isHttpError(e)) {\n this.submitError = 'network';\n\n if (\n isDetailsResponse(e.response?.data) &&\n isErrorDetails(e.response?.data.details)\n ) {\n if (\n e.response?.data?.details?.validationError?.fieldViolations?.some(\n (v) => v.ruleName === 'EXCEEDED_STORED_DATA_SIZE',\n )\n ) {\n this.submitError = 'max_size';\n } else {\n this.submitError = 'technical';\n }\n }\n }\n });\n\n const getErrorType = () => {\n switch (this.submitError) {\n case 'network':\n return 'Network error';\n case 'max_size':\n return '10k Limitation';\n case 'technical':\n return 'Technical issue';\n default:\n return undefined;\n }\n };\n\n this.customFieldModalBiReporter.reportSubmitFailure({\n errorType: getErrorType(),\n });\n\n // Prevents modal closing\n throw e;\n }\n reset() {\n const {\n form,\n settings,\n disabledFields: { permissions },\n } = this;\n\n form.reset();\n settings.setOff();\n this.submitError = null;\n this.disableAutoValidation();\n\n permissions.read.apps = false;\n permissions.read.users = false;\n permissions.write.apps = false;\n permissions.write.users = false;\n }\n\n enableAutoValidation() {\n const {\n form: {\n $: { key, name, type },\n },\n } = this;\n\n key.enableAutoValidation();\n name.enableAutoValidation();\n type.enableAutoValidation();\n }\n\n disableAutoValidation() {\n const {\n form: {\n $: { key, name, type },\n },\n } = this;\n\n key.disableAutoValidation();\n name.disableAutoValidation();\n type.disableAutoValidation();\n }\n\n getFormValues(): CustomFieldForm {\n const {\n form: {\n $: {\n type,\n key,\n name,\n readApps,\n readUsers,\n writeApps,\n writeUsers,\n containsPii,\n },\n },\n } = this;\n\n return {\n type: type.value,\n key: key.value,\n name: name.value,\n readApps: readApps.value,\n readUsers: readUsers.value,\n writeApps: writeApps.value,\n writeUsers: writeUsers.value,\n containsPii: containsPii.value,\n };\n }\n\n setFormValues(\n form: CustomFieldForm,\n params?: { disablePermissionCheckboxes: boolean },\n ) {\n const {\n form: { $ },\n } = this;\n\n $.key.value = form.key;\n $.name.value = form.name;\n $.type.value = form.type;\n $.readApps.value = form.readApps;\n $.readUsers.value = form.readUsers;\n $.writeApps.value = form.writeApps;\n $.writeUsers.value = form.writeUsers;\n $.containsPii.value = form.containsPii;\n if (params?.disablePermissionCheckboxes) {\n if (form.readUsers) {\n this.disabledFields.permissions.read.users = true;\n }\n\n if (form.readApps) {\n this.disabledFields.permissions.read.apps = true;\n }\n\n if (form.writeUsers) {\n this.disabledFields.permissions.write.users = true;\n }\n\n if (form.writeApps) {\n this.disabledFields.permissions.write.apps = true;\n }\n }\n }\n\n setKeyFieldIfNotDirty = (value: string) => {\n const {\n form: {\n $: { key },\n },\n mode,\n } = this;\n\n if (mode === 'new' && !key.dirty) {\n // In the formstate library setting a field value using\n // the onChange API sets the dirty state of the field to true.\n // However, since here it's not a manual user input\n // we avoid changing the dirty state by setting a value directly.\n key.value = value;\n }\n };\n\n private containsKey(key: string) {\n return this.dataExtensionState.allUserCustomFields.some(\n (field) => field.id === key,\n );\n }\n\n generateUniqueKey(name: string) {\n const slug = slugify(name);\n const type = this.form.$.type.value;\n\n if (slug && slug.length >= 4 && !this.containsKey(slug)) {\n return slug;\n }\n\n if (!type) {\n return '';\n }\n\n let index = 1;\n\n while (this.containsKey(`${type}_${index}`)) {\n index += 1;\n }\n\n return `${type}_${index}`;\n }\n\n get t() {\n return this.dataExtensionState.container.translate;\n }\n\n get isSubmitting() {\n return this.modalState.modal.confirming.isLoading;\n }\n\n get namePlaceholder() {\n const {\n t,\n form: {\n $: { type },\n },\n } = this;\n\n switch (type.value) {\n case 'dropdown':\n return t('cairo.customFields.fieldType.dropdownList.Name.placeholder');\n case 'checkbox':\n return t('cairo.customFields.fieldType.checkbox.Name.placeholder');\n case 'shortText':\n return t('cairo.customFields.fieldType.shortText.Name.placeholder');\n case 'longText':\n return t('cairo.customFields.fieldType.longText.Name.placeholder');\n case 'date':\n return t('cairo.customFields.fieldType.date.Name.placeholder');\n case 'dateTime':\n return t('cairo.customFields.fieldType.dateAndTime.Name.placeholder');\n case 'integer':\n return t('cairo.customFields.fieldType.numberInteger.Name.placeholder');\n case 'decimal':\n return t('cairo.customFields.fieldType.numberDecimal.Name.placeholder');\n default:\n return t(\n 'cairo.customFields.addCustomField.modal.fieldName.placeholder',\n );\n }\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -30,6 +30,7 @@ class DataExtensionState {
30
30
  (0, _defineProperty2.default)(this, "fqdn", void 0);
31
31
  (0, _defineProperty2.default)(this, "userSchema", undefined);
32
32
  (0, _defineProperty2.default)(this, "appSchemas", undefined);
33
+ (0, _defineProperty2.default)(this, "containsPii", void 0);
33
34
  (0, _defineProperty2.default)(this, "disableUserDefinedWriting", void 0);
34
35
  (0, _defineProperty2.default)(this, "filterable", void 0);
35
36
  (0, _defineProperty2.default)(this, "_hasWritePermissions", void 0);
@@ -43,6 +44,7 @@ class DataExtensionState {
43
44
  this.biReporter = new _DataExtensionStateBIReporter.DataExtensionStateBIReporter({
44
45
  reportBi: this.reportBi
45
46
  });
47
+ this.containsPii = params.containsPii;
46
48
  (0, _mobx.makeObservable)(this, {
47
49
  allUserCustomFields: _mobx.computed,
48
50
  allAppsCustomFields: _mobx.computed,
@@ -56,7 +58,8 @@ class DataExtensionState {
56
58
  disableAddCustomFieldContent: _mobx.computed,
57
59
  userSchema: _mobx.observable.ref,
58
60
  appSchemas: _mobx.observable.ref,
59
- openCustomFieldModal: _mobx.action
61
+ openCustomFieldModal: _mobx.action,
62
+ containsPii: _mobx.observable
60
63
  });
61
64
  }
62
65
  get hasWritePermissions() {
@@ -140,6 +143,7 @@ class DataExtensionState {
140
143
  read,
141
144
  write
142
145
  } = customField['x-wix-permissions'];
146
+ const isPiiField = customField['x-wix-pii'];
143
147
  const readApps = read == null ? void 0 : read.includes('apps');
144
148
  const readUsers = read == null ? void 0 : read.includes('users-of-users');
145
149
  const writeApps = write == null ? void 0 : write.includes('apps');
@@ -151,7 +155,8 @@ class DataExtensionState {
151
155
  readApps,
152
156
  readUsers,
153
157
  writeApps,
154
- writeUsers
158
+ writeUsers,
159
+ containsPii: Boolean(isPiiField)
155
160
  };
156
161
  }
157
162
  openCustomFieldModal(params) {