@wix/bex-core 2.33.0 → 2.36.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/assets/locale/messages_cs.json +2 -0
- package/dist/cjs/assets/locale/messages_da.json +2 -0
- package/dist/cjs/assets/locale/messages_de.json +2 -0
- package/dist/cjs/assets/locale/messages_en.json +2 -1
- package/dist/cjs/assets/locale/messages_es.json +2 -0
- package/dist/cjs/assets/locale/messages_fr.json +2 -0
- package/dist/cjs/assets/locale/messages_hi.json +2 -0
- package/dist/cjs/assets/locale/messages_id.json +2 -0
- package/dist/cjs/assets/locale/messages_it.json +2 -0
- package/dist/cjs/assets/locale/messages_ja.json +2 -0
- package/dist/cjs/assets/locale/messages_ko.json +2 -0
- package/dist/cjs/assets/locale/messages_nl.json +2 -0
- package/dist/cjs/assets/locale/messages_no.json +2 -0
- package/dist/cjs/assets/locale/messages_pl.json +2 -0
- package/dist/cjs/assets/locale/messages_pt.json +2 -0
- package/dist/cjs/assets/locale/messages_ru.json +2 -0
- package/dist/cjs/assets/locale/messages_sv.json +2 -0
- package/dist/cjs/assets/locale/messages_th.json +2 -0
- package/dist/cjs/assets/locale/messages_tr.json +2 -0
- package/dist/cjs/assets/locale/messages_uk.json +2 -0
- package/dist/cjs/assets/locale/messages_vi.json +2 -0
- package/dist/cjs/assets/locale/messages_visuale2e.json +7 -0
- package/dist/cjs/assets/locale/messages_zh.json +2 -0
- package/dist/cjs/hooks/createCollectionConfig.js.map +1 -1
- package/dist/cjs/providers/createContext.js.map +1 -1
- package/dist/cjs/services/cairoMonitor.js.map +1 -1
- package/dist/cjs/services/dataExtensionService.js.map +1 -1
- package/dist/cjs/services/fetchTranslations.js.map +1 -1
- package/dist/cjs/services/navigationManager.js.map +1 -1
- package/dist/cjs/services/replaceSearchParamsWith.js.map +1 -1
- package/dist/cjs/services/translations.js.map +1 -1
- package/dist/cjs/state/CollectionOptimisticExecutor.js.map +1 -1
- package/dist/cjs/state/CustomFieldModalState.js.map +1 -1
- package/dist/cjs/state/ExportState.js.map +1 -1
- package/dist/cjs/state/QueryHistoryState.js.map +1 -1
- package/dist/cjs/state/TagsState/TagsBIReporter.js.map +1 -1
- package/dist/cjs/testkit/WixPatternsContainer.driver.js.map +1 -1
- package/dist/cjs/testkit/appSettingsMocks.js.map +1 -1
- package/dist/cjs/util/assertKey.js.map +1 -1
- package/dist/cjs/util/typedEmitter.js +0 -2
- package/dist/cjs/util/typedEmitter.js.map +1 -1
- package/dist/esm/InMemoryBackend/InMemoryBackend.js +20 -16
- package/dist/esm/InMemoryBackend/InMemoryBackend.js.map +1 -1
- package/dist/esm/assets/locale/messages_cs.json +2 -0
- package/dist/esm/assets/locale/messages_da.json +2 -0
- package/dist/esm/assets/locale/messages_de.json +2 -0
- package/dist/esm/assets/locale/messages_en.json +2 -1
- package/dist/esm/assets/locale/messages_es.json +2 -0
- package/dist/esm/assets/locale/messages_fr.json +2 -0
- package/dist/esm/assets/locale/messages_hi.json +2 -0
- package/dist/esm/assets/locale/messages_id.json +2 -0
- package/dist/esm/assets/locale/messages_it.json +2 -0
- package/dist/esm/assets/locale/messages_ja.json +2 -0
- package/dist/esm/assets/locale/messages_ko.json +2 -0
- package/dist/esm/assets/locale/messages_nl.json +2 -0
- package/dist/esm/assets/locale/messages_no.json +2 -0
- package/dist/esm/assets/locale/messages_pl.json +2 -0
- package/dist/esm/assets/locale/messages_pt.json +2 -0
- package/dist/esm/assets/locale/messages_ru.json +2 -0
- package/dist/esm/assets/locale/messages_sv.json +2 -0
- package/dist/esm/assets/locale/messages_th.json +2 -0
- package/dist/esm/assets/locale/messages_tr.json +2 -0
- package/dist/esm/assets/locale/messages_uk.json +2 -0
- package/dist/esm/assets/locale/messages_vi.json +2 -0
- package/dist/esm/assets/locale/messages_visuale2e.json +7 -0
- package/dist/esm/assets/locale/messages_zh.json +2 -0
- package/dist/esm/hooks/createCollection.js +17 -6
- package/dist/esm/hooks/createCollection.js.map +1 -1
- package/dist/esm/hooks/createCollectionConfig.js +12 -7
- package/dist/esm/hooks/createCollectionConfig.js.map +1 -1
- package/dist/esm/hooks/useAmbassadorCollection.js +15 -6
- package/dist/esm/hooks/useAmbassadorCollection.js.map +1 -1
- package/dist/esm/hooks/useCollection/useCollection.js +4 -1
- package/dist/esm/hooks/useCollection/useCollection.js.map +1 -1
- package/dist/esm/hooks/useCollectionPageState.js +8 -6
- package/dist/esm/hooks/useCollectionPageState.js.map +1 -1
- package/dist/esm/hooks/useOptimisticActions.js +6 -5
- package/dist/esm/hooks/useOptimisticActions.js.map +1 -1
- package/dist/esm/hooks/usePicker.js +8 -4
- package/dist/esm/hooks/usePicker.js.map +1 -1
- package/dist/esm/services/AccountPreferencesMergeStrategy.js +1 -2
- package/dist/esm/services/AccountPreferencesMergeStrategy.js.map +1 -1
- package/dist/esm/services/AccountPreferencesStrategy.js +1 -2
- package/dist/esm/services/AccountPreferencesStrategy.js.map +1 -1
- package/dist/esm/services/AppSettingsCapsule.js +5 -3
- package/dist/esm/services/AppSettingsCapsule.js.map +1 -1
- package/dist/esm/services/WixPatternsError.js +1 -1
- package/dist/esm/services/WixPatternsError.js.map +1 -1
- package/dist/esm/services/cairoMonitor.js +14 -13
- package/dist/esm/services/cairoMonitor.js.map +1 -1
- package/dist/esm/services/createAccountComponentSettings.js +6 -4
- package/dist/esm/services/createAccountComponentSettings.js.map +1 -1
- package/dist/esm/services/dataExtensionService.js +33 -12
- package/dist/esm/services/dataExtensionService.js.map +1 -1
- package/dist/esm/services/experiments.js +1 -2
- package/dist/esm/services/experiments.js.map +1 -1
- package/dist/esm/services/fetchTranslations.js +1 -1
- package/dist/esm/services/fetchTranslations.js.map +1 -1
- package/dist/esm/services/getErrorMonitorCompat.js +1 -2
- package/dist/esm/services/getErrorMonitorCompat.js.map +1 -1
- package/dist/esm/services/replaceSearchParamsWith.js +4 -1
- package/dist/esm/services/replaceSearchParamsWith.js.map +1 -1
- package/dist/esm/state/AppsState.js +1 -2
- package/dist/esm/state/AppsState.js.map +1 -1
- package/dist/esm/state/ArrayFilterState/ArrayFilterState.js +59 -32
- package/dist/esm/state/ArrayFilterState/ArrayFilterState.js.map +1 -1
- package/dist/esm/state/BeforeUnloadCompatState.js +11 -6
- package/dist/esm/state/BeforeUnloadCompatState.js.map +1 -1
- package/dist/esm/state/BulkActionModalState.js +6 -1
- package/dist/esm/state/BulkActionModalState.js.map +1 -1
- package/dist/esm/state/CollectionOptimisticActions.js +123 -75
- package/dist/esm/state/CollectionOptimisticActions.js.map +1 -1
- package/dist/esm/state/CollectionOptimisticExecutor.js +32 -19
- package/dist/esm/state/CollectionOptimisticExecutor.js.map +1 -1
- package/dist/esm/state/CollectionOptimisticPatch.js +1 -1
- package/dist/esm/state/CollectionOptimisticPatch.js.map +1 -1
- package/dist/esm/state/CollectionOptimisticProcessor.js +2 -3
- package/dist/esm/state/CollectionOptimisticProcessor.js.map +1 -1
- package/dist/esm/state/CollectionOptimisticSequenceExecutor.js +18 -8
- package/dist/esm/state/CollectionOptimisticSequenceExecutor.js.map +1 -1
- package/dist/esm/state/CollectionPageState.js +1 -1
- package/dist/esm/state/CollectionPageState.js.map +1 -1
- package/dist/esm/state/CollectionState.js +73 -46
- package/dist/esm/state/CollectionState.js.map +1 -1
- package/dist/esm/state/CustomFieldModalBiReporter.js +1 -1
- package/dist/esm/state/CustomFieldModalBiReporter.js.map +1 -1
- package/dist/esm/state/CustomFieldModalState.js +5 -7
- package/dist/esm/state/CustomFieldModalState.js.map +1 -1
- package/dist/esm/state/CustomFieldsViewWidgetState.js +11 -11
- package/dist/esm/state/CustomFieldsViewWidgetState.js.map +1 -1
- package/dist/esm/state/CustomFilterState/CustomFilterState.js +15 -16
- package/dist/esm/state/CustomFilterState/CustomFilterState.js.map +1 -1
- package/dist/esm/state/DataExtensionState.js +19 -27
- package/dist/esm/state/DataExtensionState.js.map +1 -1
- package/dist/esm/state/ExportState.js +96 -46
- package/dist/esm/state/ExportState.js.map +1 -1
- package/dist/esm/state/ExportStateBIReporter.js +27 -8
- package/dist/esm/state/ExportStateBIReporter.js.map +1 -1
- package/dist/esm/state/ModalState.js +3 -6
- package/dist/esm/state/ModalState.js.map +1 -1
- package/dist/esm/state/MultiCollectionSupport.js +2 -4
- package/dist/esm/state/MultiCollectionSupport.js.map +1 -1
- package/dist/esm/state/OnlineState.js +2 -4
- package/dist/esm/state/OnlineState.js.map +1 -1
- package/dist/esm/state/Pagination.js +1 -2
- package/dist/esm/state/Pagination.js.map +1 -1
- package/dist/esm/state/PickerState.js +78 -24
- package/dist/esm/state/PickerState.js.map +1 -1
- package/dist/esm/state/PromiseState.js +21 -4
- package/dist/esm/state/PromiseState.js.map +1 -1
- package/dist/esm/state/PromisesSequence.js +1 -1
- package/dist/esm/state/PromisesSequence.js.map +1 -1
- package/dist/esm/state/QueryPendingState.js +6 -8
- package/dist/esm/state/QueryPendingState.js.map +1 -1
- package/dist/esm/state/QueryPendingStateBIReporter.js +9 -4
- package/dist/esm/state/QueryPendingStateBIReporter.js.map +1 -1
- package/dist/esm/state/QueryResultSimulationDefault.js +1 -1
- package/dist/esm/state/QueryResultSimulationDefault.js.map +1 -1
- package/dist/esm/state/QueryResultState.js +6 -2
- package/dist/esm/state/QueryResultState.js.map +1 -1
- package/dist/esm/state/QueryState.js +15 -13
- package/dist/esm/state/QueryState.js.map +1 -1
- package/dist/esm/state/RangeFilterState/RangeFilterState.js +34 -24
- package/dist/esm/state/RangeFilterState/RangeFilterState.js.map +1 -1
- package/dist/esm/state/ReturnFocus.js +1 -2
- package/dist/esm/state/ReturnFocus.js.map +1 -1
- package/dist/esm/state/SelectState.js +16 -10
- package/dist/esm/state/SelectState.js.map +1 -1
- package/dist/esm/state/SortState.js +3 -3
- package/dist/esm/state/SortState.js.map +1 -1
- package/dist/esm/state/StringFilterState/StringFilterState.js +19 -16
- package/dist/esm/state/StringFilterState/StringFilterState.js.map +1 -1
- package/dist/esm/state/TagsState/TagsAssignmentState.js +38 -22
- package/dist/esm/state/TagsState/TagsAssignmentState.js.map +1 -1
- package/dist/esm/state/TagsState/TagsBIReporter.js +37 -9
- package/dist/esm/state/TagsState/TagsBIReporter.js.map +1 -1
- package/dist/esm/state/TagsState/TagsFormState.js +8 -7
- package/dist/esm/state/TagsState/TagsFormState.js.map +1 -1
- package/dist/esm/state/TagsState/TagsManagementState.js +70 -50
- package/dist/esm/state/TagsState/TagsManagementState.js.map +1 -1
- package/dist/esm/state/TagsState/TagsWidgetState.js +14 -13
- package/dist/esm/state/TagsState/TagsWidgetState.js.map +1 -1
- package/dist/esm/state/TaskState.js +20 -6
- package/dist/esm/state/TaskState.js.map +1 -1
- package/dist/esm/state/TextOverflowState.js +1 -1
- package/dist/esm/state/TextOverflowState.js.map +1 -1
- package/dist/esm/state/TransitionState.js +1 -1
- package/dist/esm/state/TransitionState.js.map +1 -1
- package/dist/esm/state/WixPatternsContainer.js +20 -11
- package/dist/esm/state/WixPatternsContainer.js.map +1 -1
- package/dist/esm/state/buildWixPatternsContainer.js +16 -7
- package/dist/esm/state/buildWixPatternsContainer.js.map +1 -1
- package/dist/esm/state/getJobItemsAbsoluteCounter.js +6 -8
- package/dist/esm/state/getJobItemsAbsoluteCounter.js.map +1 -1
- package/dist/esm/state/onItemsCreated.js +9 -5
- package/dist/esm/state/onItemsCreated.js.map +1 -1
- package/dist/esm/state/optimistic-simulation/filterPageByPatches.js +4 -1
- package/dist/esm/state/optimistic-simulation/filterPageByPatches.js.map +1 -1
- package/dist/esm/state/optimistic-simulation/orderByMoves.js +1 -2
- package/dist/esm/state/optimistic-simulation/orderByMoves.js.map +1 -1
- package/dist/esm/state/optimistic-simulation/orderByOrders.js +1 -1
- package/dist/esm/state/optimistic-simulation/orderByOrders.js.map +1 -1
- package/dist/esm/state/optimistic-simulation/transformItemByUpdateAllPatches.js +4 -1
- package/dist/esm/state/optimistic-simulation/transformItemByUpdateAllPatches.js.map +1 -1
- package/dist/esm/state/warmUpPickerStandalone.js +13 -2
- package/dist/esm/state/warmUpPickerStandalone.js.map +1 -1
- package/dist/esm/testkit/ProductsCollectionState.driver.js +38 -4
- package/dist/esm/testkit/ProductsCollectionState.driver.js.map +1 -1
- package/dist/esm/testkit/WixPatternsContainer.driver.js +89 -63
- package/dist/esm/testkit/WixPatternsContainer.driver.js.map +1 -1
- package/dist/esm/testkit/appSettingsMocks.js +7 -6
- package/dist/esm/testkit/appSettingsMocks.js.map +1 -1
- package/dist/esm/testkit/createCountriesBackend.js +15 -8
- package/dist/esm/testkit/createCountriesBackend.js.map +1 -1
- package/dist/esm/testkit/createFoldersBackend.js +48 -30
- package/dist/esm/testkit/createFoldersBackend.js.map +1 -1
- package/dist/esm/testkit/createProductsBackend.js +32 -18
- package/dist/esm/testkit/createProductsBackend.js.map +1 -1
- package/dist/esm/testkit/exportServiceMocks.js +65 -17
- package/dist/esm/testkit/exportServiceMocks.js.map +1 -1
- package/dist/esm/testkit/nestifyItems.js +6 -6
- package/dist/esm/testkit/nestifyItems.js.map +1 -1
- package/dist/esm/util/assertKey.js +4 -6
- package/dist/esm/util/assertKey.js.map +1 -1
- package/dist/esm/util/isHttpError.js +1 -2
- package/dist/esm/util/isHttpError.js.map +1 -1
- package/dist/esm/util/parseFqdn.js +1 -2
- package/dist/esm/util/parseFqdn.js.map +1 -1
- package/dist/esm/util/shouldRedirectToLogin.js +1 -1
- package/dist/esm/util/shouldRedirectToLogin.js.map +1 -1
- package/dist/types/services/fetchTranslationsPreBundled.d.ts +1 -1
- package/dist/types/services/fetchTranslationsPreBundled.d.ts.map +1 -1
- package/dist/types/services/translations.d.ts +1 -1
- package/dist/types/services/translations.d.ts.map +1 -1
- package/dist/types/state/WixPatternsContainer.d.ts +3 -3
- package/dist/types/state/WixPatternsContainer.d.ts.map +1 -1
- package/dist/types/util/typedEmitter.d.ts +1 -1
- package/dist/types/util/typedEmitter.d.ts.map +1 -1
- package/package.json +4 -4
|
@@ -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\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: 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\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: string },\n ): string;\n};\n"],"mappings":"","ignoreList":[]}
|
|
@@ -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 ...(typeof errorToast === 'string'\n ? { message: errorToast, biName: `cairo-error-toast` }\n : errorToast),\n type: 'ERROR',\n action: {\n uiType: 'LINK',\n text: t('cairo.toast.retry'),\n onClick: onRetryClick,\n removeToastOnClick: true,\n },\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","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 ...(typeof errorToast === 'string'\n ? { message: errorToast, biName: `cairo-error-toast` }\n : errorToast),\n type: 'ERROR',\n action: {\n uiType: 'LINK',\n text: t('cairo.toast.retry'),\n onClick: onRetryClick,\n removeToastOnClick: true,\n },\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 +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","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 });\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","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 });\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 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_http","require","_types","_mobx","_model","_services","_mapValues","_interopRequireDefault","_events","_ExportStateBIReporter","_getJobItemsAbsoluteCounter","defaultPlatformizedQuery","filter","sort","ExportState","constructor","props","_defineProperty2","default","queryStatus","idle","pollingDelay","stateJob","maxPolling","maxRetries","queryJobRetries","delay","max","iterationsCount","pollCount","retries","count","EventEmitter","selected","action","collection","bulkSelect","selectedCountOrTotal","filtered","result","total","supportTotal","all","allItemsQuery","query","asComputed","filtersKey","mapValues","customFilters","undefined","rawFilters","filters","queryKey","_queryKey","allItemsQueryResult","queryClient","fetchQuery","queryFn","_queryFn","e","preventDefault","returnValue","customTotal","differentQueryEndpointThanCollection","translate","createExportAsyncJobRequest","saveAs","window","httpClient","onlineState","exportModalState","collectionPageState","showToast","internalMonitor","reportBi","disabledRadios","transformPlatformizedQuery","bi","ExportStateBIReporter","makeObservable","exportStatus","observable","ref","iterationsCountPoll","isExporting","computed","totalForExport","selectedExportOption","counter","absoluteCounter","onExportToClick","bound","onExportCloseAttemptClick","onCancelExportCloseButtonClick","onCancelExportGoBackButtonClick","onExportSecondaryActionAttempt","onRetryExportToClick","onFailedClose","onFailedCancel","onCancelClick","onCloseClick","init","setTotalForExport","onExportTypeChange","hasFilters","totalForExportMap","hasSelectedRows","isAllSelected","currentStep","_onJobSuccess","_checkIfStaleJob","_throwJobError","_updateJobProgress","isModalOpen","isOpen","isLoading","isSuccess","_cancelJob","_reset","prev","next","_this$maybeToast","maybeToast","remove","clickOpenModal","onOnlineChanged","isOnline","events","emit","on","removeEventListener","beforeunload","removeAllListeners","off","hasActiveFilters","selectedIds","length","allSelected","totalForExportGettersMap","params","collectionTotalPromise","runInAction","close","onCancelExportVerifyButtonClick","onCancelExportButtonClick","onExportCancelAttemptClick","exportStartTime","performance","now","interactionStarted","reportExportEnd","onExportStart","_exportTo","onExportEnd","interactionEnded","job","_job$data","_this$showToast","t","data","signedUrl","once","Promise","resolve","setTimeout","success","_updateAbsoluteCounter","res","biState","beforeToast","call","message","biName","timeout","type","onToastDismissed","by","text","uiType","navigationTarget","url","openInNewTab","onClick","onToastActionClick","download","then","_job$data2","_job$data3","_job$data4","error","applicationError","code","Object","assign","Error","response","_job$data5","_job$data6","status","JobStatus","FINISHED","_job$data7","completionStep","config","_job$data8","newAbsoluteCounter","getJobItemsAbsoluteCounter","Math","floor","random","newCounter","round","_poll","jobId","current","_job$data$error","currentJob","promise","getExportAsyncJobResponse","request","getExportAsyncJob","catch","WixPatternsError","errorCode","originalException","extraData","loading","FAILED","_job$data$error2","checkIfStaleJobResult","_job$data9","_job$data10","pagingMetadata","console","reportError","_this$saveAs","addEventListener","platformizedQuery","selectAll","uncheckedInCurrentCollection","uncheckedValues","computedQuery","wixPatternsQuery","exportPublicState","selectedItems","isSelectAll","totalForExportPromise","pageTitle","_createExport","createExportAsyncJobResponse","createExportAsyncJob","fields","methodMetadata","err","_createExportAsyncJob","id","_createExportAsyncJob2","exports"],"sources":["../../../src/state/ExportState.ts"],"sourcesContent":["import {\n createExportAsyncJob,\n getExportAsyncJob,\n} from '@wix/bex-utils/@wix/ambassador-fedinfra-exportservice-v1-export-async-job/http';\nimport {\n CreateExportAsyncJobRequest,\n ExportAsyncJob,\n ExportQueryV2 as QueryV2,\n Status as JobStatus,\n} from '@wix/bex-utils/@wix/ambassador-fedinfra-exportservice-v1-export-async-job/types';\nimport {\n action,\n computed,\n makeObservable,\n observable,\n runInAction,\n} from 'mobx';\nimport {\n WixPatternsEssentials,\n ComputedQueryFull,\n FiltersMap,\n queryStatus,\n ShowToast,\n TaskStatus,\n} from '../model';\nimport {\n WixPatternsError,\n WixPatternsMonitor,\n PartialWindow,\n ReportBI,\n Translate,\n} from '../services';\nimport { CollectionState } from './CollectionState';\nimport mapValues from 'lodash/mapValues';\nimport { EventEmitter } from 'events';\nimport { TypedEmitter } from '../util';\nimport { ExportStateBIReporter } from './ExportStateBIReporter';\nimport { ModalState } from './ModalState';\nimport { getJobItemsAbsoluteCounter } from './getJobItemsAbsoluteCounter';\nimport { ExportJobStateParams } from './ExportJobState';\nimport { ErrorDetails } from '../util/isHttpError';\nimport { OnlineState } from './OnlineState';\nimport { CollectionPageState } from './CollectionPageState';\n\nfunction defaultPlatformizedQuery(): QueryV2 {\n return {\n filter: {},\n sort: [],\n };\n}\n\ninterface ExportPublicState<T, F extends FiltersMap> {\n platformizedQuery: QueryV2;\n wixPatternsQuery: ComputedQueryFull<F>;\n selectedItems?: string[];\n isSelectAll: boolean;\n uncheckedValues?: T[];\n}\n\nexport type CustomTotalFn<T, F extends FiltersMap> = (\n params: ExportPublicState<T, F> & {\n collectionTotalPromise: number | null | Promise<number | null | undefined>;\n },\n) => number | null | undefined | Promise<number | null | undefined>;\n\nexport type TransformQuery<T, F extends FiltersMap> = (\n params: ExportPublicState<T, F>,\n) => QueryV2 | Promise<QueryV2>;\n\nexport type SaveAsFn<T, F extends FiltersMap> = (\n params: ExportPublicState<T, F>,\n) => string;\n\nexport interface ExportStateProps<T, F extends FiltersMap> {\n transformPlatformizedQuery?: TransformQuery<T, F>;\n differentQueryEndpointThanCollection?: boolean;\n customTotal?: CustomTotalFn<T, F>;\n\n createExportAsyncJobRequest: Partial<CreateExportAsyncJobRequest>;\n saveAs?: SaveAsFn<T, F>;\n\n httpClient: WixPatternsEssentials['httpClient'];\n showToast?: ShowToast;\n translate: Translate;\n collection: CollectionState<T, F>;\n reportBi: ReportBI;\n onlineState: OnlineState;\n internalMonitor: WixPatternsMonitor;\n\n exportModalState: ModalState;\n collectionPageState: CollectionPageState;\n window: PartialWindow;\n}\n\nexport type SelectedExportOption = 'all' | 'selected' | 'filtered';\n\nexport class ExportState<T, F extends FiltersMap> {\n exportStatus: TaskStatus<ExportAsyncJob, unknown> = {\n ...queryStatus.idle,\n };\n\n readonly config = {\n pollingDelay: 2000,\n stateJob: {\n maxPolling: 14,\n maxRetries: 1,\n },\n queryJobRetries: {\n delay: 5000,\n max: 4,\n },\n };\n\n exportStartTime: number = 0;\n totalForExport: number | undefined | null = null;\n selectedExportOption: SelectedExportOption = 'all';\n disabledRadios: SelectedExportOption[];\n maybeToast?: { remove: () => void };\n iterationsCountPoll: {\n iterationsCount?: number;\n pollCount: number;\n retries: number;\n } = {\n iterationsCount: 0,\n pollCount: 0,\n retries: 0,\n };\n\n queryJobRetries: {\n count: number;\n } = {\n count: 0,\n };\n\n readonly differentQueryEndpointThanCollection;\n readonly customTotal;\n readonly translate;\n readonly createExportAsyncJobRequest;\n readonly saveAs;\n readonly window;\n readonly httpClient: WixPatternsEssentials['httpClient'];\n readonly onlineState;\n readonly exportModalState;\n readonly collectionPageState;\n readonly transformPlatformizedQuery?: ExportStateProps<\n T,\n F\n >['transformPlatformizedQuery'];\n readonly showToast;\n readonly internalMonitor;\n readonly collection;\n readonly reportBi;\n readonly bi;\n\n readonly events = new EventEmitter() as TypedEmitter<{\n afterJobCreated: (params: { job: ExportAsyncJob }) => unknown;\n undoCancel: () => unknown;\n online: () => unknown;\n }>;\n\n counter = 0;\n absoluteCounter = 0;\n retries = 0;\n\n constructor(props: ExportStateProps<T, F>) {\n this.customTotal = props.customTotal;\n this.differentQueryEndpointThanCollection =\n props.differentQueryEndpointThanCollection;\n this.translate = props.translate;\n this.createExportAsyncJobRequest = props.createExportAsyncJobRequest;\n this.saveAs = props.saveAs;\n this.window = props.window;\n this.httpClient = props.httpClient;\n this.onlineState = props.onlineState;\n this.exportModalState = props.exportModalState;\n this.collectionPageState = props.collectionPageState;\n this.showToast = props.showToast;\n this.internalMonitor = props.internalMonitor;\n this.collection = props.collection;\n this.reportBi = props.reportBi;\n this.disabledRadios = [];\n this.transformPlatformizedQuery = props.transformPlatformizedQuery;\n\n this.bi = new ExportStateBIReporter(this);\n makeObservable(this, {\n exportStatus: observable.ref,\n iterationsCountPoll: observable.ref,\n isExporting: computed,\n totalForExport: observable.ref,\n selectedExportOption: observable.ref,\n disabledRadios: observable.ref,\n counter: observable.ref,\n absoluteCounter: observable.ref,\n onExportToClick: action.bound,\n onExportCloseAttemptClick: action.bound,\n onCancelExportCloseButtonClick: action.bound,\n onCancelExportGoBackButtonClick: action.bound,\n onExportSecondaryActionAttempt: action.bound,\n onRetryExportToClick: action.bound,\n onFailedClose: action.bound,\n onFailedCancel: action.bound,\n onCancelClick: action.bound,\n onCloseClick: action.bound,\n init: action.bound,\n setTotalForExport: action,\n onExportTypeChange: action,\n hasFilters: computed,\n totalForExportMap: computed,\n hasSelectedRows: computed,\n isAllSelected: computed,\n currentStep: observable.ref,\n _onJobSuccess: action,\n _checkIfStaleJob: action,\n _throwJobError: action,\n _updateJobProgress: action,\n });\n }\n\n get isModalOpen() {\n return this.exportModalState.isOpen;\n }\n\n currentStep: 'config' | 'progress' | 'error' | 'cancel' = 'config';\n\n get isExporting() {\n const { exportStatus } = this;\n return exportStatus.isLoading || exportStatus.isSuccess;\n }\n\n _cancelJob() {\n // const { events } = this;\n // events.once('afterJobCreated', ({ job }) => {\n // const { httpClient } = this;\n // httpClient.request(\n // cancelExportAsyncJob({\n // jobId: job.id as string,\n // }),\n // );\n // });\n }\n\n _reset() {\n this.exportStatus = {\n ...queryStatus.idle,\n };\n this.currentStep = 'config';\n this.counter = 0;\n this.absoluteCounter = 0;\n this.totalForExport = null;\n }\n\n onExportTypeChange(selectedExportOption: SelectedExportOption) {\n this.bi.onExportTypeChange({\n prev: this.selectedExportOption,\n next: selectedExportOption,\n });\n this.selectedExportOption = selectedExportOption;\n }\n\n init() {\n const { onlineState } = this;\n this.maybeToast?.remove();\n\n if (this.hasSelectedRows) {\n this.disabledRadios = this.hasFilters ? [] : ['filtered'];\n this.selectedExportOption = 'selected';\n } else if (this.hasFilters) {\n this.disabledRadios = ['selected'];\n this.selectedExportOption = 'filtered';\n } else {\n this.disabledRadios = ['selected', 'filtered'];\n this.selectedExportOption = 'all';\n }\n\n this.bi.clickOpenModal();\n\n const onOnlineChanged = action((isOnline: boolean) => {\n if (isOnline && this.currentStep === 'error') {\n this.currentStep = 'progress';\n this.events.emit('online');\n }\n });\n\n onlineState.events.on('change', onOnlineChanged);\n\n return () => {\n window.removeEventListener('beforeunload', this.beforeunload);\n this.events.removeAllListeners('undoCancel');\n this.events.removeAllListeners('online');\n onlineState.events.off('change', onOnlineChanged);\n };\n }\n\n get hasFilters() {\n return this.collection.query.hasActiveFilters;\n }\n\n get hasSelectedRows() {\n return (\n this.collection.bulkSelect.selectedIds.length !== undefined &&\n this.collection.bulkSelect.selectedIds.length > 0\n );\n }\n\n get isAllSelected() {\n return this.collection.bulkSelect.allSelected;\n }\n\n get totalForExportMap() {\n return {\n selected: this.totalForExportGettersMap.selected(),\n filtered: this.totalForExportGettersMap.filtered(),\n };\n }\n\n readonly totalForExportGettersMap = {\n selected: action(() => {\n const { collection } = this;\n\n const {\n bulkSelect: { selectedCountOrTotal },\n } = collection;\n\n return selectedCountOrTotal;\n }),\n filtered: action(() => {\n const { collection } = this;\n const {\n result: { total, supportTotal },\n } = collection;\n\n if (!supportTotal) {\n return null;\n }\n\n return total;\n }),\n all: action(async () => {\n const { collection } = this;\n\n const allItemsQuery = {\n ...collection.query.asComputed,\n filtersKey: mapValues(collection.query.customFilters, (filter) =>\n filter != null ? null : undefined,\n ),\n rawFilters: {},\n filters: {},\n };\n\n const queryKey = collection._queryKey(allItemsQuery);\n\n const allItemsQueryResult = await collection.queryClient.fetchQuery({\n queryFn: () => collection._queryFn(allItemsQuery),\n queryKey,\n });\n\n return allItemsQueryResult.total;\n }),\n };\n\n async setTotalForExport(params: ExportPublicState<T, F>) {\n const { selectedExportOption, collection } = this;\n const {\n result: { supportTotal },\n } = collection;\n\n if (this.differentQueryEndpointThanCollection === true) {\n return;\n }\n\n const collectionTotalPromise = (() => {\n if (selectedExportOption === 'selected') {\n return this.totalForExportGettersMap.selected();\n }\n\n if (selectedExportOption === 'filtered' && supportTotal) {\n return this.totalForExportGettersMap.filtered();\n }\n\n return this.totalForExportGettersMap.all();\n })();\n\n if (this.customTotal) {\n const totalForExport = await this.customTotal({\n ...params,\n collectionTotalPromise,\n });\n runInAction(() => {\n this.totalForExport = totalForExport;\n });\n return;\n }\n\n const totalForExport = await collectionTotalPromise;\n runInAction(() => {\n this.totalForExport = totalForExport;\n });\n }\n\n onCancelClick() {\n const { bi, exportModalState } = this;\n bi.onCancelClick();\n exportModalState.close();\n }\n\n onCancelExportVerifyButtonClick() {\n const { bi, exportModalState } = this;\n bi.onCancelExportButtonClick();\n exportModalState.close();\n }\n\n onCancelExportGoBackButtonClick() {\n this.currentStep = 'progress';\n const { bi, events } = this;\n bi.onCancelExportGoBackButtonClick();\n events.emit('undoCancel');\n }\n\n onCancelExportCloseButtonClick() {\n this.currentStep = 'progress';\n const { bi, events } = this;\n bi.onCancelExportCloseButtonClick();\n events.emit('undoCancel');\n }\n\n onExportCloseAttemptClick() {\n this.currentStep = 'cancel';\n const { bi } = this;\n bi.onExportCloseAttemptClick();\n }\n\n onExportSecondaryActionAttempt() {\n this.currentStep = 'cancel';\n const { bi } = this;\n bi.onExportCancelAttemptClick();\n }\n\n onCloseClick() {\n const { bi, exportModalState } = this;\n bi.onCloseClick();\n exportModalState.close();\n }\n\n async onExportToClick() {\n const { internalMonitor, bi } = this;\n this.retries += 1;\n this.iterationsCountPoll = {\n iterationsCount: 0,\n retries: 0,\n pollCount: 0,\n };\n this.queryJobRetries = {\n count: 0,\n };\n this.exportStartTime = performance.now();\n internalMonitor.interactionStarted('export-to');\n bi.onExportToClick();\n const reportExportEnd = bi.onExportStart();\n this._exportTo({\n onExportEnd: action((params) => {\n if (params.result !== 'fail') {\n internalMonitor.interactionEnded('export-to');\n }\n\n reportExportEnd(params);\n }),\n });\n }\n\n beforeunload = (e: BeforeUnloadEvent) => {\n e.preventDefault();\n e.returnValue = '';\n };\n\n async onRetryExportToClick() {\n const { bi } = this;\n bi.onRetryExportToClick();\n await this.onExportToClick();\n }\n\n async onFailedClose() {\n const { bi, exportModalState } = this;\n bi.onFailedClose();\n exportModalState.close();\n }\n\n async onFailedCancel() {\n const { bi, exportModalState } = this;\n bi.onFailedCancel();\n exportModalState.close();\n }\n\n async _onJobSuccess(job: ExportAsyncJob, params: ExportJobStateParams) {\n const { events, exportModalState, translate: t } = this;\n const { onExportEnd, query, saveAs } = params;\n\n if (job.data?.signedUrl == null) {\n return;\n }\n\n if (this.currentStep === 'cancel') {\n events.once('undoCancel', async () => {\n await new Promise((resolve) => setTimeout(resolve, 1000));\n return this._onJobSuccess(job, { onExportEnd, query, saveAs });\n });\n return;\n }\n\n runInAction(() => {\n this.exportStatus = {\n ...queryStatus.success,\n data: job,\n };\n this.counter = 100;\n this._updateAbsoluteCounter(job, params);\n });\n\n window.removeEventListener('beforeunload', this.beforeunload);\n await new Promise((res) => setTimeout(res, 1000)); // wait bit before starting the download for the progress indication animation completes\n\n const signedUrl = job.data.signedUrl;\n\n onExportEnd({ job, query, result: 'success', saveAs });\n const biState = this.bi.beforeToast();\n\n const maybeToast = this.showToast?.({\n message: t('cairo.export.successMessage'),\n biName: 'cairo-export-success-toast',\n timeout: 'NONE',\n type: 'SUCCESS',\n onCloseClick: () => {\n this.bi.onToastDismissed({\n ...biState,\n by: 'manual',\n });\n this.maybeToast = undefined;\n },\n action: {\n text: t('cairo.export.downloadManually'),\n uiType: 'LINK',\n navigationTarget: {\n url: signedUrl,\n openInNewTab: true,\n },\n onClick: () => {\n this.bi.onToastActionClick(biState);\n this.maybeToast = undefined;\n },\n },\n });\n\n this.maybeToast = maybeToast;\n\n this.window.download(signedUrl, saveAs);\n\n if (maybeToast) {\n new Promise((resolve) => setTimeout(resolve, 6000)).then(() => {\n if (maybeToast === this.maybeToast) {\n maybeToast.remove();\n this.bi.onToastDismissed({\n ...biState,\n by: 'automatic',\n });\n }\n });\n }\n\n exportModalState.close();\n }\n\n _throwJobError(\n job: ExportAsyncJob,\n { onExportEnd, query }: ExportJobStateParams,\n ) {\n if (job.data?.error?.applicationError?.code === 'job_cancelled_by_client') {\n onExportEnd({ job, query, result: 'stopped by user' });\n\n return;\n }\n\n onExportEnd({ job, query, result: 'fail' });\n\n throw Object.assign(\n new Error(`ExportAsyncJob.${job.data?.error?.applicationError?.code}`),\n {\n response: {\n data: job.data?.error,\n },\n job,\n query,\n },\n );\n }\n\n _checkIfStaleJob(\n job: ExportAsyncJob,\n { onExportEnd, query }: ExportJobStateParams,\n ) {\n const { internalMonitor } = this;\n\n if (job.status === JobStatus.FINISHED && !job.data?.signedUrl) {\n internalMonitor.interactionStarted(\n 'export-to-finished-without-download-url',\n );\n internalMonitor.interactionEnded(\n 'export-to-finished-without-download-url',\n );\n }\n\n if (\n job.data?.iterationsCount === this.iterationsCountPoll.iterationsCount\n ) {\n this.iterationsCountPoll = {\n ...this.iterationsCountPoll,\n pollCount: this.iterationsCountPoll.pollCount + 1,\n };\n\n if (\n job.data?.completionStep !== 'upload' &&\n this.iterationsCountPoll.pollCount > this.config.stateJob.maxPolling\n ) {\n if (\n this.iterationsCountPoll.retries < this.config.stateJob.maxRetries\n ) {\n internalMonitor.interactionStarted('export-to-max-polling-stale-job');\n internalMonitor.interactionEnded('export-to-max-polling-stale-job');\n runInAction(() => {\n this.iterationsCountPoll = {\n iterationsCount: 0,\n pollCount: 0,\n retries: this.iterationsCountPoll.retries + 1,\n };\n });\n window.removeEventListener('beforeunload', this.beforeunload);\n this._exportTo({ onExportEnd });\n return 'restarted';\n }\n\n onExportEnd({ job, query, result: 'fail' });\n\n throw Object.assign(new Error('ExportAsyncJob.max_polling_stale_job'), {\n response: {\n data: {\n applicationError: {\n code: 'max_polling_stale_job',\n },\n } as ErrorDetails,\n },\n });\n }\n } else {\n this.iterationsCountPoll = {\n ...this.iterationsCountPoll,\n iterationsCount: job.data?.iterationsCount,\n pollCount: 1,\n };\n }\n\n return;\n }\n\n _updateAbsoluteCounter(job: ExportAsyncJob, { query }: ExportJobStateParams) {\n if (job?.data == null) {\n return;\n }\n\n const { totalForExport } = this;\n\n const newAbsoluteCounter = getJobItemsAbsoluteCounter(job, {\n query,\n totalForExport,\n });\n\n this.absoluteCounter =\n totalForExport != null &&\n newAbsoluteCounter >= totalForExport &&\n !this.exportStatus.isSuccess\n ? this.absoluteCounter +\n Math.floor(\n Math.random() * (newAbsoluteCounter - this.absoluteCounter),\n )\n : newAbsoluteCounter;\n }\n\n _updateJobProgress(job: ExportAsyncJob, params: ExportJobStateParams) {\n this._updateAbsoluteCounter(job, params);\n\n const { totalForExport } = this;\n if (totalForExport) {\n if (this.absoluteCounter) {\n const newCounter = Math.round(\n (this.absoluteCounter / totalForExport) * 100,\n );\n\n this.counter =\n newCounter === 100\n ? this.counter + Math.round(Math.random() * (99 - this.counter))\n : newCounter;\n }\n } else if (this.counter < 90 && this.absoluteCounter > 0) {\n this.counter += 10;\n }\n }\n\n private async _poll({\n jobId,\n saveAs,\n query,\n onExportEnd,\n }: {\n query: QueryV2;\n saveAs?: string;\n onExportEnd: (params: {\n job: ExportAsyncJob | null;\n query: QueryV2;\n result: 'success' | 'fail' | 'stopped by user';\n }) => void;\n jobId: string;\n }) {\n const { httpClient, events, onlineState } = this;\n\n let current: ExportAsyncJob | null = null;\n\n try {\n // eslint-disable-next-line no-constant-condition\n while (true) {\n if (!this.isModalOpen) {\n const currentJob = await this.exportStatus.promise;\n if (currentJob) {\n onExportEnd({\n job: currentJob,\n query,\n result: 'stopped by user',\n });\n }\n\n break;\n }\n\n const getExportAsyncJobResponse = await httpClient\n .request(getExportAsyncJob({ jobId }))\n .catch((error) => ({ error }));\n\n if (\n getExportAsyncJobResponse &&\n !('data' in getExportAsyncJobResponse)\n ) {\n const error = getExportAsyncJobResponse.error;\n if (!onlineState.isOnline) {\n events.once('online', () => {\n this._poll({\n jobId,\n onExportEnd,\n query,\n saveAs,\n });\n });\n\n throw new WixPatternsError({\n errorCode: 'GetExportAsyncJob.offline',\n originalException: error,\n extraData: {\n response: {\n data: {\n applicationError: {\n code: 'offline',\n },\n } as ErrorDetails,\n },\n },\n });\n }\n\n if (this.queryJobRetries.count > this.config.queryJobRetries.max) {\n onExportEnd({ job: current, query, result: 'fail' });\n throw new WixPatternsError({\n originalException: error,\n errorCode: 'GetExportAsyncJob.failed',\n });\n }\n\n this.queryJobRetries = {\n ...this.queryJobRetries,\n count: this.queryJobRetries.count + 1,\n };\n\n setTimeout(() => {\n this._poll({\n jobId,\n onExportEnd,\n query,\n saveAs,\n });\n }, this.config.queryJobRetries.delay);\n\n break;\n }\n\n const job = getExportAsyncJobResponse?.data.job;\n\n if (job?.data == null) {\n throw new WixPatternsError({\n errorCode: 'GetExportAsyncJob.invalid',\n });\n }\n\n current = job;\n\n this.queryJobRetries = {\n count: 0,\n };\n\n runInAction(() => {\n this.exportStatus = {\n ...queryStatus.loading,\n promise: Promise.resolve(job),\n };\n });\n\n const isModalOpen = runInAction(() => this.isModalOpen);\n if (!isModalOpen) {\n break;\n }\n\n if (job.data.signedUrl) {\n await this._onJobSuccess(job, {\n onExportEnd,\n saveAs,\n query,\n });\n break;\n }\n\n if (\n job.status === JobStatus.FAILED ||\n job.data.error?.applicationError != null\n ) {\n if (\n job.data.error?.applicationError?.code ===\n 'media_generate_signed_url'\n ) {\n // await this._retryGenerateUrl(job);\n // continue;\n }\n\n this._throwJobError(job, {\n onExportEnd,\n query,\n saveAs,\n });\n break;\n }\n\n const checkIfStaleJobResult = this._checkIfStaleJob(job, {\n onExportEnd,\n saveAs,\n query,\n });\n\n if (checkIfStaleJobResult === 'restarted') {\n return;\n }\n\n await runInAction(async () => {\n if (\n !this.totalForExport &&\n (job.data?.iterationsCount == null || job.data.iterationsCount <= 1)\n ) {\n this.totalForExport = job.data?.pagingMetadata?.total;\n }\n });\n\n this._updateJobProgress(job, { onExportEnd, query, saveAs });\n\n await new Promise((res) => setTimeout(res, this.config.pollingDelay));\n }\n } catch (error) {\n console.error(error);\n\n this.internalMonitor.reportError({ error });\n\n runInAction(() => {\n this.currentStep = 'error';\n this.exportStatus = {\n ...queryStatus.error,\n error,\n };\n });\n }\n }\n\n private async _exportTo({\n onExportEnd,\n }: {\n onExportEnd: (params: {\n job: ExportAsyncJob | null;\n query: QueryV2;\n result: 'success' | 'fail' | 'stopped by user';\n }) => void;\n }) {\n const {\n createExportAsyncJobRequest,\n httpClient,\n transformPlatformizedQuery,\n selectedExportOption,\n events,\n onlineState,\n } = this;\n\n this._reset();\n window.addEventListener('beforeunload', this.beforeunload);\n\n const platformizedQuery = defaultPlatformizedQuery();\n\n const {\n bulkSelect: {\n selectedIds,\n allSelected: selectAll,\n uncheckedInCurrentCollection: uncheckedValues,\n },\n query: { asComputed: computedQuery },\n } = this.collection;\n\n const wixPatternsQuery =\n selectedExportOption !== 'all'\n ? computedQuery\n : {\n ...computedQuery,\n filtersKey: {},\n rawFilters: {},\n filters: {},\n };\n\n const exportPublicState = {\n platformizedQuery,\n wixPatternsQuery,\n selectedItems:\n selectedExportOption === 'selected' ? selectedIds : undefined,\n isSelectAll: selectAll,\n uncheckedValues,\n };\n\n const query =\n (await transformPlatformizedQuery?.(exportPublicState)) ??\n platformizedQuery;\n\n const totalForExportPromise = this.setTotalForExport({\n ...exportPublicState,\n platformizedQuery: query,\n });\n\n const saveAs =\n this.saveAs?.({\n platformizedQuery,\n wixPatternsQuery,\n selectedItems:\n selectedExportOption === 'selected' ? selectedIds : undefined,\n isSelectAll: selectAll,\n }) ?? this.collectionPageState.pageTitle;\n\n runInAction(() => {\n this.currentStep = 'progress';\n });\n\n const _createExport = async () => {\n try {\n const { data: createExportAsyncJobResponse } = await httpClient\n .request(\n createExportAsyncJob({\n fields: [],\n methodMetadata: {},\n ...createExportAsyncJobRequest,\n saveAs,\n query,\n }),\n )\n .catch((err) => {\n if (!onlineState.isOnline) {\n events.once('online', () => {\n this._exportTo({\n onExportEnd,\n });\n });\n throw Object.assign(new Error('CreateExportAsyncJob.offline'), {\n response: {\n data: {\n applicationError: {\n code: 'offline',\n },\n } as ErrorDetails,\n },\n });\n }\n onExportEnd({ job: null, query, result: 'fail' });\n\n throw err;\n });\n\n return createExportAsyncJobResponse;\n } catch (error) {\n runInAction(() => {\n this.currentStep = 'error';\n this.exportStatus = {\n ...queryStatus.error,\n error,\n };\n });\n\n throw error;\n }\n };\n\n try {\n const createExportAsyncJobResponse = await _createExport();\n\n if (!createExportAsyncJobResponse.job?.id) {\n throw new Error(\n `Invalid response from createExportAsyncJob \"jobId=${createExportAsyncJobResponse.job?.id}\"`,\n );\n }\n\n await totalForExportPromise;\n\n runInAction(() => {\n this.exportStatus = {\n ...queryStatus.loading,\n promise: Promise.resolve(\n createExportAsyncJobResponse.job as ExportAsyncJob,\n ),\n };\n });\n\n this.events.emit('afterJobCreated', {\n job: createExportAsyncJobResponse.job as ExportAsyncJob,\n });\n\n runInAction(() => {\n this.counter = 1;\n });\n\n await this._poll({\n onExportEnd,\n saveAs,\n query,\n jobId: createExportAsyncJobResponse.job.id,\n });\n } catch (error) {\n console.error(error);\n this.internalMonitor.reportError({ error });\n }\n\n window.removeEventListener('beforeunload', this.beforeunload);\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AAIA,IAAAC,MAAA,GAAAD,OAAA;AAMA,IAAAE,KAAA,GAAAF,OAAA;AAOA,IAAAG,MAAA,GAAAH,OAAA;AAQA,IAAAI,SAAA,GAAAJ,OAAA;AAQA,IAAAK,UAAA,GAAAC,sBAAA,CAAAN,OAAA;AACA,IAAAO,OAAA,GAAAP,OAAA;AAEA,IAAAQ,sBAAA,GAAAR,OAAA;AAEA,IAAAS,2BAAA,GAAAT,OAAA;AAMA,SAASU,wBAAwBA,CAAA,EAAY;EAC3C,OAAO;IACLC,MAAM,EAAE,CAAC,CAAC;IACVC,IAAI,EAAE;EACR,CAAC;AACH;AA+CO,MAAMC,WAAW,CAA0B;EAoEhDC,WAAWA,CAACC,KAA6B,EAAE;IAAA,IAAAC,gBAAA,CAAAC,OAAA,wBAnES;MAClD,GAAGC,kBAAW,CAACC;IACjB,CAAC;IAAA,IAAAH,gBAAA,CAAAC,OAAA,kBAEiB;MAChBG,YAAY,EAAE,IAAI;MAClBC,QAAQ,EAAE;QACRC,UAAU,EAAE,EAAE;QACdC,UAAU,EAAE;MACd,CAAC;MACDC,eAAe,EAAE;QACfC,KAAK,EAAE,IAAI;QACXC,GAAG,EAAE;MACP;IACF,CAAC;IAAA,IAAAV,gBAAA,CAAAC,OAAA,2BAEyB,CAAC;IAAA,IAAAD,gBAAA,CAAAC,OAAA,0BACiB,IAAI;IAAA,IAAAD,gBAAA,CAAAC,OAAA,gCACH,KAAK;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA,+BAO9C;MACFU,eAAe,EAAE,CAAC;MAClBC,SAAS,EAAE,CAAC;MACZC,OAAO,EAAE;IACX,CAAC;IAAA,IAAAb,gBAAA,CAAAC,OAAA,2BAIG;MACFa,KAAK,EAAE;IACT,CAAC;IAAA,IAAAd,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA,kBAsBiB,IAAIc,oBAAY,CAAC,CAAC;IAAA,IAAAf,gBAAA,CAAAC,OAAA,mBAM1B,CAAC;IAAA,IAAAD,gBAAA,CAAAC,OAAA,2BACO,CAAC;IAAA,IAAAD,gBAAA,CAAAC,OAAA,mBACT,CAAC;IAAA,IAAAD,gBAAA,CAAAC,OAAA,uBA4D+C,QAAQ;IAAA,IAAAD,gBAAA,CAAAC,OAAA,oCA6F9B;MAClCe,QAAQ,EAAE,IAAAC,YAAM,EAAC,MAAM;QACrB,MAAM;UAAEC;QAAW,CAAC,GAAG,IAAI;QAE3B,MAAM;UACJC,UAAU,EAAE;YAAEC;UAAqB;QACrC,CAAC,GAAGF,UAAU;QAEd,OAAOE,oBAAoB;MAC7B,CAAC,CAAC;MACFC,QAAQ,EAAE,IAAAJ,YAAM,EAAC,MAAM;QACrB,MAAM;UAAEC;QAAW,CAAC,GAAG,IAAI;QAC3B,MAAM;UACJI,MAAM,EAAE;YAAEC,KAAK;YAAEC;UAAa;QAChC,CAAC,GAAGN,UAAU;QAEd,IAAI,CAACM,YAAY,EAAE;UACjB,OAAO,IAAI;QACb;QAEA,OAAOD,KAAK;MACd,CAAC,CAAC;MACFE,GAAG,EAAE,IAAAR,YAAM,EAAC,YAAY;QACtB,MAAM;UAAEC;QAAW,CAAC,GAAG,IAAI;QAE3B,MAAMQ,aAAa,GAAG;UACpB,GAAGR,UAAU,CAACS,KAAK,CAACC,UAAU;UAC9BC,UAAU,EAAE,IAAAC,kBAAS,EAACZ,UAAU,CAACS,KAAK,CAACI,aAAa,EAAGpC,MAAM,IAC3DA,MAAM,IAAI,IAAI,GAAG,IAAI,GAAGqC,SAC1B,CAAC;UACDC,UAAU,EAAE,CAAC,CAAC;UACdC,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,MAAMC,QAAQ,GAAGjB,UAAU,CAACkB,SAAS,CAACV,aAAa,CAAC;QAEpD,MAAMW,mBAAmB,GAAG,MAAMnB,UAAU,CAACoB,WAAW,CAACC,UAAU,CAAC;UAClEC,OAAO,EAAEA,CAAA,KAAMtB,UAAU,CAACuB,QAAQ,CAACf,aAAa,CAAC;UACjDS;QACF,CAAC,CAAC;QAEF,OAAOE,mBAAmB,CAACd,KAAK;MAClC,CAAC;IACH,CAAC;IAAA,IAAAvB,gBAAA,CAAAC,OAAA,wBA+GeyC,CAAoB,IAAK;MACvCA,CAAC,CAACC,cAAc,CAAC,CAAC;MAClBD,CAAC,CAACE,WAAW,GAAG,EAAE;IACpB,CAAC;IAnTC,IAAI,CAACC,WAAW,GAAG9C,KAAK,CAAC8C,WAAW;IACpC,IAAI,CAACC,oCAAoC,GACvC/C,KAAK,CAAC+C,oCAAoC;IAC5C,IAAI,CAACC,SAAS,GAAGhD,KAAK,CAACgD,SAAS;IAChC,IAAI,CAACC,2BAA2B,GAAGjD,KAAK,CAACiD,2BAA2B;IACpE,IAAI,CAACC,MAAM,GAAGlD,KAAK,CAACkD,MAAM;IAC1B,IAAI,CAACC,MAAM,GAAGnD,KAAK,CAACmD,MAAM;IAC1B,IAAI,CAACC,UAAU,GAAGpD,KAAK,CAACoD,UAAU;IAClC,IAAI,CAACC,WAAW,GAAGrD,KAAK,CAACqD,WAAW;IACpC,IAAI,CAACC,gBAAgB,GAAGtD,KAAK,CAACsD,gBAAgB;IAC9C,IAAI,CAACC,mBAAmB,GAAGvD,KAAK,CAACuD,mBAAmB;IACpD,IAAI,CAACC,SAAS,GAAGxD,KAAK,CAACwD,SAAS;IAChC,IAAI,CAACC,eAAe,GAAGzD,KAAK,CAACyD,eAAe;IAC5C,IAAI,CAACtC,UAAU,GAAGnB,KAAK,CAACmB,UAAU;IAClC,IAAI,CAACuC,QAAQ,GAAG1D,KAAK,CAAC0D,QAAQ;IAC9B,IAAI,CAACC,cAAc,GAAG,EAAE;IACxB,IAAI,CAACC,0BAA0B,GAAG5D,KAAK,CAAC4D,0BAA0B;IAElE,IAAI,CAACC,EAAE,GAAG,IAAIC,4CAAqB,CAAC,IAAI,CAAC;IACzC,IAAAC,oBAAc,EAAC,IAAI,EAAE;MACnBC,YAAY,EAAEC,gBAAU,CAACC,GAAG;MAC5BC,mBAAmB,EAAEF,gBAAU,CAACC,GAAG;MACnCE,WAAW,EAAEC,cAAQ;MACrBC,cAAc,EAAEL,gBAAU,CAACC,GAAG;MAC9BK,oBAAoB,EAAEN,gBAAU,CAACC,GAAG;MACpCP,cAAc,EAAEM,gBAAU,CAACC,GAAG;MAC9BM,OAAO,EAAEP,gBAAU,CAACC,GAAG;MACvBO,eAAe,EAAER,gBAAU,CAACC,GAAG;MAC/BQ,eAAe,EAAExD,YAAM,CAACyD,KAAK;MAC7BC,yBAAyB,EAAE1D,YAAM,CAACyD,KAAK;MACvCE,8BAA8B,EAAE3D,YAAM,CAACyD,KAAK;MAC5CG,+BAA+B,EAAE5D,YAAM,CAACyD,KAAK;MAC7CI,8BAA8B,EAAE7D,YAAM,CAACyD,KAAK;MAC5CK,oBAAoB,EAAE9D,YAAM,CAACyD,KAAK;MAClCM,aAAa,EAAE/D,YAAM,CAACyD,KAAK;MAC3BO,cAAc,EAAEhE,YAAM,CAACyD,KAAK;MAC5BQ,aAAa,EAAEjE,YAAM,CAACyD,KAAK;MAC3BS,YAAY,EAAElE,YAAM,CAACyD,KAAK;MAC1BU,IAAI,EAAEnE,YAAM,CAACyD,KAAK;MAClBW,iBAAiB,EAAEpE,YAAM;MACzBqE,kBAAkB,EAAErE,YAAM;MAC1BsE,UAAU,EAAEnB,cAAQ;MACpBoB,iBAAiB,EAAEpB,cAAQ;MAC3BqB,eAAe,EAAErB,cAAQ;MACzBsB,aAAa,EAAEtB,cAAQ;MACvBuB,WAAW,EAAE3B,gBAAU,CAACC,GAAG;MAC3B2B,aAAa,EAAE3E,YAAM;MACrB4E,gBAAgB,EAAE5E,YAAM;MACxB6E,cAAc,EAAE7E,YAAM;MACtB8E,kBAAkB,EAAE9E;IACtB,CAAC,CAAC;EACJ;EAEA,IAAI+E,WAAWA,CAAA,EAAG;IAChB,OAAO,IAAI,CAAC3C,gBAAgB,CAAC4C,MAAM;EACrC;EAIA,IAAI9B,WAAWA,CAAA,EAAG;IAChB,MAAM;MAAEJ;IAAa,CAAC,GAAG,IAAI;IAC7B,OAAOA,YAAY,CAACmC,SAAS,IAAInC,YAAY,CAACoC,SAAS;EACzD;EAEAC,UAAUA,CAAA,EAAG;IACX;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;EAAA;EAGFC,MAAMA,CAAA,EAAG;IACP,IAAI,CAACtC,YAAY,GAAG;MAClB,GAAG7D,kBAAW,CAACC;IACjB,CAAC;IACD,IAAI,CAACwF,WAAW,GAAG,QAAQ;IAC3B,IAAI,CAACpB,OAAO,GAAG,CAAC;IAChB,IAAI,CAACC,eAAe,GAAG,CAAC;IACxB,IAAI,CAACH,cAAc,GAAG,IAAI;EAC5B;EAEAiB,kBAAkBA,CAAChB,oBAA0C,EAAE;IAC7D,IAAI,CAACV,EAAE,CAAC0B,kBAAkB,CAAC;MACzBgB,IAAI,EAAE,IAAI,CAAChC,oBAAoB;MAC/BiC,IAAI,EAAEjC;IACR,CAAC,CAAC;IACF,IAAI,CAACA,oBAAoB,GAAGA,oBAAoB;EAClD;EAEAc,IAAIA,CAAA,EAAG;IAAA,IAAAoB,gBAAA;IACL,MAAM;MAAEpD;IAAY,CAAC,GAAG,IAAI;IAC5B,CAAAoD,gBAAA,OAAI,CAACC,UAAU,aAAfD,gBAAA,CAAiBE,MAAM,CAAC,CAAC;IAEzB,IAAI,IAAI,CAACjB,eAAe,EAAE;MACxB,IAAI,CAAC/B,cAAc,GAAG,IAAI,CAAC6B,UAAU,GAAG,EAAE,GAAG,CAAC,UAAU,CAAC;MACzD,IAAI,CAACjB,oBAAoB,GAAG,UAAU;IACxC,CAAC,MAAM,IAAI,IAAI,CAACiB,UAAU,EAAE;MAC1B,IAAI,CAAC7B,cAAc,GAAG,CAAC,UAAU,CAAC;MAClC,IAAI,CAACY,oBAAoB,GAAG,UAAU;IACxC,CAAC,MAAM;MACL,IAAI,CAACZ,cAAc,GAAG,CAAC,UAAU,EAAE,UAAU,CAAC;MAC9C,IAAI,CAACY,oBAAoB,GAAG,KAAK;IACnC;IAEA,IAAI,CAACV,EAAE,CAAC+C,cAAc,CAAC,CAAC;IAExB,MAAMC,eAAe,GAAG,IAAA3F,YAAM,EAAE4F,QAAiB,IAAK;MACpD,IAAIA,QAAQ,IAAI,IAAI,CAAClB,WAAW,KAAK,OAAO,EAAE;QAC5C,IAAI,CAACA,WAAW,GAAG,UAAU;QAC7B,IAAI,CAACmB,MAAM,CAACC,IAAI,CAAC,QAAQ,CAAC;MAC5B;IACF,CAAC,CAAC;IAEF3D,WAAW,CAAC0D,MAAM,CAACE,EAAE,CAAC,QAAQ,EAAEJ,eAAe,CAAC;IAEhD,OAAO,MAAM;MACX1D,MAAM,CAAC+D,mBAAmB,CAAC,cAAc,EAAE,IAAI,CAACC,YAAY,CAAC;MAC7D,IAAI,CAACJ,MAAM,CAACK,kBAAkB,CAAC,YAAY,CAAC;MAC5C,IAAI,CAACL,MAAM,CAACK,kBAAkB,CAAC,QAAQ,CAAC;MACxC/D,WAAW,CAAC0D,MAAM,CAACM,GAAG,CAAC,QAAQ,EAAER,eAAe,CAAC;IACnD,CAAC;EACH;EAEA,IAAIrB,UAAUA,CAAA,EAAG;IACf,OAAO,IAAI,CAACrE,UAAU,CAACS,KAAK,CAAC0F,gBAAgB;EAC/C;EAEA,IAAI5B,eAAeA,CAAA,EAAG;IACpB,OACE,IAAI,CAACvE,UAAU,CAACC,UAAU,CAACmG,WAAW,CAACC,MAAM,KAAKvF,SAAS,IAC3D,IAAI,CAACd,UAAU,CAACC,UAAU,CAACmG,WAAW,CAACC,MAAM,GAAG,CAAC;EAErD;EAEA,IAAI7B,aAAaA,CAAA,EAAG;IAClB,OAAO,IAAI,CAACxE,UAAU,CAACC,UAAU,CAACqG,WAAW;EAC/C;EAEA,IAAIhC,iBAAiBA,CAAA,EAAG;IACtB,OAAO;MACLxE,QAAQ,EAAE,IAAI,CAACyG,wBAAwB,CAACzG,QAAQ,CAAC,CAAC;MAClDK,QAAQ,EAAE,IAAI,CAACoG,wBAAwB,CAACpG,QAAQ,CAAC;IACnD,CAAC;EACH;EA+CA,MAAMgE,iBAAiBA,CAACqC,MAA+B,EAAE;IACvD,MAAM;MAAEpD,oBAAoB;MAAEpD;IAAW,CAAC,GAAG,IAAI;IACjD,MAAM;MACJI,MAAM,EAAE;QAAEE;MAAa;IACzB,CAAC,GAAGN,UAAU;IAEd,IAAI,IAAI,CAAC4B,oCAAoC,KAAK,IAAI,EAAE;MACtD;IACF;IAEA,MAAM6E,sBAAsB,GAAG,CAAC,MAAM;MACpC,IAAIrD,oBAAoB,KAAK,UAAU,EAAE;QACvC,OAAO,IAAI,CAACmD,wBAAwB,CAACzG,QAAQ,CAAC,CAAC;MACjD;MAEA,IAAIsD,oBAAoB,KAAK,UAAU,IAAI9C,YAAY,EAAE;QACvD,OAAO,IAAI,CAACiG,wBAAwB,CAACpG,QAAQ,CAAC,CAAC;MACjD;MAEA,OAAO,IAAI,CAACoG,wBAAwB,CAAChG,GAAG,CAAC,CAAC;IAC5C,CAAC,EAAE,CAAC;IAEJ,IAAI,IAAI,CAACoB,WAAW,EAAE;MACpB,MAAMwB,cAAc,GAAG,MAAM,IAAI,CAACxB,WAAW,CAAC;QAC5C,GAAG6E,MAAM;QACTC;MACF,CAAC,CAAC;MACF,IAAAC,iBAAW,EAAC,MAAM;QAChB,IAAI,CAACvD,cAAc,GAAGA,cAAc;MACtC,CAAC,CAAC;MACF;IACF;IAEA,MAAMA,cAAc,GAAG,MAAMsD,sBAAsB;IACnD,IAAAC,iBAAW,EAAC,MAAM;MAChB,IAAI,CAACvD,cAAc,GAAGA,cAAc;IACtC,CAAC,CAAC;EACJ;EAEAa,aAAaA,CAAA,EAAG;IACd,MAAM;MAAEtB,EAAE;MAAEP;IAAiB,CAAC,GAAG,IAAI;IACrCO,EAAE,CAACsB,aAAa,CAAC,CAAC;IAClB7B,gBAAgB,CAACwE,KAAK,CAAC,CAAC;EAC1B;EAEAC,+BAA+BA,CAAA,EAAG;IAChC,MAAM;MAAElE,EAAE;MAAEP;IAAiB,CAAC,GAAG,IAAI;IACrCO,EAAE,CAACmE,yBAAyB,CAAC,CAAC;IAC9B1E,gBAAgB,CAACwE,KAAK,CAAC,CAAC;EAC1B;EAEAhD,+BAA+BA,CAAA,EAAG;IAChC,IAAI,CAACc,WAAW,GAAG,UAAU;IAC7B,MAAM;MAAE/B,EAAE;MAAEkD;IAAO,CAAC,GAAG,IAAI;IAC3BlD,EAAE,CAACiB,+BAA+B,CAAC,CAAC;IACpCiC,MAAM,CAACC,IAAI,CAAC,YAAY,CAAC;EAC3B;EAEAnC,8BAA8BA,CAAA,EAAG;IAC/B,IAAI,CAACe,WAAW,GAAG,UAAU;IAC7B,MAAM;MAAE/B,EAAE;MAAEkD;IAAO,CAAC,GAAG,IAAI;IAC3BlD,EAAE,CAACgB,8BAA8B,CAAC,CAAC;IACnCkC,MAAM,CAACC,IAAI,CAAC,YAAY,CAAC;EAC3B;EAEApC,yBAAyBA,CAAA,EAAG;IAC1B,IAAI,CAACgB,WAAW,GAAG,QAAQ;IAC3B,MAAM;MAAE/B;IAAG,CAAC,GAAG,IAAI;IACnBA,EAAE,CAACe,yBAAyB,CAAC,CAAC;EAChC;EAEAG,8BAA8BA,CAAA,EAAG;IAC/B,IAAI,CAACa,WAAW,GAAG,QAAQ;IAC3B,MAAM;MAAE/B;IAAG,CAAC,GAAG,IAAI;IACnBA,EAAE,CAACoE,0BAA0B,CAAC,CAAC;EACjC;EAEA7C,YAAYA,CAAA,EAAG;IACb,MAAM;MAAEvB,EAAE;MAAEP;IAAiB,CAAC,GAAG,IAAI;IACrCO,EAAE,CAACuB,YAAY,CAAC,CAAC;IACjB9B,gBAAgB,CAACwE,KAAK,CAAC,CAAC;EAC1B;EAEA,MAAMpD,eAAeA,CAAA,EAAG;IACtB,MAAM;MAAEjB,eAAe;MAAEI;IAAG,CAAC,GAAG,IAAI;IACpC,IAAI,CAAC/C,OAAO,IAAI,CAAC;IACjB,IAAI,CAACqD,mBAAmB,GAAG;MACzBvD,eAAe,EAAE,CAAC;MAClBE,OAAO,EAAE,CAAC;MACVD,SAAS,EAAE;IACb,CAAC;IACD,IAAI,CAACJ,eAAe,GAAG;MACrBM,KAAK,EAAE;IACT,CAAC;IACD,IAAI,CAACmH,eAAe,GAAGC,WAAW,CAACC,GAAG,CAAC,CAAC;IACxC3E,eAAe,CAAC4E,kBAAkB,CAAC,WAAW,CAAC;IAC/CxE,EAAE,CAACa,eAAe,CAAC,CAAC;IACpB,MAAM4D,eAAe,GAAGzE,EAAE,CAAC0E,aAAa,CAAC,CAAC;IAC1C,IAAI,CAACC,SAAS,CAAC;MACbC,WAAW,EAAE,IAAAvH,YAAM,EAAEyG,MAAM,IAAK;QAC9B,IAAIA,MAAM,CAACpG,MAAM,KAAK,MAAM,EAAE;UAC5BkC,eAAe,CAACiF,gBAAgB,CAAC,WAAW,CAAC;QAC/C;QAEAJ,eAAe,CAACX,MAAM,CAAC;MACzB,CAAC;IACH,CAAC,CAAC;EACJ;EAOA,MAAM3C,oBAAoBA,CAAA,EAAG;IAC3B,MAAM;MAAEnB;IAAG,CAAC,GAAG,IAAI;IACnBA,EAAE,CAACmB,oBAAoB,CAAC,CAAC;IACzB,MAAM,IAAI,CAACN,eAAe,CAAC,CAAC;EAC9B;EAEA,MAAMO,aAAaA,CAAA,EAAG;IACpB,MAAM;MAAEpB,EAAE;MAAEP;IAAiB,CAAC,GAAG,IAAI;IACrCO,EAAE,CAACoB,aAAa,CAAC,CAAC;IAClB3B,gBAAgB,CAACwE,KAAK,CAAC,CAAC;EAC1B;EAEA,MAAM5C,cAAcA,CAAA,EAAG;IACrB,MAAM;MAAErB,EAAE;MAAEP;IAAiB,CAAC,GAAG,IAAI;IACrCO,EAAE,CAACqB,cAAc,CAAC,CAAC;IACnB5B,gBAAgB,CAACwE,KAAK,CAAC,CAAC;EAC1B;EAEA,MAAMjC,aAAaA,CAAC8C,GAAmB,EAAEhB,MAA4B,EAAE;IAAA,IAAAiB,SAAA,EAAAC,eAAA;IACrE,MAAM;MAAE9B,MAAM;MAAEzD,gBAAgB;MAAEN,SAAS,EAAE8F;IAAE,CAAC,GAAG,IAAI;IACvD,MAAM;MAAEL,WAAW;MAAE7G,KAAK;MAAEsB;IAAO,CAAC,GAAGyE,MAAM;IAE7C,IAAI,EAAAiB,SAAA,GAAAD,GAAG,CAACI,IAAI,qBAARH,SAAA,CAAUI,SAAS,KAAI,IAAI,EAAE;MAC/B;IACF;IAEA,IAAI,IAAI,CAACpD,WAAW,KAAK,QAAQ,EAAE;MACjCmB,MAAM,CAACkC,IAAI,CAAC,YAAY,EAAE,YAAY;QACpC,MAAM,IAAIC,OAAO,CAAEC,OAAO,IAAKC,UAAU,CAACD,OAAO,EAAE,IAAI,CAAC,CAAC;QACzD,OAAO,IAAI,CAACtD,aAAa,CAAC8C,GAAG,EAAE;UAAEF,WAAW;UAAE7G,KAAK;UAAEsB;QAAO,CAAC,CAAC;MAChE,CAAC,CAAC;MACF;IACF;IAEA,IAAA2E,iBAAW,EAAC,MAAM;MAChB,IAAI,CAAC7D,YAAY,GAAG;QAClB,GAAG7D,kBAAW,CAACkJ,OAAO;QACtBN,IAAI,EAAEJ;MACR,CAAC;MACD,IAAI,CAACnE,OAAO,GAAG,GAAG;MAClB,IAAI,CAAC8E,sBAAsB,CAACX,GAAG,EAAEhB,MAAM,CAAC;IAC1C,CAAC,CAAC;IAEFxE,MAAM,CAAC+D,mBAAmB,CAAC,cAAc,EAAE,IAAI,CAACC,YAAY,CAAC;IAC7D,MAAM,IAAI+B,OAAO,CAAEK,GAAG,IAAKH,UAAU,CAACG,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;;IAEnD,MAAMP,SAAS,GAAGL,GAAG,CAACI,IAAI,CAACC,SAAS;IAEpCP,WAAW,CAAC;MAAEE,GAAG;MAAE/G,KAAK;MAAEL,MAAM,EAAE,SAAS;MAAE2B;IAAO,CAAC,CAAC;IACtD,MAAMsG,OAAO,GAAG,IAAI,CAAC3F,EAAE,CAAC4F,WAAW,CAAC,CAAC;IAErC,MAAM/C,UAAU,IAAAmC,eAAA,GAAG,IAAI,CAACrF,SAAS,qBAAdqF,eAAA,CAAAa,IAAA,KAAI,EAAa;MAClCC,OAAO,EAAEb,CAAC,CAAC,6BAA6B,CAAC;MACzCc,MAAM,EAAE,4BAA4B;MACpCC,OAAO,EAAE,MAAM;MACfC,IAAI,EAAE,SAAS;MACf1E,YAAY,EAAEA,CAAA,KAAM;QAClB,IAAI,CAACvB,EAAE,CAACkG,gBAAgB,CAAC;UACvB,GAAGP,OAAO;UACVQ,EAAE,EAAE;QACN,CAAC,CAAC;QACF,IAAI,CAACtD,UAAU,GAAGzE,SAAS;MAC7B,CAAC;MACDf,MAAM,EAAE;QACN+I,IAAI,EAAEnB,CAAC,CAAC,+BAA+B,CAAC;QACxCoB,MAAM,EAAE,MAAM;QACdC,gBAAgB,EAAE;UAChBC,GAAG,EAAEpB,SAAS;UACdqB,YAAY,EAAE;QAChB,CAAC;QACDC,OAAO,EAAEA,CAAA,KAAM;UACb,IAAI,CAACzG,EAAE,CAAC0G,kBAAkB,CAACf,OAAO,CAAC;UACnC,IAAI,CAAC9C,UAAU,GAAGzE,SAAS;QAC7B;MACF;IACF,CAAC,CAAC;IAEF,IAAI,CAACyE,UAAU,GAAGA,UAAU;IAE5B,IAAI,CAACvD,MAAM,CAACqH,QAAQ,CAACxB,SAAS,EAAE9F,MAAM,CAAC;IAEvC,IAAIwD,UAAU,EAAE;MACd,IAAIwC,OAAO,CAAEC,OAAO,IAAKC,UAAU,CAACD,OAAO,EAAE,IAAI,CAAC,CAAC,CAACsB,IAAI,CAAC,MAAM;QAC7D,IAAI/D,UAAU,KAAK,IAAI,CAACA,UAAU,EAAE;UAClCA,UAAU,CAACC,MAAM,CAAC,CAAC;UACnB,IAAI,CAAC9C,EAAE,CAACkG,gBAAgB,CAAC;YACvB,GAAGP,OAAO;YACVQ,EAAE,EAAE;UACN,CAAC,CAAC;QACJ;MACF,CAAC,CAAC;IACJ;IAEA1G,gBAAgB,CAACwE,KAAK,CAAC,CAAC;EAC1B;EAEA/B,cAAcA,CACZ4C,GAAmB,EACnB;IAAEF,WAAW;IAAE7G;EAA4B,CAAC,EAC5C;IAAA,IAAA8I,UAAA,EAAAC,UAAA,EAAAC,UAAA;IACA,IAAI,EAAAF,UAAA,GAAA/B,GAAG,CAACI,IAAI,cAAA2B,UAAA,GAARA,UAAA,CAAUG,KAAK,cAAAH,UAAA,GAAfA,UAAA,CAAiBI,gBAAgB,qBAAjCJ,UAAA,CAAmCK,IAAI,MAAK,yBAAyB,EAAE;MACzEtC,WAAW,CAAC;QAAEE,GAAG;QAAE/G,KAAK;QAAEL,MAAM,EAAE;MAAkB,CAAC,CAAC;MAEtD;IACF;IAEAkH,WAAW,CAAC;MAAEE,GAAG;MAAE/G,KAAK;MAAEL,MAAM,EAAE;IAAO,CAAC,CAAC;IAE3C,MAAMyJ,MAAM,CAACC,MAAM,CACjB,IAAIC,KAAK,CAAE,kBAAe,CAAAP,UAAA,GAAEhC,GAAG,CAACI,IAAI,cAAA4B,UAAA,GAARA,UAAA,CAAUE,KAAK,cAAAF,UAAA,GAAfA,UAAA,CAAiBG,gBAAgB,qBAAjCH,UAAA,CAAmCI,IAAK,EAAC,CAAC,EACtE;MACEI,QAAQ,EAAE;QACRpC,IAAI,GAAA6B,UAAA,GAAEjC,GAAG,CAACI,IAAI,qBAAR6B,UAAA,CAAUC;MAClB,CAAC;MACDlC,GAAG;MACH/G;IACF,CACF,CAAC;EACH;EAEAkE,gBAAgBA,CACd6C,GAAmB,EACnB;IAAEF,WAAW;IAAE7G;EAA4B,CAAC,EAC5C;IAAA,IAAAwJ,UAAA,EAAAC,UAAA;IACA,MAAM;MAAE5H;IAAgB,CAAC,GAAG,IAAI;IAEhC,IAAIkF,GAAG,CAAC2C,MAAM,KAAKC,aAAS,CAACC,QAAQ,IAAI,GAAAJ,UAAA,GAACzC,GAAG,CAACI,IAAI,aAARqC,UAAA,CAAUpC,SAAS,GAAE;MAC7DvF,eAAe,CAAC4E,kBAAkB,CAChC,yCACF,CAAC;MACD5E,eAAe,CAACiF,gBAAgB,CAC9B,yCACF,CAAC;IACH;IAEA,IACE,EAAA2C,UAAA,GAAA1C,GAAG,CAACI,IAAI,qBAARsC,UAAA,CAAUzK,eAAe,MAAK,IAAI,CAACuD,mBAAmB,CAACvD,eAAe,EACtE;MAAA,IAAA6K,UAAA;MACA,IAAI,CAACtH,mBAAmB,GAAG;QACzB,GAAG,IAAI,CAACA,mBAAmB;QAC3BtD,SAAS,EAAE,IAAI,CAACsD,mBAAmB,CAACtD,SAAS,GAAG;MAClD,CAAC;MAED,IACE,EAAA4K,UAAA,GAAA9C,GAAG,CAACI,IAAI,qBAAR0C,UAAA,CAAUC,cAAc,MAAK,QAAQ,IACrC,IAAI,CAACvH,mBAAmB,CAACtD,SAAS,GAAG,IAAI,CAAC8K,MAAM,CAACrL,QAAQ,CAACC,UAAU,EACpE;QACA,IACE,IAAI,CAAC4D,mBAAmB,CAACrD,OAAO,GAAG,IAAI,CAAC6K,MAAM,CAACrL,QAAQ,CAACE,UAAU,EAClE;UACAiD,eAAe,CAAC4E,kBAAkB,CAAC,iCAAiC,CAAC;UACrE5E,eAAe,CAACiF,gBAAgB,CAAC,iCAAiC,CAAC;UACnE,IAAAb,iBAAW,EAAC,MAAM;YAChB,IAAI,CAAC1D,mBAAmB,GAAG;cACzBvD,eAAe,EAAE,CAAC;cAClBC,SAAS,EAAE,CAAC;cACZC,OAAO,EAAE,IAAI,CAACqD,mBAAmB,CAACrD,OAAO,GAAG;YAC9C,CAAC;UACH,CAAC,CAAC;UACFqC,MAAM,CAAC+D,mBAAmB,CAAC,cAAc,EAAE,IAAI,CAACC,YAAY,CAAC;UAC7D,IAAI,CAACqB,SAAS,CAAC;YAAEC;UAAY,CAAC,CAAC;UAC/B,OAAO,WAAW;QACpB;QAEAA,WAAW,CAAC;UAAEE,GAAG;UAAE/G,KAAK;UAAEL,MAAM,EAAE;QAAO,CAAC,CAAC;QAE3C,MAAMyJ,MAAM,CAACC,MAAM,CAAC,IAAIC,KAAK,CAAC,sCAAsC,CAAC,EAAE;UACrEC,QAAQ,EAAE;YACRpC,IAAI,EAAE;cACJ+B,gBAAgB,EAAE;gBAChBC,IAAI,EAAE;cACR;YACF;UACF;QACF,CAAC,CAAC;MACJ;IACF,CAAC,MAAM;MAAA,IAAAa,UAAA;MACL,IAAI,CAACzH,mBAAmB,GAAG;QACzB,GAAG,IAAI,CAACA,mBAAmB;QAC3BvD,eAAe,GAAAgL,UAAA,GAAEjD,GAAG,CAACI,IAAI,qBAAR6C,UAAA,CAAUhL,eAAe;QAC1CC,SAAS,EAAE;MACb,CAAC;IACH;IAEA;EACF;EAEAyI,sBAAsBA,CAACX,GAAmB,EAAE;IAAE/G;EAA4B,CAAC,EAAE;IAC3E,IAAI,CAAA+G,GAAG,oBAAHA,GAAG,CAAEI,IAAI,KAAI,IAAI,EAAE;MACrB;IACF;IAEA,MAAM;MAAEzE;IAAe,CAAC,GAAG,IAAI;IAE/B,MAAMuH,kBAAkB,GAAG,IAAAC,sDAA0B,EAACnD,GAAG,EAAE;MACzD/G,KAAK;MACL0C;IACF,CAAC,CAAC;IAEF,IAAI,CAACG,eAAe,GAClBH,cAAc,IAAI,IAAI,IACtBuH,kBAAkB,IAAIvH,cAAc,IACpC,CAAC,IAAI,CAACN,YAAY,CAACoC,SAAS,GACxB,IAAI,CAAC3B,eAAe,GACpBsH,IAAI,CAACC,KAAK,CACRD,IAAI,CAACE,MAAM,CAAC,CAAC,IAAIJ,kBAAkB,GAAG,IAAI,CAACpH,eAAe,CAC5D,CAAC,GACDoH,kBAAkB;EAC1B;EAEA7F,kBAAkBA,CAAC2C,GAAmB,EAAEhB,MAA4B,EAAE;IACpE,IAAI,CAAC2B,sBAAsB,CAACX,GAAG,EAAEhB,MAAM,CAAC;IAExC,MAAM;MAAErD;IAAe,CAAC,GAAG,IAAI;IAC/B,IAAIA,cAAc,EAAE;MAClB,IAAI,IAAI,CAACG,eAAe,EAAE;QACxB,MAAMyH,UAAU,GAAGH,IAAI,CAACI,KAAK,CAC1B,IAAI,CAAC1H,eAAe,GAAGH,cAAc,GAAI,GAC5C,CAAC;QAED,IAAI,CAACE,OAAO,GACV0H,UAAU,KAAK,GAAG,GACd,IAAI,CAAC1H,OAAO,GAAGuH,IAAI,CAACI,KAAK,CAACJ,IAAI,CAACE,MAAM,CAAC,CAAC,IAAI,EAAE,GAAG,IAAI,CAACzH,OAAO,CAAC,CAAC,GAC9D0H,UAAU;MAClB;IACF,CAAC,MAAM,IAAI,IAAI,CAAC1H,OAAO,GAAG,EAAE,IAAI,IAAI,CAACC,eAAe,GAAG,CAAC,EAAE;MACxD,IAAI,CAACD,OAAO,IAAI,EAAE;IACpB;EACF;EAEA,MAAc4H,KAAKA,CAAC;IAClBC,KAAK;IACLnJ,MAAM;IACNtB,KAAK;IACL6G;EAUF,CAAC,EAAE;IACD,MAAM;MAAErF,UAAU;MAAE2D,MAAM;MAAE1D;IAAY,CAAC,GAAG,IAAI;IAEhD,IAAIiJ,OAA8B,GAAG,IAAI;IAEzC,IAAI;MACF;MACA,OAAO,IAAI,EAAE;QAAA,IAAAC,eAAA;QACX,IAAI,CAAC,IAAI,CAACtG,WAAW,EAAE;UACrB,MAAMuG,UAAU,GAAG,MAAM,IAAI,CAACxI,YAAY,CAACyI,OAAO;UAClD,IAAID,UAAU,EAAE;YACd/D,WAAW,CAAC;cACVE,GAAG,EAAE6D,UAAU;cACf5K,KAAK;cACLL,MAAM,EAAE;YACV,CAAC,CAAC;UACJ;UAEA;QACF;QAEA,MAAMmL,yBAAyB,GAAG,MAAMtJ,UAAU,CAC/CuJ,OAAO,CAAC,IAAAC,uBAAiB,EAAC;UAAEP;QAAM,CAAC,CAAC,CAAC,CACrCQ,KAAK,CAAEhC,KAAK,KAAM;UAAEA;QAAM,CAAC,CAAC,CAAC;QAEhC,IACE6B,yBAAyB,IACzB,EAAE,MAAM,IAAIA,yBAAyB,CAAC,EACtC;UACA,MAAM7B,KAAK,GAAG6B,yBAAyB,CAAC7B,KAAK;UAC7C,IAAI,CAACxH,WAAW,CAACyD,QAAQ,EAAE;YACzBC,MAAM,CAACkC,IAAI,CAAC,QAAQ,EAAE,MAAM;cAC1B,IAAI,CAACmD,KAAK,CAAC;gBACTC,KAAK;gBACL5D,WAAW;gBACX7G,KAAK;gBACLsB;cACF,CAAC,CAAC;YACJ,CAAC,CAAC;YAEF,MAAM,IAAI4J,0BAAgB,CAAC;cACzBC,SAAS,EAAE,2BAA2B;cACtCC,iBAAiB,EAAEnC,KAAK;cACxBoC,SAAS,EAAE;gBACT9B,QAAQ,EAAE;kBACRpC,IAAI,EAAE;oBACJ+B,gBAAgB,EAAE;sBAChBC,IAAI,EAAE;oBACR;kBACF;gBACF;cACF;YACF,CAAC,CAAC;UACJ;UAEA,IAAI,IAAI,CAACtK,eAAe,CAACM,KAAK,GAAG,IAAI,CAAC4K,MAAM,CAAClL,eAAe,CAACE,GAAG,EAAE;YAChE8H,WAAW,CAAC;cAAEE,GAAG,EAAE2D,OAAO;cAAE1K,KAAK;cAAEL,MAAM,EAAE;YAAO,CAAC,CAAC;YACpD,MAAM,IAAIuL,0BAAgB,CAAC;cACzBE,iBAAiB,EAAEnC,KAAK;cACxBkC,SAAS,EAAE;YACb,CAAC,CAAC;UACJ;UAEA,IAAI,CAACtM,eAAe,GAAG;YACrB,GAAG,IAAI,CAACA,eAAe;YACvBM,KAAK,EAAE,IAAI,CAACN,eAAe,CAACM,KAAK,GAAG;UACtC,CAAC;UAEDqI,UAAU,CAAC,MAAM;YACf,IAAI,CAACgD,KAAK,CAAC;cACTC,KAAK;cACL5D,WAAW;cACX7G,KAAK;cACLsB;YACF,CAAC,CAAC;UACJ,CAAC,EAAE,IAAI,CAACyI,MAAM,CAAClL,eAAe,CAACC,KAAK,CAAC;UAErC;QACF;QAEA,MAAMiI,GAAG,GAAG+D,yBAAyB,oBAAzBA,yBAAyB,CAAE3D,IAAI,CAACJ,GAAG;QAE/C,IAAI,CAAAA,GAAG,oBAAHA,GAAG,CAAEI,IAAI,KAAI,IAAI,EAAE;UACrB,MAAM,IAAI+D,0BAAgB,CAAC;YACzBC,SAAS,EAAE;UACb,CAAC,CAAC;QACJ;QAEAT,OAAO,GAAG3D,GAAG;QAEb,IAAI,CAAClI,eAAe,GAAG;UACrBM,KAAK,EAAE;QACT,CAAC;QAED,IAAA8G,iBAAW,EAAC,MAAM;UAChB,IAAI,CAAC7D,YAAY,GAAG;YAClB,GAAG7D,kBAAW,CAAC+M,OAAO;YACtBT,OAAO,EAAEvD,OAAO,CAACC,OAAO,CAACR,GAAG;UAC9B,CAAC;QACH,CAAC,CAAC;QAEF,MAAM1C,WAAW,GAAG,IAAA4B,iBAAW,EAAC,MAAM,IAAI,CAAC5B,WAAW,CAAC;QACvD,IAAI,CAACA,WAAW,EAAE;UAChB;QACF;QAEA,IAAI0C,GAAG,CAACI,IAAI,CAACC,SAAS,EAAE;UACtB,MAAM,IAAI,CAACnD,aAAa,CAAC8C,GAAG,EAAE;YAC5BF,WAAW;YACXvF,MAAM;YACNtB;UACF,CAAC,CAAC;UACF;QACF;QAEA,IACE+G,GAAG,CAAC2C,MAAM,KAAKC,aAAS,CAAC4B,MAAM,IAC/B,EAAAZ,eAAA,GAAA5D,GAAG,CAACI,IAAI,CAAC8B,KAAK,qBAAd0B,eAAA,CAAgBzB,gBAAgB,KAAI,IAAI,EACxC;UAAA,IAAAsC,gBAAA;UACA,IACE,EAAAA,gBAAA,GAAAzE,GAAG,CAACI,IAAI,CAAC8B,KAAK,cAAAuC,gBAAA,GAAdA,gBAAA,CAAgBtC,gBAAgB,qBAAhCsC,gBAAA,CAAkCrC,IAAI,MACtC,2BAA2B,EAC3B;YACA;YACA;UAAA;UAGF,IAAI,CAAChF,cAAc,CAAC4C,GAAG,EAAE;YACvBF,WAAW;YACX7G,KAAK;YACLsB;UACF,CAAC,CAAC;UACF;QACF;QAEA,MAAMmK,qBAAqB,GAAG,IAAI,CAACvH,gBAAgB,CAAC6C,GAAG,EAAE;UACvDF,WAAW;UACXvF,MAAM;UACNtB;QACF,CAAC,CAAC;QAEF,IAAIyL,qBAAqB,KAAK,WAAW,EAAE;UACzC;QACF;QAEA,MAAM,IAAAxF,iBAAW,EAAC,YAAY;UAAA,IAAAyF,UAAA;UAC5B,IACE,CAAC,IAAI,CAAChJ,cAAc,KACnB,EAAAgJ,UAAA,GAAA3E,GAAG,CAACI,IAAI,qBAARuE,UAAA,CAAU1M,eAAe,KAAI,IAAI,IAAI+H,GAAG,CAACI,IAAI,CAACnI,eAAe,IAAI,CAAC,CAAC,EACpE;YAAA,IAAA2M,WAAA;YACA,IAAI,CAACjJ,cAAc,IAAAiJ,WAAA,GAAG5E,GAAG,CAACI,IAAI,cAAAwE,WAAA,GAARA,WAAA,CAAUC,cAAc,qBAAxBD,WAAA,CAA0B/L,KAAK;UACvD;QACF,CAAC,CAAC;QAEF,IAAI,CAACwE,kBAAkB,CAAC2C,GAAG,EAAE;UAAEF,WAAW;UAAE7G,KAAK;UAAEsB;QAAO,CAAC,CAAC;QAE5D,MAAM,IAAIgG,OAAO,CAAEK,GAAG,IAAKH,UAAU,CAACG,GAAG,EAAE,IAAI,CAACoC,MAAM,CAACtL,YAAY,CAAC,CAAC;MACvE;IACF,CAAC,CAAC,OAAOwK,KAAK,EAAE;MACd4C,OAAO,CAAC5C,KAAK,CAACA,KAAK,CAAC;MAEpB,IAAI,CAACpH,eAAe,CAACiK,WAAW,CAAC;QAAE7C;MAAM,CAAC,CAAC;MAE3C,IAAAhD,iBAAW,EAAC,MAAM;QAChB,IAAI,CAACjC,WAAW,GAAG,OAAO;QAC1B,IAAI,CAAC5B,YAAY,GAAG;UAClB,GAAG7D,kBAAW,CAAC0K,KAAK;UACpBA;QACF,CAAC;MACH,CAAC,CAAC;IACJ;EACF;EAEA,MAAcrC,SAASA,CAAC;IACtBC;EAOF,CAAC,EAAE;IAAA,IAAAkF,YAAA;IACD,MAAM;MACJ1K,2BAA2B;MAC3BG,UAAU;MACVQ,0BAA0B;MAC1BW,oBAAoB;MACpBwC,MAAM;MACN1D;IACF,CAAC,GAAG,IAAI;IAER,IAAI,CAACiD,MAAM,CAAC,CAAC;IACbnD,MAAM,CAACyK,gBAAgB,CAAC,cAAc,EAAE,IAAI,CAACzG,YAAY,CAAC;IAE1D,MAAM0G,iBAAiB,GAAGlO,wBAAwB,CAAC,CAAC;IAEpD,MAAM;MACJyB,UAAU,EAAE;QACVmG,WAAW;QACXE,WAAW,EAAEqG,SAAS;QACtBC,4BAA4B,EAAEC;MAChC,CAAC;MACDpM,KAAK,EAAE;QAAEC,UAAU,EAAEoM;MAAc;IACrC,CAAC,GAAG,IAAI,CAAC9M,UAAU;IAEnB,MAAM+M,gBAAgB,GACpB3J,oBAAoB,KAAK,KAAK,GAC1B0J,aAAa,GACb;MACE,GAAGA,aAAa;MAChBnM,UAAU,EAAE,CAAC,CAAC;MACdI,UAAU,EAAE,CAAC,CAAC;MACdC,OAAO,EAAE,CAAC;IACZ,CAAC;IAEP,MAAMgM,iBAAiB,GAAG;MACxBN,iBAAiB;MACjBK,gBAAgB;MAChBE,aAAa,EACX7J,oBAAoB,KAAK,UAAU,GAAGgD,WAAW,GAAGtF,SAAS;MAC/DoM,WAAW,EAAEP,SAAS;MACtBE;IACF,CAAC;IAED,MAAMpM,KAAK,GACT,CAAC,OAAMgC,0BAA0B,oBAA1BA,0BAA0B,CAAGuK,iBAAiB,CAAC,MACtDN,iBAAiB;IAEnB,MAAMS,qBAAqB,GAAG,IAAI,CAAChJ,iBAAiB,CAAC;MACnD,GAAG6I,iBAAiB;MACpBN,iBAAiB,EAAEjM;IACrB,CAAC,CAAC;IAEF,MAAMsB,MAAM,GACV,EAAAyK,YAAA,OAAI,CAACzK,MAAM,qBAAXyK,YAAA,CAAAjE,IAAA,KAAI,EAAU;MACZmE,iBAAiB;MACjBK,gBAAgB;MAChBE,aAAa,EACX7J,oBAAoB,KAAK,UAAU,GAAGgD,WAAW,GAAGtF,SAAS;MAC/DoM,WAAW,EAAEP;IACf,CAAC,CAAC,KAAI,IAAI,CAACvK,mBAAmB,CAACgL,SAAS;IAE1C,IAAA1G,iBAAW,EAAC,MAAM;MAChB,IAAI,CAACjC,WAAW,GAAG,UAAU;IAC/B,CAAC,CAAC;IAEF,MAAM4I,aAAa,GAAG,MAAAA,CAAA,KAAY;MAChC,IAAI;QACF,MAAM;UAAEzF,IAAI,EAAE0F;QAA6B,CAAC,GAAG,MAAMrL,UAAU,CAC5DuJ,OAAO,CACN,IAAA+B,0BAAoB,EAAC;UACnBC,MAAM,EAAE,EAAE;UACVC,cAAc,EAAE,CAAC,CAAC;UAClB,GAAG3L,2BAA2B;UAC9BC,MAAM;UACNtB;QACF,CAAC,CACH,CAAC,CACAiL,KAAK,CAAEgC,GAAG,IAAK;UACd,IAAI,CAACxL,WAAW,CAACyD,QAAQ,EAAE;YACzBC,MAAM,CAACkC,IAAI,CAAC,QAAQ,EAAE,MAAM;cAC1B,IAAI,CAACT,SAAS,CAAC;gBACbC;cACF,CAAC,CAAC;YACJ,CAAC,CAAC;YACF,MAAMuC,MAAM,CAACC,MAAM,CAAC,IAAIC,KAAK,CAAC,8BAA8B,CAAC,EAAE;cAC7DC,QAAQ,EAAE;gBACRpC,IAAI,EAAE;kBACJ+B,gBAAgB,EAAE;oBAChBC,IAAI,EAAE;kBACR;gBACF;cACF;YACF,CAAC,CAAC;UACJ;UACAtC,WAAW,CAAC;YAAEE,GAAG,EAAE,IAAI;YAAE/G,KAAK;YAAEL,MAAM,EAAE;UAAO,CAAC,CAAC;UAEjD,MAAMsN,GAAG;QACX,CAAC,CAAC;QAEJ,OAAOJ,4BAA4B;MACrC,CAAC,CAAC,OAAO5D,KAAK,EAAE;QACd,IAAAhD,iBAAW,EAAC,MAAM;UAChB,IAAI,CAACjC,WAAW,GAAG,OAAO;UAC1B,IAAI,CAAC5B,YAAY,GAAG;YAClB,GAAG7D,kBAAW,CAAC0K,KAAK;YACpBA;UACF,CAAC;QACH,CAAC,CAAC;QAEF,MAAMA,KAAK;MACb;IACF,CAAC;IAED,IAAI;MAAA,IAAAiE,qBAAA;MACF,MAAML,4BAA4B,GAAG,MAAMD,aAAa,CAAC,CAAC;MAE1D,IAAI,GAAAM,qBAAA,GAACL,4BAA4B,CAAC9F,GAAG,aAAhCmG,qBAAA,CAAkCC,EAAE,GAAE;QAAA,IAAAC,sBAAA;QACzC,MAAM,IAAI9D,KAAK,CACZ,qDAAkD,CAAA8D,sBAAA,GAAEP,4BAA4B,CAAC9F,GAAG,qBAAhCqG,sBAAA,CAAkCD,EAAG,GAC5F,CAAC;MACH;MAEA,MAAMT,qBAAqB;MAE3B,IAAAzG,iBAAW,EAAC,MAAM;QAChB,IAAI,CAAC7D,YAAY,GAAG;UAClB,GAAG7D,kBAAW,CAAC+M,OAAO;UACtBT,OAAO,EAAEvD,OAAO,CAACC,OAAO,CACtBsF,4BAA4B,CAAC9F,GAC/B;QACF,CAAC;MACH,CAAC,CAAC;MAEF,IAAI,CAAC5B,MAAM,CAACC,IAAI,CAAC,iBAAiB,EAAE;QAClC2B,GAAG,EAAE8F,4BAA4B,CAAC9F;MACpC,CAAC,CAAC;MAEF,IAAAd,iBAAW,EAAC,MAAM;QAChB,IAAI,CAACrD,OAAO,GAAG,CAAC;MAClB,CAAC,CAAC;MAEF,MAAM,IAAI,CAAC4H,KAAK,CAAC;QACf3D,WAAW;QACXvF,MAAM;QACNtB,KAAK;QACLyK,KAAK,EAAEoC,4BAA4B,CAAC9F,GAAG,CAACoG;MAC1C,CAAC,CAAC;IACJ,CAAC,CAAC,OAAOlE,KAAK,EAAE;MACd4C,OAAO,CAAC5C,KAAK,CAACA,KAAK,CAAC;MACpB,IAAI,CAACpH,eAAe,CAACiK,WAAW,CAAC;QAAE7C;MAAM,CAAC,CAAC;IAC7C;IAEA1H,MAAM,CAAC+D,mBAAmB,CAAC,cAAc,EAAE,IAAI,CAACC,YAAY,CAAC;EAC/D;AACF;AAAC8H,OAAA,CAAAnP,WAAA,GAAAA,WAAA","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_http","require","_types","_mobx","_model","_services","_mapValues","_interopRequireDefault","_events","_ExportStateBIReporter","_getJobItemsAbsoluteCounter","defaultPlatformizedQuery","filter","sort","ExportState","constructor","props","_defineProperty2","default","queryStatus","idle","pollingDelay","stateJob","maxPolling","maxRetries","queryJobRetries","delay","max","iterationsCount","pollCount","retries","count","EventEmitter","selected","action","collection","bulkSelect","selectedCountOrTotal","filtered","result","total","supportTotal","all","allItemsQuery","query","asComputed","filtersKey","mapValues","customFilters","undefined","rawFilters","filters","queryKey","_queryKey","allItemsQueryResult","queryClient","fetchQuery","queryFn","_queryFn","e","preventDefault","returnValue","customTotal","differentQueryEndpointThanCollection","translate","createExportAsyncJobRequest","saveAs","window","httpClient","onlineState","exportModalState","collectionPageState","showToast","internalMonitor","reportBi","disabledRadios","transformPlatformizedQuery","bi","ExportStateBIReporter","makeObservable","exportStatus","observable","ref","iterationsCountPoll","isExporting","computed","totalForExport","selectedExportOption","counter","absoluteCounter","onExportToClick","bound","onExportCloseAttemptClick","onCancelExportCloseButtonClick","onCancelExportGoBackButtonClick","onExportSecondaryActionAttempt","onRetryExportToClick","onFailedClose","onFailedCancel","onCancelClick","onCloseClick","init","setTotalForExport","onExportTypeChange","hasFilters","totalForExportMap","hasSelectedRows","isAllSelected","currentStep","_onJobSuccess","_checkIfStaleJob","_throwJobError","_updateJobProgress","isModalOpen","isOpen","isLoading","isSuccess","_cancelJob","_reset","prev","next","_this$maybeToast","maybeToast","remove","clickOpenModal","onOnlineChanged","isOnline","events","emit","on","removeEventListener","beforeunload","removeAllListeners","off","hasActiveFilters","selectedIds","length","allSelected","totalForExportGettersMap","params","collectionTotalPromise","runInAction","close","onCancelExportVerifyButtonClick","onCancelExportButtonClick","onExportCancelAttemptClick","exportStartTime","performance","now","interactionStarted","reportExportEnd","onExportStart","_exportTo","onExportEnd","interactionEnded","job","_job$data","_this$showToast","t","data","signedUrl","once","Promise","resolve","setTimeout","success","_updateAbsoluteCounter","res","biState","beforeToast","call","message","biName","timeout","type","onToastDismissed","by","text","uiType","navigationTarget","url","openInNewTab","onClick","onToastActionClick","download","then","_job$data2","_job$data3","_job$data4","error","applicationError","code","Object","assign","Error","response","_job$data5","_job$data6","status","JobStatus","FINISHED","_job$data7","completionStep","config","_job$data8","newAbsoluteCounter","getJobItemsAbsoluteCounter","Math","floor","random","newCounter","round","_poll","jobId","current","_job$data$error","currentJob","promise","getExportAsyncJobResponse","request","getExportAsyncJob","catch","WixPatternsError","errorCode","originalException","extraData","loading","FAILED","_job$data$error2","checkIfStaleJobResult","_job$data9","_job$data10","pagingMetadata","console","reportError","_this$saveAs","addEventListener","platformizedQuery","selectAll","uncheckedInCurrentCollection","uncheckedValues","computedQuery","wixPatternsQuery","exportPublicState","selectedItems","isSelectAll","totalForExportPromise","pageTitle","_createExport","createExportAsyncJobResponse","createExportAsyncJob","fields","methodMetadata","err","_createExportAsyncJob","id","_createExportAsyncJob2","exports"],"sources":["../../../src/state/ExportState.ts"],"sourcesContent":["import {\n createExportAsyncJob,\n getExportAsyncJob,\n} from '@wix/bex-utils/@wix/ambassador-fedinfra-exportservice-v1-export-async-job/http';\nimport {\n CreateExportAsyncJobRequest,\n ExportAsyncJob,\n ExportQueryV2 as QueryV2,\n Status as JobStatus,\n} from '@wix/bex-utils/@wix/ambassador-fedinfra-exportservice-v1-export-async-job/types';\nimport {\n action,\n computed,\n makeObservable,\n observable,\n runInAction,\n} from 'mobx';\nimport {\n WixPatternsEssentials,\n ComputedQueryFull,\n FiltersMap,\n queryStatus,\n ShowToast,\n TaskStatus,\n} from '../model';\nimport {\n WixPatternsError,\n WixPatternsMonitor,\n PartialWindow,\n ReportBI,\n Translate,\n} from '../services';\nimport { CollectionState } from './CollectionState';\nimport mapValues from 'lodash/mapValues';\nimport { EventEmitter } from 'events';\nimport { TypedEmitter } from '../util';\nimport { ExportStateBIReporter } from './ExportStateBIReporter';\nimport { ModalState } from './ModalState';\nimport { getJobItemsAbsoluteCounter } from './getJobItemsAbsoluteCounter';\nimport { ExportJobStateParams } from './ExportJobState';\nimport { ErrorDetails } from '../util/isHttpError';\nimport { OnlineState } from './OnlineState';\nimport { CollectionPageState } from './CollectionPageState';\n\nfunction defaultPlatformizedQuery(): QueryV2 {\n return {\n filter: {},\n sort: [],\n };\n}\n\ninterface ExportPublicState<T, F extends FiltersMap> {\n platformizedQuery: QueryV2;\n wixPatternsQuery: ComputedQueryFull<F>;\n selectedItems?: string[];\n isSelectAll: boolean;\n uncheckedValues?: T[];\n}\n\nexport type CustomTotalFn<T, F extends FiltersMap> = (\n params: ExportPublicState<T, F> & {\n collectionTotalPromise: number | null | Promise<number | null | undefined>;\n },\n) => number | null | undefined | Promise<number | null | undefined>;\n\nexport type TransformQuery<T, F extends FiltersMap> = (\n params: ExportPublicState<T, F>,\n) => QueryV2 | Promise<QueryV2>;\n\nexport type SaveAsFn<T, F extends FiltersMap> = (\n params: ExportPublicState<T, F>,\n) => string;\n\nexport interface ExportStateProps<T, F extends FiltersMap> {\n transformPlatformizedQuery?: TransformQuery<T, F>;\n differentQueryEndpointThanCollection?: boolean;\n customTotal?: CustomTotalFn<T, F>;\n\n createExportAsyncJobRequest: Partial<CreateExportAsyncJobRequest>;\n saveAs?: SaveAsFn<T, F>;\n\n httpClient: WixPatternsEssentials['httpClient'];\n showToast?: ShowToast;\n translate: Translate;\n collection: CollectionState<T, F>;\n reportBi: ReportBI;\n onlineState: OnlineState;\n internalMonitor: WixPatternsMonitor;\n\n exportModalState: ModalState;\n collectionPageState: CollectionPageState;\n window: PartialWindow;\n}\n\nexport type SelectedExportOption = 'all' | 'selected' | 'filtered';\n\nexport class ExportState<T, F extends FiltersMap> {\n exportStatus: TaskStatus<ExportAsyncJob, unknown> = {\n ...queryStatus.idle,\n };\n\n readonly config = {\n pollingDelay: 2000,\n stateJob: {\n maxPolling: 14,\n maxRetries: 1,\n },\n queryJobRetries: {\n delay: 5000,\n max: 4,\n },\n };\n\n exportStartTime: number = 0;\n totalForExport: number | undefined | null = null;\n selectedExportOption: SelectedExportOption = 'all';\n disabledRadios: SelectedExportOption[];\n maybeToast?: { remove: () => void };\n iterationsCountPoll: {\n iterationsCount?: number;\n pollCount: number;\n retries: number;\n } = {\n iterationsCount: 0,\n pollCount: 0,\n retries: 0,\n };\n\n queryJobRetries: {\n count: number;\n } = {\n count: 0,\n };\n\n readonly differentQueryEndpointThanCollection;\n readonly customTotal;\n readonly translate;\n readonly createExportAsyncJobRequest;\n readonly saveAs;\n readonly window;\n readonly httpClient: WixPatternsEssentials['httpClient'];\n readonly onlineState;\n readonly exportModalState;\n readonly collectionPageState;\n readonly transformPlatformizedQuery?: ExportStateProps<\n T,\n F\n >['transformPlatformizedQuery'];\n readonly showToast;\n readonly internalMonitor;\n readonly collection;\n readonly reportBi;\n readonly bi;\n\n readonly events = new EventEmitter() as TypedEmitter<{\n afterJobCreated: (params: { job: ExportAsyncJob }) => unknown;\n undoCancel: () => unknown;\n online: () => unknown;\n }>;\n\n counter = 0;\n absoluteCounter = 0;\n retries = 0;\n\n constructor(props: ExportStateProps<T, F>) {\n this.customTotal = props.customTotal;\n this.differentQueryEndpointThanCollection =\n props.differentQueryEndpointThanCollection;\n this.translate = props.translate;\n this.createExportAsyncJobRequest = props.createExportAsyncJobRequest;\n this.saveAs = props.saveAs;\n this.window = props.window;\n this.httpClient = props.httpClient;\n this.onlineState = props.onlineState;\n this.exportModalState = props.exportModalState;\n this.collectionPageState = props.collectionPageState;\n this.showToast = props.showToast;\n this.internalMonitor = props.internalMonitor;\n this.collection = props.collection;\n this.reportBi = props.reportBi;\n this.disabledRadios = [];\n this.transformPlatformizedQuery = props.transformPlatformizedQuery;\n\n this.bi = new ExportStateBIReporter(this);\n makeObservable(this, {\n exportStatus: observable.ref,\n iterationsCountPoll: observable.ref,\n isExporting: computed,\n totalForExport: observable.ref,\n selectedExportOption: observable.ref,\n disabledRadios: observable.ref,\n counter: observable.ref,\n absoluteCounter: observable.ref,\n onExportToClick: action.bound,\n onExportCloseAttemptClick: action.bound,\n onCancelExportCloseButtonClick: action.bound,\n onCancelExportGoBackButtonClick: action.bound,\n onExportSecondaryActionAttempt: action.bound,\n onRetryExportToClick: action.bound,\n onFailedClose: action.bound,\n onFailedCancel: action.bound,\n onCancelClick: action.bound,\n onCloseClick: action.bound,\n init: action.bound,\n setTotalForExport: action,\n onExportTypeChange: action,\n hasFilters: computed,\n totalForExportMap: computed,\n hasSelectedRows: computed,\n isAllSelected: computed,\n currentStep: observable.ref,\n _onJobSuccess: action,\n _checkIfStaleJob: action,\n _throwJobError: action,\n _updateJobProgress: action,\n });\n }\n\n get isModalOpen() {\n return this.exportModalState.isOpen;\n }\n\n currentStep: 'config' | 'progress' | 'error' | 'cancel' = 'config';\n\n get isExporting() {\n const { exportStatus } = this;\n return exportStatus.isLoading || exportStatus.isSuccess;\n }\n\n _cancelJob() {\n // const { events } = this;\n // events.once('afterJobCreated', ({ job }) => {\n // const { httpClient } = this;\n // httpClient.request(\n // cancelExportAsyncJob({\n // jobId: job.id as string,\n // }),\n // );\n // });\n }\n\n _reset() {\n this.exportStatus = {\n ...queryStatus.idle,\n };\n this.currentStep = 'config';\n this.counter = 0;\n this.absoluteCounter = 0;\n this.totalForExport = null;\n }\n\n onExportTypeChange(selectedExportOption: SelectedExportOption) {\n this.bi.onExportTypeChange({\n prev: this.selectedExportOption,\n next: selectedExportOption,\n });\n this.selectedExportOption = selectedExportOption;\n }\n\n init() {\n const { onlineState } = this;\n this.maybeToast?.remove();\n\n if (this.hasSelectedRows) {\n this.disabledRadios = this.hasFilters ? [] : ['filtered'];\n this.selectedExportOption = 'selected';\n } else if (this.hasFilters) {\n this.disabledRadios = ['selected'];\n this.selectedExportOption = 'filtered';\n } else {\n this.disabledRadios = ['selected', 'filtered'];\n this.selectedExportOption = 'all';\n }\n\n this.bi.clickOpenModal();\n\n const onOnlineChanged = action((isOnline: boolean) => {\n if (isOnline && this.currentStep === 'error') {\n this.currentStep = 'progress';\n this.events.emit('online');\n }\n });\n\n onlineState.events.on('change', onOnlineChanged);\n\n return () => {\n window.removeEventListener('beforeunload', this.beforeunload);\n this.events.removeAllListeners('undoCancel');\n this.events.removeAllListeners('online');\n onlineState.events.off('change', onOnlineChanged);\n };\n }\n\n get hasFilters() {\n return this.collection.query.hasActiveFilters;\n }\n\n get hasSelectedRows() {\n return (\n this.collection.bulkSelect.selectedIds.length !== undefined &&\n this.collection.bulkSelect.selectedIds.length > 0\n );\n }\n\n get isAllSelected() {\n return this.collection.bulkSelect.allSelected;\n }\n\n get totalForExportMap() {\n return {\n selected: this.totalForExportGettersMap.selected(),\n filtered: this.totalForExportGettersMap.filtered(),\n };\n }\n\n readonly totalForExportGettersMap = {\n selected: action(() => {\n const { collection } = this;\n\n const {\n bulkSelect: { selectedCountOrTotal },\n } = collection;\n\n return selectedCountOrTotal;\n }),\n filtered: action(() => {\n const { collection } = this;\n const {\n result: { total, supportTotal },\n } = collection;\n\n if (!supportTotal) {\n return null;\n }\n\n return total;\n }),\n all: action(async () => {\n const { collection } = this;\n\n const allItemsQuery = {\n ...collection.query.asComputed,\n filtersKey: mapValues(collection.query.customFilters, (filter) =>\n filter != null ? null : undefined,\n ),\n rawFilters: {},\n filters: {},\n };\n\n const queryKey = collection._queryKey(allItemsQuery);\n\n const allItemsQueryResult = await collection.queryClient.fetchQuery({\n queryFn: () => collection._queryFn(allItemsQuery),\n queryKey,\n });\n\n return allItemsQueryResult.total;\n }),\n };\n\n async setTotalForExport(params: ExportPublicState<T, F>) {\n const { selectedExportOption, collection } = this;\n const {\n result: { supportTotal },\n } = collection;\n\n if (this.differentQueryEndpointThanCollection === true) {\n return;\n }\n\n const collectionTotalPromise = (() => {\n if (selectedExportOption === 'selected') {\n return this.totalForExportGettersMap.selected();\n }\n\n if (selectedExportOption === 'filtered' && supportTotal) {\n return this.totalForExportGettersMap.filtered();\n }\n\n return this.totalForExportGettersMap.all();\n })();\n\n if (this.customTotal) {\n const totalForExport = await this.customTotal({\n ...params,\n collectionTotalPromise,\n });\n runInAction(() => {\n this.totalForExport = totalForExport;\n });\n return;\n }\n\n const totalForExport = await collectionTotalPromise;\n runInAction(() => {\n this.totalForExport = totalForExport;\n });\n }\n\n onCancelClick() {\n const { bi, exportModalState } = this;\n bi.onCancelClick();\n exportModalState.close();\n }\n\n onCancelExportVerifyButtonClick() {\n const { bi, exportModalState } = this;\n bi.onCancelExportButtonClick();\n exportModalState.close();\n }\n\n onCancelExportGoBackButtonClick() {\n this.currentStep = 'progress';\n const { bi, events } = this;\n bi.onCancelExportGoBackButtonClick();\n events.emit('undoCancel');\n }\n\n onCancelExportCloseButtonClick() {\n this.currentStep = 'progress';\n const { bi, events } = this;\n bi.onCancelExportCloseButtonClick();\n events.emit('undoCancel');\n }\n\n onExportCloseAttemptClick() {\n this.currentStep = 'cancel';\n const { bi } = this;\n bi.onExportCloseAttemptClick();\n }\n\n onExportSecondaryActionAttempt() {\n this.currentStep = 'cancel';\n const { bi } = this;\n bi.onExportCancelAttemptClick();\n }\n\n onCloseClick() {\n const { bi, exportModalState } = this;\n bi.onCloseClick();\n exportModalState.close();\n }\n\n async onExportToClick() {\n const { internalMonitor, bi } = this;\n this.retries += 1;\n this.iterationsCountPoll = {\n iterationsCount: 0,\n retries: 0,\n pollCount: 0,\n };\n this.queryJobRetries = {\n count: 0,\n };\n this.exportStartTime = performance.now();\n internalMonitor.interactionStarted('export-to');\n bi.onExportToClick();\n const reportExportEnd = bi.onExportStart();\n this._exportTo({\n onExportEnd: action((params) => {\n if (params.result !== 'fail') {\n internalMonitor.interactionEnded('export-to');\n }\n\n reportExportEnd(params);\n }),\n });\n }\n\n beforeunload = (e: BeforeUnloadEvent) => {\n e.preventDefault();\n e.returnValue = '';\n };\n\n async onRetryExportToClick() {\n const { bi } = this;\n bi.onRetryExportToClick();\n await this.onExportToClick();\n }\n\n async onFailedClose() {\n const { bi, exportModalState } = this;\n bi.onFailedClose();\n exportModalState.close();\n }\n\n async onFailedCancel() {\n const { bi, exportModalState } = this;\n bi.onFailedCancel();\n exportModalState.close();\n }\n\n async _onJobSuccess(job: ExportAsyncJob, params: ExportJobStateParams) {\n const { events, exportModalState, translate: t } = this;\n const { onExportEnd, query, saveAs } = params;\n\n if (job.data?.signedUrl == null) {\n return;\n }\n\n if (this.currentStep === 'cancel') {\n events.once('undoCancel', async () => {\n await new Promise((resolve) => setTimeout(resolve, 1000));\n return this._onJobSuccess(job, { onExportEnd, query, saveAs });\n });\n return;\n }\n\n runInAction(() => {\n this.exportStatus = {\n ...queryStatus.success,\n data: job,\n };\n this.counter = 100;\n this._updateAbsoluteCounter(job, params);\n });\n\n window.removeEventListener('beforeunload', this.beforeunload);\n await new Promise((res) => setTimeout(res, 1000)); // wait bit before starting the download for the progress indication animation completes\n\n const signedUrl = job.data.signedUrl;\n\n onExportEnd({ job, query, result: 'success', saveAs });\n const biState = this.bi.beforeToast();\n\n const maybeToast = this.showToast?.({\n message: t('cairo.export.successMessage'),\n biName: 'cairo-export-success-toast',\n timeout: 'NONE',\n type: 'SUCCESS',\n onCloseClick: () => {\n this.bi.onToastDismissed({\n ...biState,\n by: 'manual',\n });\n this.maybeToast = undefined;\n },\n action: {\n text: t('cairo.export.downloadManually'),\n uiType: 'LINK',\n navigationTarget: {\n url: signedUrl,\n openInNewTab: true,\n },\n onClick: () => {\n this.bi.onToastActionClick(biState);\n this.maybeToast = undefined;\n },\n },\n });\n\n this.maybeToast = maybeToast;\n\n this.window.download(signedUrl, saveAs);\n\n if (maybeToast) {\n new Promise((resolve) => setTimeout(resolve, 6000)).then(() => {\n if (maybeToast === this.maybeToast) {\n maybeToast.remove();\n this.bi.onToastDismissed({\n ...biState,\n by: 'automatic',\n });\n }\n });\n }\n\n exportModalState.close();\n }\n\n _throwJobError(\n job: ExportAsyncJob,\n { onExportEnd, query }: ExportJobStateParams,\n ) {\n if (job.data?.error?.applicationError?.code === 'job_cancelled_by_client') {\n onExportEnd({ job, query, result: 'stopped by user' });\n\n return;\n }\n\n onExportEnd({ job, query, result: 'fail' });\n\n throw Object.assign(\n new Error(`ExportAsyncJob.${job.data?.error?.applicationError?.code}`),\n {\n response: {\n data: job.data?.error,\n },\n job,\n query,\n },\n );\n }\n\n _checkIfStaleJob(\n job: ExportAsyncJob,\n { onExportEnd, query }: ExportJobStateParams,\n ) {\n const { internalMonitor } = this;\n\n if (job.status === JobStatus.FINISHED && !job.data?.signedUrl) {\n internalMonitor.interactionStarted(\n 'export-to-finished-without-download-url',\n );\n internalMonitor.interactionEnded(\n 'export-to-finished-without-download-url',\n );\n }\n\n if (\n job.data?.iterationsCount === this.iterationsCountPoll.iterationsCount\n ) {\n this.iterationsCountPoll = {\n ...this.iterationsCountPoll,\n pollCount: this.iterationsCountPoll.pollCount + 1,\n };\n\n if (\n job.data?.completionStep !== 'upload' &&\n this.iterationsCountPoll.pollCount > this.config.stateJob.maxPolling\n ) {\n if (\n this.iterationsCountPoll.retries < this.config.stateJob.maxRetries\n ) {\n internalMonitor.interactionStarted('export-to-max-polling-stale-job');\n internalMonitor.interactionEnded('export-to-max-polling-stale-job');\n runInAction(() => {\n this.iterationsCountPoll = {\n iterationsCount: 0,\n pollCount: 0,\n retries: this.iterationsCountPoll.retries + 1,\n };\n });\n window.removeEventListener('beforeunload', this.beforeunload);\n this._exportTo({ onExportEnd });\n return 'restarted';\n }\n\n onExportEnd({ job, query, result: 'fail' });\n\n throw Object.assign(new Error('ExportAsyncJob.max_polling_stale_job'), {\n response: {\n data: {\n applicationError: {\n code: 'max_polling_stale_job',\n },\n } as ErrorDetails,\n },\n });\n }\n } else {\n this.iterationsCountPoll = {\n ...this.iterationsCountPoll,\n iterationsCount: job.data?.iterationsCount,\n pollCount: 1,\n };\n }\n\n return;\n }\n\n _updateAbsoluteCounter(job: ExportAsyncJob, { query }: ExportJobStateParams) {\n if (job?.data == null) {\n return;\n }\n\n const { totalForExport } = this;\n\n const newAbsoluteCounter = getJobItemsAbsoluteCounter(job, {\n query,\n totalForExport,\n });\n\n this.absoluteCounter =\n totalForExport != null &&\n newAbsoluteCounter >= totalForExport &&\n !this.exportStatus.isSuccess\n ? this.absoluteCounter +\n Math.floor(\n Math.random() * (newAbsoluteCounter - this.absoluteCounter),\n )\n : newAbsoluteCounter;\n }\n\n _updateJobProgress(job: ExportAsyncJob, params: ExportJobStateParams) {\n this._updateAbsoluteCounter(job, params);\n\n const { totalForExport } = this;\n if (totalForExport) {\n if (this.absoluteCounter) {\n const newCounter = Math.round(\n (this.absoluteCounter / totalForExport) * 100,\n );\n\n this.counter =\n newCounter === 100\n ? this.counter + Math.round(Math.random() * (99 - this.counter))\n : newCounter;\n }\n } else if (this.counter < 90 && this.absoluteCounter > 0) {\n this.counter += 10;\n }\n }\n\n private async _poll({\n jobId,\n saveAs,\n query,\n onExportEnd,\n }: {\n query: QueryV2;\n saveAs?: string;\n onExportEnd: (params: {\n job: ExportAsyncJob | null;\n query: QueryV2;\n result: 'success' | 'fail' | 'stopped by user';\n }) => void;\n jobId: string;\n }) {\n const { httpClient, events, onlineState } = this;\n\n let current: ExportAsyncJob | null = null;\n\n try {\n // eslint-disable-next-line no-constant-condition\n while (true) {\n if (!this.isModalOpen) {\n const currentJob = await this.exportStatus.promise;\n if (currentJob) {\n onExportEnd({\n job: currentJob,\n query,\n result: 'stopped by user',\n });\n }\n\n break;\n }\n\n const getExportAsyncJobResponse = await httpClient\n .request(getExportAsyncJob({ jobId }))\n .catch((error) => ({ error }));\n\n if (\n getExportAsyncJobResponse &&\n !('data' in getExportAsyncJobResponse)\n ) {\n const error = getExportAsyncJobResponse.error;\n if (!onlineState.isOnline) {\n events.once('online', () => {\n this._poll({\n jobId,\n onExportEnd,\n query,\n saveAs,\n });\n });\n\n throw new WixPatternsError({\n errorCode: 'GetExportAsyncJob.offline',\n originalException: error,\n extraData: {\n response: {\n data: {\n applicationError: {\n code: 'offline',\n },\n } as ErrorDetails,\n },\n },\n });\n }\n\n if (this.queryJobRetries.count > this.config.queryJobRetries.max) {\n onExportEnd({ job: current, query, result: 'fail' });\n throw new WixPatternsError({\n originalException: error,\n errorCode: 'GetExportAsyncJob.failed',\n });\n }\n\n this.queryJobRetries = {\n ...this.queryJobRetries,\n count: this.queryJobRetries.count + 1,\n };\n\n setTimeout(() => {\n this._poll({\n jobId,\n onExportEnd,\n query,\n saveAs,\n });\n }, this.config.queryJobRetries.delay);\n\n break;\n }\n\n const job = getExportAsyncJobResponse?.data.job;\n\n if (job?.data == null) {\n throw new WixPatternsError({\n errorCode: 'GetExportAsyncJob.invalid',\n });\n }\n\n current = job;\n\n this.queryJobRetries = {\n count: 0,\n };\n\n runInAction(() => {\n this.exportStatus = {\n ...queryStatus.loading,\n promise: Promise.resolve(job),\n };\n });\n\n const isModalOpen = runInAction(() => this.isModalOpen);\n if (!isModalOpen) {\n break;\n }\n\n if (job.data.signedUrl) {\n await this._onJobSuccess(job, {\n onExportEnd,\n saveAs,\n query,\n });\n break;\n }\n\n if (\n job.status === JobStatus.FAILED ||\n job.data.error?.applicationError != null\n ) {\n if (\n job.data.error?.applicationError?.code ===\n 'media_generate_signed_url'\n ) {\n // await this._retryGenerateUrl(job);\n // continue;\n }\n\n this._throwJobError(job, {\n onExportEnd,\n query,\n saveAs,\n });\n break;\n }\n\n const checkIfStaleJobResult = this._checkIfStaleJob(job, {\n onExportEnd,\n saveAs,\n query,\n });\n\n if (checkIfStaleJobResult === 'restarted') {\n return;\n }\n\n await runInAction(async () => {\n if (\n !this.totalForExport &&\n (job.data?.iterationsCount == null || job.data.iterationsCount <= 1)\n ) {\n this.totalForExport = job.data?.pagingMetadata?.total;\n }\n });\n\n this._updateJobProgress(job, { onExportEnd, query, saveAs });\n\n await new Promise((res) => setTimeout(res, this.config.pollingDelay));\n }\n } catch (error) {\n console.error(error);\n\n this.internalMonitor.reportError({ error });\n\n runInAction(() => {\n this.currentStep = 'error';\n this.exportStatus = {\n ...queryStatus.error,\n error,\n };\n });\n }\n }\n\n private async _exportTo({\n onExportEnd,\n }: {\n onExportEnd: (params: {\n job: ExportAsyncJob | null;\n query: QueryV2;\n result: 'success' | 'fail' | 'stopped by user';\n }) => void;\n }) {\n const {\n createExportAsyncJobRequest,\n httpClient,\n transformPlatformizedQuery,\n selectedExportOption,\n events,\n onlineState,\n } = this;\n\n this._reset();\n window.addEventListener('beforeunload', this.beforeunload);\n\n const platformizedQuery = defaultPlatformizedQuery();\n\n const {\n bulkSelect: {\n selectedIds,\n allSelected: selectAll,\n uncheckedInCurrentCollection: uncheckedValues,\n },\n query: { asComputed: computedQuery },\n } = this.collection;\n\n const wixPatternsQuery =\n selectedExportOption !== 'all'\n ? computedQuery\n : {\n ...computedQuery,\n filtersKey: {},\n rawFilters: {},\n filters: {},\n };\n\n const exportPublicState = {\n platformizedQuery,\n wixPatternsQuery,\n selectedItems:\n selectedExportOption === 'selected' ? selectedIds : undefined,\n isSelectAll: selectAll,\n uncheckedValues,\n };\n\n const query =\n (await transformPlatformizedQuery?.(exportPublicState)) ??\n platformizedQuery;\n\n const totalForExportPromise = this.setTotalForExport({\n ...exportPublicState,\n platformizedQuery: query,\n });\n\n const saveAs =\n this.saveAs?.({\n platformizedQuery,\n wixPatternsQuery,\n selectedItems:\n selectedExportOption === 'selected' ? selectedIds : undefined,\n isSelectAll: selectAll,\n }) ?? this.collectionPageState.pageTitle;\n\n runInAction(() => {\n this.currentStep = 'progress';\n });\n\n const _createExport = async () => {\n try {\n const { data: createExportAsyncJobResponse } = await httpClient\n .request(\n createExportAsyncJob({\n fields: [],\n methodMetadata: {},\n ...createExportAsyncJobRequest,\n saveAs,\n query,\n }),\n )\n .catch((err) => {\n if (!onlineState.isOnline) {\n events.once('online', () => {\n this._exportTo({\n onExportEnd,\n });\n });\n throw Object.assign(new Error('CreateExportAsyncJob.offline'), {\n response: {\n data: {\n applicationError: {\n code: 'offline',\n },\n } as ErrorDetails,\n },\n });\n }\n onExportEnd({ job: null, query, result: 'fail' });\n\n throw err;\n });\n\n return createExportAsyncJobResponse;\n } catch (error) {\n runInAction(() => {\n this.currentStep = 'error';\n this.exportStatus = {\n ...queryStatus.error,\n error,\n };\n });\n\n throw error;\n }\n };\n\n try {\n const createExportAsyncJobResponse = await _createExport();\n\n if (!createExportAsyncJobResponse.job?.id) {\n throw new Error(\n `Invalid response from createExportAsyncJob \"jobId=${createExportAsyncJobResponse.job?.id}\"`,\n );\n }\n\n await totalForExportPromise;\n\n runInAction(() => {\n this.exportStatus = {\n ...queryStatus.loading,\n promise: Promise.resolve(\n createExportAsyncJobResponse.job as ExportAsyncJob,\n ),\n };\n });\n\n this.events.emit('afterJobCreated', {\n job: createExportAsyncJobResponse.job as ExportAsyncJob,\n });\n\n runInAction(() => {\n this.counter = 1;\n });\n\n await this._poll({\n onExportEnd,\n saveAs,\n query,\n jobId: createExportAsyncJobResponse.job.id,\n });\n } catch (error) {\n console.error(error);\n this.internalMonitor.reportError({ error });\n }\n\n window.removeEventListener('beforeunload', this.beforeunload);\n }\n}\n"],"mappings":"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","ignoreList":[]}
|